Shader "KriptoFX/ME/Particle" {
	Properties {
		[HDR] _TintColor ("Tint Color", Vector) = (0.5,0.5,0.5,1)
		_MainTex ("Particle Texture", 2D) = "white" {}
		[HideInInspector] _Cutout ("_Cutout", Float) = 0.2
		[HideInInspector] _InvFade ("Soft Particles Factor", Float) = 1
		[HideInInspector] _FresnelStr ("Fresnel Strength", Float) = 1
		[HideInInspector] SrcMode ("SrcMode", Float) = 5
		[HideInInspector] DstMode ("DstMode", Float) = 10
		[HideInInspector] CullMode ("Cull Mode", Float) = 2
	}
	SubShader {
		Tags { "IGNOREPROJECTOR" = "true" "QUEUE" = "Transparent" "RFX1" = "Particle" "RenderType" = "Transparent" }
		Pass {
			Tags { "IGNOREPROJECTOR" = "true" "QUEUE" = "Transparent" "RFX1" = "Particle" "RenderType" = "Transparent" }
			Blend Zero Zero, Zero Zero
			ZWrite Off
			Cull Off
			Lighting On
			GpuProgramID 53803
			Program "vp" {
				SubProgram "d3d11 " {
					Keywords { "BlendAdd" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat2 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat2;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec2 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					float u_xlat3;
					int u_xlati6;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat3 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat3;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlati6 = unity_StereoEyeIndex;
					    u_xlat1.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati6].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati6].xy + u_xlat1.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendAdd" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat2 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat2;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec2 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					float u_xlat3;
					int u_xlati6;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat3 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat3;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlati6 = unity_StereoEyeIndex;
					    u_xlat1.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati6].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati6].xy + u_xlat1.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendAdd" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat2 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat2;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec2 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					float u_xlat3;
					int u_xlati6;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat3 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat3;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlati6 = unity_StereoEyeIndex;
					    u_xlat1.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati6].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati6].xy + u_xlat1.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendAdd" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat2 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat2;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec2 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					float u_xlat3;
					int u_xlati6;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat3 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat3;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlati6 = unity_StereoEyeIndex;
					    u_xlat1.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati6].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati6].xy + u_xlat1.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendAdd" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat2 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat2;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec2 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					float u_xlat3;
					int u_xlati6;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat3 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat3;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlati6 = unity_StereoEyeIndex;
					    u_xlat1.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati6].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati6].xy + u_xlat1.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendAdd" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat2 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat2;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec2 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					float u_xlat3;
					int u_xlati6;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat3 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat3;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlati6 = unity_StereoEyeIndex;
					    u_xlat1.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati6].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati6].xy + u_xlat1.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendAdd" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat2 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat2;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec2 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					float u_xlat3;
					int u_xlati6;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat3 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat3;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlati6 = unity_StereoEyeIndex;
					    u_xlat1.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati6].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati6].xy + u_xlat1.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendAdd" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat2 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat2;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec2 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					float u_xlat3;
					int u_xlati6;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat3 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat3;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlati6 = unity_StereoEyeIndex;
					    u_xlat1.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati6].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati6].xy + u_xlat1.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendAdd" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat2 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat2;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec2 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					float u_xlat3;
					int u_xlati6;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat3 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat3;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlati6 = unity_StereoEyeIndex;
					    u_xlat1.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati6].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati6].xy + u_xlat1.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendAdd" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat2 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat2;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec2 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					float u_xlat3;
					int u_xlati6;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat3 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat3;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlati6 = unity_StereoEyeIndex;
					    u_xlat1.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati6].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati6].xy + u_xlat1.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendAdd" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat2 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat2;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec2 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					float u_xlat3;
					int u_xlati6;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat3 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat3;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlati6 = unity_StereoEyeIndex;
					    u_xlat1.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati6].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati6].xy + u_xlat1.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendAdd" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat2 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat2;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec2 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					float u_xlat3;
					int u_xlati6;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat3 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat3;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlati6 = unity_StereoEyeIndex;
					    u_xlat1.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati6].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati6].xy + u_xlat1.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendAdd" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat2 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat2;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec2 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					float u_xlat3;
					int u_xlati6;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat3 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat3;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlati6 = unity_StereoEyeIndex;
					    u_xlat1.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati6].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati6].xy + u_xlat1.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendAdd" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat2 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat2;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec2 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					float u_xlat3;
					int u_xlati6;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat3 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat3;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlati6 = unity_StereoEyeIndex;
					    u_xlat1.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati6].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati6].xy + u_xlat1.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendAdd" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat2 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat2;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec2 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					float u_xlat3;
					int u_xlati6;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat3 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat3;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlati6 = unity_StereoEyeIndex;
					    u_xlat1.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati6].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati6].xy + u_xlat1.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendAdd" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat2 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat2;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec2 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					float u_xlat3;
					int u_xlati6;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat3 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat3;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlati6 = unity_StereoEyeIndex;
					    u_xlat1.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati6].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati6].xy + u_xlat1.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendAdd" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					float u_xlat9;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat9 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat9 = inversesqrt(u_xlat9);
					    u_xlat2.xyz = vec3(u_xlat9) * u_xlat2.xyz;
					    u_xlat9 = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat9 = inversesqrt(u_xlat9);
					    u_xlat3.xyz = vec3(u_xlat9) * in_NORMAL0.xyz;
					    u_xlat9 = dot(u_xlat3.xyz, u_xlat2.xyz);
					    u_xlat9 = log2(abs(u_xlat9));
					    u_xlat9 = u_xlat9 * _FresnelStr;
					    u_xlat9 = exp2(u_xlat9);
					    u_xlat9 = u_xlat9 + u_xlat9;
					    vs_TEXCOORD4 = min(u_xlat9, 1.0);
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat4 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_3_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					vec3 u_xlat5;
					vec2 u_xlat8;
					int u_xlati10;
					float u_xlat15;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    u_xlat5.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat5.x = inversesqrt(u_xlat5.x);
					    u_xlat5.xyz = u_xlat5.xxx * in_NORMAL0.xyz;
					    u_xlati10 = unity_StereoEyeIndex;
					    u_xlat3.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati10].yyy;
					    u_xlat3.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati10].xxx + u_xlat3.xyz;
					    u_xlat3.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati10].zzz + u_xlat3.xyz;
					    u_xlat3.xyz = u_xlat3.xyz + unity_WorldToObject[3].xyz;
					    u_xlat3.xyz = u_xlat3.xyz + (-in_POSITION0.xyz);
					    u_xlat15 = dot(u_xlat3.xyz, u_xlat3.xyz);
					    u_xlat15 = inversesqrt(u_xlat15);
					    u_xlat3.xyz = vec3(u_xlat15) * u_xlat3.xyz;
					    u_xlat5.x = dot(u_xlat5.xyz, u_xlat3.xyz);
					    u_xlat5.x = log2(abs(u_xlat5.x));
					    u_xlat5.x = u_xlat5.x * _FresnelStr;
					    u_xlat5.x = exp2(u_xlat5.x);
					    u_xlat5.x = u_xlat5.x + u_xlat5.x;
					    vs_TEXCOORD4 = min(u_xlat5.x, 1.0);
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat4 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlat8.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati10].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati10].xy + u_xlat8.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendAdd" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					float u_xlat9;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat9 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat9 = inversesqrt(u_xlat9);
					    u_xlat2.xyz = vec3(u_xlat9) * u_xlat2.xyz;
					    u_xlat9 = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat9 = inversesqrt(u_xlat9);
					    u_xlat3.xyz = vec3(u_xlat9) * in_NORMAL0.xyz;
					    u_xlat9 = dot(u_xlat3.xyz, u_xlat2.xyz);
					    u_xlat9 = log2(abs(u_xlat9));
					    u_xlat9 = u_xlat9 * _FresnelStr;
					    u_xlat9 = exp2(u_xlat9);
					    u_xlat9 = u_xlat9 + u_xlat9;
					    vs_TEXCOORD4 = min(u_xlat9, 1.0);
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat4 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_3_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					vec3 u_xlat5;
					vec2 u_xlat8;
					int u_xlati10;
					float u_xlat15;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    u_xlat5.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat5.x = inversesqrt(u_xlat5.x);
					    u_xlat5.xyz = u_xlat5.xxx * in_NORMAL0.xyz;
					    u_xlati10 = unity_StereoEyeIndex;
					    u_xlat3.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati10].yyy;
					    u_xlat3.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati10].xxx + u_xlat3.xyz;
					    u_xlat3.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati10].zzz + u_xlat3.xyz;
					    u_xlat3.xyz = u_xlat3.xyz + unity_WorldToObject[3].xyz;
					    u_xlat3.xyz = u_xlat3.xyz + (-in_POSITION0.xyz);
					    u_xlat15 = dot(u_xlat3.xyz, u_xlat3.xyz);
					    u_xlat15 = inversesqrt(u_xlat15);
					    u_xlat3.xyz = vec3(u_xlat15) * u_xlat3.xyz;
					    u_xlat5.x = dot(u_xlat5.xyz, u_xlat3.xyz);
					    u_xlat5.x = log2(abs(u_xlat5.x));
					    u_xlat5.x = u_xlat5.x * _FresnelStr;
					    u_xlat5.x = exp2(u_xlat5.x);
					    u_xlat5.x = u_xlat5.x + u_xlat5.x;
					    vs_TEXCOORD4 = min(u_xlat5.x, 1.0);
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat4 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlat8.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati10].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati10].xy + u_xlat8.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendAdd" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					float u_xlat14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat14 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat2.xyz = vec3(u_xlat14) * u_xlat2.xyz;
					    u_xlat14 = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat3.xyz = vec3(u_xlat14) * in_NORMAL0.xyz;
					    u_xlat2.x = dot(u_xlat3.xyz, u_xlat2.xyz);
					    u_xlat2.x = log2(abs(u_xlat2.x));
					    u_xlat2.x = u_xlat2.x * _FresnelStr;
					    u_xlat2.x = exp2(u_xlat2.x);
					    u_xlat2.x = u_xlat2.x + u_xlat2.x;
					    vs_TEXCOORD4 = min(u_xlat2.x, 1.0);
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat4 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_3_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati1;
					vec4 u_xlat2;
					int u_xlati3;
					float u_xlat4;
					float u_xlat5;
					vec3 u_xlat6;
					vec3 u_xlat8;
					vec2 u_xlat10;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    u_xlat6.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat6.x = inversesqrt(u_xlat6.x);
					    u_xlat6.xyz = u_xlat6.xxx * in_NORMAL0.xyz;
					    u_xlati3 = unity_StereoEyeIndex;
					    u_xlat8.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].yyy;
					    u_xlat8.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].xxx + u_xlat8.xyz;
					    u_xlat8.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].zzz + u_xlat8.xyz;
					    u_xlat8.xyz = u_xlat8.xyz + unity_WorldToObject[3].xyz;
					    u_xlat8.xyz = u_xlat8.xyz + (-in_POSITION0.xyz);
					    u_xlat4 = dot(u_xlat8.xyz, u_xlat8.xyz);
					    u_xlat4 = inversesqrt(u_xlat4);
					    u_xlat8.xyz = u_xlat8.xyz * vec3(u_xlat4);
					    u_xlat6.x = dot(u_xlat6.xyz, u_xlat8.xyz);
					    u_xlat6.x = log2(abs(u_xlat6.x));
					    u_xlat6.x = u_xlat6.x * _FresnelStr;
					    u_xlat6.x = exp2(u_xlat6.x);
					    u_xlat6.x = u_xlat6.x + u_xlat6.x;
					    vs_TEXCOORD4 = min(u_xlat6.x, 1.0);
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat5 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat5;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlat10.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati3].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati3].xy + u_xlat10.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendAdd" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					float u_xlat14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat14 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat2.xyz = vec3(u_xlat14) * u_xlat2.xyz;
					    u_xlat14 = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat3.xyz = vec3(u_xlat14) * in_NORMAL0.xyz;
					    u_xlat2.x = dot(u_xlat3.xyz, u_xlat2.xyz);
					    u_xlat2.x = log2(abs(u_xlat2.x));
					    u_xlat2.x = u_xlat2.x * _FresnelStr;
					    u_xlat2.x = exp2(u_xlat2.x);
					    u_xlat2.x = u_xlat2.x + u_xlat2.x;
					    vs_TEXCOORD4 = min(u_xlat2.x, 1.0);
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat4 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_3_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati1;
					vec4 u_xlat2;
					int u_xlati3;
					float u_xlat4;
					float u_xlat5;
					vec3 u_xlat6;
					vec3 u_xlat8;
					vec2 u_xlat10;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    u_xlat6.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat6.x = inversesqrt(u_xlat6.x);
					    u_xlat6.xyz = u_xlat6.xxx * in_NORMAL0.xyz;
					    u_xlati3 = unity_StereoEyeIndex;
					    u_xlat8.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].yyy;
					    u_xlat8.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].xxx + u_xlat8.xyz;
					    u_xlat8.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].zzz + u_xlat8.xyz;
					    u_xlat8.xyz = u_xlat8.xyz + unity_WorldToObject[3].xyz;
					    u_xlat8.xyz = u_xlat8.xyz + (-in_POSITION0.xyz);
					    u_xlat4 = dot(u_xlat8.xyz, u_xlat8.xyz);
					    u_xlat4 = inversesqrt(u_xlat4);
					    u_xlat8.xyz = u_xlat8.xyz * vec3(u_xlat4);
					    u_xlat6.x = dot(u_xlat6.xyz, u_xlat8.xyz);
					    u_xlat6.x = log2(abs(u_xlat6.x));
					    u_xlat6.x = u_xlat6.x * _FresnelStr;
					    u_xlat6.x = exp2(u_xlat6.x);
					    u_xlat6.x = u_xlat6.x + u_xlat6.x;
					    vs_TEXCOORD4 = min(u_xlat6.x, 1.0);
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat5 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat5;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlat10.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati3].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati3].xy + u_xlat10.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendAdd" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					float u_xlat14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat14 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat2.xyz = vec3(u_xlat14) * u_xlat2.xyz;
					    u_xlat14 = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat3.xyz = vec3(u_xlat14) * in_NORMAL0.xyz;
					    u_xlat2.x = dot(u_xlat3.xyz, u_xlat2.xyz);
					    u_xlat2.x = log2(abs(u_xlat2.x));
					    u_xlat2.x = u_xlat2.x * _FresnelStr;
					    u_xlat2.x = exp2(u_xlat2.x);
					    u_xlat2.x = u_xlat2.x + u_xlat2.x;
					    vs_TEXCOORD4 = min(u_xlat2.x, 1.0);
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat4 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_3_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati1;
					vec4 u_xlat2;
					int u_xlati3;
					float u_xlat4;
					float u_xlat5;
					vec3 u_xlat6;
					vec3 u_xlat8;
					vec2 u_xlat10;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    u_xlat6.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat6.x = inversesqrt(u_xlat6.x);
					    u_xlat6.xyz = u_xlat6.xxx * in_NORMAL0.xyz;
					    u_xlati3 = unity_StereoEyeIndex;
					    u_xlat8.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].yyy;
					    u_xlat8.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].xxx + u_xlat8.xyz;
					    u_xlat8.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].zzz + u_xlat8.xyz;
					    u_xlat8.xyz = u_xlat8.xyz + unity_WorldToObject[3].xyz;
					    u_xlat8.xyz = u_xlat8.xyz + (-in_POSITION0.xyz);
					    u_xlat4 = dot(u_xlat8.xyz, u_xlat8.xyz);
					    u_xlat4 = inversesqrt(u_xlat4);
					    u_xlat8.xyz = u_xlat8.xyz * vec3(u_xlat4);
					    u_xlat6.x = dot(u_xlat6.xyz, u_xlat8.xyz);
					    u_xlat6.x = log2(abs(u_xlat6.x));
					    u_xlat6.x = u_xlat6.x * _FresnelStr;
					    u_xlat6.x = exp2(u_xlat6.x);
					    u_xlat6.x = u_xlat6.x + u_xlat6.x;
					    vs_TEXCOORD4 = min(u_xlat6.x, 1.0);
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat5 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat5;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlat10.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati3].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati3].xy + u_xlat10.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendAdd" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					float u_xlat14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat14 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat2.xyz = vec3(u_xlat14) * u_xlat2.xyz;
					    u_xlat14 = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat3.xyz = vec3(u_xlat14) * in_NORMAL0.xyz;
					    u_xlat2.x = dot(u_xlat3.xyz, u_xlat2.xyz);
					    u_xlat2.x = log2(abs(u_xlat2.x));
					    u_xlat2.x = u_xlat2.x * _FresnelStr;
					    u_xlat2.x = exp2(u_xlat2.x);
					    u_xlat2.x = u_xlat2.x + u_xlat2.x;
					    vs_TEXCOORD4 = min(u_xlat2.x, 1.0);
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat4 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_3_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati1;
					vec4 u_xlat2;
					int u_xlati3;
					float u_xlat4;
					float u_xlat5;
					vec3 u_xlat6;
					vec3 u_xlat8;
					vec2 u_xlat10;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    u_xlat6.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat6.x = inversesqrt(u_xlat6.x);
					    u_xlat6.xyz = u_xlat6.xxx * in_NORMAL0.xyz;
					    u_xlati3 = unity_StereoEyeIndex;
					    u_xlat8.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].yyy;
					    u_xlat8.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].xxx + u_xlat8.xyz;
					    u_xlat8.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].zzz + u_xlat8.xyz;
					    u_xlat8.xyz = u_xlat8.xyz + unity_WorldToObject[3].xyz;
					    u_xlat8.xyz = u_xlat8.xyz + (-in_POSITION0.xyz);
					    u_xlat4 = dot(u_xlat8.xyz, u_xlat8.xyz);
					    u_xlat4 = inversesqrt(u_xlat4);
					    u_xlat8.xyz = u_xlat8.xyz * vec3(u_xlat4);
					    u_xlat6.x = dot(u_xlat6.xyz, u_xlat8.xyz);
					    u_xlat6.x = log2(abs(u_xlat6.x));
					    u_xlat6.x = u_xlat6.x * _FresnelStr;
					    u_xlat6.x = exp2(u_xlat6.x);
					    u_xlat6.x = u_xlat6.x + u_xlat6.x;
					    vs_TEXCOORD4 = min(u_xlat6.x, 1.0);
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat5 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat5;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlat10.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati3].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati3].xy + u_xlat10.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendAdd" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					float u_xlat14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat14 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat2.xyz = vec3(u_xlat14) * u_xlat2.xyz;
					    u_xlat14 = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat3.xyz = vec3(u_xlat14) * in_NORMAL0.xyz;
					    u_xlat2.x = dot(u_xlat3.xyz, u_xlat2.xyz);
					    u_xlat2.x = log2(abs(u_xlat2.x));
					    u_xlat2.x = u_xlat2.x * _FresnelStr;
					    u_xlat2.x = exp2(u_xlat2.x);
					    u_xlat2.x = u_xlat2.x + u_xlat2.x;
					    vs_TEXCOORD4 = min(u_xlat2.x, 1.0);
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat4 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_3_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati1;
					vec4 u_xlat2;
					int u_xlati3;
					float u_xlat4;
					float u_xlat5;
					vec3 u_xlat6;
					vec3 u_xlat8;
					vec2 u_xlat10;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    u_xlat6.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat6.x = inversesqrt(u_xlat6.x);
					    u_xlat6.xyz = u_xlat6.xxx * in_NORMAL0.xyz;
					    u_xlati3 = unity_StereoEyeIndex;
					    u_xlat8.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].yyy;
					    u_xlat8.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].xxx + u_xlat8.xyz;
					    u_xlat8.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].zzz + u_xlat8.xyz;
					    u_xlat8.xyz = u_xlat8.xyz + unity_WorldToObject[3].xyz;
					    u_xlat8.xyz = u_xlat8.xyz + (-in_POSITION0.xyz);
					    u_xlat4 = dot(u_xlat8.xyz, u_xlat8.xyz);
					    u_xlat4 = inversesqrt(u_xlat4);
					    u_xlat8.xyz = u_xlat8.xyz * vec3(u_xlat4);
					    u_xlat6.x = dot(u_xlat6.xyz, u_xlat8.xyz);
					    u_xlat6.x = log2(abs(u_xlat6.x));
					    u_xlat6.x = u_xlat6.x * _FresnelStr;
					    u_xlat6.x = exp2(u_xlat6.x);
					    u_xlat6.x = u_xlat6.x + u_xlat6.x;
					    vs_TEXCOORD4 = min(u_xlat6.x, 1.0);
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat5 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat5;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlat10.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati3].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati3].xy + u_xlat10.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendAdd" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					float u_xlat14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat14 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat2.xyz = vec3(u_xlat14) * u_xlat2.xyz;
					    u_xlat14 = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat3.xyz = vec3(u_xlat14) * in_NORMAL0.xyz;
					    u_xlat2.x = dot(u_xlat3.xyz, u_xlat2.xyz);
					    u_xlat2.x = log2(abs(u_xlat2.x));
					    u_xlat2.x = u_xlat2.x * _FresnelStr;
					    u_xlat2.x = exp2(u_xlat2.x);
					    u_xlat2.x = u_xlat2.x + u_xlat2.x;
					    vs_TEXCOORD4 = min(u_xlat2.x, 1.0);
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat4 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_3_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati1;
					vec4 u_xlat2;
					int u_xlati3;
					float u_xlat4;
					float u_xlat5;
					vec3 u_xlat6;
					vec3 u_xlat8;
					vec2 u_xlat10;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    u_xlat6.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat6.x = inversesqrt(u_xlat6.x);
					    u_xlat6.xyz = u_xlat6.xxx * in_NORMAL0.xyz;
					    u_xlati3 = unity_StereoEyeIndex;
					    u_xlat8.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].yyy;
					    u_xlat8.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].xxx + u_xlat8.xyz;
					    u_xlat8.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].zzz + u_xlat8.xyz;
					    u_xlat8.xyz = u_xlat8.xyz + unity_WorldToObject[3].xyz;
					    u_xlat8.xyz = u_xlat8.xyz + (-in_POSITION0.xyz);
					    u_xlat4 = dot(u_xlat8.xyz, u_xlat8.xyz);
					    u_xlat4 = inversesqrt(u_xlat4);
					    u_xlat8.xyz = u_xlat8.xyz * vec3(u_xlat4);
					    u_xlat6.x = dot(u_xlat6.xyz, u_xlat8.xyz);
					    u_xlat6.x = log2(abs(u_xlat6.x));
					    u_xlat6.x = u_xlat6.x * _FresnelStr;
					    u_xlat6.x = exp2(u_xlat6.x);
					    u_xlat6.x = u_xlat6.x + u_xlat6.x;
					    vs_TEXCOORD4 = min(u_xlat6.x, 1.0);
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat5 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat5;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlat10.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati3].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati3].xy + u_xlat10.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendAdd" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					float u_xlat9;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat9 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat9 = inversesqrt(u_xlat9);
					    u_xlat2.xyz = vec3(u_xlat9) * u_xlat2.xyz;
					    u_xlat9 = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat9 = inversesqrt(u_xlat9);
					    u_xlat3.xyz = vec3(u_xlat9) * in_NORMAL0.xyz;
					    u_xlat9 = dot(u_xlat3.xyz, u_xlat2.xyz);
					    u_xlat9 = log2(abs(u_xlat9));
					    u_xlat9 = u_xlat9 * _FresnelStr;
					    u_xlat9 = exp2(u_xlat9);
					    u_xlat9 = u_xlat9 + u_xlat9;
					    vs_TEXCOORD4 = min(u_xlat9, 1.0);
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat4 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_3_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					vec3 u_xlat5;
					vec2 u_xlat8;
					int u_xlati10;
					float u_xlat15;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    u_xlat5.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat5.x = inversesqrt(u_xlat5.x);
					    u_xlat5.xyz = u_xlat5.xxx * in_NORMAL0.xyz;
					    u_xlati10 = unity_StereoEyeIndex;
					    u_xlat3.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati10].yyy;
					    u_xlat3.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati10].xxx + u_xlat3.xyz;
					    u_xlat3.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati10].zzz + u_xlat3.xyz;
					    u_xlat3.xyz = u_xlat3.xyz + unity_WorldToObject[3].xyz;
					    u_xlat3.xyz = u_xlat3.xyz + (-in_POSITION0.xyz);
					    u_xlat15 = dot(u_xlat3.xyz, u_xlat3.xyz);
					    u_xlat15 = inversesqrt(u_xlat15);
					    u_xlat3.xyz = vec3(u_xlat15) * u_xlat3.xyz;
					    u_xlat5.x = dot(u_xlat5.xyz, u_xlat3.xyz);
					    u_xlat5.x = log2(abs(u_xlat5.x));
					    u_xlat5.x = u_xlat5.x * _FresnelStr;
					    u_xlat5.x = exp2(u_xlat5.x);
					    u_xlat5.x = u_xlat5.x + u_xlat5.x;
					    vs_TEXCOORD4 = min(u_xlat5.x, 1.0);
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat4 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlat8.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati10].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati10].xy + u_xlat8.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendAdd" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					float u_xlat9;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat9 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat9 = inversesqrt(u_xlat9);
					    u_xlat2.xyz = vec3(u_xlat9) * u_xlat2.xyz;
					    u_xlat9 = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat9 = inversesqrt(u_xlat9);
					    u_xlat3.xyz = vec3(u_xlat9) * in_NORMAL0.xyz;
					    u_xlat9 = dot(u_xlat3.xyz, u_xlat2.xyz);
					    u_xlat9 = log2(abs(u_xlat9));
					    u_xlat9 = u_xlat9 * _FresnelStr;
					    u_xlat9 = exp2(u_xlat9);
					    u_xlat9 = u_xlat9 + u_xlat9;
					    vs_TEXCOORD4 = min(u_xlat9, 1.0);
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat4 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_3_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					vec3 u_xlat5;
					vec2 u_xlat8;
					int u_xlati10;
					float u_xlat15;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    u_xlat5.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat5.x = inversesqrt(u_xlat5.x);
					    u_xlat5.xyz = u_xlat5.xxx * in_NORMAL0.xyz;
					    u_xlati10 = unity_StereoEyeIndex;
					    u_xlat3.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati10].yyy;
					    u_xlat3.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati10].xxx + u_xlat3.xyz;
					    u_xlat3.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati10].zzz + u_xlat3.xyz;
					    u_xlat3.xyz = u_xlat3.xyz + unity_WorldToObject[3].xyz;
					    u_xlat3.xyz = u_xlat3.xyz + (-in_POSITION0.xyz);
					    u_xlat15 = dot(u_xlat3.xyz, u_xlat3.xyz);
					    u_xlat15 = inversesqrt(u_xlat15);
					    u_xlat3.xyz = vec3(u_xlat15) * u_xlat3.xyz;
					    u_xlat5.x = dot(u_xlat5.xyz, u_xlat3.xyz);
					    u_xlat5.x = log2(abs(u_xlat5.x));
					    u_xlat5.x = u_xlat5.x * _FresnelStr;
					    u_xlat5.x = exp2(u_xlat5.x);
					    u_xlat5.x = u_xlat5.x + u_xlat5.x;
					    vs_TEXCOORD4 = min(u_xlat5.x, 1.0);
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat4 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlat8.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati10].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati10].xy + u_xlat8.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendAdd" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					float u_xlat14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat14 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat2.xyz = vec3(u_xlat14) * u_xlat2.xyz;
					    u_xlat14 = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat3.xyz = vec3(u_xlat14) * in_NORMAL0.xyz;
					    u_xlat2.x = dot(u_xlat3.xyz, u_xlat2.xyz);
					    u_xlat2.x = log2(abs(u_xlat2.x));
					    u_xlat2.x = u_xlat2.x * _FresnelStr;
					    u_xlat2.x = exp2(u_xlat2.x);
					    u_xlat2.x = u_xlat2.x + u_xlat2.x;
					    vs_TEXCOORD4 = min(u_xlat2.x, 1.0);
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat4 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_3_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati1;
					vec4 u_xlat2;
					int u_xlati3;
					float u_xlat4;
					float u_xlat5;
					vec3 u_xlat6;
					vec3 u_xlat8;
					vec2 u_xlat10;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    u_xlat6.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat6.x = inversesqrt(u_xlat6.x);
					    u_xlat6.xyz = u_xlat6.xxx * in_NORMAL0.xyz;
					    u_xlati3 = unity_StereoEyeIndex;
					    u_xlat8.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].yyy;
					    u_xlat8.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].xxx + u_xlat8.xyz;
					    u_xlat8.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].zzz + u_xlat8.xyz;
					    u_xlat8.xyz = u_xlat8.xyz + unity_WorldToObject[3].xyz;
					    u_xlat8.xyz = u_xlat8.xyz + (-in_POSITION0.xyz);
					    u_xlat4 = dot(u_xlat8.xyz, u_xlat8.xyz);
					    u_xlat4 = inversesqrt(u_xlat4);
					    u_xlat8.xyz = u_xlat8.xyz * vec3(u_xlat4);
					    u_xlat6.x = dot(u_xlat6.xyz, u_xlat8.xyz);
					    u_xlat6.x = log2(abs(u_xlat6.x));
					    u_xlat6.x = u_xlat6.x * _FresnelStr;
					    u_xlat6.x = exp2(u_xlat6.x);
					    u_xlat6.x = u_xlat6.x + u_xlat6.x;
					    vs_TEXCOORD4 = min(u_xlat6.x, 1.0);
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat5 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat5;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlat10.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati3].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati3].xy + u_xlat10.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendAdd" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					float u_xlat14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat14 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat2.xyz = vec3(u_xlat14) * u_xlat2.xyz;
					    u_xlat14 = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat3.xyz = vec3(u_xlat14) * in_NORMAL0.xyz;
					    u_xlat2.x = dot(u_xlat3.xyz, u_xlat2.xyz);
					    u_xlat2.x = log2(abs(u_xlat2.x));
					    u_xlat2.x = u_xlat2.x * _FresnelStr;
					    u_xlat2.x = exp2(u_xlat2.x);
					    u_xlat2.x = u_xlat2.x + u_xlat2.x;
					    vs_TEXCOORD4 = min(u_xlat2.x, 1.0);
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat4 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_3_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati1;
					vec4 u_xlat2;
					int u_xlati3;
					float u_xlat4;
					float u_xlat5;
					vec3 u_xlat6;
					vec3 u_xlat8;
					vec2 u_xlat10;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    u_xlat6.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat6.x = inversesqrt(u_xlat6.x);
					    u_xlat6.xyz = u_xlat6.xxx * in_NORMAL0.xyz;
					    u_xlati3 = unity_StereoEyeIndex;
					    u_xlat8.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].yyy;
					    u_xlat8.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].xxx + u_xlat8.xyz;
					    u_xlat8.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].zzz + u_xlat8.xyz;
					    u_xlat8.xyz = u_xlat8.xyz + unity_WorldToObject[3].xyz;
					    u_xlat8.xyz = u_xlat8.xyz + (-in_POSITION0.xyz);
					    u_xlat4 = dot(u_xlat8.xyz, u_xlat8.xyz);
					    u_xlat4 = inversesqrt(u_xlat4);
					    u_xlat8.xyz = u_xlat8.xyz * vec3(u_xlat4);
					    u_xlat6.x = dot(u_xlat6.xyz, u_xlat8.xyz);
					    u_xlat6.x = log2(abs(u_xlat6.x));
					    u_xlat6.x = u_xlat6.x * _FresnelStr;
					    u_xlat6.x = exp2(u_xlat6.x);
					    u_xlat6.x = u_xlat6.x + u_xlat6.x;
					    vs_TEXCOORD4 = min(u_xlat6.x, 1.0);
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat5 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat5;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlat10.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati3].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati3].xy + u_xlat10.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendAdd" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					float u_xlat14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat14 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat2.xyz = vec3(u_xlat14) * u_xlat2.xyz;
					    u_xlat14 = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat3.xyz = vec3(u_xlat14) * in_NORMAL0.xyz;
					    u_xlat2.x = dot(u_xlat3.xyz, u_xlat2.xyz);
					    u_xlat2.x = log2(abs(u_xlat2.x));
					    u_xlat2.x = u_xlat2.x * _FresnelStr;
					    u_xlat2.x = exp2(u_xlat2.x);
					    u_xlat2.x = u_xlat2.x + u_xlat2.x;
					    vs_TEXCOORD4 = min(u_xlat2.x, 1.0);
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat4 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_3_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati1;
					vec4 u_xlat2;
					int u_xlati3;
					float u_xlat4;
					float u_xlat5;
					vec3 u_xlat6;
					vec3 u_xlat8;
					vec2 u_xlat10;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    u_xlat6.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat6.x = inversesqrt(u_xlat6.x);
					    u_xlat6.xyz = u_xlat6.xxx * in_NORMAL0.xyz;
					    u_xlati3 = unity_StereoEyeIndex;
					    u_xlat8.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].yyy;
					    u_xlat8.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].xxx + u_xlat8.xyz;
					    u_xlat8.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].zzz + u_xlat8.xyz;
					    u_xlat8.xyz = u_xlat8.xyz + unity_WorldToObject[3].xyz;
					    u_xlat8.xyz = u_xlat8.xyz + (-in_POSITION0.xyz);
					    u_xlat4 = dot(u_xlat8.xyz, u_xlat8.xyz);
					    u_xlat4 = inversesqrt(u_xlat4);
					    u_xlat8.xyz = u_xlat8.xyz * vec3(u_xlat4);
					    u_xlat6.x = dot(u_xlat6.xyz, u_xlat8.xyz);
					    u_xlat6.x = log2(abs(u_xlat6.x));
					    u_xlat6.x = u_xlat6.x * _FresnelStr;
					    u_xlat6.x = exp2(u_xlat6.x);
					    u_xlat6.x = u_xlat6.x + u_xlat6.x;
					    vs_TEXCOORD4 = min(u_xlat6.x, 1.0);
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat5 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat5;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlat10.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati3].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati3].xy + u_xlat10.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendAdd" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					float u_xlat14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat14 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat2.xyz = vec3(u_xlat14) * u_xlat2.xyz;
					    u_xlat14 = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat3.xyz = vec3(u_xlat14) * in_NORMAL0.xyz;
					    u_xlat2.x = dot(u_xlat3.xyz, u_xlat2.xyz);
					    u_xlat2.x = log2(abs(u_xlat2.x));
					    u_xlat2.x = u_xlat2.x * _FresnelStr;
					    u_xlat2.x = exp2(u_xlat2.x);
					    u_xlat2.x = u_xlat2.x + u_xlat2.x;
					    vs_TEXCOORD4 = min(u_xlat2.x, 1.0);
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat4 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_3_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati1;
					vec4 u_xlat2;
					int u_xlati3;
					float u_xlat4;
					float u_xlat5;
					vec3 u_xlat6;
					vec3 u_xlat8;
					vec2 u_xlat10;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    u_xlat6.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat6.x = inversesqrt(u_xlat6.x);
					    u_xlat6.xyz = u_xlat6.xxx * in_NORMAL0.xyz;
					    u_xlati3 = unity_StereoEyeIndex;
					    u_xlat8.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].yyy;
					    u_xlat8.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].xxx + u_xlat8.xyz;
					    u_xlat8.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].zzz + u_xlat8.xyz;
					    u_xlat8.xyz = u_xlat8.xyz + unity_WorldToObject[3].xyz;
					    u_xlat8.xyz = u_xlat8.xyz + (-in_POSITION0.xyz);
					    u_xlat4 = dot(u_xlat8.xyz, u_xlat8.xyz);
					    u_xlat4 = inversesqrt(u_xlat4);
					    u_xlat8.xyz = u_xlat8.xyz * vec3(u_xlat4);
					    u_xlat6.x = dot(u_xlat6.xyz, u_xlat8.xyz);
					    u_xlat6.x = log2(abs(u_xlat6.x));
					    u_xlat6.x = u_xlat6.x * _FresnelStr;
					    u_xlat6.x = exp2(u_xlat6.x);
					    u_xlat6.x = u_xlat6.x + u_xlat6.x;
					    vs_TEXCOORD4 = min(u_xlat6.x, 1.0);
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat5 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat5;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlat10.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati3].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati3].xy + u_xlat10.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendAdd" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					float u_xlat14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat14 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat2.xyz = vec3(u_xlat14) * u_xlat2.xyz;
					    u_xlat14 = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat3.xyz = vec3(u_xlat14) * in_NORMAL0.xyz;
					    u_xlat2.x = dot(u_xlat3.xyz, u_xlat2.xyz);
					    u_xlat2.x = log2(abs(u_xlat2.x));
					    u_xlat2.x = u_xlat2.x * _FresnelStr;
					    u_xlat2.x = exp2(u_xlat2.x);
					    u_xlat2.x = u_xlat2.x + u_xlat2.x;
					    vs_TEXCOORD4 = min(u_xlat2.x, 1.0);
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat4 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_3_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati1;
					vec4 u_xlat2;
					int u_xlati3;
					float u_xlat4;
					float u_xlat5;
					vec3 u_xlat6;
					vec3 u_xlat8;
					vec2 u_xlat10;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    u_xlat6.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat6.x = inversesqrt(u_xlat6.x);
					    u_xlat6.xyz = u_xlat6.xxx * in_NORMAL0.xyz;
					    u_xlati3 = unity_StereoEyeIndex;
					    u_xlat8.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].yyy;
					    u_xlat8.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].xxx + u_xlat8.xyz;
					    u_xlat8.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].zzz + u_xlat8.xyz;
					    u_xlat8.xyz = u_xlat8.xyz + unity_WorldToObject[3].xyz;
					    u_xlat8.xyz = u_xlat8.xyz + (-in_POSITION0.xyz);
					    u_xlat4 = dot(u_xlat8.xyz, u_xlat8.xyz);
					    u_xlat4 = inversesqrt(u_xlat4);
					    u_xlat8.xyz = u_xlat8.xyz * vec3(u_xlat4);
					    u_xlat6.x = dot(u_xlat6.xyz, u_xlat8.xyz);
					    u_xlat6.x = log2(abs(u_xlat6.x));
					    u_xlat6.x = u_xlat6.x * _FresnelStr;
					    u_xlat6.x = exp2(u_xlat6.x);
					    u_xlat6.x = u_xlat6.x + u_xlat6.x;
					    vs_TEXCOORD4 = min(u_xlat6.x, 1.0);
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat5 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat5;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlat10.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati3].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati3].xy + u_xlat10.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendAdd" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					float u_xlat14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat14 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat2.xyz = vec3(u_xlat14) * u_xlat2.xyz;
					    u_xlat14 = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat3.xyz = vec3(u_xlat14) * in_NORMAL0.xyz;
					    u_xlat2.x = dot(u_xlat3.xyz, u_xlat2.xyz);
					    u_xlat2.x = log2(abs(u_xlat2.x));
					    u_xlat2.x = u_xlat2.x * _FresnelStr;
					    u_xlat2.x = exp2(u_xlat2.x);
					    u_xlat2.x = u_xlat2.x + u_xlat2.x;
					    vs_TEXCOORD4 = min(u_xlat2.x, 1.0);
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat4 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_3_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati1;
					vec4 u_xlat2;
					int u_xlati3;
					float u_xlat4;
					float u_xlat5;
					vec3 u_xlat6;
					vec3 u_xlat8;
					vec2 u_xlat10;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    u_xlat6.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat6.x = inversesqrt(u_xlat6.x);
					    u_xlat6.xyz = u_xlat6.xxx * in_NORMAL0.xyz;
					    u_xlati3 = unity_StereoEyeIndex;
					    u_xlat8.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].yyy;
					    u_xlat8.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].xxx + u_xlat8.xyz;
					    u_xlat8.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].zzz + u_xlat8.xyz;
					    u_xlat8.xyz = u_xlat8.xyz + unity_WorldToObject[3].xyz;
					    u_xlat8.xyz = u_xlat8.xyz + (-in_POSITION0.xyz);
					    u_xlat4 = dot(u_xlat8.xyz, u_xlat8.xyz);
					    u_xlat4 = inversesqrt(u_xlat4);
					    u_xlat8.xyz = u_xlat8.xyz * vec3(u_xlat4);
					    u_xlat6.x = dot(u_xlat6.xyz, u_xlat8.xyz);
					    u_xlat6.x = log2(abs(u_xlat6.x));
					    u_xlat6.x = u_xlat6.x * _FresnelStr;
					    u_xlat6.x = exp2(u_xlat6.x);
					    u_xlat6.x = u_xlat6.x + u_xlat6.x;
					    vs_TEXCOORD4 = min(u_xlat6.x, 1.0);
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat5 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat5;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlat10.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati3].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati3].xy + u_xlat10.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendAdd" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat2 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat2;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec2 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					float u_xlat3;
					int u_xlati6;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat3 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat3;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlati6 = unity_StereoEyeIndex;
					    u_xlat1.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati6].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati6].xy + u_xlat1.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendAdd" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat2 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat2;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec2 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					float u_xlat3;
					int u_xlati6;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat3 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat3;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlati6 = unity_StereoEyeIndex;
					    u_xlat1.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati6].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati6].xy + u_xlat1.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendAdd" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat2 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat2;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec2 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					float u_xlat3;
					int u_xlati6;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat3 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat3;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlati6 = unity_StereoEyeIndex;
					    u_xlat1.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati6].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati6].xy + u_xlat1.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendAdd" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat2 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat2;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec2 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					float u_xlat3;
					int u_xlati6;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat3 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat3;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlati6 = unity_StereoEyeIndex;
					    u_xlat1.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati6].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati6].xy + u_xlat1.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendAdd" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat2 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat2;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec2 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					float u_xlat3;
					int u_xlati6;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat3 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat3;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlati6 = unity_StereoEyeIndex;
					    u_xlat1.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati6].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati6].xy + u_xlat1.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendAdd" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat2 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat2;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec2 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					float u_xlat3;
					int u_xlati6;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat3 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat3;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlati6 = unity_StereoEyeIndex;
					    u_xlat1.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati6].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati6].xy + u_xlat1.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendAdd" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat2 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat2;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec2 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					float u_xlat3;
					int u_xlati6;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat3 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat3;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlati6 = unity_StereoEyeIndex;
					    u_xlat1.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati6].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati6].xy + u_xlat1.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendAdd" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat2 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat2;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec2 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					float u_xlat3;
					int u_xlati6;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat3 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat3;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlati6 = unity_StereoEyeIndex;
					    u_xlat1.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati6].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati6].xy + u_xlat1.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendAdd" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat2 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat2;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec2 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					float u_xlat3;
					int u_xlati6;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat3 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat3;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlati6 = unity_StereoEyeIndex;
					    u_xlat1.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati6].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati6].xy + u_xlat1.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendAdd" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat2 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat2;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec2 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					float u_xlat3;
					int u_xlati6;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat3 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat3;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlati6 = unity_StereoEyeIndex;
					    u_xlat1.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati6].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati6].xy + u_xlat1.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendAdd" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat2 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat2;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec2 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					float u_xlat3;
					int u_xlati6;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat3 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat3;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlati6 = unity_StereoEyeIndex;
					    u_xlat1.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati6].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati6].xy + u_xlat1.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendAdd" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat2 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat2;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec2 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					float u_xlat3;
					int u_xlati6;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat3 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat3;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlati6 = unity_StereoEyeIndex;
					    u_xlat1.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati6].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati6].xy + u_xlat1.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendAdd" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat2 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat2;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec2 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					float u_xlat3;
					int u_xlati6;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat3 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat3;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlati6 = unity_StereoEyeIndex;
					    u_xlat1.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati6].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati6].xy + u_xlat1.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendAdd" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat2 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat2;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec2 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					float u_xlat3;
					int u_xlati6;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat3 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat3;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlati6 = unity_StereoEyeIndex;
					    u_xlat1.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati6].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati6].xy + u_xlat1.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendAdd" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat2 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat2;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec2 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					float u_xlat3;
					int u_xlati6;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat3 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat3;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlati6 = unity_StereoEyeIndex;
					    u_xlat1.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati6].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati6].xy + u_xlat1.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendAdd" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat2 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat2;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec2 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					float u_xlat3;
					int u_xlati6;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat3 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat3;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlati6 = unity_StereoEyeIndex;
					    u_xlat1.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati6].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati6].xy + u_xlat1.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendAdd" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					float u_xlat9;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat9 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat9 = inversesqrt(u_xlat9);
					    u_xlat2.xyz = vec3(u_xlat9) * u_xlat2.xyz;
					    u_xlat9 = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat9 = inversesqrt(u_xlat9);
					    u_xlat3.xyz = vec3(u_xlat9) * in_NORMAL0.xyz;
					    u_xlat9 = dot(u_xlat3.xyz, u_xlat2.xyz);
					    u_xlat9 = log2(abs(u_xlat9));
					    u_xlat9 = u_xlat9 * _FresnelStr;
					    u_xlat9 = exp2(u_xlat9);
					    u_xlat9 = u_xlat9 + u_xlat9;
					    vs_TEXCOORD4 = min(u_xlat9, 1.0);
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat4 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_3_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					vec3 u_xlat5;
					vec2 u_xlat8;
					int u_xlati10;
					float u_xlat15;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    u_xlat5.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat5.x = inversesqrt(u_xlat5.x);
					    u_xlat5.xyz = u_xlat5.xxx * in_NORMAL0.xyz;
					    u_xlati10 = unity_StereoEyeIndex;
					    u_xlat3.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati10].yyy;
					    u_xlat3.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati10].xxx + u_xlat3.xyz;
					    u_xlat3.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati10].zzz + u_xlat3.xyz;
					    u_xlat3.xyz = u_xlat3.xyz + unity_WorldToObject[3].xyz;
					    u_xlat3.xyz = u_xlat3.xyz + (-in_POSITION0.xyz);
					    u_xlat15 = dot(u_xlat3.xyz, u_xlat3.xyz);
					    u_xlat15 = inversesqrt(u_xlat15);
					    u_xlat3.xyz = vec3(u_xlat15) * u_xlat3.xyz;
					    u_xlat5.x = dot(u_xlat5.xyz, u_xlat3.xyz);
					    u_xlat5.x = log2(abs(u_xlat5.x));
					    u_xlat5.x = u_xlat5.x * _FresnelStr;
					    u_xlat5.x = exp2(u_xlat5.x);
					    u_xlat5.x = u_xlat5.x + u_xlat5.x;
					    vs_TEXCOORD4 = min(u_xlat5.x, 1.0);
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat4 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlat8.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati10].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati10].xy + u_xlat8.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendAdd" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					float u_xlat9;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat9 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat9 = inversesqrt(u_xlat9);
					    u_xlat2.xyz = vec3(u_xlat9) * u_xlat2.xyz;
					    u_xlat9 = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat9 = inversesqrt(u_xlat9);
					    u_xlat3.xyz = vec3(u_xlat9) * in_NORMAL0.xyz;
					    u_xlat9 = dot(u_xlat3.xyz, u_xlat2.xyz);
					    u_xlat9 = log2(abs(u_xlat9));
					    u_xlat9 = u_xlat9 * _FresnelStr;
					    u_xlat9 = exp2(u_xlat9);
					    u_xlat9 = u_xlat9 + u_xlat9;
					    vs_TEXCOORD4 = min(u_xlat9, 1.0);
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat4 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_3_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					vec3 u_xlat5;
					vec2 u_xlat8;
					int u_xlati10;
					float u_xlat15;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    u_xlat5.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat5.x = inversesqrt(u_xlat5.x);
					    u_xlat5.xyz = u_xlat5.xxx * in_NORMAL0.xyz;
					    u_xlati10 = unity_StereoEyeIndex;
					    u_xlat3.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati10].yyy;
					    u_xlat3.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati10].xxx + u_xlat3.xyz;
					    u_xlat3.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati10].zzz + u_xlat3.xyz;
					    u_xlat3.xyz = u_xlat3.xyz + unity_WorldToObject[3].xyz;
					    u_xlat3.xyz = u_xlat3.xyz + (-in_POSITION0.xyz);
					    u_xlat15 = dot(u_xlat3.xyz, u_xlat3.xyz);
					    u_xlat15 = inversesqrt(u_xlat15);
					    u_xlat3.xyz = vec3(u_xlat15) * u_xlat3.xyz;
					    u_xlat5.x = dot(u_xlat5.xyz, u_xlat3.xyz);
					    u_xlat5.x = log2(abs(u_xlat5.x));
					    u_xlat5.x = u_xlat5.x * _FresnelStr;
					    u_xlat5.x = exp2(u_xlat5.x);
					    u_xlat5.x = u_xlat5.x + u_xlat5.x;
					    vs_TEXCOORD4 = min(u_xlat5.x, 1.0);
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat4 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlat8.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati10].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati10].xy + u_xlat8.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendAdd" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					float u_xlat14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat14 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat2.xyz = vec3(u_xlat14) * u_xlat2.xyz;
					    u_xlat14 = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat3.xyz = vec3(u_xlat14) * in_NORMAL0.xyz;
					    u_xlat2.x = dot(u_xlat3.xyz, u_xlat2.xyz);
					    u_xlat2.x = log2(abs(u_xlat2.x));
					    u_xlat2.x = u_xlat2.x * _FresnelStr;
					    u_xlat2.x = exp2(u_xlat2.x);
					    u_xlat2.x = u_xlat2.x + u_xlat2.x;
					    vs_TEXCOORD4 = min(u_xlat2.x, 1.0);
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat4 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_3_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati1;
					vec4 u_xlat2;
					int u_xlati3;
					float u_xlat4;
					float u_xlat5;
					vec3 u_xlat6;
					vec3 u_xlat8;
					vec2 u_xlat10;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    u_xlat6.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat6.x = inversesqrt(u_xlat6.x);
					    u_xlat6.xyz = u_xlat6.xxx * in_NORMAL0.xyz;
					    u_xlati3 = unity_StereoEyeIndex;
					    u_xlat8.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].yyy;
					    u_xlat8.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].xxx + u_xlat8.xyz;
					    u_xlat8.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].zzz + u_xlat8.xyz;
					    u_xlat8.xyz = u_xlat8.xyz + unity_WorldToObject[3].xyz;
					    u_xlat8.xyz = u_xlat8.xyz + (-in_POSITION0.xyz);
					    u_xlat4 = dot(u_xlat8.xyz, u_xlat8.xyz);
					    u_xlat4 = inversesqrt(u_xlat4);
					    u_xlat8.xyz = u_xlat8.xyz * vec3(u_xlat4);
					    u_xlat6.x = dot(u_xlat6.xyz, u_xlat8.xyz);
					    u_xlat6.x = log2(abs(u_xlat6.x));
					    u_xlat6.x = u_xlat6.x * _FresnelStr;
					    u_xlat6.x = exp2(u_xlat6.x);
					    u_xlat6.x = u_xlat6.x + u_xlat6.x;
					    vs_TEXCOORD4 = min(u_xlat6.x, 1.0);
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat5 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat5;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlat10.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati3].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati3].xy + u_xlat10.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendAdd" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					float u_xlat14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat14 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat2.xyz = vec3(u_xlat14) * u_xlat2.xyz;
					    u_xlat14 = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat3.xyz = vec3(u_xlat14) * in_NORMAL0.xyz;
					    u_xlat2.x = dot(u_xlat3.xyz, u_xlat2.xyz);
					    u_xlat2.x = log2(abs(u_xlat2.x));
					    u_xlat2.x = u_xlat2.x * _FresnelStr;
					    u_xlat2.x = exp2(u_xlat2.x);
					    u_xlat2.x = u_xlat2.x + u_xlat2.x;
					    vs_TEXCOORD4 = min(u_xlat2.x, 1.0);
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat4 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_3_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati1;
					vec4 u_xlat2;
					int u_xlati3;
					float u_xlat4;
					float u_xlat5;
					vec3 u_xlat6;
					vec3 u_xlat8;
					vec2 u_xlat10;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    u_xlat6.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat6.x = inversesqrt(u_xlat6.x);
					    u_xlat6.xyz = u_xlat6.xxx * in_NORMAL0.xyz;
					    u_xlati3 = unity_StereoEyeIndex;
					    u_xlat8.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].yyy;
					    u_xlat8.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].xxx + u_xlat8.xyz;
					    u_xlat8.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].zzz + u_xlat8.xyz;
					    u_xlat8.xyz = u_xlat8.xyz + unity_WorldToObject[3].xyz;
					    u_xlat8.xyz = u_xlat8.xyz + (-in_POSITION0.xyz);
					    u_xlat4 = dot(u_xlat8.xyz, u_xlat8.xyz);
					    u_xlat4 = inversesqrt(u_xlat4);
					    u_xlat8.xyz = u_xlat8.xyz * vec3(u_xlat4);
					    u_xlat6.x = dot(u_xlat6.xyz, u_xlat8.xyz);
					    u_xlat6.x = log2(abs(u_xlat6.x));
					    u_xlat6.x = u_xlat6.x * _FresnelStr;
					    u_xlat6.x = exp2(u_xlat6.x);
					    u_xlat6.x = u_xlat6.x + u_xlat6.x;
					    vs_TEXCOORD4 = min(u_xlat6.x, 1.0);
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat5 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat5;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlat10.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati3].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati3].xy + u_xlat10.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendAdd" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					float u_xlat14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat14 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat2.xyz = vec3(u_xlat14) * u_xlat2.xyz;
					    u_xlat14 = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat3.xyz = vec3(u_xlat14) * in_NORMAL0.xyz;
					    u_xlat2.x = dot(u_xlat3.xyz, u_xlat2.xyz);
					    u_xlat2.x = log2(abs(u_xlat2.x));
					    u_xlat2.x = u_xlat2.x * _FresnelStr;
					    u_xlat2.x = exp2(u_xlat2.x);
					    u_xlat2.x = u_xlat2.x + u_xlat2.x;
					    vs_TEXCOORD4 = min(u_xlat2.x, 1.0);
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat4 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_3_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati1;
					vec4 u_xlat2;
					int u_xlati3;
					float u_xlat4;
					float u_xlat5;
					vec3 u_xlat6;
					vec3 u_xlat8;
					vec2 u_xlat10;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    u_xlat6.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat6.x = inversesqrt(u_xlat6.x);
					    u_xlat6.xyz = u_xlat6.xxx * in_NORMAL0.xyz;
					    u_xlati3 = unity_StereoEyeIndex;
					    u_xlat8.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].yyy;
					    u_xlat8.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].xxx + u_xlat8.xyz;
					    u_xlat8.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].zzz + u_xlat8.xyz;
					    u_xlat8.xyz = u_xlat8.xyz + unity_WorldToObject[3].xyz;
					    u_xlat8.xyz = u_xlat8.xyz + (-in_POSITION0.xyz);
					    u_xlat4 = dot(u_xlat8.xyz, u_xlat8.xyz);
					    u_xlat4 = inversesqrt(u_xlat4);
					    u_xlat8.xyz = u_xlat8.xyz * vec3(u_xlat4);
					    u_xlat6.x = dot(u_xlat6.xyz, u_xlat8.xyz);
					    u_xlat6.x = log2(abs(u_xlat6.x));
					    u_xlat6.x = u_xlat6.x * _FresnelStr;
					    u_xlat6.x = exp2(u_xlat6.x);
					    u_xlat6.x = u_xlat6.x + u_xlat6.x;
					    vs_TEXCOORD4 = min(u_xlat6.x, 1.0);
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat5 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat5;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlat10.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati3].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati3].xy + u_xlat10.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendAdd" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					float u_xlat14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat14 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat2.xyz = vec3(u_xlat14) * u_xlat2.xyz;
					    u_xlat14 = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat3.xyz = vec3(u_xlat14) * in_NORMAL0.xyz;
					    u_xlat2.x = dot(u_xlat3.xyz, u_xlat2.xyz);
					    u_xlat2.x = log2(abs(u_xlat2.x));
					    u_xlat2.x = u_xlat2.x * _FresnelStr;
					    u_xlat2.x = exp2(u_xlat2.x);
					    u_xlat2.x = u_xlat2.x + u_xlat2.x;
					    vs_TEXCOORD4 = min(u_xlat2.x, 1.0);
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat4 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_3_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati1;
					vec4 u_xlat2;
					int u_xlati3;
					float u_xlat4;
					float u_xlat5;
					vec3 u_xlat6;
					vec3 u_xlat8;
					vec2 u_xlat10;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    u_xlat6.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat6.x = inversesqrt(u_xlat6.x);
					    u_xlat6.xyz = u_xlat6.xxx * in_NORMAL0.xyz;
					    u_xlati3 = unity_StereoEyeIndex;
					    u_xlat8.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].yyy;
					    u_xlat8.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].xxx + u_xlat8.xyz;
					    u_xlat8.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].zzz + u_xlat8.xyz;
					    u_xlat8.xyz = u_xlat8.xyz + unity_WorldToObject[3].xyz;
					    u_xlat8.xyz = u_xlat8.xyz + (-in_POSITION0.xyz);
					    u_xlat4 = dot(u_xlat8.xyz, u_xlat8.xyz);
					    u_xlat4 = inversesqrt(u_xlat4);
					    u_xlat8.xyz = u_xlat8.xyz * vec3(u_xlat4);
					    u_xlat6.x = dot(u_xlat6.xyz, u_xlat8.xyz);
					    u_xlat6.x = log2(abs(u_xlat6.x));
					    u_xlat6.x = u_xlat6.x * _FresnelStr;
					    u_xlat6.x = exp2(u_xlat6.x);
					    u_xlat6.x = u_xlat6.x + u_xlat6.x;
					    vs_TEXCOORD4 = min(u_xlat6.x, 1.0);
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat5 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat5;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlat10.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati3].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati3].xy + u_xlat10.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendAdd" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					float u_xlat14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat14 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat2.xyz = vec3(u_xlat14) * u_xlat2.xyz;
					    u_xlat14 = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat3.xyz = vec3(u_xlat14) * in_NORMAL0.xyz;
					    u_xlat2.x = dot(u_xlat3.xyz, u_xlat2.xyz);
					    u_xlat2.x = log2(abs(u_xlat2.x));
					    u_xlat2.x = u_xlat2.x * _FresnelStr;
					    u_xlat2.x = exp2(u_xlat2.x);
					    u_xlat2.x = u_xlat2.x + u_xlat2.x;
					    vs_TEXCOORD4 = min(u_xlat2.x, 1.0);
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat4 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_3_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati1;
					vec4 u_xlat2;
					int u_xlati3;
					float u_xlat4;
					float u_xlat5;
					vec3 u_xlat6;
					vec3 u_xlat8;
					vec2 u_xlat10;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    u_xlat6.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat6.x = inversesqrt(u_xlat6.x);
					    u_xlat6.xyz = u_xlat6.xxx * in_NORMAL0.xyz;
					    u_xlati3 = unity_StereoEyeIndex;
					    u_xlat8.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].yyy;
					    u_xlat8.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].xxx + u_xlat8.xyz;
					    u_xlat8.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].zzz + u_xlat8.xyz;
					    u_xlat8.xyz = u_xlat8.xyz + unity_WorldToObject[3].xyz;
					    u_xlat8.xyz = u_xlat8.xyz + (-in_POSITION0.xyz);
					    u_xlat4 = dot(u_xlat8.xyz, u_xlat8.xyz);
					    u_xlat4 = inversesqrt(u_xlat4);
					    u_xlat8.xyz = u_xlat8.xyz * vec3(u_xlat4);
					    u_xlat6.x = dot(u_xlat6.xyz, u_xlat8.xyz);
					    u_xlat6.x = log2(abs(u_xlat6.x));
					    u_xlat6.x = u_xlat6.x * _FresnelStr;
					    u_xlat6.x = exp2(u_xlat6.x);
					    u_xlat6.x = u_xlat6.x + u_xlat6.x;
					    vs_TEXCOORD4 = min(u_xlat6.x, 1.0);
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat5 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat5;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlat10.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati3].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati3].xy + u_xlat10.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendAdd" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					float u_xlat14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat14 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat2.xyz = vec3(u_xlat14) * u_xlat2.xyz;
					    u_xlat14 = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat3.xyz = vec3(u_xlat14) * in_NORMAL0.xyz;
					    u_xlat2.x = dot(u_xlat3.xyz, u_xlat2.xyz);
					    u_xlat2.x = log2(abs(u_xlat2.x));
					    u_xlat2.x = u_xlat2.x * _FresnelStr;
					    u_xlat2.x = exp2(u_xlat2.x);
					    u_xlat2.x = u_xlat2.x + u_xlat2.x;
					    vs_TEXCOORD4 = min(u_xlat2.x, 1.0);
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat4 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_3_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati1;
					vec4 u_xlat2;
					int u_xlati3;
					float u_xlat4;
					float u_xlat5;
					vec3 u_xlat6;
					vec3 u_xlat8;
					vec2 u_xlat10;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    u_xlat6.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat6.x = inversesqrt(u_xlat6.x);
					    u_xlat6.xyz = u_xlat6.xxx * in_NORMAL0.xyz;
					    u_xlati3 = unity_StereoEyeIndex;
					    u_xlat8.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].yyy;
					    u_xlat8.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].xxx + u_xlat8.xyz;
					    u_xlat8.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].zzz + u_xlat8.xyz;
					    u_xlat8.xyz = u_xlat8.xyz + unity_WorldToObject[3].xyz;
					    u_xlat8.xyz = u_xlat8.xyz + (-in_POSITION0.xyz);
					    u_xlat4 = dot(u_xlat8.xyz, u_xlat8.xyz);
					    u_xlat4 = inversesqrt(u_xlat4);
					    u_xlat8.xyz = u_xlat8.xyz * vec3(u_xlat4);
					    u_xlat6.x = dot(u_xlat6.xyz, u_xlat8.xyz);
					    u_xlat6.x = log2(abs(u_xlat6.x));
					    u_xlat6.x = u_xlat6.x * _FresnelStr;
					    u_xlat6.x = exp2(u_xlat6.x);
					    u_xlat6.x = u_xlat6.x + u_xlat6.x;
					    vs_TEXCOORD4 = min(u_xlat6.x, 1.0);
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat5 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat5;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlat10.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati3].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati3].xy + u_xlat10.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendAdd" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					float u_xlat9;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat9 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat9 = inversesqrt(u_xlat9);
					    u_xlat2.xyz = vec3(u_xlat9) * u_xlat2.xyz;
					    u_xlat9 = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat9 = inversesqrt(u_xlat9);
					    u_xlat3.xyz = vec3(u_xlat9) * in_NORMAL0.xyz;
					    u_xlat9 = dot(u_xlat3.xyz, u_xlat2.xyz);
					    u_xlat9 = log2(abs(u_xlat9));
					    u_xlat9 = u_xlat9 * _FresnelStr;
					    u_xlat9 = exp2(u_xlat9);
					    u_xlat9 = u_xlat9 + u_xlat9;
					    vs_TEXCOORD4 = min(u_xlat9, 1.0);
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat4 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_3_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					vec3 u_xlat5;
					vec2 u_xlat8;
					int u_xlati10;
					float u_xlat15;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    u_xlat5.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat5.x = inversesqrt(u_xlat5.x);
					    u_xlat5.xyz = u_xlat5.xxx * in_NORMAL0.xyz;
					    u_xlati10 = unity_StereoEyeIndex;
					    u_xlat3.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati10].yyy;
					    u_xlat3.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati10].xxx + u_xlat3.xyz;
					    u_xlat3.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati10].zzz + u_xlat3.xyz;
					    u_xlat3.xyz = u_xlat3.xyz + unity_WorldToObject[3].xyz;
					    u_xlat3.xyz = u_xlat3.xyz + (-in_POSITION0.xyz);
					    u_xlat15 = dot(u_xlat3.xyz, u_xlat3.xyz);
					    u_xlat15 = inversesqrt(u_xlat15);
					    u_xlat3.xyz = vec3(u_xlat15) * u_xlat3.xyz;
					    u_xlat5.x = dot(u_xlat5.xyz, u_xlat3.xyz);
					    u_xlat5.x = log2(abs(u_xlat5.x));
					    u_xlat5.x = u_xlat5.x * _FresnelStr;
					    u_xlat5.x = exp2(u_xlat5.x);
					    u_xlat5.x = u_xlat5.x + u_xlat5.x;
					    vs_TEXCOORD4 = min(u_xlat5.x, 1.0);
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat4 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlat8.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati10].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati10].xy + u_xlat8.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendAdd" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					float u_xlat9;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat9 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat9 = inversesqrt(u_xlat9);
					    u_xlat2.xyz = vec3(u_xlat9) * u_xlat2.xyz;
					    u_xlat9 = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat9 = inversesqrt(u_xlat9);
					    u_xlat3.xyz = vec3(u_xlat9) * in_NORMAL0.xyz;
					    u_xlat9 = dot(u_xlat3.xyz, u_xlat2.xyz);
					    u_xlat9 = log2(abs(u_xlat9));
					    u_xlat9 = u_xlat9 * _FresnelStr;
					    u_xlat9 = exp2(u_xlat9);
					    u_xlat9 = u_xlat9 + u_xlat9;
					    vs_TEXCOORD4 = min(u_xlat9, 1.0);
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat4 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_3_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					vec3 u_xlat5;
					vec2 u_xlat8;
					int u_xlati10;
					float u_xlat15;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    u_xlat5.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat5.x = inversesqrt(u_xlat5.x);
					    u_xlat5.xyz = u_xlat5.xxx * in_NORMAL0.xyz;
					    u_xlati10 = unity_StereoEyeIndex;
					    u_xlat3.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati10].yyy;
					    u_xlat3.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati10].xxx + u_xlat3.xyz;
					    u_xlat3.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati10].zzz + u_xlat3.xyz;
					    u_xlat3.xyz = u_xlat3.xyz + unity_WorldToObject[3].xyz;
					    u_xlat3.xyz = u_xlat3.xyz + (-in_POSITION0.xyz);
					    u_xlat15 = dot(u_xlat3.xyz, u_xlat3.xyz);
					    u_xlat15 = inversesqrt(u_xlat15);
					    u_xlat3.xyz = vec3(u_xlat15) * u_xlat3.xyz;
					    u_xlat5.x = dot(u_xlat5.xyz, u_xlat3.xyz);
					    u_xlat5.x = log2(abs(u_xlat5.x));
					    u_xlat5.x = u_xlat5.x * _FresnelStr;
					    u_xlat5.x = exp2(u_xlat5.x);
					    u_xlat5.x = u_xlat5.x + u_xlat5.x;
					    vs_TEXCOORD4 = min(u_xlat5.x, 1.0);
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat4 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlat8.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati10].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati10].xy + u_xlat8.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendAdd" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					float u_xlat14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat14 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat2.xyz = vec3(u_xlat14) * u_xlat2.xyz;
					    u_xlat14 = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat3.xyz = vec3(u_xlat14) * in_NORMAL0.xyz;
					    u_xlat2.x = dot(u_xlat3.xyz, u_xlat2.xyz);
					    u_xlat2.x = log2(abs(u_xlat2.x));
					    u_xlat2.x = u_xlat2.x * _FresnelStr;
					    u_xlat2.x = exp2(u_xlat2.x);
					    u_xlat2.x = u_xlat2.x + u_xlat2.x;
					    vs_TEXCOORD4 = min(u_xlat2.x, 1.0);
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat4 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_3_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati1;
					vec4 u_xlat2;
					int u_xlati3;
					float u_xlat4;
					float u_xlat5;
					vec3 u_xlat6;
					vec3 u_xlat8;
					vec2 u_xlat10;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    u_xlat6.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat6.x = inversesqrt(u_xlat6.x);
					    u_xlat6.xyz = u_xlat6.xxx * in_NORMAL0.xyz;
					    u_xlati3 = unity_StereoEyeIndex;
					    u_xlat8.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].yyy;
					    u_xlat8.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].xxx + u_xlat8.xyz;
					    u_xlat8.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].zzz + u_xlat8.xyz;
					    u_xlat8.xyz = u_xlat8.xyz + unity_WorldToObject[3].xyz;
					    u_xlat8.xyz = u_xlat8.xyz + (-in_POSITION0.xyz);
					    u_xlat4 = dot(u_xlat8.xyz, u_xlat8.xyz);
					    u_xlat4 = inversesqrt(u_xlat4);
					    u_xlat8.xyz = u_xlat8.xyz * vec3(u_xlat4);
					    u_xlat6.x = dot(u_xlat6.xyz, u_xlat8.xyz);
					    u_xlat6.x = log2(abs(u_xlat6.x));
					    u_xlat6.x = u_xlat6.x * _FresnelStr;
					    u_xlat6.x = exp2(u_xlat6.x);
					    u_xlat6.x = u_xlat6.x + u_xlat6.x;
					    vs_TEXCOORD4 = min(u_xlat6.x, 1.0);
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat5 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat5;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlat10.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati3].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati3].xy + u_xlat10.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendAdd" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					float u_xlat14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat14 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat2.xyz = vec3(u_xlat14) * u_xlat2.xyz;
					    u_xlat14 = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat3.xyz = vec3(u_xlat14) * in_NORMAL0.xyz;
					    u_xlat2.x = dot(u_xlat3.xyz, u_xlat2.xyz);
					    u_xlat2.x = log2(abs(u_xlat2.x));
					    u_xlat2.x = u_xlat2.x * _FresnelStr;
					    u_xlat2.x = exp2(u_xlat2.x);
					    u_xlat2.x = u_xlat2.x + u_xlat2.x;
					    vs_TEXCOORD4 = min(u_xlat2.x, 1.0);
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat4 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_3_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati1;
					vec4 u_xlat2;
					int u_xlati3;
					float u_xlat4;
					float u_xlat5;
					vec3 u_xlat6;
					vec3 u_xlat8;
					vec2 u_xlat10;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    u_xlat6.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat6.x = inversesqrt(u_xlat6.x);
					    u_xlat6.xyz = u_xlat6.xxx * in_NORMAL0.xyz;
					    u_xlati3 = unity_StereoEyeIndex;
					    u_xlat8.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].yyy;
					    u_xlat8.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].xxx + u_xlat8.xyz;
					    u_xlat8.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].zzz + u_xlat8.xyz;
					    u_xlat8.xyz = u_xlat8.xyz + unity_WorldToObject[3].xyz;
					    u_xlat8.xyz = u_xlat8.xyz + (-in_POSITION0.xyz);
					    u_xlat4 = dot(u_xlat8.xyz, u_xlat8.xyz);
					    u_xlat4 = inversesqrt(u_xlat4);
					    u_xlat8.xyz = u_xlat8.xyz * vec3(u_xlat4);
					    u_xlat6.x = dot(u_xlat6.xyz, u_xlat8.xyz);
					    u_xlat6.x = log2(abs(u_xlat6.x));
					    u_xlat6.x = u_xlat6.x * _FresnelStr;
					    u_xlat6.x = exp2(u_xlat6.x);
					    u_xlat6.x = u_xlat6.x + u_xlat6.x;
					    vs_TEXCOORD4 = min(u_xlat6.x, 1.0);
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat5 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat5;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlat10.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati3].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati3].xy + u_xlat10.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendAdd" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					float u_xlat14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat14 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat2.xyz = vec3(u_xlat14) * u_xlat2.xyz;
					    u_xlat14 = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat3.xyz = vec3(u_xlat14) * in_NORMAL0.xyz;
					    u_xlat2.x = dot(u_xlat3.xyz, u_xlat2.xyz);
					    u_xlat2.x = log2(abs(u_xlat2.x));
					    u_xlat2.x = u_xlat2.x * _FresnelStr;
					    u_xlat2.x = exp2(u_xlat2.x);
					    u_xlat2.x = u_xlat2.x + u_xlat2.x;
					    vs_TEXCOORD4 = min(u_xlat2.x, 1.0);
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat4 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_3_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati1;
					vec4 u_xlat2;
					int u_xlati3;
					float u_xlat4;
					float u_xlat5;
					vec3 u_xlat6;
					vec3 u_xlat8;
					vec2 u_xlat10;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    u_xlat6.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat6.x = inversesqrt(u_xlat6.x);
					    u_xlat6.xyz = u_xlat6.xxx * in_NORMAL0.xyz;
					    u_xlati3 = unity_StereoEyeIndex;
					    u_xlat8.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].yyy;
					    u_xlat8.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].xxx + u_xlat8.xyz;
					    u_xlat8.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].zzz + u_xlat8.xyz;
					    u_xlat8.xyz = u_xlat8.xyz + unity_WorldToObject[3].xyz;
					    u_xlat8.xyz = u_xlat8.xyz + (-in_POSITION0.xyz);
					    u_xlat4 = dot(u_xlat8.xyz, u_xlat8.xyz);
					    u_xlat4 = inversesqrt(u_xlat4);
					    u_xlat8.xyz = u_xlat8.xyz * vec3(u_xlat4);
					    u_xlat6.x = dot(u_xlat6.xyz, u_xlat8.xyz);
					    u_xlat6.x = log2(abs(u_xlat6.x));
					    u_xlat6.x = u_xlat6.x * _FresnelStr;
					    u_xlat6.x = exp2(u_xlat6.x);
					    u_xlat6.x = u_xlat6.x + u_xlat6.x;
					    vs_TEXCOORD4 = min(u_xlat6.x, 1.0);
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat5 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat5;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlat10.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati3].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati3].xy + u_xlat10.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendAdd" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					float u_xlat14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat14 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat2.xyz = vec3(u_xlat14) * u_xlat2.xyz;
					    u_xlat14 = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat3.xyz = vec3(u_xlat14) * in_NORMAL0.xyz;
					    u_xlat2.x = dot(u_xlat3.xyz, u_xlat2.xyz);
					    u_xlat2.x = log2(abs(u_xlat2.x));
					    u_xlat2.x = u_xlat2.x * _FresnelStr;
					    u_xlat2.x = exp2(u_xlat2.x);
					    u_xlat2.x = u_xlat2.x + u_xlat2.x;
					    vs_TEXCOORD4 = min(u_xlat2.x, 1.0);
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat4 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_3_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati1;
					vec4 u_xlat2;
					int u_xlati3;
					float u_xlat4;
					float u_xlat5;
					vec3 u_xlat6;
					vec3 u_xlat8;
					vec2 u_xlat10;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    u_xlat6.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat6.x = inversesqrt(u_xlat6.x);
					    u_xlat6.xyz = u_xlat6.xxx * in_NORMAL0.xyz;
					    u_xlati3 = unity_StereoEyeIndex;
					    u_xlat8.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].yyy;
					    u_xlat8.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].xxx + u_xlat8.xyz;
					    u_xlat8.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].zzz + u_xlat8.xyz;
					    u_xlat8.xyz = u_xlat8.xyz + unity_WorldToObject[3].xyz;
					    u_xlat8.xyz = u_xlat8.xyz + (-in_POSITION0.xyz);
					    u_xlat4 = dot(u_xlat8.xyz, u_xlat8.xyz);
					    u_xlat4 = inversesqrt(u_xlat4);
					    u_xlat8.xyz = u_xlat8.xyz * vec3(u_xlat4);
					    u_xlat6.x = dot(u_xlat6.xyz, u_xlat8.xyz);
					    u_xlat6.x = log2(abs(u_xlat6.x));
					    u_xlat6.x = u_xlat6.x * _FresnelStr;
					    u_xlat6.x = exp2(u_xlat6.x);
					    u_xlat6.x = u_xlat6.x + u_xlat6.x;
					    vs_TEXCOORD4 = min(u_xlat6.x, 1.0);
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat5 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat5;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlat10.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati3].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati3].xy + u_xlat10.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendAdd" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					float u_xlat14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat14 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat2.xyz = vec3(u_xlat14) * u_xlat2.xyz;
					    u_xlat14 = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat3.xyz = vec3(u_xlat14) * in_NORMAL0.xyz;
					    u_xlat2.x = dot(u_xlat3.xyz, u_xlat2.xyz);
					    u_xlat2.x = log2(abs(u_xlat2.x));
					    u_xlat2.x = u_xlat2.x * _FresnelStr;
					    u_xlat2.x = exp2(u_xlat2.x);
					    u_xlat2.x = u_xlat2.x + u_xlat2.x;
					    vs_TEXCOORD4 = min(u_xlat2.x, 1.0);
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat4 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_3_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati1;
					vec4 u_xlat2;
					int u_xlati3;
					float u_xlat4;
					float u_xlat5;
					vec3 u_xlat6;
					vec3 u_xlat8;
					vec2 u_xlat10;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    u_xlat6.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat6.x = inversesqrt(u_xlat6.x);
					    u_xlat6.xyz = u_xlat6.xxx * in_NORMAL0.xyz;
					    u_xlati3 = unity_StereoEyeIndex;
					    u_xlat8.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].yyy;
					    u_xlat8.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].xxx + u_xlat8.xyz;
					    u_xlat8.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].zzz + u_xlat8.xyz;
					    u_xlat8.xyz = u_xlat8.xyz + unity_WorldToObject[3].xyz;
					    u_xlat8.xyz = u_xlat8.xyz + (-in_POSITION0.xyz);
					    u_xlat4 = dot(u_xlat8.xyz, u_xlat8.xyz);
					    u_xlat4 = inversesqrt(u_xlat4);
					    u_xlat8.xyz = u_xlat8.xyz * vec3(u_xlat4);
					    u_xlat6.x = dot(u_xlat6.xyz, u_xlat8.xyz);
					    u_xlat6.x = log2(abs(u_xlat6.x));
					    u_xlat6.x = u_xlat6.x * _FresnelStr;
					    u_xlat6.x = exp2(u_xlat6.x);
					    u_xlat6.x = u_xlat6.x + u_xlat6.x;
					    vs_TEXCOORD4 = min(u_xlat6.x, 1.0);
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat5 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat5;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlat10.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati3].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati3].xy + u_xlat10.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendAdd" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					float u_xlat14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat14 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat2.xyz = vec3(u_xlat14) * u_xlat2.xyz;
					    u_xlat14 = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat3.xyz = vec3(u_xlat14) * in_NORMAL0.xyz;
					    u_xlat2.x = dot(u_xlat3.xyz, u_xlat2.xyz);
					    u_xlat2.x = log2(abs(u_xlat2.x));
					    u_xlat2.x = u_xlat2.x * _FresnelStr;
					    u_xlat2.x = exp2(u_xlat2.x);
					    u_xlat2.x = u_xlat2.x + u_xlat2.x;
					    vs_TEXCOORD4 = min(u_xlat2.x, 1.0);
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat4 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_3_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati1;
					vec4 u_xlat2;
					int u_xlati3;
					float u_xlat4;
					float u_xlat5;
					vec3 u_xlat6;
					vec3 u_xlat8;
					vec2 u_xlat10;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    u_xlat6.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat6.x = inversesqrt(u_xlat6.x);
					    u_xlat6.xyz = u_xlat6.xxx * in_NORMAL0.xyz;
					    u_xlati3 = unity_StereoEyeIndex;
					    u_xlat8.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].yyy;
					    u_xlat8.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].xxx + u_xlat8.xyz;
					    u_xlat8.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].zzz + u_xlat8.xyz;
					    u_xlat8.xyz = u_xlat8.xyz + unity_WorldToObject[3].xyz;
					    u_xlat8.xyz = u_xlat8.xyz + (-in_POSITION0.xyz);
					    u_xlat4 = dot(u_xlat8.xyz, u_xlat8.xyz);
					    u_xlat4 = inversesqrt(u_xlat4);
					    u_xlat8.xyz = u_xlat8.xyz * vec3(u_xlat4);
					    u_xlat6.x = dot(u_xlat6.xyz, u_xlat8.xyz);
					    u_xlat6.x = log2(abs(u_xlat6.x));
					    u_xlat6.x = u_xlat6.x * _FresnelStr;
					    u_xlat6.x = exp2(u_xlat6.x);
					    u_xlat6.x = u_xlat6.x + u_xlat6.x;
					    vs_TEXCOORD4 = min(u_xlat6.x, 1.0);
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat5 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat5;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlat10.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati3].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati3].xy + u_xlat10.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendAdd" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat2 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat2;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec2 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					float u_xlat3;
					int u_xlati6;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat3 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat3;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlati6 = unity_StereoEyeIndex;
					    u_xlat1.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati6].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati6].xy + u_xlat1.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendAdd" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat2 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat2;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec2 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					float u_xlat3;
					int u_xlati6;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat3 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat3;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlati6 = unity_StereoEyeIndex;
					    u_xlat1.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati6].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati6].xy + u_xlat1.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendAdd" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat2 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat2;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec2 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					float u_xlat3;
					int u_xlati6;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat3 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat3;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlati6 = unity_StereoEyeIndex;
					    u_xlat1.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati6].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati6].xy + u_xlat1.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendAdd" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat2 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat2;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec2 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					float u_xlat3;
					int u_xlati6;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat3 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat3;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlati6 = unity_StereoEyeIndex;
					    u_xlat1.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati6].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati6].xy + u_xlat1.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendAdd" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat2 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat2;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec2 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					float u_xlat3;
					int u_xlati6;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat3 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat3;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlati6 = unity_StereoEyeIndex;
					    u_xlat1.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati6].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati6].xy + u_xlat1.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendAdd" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat2 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat2;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec2 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					float u_xlat3;
					int u_xlati6;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat3 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat3;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlati6 = unity_StereoEyeIndex;
					    u_xlat1.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati6].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati6].xy + u_xlat1.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendAdd" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat2 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat2;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec2 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					float u_xlat3;
					int u_xlati6;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat3 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat3;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlati6 = unity_StereoEyeIndex;
					    u_xlat1.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati6].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati6].xy + u_xlat1.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendAdd" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat2 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat2;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec2 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					float u_xlat3;
					int u_xlati6;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat3 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat3;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlati6 = unity_StereoEyeIndex;
					    u_xlat1.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati6].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati6].xy + u_xlat1.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendAdd" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat2 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat2;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec2 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					float u_xlat3;
					int u_xlati6;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat3 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat3;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlati6 = unity_StereoEyeIndex;
					    u_xlat1.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati6].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati6].xy + u_xlat1.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendAdd" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat2 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat2;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec2 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					float u_xlat3;
					int u_xlati6;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat3 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat3;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlati6 = unity_StereoEyeIndex;
					    u_xlat1.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati6].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati6].xy + u_xlat1.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendAdd" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat2 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat2;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec2 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					float u_xlat3;
					int u_xlati6;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat3 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat3;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlati6 = unity_StereoEyeIndex;
					    u_xlat1.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati6].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati6].xy + u_xlat1.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendAdd" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat2 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat2;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec2 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					float u_xlat3;
					int u_xlati6;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat3 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat3;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlati6 = unity_StereoEyeIndex;
					    u_xlat1.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati6].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati6].xy + u_xlat1.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendAdd" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat2 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat2;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec2 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					float u_xlat3;
					int u_xlati6;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat3 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat3;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlati6 = unity_StereoEyeIndex;
					    u_xlat1.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati6].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati6].xy + u_xlat1.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendAdd" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat2 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat2;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec2 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					float u_xlat3;
					int u_xlati6;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat3 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat3;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlati6 = unity_StereoEyeIndex;
					    u_xlat1.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati6].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati6].xy + u_xlat1.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendAdd" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat2 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat2;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec2 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					float u_xlat3;
					int u_xlati6;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat3 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat3;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlati6 = unity_StereoEyeIndex;
					    u_xlat1.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati6].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati6].xy + u_xlat1.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendAdd" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat2 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat2;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec2 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					float u_xlat3;
					int u_xlati6;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat3 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat3;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlati6 = unity_StereoEyeIndex;
					    u_xlat1.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati6].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati6].xy + u_xlat1.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendAdd" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					float u_xlat9;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat9 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat9 = inversesqrt(u_xlat9);
					    u_xlat2.xyz = vec3(u_xlat9) * u_xlat2.xyz;
					    u_xlat9 = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat9 = inversesqrt(u_xlat9);
					    u_xlat3.xyz = vec3(u_xlat9) * in_NORMAL0.xyz;
					    u_xlat9 = dot(u_xlat3.xyz, u_xlat2.xyz);
					    u_xlat9 = log2(abs(u_xlat9));
					    u_xlat9 = u_xlat9 * _FresnelStr;
					    u_xlat9 = exp2(u_xlat9);
					    u_xlat9 = u_xlat9 + u_xlat9;
					    vs_TEXCOORD4 = min(u_xlat9, 1.0);
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat4 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_3_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					vec3 u_xlat5;
					vec2 u_xlat8;
					int u_xlati10;
					float u_xlat15;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    u_xlat5.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat5.x = inversesqrt(u_xlat5.x);
					    u_xlat5.xyz = u_xlat5.xxx * in_NORMAL0.xyz;
					    u_xlati10 = unity_StereoEyeIndex;
					    u_xlat3.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati10].yyy;
					    u_xlat3.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati10].xxx + u_xlat3.xyz;
					    u_xlat3.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati10].zzz + u_xlat3.xyz;
					    u_xlat3.xyz = u_xlat3.xyz + unity_WorldToObject[3].xyz;
					    u_xlat3.xyz = u_xlat3.xyz + (-in_POSITION0.xyz);
					    u_xlat15 = dot(u_xlat3.xyz, u_xlat3.xyz);
					    u_xlat15 = inversesqrt(u_xlat15);
					    u_xlat3.xyz = vec3(u_xlat15) * u_xlat3.xyz;
					    u_xlat5.x = dot(u_xlat5.xyz, u_xlat3.xyz);
					    u_xlat5.x = log2(abs(u_xlat5.x));
					    u_xlat5.x = u_xlat5.x * _FresnelStr;
					    u_xlat5.x = exp2(u_xlat5.x);
					    u_xlat5.x = u_xlat5.x + u_xlat5.x;
					    vs_TEXCOORD4 = min(u_xlat5.x, 1.0);
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat4 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlat8.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati10].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati10].xy + u_xlat8.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendAdd" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					float u_xlat9;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat9 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat9 = inversesqrt(u_xlat9);
					    u_xlat2.xyz = vec3(u_xlat9) * u_xlat2.xyz;
					    u_xlat9 = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat9 = inversesqrt(u_xlat9);
					    u_xlat3.xyz = vec3(u_xlat9) * in_NORMAL0.xyz;
					    u_xlat9 = dot(u_xlat3.xyz, u_xlat2.xyz);
					    u_xlat9 = log2(abs(u_xlat9));
					    u_xlat9 = u_xlat9 * _FresnelStr;
					    u_xlat9 = exp2(u_xlat9);
					    u_xlat9 = u_xlat9 + u_xlat9;
					    vs_TEXCOORD4 = min(u_xlat9, 1.0);
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat4 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_3_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					vec3 u_xlat5;
					vec2 u_xlat8;
					int u_xlati10;
					float u_xlat15;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    u_xlat5.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat5.x = inversesqrt(u_xlat5.x);
					    u_xlat5.xyz = u_xlat5.xxx * in_NORMAL0.xyz;
					    u_xlati10 = unity_StereoEyeIndex;
					    u_xlat3.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati10].yyy;
					    u_xlat3.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati10].xxx + u_xlat3.xyz;
					    u_xlat3.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati10].zzz + u_xlat3.xyz;
					    u_xlat3.xyz = u_xlat3.xyz + unity_WorldToObject[3].xyz;
					    u_xlat3.xyz = u_xlat3.xyz + (-in_POSITION0.xyz);
					    u_xlat15 = dot(u_xlat3.xyz, u_xlat3.xyz);
					    u_xlat15 = inversesqrt(u_xlat15);
					    u_xlat3.xyz = vec3(u_xlat15) * u_xlat3.xyz;
					    u_xlat5.x = dot(u_xlat5.xyz, u_xlat3.xyz);
					    u_xlat5.x = log2(abs(u_xlat5.x));
					    u_xlat5.x = u_xlat5.x * _FresnelStr;
					    u_xlat5.x = exp2(u_xlat5.x);
					    u_xlat5.x = u_xlat5.x + u_xlat5.x;
					    vs_TEXCOORD4 = min(u_xlat5.x, 1.0);
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat4 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlat8.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati10].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati10].xy + u_xlat8.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendAdd" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					float u_xlat14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat14 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat2.xyz = vec3(u_xlat14) * u_xlat2.xyz;
					    u_xlat14 = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat3.xyz = vec3(u_xlat14) * in_NORMAL0.xyz;
					    u_xlat2.x = dot(u_xlat3.xyz, u_xlat2.xyz);
					    u_xlat2.x = log2(abs(u_xlat2.x));
					    u_xlat2.x = u_xlat2.x * _FresnelStr;
					    u_xlat2.x = exp2(u_xlat2.x);
					    u_xlat2.x = u_xlat2.x + u_xlat2.x;
					    vs_TEXCOORD4 = min(u_xlat2.x, 1.0);
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat4 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_3_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati1;
					vec4 u_xlat2;
					int u_xlati3;
					float u_xlat4;
					float u_xlat5;
					vec3 u_xlat6;
					vec3 u_xlat8;
					vec2 u_xlat10;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    u_xlat6.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat6.x = inversesqrt(u_xlat6.x);
					    u_xlat6.xyz = u_xlat6.xxx * in_NORMAL0.xyz;
					    u_xlati3 = unity_StereoEyeIndex;
					    u_xlat8.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].yyy;
					    u_xlat8.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].xxx + u_xlat8.xyz;
					    u_xlat8.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].zzz + u_xlat8.xyz;
					    u_xlat8.xyz = u_xlat8.xyz + unity_WorldToObject[3].xyz;
					    u_xlat8.xyz = u_xlat8.xyz + (-in_POSITION0.xyz);
					    u_xlat4 = dot(u_xlat8.xyz, u_xlat8.xyz);
					    u_xlat4 = inversesqrt(u_xlat4);
					    u_xlat8.xyz = u_xlat8.xyz * vec3(u_xlat4);
					    u_xlat6.x = dot(u_xlat6.xyz, u_xlat8.xyz);
					    u_xlat6.x = log2(abs(u_xlat6.x));
					    u_xlat6.x = u_xlat6.x * _FresnelStr;
					    u_xlat6.x = exp2(u_xlat6.x);
					    u_xlat6.x = u_xlat6.x + u_xlat6.x;
					    vs_TEXCOORD4 = min(u_xlat6.x, 1.0);
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat5 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat5;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlat10.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati3].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati3].xy + u_xlat10.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendAdd" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					float u_xlat14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat14 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat2.xyz = vec3(u_xlat14) * u_xlat2.xyz;
					    u_xlat14 = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat3.xyz = vec3(u_xlat14) * in_NORMAL0.xyz;
					    u_xlat2.x = dot(u_xlat3.xyz, u_xlat2.xyz);
					    u_xlat2.x = log2(abs(u_xlat2.x));
					    u_xlat2.x = u_xlat2.x * _FresnelStr;
					    u_xlat2.x = exp2(u_xlat2.x);
					    u_xlat2.x = u_xlat2.x + u_xlat2.x;
					    vs_TEXCOORD4 = min(u_xlat2.x, 1.0);
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat4 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_3_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati1;
					vec4 u_xlat2;
					int u_xlati3;
					float u_xlat4;
					float u_xlat5;
					vec3 u_xlat6;
					vec3 u_xlat8;
					vec2 u_xlat10;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    u_xlat6.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat6.x = inversesqrt(u_xlat6.x);
					    u_xlat6.xyz = u_xlat6.xxx * in_NORMAL0.xyz;
					    u_xlati3 = unity_StereoEyeIndex;
					    u_xlat8.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].yyy;
					    u_xlat8.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].xxx + u_xlat8.xyz;
					    u_xlat8.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].zzz + u_xlat8.xyz;
					    u_xlat8.xyz = u_xlat8.xyz + unity_WorldToObject[3].xyz;
					    u_xlat8.xyz = u_xlat8.xyz + (-in_POSITION0.xyz);
					    u_xlat4 = dot(u_xlat8.xyz, u_xlat8.xyz);
					    u_xlat4 = inversesqrt(u_xlat4);
					    u_xlat8.xyz = u_xlat8.xyz * vec3(u_xlat4);
					    u_xlat6.x = dot(u_xlat6.xyz, u_xlat8.xyz);
					    u_xlat6.x = log2(abs(u_xlat6.x));
					    u_xlat6.x = u_xlat6.x * _FresnelStr;
					    u_xlat6.x = exp2(u_xlat6.x);
					    u_xlat6.x = u_xlat6.x + u_xlat6.x;
					    vs_TEXCOORD4 = min(u_xlat6.x, 1.0);
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat5 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat5;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlat10.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati3].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati3].xy + u_xlat10.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendAdd" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					float u_xlat14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat14 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat2.xyz = vec3(u_xlat14) * u_xlat2.xyz;
					    u_xlat14 = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat3.xyz = vec3(u_xlat14) * in_NORMAL0.xyz;
					    u_xlat2.x = dot(u_xlat3.xyz, u_xlat2.xyz);
					    u_xlat2.x = log2(abs(u_xlat2.x));
					    u_xlat2.x = u_xlat2.x * _FresnelStr;
					    u_xlat2.x = exp2(u_xlat2.x);
					    u_xlat2.x = u_xlat2.x + u_xlat2.x;
					    vs_TEXCOORD4 = min(u_xlat2.x, 1.0);
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat4 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_3_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati1;
					vec4 u_xlat2;
					int u_xlati3;
					float u_xlat4;
					float u_xlat5;
					vec3 u_xlat6;
					vec3 u_xlat8;
					vec2 u_xlat10;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    u_xlat6.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat6.x = inversesqrt(u_xlat6.x);
					    u_xlat6.xyz = u_xlat6.xxx * in_NORMAL0.xyz;
					    u_xlati3 = unity_StereoEyeIndex;
					    u_xlat8.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].yyy;
					    u_xlat8.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].xxx + u_xlat8.xyz;
					    u_xlat8.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].zzz + u_xlat8.xyz;
					    u_xlat8.xyz = u_xlat8.xyz + unity_WorldToObject[3].xyz;
					    u_xlat8.xyz = u_xlat8.xyz + (-in_POSITION0.xyz);
					    u_xlat4 = dot(u_xlat8.xyz, u_xlat8.xyz);
					    u_xlat4 = inversesqrt(u_xlat4);
					    u_xlat8.xyz = u_xlat8.xyz * vec3(u_xlat4);
					    u_xlat6.x = dot(u_xlat6.xyz, u_xlat8.xyz);
					    u_xlat6.x = log2(abs(u_xlat6.x));
					    u_xlat6.x = u_xlat6.x * _FresnelStr;
					    u_xlat6.x = exp2(u_xlat6.x);
					    u_xlat6.x = u_xlat6.x + u_xlat6.x;
					    vs_TEXCOORD4 = min(u_xlat6.x, 1.0);
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat5 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat5;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlat10.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati3].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati3].xy + u_xlat10.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendAdd" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					float u_xlat14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat14 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat2.xyz = vec3(u_xlat14) * u_xlat2.xyz;
					    u_xlat14 = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat3.xyz = vec3(u_xlat14) * in_NORMAL0.xyz;
					    u_xlat2.x = dot(u_xlat3.xyz, u_xlat2.xyz);
					    u_xlat2.x = log2(abs(u_xlat2.x));
					    u_xlat2.x = u_xlat2.x * _FresnelStr;
					    u_xlat2.x = exp2(u_xlat2.x);
					    u_xlat2.x = u_xlat2.x + u_xlat2.x;
					    vs_TEXCOORD4 = min(u_xlat2.x, 1.0);
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat4 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_3_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati1;
					vec4 u_xlat2;
					int u_xlati3;
					float u_xlat4;
					float u_xlat5;
					vec3 u_xlat6;
					vec3 u_xlat8;
					vec2 u_xlat10;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    u_xlat6.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat6.x = inversesqrt(u_xlat6.x);
					    u_xlat6.xyz = u_xlat6.xxx * in_NORMAL0.xyz;
					    u_xlati3 = unity_StereoEyeIndex;
					    u_xlat8.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].yyy;
					    u_xlat8.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].xxx + u_xlat8.xyz;
					    u_xlat8.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].zzz + u_xlat8.xyz;
					    u_xlat8.xyz = u_xlat8.xyz + unity_WorldToObject[3].xyz;
					    u_xlat8.xyz = u_xlat8.xyz + (-in_POSITION0.xyz);
					    u_xlat4 = dot(u_xlat8.xyz, u_xlat8.xyz);
					    u_xlat4 = inversesqrt(u_xlat4);
					    u_xlat8.xyz = u_xlat8.xyz * vec3(u_xlat4);
					    u_xlat6.x = dot(u_xlat6.xyz, u_xlat8.xyz);
					    u_xlat6.x = log2(abs(u_xlat6.x));
					    u_xlat6.x = u_xlat6.x * _FresnelStr;
					    u_xlat6.x = exp2(u_xlat6.x);
					    u_xlat6.x = u_xlat6.x + u_xlat6.x;
					    vs_TEXCOORD4 = min(u_xlat6.x, 1.0);
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat5 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat5;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlat10.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati3].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati3].xy + u_xlat10.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendAdd" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					float u_xlat14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat14 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat2.xyz = vec3(u_xlat14) * u_xlat2.xyz;
					    u_xlat14 = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat3.xyz = vec3(u_xlat14) * in_NORMAL0.xyz;
					    u_xlat2.x = dot(u_xlat3.xyz, u_xlat2.xyz);
					    u_xlat2.x = log2(abs(u_xlat2.x));
					    u_xlat2.x = u_xlat2.x * _FresnelStr;
					    u_xlat2.x = exp2(u_xlat2.x);
					    u_xlat2.x = u_xlat2.x + u_xlat2.x;
					    vs_TEXCOORD4 = min(u_xlat2.x, 1.0);
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat4 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_3_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati1;
					vec4 u_xlat2;
					int u_xlati3;
					float u_xlat4;
					float u_xlat5;
					vec3 u_xlat6;
					vec3 u_xlat8;
					vec2 u_xlat10;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    u_xlat6.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat6.x = inversesqrt(u_xlat6.x);
					    u_xlat6.xyz = u_xlat6.xxx * in_NORMAL0.xyz;
					    u_xlati3 = unity_StereoEyeIndex;
					    u_xlat8.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].yyy;
					    u_xlat8.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].xxx + u_xlat8.xyz;
					    u_xlat8.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].zzz + u_xlat8.xyz;
					    u_xlat8.xyz = u_xlat8.xyz + unity_WorldToObject[3].xyz;
					    u_xlat8.xyz = u_xlat8.xyz + (-in_POSITION0.xyz);
					    u_xlat4 = dot(u_xlat8.xyz, u_xlat8.xyz);
					    u_xlat4 = inversesqrt(u_xlat4);
					    u_xlat8.xyz = u_xlat8.xyz * vec3(u_xlat4);
					    u_xlat6.x = dot(u_xlat6.xyz, u_xlat8.xyz);
					    u_xlat6.x = log2(abs(u_xlat6.x));
					    u_xlat6.x = u_xlat6.x * _FresnelStr;
					    u_xlat6.x = exp2(u_xlat6.x);
					    u_xlat6.x = u_xlat6.x + u_xlat6.x;
					    vs_TEXCOORD4 = min(u_xlat6.x, 1.0);
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat5 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat5;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlat10.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati3].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati3].xy + u_xlat10.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendAdd" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					float u_xlat14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat14 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat2.xyz = vec3(u_xlat14) * u_xlat2.xyz;
					    u_xlat14 = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat3.xyz = vec3(u_xlat14) * in_NORMAL0.xyz;
					    u_xlat2.x = dot(u_xlat3.xyz, u_xlat2.xyz);
					    u_xlat2.x = log2(abs(u_xlat2.x));
					    u_xlat2.x = u_xlat2.x * _FresnelStr;
					    u_xlat2.x = exp2(u_xlat2.x);
					    u_xlat2.x = u_xlat2.x + u_xlat2.x;
					    vs_TEXCOORD4 = min(u_xlat2.x, 1.0);
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat4 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_3_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati1;
					vec4 u_xlat2;
					int u_xlati3;
					float u_xlat4;
					float u_xlat5;
					vec3 u_xlat6;
					vec3 u_xlat8;
					vec2 u_xlat10;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    u_xlat6.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat6.x = inversesqrt(u_xlat6.x);
					    u_xlat6.xyz = u_xlat6.xxx * in_NORMAL0.xyz;
					    u_xlati3 = unity_StereoEyeIndex;
					    u_xlat8.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].yyy;
					    u_xlat8.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].xxx + u_xlat8.xyz;
					    u_xlat8.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].zzz + u_xlat8.xyz;
					    u_xlat8.xyz = u_xlat8.xyz + unity_WorldToObject[3].xyz;
					    u_xlat8.xyz = u_xlat8.xyz + (-in_POSITION0.xyz);
					    u_xlat4 = dot(u_xlat8.xyz, u_xlat8.xyz);
					    u_xlat4 = inversesqrt(u_xlat4);
					    u_xlat8.xyz = u_xlat8.xyz * vec3(u_xlat4);
					    u_xlat6.x = dot(u_xlat6.xyz, u_xlat8.xyz);
					    u_xlat6.x = log2(abs(u_xlat6.x));
					    u_xlat6.x = u_xlat6.x * _FresnelStr;
					    u_xlat6.x = exp2(u_xlat6.x);
					    u_xlat6.x = u_xlat6.x + u_xlat6.x;
					    vs_TEXCOORD4 = min(u_xlat6.x, 1.0);
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat5 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat5;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlat10.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati3].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati3].xy + u_xlat10.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendAdd" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					float u_xlat9;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat9 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat9 = inversesqrt(u_xlat9);
					    u_xlat2.xyz = vec3(u_xlat9) * u_xlat2.xyz;
					    u_xlat9 = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat9 = inversesqrt(u_xlat9);
					    u_xlat3.xyz = vec3(u_xlat9) * in_NORMAL0.xyz;
					    u_xlat9 = dot(u_xlat3.xyz, u_xlat2.xyz);
					    u_xlat9 = log2(abs(u_xlat9));
					    u_xlat9 = u_xlat9 * _FresnelStr;
					    u_xlat9 = exp2(u_xlat9);
					    u_xlat9 = u_xlat9 + u_xlat9;
					    vs_TEXCOORD4 = min(u_xlat9, 1.0);
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat4 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_3_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					vec3 u_xlat5;
					vec2 u_xlat8;
					int u_xlati10;
					float u_xlat15;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    u_xlat5.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat5.x = inversesqrt(u_xlat5.x);
					    u_xlat5.xyz = u_xlat5.xxx * in_NORMAL0.xyz;
					    u_xlati10 = unity_StereoEyeIndex;
					    u_xlat3.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati10].yyy;
					    u_xlat3.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati10].xxx + u_xlat3.xyz;
					    u_xlat3.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati10].zzz + u_xlat3.xyz;
					    u_xlat3.xyz = u_xlat3.xyz + unity_WorldToObject[3].xyz;
					    u_xlat3.xyz = u_xlat3.xyz + (-in_POSITION0.xyz);
					    u_xlat15 = dot(u_xlat3.xyz, u_xlat3.xyz);
					    u_xlat15 = inversesqrt(u_xlat15);
					    u_xlat3.xyz = vec3(u_xlat15) * u_xlat3.xyz;
					    u_xlat5.x = dot(u_xlat5.xyz, u_xlat3.xyz);
					    u_xlat5.x = log2(abs(u_xlat5.x));
					    u_xlat5.x = u_xlat5.x * _FresnelStr;
					    u_xlat5.x = exp2(u_xlat5.x);
					    u_xlat5.x = u_xlat5.x + u_xlat5.x;
					    vs_TEXCOORD4 = min(u_xlat5.x, 1.0);
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat4 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlat8.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati10].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati10].xy + u_xlat8.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendAdd" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					float u_xlat9;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat9 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat9 = inversesqrt(u_xlat9);
					    u_xlat2.xyz = vec3(u_xlat9) * u_xlat2.xyz;
					    u_xlat9 = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat9 = inversesqrt(u_xlat9);
					    u_xlat3.xyz = vec3(u_xlat9) * in_NORMAL0.xyz;
					    u_xlat9 = dot(u_xlat3.xyz, u_xlat2.xyz);
					    u_xlat9 = log2(abs(u_xlat9));
					    u_xlat9 = u_xlat9 * _FresnelStr;
					    u_xlat9 = exp2(u_xlat9);
					    u_xlat9 = u_xlat9 + u_xlat9;
					    vs_TEXCOORD4 = min(u_xlat9, 1.0);
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat4 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_3_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					vec3 u_xlat5;
					vec2 u_xlat8;
					int u_xlati10;
					float u_xlat15;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    u_xlat5.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat5.x = inversesqrt(u_xlat5.x);
					    u_xlat5.xyz = u_xlat5.xxx * in_NORMAL0.xyz;
					    u_xlati10 = unity_StereoEyeIndex;
					    u_xlat3.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati10].yyy;
					    u_xlat3.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati10].xxx + u_xlat3.xyz;
					    u_xlat3.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati10].zzz + u_xlat3.xyz;
					    u_xlat3.xyz = u_xlat3.xyz + unity_WorldToObject[3].xyz;
					    u_xlat3.xyz = u_xlat3.xyz + (-in_POSITION0.xyz);
					    u_xlat15 = dot(u_xlat3.xyz, u_xlat3.xyz);
					    u_xlat15 = inversesqrt(u_xlat15);
					    u_xlat3.xyz = vec3(u_xlat15) * u_xlat3.xyz;
					    u_xlat5.x = dot(u_xlat5.xyz, u_xlat3.xyz);
					    u_xlat5.x = log2(abs(u_xlat5.x));
					    u_xlat5.x = u_xlat5.x * _FresnelStr;
					    u_xlat5.x = exp2(u_xlat5.x);
					    u_xlat5.x = u_xlat5.x + u_xlat5.x;
					    vs_TEXCOORD4 = min(u_xlat5.x, 1.0);
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat4 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlat8.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati10].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati10].xy + u_xlat8.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendAdd" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					float u_xlat14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat14 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat2.xyz = vec3(u_xlat14) * u_xlat2.xyz;
					    u_xlat14 = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat3.xyz = vec3(u_xlat14) * in_NORMAL0.xyz;
					    u_xlat2.x = dot(u_xlat3.xyz, u_xlat2.xyz);
					    u_xlat2.x = log2(abs(u_xlat2.x));
					    u_xlat2.x = u_xlat2.x * _FresnelStr;
					    u_xlat2.x = exp2(u_xlat2.x);
					    u_xlat2.x = u_xlat2.x + u_xlat2.x;
					    vs_TEXCOORD4 = min(u_xlat2.x, 1.0);
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat4 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_3_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati1;
					vec4 u_xlat2;
					int u_xlati3;
					float u_xlat4;
					float u_xlat5;
					vec3 u_xlat6;
					vec3 u_xlat8;
					vec2 u_xlat10;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    u_xlat6.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat6.x = inversesqrt(u_xlat6.x);
					    u_xlat6.xyz = u_xlat6.xxx * in_NORMAL0.xyz;
					    u_xlati3 = unity_StereoEyeIndex;
					    u_xlat8.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].yyy;
					    u_xlat8.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].xxx + u_xlat8.xyz;
					    u_xlat8.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].zzz + u_xlat8.xyz;
					    u_xlat8.xyz = u_xlat8.xyz + unity_WorldToObject[3].xyz;
					    u_xlat8.xyz = u_xlat8.xyz + (-in_POSITION0.xyz);
					    u_xlat4 = dot(u_xlat8.xyz, u_xlat8.xyz);
					    u_xlat4 = inversesqrt(u_xlat4);
					    u_xlat8.xyz = u_xlat8.xyz * vec3(u_xlat4);
					    u_xlat6.x = dot(u_xlat6.xyz, u_xlat8.xyz);
					    u_xlat6.x = log2(abs(u_xlat6.x));
					    u_xlat6.x = u_xlat6.x * _FresnelStr;
					    u_xlat6.x = exp2(u_xlat6.x);
					    u_xlat6.x = u_xlat6.x + u_xlat6.x;
					    vs_TEXCOORD4 = min(u_xlat6.x, 1.0);
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat5 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat5;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlat10.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati3].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati3].xy + u_xlat10.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendAdd" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					float u_xlat14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat14 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat2.xyz = vec3(u_xlat14) * u_xlat2.xyz;
					    u_xlat14 = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat3.xyz = vec3(u_xlat14) * in_NORMAL0.xyz;
					    u_xlat2.x = dot(u_xlat3.xyz, u_xlat2.xyz);
					    u_xlat2.x = log2(abs(u_xlat2.x));
					    u_xlat2.x = u_xlat2.x * _FresnelStr;
					    u_xlat2.x = exp2(u_xlat2.x);
					    u_xlat2.x = u_xlat2.x + u_xlat2.x;
					    vs_TEXCOORD4 = min(u_xlat2.x, 1.0);
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat4 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_3_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati1;
					vec4 u_xlat2;
					int u_xlati3;
					float u_xlat4;
					float u_xlat5;
					vec3 u_xlat6;
					vec3 u_xlat8;
					vec2 u_xlat10;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    u_xlat6.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat6.x = inversesqrt(u_xlat6.x);
					    u_xlat6.xyz = u_xlat6.xxx * in_NORMAL0.xyz;
					    u_xlati3 = unity_StereoEyeIndex;
					    u_xlat8.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].yyy;
					    u_xlat8.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].xxx + u_xlat8.xyz;
					    u_xlat8.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].zzz + u_xlat8.xyz;
					    u_xlat8.xyz = u_xlat8.xyz + unity_WorldToObject[3].xyz;
					    u_xlat8.xyz = u_xlat8.xyz + (-in_POSITION0.xyz);
					    u_xlat4 = dot(u_xlat8.xyz, u_xlat8.xyz);
					    u_xlat4 = inversesqrt(u_xlat4);
					    u_xlat8.xyz = u_xlat8.xyz * vec3(u_xlat4);
					    u_xlat6.x = dot(u_xlat6.xyz, u_xlat8.xyz);
					    u_xlat6.x = log2(abs(u_xlat6.x));
					    u_xlat6.x = u_xlat6.x * _FresnelStr;
					    u_xlat6.x = exp2(u_xlat6.x);
					    u_xlat6.x = u_xlat6.x + u_xlat6.x;
					    vs_TEXCOORD4 = min(u_xlat6.x, 1.0);
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat5 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat5;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlat10.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati3].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati3].xy + u_xlat10.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendAdd" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					float u_xlat14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat14 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat2.xyz = vec3(u_xlat14) * u_xlat2.xyz;
					    u_xlat14 = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat3.xyz = vec3(u_xlat14) * in_NORMAL0.xyz;
					    u_xlat2.x = dot(u_xlat3.xyz, u_xlat2.xyz);
					    u_xlat2.x = log2(abs(u_xlat2.x));
					    u_xlat2.x = u_xlat2.x * _FresnelStr;
					    u_xlat2.x = exp2(u_xlat2.x);
					    u_xlat2.x = u_xlat2.x + u_xlat2.x;
					    vs_TEXCOORD4 = min(u_xlat2.x, 1.0);
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat4 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_3_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati1;
					vec4 u_xlat2;
					int u_xlati3;
					float u_xlat4;
					float u_xlat5;
					vec3 u_xlat6;
					vec3 u_xlat8;
					vec2 u_xlat10;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    u_xlat6.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat6.x = inversesqrt(u_xlat6.x);
					    u_xlat6.xyz = u_xlat6.xxx * in_NORMAL0.xyz;
					    u_xlati3 = unity_StereoEyeIndex;
					    u_xlat8.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].yyy;
					    u_xlat8.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].xxx + u_xlat8.xyz;
					    u_xlat8.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].zzz + u_xlat8.xyz;
					    u_xlat8.xyz = u_xlat8.xyz + unity_WorldToObject[3].xyz;
					    u_xlat8.xyz = u_xlat8.xyz + (-in_POSITION0.xyz);
					    u_xlat4 = dot(u_xlat8.xyz, u_xlat8.xyz);
					    u_xlat4 = inversesqrt(u_xlat4);
					    u_xlat8.xyz = u_xlat8.xyz * vec3(u_xlat4);
					    u_xlat6.x = dot(u_xlat6.xyz, u_xlat8.xyz);
					    u_xlat6.x = log2(abs(u_xlat6.x));
					    u_xlat6.x = u_xlat6.x * _FresnelStr;
					    u_xlat6.x = exp2(u_xlat6.x);
					    u_xlat6.x = u_xlat6.x + u_xlat6.x;
					    vs_TEXCOORD4 = min(u_xlat6.x, 1.0);
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat5 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat5;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlat10.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati3].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati3].xy + u_xlat10.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendAdd" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					float u_xlat14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat14 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat2.xyz = vec3(u_xlat14) * u_xlat2.xyz;
					    u_xlat14 = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat3.xyz = vec3(u_xlat14) * in_NORMAL0.xyz;
					    u_xlat2.x = dot(u_xlat3.xyz, u_xlat2.xyz);
					    u_xlat2.x = log2(abs(u_xlat2.x));
					    u_xlat2.x = u_xlat2.x * _FresnelStr;
					    u_xlat2.x = exp2(u_xlat2.x);
					    u_xlat2.x = u_xlat2.x + u_xlat2.x;
					    vs_TEXCOORD4 = min(u_xlat2.x, 1.0);
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat4 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_3_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati1;
					vec4 u_xlat2;
					int u_xlati3;
					float u_xlat4;
					float u_xlat5;
					vec3 u_xlat6;
					vec3 u_xlat8;
					vec2 u_xlat10;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    u_xlat6.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat6.x = inversesqrt(u_xlat6.x);
					    u_xlat6.xyz = u_xlat6.xxx * in_NORMAL0.xyz;
					    u_xlati3 = unity_StereoEyeIndex;
					    u_xlat8.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].yyy;
					    u_xlat8.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].xxx + u_xlat8.xyz;
					    u_xlat8.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].zzz + u_xlat8.xyz;
					    u_xlat8.xyz = u_xlat8.xyz + unity_WorldToObject[3].xyz;
					    u_xlat8.xyz = u_xlat8.xyz + (-in_POSITION0.xyz);
					    u_xlat4 = dot(u_xlat8.xyz, u_xlat8.xyz);
					    u_xlat4 = inversesqrt(u_xlat4);
					    u_xlat8.xyz = u_xlat8.xyz * vec3(u_xlat4);
					    u_xlat6.x = dot(u_xlat6.xyz, u_xlat8.xyz);
					    u_xlat6.x = log2(abs(u_xlat6.x));
					    u_xlat6.x = u_xlat6.x * _FresnelStr;
					    u_xlat6.x = exp2(u_xlat6.x);
					    u_xlat6.x = u_xlat6.x + u_xlat6.x;
					    vs_TEXCOORD4 = min(u_xlat6.x, 1.0);
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat5 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat5;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlat10.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati3].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati3].xy + u_xlat10.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendAdd" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					float u_xlat14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat14 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat2.xyz = vec3(u_xlat14) * u_xlat2.xyz;
					    u_xlat14 = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat3.xyz = vec3(u_xlat14) * in_NORMAL0.xyz;
					    u_xlat2.x = dot(u_xlat3.xyz, u_xlat2.xyz);
					    u_xlat2.x = log2(abs(u_xlat2.x));
					    u_xlat2.x = u_xlat2.x * _FresnelStr;
					    u_xlat2.x = exp2(u_xlat2.x);
					    u_xlat2.x = u_xlat2.x + u_xlat2.x;
					    vs_TEXCOORD4 = min(u_xlat2.x, 1.0);
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat4 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_3_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati1;
					vec4 u_xlat2;
					int u_xlati3;
					float u_xlat4;
					float u_xlat5;
					vec3 u_xlat6;
					vec3 u_xlat8;
					vec2 u_xlat10;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    u_xlat6.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat6.x = inversesqrt(u_xlat6.x);
					    u_xlat6.xyz = u_xlat6.xxx * in_NORMAL0.xyz;
					    u_xlati3 = unity_StereoEyeIndex;
					    u_xlat8.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].yyy;
					    u_xlat8.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].xxx + u_xlat8.xyz;
					    u_xlat8.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].zzz + u_xlat8.xyz;
					    u_xlat8.xyz = u_xlat8.xyz + unity_WorldToObject[3].xyz;
					    u_xlat8.xyz = u_xlat8.xyz + (-in_POSITION0.xyz);
					    u_xlat4 = dot(u_xlat8.xyz, u_xlat8.xyz);
					    u_xlat4 = inversesqrt(u_xlat4);
					    u_xlat8.xyz = u_xlat8.xyz * vec3(u_xlat4);
					    u_xlat6.x = dot(u_xlat6.xyz, u_xlat8.xyz);
					    u_xlat6.x = log2(abs(u_xlat6.x));
					    u_xlat6.x = u_xlat6.x * _FresnelStr;
					    u_xlat6.x = exp2(u_xlat6.x);
					    u_xlat6.x = u_xlat6.x + u_xlat6.x;
					    vs_TEXCOORD4 = min(u_xlat6.x, 1.0);
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat5 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat5;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlat10.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati3].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati3].xy + u_xlat10.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendAdd" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					float u_xlat14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat14 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat2.xyz = vec3(u_xlat14) * u_xlat2.xyz;
					    u_xlat14 = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat3.xyz = vec3(u_xlat14) * in_NORMAL0.xyz;
					    u_xlat2.x = dot(u_xlat3.xyz, u_xlat2.xyz);
					    u_xlat2.x = log2(abs(u_xlat2.x));
					    u_xlat2.x = u_xlat2.x * _FresnelStr;
					    u_xlat2.x = exp2(u_xlat2.x);
					    u_xlat2.x = u_xlat2.x + u_xlat2.x;
					    vs_TEXCOORD4 = min(u_xlat2.x, 1.0);
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat4 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_3_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati1;
					vec4 u_xlat2;
					int u_xlati3;
					float u_xlat4;
					float u_xlat5;
					vec3 u_xlat6;
					vec3 u_xlat8;
					vec2 u_xlat10;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    u_xlat6.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat6.x = inversesqrt(u_xlat6.x);
					    u_xlat6.xyz = u_xlat6.xxx * in_NORMAL0.xyz;
					    u_xlati3 = unity_StereoEyeIndex;
					    u_xlat8.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].yyy;
					    u_xlat8.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].xxx + u_xlat8.xyz;
					    u_xlat8.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].zzz + u_xlat8.xyz;
					    u_xlat8.xyz = u_xlat8.xyz + unity_WorldToObject[3].xyz;
					    u_xlat8.xyz = u_xlat8.xyz + (-in_POSITION0.xyz);
					    u_xlat4 = dot(u_xlat8.xyz, u_xlat8.xyz);
					    u_xlat4 = inversesqrt(u_xlat4);
					    u_xlat8.xyz = u_xlat8.xyz * vec3(u_xlat4);
					    u_xlat6.x = dot(u_xlat6.xyz, u_xlat8.xyz);
					    u_xlat6.x = log2(abs(u_xlat6.x));
					    u_xlat6.x = u_xlat6.x * _FresnelStr;
					    u_xlat6.x = exp2(u_xlat6.x);
					    u_xlat6.x = u_xlat6.x + u_xlat6.x;
					    vs_TEXCOORD4 = min(u_xlat6.x, 1.0);
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat5 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat5;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlat10.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati3].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati3].xy + u_xlat10.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendAdd" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat2 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat2;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec2 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					float u_xlat3;
					int u_xlati6;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat3 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat3;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlati6 = unity_StereoEyeIndex;
					    u_xlat1.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati6].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati6].xy + u_xlat1.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendAdd" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat2 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat2;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec2 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					float u_xlat3;
					int u_xlati6;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat3 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat3;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlati6 = unity_StereoEyeIndex;
					    u_xlat1.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati6].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati6].xy + u_xlat1.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendAdd" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat2 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat2;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec2 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					float u_xlat3;
					int u_xlati6;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat3 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat3;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlati6 = unity_StereoEyeIndex;
					    u_xlat1.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati6].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati6].xy + u_xlat1.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendAdd" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat2 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat2;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec2 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					float u_xlat3;
					int u_xlati6;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat3 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat3;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlati6 = unity_StereoEyeIndex;
					    u_xlat1.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati6].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati6].xy + u_xlat1.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendAdd" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat2 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat2;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec2 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					float u_xlat3;
					int u_xlati6;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat3 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat3;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlati6 = unity_StereoEyeIndex;
					    u_xlat1.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati6].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati6].xy + u_xlat1.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendAdd" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat2 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat2;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec2 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					float u_xlat3;
					int u_xlati6;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat3 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat3;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlati6 = unity_StereoEyeIndex;
					    u_xlat1.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati6].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati6].xy + u_xlat1.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendAdd" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat2 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat2;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec2 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					float u_xlat3;
					int u_xlati6;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat3 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat3;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlati6 = unity_StereoEyeIndex;
					    u_xlat1.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati6].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati6].xy + u_xlat1.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendAdd" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat2 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat2;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec2 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					float u_xlat3;
					int u_xlati6;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat3 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat3;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlati6 = unity_StereoEyeIndex;
					    u_xlat1.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati6].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati6].xy + u_xlat1.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendAdd" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat2 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat2;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec2 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					float u_xlat3;
					int u_xlati6;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat3 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat3;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlati6 = unity_StereoEyeIndex;
					    u_xlat1.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati6].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati6].xy + u_xlat1.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendAdd" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat2 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat2;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec2 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					float u_xlat3;
					int u_xlati6;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat3 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat3;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlati6 = unity_StereoEyeIndex;
					    u_xlat1.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati6].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati6].xy + u_xlat1.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendAdd" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat2 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat2;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec2 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					float u_xlat3;
					int u_xlati6;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat3 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat3;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlati6 = unity_StereoEyeIndex;
					    u_xlat1.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati6].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati6].xy + u_xlat1.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendAdd" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat2 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat2;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec2 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					float u_xlat3;
					int u_xlati6;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat3 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat3;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlati6 = unity_StereoEyeIndex;
					    u_xlat1.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati6].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati6].xy + u_xlat1.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendAdd" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat2 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat2;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec2 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					float u_xlat3;
					int u_xlati6;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat3 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat3;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlati6 = unity_StereoEyeIndex;
					    u_xlat1.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati6].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati6].xy + u_xlat1.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendAdd" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat2 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat2;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec2 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					float u_xlat3;
					int u_xlati6;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat3 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat3;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlati6 = unity_StereoEyeIndex;
					    u_xlat1.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati6].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati6].xy + u_xlat1.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendAdd" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat2 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat2;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec2 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					float u_xlat3;
					int u_xlati6;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat3 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat3;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlati6 = unity_StereoEyeIndex;
					    u_xlat1.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati6].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati6].xy + u_xlat1.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendAdd" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat2 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat2;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec2 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					float u_xlat3;
					int u_xlati6;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat3 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat3;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlati6 = unity_StereoEyeIndex;
					    u_xlat1.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati6].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati6].xy + u_xlat1.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendAdd" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					float u_xlat9;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat9 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat9 = inversesqrt(u_xlat9);
					    u_xlat2.xyz = vec3(u_xlat9) * u_xlat2.xyz;
					    u_xlat9 = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat9 = inversesqrt(u_xlat9);
					    u_xlat3.xyz = vec3(u_xlat9) * in_NORMAL0.xyz;
					    u_xlat9 = dot(u_xlat3.xyz, u_xlat2.xyz);
					    u_xlat9 = log2(abs(u_xlat9));
					    u_xlat9 = u_xlat9 * _FresnelStr;
					    u_xlat9 = exp2(u_xlat9);
					    u_xlat9 = u_xlat9 + u_xlat9;
					    vs_TEXCOORD4 = min(u_xlat9, 1.0);
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat4 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_3_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					vec3 u_xlat5;
					vec2 u_xlat8;
					int u_xlati10;
					float u_xlat15;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    u_xlat5.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat5.x = inversesqrt(u_xlat5.x);
					    u_xlat5.xyz = u_xlat5.xxx * in_NORMAL0.xyz;
					    u_xlati10 = unity_StereoEyeIndex;
					    u_xlat3.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati10].yyy;
					    u_xlat3.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati10].xxx + u_xlat3.xyz;
					    u_xlat3.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati10].zzz + u_xlat3.xyz;
					    u_xlat3.xyz = u_xlat3.xyz + unity_WorldToObject[3].xyz;
					    u_xlat3.xyz = u_xlat3.xyz + (-in_POSITION0.xyz);
					    u_xlat15 = dot(u_xlat3.xyz, u_xlat3.xyz);
					    u_xlat15 = inversesqrt(u_xlat15);
					    u_xlat3.xyz = vec3(u_xlat15) * u_xlat3.xyz;
					    u_xlat5.x = dot(u_xlat5.xyz, u_xlat3.xyz);
					    u_xlat5.x = log2(abs(u_xlat5.x));
					    u_xlat5.x = u_xlat5.x * _FresnelStr;
					    u_xlat5.x = exp2(u_xlat5.x);
					    u_xlat5.x = u_xlat5.x + u_xlat5.x;
					    vs_TEXCOORD4 = min(u_xlat5.x, 1.0);
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat4 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlat8.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati10].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati10].xy + u_xlat8.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendAdd" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					float u_xlat9;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat9 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat9 = inversesqrt(u_xlat9);
					    u_xlat2.xyz = vec3(u_xlat9) * u_xlat2.xyz;
					    u_xlat9 = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat9 = inversesqrt(u_xlat9);
					    u_xlat3.xyz = vec3(u_xlat9) * in_NORMAL0.xyz;
					    u_xlat9 = dot(u_xlat3.xyz, u_xlat2.xyz);
					    u_xlat9 = log2(abs(u_xlat9));
					    u_xlat9 = u_xlat9 * _FresnelStr;
					    u_xlat9 = exp2(u_xlat9);
					    u_xlat9 = u_xlat9 + u_xlat9;
					    vs_TEXCOORD4 = min(u_xlat9, 1.0);
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat4 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_3_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					vec3 u_xlat5;
					vec2 u_xlat8;
					int u_xlati10;
					float u_xlat15;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    u_xlat5.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat5.x = inversesqrt(u_xlat5.x);
					    u_xlat5.xyz = u_xlat5.xxx * in_NORMAL0.xyz;
					    u_xlati10 = unity_StereoEyeIndex;
					    u_xlat3.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati10].yyy;
					    u_xlat3.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati10].xxx + u_xlat3.xyz;
					    u_xlat3.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati10].zzz + u_xlat3.xyz;
					    u_xlat3.xyz = u_xlat3.xyz + unity_WorldToObject[3].xyz;
					    u_xlat3.xyz = u_xlat3.xyz + (-in_POSITION0.xyz);
					    u_xlat15 = dot(u_xlat3.xyz, u_xlat3.xyz);
					    u_xlat15 = inversesqrt(u_xlat15);
					    u_xlat3.xyz = vec3(u_xlat15) * u_xlat3.xyz;
					    u_xlat5.x = dot(u_xlat5.xyz, u_xlat3.xyz);
					    u_xlat5.x = log2(abs(u_xlat5.x));
					    u_xlat5.x = u_xlat5.x * _FresnelStr;
					    u_xlat5.x = exp2(u_xlat5.x);
					    u_xlat5.x = u_xlat5.x + u_xlat5.x;
					    vs_TEXCOORD4 = min(u_xlat5.x, 1.0);
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat4 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlat8.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati10].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati10].xy + u_xlat8.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendAdd" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					float u_xlat14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat14 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat2.xyz = vec3(u_xlat14) * u_xlat2.xyz;
					    u_xlat14 = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat3.xyz = vec3(u_xlat14) * in_NORMAL0.xyz;
					    u_xlat2.x = dot(u_xlat3.xyz, u_xlat2.xyz);
					    u_xlat2.x = log2(abs(u_xlat2.x));
					    u_xlat2.x = u_xlat2.x * _FresnelStr;
					    u_xlat2.x = exp2(u_xlat2.x);
					    u_xlat2.x = u_xlat2.x + u_xlat2.x;
					    vs_TEXCOORD4 = min(u_xlat2.x, 1.0);
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat4 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_3_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati1;
					vec4 u_xlat2;
					int u_xlati3;
					float u_xlat4;
					float u_xlat5;
					vec3 u_xlat6;
					vec3 u_xlat8;
					vec2 u_xlat10;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    u_xlat6.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat6.x = inversesqrt(u_xlat6.x);
					    u_xlat6.xyz = u_xlat6.xxx * in_NORMAL0.xyz;
					    u_xlati3 = unity_StereoEyeIndex;
					    u_xlat8.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].yyy;
					    u_xlat8.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].xxx + u_xlat8.xyz;
					    u_xlat8.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].zzz + u_xlat8.xyz;
					    u_xlat8.xyz = u_xlat8.xyz + unity_WorldToObject[3].xyz;
					    u_xlat8.xyz = u_xlat8.xyz + (-in_POSITION0.xyz);
					    u_xlat4 = dot(u_xlat8.xyz, u_xlat8.xyz);
					    u_xlat4 = inversesqrt(u_xlat4);
					    u_xlat8.xyz = u_xlat8.xyz * vec3(u_xlat4);
					    u_xlat6.x = dot(u_xlat6.xyz, u_xlat8.xyz);
					    u_xlat6.x = log2(abs(u_xlat6.x));
					    u_xlat6.x = u_xlat6.x * _FresnelStr;
					    u_xlat6.x = exp2(u_xlat6.x);
					    u_xlat6.x = u_xlat6.x + u_xlat6.x;
					    vs_TEXCOORD4 = min(u_xlat6.x, 1.0);
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat5 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat5;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlat10.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati3].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati3].xy + u_xlat10.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendAdd" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					float u_xlat14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat14 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat2.xyz = vec3(u_xlat14) * u_xlat2.xyz;
					    u_xlat14 = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat3.xyz = vec3(u_xlat14) * in_NORMAL0.xyz;
					    u_xlat2.x = dot(u_xlat3.xyz, u_xlat2.xyz);
					    u_xlat2.x = log2(abs(u_xlat2.x));
					    u_xlat2.x = u_xlat2.x * _FresnelStr;
					    u_xlat2.x = exp2(u_xlat2.x);
					    u_xlat2.x = u_xlat2.x + u_xlat2.x;
					    vs_TEXCOORD4 = min(u_xlat2.x, 1.0);
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat4 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_3_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati1;
					vec4 u_xlat2;
					int u_xlati3;
					float u_xlat4;
					float u_xlat5;
					vec3 u_xlat6;
					vec3 u_xlat8;
					vec2 u_xlat10;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    u_xlat6.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat6.x = inversesqrt(u_xlat6.x);
					    u_xlat6.xyz = u_xlat6.xxx * in_NORMAL0.xyz;
					    u_xlati3 = unity_StereoEyeIndex;
					    u_xlat8.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].yyy;
					    u_xlat8.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].xxx + u_xlat8.xyz;
					    u_xlat8.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].zzz + u_xlat8.xyz;
					    u_xlat8.xyz = u_xlat8.xyz + unity_WorldToObject[3].xyz;
					    u_xlat8.xyz = u_xlat8.xyz + (-in_POSITION0.xyz);
					    u_xlat4 = dot(u_xlat8.xyz, u_xlat8.xyz);
					    u_xlat4 = inversesqrt(u_xlat4);
					    u_xlat8.xyz = u_xlat8.xyz * vec3(u_xlat4);
					    u_xlat6.x = dot(u_xlat6.xyz, u_xlat8.xyz);
					    u_xlat6.x = log2(abs(u_xlat6.x));
					    u_xlat6.x = u_xlat6.x * _FresnelStr;
					    u_xlat6.x = exp2(u_xlat6.x);
					    u_xlat6.x = u_xlat6.x + u_xlat6.x;
					    vs_TEXCOORD4 = min(u_xlat6.x, 1.0);
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat5 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat5;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlat10.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati3].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati3].xy + u_xlat10.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendAdd" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					float u_xlat14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat14 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat2.xyz = vec3(u_xlat14) * u_xlat2.xyz;
					    u_xlat14 = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat3.xyz = vec3(u_xlat14) * in_NORMAL0.xyz;
					    u_xlat2.x = dot(u_xlat3.xyz, u_xlat2.xyz);
					    u_xlat2.x = log2(abs(u_xlat2.x));
					    u_xlat2.x = u_xlat2.x * _FresnelStr;
					    u_xlat2.x = exp2(u_xlat2.x);
					    u_xlat2.x = u_xlat2.x + u_xlat2.x;
					    vs_TEXCOORD4 = min(u_xlat2.x, 1.0);
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat4 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_3_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati1;
					vec4 u_xlat2;
					int u_xlati3;
					float u_xlat4;
					float u_xlat5;
					vec3 u_xlat6;
					vec3 u_xlat8;
					vec2 u_xlat10;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    u_xlat6.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat6.x = inversesqrt(u_xlat6.x);
					    u_xlat6.xyz = u_xlat6.xxx * in_NORMAL0.xyz;
					    u_xlati3 = unity_StereoEyeIndex;
					    u_xlat8.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].yyy;
					    u_xlat8.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].xxx + u_xlat8.xyz;
					    u_xlat8.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].zzz + u_xlat8.xyz;
					    u_xlat8.xyz = u_xlat8.xyz + unity_WorldToObject[3].xyz;
					    u_xlat8.xyz = u_xlat8.xyz + (-in_POSITION0.xyz);
					    u_xlat4 = dot(u_xlat8.xyz, u_xlat8.xyz);
					    u_xlat4 = inversesqrt(u_xlat4);
					    u_xlat8.xyz = u_xlat8.xyz * vec3(u_xlat4);
					    u_xlat6.x = dot(u_xlat6.xyz, u_xlat8.xyz);
					    u_xlat6.x = log2(abs(u_xlat6.x));
					    u_xlat6.x = u_xlat6.x * _FresnelStr;
					    u_xlat6.x = exp2(u_xlat6.x);
					    u_xlat6.x = u_xlat6.x + u_xlat6.x;
					    vs_TEXCOORD4 = min(u_xlat6.x, 1.0);
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat5 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat5;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlat10.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati3].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati3].xy + u_xlat10.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendAdd" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					float u_xlat14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat14 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat2.xyz = vec3(u_xlat14) * u_xlat2.xyz;
					    u_xlat14 = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat3.xyz = vec3(u_xlat14) * in_NORMAL0.xyz;
					    u_xlat2.x = dot(u_xlat3.xyz, u_xlat2.xyz);
					    u_xlat2.x = log2(abs(u_xlat2.x));
					    u_xlat2.x = u_xlat2.x * _FresnelStr;
					    u_xlat2.x = exp2(u_xlat2.x);
					    u_xlat2.x = u_xlat2.x + u_xlat2.x;
					    vs_TEXCOORD4 = min(u_xlat2.x, 1.0);
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat4 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_3_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati1;
					vec4 u_xlat2;
					int u_xlati3;
					float u_xlat4;
					float u_xlat5;
					vec3 u_xlat6;
					vec3 u_xlat8;
					vec2 u_xlat10;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    u_xlat6.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat6.x = inversesqrt(u_xlat6.x);
					    u_xlat6.xyz = u_xlat6.xxx * in_NORMAL0.xyz;
					    u_xlati3 = unity_StereoEyeIndex;
					    u_xlat8.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].yyy;
					    u_xlat8.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].xxx + u_xlat8.xyz;
					    u_xlat8.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].zzz + u_xlat8.xyz;
					    u_xlat8.xyz = u_xlat8.xyz + unity_WorldToObject[3].xyz;
					    u_xlat8.xyz = u_xlat8.xyz + (-in_POSITION0.xyz);
					    u_xlat4 = dot(u_xlat8.xyz, u_xlat8.xyz);
					    u_xlat4 = inversesqrt(u_xlat4);
					    u_xlat8.xyz = u_xlat8.xyz * vec3(u_xlat4);
					    u_xlat6.x = dot(u_xlat6.xyz, u_xlat8.xyz);
					    u_xlat6.x = log2(abs(u_xlat6.x));
					    u_xlat6.x = u_xlat6.x * _FresnelStr;
					    u_xlat6.x = exp2(u_xlat6.x);
					    u_xlat6.x = u_xlat6.x + u_xlat6.x;
					    vs_TEXCOORD4 = min(u_xlat6.x, 1.0);
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat5 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat5;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlat10.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati3].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati3].xy + u_xlat10.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendAdd" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					float u_xlat14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat14 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat2.xyz = vec3(u_xlat14) * u_xlat2.xyz;
					    u_xlat14 = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat3.xyz = vec3(u_xlat14) * in_NORMAL0.xyz;
					    u_xlat2.x = dot(u_xlat3.xyz, u_xlat2.xyz);
					    u_xlat2.x = log2(abs(u_xlat2.x));
					    u_xlat2.x = u_xlat2.x * _FresnelStr;
					    u_xlat2.x = exp2(u_xlat2.x);
					    u_xlat2.x = u_xlat2.x + u_xlat2.x;
					    vs_TEXCOORD4 = min(u_xlat2.x, 1.0);
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat4 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_3_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati1;
					vec4 u_xlat2;
					int u_xlati3;
					float u_xlat4;
					float u_xlat5;
					vec3 u_xlat6;
					vec3 u_xlat8;
					vec2 u_xlat10;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    u_xlat6.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat6.x = inversesqrt(u_xlat6.x);
					    u_xlat6.xyz = u_xlat6.xxx * in_NORMAL0.xyz;
					    u_xlati3 = unity_StereoEyeIndex;
					    u_xlat8.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].yyy;
					    u_xlat8.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].xxx + u_xlat8.xyz;
					    u_xlat8.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].zzz + u_xlat8.xyz;
					    u_xlat8.xyz = u_xlat8.xyz + unity_WorldToObject[3].xyz;
					    u_xlat8.xyz = u_xlat8.xyz + (-in_POSITION0.xyz);
					    u_xlat4 = dot(u_xlat8.xyz, u_xlat8.xyz);
					    u_xlat4 = inversesqrt(u_xlat4);
					    u_xlat8.xyz = u_xlat8.xyz * vec3(u_xlat4);
					    u_xlat6.x = dot(u_xlat6.xyz, u_xlat8.xyz);
					    u_xlat6.x = log2(abs(u_xlat6.x));
					    u_xlat6.x = u_xlat6.x * _FresnelStr;
					    u_xlat6.x = exp2(u_xlat6.x);
					    u_xlat6.x = u_xlat6.x + u_xlat6.x;
					    vs_TEXCOORD4 = min(u_xlat6.x, 1.0);
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat5 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat5;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlat10.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati3].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati3].xy + u_xlat10.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendAdd" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					float u_xlat14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat14 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat2.xyz = vec3(u_xlat14) * u_xlat2.xyz;
					    u_xlat14 = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat3.xyz = vec3(u_xlat14) * in_NORMAL0.xyz;
					    u_xlat2.x = dot(u_xlat3.xyz, u_xlat2.xyz);
					    u_xlat2.x = log2(abs(u_xlat2.x));
					    u_xlat2.x = u_xlat2.x * _FresnelStr;
					    u_xlat2.x = exp2(u_xlat2.x);
					    u_xlat2.x = u_xlat2.x + u_xlat2.x;
					    vs_TEXCOORD4 = min(u_xlat2.x, 1.0);
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat4 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_3_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati1;
					vec4 u_xlat2;
					int u_xlati3;
					float u_xlat4;
					float u_xlat5;
					vec3 u_xlat6;
					vec3 u_xlat8;
					vec2 u_xlat10;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    u_xlat6.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat6.x = inversesqrt(u_xlat6.x);
					    u_xlat6.xyz = u_xlat6.xxx * in_NORMAL0.xyz;
					    u_xlati3 = unity_StereoEyeIndex;
					    u_xlat8.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].yyy;
					    u_xlat8.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].xxx + u_xlat8.xyz;
					    u_xlat8.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].zzz + u_xlat8.xyz;
					    u_xlat8.xyz = u_xlat8.xyz + unity_WorldToObject[3].xyz;
					    u_xlat8.xyz = u_xlat8.xyz + (-in_POSITION0.xyz);
					    u_xlat4 = dot(u_xlat8.xyz, u_xlat8.xyz);
					    u_xlat4 = inversesqrt(u_xlat4);
					    u_xlat8.xyz = u_xlat8.xyz * vec3(u_xlat4);
					    u_xlat6.x = dot(u_xlat6.xyz, u_xlat8.xyz);
					    u_xlat6.x = log2(abs(u_xlat6.x));
					    u_xlat6.x = u_xlat6.x * _FresnelStr;
					    u_xlat6.x = exp2(u_xlat6.x);
					    u_xlat6.x = u_xlat6.x + u_xlat6.x;
					    vs_TEXCOORD4 = min(u_xlat6.x, 1.0);
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat5 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat5;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlat10.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati3].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati3].xy + u_xlat10.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendAdd" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					float u_xlat9;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat9 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat9 = inversesqrt(u_xlat9);
					    u_xlat2.xyz = vec3(u_xlat9) * u_xlat2.xyz;
					    u_xlat9 = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat9 = inversesqrt(u_xlat9);
					    u_xlat3.xyz = vec3(u_xlat9) * in_NORMAL0.xyz;
					    u_xlat9 = dot(u_xlat3.xyz, u_xlat2.xyz);
					    u_xlat9 = log2(abs(u_xlat9));
					    u_xlat9 = u_xlat9 * _FresnelStr;
					    u_xlat9 = exp2(u_xlat9);
					    u_xlat9 = u_xlat9 + u_xlat9;
					    vs_TEXCOORD4 = min(u_xlat9, 1.0);
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat4 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_3_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					vec3 u_xlat5;
					vec2 u_xlat8;
					int u_xlati10;
					float u_xlat15;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    u_xlat5.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat5.x = inversesqrt(u_xlat5.x);
					    u_xlat5.xyz = u_xlat5.xxx * in_NORMAL0.xyz;
					    u_xlati10 = unity_StereoEyeIndex;
					    u_xlat3.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati10].yyy;
					    u_xlat3.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati10].xxx + u_xlat3.xyz;
					    u_xlat3.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati10].zzz + u_xlat3.xyz;
					    u_xlat3.xyz = u_xlat3.xyz + unity_WorldToObject[3].xyz;
					    u_xlat3.xyz = u_xlat3.xyz + (-in_POSITION0.xyz);
					    u_xlat15 = dot(u_xlat3.xyz, u_xlat3.xyz);
					    u_xlat15 = inversesqrt(u_xlat15);
					    u_xlat3.xyz = vec3(u_xlat15) * u_xlat3.xyz;
					    u_xlat5.x = dot(u_xlat5.xyz, u_xlat3.xyz);
					    u_xlat5.x = log2(abs(u_xlat5.x));
					    u_xlat5.x = u_xlat5.x * _FresnelStr;
					    u_xlat5.x = exp2(u_xlat5.x);
					    u_xlat5.x = u_xlat5.x + u_xlat5.x;
					    vs_TEXCOORD4 = min(u_xlat5.x, 1.0);
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat4 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlat8.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati10].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati10].xy + u_xlat8.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendAdd" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					float u_xlat9;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat9 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat9 = inversesqrt(u_xlat9);
					    u_xlat2.xyz = vec3(u_xlat9) * u_xlat2.xyz;
					    u_xlat9 = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat9 = inversesqrt(u_xlat9);
					    u_xlat3.xyz = vec3(u_xlat9) * in_NORMAL0.xyz;
					    u_xlat9 = dot(u_xlat3.xyz, u_xlat2.xyz);
					    u_xlat9 = log2(abs(u_xlat9));
					    u_xlat9 = u_xlat9 * _FresnelStr;
					    u_xlat9 = exp2(u_xlat9);
					    u_xlat9 = u_xlat9 + u_xlat9;
					    vs_TEXCOORD4 = min(u_xlat9, 1.0);
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat4 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_3_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					vec3 u_xlat5;
					vec2 u_xlat8;
					int u_xlati10;
					float u_xlat15;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    u_xlat5.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat5.x = inversesqrt(u_xlat5.x);
					    u_xlat5.xyz = u_xlat5.xxx * in_NORMAL0.xyz;
					    u_xlati10 = unity_StereoEyeIndex;
					    u_xlat3.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati10].yyy;
					    u_xlat3.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati10].xxx + u_xlat3.xyz;
					    u_xlat3.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati10].zzz + u_xlat3.xyz;
					    u_xlat3.xyz = u_xlat3.xyz + unity_WorldToObject[3].xyz;
					    u_xlat3.xyz = u_xlat3.xyz + (-in_POSITION0.xyz);
					    u_xlat15 = dot(u_xlat3.xyz, u_xlat3.xyz);
					    u_xlat15 = inversesqrt(u_xlat15);
					    u_xlat3.xyz = vec3(u_xlat15) * u_xlat3.xyz;
					    u_xlat5.x = dot(u_xlat5.xyz, u_xlat3.xyz);
					    u_xlat5.x = log2(abs(u_xlat5.x));
					    u_xlat5.x = u_xlat5.x * _FresnelStr;
					    u_xlat5.x = exp2(u_xlat5.x);
					    u_xlat5.x = u_xlat5.x + u_xlat5.x;
					    vs_TEXCOORD4 = min(u_xlat5.x, 1.0);
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat4 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlat8.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati10].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati10].xy + u_xlat8.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendAdd" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					float u_xlat14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat14 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat2.xyz = vec3(u_xlat14) * u_xlat2.xyz;
					    u_xlat14 = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat3.xyz = vec3(u_xlat14) * in_NORMAL0.xyz;
					    u_xlat2.x = dot(u_xlat3.xyz, u_xlat2.xyz);
					    u_xlat2.x = log2(abs(u_xlat2.x));
					    u_xlat2.x = u_xlat2.x * _FresnelStr;
					    u_xlat2.x = exp2(u_xlat2.x);
					    u_xlat2.x = u_xlat2.x + u_xlat2.x;
					    vs_TEXCOORD4 = min(u_xlat2.x, 1.0);
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat4 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_3_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati1;
					vec4 u_xlat2;
					int u_xlati3;
					float u_xlat4;
					float u_xlat5;
					vec3 u_xlat6;
					vec3 u_xlat8;
					vec2 u_xlat10;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    u_xlat6.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat6.x = inversesqrt(u_xlat6.x);
					    u_xlat6.xyz = u_xlat6.xxx * in_NORMAL0.xyz;
					    u_xlati3 = unity_StereoEyeIndex;
					    u_xlat8.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].yyy;
					    u_xlat8.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].xxx + u_xlat8.xyz;
					    u_xlat8.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].zzz + u_xlat8.xyz;
					    u_xlat8.xyz = u_xlat8.xyz + unity_WorldToObject[3].xyz;
					    u_xlat8.xyz = u_xlat8.xyz + (-in_POSITION0.xyz);
					    u_xlat4 = dot(u_xlat8.xyz, u_xlat8.xyz);
					    u_xlat4 = inversesqrt(u_xlat4);
					    u_xlat8.xyz = u_xlat8.xyz * vec3(u_xlat4);
					    u_xlat6.x = dot(u_xlat6.xyz, u_xlat8.xyz);
					    u_xlat6.x = log2(abs(u_xlat6.x));
					    u_xlat6.x = u_xlat6.x * _FresnelStr;
					    u_xlat6.x = exp2(u_xlat6.x);
					    u_xlat6.x = u_xlat6.x + u_xlat6.x;
					    vs_TEXCOORD4 = min(u_xlat6.x, 1.0);
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat5 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat5;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlat10.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati3].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati3].xy + u_xlat10.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendAdd" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					float u_xlat14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat14 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat2.xyz = vec3(u_xlat14) * u_xlat2.xyz;
					    u_xlat14 = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat3.xyz = vec3(u_xlat14) * in_NORMAL0.xyz;
					    u_xlat2.x = dot(u_xlat3.xyz, u_xlat2.xyz);
					    u_xlat2.x = log2(abs(u_xlat2.x));
					    u_xlat2.x = u_xlat2.x * _FresnelStr;
					    u_xlat2.x = exp2(u_xlat2.x);
					    u_xlat2.x = u_xlat2.x + u_xlat2.x;
					    vs_TEXCOORD4 = min(u_xlat2.x, 1.0);
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat4 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_3_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati1;
					vec4 u_xlat2;
					int u_xlati3;
					float u_xlat4;
					float u_xlat5;
					vec3 u_xlat6;
					vec3 u_xlat8;
					vec2 u_xlat10;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    u_xlat6.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat6.x = inversesqrt(u_xlat6.x);
					    u_xlat6.xyz = u_xlat6.xxx * in_NORMAL0.xyz;
					    u_xlati3 = unity_StereoEyeIndex;
					    u_xlat8.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].yyy;
					    u_xlat8.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].xxx + u_xlat8.xyz;
					    u_xlat8.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].zzz + u_xlat8.xyz;
					    u_xlat8.xyz = u_xlat8.xyz + unity_WorldToObject[3].xyz;
					    u_xlat8.xyz = u_xlat8.xyz + (-in_POSITION0.xyz);
					    u_xlat4 = dot(u_xlat8.xyz, u_xlat8.xyz);
					    u_xlat4 = inversesqrt(u_xlat4);
					    u_xlat8.xyz = u_xlat8.xyz * vec3(u_xlat4);
					    u_xlat6.x = dot(u_xlat6.xyz, u_xlat8.xyz);
					    u_xlat6.x = log2(abs(u_xlat6.x));
					    u_xlat6.x = u_xlat6.x * _FresnelStr;
					    u_xlat6.x = exp2(u_xlat6.x);
					    u_xlat6.x = u_xlat6.x + u_xlat6.x;
					    vs_TEXCOORD4 = min(u_xlat6.x, 1.0);
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat5 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat5;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlat10.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati3].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati3].xy + u_xlat10.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendAdd" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					float u_xlat14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat14 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat2.xyz = vec3(u_xlat14) * u_xlat2.xyz;
					    u_xlat14 = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat3.xyz = vec3(u_xlat14) * in_NORMAL0.xyz;
					    u_xlat2.x = dot(u_xlat3.xyz, u_xlat2.xyz);
					    u_xlat2.x = log2(abs(u_xlat2.x));
					    u_xlat2.x = u_xlat2.x * _FresnelStr;
					    u_xlat2.x = exp2(u_xlat2.x);
					    u_xlat2.x = u_xlat2.x + u_xlat2.x;
					    vs_TEXCOORD4 = min(u_xlat2.x, 1.0);
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat4 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_3_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati1;
					vec4 u_xlat2;
					int u_xlati3;
					float u_xlat4;
					float u_xlat5;
					vec3 u_xlat6;
					vec3 u_xlat8;
					vec2 u_xlat10;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    u_xlat6.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat6.x = inversesqrt(u_xlat6.x);
					    u_xlat6.xyz = u_xlat6.xxx * in_NORMAL0.xyz;
					    u_xlati3 = unity_StereoEyeIndex;
					    u_xlat8.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].yyy;
					    u_xlat8.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].xxx + u_xlat8.xyz;
					    u_xlat8.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].zzz + u_xlat8.xyz;
					    u_xlat8.xyz = u_xlat8.xyz + unity_WorldToObject[3].xyz;
					    u_xlat8.xyz = u_xlat8.xyz + (-in_POSITION0.xyz);
					    u_xlat4 = dot(u_xlat8.xyz, u_xlat8.xyz);
					    u_xlat4 = inversesqrt(u_xlat4);
					    u_xlat8.xyz = u_xlat8.xyz * vec3(u_xlat4);
					    u_xlat6.x = dot(u_xlat6.xyz, u_xlat8.xyz);
					    u_xlat6.x = log2(abs(u_xlat6.x));
					    u_xlat6.x = u_xlat6.x * _FresnelStr;
					    u_xlat6.x = exp2(u_xlat6.x);
					    u_xlat6.x = u_xlat6.x + u_xlat6.x;
					    vs_TEXCOORD4 = min(u_xlat6.x, 1.0);
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat5 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat5;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlat10.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati3].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati3].xy + u_xlat10.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendAdd" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					float u_xlat14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat14 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat2.xyz = vec3(u_xlat14) * u_xlat2.xyz;
					    u_xlat14 = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat3.xyz = vec3(u_xlat14) * in_NORMAL0.xyz;
					    u_xlat2.x = dot(u_xlat3.xyz, u_xlat2.xyz);
					    u_xlat2.x = log2(abs(u_xlat2.x));
					    u_xlat2.x = u_xlat2.x * _FresnelStr;
					    u_xlat2.x = exp2(u_xlat2.x);
					    u_xlat2.x = u_xlat2.x + u_xlat2.x;
					    vs_TEXCOORD4 = min(u_xlat2.x, 1.0);
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat4 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_3_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati1;
					vec4 u_xlat2;
					int u_xlati3;
					float u_xlat4;
					float u_xlat5;
					vec3 u_xlat6;
					vec3 u_xlat8;
					vec2 u_xlat10;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    u_xlat6.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat6.x = inversesqrt(u_xlat6.x);
					    u_xlat6.xyz = u_xlat6.xxx * in_NORMAL0.xyz;
					    u_xlati3 = unity_StereoEyeIndex;
					    u_xlat8.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].yyy;
					    u_xlat8.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].xxx + u_xlat8.xyz;
					    u_xlat8.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].zzz + u_xlat8.xyz;
					    u_xlat8.xyz = u_xlat8.xyz + unity_WorldToObject[3].xyz;
					    u_xlat8.xyz = u_xlat8.xyz + (-in_POSITION0.xyz);
					    u_xlat4 = dot(u_xlat8.xyz, u_xlat8.xyz);
					    u_xlat4 = inversesqrt(u_xlat4);
					    u_xlat8.xyz = u_xlat8.xyz * vec3(u_xlat4);
					    u_xlat6.x = dot(u_xlat6.xyz, u_xlat8.xyz);
					    u_xlat6.x = log2(abs(u_xlat6.x));
					    u_xlat6.x = u_xlat6.x * _FresnelStr;
					    u_xlat6.x = exp2(u_xlat6.x);
					    u_xlat6.x = u_xlat6.x + u_xlat6.x;
					    vs_TEXCOORD4 = min(u_xlat6.x, 1.0);
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat5 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat5;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlat10.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati3].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati3].xy + u_xlat10.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendAdd" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					float u_xlat14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat14 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat2.xyz = vec3(u_xlat14) * u_xlat2.xyz;
					    u_xlat14 = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat3.xyz = vec3(u_xlat14) * in_NORMAL0.xyz;
					    u_xlat2.x = dot(u_xlat3.xyz, u_xlat2.xyz);
					    u_xlat2.x = log2(abs(u_xlat2.x));
					    u_xlat2.x = u_xlat2.x * _FresnelStr;
					    u_xlat2.x = exp2(u_xlat2.x);
					    u_xlat2.x = u_xlat2.x + u_xlat2.x;
					    vs_TEXCOORD4 = min(u_xlat2.x, 1.0);
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat4 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_3_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati1;
					vec4 u_xlat2;
					int u_xlati3;
					float u_xlat4;
					float u_xlat5;
					vec3 u_xlat6;
					vec3 u_xlat8;
					vec2 u_xlat10;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    u_xlat6.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat6.x = inversesqrt(u_xlat6.x);
					    u_xlat6.xyz = u_xlat6.xxx * in_NORMAL0.xyz;
					    u_xlati3 = unity_StereoEyeIndex;
					    u_xlat8.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].yyy;
					    u_xlat8.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].xxx + u_xlat8.xyz;
					    u_xlat8.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].zzz + u_xlat8.xyz;
					    u_xlat8.xyz = u_xlat8.xyz + unity_WorldToObject[3].xyz;
					    u_xlat8.xyz = u_xlat8.xyz + (-in_POSITION0.xyz);
					    u_xlat4 = dot(u_xlat8.xyz, u_xlat8.xyz);
					    u_xlat4 = inversesqrt(u_xlat4);
					    u_xlat8.xyz = u_xlat8.xyz * vec3(u_xlat4);
					    u_xlat6.x = dot(u_xlat6.xyz, u_xlat8.xyz);
					    u_xlat6.x = log2(abs(u_xlat6.x));
					    u_xlat6.x = u_xlat6.x * _FresnelStr;
					    u_xlat6.x = exp2(u_xlat6.x);
					    u_xlat6.x = u_xlat6.x + u_xlat6.x;
					    vs_TEXCOORD4 = min(u_xlat6.x, 1.0);
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat5 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat5;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlat10.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati3].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati3].xy + u_xlat10.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendAdd" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					float u_xlat14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat14 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat2.xyz = vec3(u_xlat14) * u_xlat2.xyz;
					    u_xlat14 = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat3.xyz = vec3(u_xlat14) * in_NORMAL0.xyz;
					    u_xlat2.x = dot(u_xlat3.xyz, u_xlat2.xyz);
					    u_xlat2.x = log2(abs(u_xlat2.x));
					    u_xlat2.x = u_xlat2.x * _FresnelStr;
					    u_xlat2.x = exp2(u_xlat2.x);
					    u_xlat2.x = u_xlat2.x + u_xlat2.x;
					    vs_TEXCOORD4 = min(u_xlat2.x, 1.0);
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat4 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_3_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati1;
					vec4 u_xlat2;
					int u_xlati3;
					float u_xlat4;
					float u_xlat5;
					vec3 u_xlat6;
					vec3 u_xlat8;
					vec2 u_xlat10;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    u_xlat6.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat6.x = inversesqrt(u_xlat6.x);
					    u_xlat6.xyz = u_xlat6.xxx * in_NORMAL0.xyz;
					    u_xlati3 = unity_StereoEyeIndex;
					    u_xlat8.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].yyy;
					    u_xlat8.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].xxx + u_xlat8.xyz;
					    u_xlat8.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].zzz + u_xlat8.xyz;
					    u_xlat8.xyz = u_xlat8.xyz + unity_WorldToObject[3].xyz;
					    u_xlat8.xyz = u_xlat8.xyz + (-in_POSITION0.xyz);
					    u_xlat4 = dot(u_xlat8.xyz, u_xlat8.xyz);
					    u_xlat4 = inversesqrt(u_xlat4);
					    u_xlat8.xyz = u_xlat8.xyz * vec3(u_xlat4);
					    u_xlat6.x = dot(u_xlat6.xyz, u_xlat8.xyz);
					    u_xlat6.x = log2(abs(u_xlat6.x));
					    u_xlat6.x = u_xlat6.x * _FresnelStr;
					    u_xlat6.x = exp2(u_xlat6.x);
					    u_xlat6.x = u_xlat6.x + u_xlat6.x;
					    vs_TEXCOORD4 = min(u_xlat6.x, 1.0);
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat5 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat5;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlat10.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati3].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati3].xy + u_xlat10.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendAdd" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat2 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat2;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec2 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					float u_xlat3;
					int u_xlati6;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat3 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat3;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlati6 = unity_StereoEyeIndex;
					    u_xlat1.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati6].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati6].xy + u_xlat1.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendAdd" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat2 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat2;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec2 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					float u_xlat3;
					int u_xlati6;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat3 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat3;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlati6 = unity_StereoEyeIndex;
					    u_xlat1.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati6].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati6].xy + u_xlat1.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendAdd" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat2 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat2;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec2 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					float u_xlat3;
					int u_xlati6;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat3 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat3;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlati6 = unity_StereoEyeIndex;
					    u_xlat1.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati6].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati6].xy + u_xlat1.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendAdd" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat2 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat2;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec2 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					float u_xlat3;
					int u_xlati6;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat3 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat3;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlati6 = unity_StereoEyeIndex;
					    u_xlat1.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati6].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati6].xy + u_xlat1.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendAdd" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat2 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat2;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec2 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					float u_xlat3;
					int u_xlati6;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat3 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat3;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlati6 = unity_StereoEyeIndex;
					    u_xlat1.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati6].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati6].xy + u_xlat1.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendAdd" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat2 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat2;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec2 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					float u_xlat3;
					int u_xlati6;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat3 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat3;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlati6 = unity_StereoEyeIndex;
					    u_xlat1.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati6].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati6].xy + u_xlat1.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendAdd" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat2 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat2;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec2 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					float u_xlat3;
					int u_xlati6;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat3 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat3;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlati6 = unity_StereoEyeIndex;
					    u_xlat1.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati6].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati6].xy + u_xlat1.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendAdd" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat2 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat2;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec2 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					float u_xlat3;
					int u_xlati6;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat3 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat3;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlati6 = unity_StereoEyeIndex;
					    u_xlat1.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati6].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati6].xy + u_xlat1.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendAdd" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat2 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat2;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec2 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					float u_xlat3;
					int u_xlati6;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat3 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat3;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlati6 = unity_StereoEyeIndex;
					    u_xlat1.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati6].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati6].xy + u_xlat1.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendAdd" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat2 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat2;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec2 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					float u_xlat3;
					int u_xlati6;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat3 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat3;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlati6 = unity_StereoEyeIndex;
					    u_xlat1.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati6].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati6].xy + u_xlat1.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendAdd" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat2 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat2;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec2 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					float u_xlat3;
					int u_xlati6;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat3 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat3;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlati6 = unity_StereoEyeIndex;
					    u_xlat1.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati6].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati6].xy + u_xlat1.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendAdd" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat2 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat2;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec2 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					float u_xlat3;
					int u_xlati6;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat3 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat3;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlati6 = unity_StereoEyeIndex;
					    u_xlat1.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati6].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati6].xy + u_xlat1.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendAdd" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat2 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat2;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec2 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					float u_xlat3;
					int u_xlati6;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat3 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat3;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlati6 = unity_StereoEyeIndex;
					    u_xlat1.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati6].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati6].xy + u_xlat1.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendAdd" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat2 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat2;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec2 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					float u_xlat3;
					int u_xlati6;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat3 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat3;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlati6 = unity_StereoEyeIndex;
					    u_xlat1.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati6].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati6].xy + u_xlat1.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendAdd" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat2 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat2;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec2 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					float u_xlat3;
					int u_xlati6;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat3 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat3;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlati6 = unity_StereoEyeIndex;
					    u_xlat1.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati6].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati6].xy + u_xlat1.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendAdd" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat2 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat2;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec2 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					float u_xlat3;
					int u_xlati6;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat3 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat3;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlati6 = unity_StereoEyeIndex;
					    u_xlat1.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati6].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati6].xy + u_xlat1.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendAdd" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					float u_xlat9;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat9 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat9 = inversesqrt(u_xlat9);
					    u_xlat2.xyz = vec3(u_xlat9) * u_xlat2.xyz;
					    u_xlat9 = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat9 = inversesqrt(u_xlat9);
					    u_xlat3.xyz = vec3(u_xlat9) * in_NORMAL0.xyz;
					    u_xlat9 = dot(u_xlat3.xyz, u_xlat2.xyz);
					    u_xlat9 = log2(abs(u_xlat9));
					    u_xlat9 = u_xlat9 * _FresnelStr;
					    u_xlat9 = exp2(u_xlat9);
					    u_xlat9 = u_xlat9 + u_xlat9;
					    vs_TEXCOORD4 = min(u_xlat9, 1.0);
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat4 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_3_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					vec3 u_xlat5;
					vec2 u_xlat8;
					int u_xlati10;
					float u_xlat15;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    u_xlat5.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat5.x = inversesqrt(u_xlat5.x);
					    u_xlat5.xyz = u_xlat5.xxx * in_NORMAL0.xyz;
					    u_xlati10 = unity_StereoEyeIndex;
					    u_xlat3.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati10].yyy;
					    u_xlat3.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati10].xxx + u_xlat3.xyz;
					    u_xlat3.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati10].zzz + u_xlat3.xyz;
					    u_xlat3.xyz = u_xlat3.xyz + unity_WorldToObject[3].xyz;
					    u_xlat3.xyz = u_xlat3.xyz + (-in_POSITION0.xyz);
					    u_xlat15 = dot(u_xlat3.xyz, u_xlat3.xyz);
					    u_xlat15 = inversesqrt(u_xlat15);
					    u_xlat3.xyz = vec3(u_xlat15) * u_xlat3.xyz;
					    u_xlat5.x = dot(u_xlat5.xyz, u_xlat3.xyz);
					    u_xlat5.x = log2(abs(u_xlat5.x));
					    u_xlat5.x = u_xlat5.x * _FresnelStr;
					    u_xlat5.x = exp2(u_xlat5.x);
					    u_xlat5.x = u_xlat5.x + u_xlat5.x;
					    vs_TEXCOORD4 = min(u_xlat5.x, 1.0);
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat4 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlat8.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati10].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati10].xy + u_xlat8.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendAdd" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					float u_xlat9;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat9 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat9 = inversesqrt(u_xlat9);
					    u_xlat2.xyz = vec3(u_xlat9) * u_xlat2.xyz;
					    u_xlat9 = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat9 = inversesqrt(u_xlat9);
					    u_xlat3.xyz = vec3(u_xlat9) * in_NORMAL0.xyz;
					    u_xlat9 = dot(u_xlat3.xyz, u_xlat2.xyz);
					    u_xlat9 = log2(abs(u_xlat9));
					    u_xlat9 = u_xlat9 * _FresnelStr;
					    u_xlat9 = exp2(u_xlat9);
					    u_xlat9 = u_xlat9 + u_xlat9;
					    vs_TEXCOORD4 = min(u_xlat9, 1.0);
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat4 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_3_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					vec3 u_xlat5;
					vec2 u_xlat8;
					int u_xlati10;
					float u_xlat15;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    u_xlat5.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat5.x = inversesqrt(u_xlat5.x);
					    u_xlat5.xyz = u_xlat5.xxx * in_NORMAL0.xyz;
					    u_xlati10 = unity_StereoEyeIndex;
					    u_xlat3.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati10].yyy;
					    u_xlat3.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati10].xxx + u_xlat3.xyz;
					    u_xlat3.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati10].zzz + u_xlat3.xyz;
					    u_xlat3.xyz = u_xlat3.xyz + unity_WorldToObject[3].xyz;
					    u_xlat3.xyz = u_xlat3.xyz + (-in_POSITION0.xyz);
					    u_xlat15 = dot(u_xlat3.xyz, u_xlat3.xyz);
					    u_xlat15 = inversesqrt(u_xlat15);
					    u_xlat3.xyz = vec3(u_xlat15) * u_xlat3.xyz;
					    u_xlat5.x = dot(u_xlat5.xyz, u_xlat3.xyz);
					    u_xlat5.x = log2(abs(u_xlat5.x));
					    u_xlat5.x = u_xlat5.x * _FresnelStr;
					    u_xlat5.x = exp2(u_xlat5.x);
					    u_xlat5.x = u_xlat5.x + u_xlat5.x;
					    vs_TEXCOORD4 = min(u_xlat5.x, 1.0);
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat4 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlat8.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati10].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati10].xy + u_xlat8.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendAdd" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					float u_xlat14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat14 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat2.xyz = vec3(u_xlat14) * u_xlat2.xyz;
					    u_xlat14 = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat3.xyz = vec3(u_xlat14) * in_NORMAL0.xyz;
					    u_xlat2.x = dot(u_xlat3.xyz, u_xlat2.xyz);
					    u_xlat2.x = log2(abs(u_xlat2.x));
					    u_xlat2.x = u_xlat2.x * _FresnelStr;
					    u_xlat2.x = exp2(u_xlat2.x);
					    u_xlat2.x = u_xlat2.x + u_xlat2.x;
					    vs_TEXCOORD4 = min(u_xlat2.x, 1.0);
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat4 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_3_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati1;
					vec4 u_xlat2;
					int u_xlati3;
					float u_xlat4;
					float u_xlat5;
					vec3 u_xlat6;
					vec3 u_xlat8;
					vec2 u_xlat10;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    u_xlat6.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat6.x = inversesqrt(u_xlat6.x);
					    u_xlat6.xyz = u_xlat6.xxx * in_NORMAL0.xyz;
					    u_xlati3 = unity_StereoEyeIndex;
					    u_xlat8.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].yyy;
					    u_xlat8.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].xxx + u_xlat8.xyz;
					    u_xlat8.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].zzz + u_xlat8.xyz;
					    u_xlat8.xyz = u_xlat8.xyz + unity_WorldToObject[3].xyz;
					    u_xlat8.xyz = u_xlat8.xyz + (-in_POSITION0.xyz);
					    u_xlat4 = dot(u_xlat8.xyz, u_xlat8.xyz);
					    u_xlat4 = inversesqrt(u_xlat4);
					    u_xlat8.xyz = u_xlat8.xyz * vec3(u_xlat4);
					    u_xlat6.x = dot(u_xlat6.xyz, u_xlat8.xyz);
					    u_xlat6.x = log2(abs(u_xlat6.x));
					    u_xlat6.x = u_xlat6.x * _FresnelStr;
					    u_xlat6.x = exp2(u_xlat6.x);
					    u_xlat6.x = u_xlat6.x + u_xlat6.x;
					    vs_TEXCOORD4 = min(u_xlat6.x, 1.0);
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat5 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat5;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlat10.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati3].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati3].xy + u_xlat10.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendAdd" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					float u_xlat14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat14 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat2.xyz = vec3(u_xlat14) * u_xlat2.xyz;
					    u_xlat14 = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat3.xyz = vec3(u_xlat14) * in_NORMAL0.xyz;
					    u_xlat2.x = dot(u_xlat3.xyz, u_xlat2.xyz);
					    u_xlat2.x = log2(abs(u_xlat2.x));
					    u_xlat2.x = u_xlat2.x * _FresnelStr;
					    u_xlat2.x = exp2(u_xlat2.x);
					    u_xlat2.x = u_xlat2.x + u_xlat2.x;
					    vs_TEXCOORD4 = min(u_xlat2.x, 1.0);
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat4 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_3_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati1;
					vec4 u_xlat2;
					int u_xlati3;
					float u_xlat4;
					float u_xlat5;
					vec3 u_xlat6;
					vec3 u_xlat8;
					vec2 u_xlat10;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    u_xlat6.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat6.x = inversesqrt(u_xlat6.x);
					    u_xlat6.xyz = u_xlat6.xxx * in_NORMAL0.xyz;
					    u_xlati3 = unity_StereoEyeIndex;
					    u_xlat8.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].yyy;
					    u_xlat8.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].xxx + u_xlat8.xyz;
					    u_xlat8.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].zzz + u_xlat8.xyz;
					    u_xlat8.xyz = u_xlat8.xyz + unity_WorldToObject[3].xyz;
					    u_xlat8.xyz = u_xlat8.xyz + (-in_POSITION0.xyz);
					    u_xlat4 = dot(u_xlat8.xyz, u_xlat8.xyz);
					    u_xlat4 = inversesqrt(u_xlat4);
					    u_xlat8.xyz = u_xlat8.xyz * vec3(u_xlat4);
					    u_xlat6.x = dot(u_xlat6.xyz, u_xlat8.xyz);
					    u_xlat6.x = log2(abs(u_xlat6.x));
					    u_xlat6.x = u_xlat6.x * _FresnelStr;
					    u_xlat6.x = exp2(u_xlat6.x);
					    u_xlat6.x = u_xlat6.x + u_xlat6.x;
					    vs_TEXCOORD4 = min(u_xlat6.x, 1.0);
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat5 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat5;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlat10.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati3].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati3].xy + u_xlat10.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendAdd" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					float u_xlat14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat14 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat2.xyz = vec3(u_xlat14) * u_xlat2.xyz;
					    u_xlat14 = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat3.xyz = vec3(u_xlat14) * in_NORMAL0.xyz;
					    u_xlat2.x = dot(u_xlat3.xyz, u_xlat2.xyz);
					    u_xlat2.x = log2(abs(u_xlat2.x));
					    u_xlat2.x = u_xlat2.x * _FresnelStr;
					    u_xlat2.x = exp2(u_xlat2.x);
					    u_xlat2.x = u_xlat2.x + u_xlat2.x;
					    vs_TEXCOORD4 = min(u_xlat2.x, 1.0);
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat4 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_3_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati1;
					vec4 u_xlat2;
					int u_xlati3;
					float u_xlat4;
					float u_xlat5;
					vec3 u_xlat6;
					vec3 u_xlat8;
					vec2 u_xlat10;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    u_xlat6.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat6.x = inversesqrt(u_xlat6.x);
					    u_xlat6.xyz = u_xlat6.xxx * in_NORMAL0.xyz;
					    u_xlati3 = unity_StereoEyeIndex;
					    u_xlat8.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].yyy;
					    u_xlat8.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].xxx + u_xlat8.xyz;
					    u_xlat8.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].zzz + u_xlat8.xyz;
					    u_xlat8.xyz = u_xlat8.xyz + unity_WorldToObject[3].xyz;
					    u_xlat8.xyz = u_xlat8.xyz + (-in_POSITION0.xyz);
					    u_xlat4 = dot(u_xlat8.xyz, u_xlat8.xyz);
					    u_xlat4 = inversesqrt(u_xlat4);
					    u_xlat8.xyz = u_xlat8.xyz * vec3(u_xlat4);
					    u_xlat6.x = dot(u_xlat6.xyz, u_xlat8.xyz);
					    u_xlat6.x = log2(abs(u_xlat6.x));
					    u_xlat6.x = u_xlat6.x * _FresnelStr;
					    u_xlat6.x = exp2(u_xlat6.x);
					    u_xlat6.x = u_xlat6.x + u_xlat6.x;
					    vs_TEXCOORD4 = min(u_xlat6.x, 1.0);
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat5 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat5;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlat10.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati3].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati3].xy + u_xlat10.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendAdd" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					float u_xlat14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat14 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat2.xyz = vec3(u_xlat14) * u_xlat2.xyz;
					    u_xlat14 = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat3.xyz = vec3(u_xlat14) * in_NORMAL0.xyz;
					    u_xlat2.x = dot(u_xlat3.xyz, u_xlat2.xyz);
					    u_xlat2.x = log2(abs(u_xlat2.x));
					    u_xlat2.x = u_xlat2.x * _FresnelStr;
					    u_xlat2.x = exp2(u_xlat2.x);
					    u_xlat2.x = u_xlat2.x + u_xlat2.x;
					    vs_TEXCOORD4 = min(u_xlat2.x, 1.0);
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat4 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_3_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati1;
					vec4 u_xlat2;
					int u_xlati3;
					float u_xlat4;
					float u_xlat5;
					vec3 u_xlat6;
					vec3 u_xlat8;
					vec2 u_xlat10;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    u_xlat6.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat6.x = inversesqrt(u_xlat6.x);
					    u_xlat6.xyz = u_xlat6.xxx * in_NORMAL0.xyz;
					    u_xlati3 = unity_StereoEyeIndex;
					    u_xlat8.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].yyy;
					    u_xlat8.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].xxx + u_xlat8.xyz;
					    u_xlat8.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].zzz + u_xlat8.xyz;
					    u_xlat8.xyz = u_xlat8.xyz + unity_WorldToObject[3].xyz;
					    u_xlat8.xyz = u_xlat8.xyz + (-in_POSITION0.xyz);
					    u_xlat4 = dot(u_xlat8.xyz, u_xlat8.xyz);
					    u_xlat4 = inversesqrt(u_xlat4);
					    u_xlat8.xyz = u_xlat8.xyz * vec3(u_xlat4);
					    u_xlat6.x = dot(u_xlat6.xyz, u_xlat8.xyz);
					    u_xlat6.x = log2(abs(u_xlat6.x));
					    u_xlat6.x = u_xlat6.x * _FresnelStr;
					    u_xlat6.x = exp2(u_xlat6.x);
					    u_xlat6.x = u_xlat6.x + u_xlat6.x;
					    vs_TEXCOORD4 = min(u_xlat6.x, 1.0);
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat5 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat5;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlat10.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati3].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati3].xy + u_xlat10.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendAdd" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					float u_xlat14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat14 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat2.xyz = vec3(u_xlat14) * u_xlat2.xyz;
					    u_xlat14 = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat3.xyz = vec3(u_xlat14) * in_NORMAL0.xyz;
					    u_xlat2.x = dot(u_xlat3.xyz, u_xlat2.xyz);
					    u_xlat2.x = log2(abs(u_xlat2.x));
					    u_xlat2.x = u_xlat2.x * _FresnelStr;
					    u_xlat2.x = exp2(u_xlat2.x);
					    u_xlat2.x = u_xlat2.x + u_xlat2.x;
					    vs_TEXCOORD4 = min(u_xlat2.x, 1.0);
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat4 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_3_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati1;
					vec4 u_xlat2;
					int u_xlati3;
					float u_xlat4;
					float u_xlat5;
					vec3 u_xlat6;
					vec3 u_xlat8;
					vec2 u_xlat10;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    u_xlat6.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat6.x = inversesqrt(u_xlat6.x);
					    u_xlat6.xyz = u_xlat6.xxx * in_NORMAL0.xyz;
					    u_xlati3 = unity_StereoEyeIndex;
					    u_xlat8.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].yyy;
					    u_xlat8.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].xxx + u_xlat8.xyz;
					    u_xlat8.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].zzz + u_xlat8.xyz;
					    u_xlat8.xyz = u_xlat8.xyz + unity_WorldToObject[3].xyz;
					    u_xlat8.xyz = u_xlat8.xyz + (-in_POSITION0.xyz);
					    u_xlat4 = dot(u_xlat8.xyz, u_xlat8.xyz);
					    u_xlat4 = inversesqrt(u_xlat4);
					    u_xlat8.xyz = u_xlat8.xyz * vec3(u_xlat4);
					    u_xlat6.x = dot(u_xlat6.xyz, u_xlat8.xyz);
					    u_xlat6.x = log2(abs(u_xlat6.x));
					    u_xlat6.x = u_xlat6.x * _FresnelStr;
					    u_xlat6.x = exp2(u_xlat6.x);
					    u_xlat6.x = u_xlat6.x + u_xlat6.x;
					    vs_TEXCOORD4 = min(u_xlat6.x, 1.0);
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat5 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat5;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlat10.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati3].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati3].xy + u_xlat10.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendAdd" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					float u_xlat14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat14 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat2.xyz = vec3(u_xlat14) * u_xlat2.xyz;
					    u_xlat14 = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat3.xyz = vec3(u_xlat14) * in_NORMAL0.xyz;
					    u_xlat2.x = dot(u_xlat3.xyz, u_xlat2.xyz);
					    u_xlat2.x = log2(abs(u_xlat2.x));
					    u_xlat2.x = u_xlat2.x * _FresnelStr;
					    u_xlat2.x = exp2(u_xlat2.x);
					    u_xlat2.x = u_xlat2.x + u_xlat2.x;
					    vs_TEXCOORD4 = min(u_xlat2.x, 1.0);
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat4 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_3_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati1;
					vec4 u_xlat2;
					int u_xlati3;
					float u_xlat4;
					float u_xlat5;
					vec3 u_xlat6;
					vec3 u_xlat8;
					vec2 u_xlat10;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    u_xlat6.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat6.x = inversesqrt(u_xlat6.x);
					    u_xlat6.xyz = u_xlat6.xxx * in_NORMAL0.xyz;
					    u_xlati3 = unity_StereoEyeIndex;
					    u_xlat8.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].yyy;
					    u_xlat8.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].xxx + u_xlat8.xyz;
					    u_xlat8.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].zzz + u_xlat8.xyz;
					    u_xlat8.xyz = u_xlat8.xyz + unity_WorldToObject[3].xyz;
					    u_xlat8.xyz = u_xlat8.xyz + (-in_POSITION0.xyz);
					    u_xlat4 = dot(u_xlat8.xyz, u_xlat8.xyz);
					    u_xlat4 = inversesqrt(u_xlat4);
					    u_xlat8.xyz = u_xlat8.xyz * vec3(u_xlat4);
					    u_xlat6.x = dot(u_xlat6.xyz, u_xlat8.xyz);
					    u_xlat6.x = log2(abs(u_xlat6.x));
					    u_xlat6.x = u_xlat6.x * _FresnelStr;
					    u_xlat6.x = exp2(u_xlat6.x);
					    u_xlat6.x = u_xlat6.x + u_xlat6.x;
					    vs_TEXCOORD4 = min(u_xlat6.x, 1.0);
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat5 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat5;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlat10.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati3].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati3].xy + u_xlat10.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendAdd" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					float u_xlat9;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat9 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat9 = inversesqrt(u_xlat9);
					    u_xlat2.xyz = vec3(u_xlat9) * u_xlat2.xyz;
					    u_xlat9 = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat9 = inversesqrt(u_xlat9);
					    u_xlat3.xyz = vec3(u_xlat9) * in_NORMAL0.xyz;
					    u_xlat9 = dot(u_xlat3.xyz, u_xlat2.xyz);
					    u_xlat9 = log2(abs(u_xlat9));
					    u_xlat9 = u_xlat9 * _FresnelStr;
					    u_xlat9 = exp2(u_xlat9);
					    u_xlat9 = u_xlat9 + u_xlat9;
					    vs_TEXCOORD4 = min(u_xlat9, 1.0);
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat4 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_3_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					vec3 u_xlat5;
					vec2 u_xlat8;
					int u_xlati10;
					float u_xlat15;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    u_xlat5.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat5.x = inversesqrt(u_xlat5.x);
					    u_xlat5.xyz = u_xlat5.xxx * in_NORMAL0.xyz;
					    u_xlati10 = unity_StereoEyeIndex;
					    u_xlat3.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati10].yyy;
					    u_xlat3.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati10].xxx + u_xlat3.xyz;
					    u_xlat3.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati10].zzz + u_xlat3.xyz;
					    u_xlat3.xyz = u_xlat3.xyz + unity_WorldToObject[3].xyz;
					    u_xlat3.xyz = u_xlat3.xyz + (-in_POSITION0.xyz);
					    u_xlat15 = dot(u_xlat3.xyz, u_xlat3.xyz);
					    u_xlat15 = inversesqrt(u_xlat15);
					    u_xlat3.xyz = vec3(u_xlat15) * u_xlat3.xyz;
					    u_xlat5.x = dot(u_xlat5.xyz, u_xlat3.xyz);
					    u_xlat5.x = log2(abs(u_xlat5.x));
					    u_xlat5.x = u_xlat5.x * _FresnelStr;
					    u_xlat5.x = exp2(u_xlat5.x);
					    u_xlat5.x = u_xlat5.x + u_xlat5.x;
					    vs_TEXCOORD4 = min(u_xlat5.x, 1.0);
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat4 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlat8.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati10].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati10].xy + u_xlat8.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendAdd" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					float u_xlat9;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat9 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat9 = inversesqrt(u_xlat9);
					    u_xlat2.xyz = vec3(u_xlat9) * u_xlat2.xyz;
					    u_xlat9 = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat9 = inversesqrt(u_xlat9);
					    u_xlat3.xyz = vec3(u_xlat9) * in_NORMAL0.xyz;
					    u_xlat9 = dot(u_xlat3.xyz, u_xlat2.xyz);
					    u_xlat9 = log2(abs(u_xlat9));
					    u_xlat9 = u_xlat9 * _FresnelStr;
					    u_xlat9 = exp2(u_xlat9);
					    u_xlat9 = u_xlat9 + u_xlat9;
					    vs_TEXCOORD4 = min(u_xlat9, 1.0);
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat4 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_3_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					vec3 u_xlat5;
					vec2 u_xlat8;
					int u_xlati10;
					float u_xlat15;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    u_xlat5.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat5.x = inversesqrt(u_xlat5.x);
					    u_xlat5.xyz = u_xlat5.xxx * in_NORMAL0.xyz;
					    u_xlati10 = unity_StereoEyeIndex;
					    u_xlat3.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati10].yyy;
					    u_xlat3.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati10].xxx + u_xlat3.xyz;
					    u_xlat3.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati10].zzz + u_xlat3.xyz;
					    u_xlat3.xyz = u_xlat3.xyz + unity_WorldToObject[3].xyz;
					    u_xlat3.xyz = u_xlat3.xyz + (-in_POSITION0.xyz);
					    u_xlat15 = dot(u_xlat3.xyz, u_xlat3.xyz);
					    u_xlat15 = inversesqrt(u_xlat15);
					    u_xlat3.xyz = vec3(u_xlat15) * u_xlat3.xyz;
					    u_xlat5.x = dot(u_xlat5.xyz, u_xlat3.xyz);
					    u_xlat5.x = log2(abs(u_xlat5.x));
					    u_xlat5.x = u_xlat5.x * _FresnelStr;
					    u_xlat5.x = exp2(u_xlat5.x);
					    u_xlat5.x = u_xlat5.x + u_xlat5.x;
					    vs_TEXCOORD4 = min(u_xlat5.x, 1.0);
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat4 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlat8.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati10].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati10].xy + u_xlat8.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendAdd" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					float u_xlat14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat14 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat2.xyz = vec3(u_xlat14) * u_xlat2.xyz;
					    u_xlat14 = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat3.xyz = vec3(u_xlat14) * in_NORMAL0.xyz;
					    u_xlat2.x = dot(u_xlat3.xyz, u_xlat2.xyz);
					    u_xlat2.x = log2(abs(u_xlat2.x));
					    u_xlat2.x = u_xlat2.x * _FresnelStr;
					    u_xlat2.x = exp2(u_xlat2.x);
					    u_xlat2.x = u_xlat2.x + u_xlat2.x;
					    vs_TEXCOORD4 = min(u_xlat2.x, 1.0);
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat4 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_3_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati1;
					vec4 u_xlat2;
					int u_xlati3;
					float u_xlat4;
					float u_xlat5;
					vec3 u_xlat6;
					vec3 u_xlat8;
					vec2 u_xlat10;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    u_xlat6.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat6.x = inversesqrt(u_xlat6.x);
					    u_xlat6.xyz = u_xlat6.xxx * in_NORMAL0.xyz;
					    u_xlati3 = unity_StereoEyeIndex;
					    u_xlat8.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].yyy;
					    u_xlat8.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].xxx + u_xlat8.xyz;
					    u_xlat8.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].zzz + u_xlat8.xyz;
					    u_xlat8.xyz = u_xlat8.xyz + unity_WorldToObject[3].xyz;
					    u_xlat8.xyz = u_xlat8.xyz + (-in_POSITION0.xyz);
					    u_xlat4 = dot(u_xlat8.xyz, u_xlat8.xyz);
					    u_xlat4 = inversesqrt(u_xlat4);
					    u_xlat8.xyz = u_xlat8.xyz * vec3(u_xlat4);
					    u_xlat6.x = dot(u_xlat6.xyz, u_xlat8.xyz);
					    u_xlat6.x = log2(abs(u_xlat6.x));
					    u_xlat6.x = u_xlat6.x * _FresnelStr;
					    u_xlat6.x = exp2(u_xlat6.x);
					    u_xlat6.x = u_xlat6.x + u_xlat6.x;
					    vs_TEXCOORD4 = min(u_xlat6.x, 1.0);
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat5 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat5;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlat10.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati3].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati3].xy + u_xlat10.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendAdd" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					float u_xlat14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat14 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat2.xyz = vec3(u_xlat14) * u_xlat2.xyz;
					    u_xlat14 = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat3.xyz = vec3(u_xlat14) * in_NORMAL0.xyz;
					    u_xlat2.x = dot(u_xlat3.xyz, u_xlat2.xyz);
					    u_xlat2.x = log2(abs(u_xlat2.x));
					    u_xlat2.x = u_xlat2.x * _FresnelStr;
					    u_xlat2.x = exp2(u_xlat2.x);
					    u_xlat2.x = u_xlat2.x + u_xlat2.x;
					    vs_TEXCOORD4 = min(u_xlat2.x, 1.0);
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat4 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_3_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati1;
					vec4 u_xlat2;
					int u_xlati3;
					float u_xlat4;
					float u_xlat5;
					vec3 u_xlat6;
					vec3 u_xlat8;
					vec2 u_xlat10;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    u_xlat6.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat6.x = inversesqrt(u_xlat6.x);
					    u_xlat6.xyz = u_xlat6.xxx * in_NORMAL0.xyz;
					    u_xlati3 = unity_StereoEyeIndex;
					    u_xlat8.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].yyy;
					    u_xlat8.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].xxx + u_xlat8.xyz;
					    u_xlat8.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].zzz + u_xlat8.xyz;
					    u_xlat8.xyz = u_xlat8.xyz + unity_WorldToObject[3].xyz;
					    u_xlat8.xyz = u_xlat8.xyz + (-in_POSITION0.xyz);
					    u_xlat4 = dot(u_xlat8.xyz, u_xlat8.xyz);
					    u_xlat4 = inversesqrt(u_xlat4);
					    u_xlat8.xyz = u_xlat8.xyz * vec3(u_xlat4);
					    u_xlat6.x = dot(u_xlat6.xyz, u_xlat8.xyz);
					    u_xlat6.x = log2(abs(u_xlat6.x));
					    u_xlat6.x = u_xlat6.x * _FresnelStr;
					    u_xlat6.x = exp2(u_xlat6.x);
					    u_xlat6.x = u_xlat6.x + u_xlat6.x;
					    vs_TEXCOORD4 = min(u_xlat6.x, 1.0);
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat5 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat5;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlat10.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati3].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati3].xy + u_xlat10.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendAdd" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					float u_xlat14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat14 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat2.xyz = vec3(u_xlat14) * u_xlat2.xyz;
					    u_xlat14 = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat3.xyz = vec3(u_xlat14) * in_NORMAL0.xyz;
					    u_xlat2.x = dot(u_xlat3.xyz, u_xlat2.xyz);
					    u_xlat2.x = log2(abs(u_xlat2.x));
					    u_xlat2.x = u_xlat2.x * _FresnelStr;
					    u_xlat2.x = exp2(u_xlat2.x);
					    u_xlat2.x = u_xlat2.x + u_xlat2.x;
					    vs_TEXCOORD4 = min(u_xlat2.x, 1.0);
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat4 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_3_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati1;
					vec4 u_xlat2;
					int u_xlati3;
					float u_xlat4;
					float u_xlat5;
					vec3 u_xlat6;
					vec3 u_xlat8;
					vec2 u_xlat10;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    u_xlat6.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat6.x = inversesqrt(u_xlat6.x);
					    u_xlat6.xyz = u_xlat6.xxx * in_NORMAL0.xyz;
					    u_xlati3 = unity_StereoEyeIndex;
					    u_xlat8.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].yyy;
					    u_xlat8.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].xxx + u_xlat8.xyz;
					    u_xlat8.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].zzz + u_xlat8.xyz;
					    u_xlat8.xyz = u_xlat8.xyz + unity_WorldToObject[3].xyz;
					    u_xlat8.xyz = u_xlat8.xyz + (-in_POSITION0.xyz);
					    u_xlat4 = dot(u_xlat8.xyz, u_xlat8.xyz);
					    u_xlat4 = inversesqrt(u_xlat4);
					    u_xlat8.xyz = u_xlat8.xyz * vec3(u_xlat4);
					    u_xlat6.x = dot(u_xlat6.xyz, u_xlat8.xyz);
					    u_xlat6.x = log2(abs(u_xlat6.x));
					    u_xlat6.x = u_xlat6.x * _FresnelStr;
					    u_xlat6.x = exp2(u_xlat6.x);
					    u_xlat6.x = u_xlat6.x + u_xlat6.x;
					    vs_TEXCOORD4 = min(u_xlat6.x, 1.0);
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat5 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat5;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlat10.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati3].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati3].xy + u_xlat10.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendAdd" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					float u_xlat14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat14 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat2.xyz = vec3(u_xlat14) * u_xlat2.xyz;
					    u_xlat14 = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat3.xyz = vec3(u_xlat14) * in_NORMAL0.xyz;
					    u_xlat2.x = dot(u_xlat3.xyz, u_xlat2.xyz);
					    u_xlat2.x = log2(abs(u_xlat2.x));
					    u_xlat2.x = u_xlat2.x * _FresnelStr;
					    u_xlat2.x = exp2(u_xlat2.x);
					    u_xlat2.x = u_xlat2.x + u_xlat2.x;
					    vs_TEXCOORD4 = min(u_xlat2.x, 1.0);
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat4 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_3_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati1;
					vec4 u_xlat2;
					int u_xlati3;
					float u_xlat4;
					float u_xlat5;
					vec3 u_xlat6;
					vec3 u_xlat8;
					vec2 u_xlat10;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    u_xlat6.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat6.x = inversesqrt(u_xlat6.x);
					    u_xlat6.xyz = u_xlat6.xxx * in_NORMAL0.xyz;
					    u_xlati3 = unity_StereoEyeIndex;
					    u_xlat8.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].yyy;
					    u_xlat8.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].xxx + u_xlat8.xyz;
					    u_xlat8.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].zzz + u_xlat8.xyz;
					    u_xlat8.xyz = u_xlat8.xyz + unity_WorldToObject[3].xyz;
					    u_xlat8.xyz = u_xlat8.xyz + (-in_POSITION0.xyz);
					    u_xlat4 = dot(u_xlat8.xyz, u_xlat8.xyz);
					    u_xlat4 = inversesqrt(u_xlat4);
					    u_xlat8.xyz = u_xlat8.xyz * vec3(u_xlat4);
					    u_xlat6.x = dot(u_xlat6.xyz, u_xlat8.xyz);
					    u_xlat6.x = log2(abs(u_xlat6.x));
					    u_xlat6.x = u_xlat6.x * _FresnelStr;
					    u_xlat6.x = exp2(u_xlat6.x);
					    u_xlat6.x = u_xlat6.x + u_xlat6.x;
					    vs_TEXCOORD4 = min(u_xlat6.x, 1.0);
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat5 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat5;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlat10.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati3].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati3].xy + u_xlat10.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendAdd" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					float u_xlat14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat14 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat2.xyz = vec3(u_xlat14) * u_xlat2.xyz;
					    u_xlat14 = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat3.xyz = vec3(u_xlat14) * in_NORMAL0.xyz;
					    u_xlat2.x = dot(u_xlat3.xyz, u_xlat2.xyz);
					    u_xlat2.x = log2(abs(u_xlat2.x));
					    u_xlat2.x = u_xlat2.x * _FresnelStr;
					    u_xlat2.x = exp2(u_xlat2.x);
					    u_xlat2.x = u_xlat2.x + u_xlat2.x;
					    vs_TEXCOORD4 = min(u_xlat2.x, 1.0);
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat4 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_3_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati1;
					vec4 u_xlat2;
					int u_xlati3;
					float u_xlat4;
					float u_xlat5;
					vec3 u_xlat6;
					vec3 u_xlat8;
					vec2 u_xlat10;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    u_xlat6.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat6.x = inversesqrt(u_xlat6.x);
					    u_xlat6.xyz = u_xlat6.xxx * in_NORMAL0.xyz;
					    u_xlati3 = unity_StereoEyeIndex;
					    u_xlat8.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].yyy;
					    u_xlat8.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].xxx + u_xlat8.xyz;
					    u_xlat8.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].zzz + u_xlat8.xyz;
					    u_xlat8.xyz = u_xlat8.xyz + unity_WorldToObject[3].xyz;
					    u_xlat8.xyz = u_xlat8.xyz + (-in_POSITION0.xyz);
					    u_xlat4 = dot(u_xlat8.xyz, u_xlat8.xyz);
					    u_xlat4 = inversesqrt(u_xlat4);
					    u_xlat8.xyz = u_xlat8.xyz * vec3(u_xlat4);
					    u_xlat6.x = dot(u_xlat6.xyz, u_xlat8.xyz);
					    u_xlat6.x = log2(abs(u_xlat6.x));
					    u_xlat6.x = u_xlat6.x * _FresnelStr;
					    u_xlat6.x = exp2(u_xlat6.x);
					    u_xlat6.x = u_xlat6.x + u_xlat6.x;
					    vs_TEXCOORD4 = min(u_xlat6.x, 1.0);
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat5 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat5;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlat10.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati3].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati3].xy + u_xlat10.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendAdd" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					float u_xlat14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat14 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat2.xyz = vec3(u_xlat14) * u_xlat2.xyz;
					    u_xlat14 = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat3.xyz = vec3(u_xlat14) * in_NORMAL0.xyz;
					    u_xlat2.x = dot(u_xlat3.xyz, u_xlat2.xyz);
					    u_xlat2.x = log2(abs(u_xlat2.x));
					    u_xlat2.x = u_xlat2.x * _FresnelStr;
					    u_xlat2.x = exp2(u_xlat2.x);
					    u_xlat2.x = u_xlat2.x + u_xlat2.x;
					    vs_TEXCOORD4 = min(u_xlat2.x, 1.0);
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat4 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_3_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati1;
					vec4 u_xlat2;
					int u_xlati3;
					float u_xlat4;
					float u_xlat5;
					vec3 u_xlat6;
					vec3 u_xlat8;
					vec2 u_xlat10;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    u_xlat6.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat6.x = inversesqrt(u_xlat6.x);
					    u_xlat6.xyz = u_xlat6.xxx * in_NORMAL0.xyz;
					    u_xlati3 = unity_StereoEyeIndex;
					    u_xlat8.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].yyy;
					    u_xlat8.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].xxx + u_xlat8.xyz;
					    u_xlat8.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].zzz + u_xlat8.xyz;
					    u_xlat8.xyz = u_xlat8.xyz + unity_WorldToObject[3].xyz;
					    u_xlat8.xyz = u_xlat8.xyz + (-in_POSITION0.xyz);
					    u_xlat4 = dot(u_xlat8.xyz, u_xlat8.xyz);
					    u_xlat4 = inversesqrt(u_xlat4);
					    u_xlat8.xyz = u_xlat8.xyz * vec3(u_xlat4);
					    u_xlat6.x = dot(u_xlat6.xyz, u_xlat8.xyz);
					    u_xlat6.x = log2(abs(u_xlat6.x));
					    u_xlat6.x = u_xlat6.x * _FresnelStr;
					    u_xlat6.x = exp2(u_xlat6.x);
					    u_xlat6.x = u_xlat6.x + u_xlat6.x;
					    vs_TEXCOORD4 = min(u_xlat6.x, 1.0);
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat5 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat5;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlat10.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati3].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati3].xy + u_xlat10.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendAdd" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat2 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat2;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec2 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					float u_xlat3;
					int u_xlati6;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat3 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat3;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlati6 = unity_StereoEyeIndex;
					    u_xlat1.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati6].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati6].xy + u_xlat1.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendAdd" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat2 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat2;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec2 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					float u_xlat3;
					int u_xlati6;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat3 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat3;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlati6 = unity_StereoEyeIndex;
					    u_xlat1.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati6].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati6].xy + u_xlat1.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendAdd" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat2 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat2;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec2 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					float u_xlat3;
					int u_xlati6;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat3 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat3;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlati6 = unity_StereoEyeIndex;
					    u_xlat1.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati6].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati6].xy + u_xlat1.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendAdd" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat2 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat2;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec2 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					float u_xlat3;
					int u_xlati6;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat3 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat3;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlati6 = unity_StereoEyeIndex;
					    u_xlat1.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati6].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati6].xy + u_xlat1.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendAdd" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat2 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat2;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec2 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					float u_xlat3;
					int u_xlati6;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat3 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat3;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlati6 = unity_StereoEyeIndex;
					    u_xlat1.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati6].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati6].xy + u_xlat1.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendAdd" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat2 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat2;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec2 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					float u_xlat3;
					int u_xlati6;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat3 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat3;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlati6 = unity_StereoEyeIndex;
					    u_xlat1.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati6].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati6].xy + u_xlat1.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendAdd" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat2 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat2;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec2 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					float u_xlat3;
					int u_xlati6;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat3 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat3;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlati6 = unity_StereoEyeIndex;
					    u_xlat1.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati6].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati6].xy + u_xlat1.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendAdd" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat2 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat2;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec2 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					float u_xlat3;
					int u_xlati6;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat3 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat3;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlati6 = unity_StereoEyeIndex;
					    u_xlat1.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati6].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati6].xy + u_xlat1.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendAdd" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat2 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat2;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec2 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					float u_xlat3;
					int u_xlati6;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat3 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat3;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlati6 = unity_StereoEyeIndex;
					    u_xlat1.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati6].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati6].xy + u_xlat1.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendAdd" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat2 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat2;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec2 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					float u_xlat3;
					int u_xlati6;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat3 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat3;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlati6 = unity_StereoEyeIndex;
					    u_xlat1.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati6].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati6].xy + u_xlat1.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendAdd" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat2 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat2;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec2 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					float u_xlat3;
					int u_xlati6;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat3 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat3;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlati6 = unity_StereoEyeIndex;
					    u_xlat1.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati6].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati6].xy + u_xlat1.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendAdd" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat2 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat2;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec2 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					float u_xlat3;
					int u_xlati6;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat3 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat3;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlati6 = unity_StereoEyeIndex;
					    u_xlat1.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati6].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati6].xy + u_xlat1.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendAdd" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat2 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat2;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec2 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					float u_xlat3;
					int u_xlati6;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat3 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat3;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlati6 = unity_StereoEyeIndex;
					    u_xlat1.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati6].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati6].xy + u_xlat1.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendAdd" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat2 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat2;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec2 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					float u_xlat3;
					int u_xlati6;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat3 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat3;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlati6 = unity_StereoEyeIndex;
					    u_xlat1.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati6].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati6].xy + u_xlat1.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendAdd" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat2 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat2;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec2 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					float u_xlat3;
					int u_xlati6;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat3 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat3;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlati6 = unity_StereoEyeIndex;
					    u_xlat1.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati6].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati6].xy + u_xlat1.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendAdd" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat2 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat2;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec2 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					float u_xlat3;
					int u_xlati6;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat3 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat3;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlati6 = unity_StereoEyeIndex;
					    u_xlat1.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati6].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati6].xy + u_xlat1.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendAdd" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					float u_xlat9;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat9 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat9 = inversesqrt(u_xlat9);
					    u_xlat2.xyz = vec3(u_xlat9) * u_xlat2.xyz;
					    u_xlat9 = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat9 = inversesqrt(u_xlat9);
					    u_xlat3.xyz = vec3(u_xlat9) * in_NORMAL0.xyz;
					    u_xlat9 = dot(u_xlat3.xyz, u_xlat2.xyz);
					    u_xlat9 = log2(abs(u_xlat9));
					    u_xlat9 = u_xlat9 * _FresnelStr;
					    u_xlat9 = exp2(u_xlat9);
					    u_xlat9 = u_xlat9 + u_xlat9;
					    vs_TEXCOORD4 = min(u_xlat9, 1.0);
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat4 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_3_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					vec3 u_xlat5;
					vec2 u_xlat8;
					int u_xlati10;
					float u_xlat15;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    u_xlat5.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat5.x = inversesqrt(u_xlat5.x);
					    u_xlat5.xyz = u_xlat5.xxx * in_NORMAL0.xyz;
					    u_xlati10 = unity_StereoEyeIndex;
					    u_xlat3.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati10].yyy;
					    u_xlat3.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati10].xxx + u_xlat3.xyz;
					    u_xlat3.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati10].zzz + u_xlat3.xyz;
					    u_xlat3.xyz = u_xlat3.xyz + unity_WorldToObject[3].xyz;
					    u_xlat3.xyz = u_xlat3.xyz + (-in_POSITION0.xyz);
					    u_xlat15 = dot(u_xlat3.xyz, u_xlat3.xyz);
					    u_xlat15 = inversesqrt(u_xlat15);
					    u_xlat3.xyz = vec3(u_xlat15) * u_xlat3.xyz;
					    u_xlat5.x = dot(u_xlat5.xyz, u_xlat3.xyz);
					    u_xlat5.x = log2(abs(u_xlat5.x));
					    u_xlat5.x = u_xlat5.x * _FresnelStr;
					    u_xlat5.x = exp2(u_xlat5.x);
					    u_xlat5.x = u_xlat5.x + u_xlat5.x;
					    vs_TEXCOORD4 = min(u_xlat5.x, 1.0);
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat4 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlat8.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati10].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati10].xy + u_xlat8.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendAdd" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					float u_xlat9;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat9 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat9 = inversesqrt(u_xlat9);
					    u_xlat2.xyz = vec3(u_xlat9) * u_xlat2.xyz;
					    u_xlat9 = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat9 = inversesqrt(u_xlat9);
					    u_xlat3.xyz = vec3(u_xlat9) * in_NORMAL0.xyz;
					    u_xlat9 = dot(u_xlat3.xyz, u_xlat2.xyz);
					    u_xlat9 = log2(abs(u_xlat9));
					    u_xlat9 = u_xlat9 * _FresnelStr;
					    u_xlat9 = exp2(u_xlat9);
					    u_xlat9 = u_xlat9 + u_xlat9;
					    vs_TEXCOORD4 = min(u_xlat9, 1.0);
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat4 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_3_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					vec3 u_xlat5;
					vec2 u_xlat8;
					int u_xlati10;
					float u_xlat15;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    u_xlat5.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat5.x = inversesqrt(u_xlat5.x);
					    u_xlat5.xyz = u_xlat5.xxx * in_NORMAL0.xyz;
					    u_xlati10 = unity_StereoEyeIndex;
					    u_xlat3.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati10].yyy;
					    u_xlat3.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati10].xxx + u_xlat3.xyz;
					    u_xlat3.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati10].zzz + u_xlat3.xyz;
					    u_xlat3.xyz = u_xlat3.xyz + unity_WorldToObject[3].xyz;
					    u_xlat3.xyz = u_xlat3.xyz + (-in_POSITION0.xyz);
					    u_xlat15 = dot(u_xlat3.xyz, u_xlat3.xyz);
					    u_xlat15 = inversesqrt(u_xlat15);
					    u_xlat3.xyz = vec3(u_xlat15) * u_xlat3.xyz;
					    u_xlat5.x = dot(u_xlat5.xyz, u_xlat3.xyz);
					    u_xlat5.x = log2(abs(u_xlat5.x));
					    u_xlat5.x = u_xlat5.x * _FresnelStr;
					    u_xlat5.x = exp2(u_xlat5.x);
					    u_xlat5.x = u_xlat5.x + u_xlat5.x;
					    vs_TEXCOORD4 = min(u_xlat5.x, 1.0);
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat4 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlat8.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati10].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati10].xy + u_xlat8.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendAdd" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					float u_xlat14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat14 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat2.xyz = vec3(u_xlat14) * u_xlat2.xyz;
					    u_xlat14 = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat3.xyz = vec3(u_xlat14) * in_NORMAL0.xyz;
					    u_xlat2.x = dot(u_xlat3.xyz, u_xlat2.xyz);
					    u_xlat2.x = log2(abs(u_xlat2.x));
					    u_xlat2.x = u_xlat2.x * _FresnelStr;
					    u_xlat2.x = exp2(u_xlat2.x);
					    u_xlat2.x = u_xlat2.x + u_xlat2.x;
					    vs_TEXCOORD4 = min(u_xlat2.x, 1.0);
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat4 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_3_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati1;
					vec4 u_xlat2;
					int u_xlati3;
					float u_xlat4;
					float u_xlat5;
					vec3 u_xlat6;
					vec3 u_xlat8;
					vec2 u_xlat10;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    u_xlat6.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat6.x = inversesqrt(u_xlat6.x);
					    u_xlat6.xyz = u_xlat6.xxx * in_NORMAL0.xyz;
					    u_xlati3 = unity_StereoEyeIndex;
					    u_xlat8.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].yyy;
					    u_xlat8.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].xxx + u_xlat8.xyz;
					    u_xlat8.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].zzz + u_xlat8.xyz;
					    u_xlat8.xyz = u_xlat8.xyz + unity_WorldToObject[3].xyz;
					    u_xlat8.xyz = u_xlat8.xyz + (-in_POSITION0.xyz);
					    u_xlat4 = dot(u_xlat8.xyz, u_xlat8.xyz);
					    u_xlat4 = inversesqrt(u_xlat4);
					    u_xlat8.xyz = u_xlat8.xyz * vec3(u_xlat4);
					    u_xlat6.x = dot(u_xlat6.xyz, u_xlat8.xyz);
					    u_xlat6.x = log2(abs(u_xlat6.x));
					    u_xlat6.x = u_xlat6.x * _FresnelStr;
					    u_xlat6.x = exp2(u_xlat6.x);
					    u_xlat6.x = u_xlat6.x + u_xlat6.x;
					    vs_TEXCOORD4 = min(u_xlat6.x, 1.0);
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat5 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat5;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlat10.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati3].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati3].xy + u_xlat10.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendAdd" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					float u_xlat14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat14 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat2.xyz = vec3(u_xlat14) * u_xlat2.xyz;
					    u_xlat14 = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat3.xyz = vec3(u_xlat14) * in_NORMAL0.xyz;
					    u_xlat2.x = dot(u_xlat3.xyz, u_xlat2.xyz);
					    u_xlat2.x = log2(abs(u_xlat2.x));
					    u_xlat2.x = u_xlat2.x * _FresnelStr;
					    u_xlat2.x = exp2(u_xlat2.x);
					    u_xlat2.x = u_xlat2.x + u_xlat2.x;
					    vs_TEXCOORD4 = min(u_xlat2.x, 1.0);
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat4 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_3_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati1;
					vec4 u_xlat2;
					int u_xlati3;
					float u_xlat4;
					float u_xlat5;
					vec3 u_xlat6;
					vec3 u_xlat8;
					vec2 u_xlat10;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    u_xlat6.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat6.x = inversesqrt(u_xlat6.x);
					    u_xlat6.xyz = u_xlat6.xxx * in_NORMAL0.xyz;
					    u_xlati3 = unity_StereoEyeIndex;
					    u_xlat8.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].yyy;
					    u_xlat8.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].xxx + u_xlat8.xyz;
					    u_xlat8.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].zzz + u_xlat8.xyz;
					    u_xlat8.xyz = u_xlat8.xyz + unity_WorldToObject[3].xyz;
					    u_xlat8.xyz = u_xlat8.xyz + (-in_POSITION0.xyz);
					    u_xlat4 = dot(u_xlat8.xyz, u_xlat8.xyz);
					    u_xlat4 = inversesqrt(u_xlat4);
					    u_xlat8.xyz = u_xlat8.xyz * vec3(u_xlat4);
					    u_xlat6.x = dot(u_xlat6.xyz, u_xlat8.xyz);
					    u_xlat6.x = log2(abs(u_xlat6.x));
					    u_xlat6.x = u_xlat6.x * _FresnelStr;
					    u_xlat6.x = exp2(u_xlat6.x);
					    u_xlat6.x = u_xlat6.x + u_xlat6.x;
					    vs_TEXCOORD4 = min(u_xlat6.x, 1.0);
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat5 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat5;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlat10.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati3].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati3].xy + u_xlat10.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendAdd" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					float u_xlat14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat14 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat2.xyz = vec3(u_xlat14) * u_xlat2.xyz;
					    u_xlat14 = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat3.xyz = vec3(u_xlat14) * in_NORMAL0.xyz;
					    u_xlat2.x = dot(u_xlat3.xyz, u_xlat2.xyz);
					    u_xlat2.x = log2(abs(u_xlat2.x));
					    u_xlat2.x = u_xlat2.x * _FresnelStr;
					    u_xlat2.x = exp2(u_xlat2.x);
					    u_xlat2.x = u_xlat2.x + u_xlat2.x;
					    vs_TEXCOORD4 = min(u_xlat2.x, 1.0);
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat4 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_3_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati1;
					vec4 u_xlat2;
					int u_xlati3;
					float u_xlat4;
					float u_xlat5;
					vec3 u_xlat6;
					vec3 u_xlat8;
					vec2 u_xlat10;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    u_xlat6.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat6.x = inversesqrt(u_xlat6.x);
					    u_xlat6.xyz = u_xlat6.xxx * in_NORMAL0.xyz;
					    u_xlati3 = unity_StereoEyeIndex;
					    u_xlat8.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].yyy;
					    u_xlat8.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].xxx + u_xlat8.xyz;
					    u_xlat8.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].zzz + u_xlat8.xyz;
					    u_xlat8.xyz = u_xlat8.xyz + unity_WorldToObject[3].xyz;
					    u_xlat8.xyz = u_xlat8.xyz + (-in_POSITION0.xyz);
					    u_xlat4 = dot(u_xlat8.xyz, u_xlat8.xyz);
					    u_xlat4 = inversesqrt(u_xlat4);
					    u_xlat8.xyz = u_xlat8.xyz * vec3(u_xlat4);
					    u_xlat6.x = dot(u_xlat6.xyz, u_xlat8.xyz);
					    u_xlat6.x = log2(abs(u_xlat6.x));
					    u_xlat6.x = u_xlat6.x * _FresnelStr;
					    u_xlat6.x = exp2(u_xlat6.x);
					    u_xlat6.x = u_xlat6.x + u_xlat6.x;
					    vs_TEXCOORD4 = min(u_xlat6.x, 1.0);
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat5 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat5;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlat10.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati3].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati3].xy + u_xlat10.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendAdd" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					float u_xlat14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat14 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat2.xyz = vec3(u_xlat14) * u_xlat2.xyz;
					    u_xlat14 = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat3.xyz = vec3(u_xlat14) * in_NORMAL0.xyz;
					    u_xlat2.x = dot(u_xlat3.xyz, u_xlat2.xyz);
					    u_xlat2.x = log2(abs(u_xlat2.x));
					    u_xlat2.x = u_xlat2.x * _FresnelStr;
					    u_xlat2.x = exp2(u_xlat2.x);
					    u_xlat2.x = u_xlat2.x + u_xlat2.x;
					    vs_TEXCOORD4 = min(u_xlat2.x, 1.0);
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat4 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_3_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati1;
					vec4 u_xlat2;
					int u_xlati3;
					float u_xlat4;
					float u_xlat5;
					vec3 u_xlat6;
					vec3 u_xlat8;
					vec2 u_xlat10;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    u_xlat6.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat6.x = inversesqrt(u_xlat6.x);
					    u_xlat6.xyz = u_xlat6.xxx * in_NORMAL0.xyz;
					    u_xlati3 = unity_StereoEyeIndex;
					    u_xlat8.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].yyy;
					    u_xlat8.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].xxx + u_xlat8.xyz;
					    u_xlat8.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].zzz + u_xlat8.xyz;
					    u_xlat8.xyz = u_xlat8.xyz + unity_WorldToObject[3].xyz;
					    u_xlat8.xyz = u_xlat8.xyz + (-in_POSITION0.xyz);
					    u_xlat4 = dot(u_xlat8.xyz, u_xlat8.xyz);
					    u_xlat4 = inversesqrt(u_xlat4);
					    u_xlat8.xyz = u_xlat8.xyz * vec3(u_xlat4);
					    u_xlat6.x = dot(u_xlat6.xyz, u_xlat8.xyz);
					    u_xlat6.x = log2(abs(u_xlat6.x));
					    u_xlat6.x = u_xlat6.x * _FresnelStr;
					    u_xlat6.x = exp2(u_xlat6.x);
					    u_xlat6.x = u_xlat6.x + u_xlat6.x;
					    vs_TEXCOORD4 = min(u_xlat6.x, 1.0);
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat5 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat5;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlat10.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati3].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati3].xy + u_xlat10.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendAdd" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					float u_xlat14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat14 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat2.xyz = vec3(u_xlat14) * u_xlat2.xyz;
					    u_xlat14 = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat3.xyz = vec3(u_xlat14) * in_NORMAL0.xyz;
					    u_xlat2.x = dot(u_xlat3.xyz, u_xlat2.xyz);
					    u_xlat2.x = log2(abs(u_xlat2.x));
					    u_xlat2.x = u_xlat2.x * _FresnelStr;
					    u_xlat2.x = exp2(u_xlat2.x);
					    u_xlat2.x = u_xlat2.x + u_xlat2.x;
					    vs_TEXCOORD4 = min(u_xlat2.x, 1.0);
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat4 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_3_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati1;
					vec4 u_xlat2;
					int u_xlati3;
					float u_xlat4;
					float u_xlat5;
					vec3 u_xlat6;
					vec3 u_xlat8;
					vec2 u_xlat10;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    u_xlat6.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat6.x = inversesqrt(u_xlat6.x);
					    u_xlat6.xyz = u_xlat6.xxx * in_NORMAL0.xyz;
					    u_xlati3 = unity_StereoEyeIndex;
					    u_xlat8.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].yyy;
					    u_xlat8.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].xxx + u_xlat8.xyz;
					    u_xlat8.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].zzz + u_xlat8.xyz;
					    u_xlat8.xyz = u_xlat8.xyz + unity_WorldToObject[3].xyz;
					    u_xlat8.xyz = u_xlat8.xyz + (-in_POSITION0.xyz);
					    u_xlat4 = dot(u_xlat8.xyz, u_xlat8.xyz);
					    u_xlat4 = inversesqrt(u_xlat4);
					    u_xlat8.xyz = u_xlat8.xyz * vec3(u_xlat4);
					    u_xlat6.x = dot(u_xlat6.xyz, u_xlat8.xyz);
					    u_xlat6.x = log2(abs(u_xlat6.x));
					    u_xlat6.x = u_xlat6.x * _FresnelStr;
					    u_xlat6.x = exp2(u_xlat6.x);
					    u_xlat6.x = u_xlat6.x + u_xlat6.x;
					    vs_TEXCOORD4 = min(u_xlat6.x, 1.0);
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat5 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat5;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlat10.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati3].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati3].xy + u_xlat10.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendAdd" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					float u_xlat14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat14 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat2.xyz = vec3(u_xlat14) * u_xlat2.xyz;
					    u_xlat14 = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat3.xyz = vec3(u_xlat14) * in_NORMAL0.xyz;
					    u_xlat2.x = dot(u_xlat3.xyz, u_xlat2.xyz);
					    u_xlat2.x = log2(abs(u_xlat2.x));
					    u_xlat2.x = u_xlat2.x * _FresnelStr;
					    u_xlat2.x = exp2(u_xlat2.x);
					    u_xlat2.x = u_xlat2.x + u_xlat2.x;
					    vs_TEXCOORD4 = min(u_xlat2.x, 1.0);
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat4 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_3_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati1;
					vec4 u_xlat2;
					int u_xlati3;
					float u_xlat4;
					float u_xlat5;
					vec3 u_xlat6;
					vec3 u_xlat8;
					vec2 u_xlat10;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    u_xlat6.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat6.x = inversesqrt(u_xlat6.x);
					    u_xlat6.xyz = u_xlat6.xxx * in_NORMAL0.xyz;
					    u_xlati3 = unity_StereoEyeIndex;
					    u_xlat8.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].yyy;
					    u_xlat8.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].xxx + u_xlat8.xyz;
					    u_xlat8.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].zzz + u_xlat8.xyz;
					    u_xlat8.xyz = u_xlat8.xyz + unity_WorldToObject[3].xyz;
					    u_xlat8.xyz = u_xlat8.xyz + (-in_POSITION0.xyz);
					    u_xlat4 = dot(u_xlat8.xyz, u_xlat8.xyz);
					    u_xlat4 = inversesqrt(u_xlat4);
					    u_xlat8.xyz = u_xlat8.xyz * vec3(u_xlat4);
					    u_xlat6.x = dot(u_xlat6.xyz, u_xlat8.xyz);
					    u_xlat6.x = log2(abs(u_xlat6.x));
					    u_xlat6.x = u_xlat6.x * _FresnelStr;
					    u_xlat6.x = exp2(u_xlat6.x);
					    u_xlat6.x = u_xlat6.x + u_xlat6.x;
					    vs_TEXCOORD4 = min(u_xlat6.x, 1.0);
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat5 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat5;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlat10.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati3].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati3].xy + u_xlat10.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendAdd" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					float u_xlat9;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat9 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat9 = inversesqrt(u_xlat9);
					    u_xlat2.xyz = vec3(u_xlat9) * u_xlat2.xyz;
					    u_xlat9 = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat9 = inversesqrt(u_xlat9);
					    u_xlat3.xyz = vec3(u_xlat9) * in_NORMAL0.xyz;
					    u_xlat9 = dot(u_xlat3.xyz, u_xlat2.xyz);
					    u_xlat9 = log2(abs(u_xlat9));
					    u_xlat9 = u_xlat9 * _FresnelStr;
					    u_xlat9 = exp2(u_xlat9);
					    u_xlat9 = u_xlat9 + u_xlat9;
					    vs_TEXCOORD4 = min(u_xlat9, 1.0);
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat4 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_3_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					vec3 u_xlat5;
					vec2 u_xlat8;
					int u_xlati10;
					float u_xlat15;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    u_xlat5.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat5.x = inversesqrt(u_xlat5.x);
					    u_xlat5.xyz = u_xlat5.xxx * in_NORMAL0.xyz;
					    u_xlati10 = unity_StereoEyeIndex;
					    u_xlat3.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati10].yyy;
					    u_xlat3.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati10].xxx + u_xlat3.xyz;
					    u_xlat3.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati10].zzz + u_xlat3.xyz;
					    u_xlat3.xyz = u_xlat3.xyz + unity_WorldToObject[3].xyz;
					    u_xlat3.xyz = u_xlat3.xyz + (-in_POSITION0.xyz);
					    u_xlat15 = dot(u_xlat3.xyz, u_xlat3.xyz);
					    u_xlat15 = inversesqrt(u_xlat15);
					    u_xlat3.xyz = vec3(u_xlat15) * u_xlat3.xyz;
					    u_xlat5.x = dot(u_xlat5.xyz, u_xlat3.xyz);
					    u_xlat5.x = log2(abs(u_xlat5.x));
					    u_xlat5.x = u_xlat5.x * _FresnelStr;
					    u_xlat5.x = exp2(u_xlat5.x);
					    u_xlat5.x = u_xlat5.x + u_xlat5.x;
					    vs_TEXCOORD4 = min(u_xlat5.x, 1.0);
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat4 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlat8.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati10].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati10].xy + u_xlat8.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendAdd" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					float u_xlat9;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat9 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat9 = inversesqrt(u_xlat9);
					    u_xlat2.xyz = vec3(u_xlat9) * u_xlat2.xyz;
					    u_xlat9 = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat9 = inversesqrt(u_xlat9);
					    u_xlat3.xyz = vec3(u_xlat9) * in_NORMAL0.xyz;
					    u_xlat9 = dot(u_xlat3.xyz, u_xlat2.xyz);
					    u_xlat9 = log2(abs(u_xlat9));
					    u_xlat9 = u_xlat9 * _FresnelStr;
					    u_xlat9 = exp2(u_xlat9);
					    u_xlat9 = u_xlat9 + u_xlat9;
					    vs_TEXCOORD4 = min(u_xlat9, 1.0);
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat4 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_3_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					vec3 u_xlat5;
					vec2 u_xlat8;
					int u_xlati10;
					float u_xlat15;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    u_xlat5.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat5.x = inversesqrt(u_xlat5.x);
					    u_xlat5.xyz = u_xlat5.xxx * in_NORMAL0.xyz;
					    u_xlati10 = unity_StereoEyeIndex;
					    u_xlat3.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati10].yyy;
					    u_xlat3.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati10].xxx + u_xlat3.xyz;
					    u_xlat3.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati10].zzz + u_xlat3.xyz;
					    u_xlat3.xyz = u_xlat3.xyz + unity_WorldToObject[3].xyz;
					    u_xlat3.xyz = u_xlat3.xyz + (-in_POSITION0.xyz);
					    u_xlat15 = dot(u_xlat3.xyz, u_xlat3.xyz);
					    u_xlat15 = inversesqrt(u_xlat15);
					    u_xlat3.xyz = vec3(u_xlat15) * u_xlat3.xyz;
					    u_xlat5.x = dot(u_xlat5.xyz, u_xlat3.xyz);
					    u_xlat5.x = log2(abs(u_xlat5.x));
					    u_xlat5.x = u_xlat5.x * _FresnelStr;
					    u_xlat5.x = exp2(u_xlat5.x);
					    u_xlat5.x = u_xlat5.x + u_xlat5.x;
					    vs_TEXCOORD4 = min(u_xlat5.x, 1.0);
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat4 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlat8.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati10].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati10].xy + u_xlat8.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendAdd" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					float u_xlat14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat14 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat2.xyz = vec3(u_xlat14) * u_xlat2.xyz;
					    u_xlat14 = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat3.xyz = vec3(u_xlat14) * in_NORMAL0.xyz;
					    u_xlat2.x = dot(u_xlat3.xyz, u_xlat2.xyz);
					    u_xlat2.x = log2(abs(u_xlat2.x));
					    u_xlat2.x = u_xlat2.x * _FresnelStr;
					    u_xlat2.x = exp2(u_xlat2.x);
					    u_xlat2.x = u_xlat2.x + u_xlat2.x;
					    vs_TEXCOORD4 = min(u_xlat2.x, 1.0);
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat4 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_3_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati1;
					vec4 u_xlat2;
					int u_xlati3;
					float u_xlat4;
					float u_xlat5;
					vec3 u_xlat6;
					vec3 u_xlat8;
					vec2 u_xlat10;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    u_xlat6.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat6.x = inversesqrt(u_xlat6.x);
					    u_xlat6.xyz = u_xlat6.xxx * in_NORMAL0.xyz;
					    u_xlati3 = unity_StereoEyeIndex;
					    u_xlat8.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].yyy;
					    u_xlat8.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].xxx + u_xlat8.xyz;
					    u_xlat8.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].zzz + u_xlat8.xyz;
					    u_xlat8.xyz = u_xlat8.xyz + unity_WorldToObject[3].xyz;
					    u_xlat8.xyz = u_xlat8.xyz + (-in_POSITION0.xyz);
					    u_xlat4 = dot(u_xlat8.xyz, u_xlat8.xyz);
					    u_xlat4 = inversesqrt(u_xlat4);
					    u_xlat8.xyz = u_xlat8.xyz * vec3(u_xlat4);
					    u_xlat6.x = dot(u_xlat6.xyz, u_xlat8.xyz);
					    u_xlat6.x = log2(abs(u_xlat6.x));
					    u_xlat6.x = u_xlat6.x * _FresnelStr;
					    u_xlat6.x = exp2(u_xlat6.x);
					    u_xlat6.x = u_xlat6.x + u_xlat6.x;
					    vs_TEXCOORD4 = min(u_xlat6.x, 1.0);
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat5 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat5;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlat10.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati3].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati3].xy + u_xlat10.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendAdd" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					float u_xlat14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat14 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat2.xyz = vec3(u_xlat14) * u_xlat2.xyz;
					    u_xlat14 = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat3.xyz = vec3(u_xlat14) * in_NORMAL0.xyz;
					    u_xlat2.x = dot(u_xlat3.xyz, u_xlat2.xyz);
					    u_xlat2.x = log2(abs(u_xlat2.x));
					    u_xlat2.x = u_xlat2.x * _FresnelStr;
					    u_xlat2.x = exp2(u_xlat2.x);
					    u_xlat2.x = u_xlat2.x + u_xlat2.x;
					    vs_TEXCOORD4 = min(u_xlat2.x, 1.0);
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat4 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_3_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati1;
					vec4 u_xlat2;
					int u_xlati3;
					float u_xlat4;
					float u_xlat5;
					vec3 u_xlat6;
					vec3 u_xlat8;
					vec2 u_xlat10;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    u_xlat6.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat6.x = inversesqrt(u_xlat6.x);
					    u_xlat6.xyz = u_xlat6.xxx * in_NORMAL0.xyz;
					    u_xlati3 = unity_StereoEyeIndex;
					    u_xlat8.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].yyy;
					    u_xlat8.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].xxx + u_xlat8.xyz;
					    u_xlat8.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].zzz + u_xlat8.xyz;
					    u_xlat8.xyz = u_xlat8.xyz + unity_WorldToObject[3].xyz;
					    u_xlat8.xyz = u_xlat8.xyz + (-in_POSITION0.xyz);
					    u_xlat4 = dot(u_xlat8.xyz, u_xlat8.xyz);
					    u_xlat4 = inversesqrt(u_xlat4);
					    u_xlat8.xyz = u_xlat8.xyz * vec3(u_xlat4);
					    u_xlat6.x = dot(u_xlat6.xyz, u_xlat8.xyz);
					    u_xlat6.x = log2(abs(u_xlat6.x));
					    u_xlat6.x = u_xlat6.x * _FresnelStr;
					    u_xlat6.x = exp2(u_xlat6.x);
					    u_xlat6.x = u_xlat6.x + u_xlat6.x;
					    vs_TEXCOORD4 = min(u_xlat6.x, 1.0);
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat5 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat5;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlat10.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati3].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati3].xy + u_xlat10.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendAdd" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					float u_xlat14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat14 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat2.xyz = vec3(u_xlat14) * u_xlat2.xyz;
					    u_xlat14 = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat3.xyz = vec3(u_xlat14) * in_NORMAL0.xyz;
					    u_xlat2.x = dot(u_xlat3.xyz, u_xlat2.xyz);
					    u_xlat2.x = log2(abs(u_xlat2.x));
					    u_xlat2.x = u_xlat2.x * _FresnelStr;
					    u_xlat2.x = exp2(u_xlat2.x);
					    u_xlat2.x = u_xlat2.x + u_xlat2.x;
					    vs_TEXCOORD4 = min(u_xlat2.x, 1.0);
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat4 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_3_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati1;
					vec4 u_xlat2;
					int u_xlati3;
					float u_xlat4;
					float u_xlat5;
					vec3 u_xlat6;
					vec3 u_xlat8;
					vec2 u_xlat10;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    u_xlat6.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat6.x = inversesqrt(u_xlat6.x);
					    u_xlat6.xyz = u_xlat6.xxx * in_NORMAL0.xyz;
					    u_xlati3 = unity_StereoEyeIndex;
					    u_xlat8.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].yyy;
					    u_xlat8.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].xxx + u_xlat8.xyz;
					    u_xlat8.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].zzz + u_xlat8.xyz;
					    u_xlat8.xyz = u_xlat8.xyz + unity_WorldToObject[3].xyz;
					    u_xlat8.xyz = u_xlat8.xyz + (-in_POSITION0.xyz);
					    u_xlat4 = dot(u_xlat8.xyz, u_xlat8.xyz);
					    u_xlat4 = inversesqrt(u_xlat4);
					    u_xlat8.xyz = u_xlat8.xyz * vec3(u_xlat4);
					    u_xlat6.x = dot(u_xlat6.xyz, u_xlat8.xyz);
					    u_xlat6.x = log2(abs(u_xlat6.x));
					    u_xlat6.x = u_xlat6.x * _FresnelStr;
					    u_xlat6.x = exp2(u_xlat6.x);
					    u_xlat6.x = u_xlat6.x + u_xlat6.x;
					    vs_TEXCOORD4 = min(u_xlat6.x, 1.0);
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat5 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat5;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlat10.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati3].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati3].xy + u_xlat10.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendAdd" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					float u_xlat14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat14 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat2.xyz = vec3(u_xlat14) * u_xlat2.xyz;
					    u_xlat14 = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat3.xyz = vec3(u_xlat14) * in_NORMAL0.xyz;
					    u_xlat2.x = dot(u_xlat3.xyz, u_xlat2.xyz);
					    u_xlat2.x = log2(abs(u_xlat2.x));
					    u_xlat2.x = u_xlat2.x * _FresnelStr;
					    u_xlat2.x = exp2(u_xlat2.x);
					    u_xlat2.x = u_xlat2.x + u_xlat2.x;
					    vs_TEXCOORD4 = min(u_xlat2.x, 1.0);
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat4 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_3_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati1;
					vec4 u_xlat2;
					int u_xlati3;
					float u_xlat4;
					float u_xlat5;
					vec3 u_xlat6;
					vec3 u_xlat8;
					vec2 u_xlat10;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    u_xlat6.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat6.x = inversesqrt(u_xlat6.x);
					    u_xlat6.xyz = u_xlat6.xxx * in_NORMAL0.xyz;
					    u_xlati3 = unity_StereoEyeIndex;
					    u_xlat8.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].yyy;
					    u_xlat8.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].xxx + u_xlat8.xyz;
					    u_xlat8.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].zzz + u_xlat8.xyz;
					    u_xlat8.xyz = u_xlat8.xyz + unity_WorldToObject[3].xyz;
					    u_xlat8.xyz = u_xlat8.xyz + (-in_POSITION0.xyz);
					    u_xlat4 = dot(u_xlat8.xyz, u_xlat8.xyz);
					    u_xlat4 = inversesqrt(u_xlat4);
					    u_xlat8.xyz = u_xlat8.xyz * vec3(u_xlat4);
					    u_xlat6.x = dot(u_xlat6.xyz, u_xlat8.xyz);
					    u_xlat6.x = log2(abs(u_xlat6.x));
					    u_xlat6.x = u_xlat6.x * _FresnelStr;
					    u_xlat6.x = exp2(u_xlat6.x);
					    u_xlat6.x = u_xlat6.x + u_xlat6.x;
					    vs_TEXCOORD4 = min(u_xlat6.x, 1.0);
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat5 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat5;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlat10.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati3].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati3].xy + u_xlat10.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendAdd" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					float u_xlat14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat14 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat2.xyz = vec3(u_xlat14) * u_xlat2.xyz;
					    u_xlat14 = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat3.xyz = vec3(u_xlat14) * in_NORMAL0.xyz;
					    u_xlat2.x = dot(u_xlat3.xyz, u_xlat2.xyz);
					    u_xlat2.x = log2(abs(u_xlat2.x));
					    u_xlat2.x = u_xlat2.x * _FresnelStr;
					    u_xlat2.x = exp2(u_xlat2.x);
					    u_xlat2.x = u_xlat2.x + u_xlat2.x;
					    vs_TEXCOORD4 = min(u_xlat2.x, 1.0);
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat4 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_3_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati1;
					vec4 u_xlat2;
					int u_xlati3;
					float u_xlat4;
					float u_xlat5;
					vec3 u_xlat6;
					vec3 u_xlat8;
					vec2 u_xlat10;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    u_xlat6.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat6.x = inversesqrt(u_xlat6.x);
					    u_xlat6.xyz = u_xlat6.xxx * in_NORMAL0.xyz;
					    u_xlati3 = unity_StereoEyeIndex;
					    u_xlat8.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].yyy;
					    u_xlat8.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].xxx + u_xlat8.xyz;
					    u_xlat8.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].zzz + u_xlat8.xyz;
					    u_xlat8.xyz = u_xlat8.xyz + unity_WorldToObject[3].xyz;
					    u_xlat8.xyz = u_xlat8.xyz + (-in_POSITION0.xyz);
					    u_xlat4 = dot(u_xlat8.xyz, u_xlat8.xyz);
					    u_xlat4 = inversesqrt(u_xlat4);
					    u_xlat8.xyz = u_xlat8.xyz * vec3(u_xlat4);
					    u_xlat6.x = dot(u_xlat6.xyz, u_xlat8.xyz);
					    u_xlat6.x = log2(abs(u_xlat6.x));
					    u_xlat6.x = u_xlat6.x * _FresnelStr;
					    u_xlat6.x = exp2(u_xlat6.x);
					    u_xlat6.x = u_xlat6.x + u_xlat6.x;
					    vs_TEXCOORD4 = min(u_xlat6.x, 1.0);
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat5 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat5;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlat10.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati3].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati3].xy + u_xlat10.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendAdd" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					float u_xlat14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat14 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat2.xyz = vec3(u_xlat14) * u_xlat2.xyz;
					    u_xlat14 = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat3.xyz = vec3(u_xlat14) * in_NORMAL0.xyz;
					    u_xlat2.x = dot(u_xlat3.xyz, u_xlat2.xyz);
					    u_xlat2.x = log2(abs(u_xlat2.x));
					    u_xlat2.x = u_xlat2.x * _FresnelStr;
					    u_xlat2.x = exp2(u_xlat2.x);
					    u_xlat2.x = u_xlat2.x + u_xlat2.x;
					    vs_TEXCOORD4 = min(u_xlat2.x, 1.0);
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat4 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_3_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati1;
					vec4 u_xlat2;
					int u_xlati3;
					float u_xlat4;
					float u_xlat5;
					vec3 u_xlat6;
					vec3 u_xlat8;
					vec2 u_xlat10;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    u_xlat6.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat6.x = inversesqrt(u_xlat6.x);
					    u_xlat6.xyz = u_xlat6.xxx * in_NORMAL0.xyz;
					    u_xlati3 = unity_StereoEyeIndex;
					    u_xlat8.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].yyy;
					    u_xlat8.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].xxx + u_xlat8.xyz;
					    u_xlat8.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].zzz + u_xlat8.xyz;
					    u_xlat8.xyz = u_xlat8.xyz + unity_WorldToObject[3].xyz;
					    u_xlat8.xyz = u_xlat8.xyz + (-in_POSITION0.xyz);
					    u_xlat4 = dot(u_xlat8.xyz, u_xlat8.xyz);
					    u_xlat4 = inversesqrt(u_xlat4);
					    u_xlat8.xyz = u_xlat8.xyz * vec3(u_xlat4);
					    u_xlat6.x = dot(u_xlat6.xyz, u_xlat8.xyz);
					    u_xlat6.x = log2(abs(u_xlat6.x));
					    u_xlat6.x = u_xlat6.x * _FresnelStr;
					    u_xlat6.x = exp2(u_xlat6.x);
					    u_xlat6.x = u_xlat6.x + u_xlat6.x;
					    vs_TEXCOORD4 = min(u_xlat6.x, 1.0);
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat5 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat5;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlat10.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati3].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati3].xy + u_xlat10.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendAdd" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    u_xlat2 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat2;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec2 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					float u_xlat3;
					int u_xlati6;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    u_xlat3 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat3;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlati6 = unity_StereoEyeIndex;
					    u_xlat1.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati6].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati6].xy + u_xlat1.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendAdd" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    u_xlat2 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat2;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec2 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					float u_xlat3;
					int u_xlati6;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    u_xlat3 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat3;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlati6 = unity_StereoEyeIndex;
					    u_xlat1.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati6].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati6].xy + u_xlat1.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendAdd" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat2 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat2;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec2 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					float u_xlat3;
					int u_xlati6;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat3 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat3;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlati6 = unity_StereoEyeIndex;
					    u_xlat1.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati6].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati6].xy + u_xlat1.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendAdd" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat2 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat2;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec2 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					float u_xlat3;
					int u_xlati6;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat3 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat3;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlati6 = unity_StereoEyeIndex;
					    u_xlat1.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati6].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati6].xy + u_xlat1.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendAdd" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat2 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat2;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec2 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					float u_xlat3;
					int u_xlati6;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat3 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat3;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlati6 = unity_StereoEyeIndex;
					    u_xlat1.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati6].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati6].xy + u_xlat1.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendAdd" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat2 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat2;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec2 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					float u_xlat3;
					int u_xlati6;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat3 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat3;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlati6 = unity_StereoEyeIndex;
					    u_xlat1.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati6].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati6].xy + u_xlat1.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendAdd" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat2 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat2;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec2 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					float u_xlat3;
					int u_xlati6;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat3 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat3;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlati6 = unity_StereoEyeIndex;
					    u_xlat1.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati6].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati6].xy + u_xlat1.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendAdd" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat2 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat2;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec2 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					float u_xlat3;
					int u_xlati6;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat3 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat3;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlati6 = unity_StereoEyeIndex;
					    u_xlat1.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati6].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati6].xy + u_xlat1.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendAdd" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    u_xlat2 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat2;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec2 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					float u_xlat3;
					int u_xlati6;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    u_xlat3 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat3;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlati6 = unity_StereoEyeIndex;
					    u_xlat1.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati6].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati6].xy + u_xlat1.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendAdd" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    u_xlat2 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat2;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec2 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					float u_xlat3;
					int u_xlati6;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    u_xlat3 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat3;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlati6 = unity_StereoEyeIndex;
					    u_xlat1.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati6].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati6].xy + u_xlat1.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendAdd" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat2 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat2;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec2 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					float u_xlat3;
					int u_xlati6;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat3 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat3;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlati6 = unity_StereoEyeIndex;
					    u_xlat1.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati6].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati6].xy + u_xlat1.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendAdd" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat2 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat2;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec2 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					float u_xlat3;
					int u_xlati6;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat3 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat3;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlati6 = unity_StereoEyeIndex;
					    u_xlat1.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati6].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati6].xy + u_xlat1.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendAdd" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat2 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat2;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec2 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					float u_xlat3;
					int u_xlati6;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat3 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat3;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlati6 = unity_StereoEyeIndex;
					    u_xlat1.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati6].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati6].xy + u_xlat1.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendAdd" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat2 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat2;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec2 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					float u_xlat3;
					int u_xlati6;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat3 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat3;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlati6 = unity_StereoEyeIndex;
					    u_xlat1.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati6].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati6].xy + u_xlat1.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendAdd" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat2 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat2;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec2 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					float u_xlat3;
					int u_xlati6;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat3 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat3;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlati6 = unity_StereoEyeIndex;
					    u_xlat1.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati6].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati6].xy + u_xlat1.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendAdd" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat2 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat2;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec2 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					float u_xlat3;
					int u_xlati6;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat3 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat3;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlati6 = unity_StereoEyeIndex;
					    u_xlat1.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati6].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati6].xy + u_xlat1.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendAdd" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					float u_xlat9;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat9 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat9 = inversesqrt(u_xlat9);
					    u_xlat2.xyz = vec3(u_xlat9) * u_xlat2.xyz;
					    u_xlat9 = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat9 = inversesqrt(u_xlat9);
					    u_xlat3.xyz = vec3(u_xlat9) * in_NORMAL0.xyz;
					    u_xlat9 = dot(u_xlat3.xyz, u_xlat2.xyz);
					    u_xlat9 = log2(abs(u_xlat9));
					    u_xlat9 = u_xlat9 * _FresnelStr;
					    u_xlat9 = exp2(u_xlat9);
					    u_xlat9 = u_xlat9 + u_xlat9;
					    vs_TEXCOORD4 = min(u_xlat9, 1.0);
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    u_xlat4 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_3_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					vec3 u_xlat5;
					vec2 u_xlat8;
					int u_xlati10;
					float u_xlat15;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat5.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat5.x = inversesqrt(u_xlat5.x);
					    u_xlat5.xyz = u_xlat5.xxx * in_NORMAL0.xyz;
					    u_xlati10 = unity_StereoEyeIndex;
					    u_xlat3.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati10].yyy;
					    u_xlat3.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati10].xxx + u_xlat3.xyz;
					    u_xlat3.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati10].zzz + u_xlat3.xyz;
					    u_xlat3.xyz = u_xlat3.xyz + unity_WorldToObject[3].xyz;
					    u_xlat3.xyz = u_xlat3.xyz + (-in_POSITION0.xyz);
					    u_xlat15 = dot(u_xlat3.xyz, u_xlat3.xyz);
					    u_xlat15 = inversesqrt(u_xlat15);
					    u_xlat3.xyz = vec3(u_xlat15) * u_xlat3.xyz;
					    u_xlat5.x = dot(u_xlat5.xyz, u_xlat3.xyz);
					    u_xlat5.x = log2(abs(u_xlat5.x));
					    u_xlat5.x = u_xlat5.x * _FresnelStr;
					    u_xlat5.x = exp2(u_xlat5.x);
					    u_xlat5.x = u_xlat5.x + u_xlat5.x;
					    vs_TEXCOORD4 = min(u_xlat5.x, 1.0);
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    u_xlat4 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlat8.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati10].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati10].xy + u_xlat8.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendAdd" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					float u_xlat9;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat9 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat9 = inversesqrt(u_xlat9);
					    u_xlat2.xyz = vec3(u_xlat9) * u_xlat2.xyz;
					    u_xlat9 = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat9 = inversesqrt(u_xlat9);
					    u_xlat3.xyz = vec3(u_xlat9) * in_NORMAL0.xyz;
					    u_xlat9 = dot(u_xlat3.xyz, u_xlat2.xyz);
					    u_xlat9 = log2(abs(u_xlat9));
					    u_xlat9 = u_xlat9 * _FresnelStr;
					    u_xlat9 = exp2(u_xlat9);
					    u_xlat9 = u_xlat9 + u_xlat9;
					    vs_TEXCOORD4 = min(u_xlat9, 1.0);
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    u_xlat4 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_3_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					vec3 u_xlat5;
					vec2 u_xlat8;
					int u_xlati10;
					float u_xlat15;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat5.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat5.x = inversesqrt(u_xlat5.x);
					    u_xlat5.xyz = u_xlat5.xxx * in_NORMAL0.xyz;
					    u_xlati10 = unity_StereoEyeIndex;
					    u_xlat3.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati10].yyy;
					    u_xlat3.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati10].xxx + u_xlat3.xyz;
					    u_xlat3.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati10].zzz + u_xlat3.xyz;
					    u_xlat3.xyz = u_xlat3.xyz + unity_WorldToObject[3].xyz;
					    u_xlat3.xyz = u_xlat3.xyz + (-in_POSITION0.xyz);
					    u_xlat15 = dot(u_xlat3.xyz, u_xlat3.xyz);
					    u_xlat15 = inversesqrt(u_xlat15);
					    u_xlat3.xyz = vec3(u_xlat15) * u_xlat3.xyz;
					    u_xlat5.x = dot(u_xlat5.xyz, u_xlat3.xyz);
					    u_xlat5.x = log2(abs(u_xlat5.x));
					    u_xlat5.x = u_xlat5.x * _FresnelStr;
					    u_xlat5.x = exp2(u_xlat5.x);
					    u_xlat5.x = u_xlat5.x + u_xlat5.x;
					    vs_TEXCOORD4 = min(u_xlat5.x, 1.0);
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    u_xlat4 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlat8.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati10].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati10].xy + u_xlat8.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendAdd" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					float u_xlat14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat14 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat2.xyz = vec3(u_xlat14) * u_xlat2.xyz;
					    u_xlat14 = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat3.xyz = vec3(u_xlat14) * in_NORMAL0.xyz;
					    u_xlat2.x = dot(u_xlat3.xyz, u_xlat2.xyz);
					    u_xlat2.x = log2(abs(u_xlat2.x));
					    u_xlat2.x = u_xlat2.x * _FresnelStr;
					    u_xlat2.x = exp2(u_xlat2.x);
					    u_xlat2.x = u_xlat2.x + u_xlat2.x;
					    vs_TEXCOORD4 = min(u_xlat2.x, 1.0);
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat4 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_3_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati1;
					vec4 u_xlat2;
					int u_xlati3;
					float u_xlat4;
					float u_xlat5;
					vec3 u_xlat6;
					vec3 u_xlat8;
					vec2 u_xlat10;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat6.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat6.x = inversesqrt(u_xlat6.x);
					    u_xlat6.xyz = u_xlat6.xxx * in_NORMAL0.xyz;
					    u_xlati3 = unity_StereoEyeIndex;
					    u_xlat8.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].yyy;
					    u_xlat8.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].xxx + u_xlat8.xyz;
					    u_xlat8.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].zzz + u_xlat8.xyz;
					    u_xlat8.xyz = u_xlat8.xyz + unity_WorldToObject[3].xyz;
					    u_xlat8.xyz = u_xlat8.xyz + (-in_POSITION0.xyz);
					    u_xlat4 = dot(u_xlat8.xyz, u_xlat8.xyz);
					    u_xlat4 = inversesqrt(u_xlat4);
					    u_xlat8.xyz = u_xlat8.xyz * vec3(u_xlat4);
					    u_xlat6.x = dot(u_xlat6.xyz, u_xlat8.xyz);
					    u_xlat6.x = log2(abs(u_xlat6.x));
					    u_xlat6.x = u_xlat6.x * _FresnelStr;
					    u_xlat6.x = exp2(u_xlat6.x);
					    u_xlat6.x = u_xlat6.x + u_xlat6.x;
					    vs_TEXCOORD4 = min(u_xlat6.x, 1.0);
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat5 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat5;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlat10.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati3].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati3].xy + u_xlat10.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendAdd" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					float u_xlat14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat14 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat2.xyz = vec3(u_xlat14) * u_xlat2.xyz;
					    u_xlat14 = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat3.xyz = vec3(u_xlat14) * in_NORMAL0.xyz;
					    u_xlat2.x = dot(u_xlat3.xyz, u_xlat2.xyz);
					    u_xlat2.x = log2(abs(u_xlat2.x));
					    u_xlat2.x = u_xlat2.x * _FresnelStr;
					    u_xlat2.x = exp2(u_xlat2.x);
					    u_xlat2.x = u_xlat2.x + u_xlat2.x;
					    vs_TEXCOORD4 = min(u_xlat2.x, 1.0);
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat4 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_3_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati1;
					vec4 u_xlat2;
					int u_xlati3;
					float u_xlat4;
					float u_xlat5;
					vec3 u_xlat6;
					vec3 u_xlat8;
					vec2 u_xlat10;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat6.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat6.x = inversesqrt(u_xlat6.x);
					    u_xlat6.xyz = u_xlat6.xxx * in_NORMAL0.xyz;
					    u_xlati3 = unity_StereoEyeIndex;
					    u_xlat8.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].yyy;
					    u_xlat8.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].xxx + u_xlat8.xyz;
					    u_xlat8.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].zzz + u_xlat8.xyz;
					    u_xlat8.xyz = u_xlat8.xyz + unity_WorldToObject[3].xyz;
					    u_xlat8.xyz = u_xlat8.xyz + (-in_POSITION0.xyz);
					    u_xlat4 = dot(u_xlat8.xyz, u_xlat8.xyz);
					    u_xlat4 = inversesqrt(u_xlat4);
					    u_xlat8.xyz = u_xlat8.xyz * vec3(u_xlat4);
					    u_xlat6.x = dot(u_xlat6.xyz, u_xlat8.xyz);
					    u_xlat6.x = log2(abs(u_xlat6.x));
					    u_xlat6.x = u_xlat6.x * _FresnelStr;
					    u_xlat6.x = exp2(u_xlat6.x);
					    u_xlat6.x = u_xlat6.x + u_xlat6.x;
					    vs_TEXCOORD4 = min(u_xlat6.x, 1.0);
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat5 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat5;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlat10.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati3].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati3].xy + u_xlat10.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendAdd" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					float u_xlat14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat14 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat2.xyz = vec3(u_xlat14) * u_xlat2.xyz;
					    u_xlat14 = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat3.xyz = vec3(u_xlat14) * in_NORMAL0.xyz;
					    u_xlat2.x = dot(u_xlat3.xyz, u_xlat2.xyz);
					    u_xlat2.x = log2(abs(u_xlat2.x));
					    u_xlat2.x = u_xlat2.x * _FresnelStr;
					    u_xlat2.x = exp2(u_xlat2.x);
					    u_xlat2.x = u_xlat2.x + u_xlat2.x;
					    vs_TEXCOORD4 = min(u_xlat2.x, 1.0);
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat4 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_3_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati1;
					vec4 u_xlat2;
					int u_xlati3;
					float u_xlat4;
					float u_xlat5;
					vec3 u_xlat6;
					vec3 u_xlat8;
					vec2 u_xlat10;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat6.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat6.x = inversesqrt(u_xlat6.x);
					    u_xlat6.xyz = u_xlat6.xxx * in_NORMAL0.xyz;
					    u_xlati3 = unity_StereoEyeIndex;
					    u_xlat8.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].yyy;
					    u_xlat8.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].xxx + u_xlat8.xyz;
					    u_xlat8.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].zzz + u_xlat8.xyz;
					    u_xlat8.xyz = u_xlat8.xyz + unity_WorldToObject[3].xyz;
					    u_xlat8.xyz = u_xlat8.xyz + (-in_POSITION0.xyz);
					    u_xlat4 = dot(u_xlat8.xyz, u_xlat8.xyz);
					    u_xlat4 = inversesqrt(u_xlat4);
					    u_xlat8.xyz = u_xlat8.xyz * vec3(u_xlat4);
					    u_xlat6.x = dot(u_xlat6.xyz, u_xlat8.xyz);
					    u_xlat6.x = log2(abs(u_xlat6.x));
					    u_xlat6.x = u_xlat6.x * _FresnelStr;
					    u_xlat6.x = exp2(u_xlat6.x);
					    u_xlat6.x = u_xlat6.x + u_xlat6.x;
					    vs_TEXCOORD4 = min(u_xlat6.x, 1.0);
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat5 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat5;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlat10.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati3].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati3].xy + u_xlat10.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendAdd" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					float u_xlat14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat14 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat2.xyz = vec3(u_xlat14) * u_xlat2.xyz;
					    u_xlat14 = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat3.xyz = vec3(u_xlat14) * in_NORMAL0.xyz;
					    u_xlat2.x = dot(u_xlat3.xyz, u_xlat2.xyz);
					    u_xlat2.x = log2(abs(u_xlat2.x));
					    u_xlat2.x = u_xlat2.x * _FresnelStr;
					    u_xlat2.x = exp2(u_xlat2.x);
					    u_xlat2.x = u_xlat2.x + u_xlat2.x;
					    vs_TEXCOORD4 = min(u_xlat2.x, 1.0);
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat4 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_3_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati1;
					vec4 u_xlat2;
					int u_xlati3;
					float u_xlat4;
					float u_xlat5;
					vec3 u_xlat6;
					vec3 u_xlat8;
					vec2 u_xlat10;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat6.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat6.x = inversesqrt(u_xlat6.x);
					    u_xlat6.xyz = u_xlat6.xxx * in_NORMAL0.xyz;
					    u_xlati3 = unity_StereoEyeIndex;
					    u_xlat8.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].yyy;
					    u_xlat8.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].xxx + u_xlat8.xyz;
					    u_xlat8.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].zzz + u_xlat8.xyz;
					    u_xlat8.xyz = u_xlat8.xyz + unity_WorldToObject[3].xyz;
					    u_xlat8.xyz = u_xlat8.xyz + (-in_POSITION0.xyz);
					    u_xlat4 = dot(u_xlat8.xyz, u_xlat8.xyz);
					    u_xlat4 = inversesqrt(u_xlat4);
					    u_xlat8.xyz = u_xlat8.xyz * vec3(u_xlat4);
					    u_xlat6.x = dot(u_xlat6.xyz, u_xlat8.xyz);
					    u_xlat6.x = log2(abs(u_xlat6.x));
					    u_xlat6.x = u_xlat6.x * _FresnelStr;
					    u_xlat6.x = exp2(u_xlat6.x);
					    u_xlat6.x = u_xlat6.x + u_xlat6.x;
					    vs_TEXCOORD4 = min(u_xlat6.x, 1.0);
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat5 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat5;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlat10.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati3].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati3].xy + u_xlat10.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendAdd" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					float u_xlat14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat14 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat2.xyz = vec3(u_xlat14) * u_xlat2.xyz;
					    u_xlat14 = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat3.xyz = vec3(u_xlat14) * in_NORMAL0.xyz;
					    u_xlat2.x = dot(u_xlat3.xyz, u_xlat2.xyz);
					    u_xlat2.x = log2(abs(u_xlat2.x));
					    u_xlat2.x = u_xlat2.x * _FresnelStr;
					    u_xlat2.x = exp2(u_xlat2.x);
					    u_xlat2.x = u_xlat2.x + u_xlat2.x;
					    vs_TEXCOORD4 = min(u_xlat2.x, 1.0);
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat4 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_3_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati1;
					vec4 u_xlat2;
					int u_xlati3;
					float u_xlat4;
					float u_xlat5;
					vec3 u_xlat6;
					vec3 u_xlat8;
					vec2 u_xlat10;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat6.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat6.x = inversesqrt(u_xlat6.x);
					    u_xlat6.xyz = u_xlat6.xxx * in_NORMAL0.xyz;
					    u_xlati3 = unity_StereoEyeIndex;
					    u_xlat8.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].yyy;
					    u_xlat8.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].xxx + u_xlat8.xyz;
					    u_xlat8.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].zzz + u_xlat8.xyz;
					    u_xlat8.xyz = u_xlat8.xyz + unity_WorldToObject[3].xyz;
					    u_xlat8.xyz = u_xlat8.xyz + (-in_POSITION0.xyz);
					    u_xlat4 = dot(u_xlat8.xyz, u_xlat8.xyz);
					    u_xlat4 = inversesqrt(u_xlat4);
					    u_xlat8.xyz = u_xlat8.xyz * vec3(u_xlat4);
					    u_xlat6.x = dot(u_xlat6.xyz, u_xlat8.xyz);
					    u_xlat6.x = log2(abs(u_xlat6.x));
					    u_xlat6.x = u_xlat6.x * _FresnelStr;
					    u_xlat6.x = exp2(u_xlat6.x);
					    u_xlat6.x = u_xlat6.x + u_xlat6.x;
					    vs_TEXCOORD4 = min(u_xlat6.x, 1.0);
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat5 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat5;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlat10.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati3].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati3].xy + u_xlat10.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendAdd" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					float u_xlat14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat14 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat2.xyz = vec3(u_xlat14) * u_xlat2.xyz;
					    u_xlat14 = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat3.xyz = vec3(u_xlat14) * in_NORMAL0.xyz;
					    u_xlat2.x = dot(u_xlat3.xyz, u_xlat2.xyz);
					    u_xlat2.x = log2(abs(u_xlat2.x));
					    u_xlat2.x = u_xlat2.x * _FresnelStr;
					    u_xlat2.x = exp2(u_xlat2.x);
					    u_xlat2.x = u_xlat2.x + u_xlat2.x;
					    vs_TEXCOORD4 = min(u_xlat2.x, 1.0);
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat4 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_3_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati1;
					vec4 u_xlat2;
					int u_xlati3;
					float u_xlat4;
					float u_xlat5;
					vec3 u_xlat6;
					vec3 u_xlat8;
					vec2 u_xlat10;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat6.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat6.x = inversesqrt(u_xlat6.x);
					    u_xlat6.xyz = u_xlat6.xxx * in_NORMAL0.xyz;
					    u_xlati3 = unity_StereoEyeIndex;
					    u_xlat8.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].yyy;
					    u_xlat8.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].xxx + u_xlat8.xyz;
					    u_xlat8.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].zzz + u_xlat8.xyz;
					    u_xlat8.xyz = u_xlat8.xyz + unity_WorldToObject[3].xyz;
					    u_xlat8.xyz = u_xlat8.xyz + (-in_POSITION0.xyz);
					    u_xlat4 = dot(u_xlat8.xyz, u_xlat8.xyz);
					    u_xlat4 = inversesqrt(u_xlat4);
					    u_xlat8.xyz = u_xlat8.xyz * vec3(u_xlat4);
					    u_xlat6.x = dot(u_xlat6.xyz, u_xlat8.xyz);
					    u_xlat6.x = log2(abs(u_xlat6.x));
					    u_xlat6.x = u_xlat6.x * _FresnelStr;
					    u_xlat6.x = exp2(u_xlat6.x);
					    u_xlat6.x = u_xlat6.x + u_xlat6.x;
					    vs_TEXCOORD4 = min(u_xlat6.x, 1.0);
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat5 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat5;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlat10.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati3].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati3].xy + u_xlat10.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendAdd" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					float u_xlat9;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat9 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat9 = inversesqrt(u_xlat9);
					    u_xlat2.xyz = vec3(u_xlat9) * u_xlat2.xyz;
					    u_xlat9 = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat9 = inversesqrt(u_xlat9);
					    u_xlat3.xyz = vec3(u_xlat9) * in_NORMAL0.xyz;
					    u_xlat9 = dot(u_xlat3.xyz, u_xlat2.xyz);
					    u_xlat9 = log2(abs(u_xlat9));
					    u_xlat9 = u_xlat9 * _FresnelStr;
					    u_xlat9 = exp2(u_xlat9);
					    u_xlat9 = u_xlat9 + u_xlat9;
					    vs_TEXCOORD4 = min(u_xlat9, 1.0);
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    u_xlat4 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_3_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					vec3 u_xlat5;
					vec2 u_xlat8;
					int u_xlati10;
					float u_xlat15;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat5.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat5.x = inversesqrt(u_xlat5.x);
					    u_xlat5.xyz = u_xlat5.xxx * in_NORMAL0.xyz;
					    u_xlati10 = unity_StereoEyeIndex;
					    u_xlat3.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati10].yyy;
					    u_xlat3.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati10].xxx + u_xlat3.xyz;
					    u_xlat3.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati10].zzz + u_xlat3.xyz;
					    u_xlat3.xyz = u_xlat3.xyz + unity_WorldToObject[3].xyz;
					    u_xlat3.xyz = u_xlat3.xyz + (-in_POSITION0.xyz);
					    u_xlat15 = dot(u_xlat3.xyz, u_xlat3.xyz);
					    u_xlat15 = inversesqrt(u_xlat15);
					    u_xlat3.xyz = vec3(u_xlat15) * u_xlat3.xyz;
					    u_xlat5.x = dot(u_xlat5.xyz, u_xlat3.xyz);
					    u_xlat5.x = log2(abs(u_xlat5.x));
					    u_xlat5.x = u_xlat5.x * _FresnelStr;
					    u_xlat5.x = exp2(u_xlat5.x);
					    u_xlat5.x = u_xlat5.x + u_xlat5.x;
					    vs_TEXCOORD4 = min(u_xlat5.x, 1.0);
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    u_xlat4 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlat8.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati10].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati10].xy + u_xlat8.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendAdd" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					float u_xlat9;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat9 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat9 = inversesqrt(u_xlat9);
					    u_xlat2.xyz = vec3(u_xlat9) * u_xlat2.xyz;
					    u_xlat9 = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat9 = inversesqrt(u_xlat9);
					    u_xlat3.xyz = vec3(u_xlat9) * in_NORMAL0.xyz;
					    u_xlat9 = dot(u_xlat3.xyz, u_xlat2.xyz);
					    u_xlat9 = log2(abs(u_xlat9));
					    u_xlat9 = u_xlat9 * _FresnelStr;
					    u_xlat9 = exp2(u_xlat9);
					    u_xlat9 = u_xlat9 + u_xlat9;
					    vs_TEXCOORD4 = min(u_xlat9, 1.0);
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    u_xlat4 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_3_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					vec3 u_xlat5;
					vec2 u_xlat8;
					int u_xlati10;
					float u_xlat15;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat5.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat5.x = inversesqrt(u_xlat5.x);
					    u_xlat5.xyz = u_xlat5.xxx * in_NORMAL0.xyz;
					    u_xlati10 = unity_StereoEyeIndex;
					    u_xlat3.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati10].yyy;
					    u_xlat3.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati10].xxx + u_xlat3.xyz;
					    u_xlat3.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati10].zzz + u_xlat3.xyz;
					    u_xlat3.xyz = u_xlat3.xyz + unity_WorldToObject[3].xyz;
					    u_xlat3.xyz = u_xlat3.xyz + (-in_POSITION0.xyz);
					    u_xlat15 = dot(u_xlat3.xyz, u_xlat3.xyz);
					    u_xlat15 = inversesqrt(u_xlat15);
					    u_xlat3.xyz = vec3(u_xlat15) * u_xlat3.xyz;
					    u_xlat5.x = dot(u_xlat5.xyz, u_xlat3.xyz);
					    u_xlat5.x = log2(abs(u_xlat5.x));
					    u_xlat5.x = u_xlat5.x * _FresnelStr;
					    u_xlat5.x = exp2(u_xlat5.x);
					    u_xlat5.x = u_xlat5.x + u_xlat5.x;
					    vs_TEXCOORD4 = min(u_xlat5.x, 1.0);
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    u_xlat4 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlat8.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati10].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati10].xy + u_xlat8.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendAdd" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					float u_xlat14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat14 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat2.xyz = vec3(u_xlat14) * u_xlat2.xyz;
					    u_xlat14 = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat3.xyz = vec3(u_xlat14) * in_NORMAL0.xyz;
					    u_xlat2.x = dot(u_xlat3.xyz, u_xlat2.xyz);
					    u_xlat2.x = log2(abs(u_xlat2.x));
					    u_xlat2.x = u_xlat2.x * _FresnelStr;
					    u_xlat2.x = exp2(u_xlat2.x);
					    u_xlat2.x = u_xlat2.x + u_xlat2.x;
					    vs_TEXCOORD4 = min(u_xlat2.x, 1.0);
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat4 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_3_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati1;
					vec4 u_xlat2;
					int u_xlati3;
					float u_xlat4;
					float u_xlat5;
					vec3 u_xlat6;
					vec3 u_xlat8;
					vec2 u_xlat10;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat6.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat6.x = inversesqrt(u_xlat6.x);
					    u_xlat6.xyz = u_xlat6.xxx * in_NORMAL0.xyz;
					    u_xlati3 = unity_StereoEyeIndex;
					    u_xlat8.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].yyy;
					    u_xlat8.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].xxx + u_xlat8.xyz;
					    u_xlat8.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].zzz + u_xlat8.xyz;
					    u_xlat8.xyz = u_xlat8.xyz + unity_WorldToObject[3].xyz;
					    u_xlat8.xyz = u_xlat8.xyz + (-in_POSITION0.xyz);
					    u_xlat4 = dot(u_xlat8.xyz, u_xlat8.xyz);
					    u_xlat4 = inversesqrt(u_xlat4);
					    u_xlat8.xyz = u_xlat8.xyz * vec3(u_xlat4);
					    u_xlat6.x = dot(u_xlat6.xyz, u_xlat8.xyz);
					    u_xlat6.x = log2(abs(u_xlat6.x));
					    u_xlat6.x = u_xlat6.x * _FresnelStr;
					    u_xlat6.x = exp2(u_xlat6.x);
					    u_xlat6.x = u_xlat6.x + u_xlat6.x;
					    vs_TEXCOORD4 = min(u_xlat6.x, 1.0);
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat5 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat5;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlat10.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati3].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati3].xy + u_xlat10.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendAdd" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					float u_xlat14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat14 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat2.xyz = vec3(u_xlat14) * u_xlat2.xyz;
					    u_xlat14 = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat3.xyz = vec3(u_xlat14) * in_NORMAL0.xyz;
					    u_xlat2.x = dot(u_xlat3.xyz, u_xlat2.xyz);
					    u_xlat2.x = log2(abs(u_xlat2.x));
					    u_xlat2.x = u_xlat2.x * _FresnelStr;
					    u_xlat2.x = exp2(u_xlat2.x);
					    u_xlat2.x = u_xlat2.x + u_xlat2.x;
					    vs_TEXCOORD4 = min(u_xlat2.x, 1.0);
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat4 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_3_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati1;
					vec4 u_xlat2;
					int u_xlati3;
					float u_xlat4;
					float u_xlat5;
					vec3 u_xlat6;
					vec3 u_xlat8;
					vec2 u_xlat10;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat6.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat6.x = inversesqrt(u_xlat6.x);
					    u_xlat6.xyz = u_xlat6.xxx * in_NORMAL0.xyz;
					    u_xlati3 = unity_StereoEyeIndex;
					    u_xlat8.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].yyy;
					    u_xlat8.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].xxx + u_xlat8.xyz;
					    u_xlat8.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].zzz + u_xlat8.xyz;
					    u_xlat8.xyz = u_xlat8.xyz + unity_WorldToObject[3].xyz;
					    u_xlat8.xyz = u_xlat8.xyz + (-in_POSITION0.xyz);
					    u_xlat4 = dot(u_xlat8.xyz, u_xlat8.xyz);
					    u_xlat4 = inversesqrt(u_xlat4);
					    u_xlat8.xyz = u_xlat8.xyz * vec3(u_xlat4);
					    u_xlat6.x = dot(u_xlat6.xyz, u_xlat8.xyz);
					    u_xlat6.x = log2(abs(u_xlat6.x));
					    u_xlat6.x = u_xlat6.x * _FresnelStr;
					    u_xlat6.x = exp2(u_xlat6.x);
					    u_xlat6.x = u_xlat6.x + u_xlat6.x;
					    vs_TEXCOORD4 = min(u_xlat6.x, 1.0);
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat5 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat5;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlat10.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati3].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati3].xy + u_xlat10.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendAdd" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					float u_xlat14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat14 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat2.xyz = vec3(u_xlat14) * u_xlat2.xyz;
					    u_xlat14 = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat3.xyz = vec3(u_xlat14) * in_NORMAL0.xyz;
					    u_xlat2.x = dot(u_xlat3.xyz, u_xlat2.xyz);
					    u_xlat2.x = log2(abs(u_xlat2.x));
					    u_xlat2.x = u_xlat2.x * _FresnelStr;
					    u_xlat2.x = exp2(u_xlat2.x);
					    u_xlat2.x = u_xlat2.x + u_xlat2.x;
					    vs_TEXCOORD4 = min(u_xlat2.x, 1.0);
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat4 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_3_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati1;
					vec4 u_xlat2;
					int u_xlati3;
					float u_xlat4;
					float u_xlat5;
					vec3 u_xlat6;
					vec3 u_xlat8;
					vec2 u_xlat10;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat6.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat6.x = inversesqrt(u_xlat6.x);
					    u_xlat6.xyz = u_xlat6.xxx * in_NORMAL0.xyz;
					    u_xlati3 = unity_StereoEyeIndex;
					    u_xlat8.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].yyy;
					    u_xlat8.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].xxx + u_xlat8.xyz;
					    u_xlat8.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].zzz + u_xlat8.xyz;
					    u_xlat8.xyz = u_xlat8.xyz + unity_WorldToObject[3].xyz;
					    u_xlat8.xyz = u_xlat8.xyz + (-in_POSITION0.xyz);
					    u_xlat4 = dot(u_xlat8.xyz, u_xlat8.xyz);
					    u_xlat4 = inversesqrt(u_xlat4);
					    u_xlat8.xyz = u_xlat8.xyz * vec3(u_xlat4);
					    u_xlat6.x = dot(u_xlat6.xyz, u_xlat8.xyz);
					    u_xlat6.x = log2(abs(u_xlat6.x));
					    u_xlat6.x = u_xlat6.x * _FresnelStr;
					    u_xlat6.x = exp2(u_xlat6.x);
					    u_xlat6.x = u_xlat6.x + u_xlat6.x;
					    vs_TEXCOORD4 = min(u_xlat6.x, 1.0);
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat5 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat5;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlat10.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati3].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati3].xy + u_xlat10.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendAdd" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					float u_xlat14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat14 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat2.xyz = vec3(u_xlat14) * u_xlat2.xyz;
					    u_xlat14 = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat3.xyz = vec3(u_xlat14) * in_NORMAL0.xyz;
					    u_xlat2.x = dot(u_xlat3.xyz, u_xlat2.xyz);
					    u_xlat2.x = log2(abs(u_xlat2.x));
					    u_xlat2.x = u_xlat2.x * _FresnelStr;
					    u_xlat2.x = exp2(u_xlat2.x);
					    u_xlat2.x = u_xlat2.x + u_xlat2.x;
					    vs_TEXCOORD4 = min(u_xlat2.x, 1.0);
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat4 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_3_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati1;
					vec4 u_xlat2;
					int u_xlati3;
					float u_xlat4;
					float u_xlat5;
					vec3 u_xlat6;
					vec3 u_xlat8;
					vec2 u_xlat10;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat6.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat6.x = inversesqrt(u_xlat6.x);
					    u_xlat6.xyz = u_xlat6.xxx * in_NORMAL0.xyz;
					    u_xlati3 = unity_StereoEyeIndex;
					    u_xlat8.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].yyy;
					    u_xlat8.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].xxx + u_xlat8.xyz;
					    u_xlat8.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].zzz + u_xlat8.xyz;
					    u_xlat8.xyz = u_xlat8.xyz + unity_WorldToObject[3].xyz;
					    u_xlat8.xyz = u_xlat8.xyz + (-in_POSITION0.xyz);
					    u_xlat4 = dot(u_xlat8.xyz, u_xlat8.xyz);
					    u_xlat4 = inversesqrt(u_xlat4);
					    u_xlat8.xyz = u_xlat8.xyz * vec3(u_xlat4);
					    u_xlat6.x = dot(u_xlat6.xyz, u_xlat8.xyz);
					    u_xlat6.x = log2(abs(u_xlat6.x));
					    u_xlat6.x = u_xlat6.x * _FresnelStr;
					    u_xlat6.x = exp2(u_xlat6.x);
					    u_xlat6.x = u_xlat6.x + u_xlat6.x;
					    vs_TEXCOORD4 = min(u_xlat6.x, 1.0);
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat5 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat5;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlat10.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati3].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati3].xy + u_xlat10.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendAdd" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					float u_xlat14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat14 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat2.xyz = vec3(u_xlat14) * u_xlat2.xyz;
					    u_xlat14 = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat3.xyz = vec3(u_xlat14) * in_NORMAL0.xyz;
					    u_xlat2.x = dot(u_xlat3.xyz, u_xlat2.xyz);
					    u_xlat2.x = log2(abs(u_xlat2.x));
					    u_xlat2.x = u_xlat2.x * _FresnelStr;
					    u_xlat2.x = exp2(u_xlat2.x);
					    u_xlat2.x = u_xlat2.x + u_xlat2.x;
					    vs_TEXCOORD4 = min(u_xlat2.x, 1.0);
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat4 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_3_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati1;
					vec4 u_xlat2;
					int u_xlati3;
					float u_xlat4;
					float u_xlat5;
					vec3 u_xlat6;
					vec3 u_xlat8;
					vec2 u_xlat10;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat6.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat6.x = inversesqrt(u_xlat6.x);
					    u_xlat6.xyz = u_xlat6.xxx * in_NORMAL0.xyz;
					    u_xlati3 = unity_StereoEyeIndex;
					    u_xlat8.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].yyy;
					    u_xlat8.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].xxx + u_xlat8.xyz;
					    u_xlat8.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].zzz + u_xlat8.xyz;
					    u_xlat8.xyz = u_xlat8.xyz + unity_WorldToObject[3].xyz;
					    u_xlat8.xyz = u_xlat8.xyz + (-in_POSITION0.xyz);
					    u_xlat4 = dot(u_xlat8.xyz, u_xlat8.xyz);
					    u_xlat4 = inversesqrt(u_xlat4);
					    u_xlat8.xyz = u_xlat8.xyz * vec3(u_xlat4);
					    u_xlat6.x = dot(u_xlat6.xyz, u_xlat8.xyz);
					    u_xlat6.x = log2(abs(u_xlat6.x));
					    u_xlat6.x = u_xlat6.x * _FresnelStr;
					    u_xlat6.x = exp2(u_xlat6.x);
					    u_xlat6.x = u_xlat6.x + u_xlat6.x;
					    vs_TEXCOORD4 = min(u_xlat6.x, 1.0);
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat5 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat5;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlat10.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati3].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati3].xy + u_xlat10.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendAdd" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					float u_xlat14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat14 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat2.xyz = vec3(u_xlat14) * u_xlat2.xyz;
					    u_xlat14 = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat3.xyz = vec3(u_xlat14) * in_NORMAL0.xyz;
					    u_xlat2.x = dot(u_xlat3.xyz, u_xlat2.xyz);
					    u_xlat2.x = log2(abs(u_xlat2.x));
					    u_xlat2.x = u_xlat2.x * _FresnelStr;
					    u_xlat2.x = exp2(u_xlat2.x);
					    u_xlat2.x = u_xlat2.x + u_xlat2.x;
					    vs_TEXCOORD4 = min(u_xlat2.x, 1.0);
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat4 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_3_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati1;
					vec4 u_xlat2;
					int u_xlati3;
					float u_xlat4;
					float u_xlat5;
					vec3 u_xlat6;
					vec3 u_xlat8;
					vec2 u_xlat10;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat6.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat6.x = inversesqrt(u_xlat6.x);
					    u_xlat6.xyz = u_xlat6.xxx * in_NORMAL0.xyz;
					    u_xlati3 = unity_StereoEyeIndex;
					    u_xlat8.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].yyy;
					    u_xlat8.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].xxx + u_xlat8.xyz;
					    u_xlat8.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].zzz + u_xlat8.xyz;
					    u_xlat8.xyz = u_xlat8.xyz + unity_WorldToObject[3].xyz;
					    u_xlat8.xyz = u_xlat8.xyz + (-in_POSITION0.xyz);
					    u_xlat4 = dot(u_xlat8.xyz, u_xlat8.xyz);
					    u_xlat4 = inversesqrt(u_xlat4);
					    u_xlat8.xyz = u_xlat8.xyz * vec3(u_xlat4);
					    u_xlat6.x = dot(u_xlat6.xyz, u_xlat8.xyz);
					    u_xlat6.x = log2(abs(u_xlat6.x));
					    u_xlat6.x = u_xlat6.x * _FresnelStr;
					    u_xlat6.x = exp2(u_xlat6.x);
					    u_xlat6.x = u_xlat6.x + u_xlat6.x;
					    vs_TEXCOORD4 = min(u_xlat6.x, 1.0);
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat5 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat5;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlat10.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati3].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati3].xy + u_xlat10.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendAdd" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    u_xlat2 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat2;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec2 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					float u_xlat3;
					int u_xlati6;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    u_xlat3 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat3;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlati6 = unity_StereoEyeIndex;
					    u_xlat1.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati6].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati6].xy + u_xlat1.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendAdd" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    u_xlat2 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat2;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec2 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					float u_xlat3;
					int u_xlati6;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    u_xlat3 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat3;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlati6 = unity_StereoEyeIndex;
					    u_xlat1.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati6].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati6].xy + u_xlat1.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendAdd" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat2 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat2;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec2 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					float u_xlat3;
					int u_xlati6;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat3 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat3;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlati6 = unity_StereoEyeIndex;
					    u_xlat1.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati6].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati6].xy + u_xlat1.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendAdd" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat2 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat2;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec2 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					float u_xlat3;
					int u_xlati6;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat3 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat3;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlati6 = unity_StereoEyeIndex;
					    u_xlat1.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati6].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati6].xy + u_xlat1.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendAdd" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat2 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat2;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec2 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					float u_xlat3;
					int u_xlati6;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat3 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat3;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlati6 = unity_StereoEyeIndex;
					    u_xlat1.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati6].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati6].xy + u_xlat1.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendAdd" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat2 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat2;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec2 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					float u_xlat3;
					int u_xlati6;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat3 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat3;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlati6 = unity_StereoEyeIndex;
					    u_xlat1.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati6].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati6].xy + u_xlat1.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendAdd" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat2 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat2;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec2 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					float u_xlat3;
					int u_xlati6;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat3 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat3;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlati6 = unity_StereoEyeIndex;
					    u_xlat1.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati6].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati6].xy + u_xlat1.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendAdd" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat2 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat2;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec2 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					float u_xlat3;
					int u_xlati6;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat3 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat3;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlati6 = unity_StereoEyeIndex;
					    u_xlat1.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati6].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati6].xy + u_xlat1.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendAdd" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    u_xlat2 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat2;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec2 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					float u_xlat3;
					int u_xlati6;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    u_xlat3 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat3;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlati6 = unity_StereoEyeIndex;
					    u_xlat1.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati6].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati6].xy + u_xlat1.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendAdd" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    u_xlat2 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat2;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec2 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					float u_xlat3;
					int u_xlati6;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    u_xlat3 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat3;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlati6 = unity_StereoEyeIndex;
					    u_xlat1.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati6].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati6].xy + u_xlat1.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendAdd" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat2 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat2;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec2 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					float u_xlat3;
					int u_xlati6;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat3 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat3;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlati6 = unity_StereoEyeIndex;
					    u_xlat1.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati6].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati6].xy + u_xlat1.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendAdd" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat2 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat2;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec2 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					float u_xlat3;
					int u_xlati6;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat3 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat3;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlati6 = unity_StereoEyeIndex;
					    u_xlat1.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati6].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati6].xy + u_xlat1.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendAdd" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat2 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat2;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec2 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					float u_xlat3;
					int u_xlati6;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat3 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat3;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlati6 = unity_StereoEyeIndex;
					    u_xlat1.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati6].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati6].xy + u_xlat1.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendAdd" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat2 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat2;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec2 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					float u_xlat3;
					int u_xlati6;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat3 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat3;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlati6 = unity_StereoEyeIndex;
					    u_xlat1.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati6].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati6].xy + u_xlat1.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendAdd" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat2 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat2;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec2 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					float u_xlat3;
					int u_xlati6;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat3 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat3;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlati6 = unity_StereoEyeIndex;
					    u_xlat1.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati6].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati6].xy + u_xlat1.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendAdd" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat2 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat2;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec2 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					float u_xlat3;
					int u_xlati6;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat3 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat3;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlati6 = unity_StereoEyeIndex;
					    u_xlat1.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati6].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati6].xy + u_xlat1.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendAdd" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					float u_xlat9;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat9 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat9 = inversesqrt(u_xlat9);
					    u_xlat2.xyz = vec3(u_xlat9) * u_xlat2.xyz;
					    u_xlat9 = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat9 = inversesqrt(u_xlat9);
					    u_xlat3.xyz = vec3(u_xlat9) * in_NORMAL0.xyz;
					    u_xlat9 = dot(u_xlat3.xyz, u_xlat2.xyz);
					    u_xlat9 = log2(abs(u_xlat9));
					    u_xlat9 = u_xlat9 * _FresnelStr;
					    u_xlat9 = exp2(u_xlat9);
					    u_xlat9 = u_xlat9 + u_xlat9;
					    vs_TEXCOORD4 = min(u_xlat9, 1.0);
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    u_xlat4 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_3_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					vec3 u_xlat5;
					vec2 u_xlat8;
					int u_xlati10;
					float u_xlat15;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat5.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat5.x = inversesqrt(u_xlat5.x);
					    u_xlat5.xyz = u_xlat5.xxx * in_NORMAL0.xyz;
					    u_xlati10 = unity_StereoEyeIndex;
					    u_xlat3.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati10].yyy;
					    u_xlat3.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati10].xxx + u_xlat3.xyz;
					    u_xlat3.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati10].zzz + u_xlat3.xyz;
					    u_xlat3.xyz = u_xlat3.xyz + unity_WorldToObject[3].xyz;
					    u_xlat3.xyz = u_xlat3.xyz + (-in_POSITION0.xyz);
					    u_xlat15 = dot(u_xlat3.xyz, u_xlat3.xyz);
					    u_xlat15 = inversesqrt(u_xlat15);
					    u_xlat3.xyz = vec3(u_xlat15) * u_xlat3.xyz;
					    u_xlat5.x = dot(u_xlat5.xyz, u_xlat3.xyz);
					    u_xlat5.x = log2(abs(u_xlat5.x));
					    u_xlat5.x = u_xlat5.x * _FresnelStr;
					    u_xlat5.x = exp2(u_xlat5.x);
					    u_xlat5.x = u_xlat5.x + u_xlat5.x;
					    vs_TEXCOORD4 = min(u_xlat5.x, 1.0);
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    u_xlat4 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlat8.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati10].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati10].xy + u_xlat8.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendAdd" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					float u_xlat9;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat9 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat9 = inversesqrt(u_xlat9);
					    u_xlat2.xyz = vec3(u_xlat9) * u_xlat2.xyz;
					    u_xlat9 = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat9 = inversesqrt(u_xlat9);
					    u_xlat3.xyz = vec3(u_xlat9) * in_NORMAL0.xyz;
					    u_xlat9 = dot(u_xlat3.xyz, u_xlat2.xyz);
					    u_xlat9 = log2(abs(u_xlat9));
					    u_xlat9 = u_xlat9 * _FresnelStr;
					    u_xlat9 = exp2(u_xlat9);
					    u_xlat9 = u_xlat9 + u_xlat9;
					    vs_TEXCOORD4 = min(u_xlat9, 1.0);
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    u_xlat4 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_3_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					vec3 u_xlat5;
					vec2 u_xlat8;
					int u_xlati10;
					float u_xlat15;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat5.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat5.x = inversesqrt(u_xlat5.x);
					    u_xlat5.xyz = u_xlat5.xxx * in_NORMAL0.xyz;
					    u_xlati10 = unity_StereoEyeIndex;
					    u_xlat3.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati10].yyy;
					    u_xlat3.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati10].xxx + u_xlat3.xyz;
					    u_xlat3.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati10].zzz + u_xlat3.xyz;
					    u_xlat3.xyz = u_xlat3.xyz + unity_WorldToObject[3].xyz;
					    u_xlat3.xyz = u_xlat3.xyz + (-in_POSITION0.xyz);
					    u_xlat15 = dot(u_xlat3.xyz, u_xlat3.xyz);
					    u_xlat15 = inversesqrt(u_xlat15);
					    u_xlat3.xyz = vec3(u_xlat15) * u_xlat3.xyz;
					    u_xlat5.x = dot(u_xlat5.xyz, u_xlat3.xyz);
					    u_xlat5.x = log2(abs(u_xlat5.x));
					    u_xlat5.x = u_xlat5.x * _FresnelStr;
					    u_xlat5.x = exp2(u_xlat5.x);
					    u_xlat5.x = u_xlat5.x + u_xlat5.x;
					    vs_TEXCOORD4 = min(u_xlat5.x, 1.0);
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    u_xlat4 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlat8.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati10].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati10].xy + u_xlat8.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendAdd" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					float u_xlat14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat14 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat2.xyz = vec3(u_xlat14) * u_xlat2.xyz;
					    u_xlat14 = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat3.xyz = vec3(u_xlat14) * in_NORMAL0.xyz;
					    u_xlat2.x = dot(u_xlat3.xyz, u_xlat2.xyz);
					    u_xlat2.x = log2(abs(u_xlat2.x));
					    u_xlat2.x = u_xlat2.x * _FresnelStr;
					    u_xlat2.x = exp2(u_xlat2.x);
					    u_xlat2.x = u_xlat2.x + u_xlat2.x;
					    vs_TEXCOORD4 = min(u_xlat2.x, 1.0);
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat4 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_3_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati1;
					vec4 u_xlat2;
					int u_xlati3;
					float u_xlat4;
					float u_xlat5;
					vec3 u_xlat6;
					vec3 u_xlat8;
					vec2 u_xlat10;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat6.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat6.x = inversesqrt(u_xlat6.x);
					    u_xlat6.xyz = u_xlat6.xxx * in_NORMAL0.xyz;
					    u_xlati3 = unity_StereoEyeIndex;
					    u_xlat8.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].yyy;
					    u_xlat8.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].xxx + u_xlat8.xyz;
					    u_xlat8.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].zzz + u_xlat8.xyz;
					    u_xlat8.xyz = u_xlat8.xyz + unity_WorldToObject[3].xyz;
					    u_xlat8.xyz = u_xlat8.xyz + (-in_POSITION0.xyz);
					    u_xlat4 = dot(u_xlat8.xyz, u_xlat8.xyz);
					    u_xlat4 = inversesqrt(u_xlat4);
					    u_xlat8.xyz = u_xlat8.xyz * vec3(u_xlat4);
					    u_xlat6.x = dot(u_xlat6.xyz, u_xlat8.xyz);
					    u_xlat6.x = log2(abs(u_xlat6.x));
					    u_xlat6.x = u_xlat6.x * _FresnelStr;
					    u_xlat6.x = exp2(u_xlat6.x);
					    u_xlat6.x = u_xlat6.x + u_xlat6.x;
					    vs_TEXCOORD4 = min(u_xlat6.x, 1.0);
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat5 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat5;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlat10.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati3].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati3].xy + u_xlat10.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendAdd" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					float u_xlat14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat14 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat2.xyz = vec3(u_xlat14) * u_xlat2.xyz;
					    u_xlat14 = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat3.xyz = vec3(u_xlat14) * in_NORMAL0.xyz;
					    u_xlat2.x = dot(u_xlat3.xyz, u_xlat2.xyz);
					    u_xlat2.x = log2(abs(u_xlat2.x));
					    u_xlat2.x = u_xlat2.x * _FresnelStr;
					    u_xlat2.x = exp2(u_xlat2.x);
					    u_xlat2.x = u_xlat2.x + u_xlat2.x;
					    vs_TEXCOORD4 = min(u_xlat2.x, 1.0);
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat4 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_3_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati1;
					vec4 u_xlat2;
					int u_xlati3;
					float u_xlat4;
					float u_xlat5;
					vec3 u_xlat6;
					vec3 u_xlat8;
					vec2 u_xlat10;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat6.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat6.x = inversesqrt(u_xlat6.x);
					    u_xlat6.xyz = u_xlat6.xxx * in_NORMAL0.xyz;
					    u_xlati3 = unity_StereoEyeIndex;
					    u_xlat8.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].yyy;
					    u_xlat8.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].xxx + u_xlat8.xyz;
					    u_xlat8.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].zzz + u_xlat8.xyz;
					    u_xlat8.xyz = u_xlat8.xyz + unity_WorldToObject[3].xyz;
					    u_xlat8.xyz = u_xlat8.xyz + (-in_POSITION0.xyz);
					    u_xlat4 = dot(u_xlat8.xyz, u_xlat8.xyz);
					    u_xlat4 = inversesqrt(u_xlat4);
					    u_xlat8.xyz = u_xlat8.xyz * vec3(u_xlat4);
					    u_xlat6.x = dot(u_xlat6.xyz, u_xlat8.xyz);
					    u_xlat6.x = log2(abs(u_xlat6.x));
					    u_xlat6.x = u_xlat6.x * _FresnelStr;
					    u_xlat6.x = exp2(u_xlat6.x);
					    u_xlat6.x = u_xlat6.x + u_xlat6.x;
					    vs_TEXCOORD4 = min(u_xlat6.x, 1.0);
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat5 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat5;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlat10.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati3].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati3].xy + u_xlat10.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendAdd" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					float u_xlat14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat14 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat2.xyz = vec3(u_xlat14) * u_xlat2.xyz;
					    u_xlat14 = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat3.xyz = vec3(u_xlat14) * in_NORMAL0.xyz;
					    u_xlat2.x = dot(u_xlat3.xyz, u_xlat2.xyz);
					    u_xlat2.x = log2(abs(u_xlat2.x));
					    u_xlat2.x = u_xlat2.x * _FresnelStr;
					    u_xlat2.x = exp2(u_xlat2.x);
					    u_xlat2.x = u_xlat2.x + u_xlat2.x;
					    vs_TEXCOORD4 = min(u_xlat2.x, 1.0);
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat4 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_3_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati1;
					vec4 u_xlat2;
					int u_xlati3;
					float u_xlat4;
					float u_xlat5;
					vec3 u_xlat6;
					vec3 u_xlat8;
					vec2 u_xlat10;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat6.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat6.x = inversesqrt(u_xlat6.x);
					    u_xlat6.xyz = u_xlat6.xxx * in_NORMAL0.xyz;
					    u_xlati3 = unity_StereoEyeIndex;
					    u_xlat8.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].yyy;
					    u_xlat8.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].xxx + u_xlat8.xyz;
					    u_xlat8.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].zzz + u_xlat8.xyz;
					    u_xlat8.xyz = u_xlat8.xyz + unity_WorldToObject[3].xyz;
					    u_xlat8.xyz = u_xlat8.xyz + (-in_POSITION0.xyz);
					    u_xlat4 = dot(u_xlat8.xyz, u_xlat8.xyz);
					    u_xlat4 = inversesqrt(u_xlat4);
					    u_xlat8.xyz = u_xlat8.xyz * vec3(u_xlat4);
					    u_xlat6.x = dot(u_xlat6.xyz, u_xlat8.xyz);
					    u_xlat6.x = log2(abs(u_xlat6.x));
					    u_xlat6.x = u_xlat6.x * _FresnelStr;
					    u_xlat6.x = exp2(u_xlat6.x);
					    u_xlat6.x = u_xlat6.x + u_xlat6.x;
					    vs_TEXCOORD4 = min(u_xlat6.x, 1.0);
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat5 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat5;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlat10.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati3].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati3].xy + u_xlat10.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendAdd" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					float u_xlat14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat14 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat2.xyz = vec3(u_xlat14) * u_xlat2.xyz;
					    u_xlat14 = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat3.xyz = vec3(u_xlat14) * in_NORMAL0.xyz;
					    u_xlat2.x = dot(u_xlat3.xyz, u_xlat2.xyz);
					    u_xlat2.x = log2(abs(u_xlat2.x));
					    u_xlat2.x = u_xlat2.x * _FresnelStr;
					    u_xlat2.x = exp2(u_xlat2.x);
					    u_xlat2.x = u_xlat2.x + u_xlat2.x;
					    vs_TEXCOORD4 = min(u_xlat2.x, 1.0);
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat4 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_3_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati1;
					vec4 u_xlat2;
					int u_xlati3;
					float u_xlat4;
					float u_xlat5;
					vec3 u_xlat6;
					vec3 u_xlat8;
					vec2 u_xlat10;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat6.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat6.x = inversesqrt(u_xlat6.x);
					    u_xlat6.xyz = u_xlat6.xxx * in_NORMAL0.xyz;
					    u_xlati3 = unity_StereoEyeIndex;
					    u_xlat8.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].yyy;
					    u_xlat8.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].xxx + u_xlat8.xyz;
					    u_xlat8.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].zzz + u_xlat8.xyz;
					    u_xlat8.xyz = u_xlat8.xyz + unity_WorldToObject[3].xyz;
					    u_xlat8.xyz = u_xlat8.xyz + (-in_POSITION0.xyz);
					    u_xlat4 = dot(u_xlat8.xyz, u_xlat8.xyz);
					    u_xlat4 = inversesqrt(u_xlat4);
					    u_xlat8.xyz = u_xlat8.xyz * vec3(u_xlat4);
					    u_xlat6.x = dot(u_xlat6.xyz, u_xlat8.xyz);
					    u_xlat6.x = log2(abs(u_xlat6.x));
					    u_xlat6.x = u_xlat6.x * _FresnelStr;
					    u_xlat6.x = exp2(u_xlat6.x);
					    u_xlat6.x = u_xlat6.x + u_xlat6.x;
					    vs_TEXCOORD4 = min(u_xlat6.x, 1.0);
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat5 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat5;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlat10.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati3].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati3].xy + u_xlat10.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendAdd" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					float u_xlat14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat14 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat2.xyz = vec3(u_xlat14) * u_xlat2.xyz;
					    u_xlat14 = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat3.xyz = vec3(u_xlat14) * in_NORMAL0.xyz;
					    u_xlat2.x = dot(u_xlat3.xyz, u_xlat2.xyz);
					    u_xlat2.x = log2(abs(u_xlat2.x));
					    u_xlat2.x = u_xlat2.x * _FresnelStr;
					    u_xlat2.x = exp2(u_xlat2.x);
					    u_xlat2.x = u_xlat2.x + u_xlat2.x;
					    vs_TEXCOORD4 = min(u_xlat2.x, 1.0);
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat4 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_3_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati1;
					vec4 u_xlat2;
					int u_xlati3;
					float u_xlat4;
					float u_xlat5;
					vec3 u_xlat6;
					vec3 u_xlat8;
					vec2 u_xlat10;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat6.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat6.x = inversesqrt(u_xlat6.x);
					    u_xlat6.xyz = u_xlat6.xxx * in_NORMAL0.xyz;
					    u_xlati3 = unity_StereoEyeIndex;
					    u_xlat8.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].yyy;
					    u_xlat8.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].xxx + u_xlat8.xyz;
					    u_xlat8.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].zzz + u_xlat8.xyz;
					    u_xlat8.xyz = u_xlat8.xyz + unity_WorldToObject[3].xyz;
					    u_xlat8.xyz = u_xlat8.xyz + (-in_POSITION0.xyz);
					    u_xlat4 = dot(u_xlat8.xyz, u_xlat8.xyz);
					    u_xlat4 = inversesqrt(u_xlat4);
					    u_xlat8.xyz = u_xlat8.xyz * vec3(u_xlat4);
					    u_xlat6.x = dot(u_xlat6.xyz, u_xlat8.xyz);
					    u_xlat6.x = log2(abs(u_xlat6.x));
					    u_xlat6.x = u_xlat6.x * _FresnelStr;
					    u_xlat6.x = exp2(u_xlat6.x);
					    u_xlat6.x = u_xlat6.x + u_xlat6.x;
					    vs_TEXCOORD4 = min(u_xlat6.x, 1.0);
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat5 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat5;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlat10.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati3].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati3].xy + u_xlat10.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendAdd" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					float u_xlat14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat14 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat2.xyz = vec3(u_xlat14) * u_xlat2.xyz;
					    u_xlat14 = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat3.xyz = vec3(u_xlat14) * in_NORMAL0.xyz;
					    u_xlat2.x = dot(u_xlat3.xyz, u_xlat2.xyz);
					    u_xlat2.x = log2(abs(u_xlat2.x));
					    u_xlat2.x = u_xlat2.x * _FresnelStr;
					    u_xlat2.x = exp2(u_xlat2.x);
					    u_xlat2.x = u_xlat2.x + u_xlat2.x;
					    vs_TEXCOORD4 = min(u_xlat2.x, 1.0);
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat4 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_3_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati1;
					vec4 u_xlat2;
					int u_xlati3;
					float u_xlat4;
					float u_xlat5;
					vec3 u_xlat6;
					vec3 u_xlat8;
					vec2 u_xlat10;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat6.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat6.x = inversesqrt(u_xlat6.x);
					    u_xlat6.xyz = u_xlat6.xxx * in_NORMAL0.xyz;
					    u_xlati3 = unity_StereoEyeIndex;
					    u_xlat8.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].yyy;
					    u_xlat8.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].xxx + u_xlat8.xyz;
					    u_xlat8.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].zzz + u_xlat8.xyz;
					    u_xlat8.xyz = u_xlat8.xyz + unity_WorldToObject[3].xyz;
					    u_xlat8.xyz = u_xlat8.xyz + (-in_POSITION0.xyz);
					    u_xlat4 = dot(u_xlat8.xyz, u_xlat8.xyz);
					    u_xlat4 = inversesqrt(u_xlat4);
					    u_xlat8.xyz = u_xlat8.xyz * vec3(u_xlat4);
					    u_xlat6.x = dot(u_xlat6.xyz, u_xlat8.xyz);
					    u_xlat6.x = log2(abs(u_xlat6.x));
					    u_xlat6.x = u_xlat6.x * _FresnelStr;
					    u_xlat6.x = exp2(u_xlat6.x);
					    u_xlat6.x = u_xlat6.x + u_xlat6.x;
					    vs_TEXCOORD4 = min(u_xlat6.x, 1.0);
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat5 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat5;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlat10.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati3].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati3].xy + u_xlat10.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendAdd" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					float u_xlat9;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat9 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat9 = inversesqrt(u_xlat9);
					    u_xlat2.xyz = vec3(u_xlat9) * u_xlat2.xyz;
					    u_xlat9 = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat9 = inversesqrt(u_xlat9);
					    u_xlat3.xyz = vec3(u_xlat9) * in_NORMAL0.xyz;
					    u_xlat9 = dot(u_xlat3.xyz, u_xlat2.xyz);
					    u_xlat9 = log2(abs(u_xlat9));
					    u_xlat9 = u_xlat9 * _FresnelStr;
					    u_xlat9 = exp2(u_xlat9);
					    u_xlat9 = u_xlat9 + u_xlat9;
					    vs_TEXCOORD4 = min(u_xlat9, 1.0);
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    u_xlat4 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_3_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					vec3 u_xlat5;
					vec2 u_xlat8;
					int u_xlati10;
					float u_xlat15;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat5.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat5.x = inversesqrt(u_xlat5.x);
					    u_xlat5.xyz = u_xlat5.xxx * in_NORMAL0.xyz;
					    u_xlati10 = unity_StereoEyeIndex;
					    u_xlat3.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati10].yyy;
					    u_xlat3.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati10].xxx + u_xlat3.xyz;
					    u_xlat3.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati10].zzz + u_xlat3.xyz;
					    u_xlat3.xyz = u_xlat3.xyz + unity_WorldToObject[3].xyz;
					    u_xlat3.xyz = u_xlat3.xyz + (-in_POSITION0.xyz);
					    u_xlat15 = dot(u_xlat3.xyz, u_xlat3.xyz);
					    u_xlat15 = inversesqrt(u_xlat15);
					    u_xlat3.xyz = vec3(u_xlat15) * u_xlat3.xyz;
					    u_xlat5.x = dot(u_xlat5.xyz, u_xlat3.xyz);
					    u_xlat5.x = log2(abs(u_xlat5.x));
					    u_xlat5.x = u_xlat5.x * _FresnelStr;
					    u_xlat5.x = exp2(u_xlat5.x);
					    u_xlat5.x = u_xlat5.x + u_xlat5.x;
					    vs_TEXCOORD4 = min(u_xlat5.x, 1.0);
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    u_xlat4 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlat8.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati10].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati10].xy + u_xlat8.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendAdd" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					float u_xlat9;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat9 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat9 = inversesqrt(u_xlat9);
					    u_xlat2.xyz = vec3(u_xlat9) * u_xlat2.xyz;
					    u_xlat9 = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat9 = inversesqrt(u_xlat9);
					    u_xlat3.xyz = vec3(u_xlat9) * in_NORMAL0.xyz;
					    u_xlat9 = dot(u_xlat3.xyz, u_xlat2.xyz);
					    u_xlat9 = log2(abs(u_xlat9));
					    u_xlat9 = u_xlat9 * _FresnelStr;
					    u_xlat9 = exp2(u_xlat9);
					    u_xlat9 = u_xlat9 + u_xlat9;
					    vs_TEXCOORD4 = min(u_xlat9, 1.0);
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    u_xlat4 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_3_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					vec3 u_xlat5;
					vec2 u_xlat8;
					int u_xlati10;
					float u_xlat15;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat5.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat5.x = inversesqrt(u_xlat5.x);
					    u_xlat5.xyz = u_xlat5.xxx * in_NORMAL0.xyz;
					    u_xlati10 = unity_StereoEyeIndex;
					    u_xlat3.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati10].yyy;
					    u_xlat3.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati10].xxx + u_xlat3.xyz;
					    u_xlat3.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati10].zzz + u_xlat3.xyz;
					    u_xlat3.xyz = u_xlat3.xyz + unity_WorldToObject[3].xyz;
					    u_xlat3.xyz = u_xlat3.xyz + (-in_POSITION0.xyz);
					    u_xlat15 = dot(u_xlat3.xyz, u_xlat3.xyz);
					    u_xlat15 = inversesqrt(u_xlat15);
					    u_xlat3.xyz = vec3(u_xlat15) * u_xlat3.xyz;
					    u_xlat5.x = dot(u_xlat5.xyz, u_xlat3.xyz);
					    u_xlat5.x = log2(abs(u_xlat5.x));
					    u_xlat5.x = u_xlat5.x * _FresnelStr;
					    u_xlat5.x = exp2(u_xlat5.x);
					    u_xlat5.x = u_xlat5.x + u_xlat5.x;
					    vs_TEXCOORD4 = min(u_xlat5.x, 1.0);
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    u_xlat4 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlat8.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati10].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati10].xy + u_xlat8.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendAdd" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					float u_xlat14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat14 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat2.xyz = vec3(u_xlat14) * u_xlat2.xyz;
					    u_xlat14 = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat3.xyz = vec3(u_xlat14) * in_NORMAL0.xyz;
					    u_xlat2.x = dot(u_xlat3.xyz, u_xlat2.xyz);
					    u_xlat2.x = log2(abs(u_xlat2.x));
					    u_xlat2.x = u_xlat2.x * _FresnelStr;
					    u_xlat2.x = exp2(u_xlat2.x);
					    u_xlat2.x = u_xlat2.x + u_xlat2.x;
					    vs_TEXCOORD4 = min(u_xlat2.x, 1.0);
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat4 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_3_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati1;
					vec4 u_xlat2;
					int u_xlati3;
					float u_xlat4;
					float u_xlat5;
					vec3 u_xlat6;
					vec3 u_xlat8;
					vec2 u_xlat10;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat6.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat6.x = inversesqrt(u_xlat6.x);
					    u_xlat6.xyz = u_xlat6.xxx * in_NORMAL0.xyz;
					    u_xlati3 = unity_StereoEyeIndex;
					    u_xlat8.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].yyy;
					    u_xlat8.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].xxx + u_xlat8.xyz;
					    u_xlat8.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].zzz + u_xlat8.xyz;
					    u_xlat8.xyz = u_xlat8.xyz + unity_WorldToObject[3].xyz;
					    u_xlat8.xyz = u_xlat8.xyz + (-in_POSITION0.xyz);
					    u_xlat4 = dot(u_xlat8.xyz, u_xlat8.xyz);
					    u_xlat4 = inversesqrt(u_xlat4);
					    u_xlat8.xyz = u_xlat8.xyz * vec3(u_xlat4);
					    u_xlat6.x = dot(u_xlat6.xyz, u_xlat8.xyz);
					    u_xlat6.x = log2(abs(u_xlat6.x));
					    u_xlat6.x = u_xlat6.x * _FresnelStr;
					    u_xlat6.x = exp2(u_xlat6.x);
					    u_xlat6.x = u_xlat6.x + u_xlat6.x;
					    vs_TEXCOORD4 = min(u_xlat6.x, 1.0);
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat5 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat5;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlat10.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati3].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati3].xy + u_xlat10.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendAdd" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					float u_xlat14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat14 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat2.xyz = vec3(u_xlat14) * u_xlat2.xyz;
					    u_xlat14 = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat3.xyz = vec3(u_xlat14) * in_NORMAL0.xyz;
					    u_xlat2.x = dot(u_xlat3.xyz, u_xlat2.xyz);
					    u_xlat2.x = log2(abs(u_xlat2.x));
					    u_xlat2.x = u_xlat2.x * _FresnelStr;
					    u_xlat2.x = exp2(u_xlat2.x);
					    u_xlat2.x = u_xlat2.x + u_xlat2.x;
					    vs_TEXCOORD4 = min(u_xlat2.x, 1.0);
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat4 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_3_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati1;
					vec4 u_xlat2;
					int u_xlati3;
					float u_xlat4;
					float u_xlat5;
					vec3 u_xlat6;
					vec3 u_xlat8;
					vec2 u_xlat10;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat6.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat6.x = inversesqrt(u_xlat6.x);
					    u_xlat6.xyz = u_xlat6.xxx * in_NORMAL0.xyz;
					    u_xlati3 = unity_StereoEyeIndex;
					    u_xlat8.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].yyy;
					    u_xlat8.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].xxx + u_xlat8.xyz;
					    u_xlat8.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].zzz + u_xlat8.xyz;
					    u_xlat8.xyz = u_xlat8.xyz + unity_WorldToObject[3].xyz;
					    u_xlat8.xyz = u_xlat8.xyz + (-in_POSITION0.xyz);
					    u_xlat4 = dot(u_xlat8.xyz, u_xlat8.xyz);
					    u_xlat4 = inversesqrt(u_xlat4);
					    u_xlat8.xyz = u_xlat8.xyz * vec3(u_xlat4);
					    u_xlat6.x = dot(u_xlat6.xyz, u_xlat8.xyz);
					    u_xlat6.x = log2(abs(u_xlat6.x));
					    u_xlat6.x = u_xlat6.x * _FresnelStr;
					    u_xlat6.x = exp2(u_xlat6.x);
					    u_xlat6.x = u_xlat6.x + u_xlat6.x;
					    vs_TEXCOORD4 = min(u_xlat6.x, 1.0);
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat5 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat5;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlat10.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati3].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati3].xy + u_xlat10.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendAdd" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					float u_xlat14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat14 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat2.xyz = vec3(u_xlat14) * u_xlat2.xyz;
					    u_xlat14 = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat3.xyz = vec3(u_xlat14) * in_NORMAL0.xyz;
					    u_xlat2.x = dot(u_xlat3.xyz, u_xlat2.xyz);
					    u_xlat2.x = log2(abs(u_xlat2.x));
					    u_xlat2.x = u_xlat2.x * _FresnelStr;
					    u_xlat2.x = exp2(u_xlat2.x);
					    u_xlat2.x = u_xlat2.x + u_xlat2.x;
					    vs_TEXCOORD4 = min(u_xlat2.x, 1.0);
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat4 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_3_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati1;
					vec4 u_xlat2;
					int u_xlati3;
					float u_xlat4;
					float u_xlat5;
					vec3 u_xlat6;
					vec3 u_xlat8;
					vec2 u_xlat10;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat6.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat6.x = inversesqrt(u_xlat6.x);
					    u_xlat6.xyz = u_xlat6.xxx * in_NORMAL0.xyz;
					    u_xlati3 = unity_StereoEyeIndex;
					    u_xlat8.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].yyy;
					    u_xlat8.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].xxx + u_xlat8.xyz;
					    u_xlat8.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].zzz + u_xlat8.xyz;
					    u_xlat8.xyz = u_xlat8.xyz + unity_WorldToObject[3].xyz;
					    u_xlat8.xyz = u_xlat8.xyz + (-in_POSITION0.xyz);
					    u_xlat4 = dot(u_xlat8.xyz, u_xlat8.xyz);
					    u_xlat4 = inversesqrt(u_xlat4);
					    u_xlat8.xyz = u_xlat8.xyz * vec3(u_xlat4);
					    u_xlat6.x = dot(u_xlat6.xyz, u_xlat8.xyz);
					    u_xlat6.x = log2(abs(u_xlat6.x));
					    u_xlat6.x = u_xlat6.x * _FresnelStr;
					    u_xlat6.x = exp2(u_xlat6.x);
					    u_xlat6.x = u_xlat6.x + u_xlat6.x;
					    vs_TEXCOORD4 = min(u_xlat6.x, 1.0);
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat5 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat5;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlat10.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati3].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati3].xy + u_xlat10.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendAdd" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					float u_xlat14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat14 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat2.xyz = vec3(u_xlat14) * u_xlat2.xyz;
					    u_xlat14 = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat3.xyz = vec3(u_xlat14) * in_NORMAL0.xyz;
					    u_xlat2.x = dot(u_xlat3.xyz, u_xlat2.xyz);
					    u_xlat2.x = log2(abs(u_xlat2.x));
					    u_xlat2.x = u_xlat2.x * _FresnelStr;
					    u_xlat2.x = exp2(u_xlat2.x);
					    u_xlat2.x = u_xlat2.x + u_xlat2.x;
					    vs_TEXCOORD4 = min(u_xlat2.x, 1.0);
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat4 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_3_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati1;
					vec4 u_xlat2;
					int u_xlati3;
					float u_xlat4;
					float u_xlat5;
					vec3 u_xlat6;
					vec3 u_xlat8;
					vec2 u_xlat10;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat6.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat6.x = inversesqrt(u_xlat6.x);
					    u_xlat6.xyz = u_xlat6.xxx * in_NORMAL0.xyz;
					    u_xlati3 = unity_StereoEyeIndex;
					    u_xlat8.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].yyy;
					    u_xlat8.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].xxx + u_xlat8.xyz;
					    u_xlat8.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].zzz + u_xlat8.xyz;
					    u_xlat8.xyz = u_xlat8.xyz + unity_WorldToObject[3].xyz;
					    u_xlat8.xyz = u_xlat8.xyz + (-in_POSITION0.xyz);
					    u_xlat4 = dot(u_xlat8.xyz, u_xlat8.xyz);
					    u_xlat4 = inversesqrt(u_xlat4);
					    u_xlat8.xyz = u_xlat8.xyz * vec3(u_xlat4);
					    u_xlat6.x = dot(u_xlat6.xyz, u_xlat8.xyz);
					    u_xlat6.x = log2(abs(u_xlat6.x));
					    u_xlat6.x = u_xlat6.x * _FresnelStr;
					    u_xlat6.x = exp2(u_xlat6.x);
					    u_xlat6.x = u_xlat6.x + u_xlat6.x;
					    vs_TEXCOORD4 = min(u_xlat6.x, 1.0);
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat5 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat5;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlat10.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati3].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati3].xy + u_xlat10.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendAdd" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					float u_xlat14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat14 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat2.xyz = vec3(u_xlat14) * u_xlat2.xyz;
					    u_xlat14 = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat3.xyz = vec3(u_xlat14) * in_NORMAL0.xyz;
					    u_xlat2.x = dot(u_xlat3.xyz, u_xlat2.xyz);
					    u_xlat2.x = log2(abs(u_xlat2.x));
					    u_xlat2.x = u_xlat2.x * _FresnelStr;
					    u_xlat2.x = exp2(u_xlat2.x);
					    u_xlat2.x = u_xlat2.x + u_xlat2.x;
					    vs_TEXCOORD4 = min(u_xlat2.x, 1.0);
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat4 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_3_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati1;
					vec4 u_xlat2;
					int u_xlati3;
					float u_xlat4;
					float u_xlat5;
					vec3 u_xlat6;
					vec3 u_xlat8;
					vec2 u_xlat10;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat6.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat6.x = inversesqrt(u_xlat6.x);
					    u_xlat6.xyz = u_xlat6.xxx * in_NORMAL0.xyz;
					    u_xlati3 = unity_StereoEyeIndex;
					    u_xlat8.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].yyy;
					    u_xlat8.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].xxx + u_xlat8.xyz;
					    u_xlat8.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].zzz + u_xlat8.xyz;
					    u_xlat8.xyz = u_xlat8.xyz + unity_WorldToObject[3].xyz;
					    u_xlat8.xyz = u_xlat8.xyz + (-in_POSITION0.xyz);
					    u_xlat4 = dot(u_xlat8.xyz, u_xlat8.xyz);
					    u_xlat4 = inversesqrt(u_xlat4);
					    u_xlat8.xyz = u_xlat8.xyz * vec3(u_xlat4);
					    u_xlat6.x = dot(u_xlat6.xyz, u_xlat8.xyz);
					    u_xlat6.x = log2(abs(u_xlat6.x));
					    u_xlat6.x = u_xlat6.x * _FresnelStr;
					    u_xlat6.x = exp2(u_xlat6.x);
					    u_xlat6.x = u_xlat6.x + u_xlat6.x;
					    vs_TEXCOORD4 = min(u_xlat6.x, 1.0);
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat5 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat5;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlat10.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati3].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati3].xy + u_xlat10.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendAdd" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					float u_xlat14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat14 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat2.xyz = vec3(u_xlat14) * u_xlat2.xyz;
					    u_xlat14 = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat3.xyz = vec3(u_xlat14) * in_NORMAL0.xyz;
					    u_xlat2.x = dot(u_xlat3.xyz, u_xlat2.xyz);
					    u_xlat2.x = log2(abs(u_xlat2.x));
					    u_xlat2.x = u_xlat2.x * _FresnelStr;
					    u_xlat2.x = exp2(u_xlat2.x);
					    u_xlat2.x = u_xlat2.x + u_xlat2.x;
					    vs_TEXCOORD4 = min(u_xlat2.x, 1.0);
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat4 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_3_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati1;
					vec4 u_xlat2;
					int u_xlati3;
					float u_xlat4;
					float u_xlat5;
					vec3 u_xlat6;
					vec3 u_xlat8;
					vec2 u_xlat10;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat6.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat6.x = inversesqrt(u_xlat6.x);
					    u_xlat6.xyz = u_xlat6.xxx * in_NORMAL0.xyz;
					    u_xlati3 = unity_StereoEyeIndex;
					    u_xlat8.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].yyy;
					    u_xlat8.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].xxx + u_xlat8.xyz;
					    u_xlat8.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].zzz + u_xlat8.xyz;
					    u_xlat8.xyz = u_xlat8.xyz + unity_WorldToObject[3].xyz;
					    u_xlat8.xyz = u_xlat8.xyz + (-in_POSITION0.xyz);
					    u_xlat4 = dot(u_xlat8.xyz, u_xlat8.xyz);
					    u_xlat4 = inversesqrt(u_xlat4);
					    u_xlat8.xyz = u_xlat8.xyz * vec3(u_xlat4);
					    u_xlat6.x = dot(u_xlat6.xyz, u_xlat8.xyz);
					    u_xlat6.x = log2(abs(u_xlat6.x));
					    u_xlat6.x = u_xlat6.x * _FresnelStr;
					    u_xlat6.x = exp2(u_xlat6.x);
					    u_xlat6.x = u_xlat6.x + u_xlat6.x;
					    vs_TEXCOORD4 = min(u_xlat6.x, 1.0);
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat5 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat5;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlat10.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati3].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati3].xy + u_xlat10.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendAdd" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    u_xlat2 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat2;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec2 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					float u_xlat3;
					int u_xlati6;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    u_xlat3 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat3;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlati6 = unity_StereoEyeIndex;
					    u_xlat1.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati6].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati6].xy + u_xlat1.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendAdd" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    u_xlat2 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat2;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec2 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					float u_xlat3;
					int u_xlati6;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    u_xlat3 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat3;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlati6 = unity_StereoEyeIndex;
					    u_xlat1.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati6].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati6].xy + u_xlat1.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendAdd" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat2 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat2;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec2 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					float u_xlat3;
					int u_xlati6;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat3 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat3;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlati6 = unity_StereoEyeIndex;
					    u_xlat1.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati6].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati6].xy + u_xlat1.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendAdd" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat2 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat2;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec2 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					float u_xlat3;
					int u_xlati6;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat3 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat3;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlati6 = unity_StereoEyeIndex;
					    u_xlat1.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati6].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati6].xy + u_xlat1.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendAdd" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat2 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat2;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec2 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					float u_xlat3;
					int u_xlati6;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat3 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat3;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlati6 = unity_StereoEyeIndex;
					    u_xlat1.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati6].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati6].xy + u_xlat1.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendAdd" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat2 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat2;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec2 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					float u_xlat3;
					int u_xlati6;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat3 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat3;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlati6 = unity_StereoEyeIndex;
					    u_xlat1.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati6].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati6].xy + u_xlat1.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendAdd" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat2 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat2;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec2 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					float u_xlat3;
					int u_xlati6;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat3 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat3;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlati6 = unity_StereoEyeIndex;
					    u_xlat1.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati6].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati6].xy + u_xlat1.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendAdd" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat2 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat2;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec2 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					float u_xlat3;
					int u_xlati6;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat3 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat3;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlati6 = unity_StereoEyeIndex;
					    u_xlat1.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati6].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati6].xy + u_xlat1.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendAdd" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    u_xlat2 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat2;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec2 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					float u_xlat3;
					int u_xlati6;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    u_xlat3 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat3;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlati6 = unity_StereoEyeIndex;
					    u_xlat1.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati6].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati6].xy + u_xlat1.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendAdd" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    u_xlat2 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat2;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec2 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					float u_xlat3;
					int u_xlati6;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    u_xlat3 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat3;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlati6 = unity_StereoEyeIndex;
					    u_xlat1.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati6].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati6].xy + u_xlat1.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendAdd" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat2 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat2;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec2 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					float u_xlat3;
					int u_xlati6;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat3 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat3;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlati6 = unity_StereoEyeIndex;
					    u_xlat1.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati6].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati6].xy + u_xlat1.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendAdd" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat2 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat2;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec2 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					float u_xlat3;
					int u_xlati6;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat3 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat3;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlati6 = unity_StereoEyeIndex;
					    u_xlat1.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati6].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati6].xy + u_xlat1.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendAdd" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat2 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat2;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec2 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					float u_xlat3;
					int u_xlati6;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat3 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat3;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlati6 = unity_StereoEyeIndex;
					    u_xlat1.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati6].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati6].xy + u_xlat1.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendAdd" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat2 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat2;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec2 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					float u_xlat3;
					int u_xlati6;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat3 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat3;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlati6 = unity_StereoEyeIndex;
					    u_xlat1.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati6].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati6].xy + u_xlat1.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendAdd" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat2 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat2;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec2 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					float u_xlat3;
					int u_xlati6;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat3 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat3;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlati6 = unity_StereoEyeIndex;
					    u_xlat1.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati6].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati6].xy + u_xlat1.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendAdd" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat2 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat2;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec2 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					float u_xlat3;
					int u_xlati6;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat3 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat3;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlati6 = unity_StereoEyeIndex;
					    u_xlat1.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati6].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati6].xy + u_xlat1.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendAdd" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					float u_xlat9;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat9 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat9 = inversesqrt(u_xlat9);
					    u_xlat2.xyz = vec3(u_xlat9) * u_xlat2.xyz;
					    u_xlat9 = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat9 = inversesqrt(u_xlat9);
					    u_xlat3.xyz = vec3(u_xlat9) * in_NORMAL0.xyz;
					    u_xlat9 = dot(u_xlat3.xyz, u_xlat2.xyz);
					    u_xlat9 = log2(abs(u_xlat9));
					    u_xlat9 = u_xlat9 * _FresnelStr;
					    u_xlat9 = exp2(u_xlat9);
					    u_xlat9 = u_xlat9 + u_xlat9;
					    vs_TEXCOORD4 = min(u_xlat9, 1.0);
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    u_xlat4 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_3_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					vec3 u_xlat5;
					vec2 u_xlat8;
					int u_xlati10;
					float u_xlat15;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat5.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat5.x = inversesqrt(u_xlat5.x);
					    u_xlat5.xyz = u_xlat5.xxx * in_NORMAL0.xyz;
					    u_xlati10 = unity_StereoEyeIndex;
					    u_xlat3.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati10].yyy;
					    u_xlat3.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati10].xxx + u_xlat3.xyz;
					    u_xlat3.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati10].zzz + u_xlat3.xyz;
					    u_xlat3.xyz = u_xlat3.xyz + unity_WorldToObject[3].xyz;
					    u_xlat3.xyz = u_xlat3.xyz + (-in_POSITION0.xyz);
					    u_xlat15 = dot(u_xlat3.xyz, u_xlat3.xyz);
					    u_xlat15 = inversesqrt(u_xlat15);
					    u_xlat3.xyz = vec3(u_xlat15) * u_xlat3.xyz;
					    u_xlat5.x = dot(u_xlat5.xyz, u_xlat3.xyz);
					    u_xlat5.x = log2(abs(u_xlat5.x));
					    u_xlat5.x = u_xlat5.x * _FresnelStr;
					    u_xlat5.x = exp2(u_xlat5.x);
					    u_xlat5.x = u_xlat5.x + u_xlat5.x;
					    vs_TEXCOORD4 = min(u_xlat5.x, 1.0);
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    u_xlat4 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlat8.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati10].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati10].xy + u_xlat8.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendAdd" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					float u_xlat9;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat9 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat9 = inversesqrt(u_xlat9);
					    u_xlat2.xyz = vec3(u_xlat9) * u_xlat2.xyz;
					    u_xlat9 = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat9 = inversesqrt(u_xlat9);
					    u_xlat3.xyz = vec3(u_xlat9) * in_NORMAL0.xyz;
					    u_xlat9 = dot(u_xlat3.xyz, u_xlat2.xyz);
					    u_xlat9 = log2(abs(u_xlat9));
					    u_xlat9 = u_xlat9 * _FresnelStr;
					    u_xlat9 = exp2(u_xlat9);
					    u_xlat9 = u_xlat9 + u_xlat9;
					    vs_TEXCOORD4 = min(u_xlat9, 1.0);
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    u_xlat4 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_3_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					vec3 u_xlat5;
					vec2 u_xlat8;
					int u_xlati10;
					float u_xlat15;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat5.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat5.x = inversesqrt(u_xlat5.x);
					    u_xlat5.xyz = u_xlat5.xxx * in_NORMAL0.xyz;
					    u_xlati10 = unity_StereoEyeIndex;
					    u_xlat3.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati10].yyy;
					    u_xlat3.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati10].xxx + u_xlat3.xyz;
					    u_xlat3.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati10].zzz + u_xlat3.xyz;
					    u_xlat3.xyz = u_xlat3.xyz + unity_WorldToObject[3].xyz;
					    u_xlat3.xyz = u_xlat3.xyz + (-in_POSITION0.xyz);
					    u_xlat15 = dot(u_xlat3.xyz, u_xlat3.xyz);
					    u_xlat15 = inversesqrt(u_xlat15);
					    u_xlat3.xyz = vec3(u_xlat15) * u_xlat3.xyz;
					    u_xlat5.x = dot(u_xlat5.xyz, u_xlat3.xyz);
					    u_xlat5.x = log2(abs(u_xlat5.x));
					    u_xlat5.x = u_xlat5.x * _FresnelStr;
					    u_xlat5.x = exp2(u_xlat5.x);
					    u_xlat5.x = u_xlat5.x + u_xlat5.x;
					    vs_TEXCOORD4 = min(u_xlat5.x, 1.0);
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    u_xlat4 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlat8.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati10].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati10].xy + u_xlat8.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendAdd" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					float u_xlat14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat14 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat2.xyz = vec3(u_xlat14) * u_xlat2.xyz;
					    u_xlat14 = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat3.xyz = vec3(u_xlat14) * in_NORMAL0.xyz;
					    u_xlat2.x = dot(u_xlat3.xyz, u_xlat2.xyz);
					    u_xlat2.x = log2(abs(u_xlat2.x));
					    u_xlat2.x = u_xlat2.x * _FresnelStr;
					    u_xlat2.x = exp2(u_xlat2.x);
					    u_xlat2.x = u_xlat2.x + u_xlat2.x;
					    vs_TEXCOORD4 = min(u_xlat2.x, 1.0);
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat4 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_3_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati1;
					vec4 u_xlat2;
					int u_xlati3;
					float u_xlat4;
					float u_xlat5;
					vec3 u_xlat6;
					vec3 u_xlat8;
					vec2 u_xlat10;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat6.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat6.x = inversesqrt(u_xlat6.x);
					    u_xlat6.xyz = u_xlat6.xxx * in_NORMAL0.xyz;
					    u_xlati3 = unity_StereoEyeIndex;
					    u_xlat8.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].yyy;
					    u_xlat8.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].xxx + u_xlat8.xyz;
					    u_xlat8.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].zzz + u_xlat8.xyz;
					    u_xlat8.xyz = u_xlat8.xyz + unity_WorldToObject[3].xyz;
					    u_xlat8.xyz = u_xlat8.xyz + (-in_POSITION0.xyz);
					    u_xlat4 = dot(u_xlat8.xyz, u_xlat8.xyz);
					    u_xlat4 = inversesqrt(u_xlat4);
					    u_xlat8.xyz = u_xlat8.xyz * vec3(u_xlat4);
					    u_xlat6.x = dot(u_xlat6.xyz, u_xlat8.xyz);
					    u_xlat6.x = log2(abs(u_xlat6.x));
					    u_xlat6.x = u_xlat6.x * _FresnelStr;
					    u_xlat6.x = exp2(u_xlat6.x);
					    u_xlat6.x = u_xlat6.x + u_xlat6.x;
					    vs_TEXCOORD4 = min(u_xlat6.x, 1.0);
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat5 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat5;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlat10.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati3].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati3].xy + u_xlat10.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendAdd" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					float u_xlat14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat14 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat2.xyz = vec3(u_xlat14) * u_xlat2.xyz;
					    u_xlat14 = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat3.xyz = vec3(u_xlat14) * in_NORMAL0.xyz;
					    u_xlat2.x = dot(u_xlat3.xyz, u_xlat2.xyz);
					    u_xlat2.x = log2(abs(u_xlat2.x));
					    u_xlat2.x = u_xlat2.x * _FresnelStr;
					    u_xlat2.x = exp2(u_xlat2.x);
					    u_xlat2.x = u_xlat2.x + u_xlat2.x;
					    vs_TEXCOORD4 = min(u_xlat2.x, 1.0);
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat4 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_3_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati1;
					vec4 u_xlat2;
					int u_xlati3;
					float u_xlat4;
					float u_xlat5;
					vec3 u_xlat6;
					vec3 u_xlat8;
					vec2 u_xlat10;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat6.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat6.x = inversesqrt(u_xlat6.x);
					    u_xlat6.xyz = u_xlat6.xxx * in_NORMAL0.xyz;
					    u_xlati3 = unity_StereoEyeIndex;
					    u_xlat8.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].yyy;
					    u_xlat8.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].xxx + u_xlat8.xyz;
					    u_xlat8.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].zzz + u_xlat8.xyz;
					    u_xlat8.xyz = u_xlat8.xyz + unity_WorldToObject[3].xyz;
					    u_xlat8.xyz = u_xlat8.xyz + (-in_POSITION0.xyz);
					    u_xlat4 = dot(u_xlat8.xyz, u_xlat8.xyz);
					    u_xlat4 = inversesqrt(u_xlat4);
					    u_xlat8.xyz = u_xlat8.xyz * vec3(u_xlat4);
					    u_xlat6.x = dot(u_xlat6.xyz, u_xlat8.xyz);
					    u_xlat6.x = log2(abs(u_xlat6.x));
					    u_xlat6.x = u_xlat6.x * _FresnelStr;
					    u_xlat6.x = exp2(u_xlat6.x);
					    u_xlat6.x = u_xlat6.x + u_xlat6.x;
					    vs_TEXCOORD4 = min(u_xlat6.x, 1.0);
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat5 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat5;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlat10.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati3].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati3].xy + u_xlat10.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendAdd" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					float u_xlat14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat14 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat2.xyz = vec3(u_xlat14) * u_xlat2.xyz;
					    u_xlat14 = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat3.xyz = vec3(u_xlat14) * in_NORMAL0.xyz;
					    u_xlat2.x = dot(u_xlat3.xyz, u_xlat2.xyz);
					    u_xlat2.x = log2(abs(u_xlat2.x));
					    u_xlat2.x = u_xlat2.x * _FresnelStr;
					    u_xlat2.x = exp2(u_xlat2.x);
					    u_xlat2.x = u_xlat2.x + u_xlat2.x;
					    vs_TEXCOORD4 = min(u_xlat2.x, 1.0);
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat4 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_3_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati1;
					vec4 u_xlat2;
					int u_xlati3;
					float u_xlat4;
					float u_xlat5;
					vec3 u_xlat6;
					vec3 u_xlat8;
					vec2 u_xlat10;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat6.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat6.x = inversesqrt(u_xlat6.x);
					    u_xlat6.xyz = u_xlat6.xxx * in_NORMAL0.xyz;
					    u_xlati3 = unity_StereoEyeIndex;
					    u_xlat8.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].yyy;
					    u_xlat8.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].xxx + u_xlat8.xyz;
					    u_xlat8.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].zzz + u_xlat8.xyz;
					    u_xlat8.xyz = u_xlat8.xyz + unity_WorldToObject[3].xyz;
					    u_xlat8.xyz = u_xlat8.xyz + (-in_POSITION0.xyz);
					    u_xlat4 = dot(u_xlat8.xyz, u_xlat8.xyz);
					    u_xlat4 = inversesqrt(u_xlat4);
					    u_xlat8.xyz = u_xlat8.xyz * vec3(u_xlat4);
					    u_xlat6.x = dot(u_xlat6.xyz, u_xlat8.xyz);
					    u_xlat6.x = log2(abs(u_xlat6.x));
					    u_xlat6.x = u_xlat6.x * _FresnelStr;
					    u_xlat6.x = exp2(u_xlat6.x);
					    u_xlat6.x = u_xlat6.x + u_xlat6.x;
					    vs_TEXCOORD4 = min(u_xlat6.x, 1.0);
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat5 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat5;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlat10.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati3].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati3].xy + u_xlat10.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendAdd" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					float u_xlat14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat14 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat2.xyz = vec3(u_xlat14) * u_xlat2.xyz;
					    u_xlat14 = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat3.xyz = vec3(u_xlat14) * in_NORMAL0.xyz;
					    u_xlat2.x = dot(u_xlat3.xyz, u_xlat2.xyz);
					    u_xlat2.x = log2(abs(u_xlat2.x));
					    u_xlat2.x = u_xlat2.x * _FresnelStr;
					    u_xlat2.x = exp2(u_xlat2.x);
					    u_xlat2.x = u_xlat2.x + u_xlat2.x;
					    vs_TEXCOORD4 = min(u_xlat2.x, 1.0);
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat4 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_3_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati1;
					vec4 u_xlat2;
					int u_xlati3;
					float u_xlat4;
					float u_xlat5;
					vec3 u_xlat6;
					vec3 u_xlat8;
					vec2 u_xlat10;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat6.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat6.x = inversesqrt(u_xlat6.x);
					    u_xlat6.xyz = u_xlat6.xxx * in_NORMAL0.xyz;
					    u_xlati3 = unity_StereoEyeIndex;
					    u_xlat8.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].yyy;
					    u_xlat8.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].xxx + u_xlat8.xyz;
					    u_xlat8.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].zzz + u_xlat8.xyz;
					    u_xlat8.xyz = u_xlat8.xyz + unity_WorldToObject[3].xyz;
					    u_xlat8.xyz = u_xlat8.xyz + (-in_POSITION0.xyz);
					    u_xlat4 = dot(u_xlat8.xyz, u_xlat8.xyz);
					    u_xlat4 = inversesqrt(u_xlat4);
					    u_xlat8.xyz = u_xlat8.xyz * vec3(u_xlat4);
					    u_xlat6.x = dot(u_xlat6.xyz, u_xlat8.xyz);
					    u_xlat6.x = log2(abs(u_xlat6.x));
					    u_xlat6.x = u_xlat6.x * _FresnelStr;
					    u_xlat6.x = exp2(u_xlat6.x);
					    u_xlat6.x = u_xlat6.x + u_xlat6.x;
					    vs_TEXCOORD4 = min(u_xlat6.x, 1.0);
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat5 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat5;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlat10.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati3].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati3].xy + u_xlat10.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendAdd" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					float u_xlat14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat14 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat2.xyz = vec3(u_xlat14) * u_xlat2.xyz;
					    u_xlat14 = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat3.xyz = vec3(u_xlat14) * in_NORMAL0.xyz;
					    u_xlat2.x = dot(u_xlat3.xyz, u_xlat2.xyz);
					    u_xlat2.x = log2(abs(u_xlat2.x));
					    u_xlat2.x = u_xlat2.x * _FresnelStr;
					    u_xlat2.x = exp2(u_xlat2.x);
					    u_xlat2.x = u_xlat2.x + u_xlat2.x;
					    vs_TEXCOORD4 = min(u_xlat2.x, 1.0);
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat4 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_3_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati1;
					vec4 u_xlat2;
					int u_xlati3;
					float u_xlat4;
					float u_xlat5;
					vec3 u_xlat6;
					vec3 u_xlat8;
					vec2 u_xlat10;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat6.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat6.x = inversesqrt(u_xlat6.x);
					    u_xlat6.xyz = u_xlat6.xxx * in_NORMAL0.xyz;
					    u_xlati3 = unity_StereoEyeIndex;
					    u_xlat8.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].yyy;
					    u_xlat8.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].xxx + u_xlat8.xyz;
					    u_xlat8.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].zzz + u_xlat8.xyz;
					    u_xlat8.xyz = u_xlat8.xyz + unity_WorldToObject[3].xyz;
					    u_xlat8.xyz = u_xlat8.xyz + (-in_POSITION0.xyz);
					    u_xlat4 = dot(u_xlat8.xyz, u_xlat8.xyz);
					    u_xlat4 = inversesqrt(u_xlat4);
					    u_xlat8.xyz = u_xlat8.xyz * vec3(u_xlat4);
					    u_xlat6.x = dot(u_xlat6.xyz, u_xlat8.xyz);
					    u_xlat6.x = log2(abs(u_xlat6.x));
					    u_xlat6.x = u_xlat6.x * _FresnelStr;
					    u_xlat6.x = exp2(u_xlat6.x);
					    u_xlat6.x = u_xlat6.x + u_xlat6.x;
					    vs_TEXCOORD4 = min(u_xlat6.x, 1.0);
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat5 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat5;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlat10.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati3].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati3].xy + u_xlat10.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendAdd" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					float u_xlat14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat14 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat2.xyz = vec3(u_xlat14) * u_xlat2.xyz;
					    u_xlat14 = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat3.xyz = vec3(u_xlat14) * in_NORMAL0.xyz;
					    u_xlat2.x = dot(u_xlat3.xyz, u_xlat2.xyz);
					    u_xlat2.x = log2(abs(u_xlat2.x));
					    u_xlat2.x = u_xlat2.x * _FresnelStr;
					    u_xlat2.x = exp2(u_xlat2.x);
					    u_xlat2.x = u_xlat2.x + u_xlat2.x;
					    vs_TEXCOORD4 = min(u_xlat2.x, 1.0);
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat4 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_3_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati1;
					vec4 u_xlat2;
					int u_xlati3;
					float u_xlat4;
					float u_xlat5;
					vec3 u_xlat6;
					vec3 u_xlat8;
					vec2 u_xlat10;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat6.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat6.x = inversesqrt(u_xlat6.x);
					    u_xlat6.xyz = u_xlat6.xxx * in_NORMAL0.xyz;
					    u_xlati3 = unity_StereoEyeIndex;
					    u_xlat8.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].yyy;
					    u_xlat8.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].xxx + u_xlat8.xyz;
					    u_xlat8.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].zzz + u_xlat8.xyz;
					    u_xlat8.xyz = u_xlat8.xyz + unity_WorldToObject[3].xyz;
					    u_xlat8.xyz = u_xlat8.xyz + (-in_POSITION0.xyz);
					    u_xlat4 = dot(u_xlat8.xyz, u_xlat8.xyz);
					    u_xlat4 = inversesqrt(u_xlat4);
					    u_xlat8.xyz = u_xlat8.xyz * vec3(u_xlat4);
					    u_xlat6.x = dot(u_xlat6.xyz, u_xlat8.xyz);
					    u_xlat6.x = log2(abs(u_xlat6.x));
					    u_xlat6.x = u_xlat6.x * _FresnelStr;
					    u_xlat6.x = exp2(u_xlat6.x);
					    u_xlat6.x = u_xlat6.x + u_xlat6.x;
					    vs_TEXCOORD4 = min(u_xlat6.x, 1.0);
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat5 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat5;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlat10.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati3].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati3].xy + u_xlat10.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendAdd" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					float u_xlat9;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat9 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat9 = inversesqrt(u_xlat9);
					    u_xlat2.xyz = vec3(u_xlat9) * u_xlat2.xyz;
					    u_xlat9 = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat9 = inversesqrt(u_xlat9);
					    u_xlat3.xyz = vec3(u_xlat9) * in_NORMAL0.xyz;
					    u_xlat9 = dot(u_xlat3.xyz, u_xlat2.xyz);
					    u_xlat9 = log2(abs(u_xlat9));
					    u_xlat9 = u_xlat9 * _FresnelStr;
					    u_xlat9 = exp2(u_xlat9);
					    u_xlat9 = u_xlat9 + u_xlat9;
					    vs_TEXCOORD4 = min(u_xlat9, 1.0);
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    u_xlat4 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_3_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					vec3 u_xlat5;
					vec2 u_xlat8;
					int u_xlati10;
					float u_xlat15;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat5.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat5.x = inversesqrt(u_xlat5.x);
					    u_xlat5.xyz = u_xlat5.xxx * in_NORMAL0.xyz;
					    u_xlati10 = unity_StereoEyeIndex;
					    u_xlat3.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati10].yyy;
					    u_xlat3.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati10].xxx + u_xlat3.xyz;
					    u_xlat3.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati10].zzz + u_xlat3.xyz;
					    u_xlat3.xyz = u_xlat3.xyz + unity_WorldToObject[3].xyz;
					    u_xlat3.xyz = u_xlat3.xyz + (-in_POSITION0.xyz);
					    u_xlat15 = dot(u_xlat3.xyz, u_xlat3.xyz);
					    u_xlat15 = inversesqrt(u_xlat15);
					    u_xlat3.xyz = vec3(u_xlat15) * u_xlat3.xyz;
					    u_xlat5.x = dot(u_xlat5.xyz, u_xlat3.xyz);
					    u_xlat5.x = log2(abs(u_xlat5.x));
					    u_xlat5.x = u_xlat5.x * _FresnelStr;
					    u_xlat5.x = exp2(u_xlat5.x);
					    u_xlat5.x = u_xlat5.x + u_xlat5.x;
					    vs_TEXCOORD4 = min(u_xlat5.x, 1.0);
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    u_xlat4 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlat8.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati10].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati10].xy + u_xlat8.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendAdd" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					float u_xlat9;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat9 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat9 = inversesqrt(u_xlat9);
					    u_xlat2.xyz = vec3(u_xlat9) * u_xlat2.xyz;
					    u_xlat9 = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat9 = inversesqrt(u_xlat9);
					    u_xlat3.xyz = vec3(u_xlat9) * in_NORMAL0.xyz;
					    u_xlat9 = dot(u_xlat3.xyz, u_xlat2.xyz);
					    u_xlat9 = log2(abs(u_xlat9));
					    u_xlat9 = u_xlat9 * _FresnelStr;
					    u_xlat9 = exp2(u_xlat9);
					    u_xlat9 = u_xlat9 + u_xlat9;
					    vs_TEXCOORD4 = min(u_xlat9, 1.0);
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    u_xlat4 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_3_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					vec3 u_xlat5;
					vec2 u_xlat8;
					int u_xlati10;
					float u_xlat15;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat5.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat5.x = inversesqrt(u_xlat5.x);
					    u_xlat5.xyz = u_xlat5.xxx * in_NORMAL0.xyz;
					    u_xlati10 = unity_StereoEyeIndex;
					    u_xlat3.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati10].yyy;
					    u_xlat3.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati10].xxx + u_xlat3.xyz;
					    u_xlat3.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati10].zzz + u_xlat3.xyz;
					    u_xlat3.xyz = u_xlat3.xyz + unity_WorldToObject[3].xyz;
					    u_xlat3.xyz = u_xlat3.xyz + (-in_POSITION0.xyz);
					    u_xlat15 = dot(u_xlat3.xyz, u_xlat3.xyz);
					    u_xlat15 = inversesqrt(u_xlat15);
					    u_xlat3.xyz = vec3(u_xlat15) * u_xlat3.xyz;
					    u_xlat5.x = dot(u_xlat5.xyz, u_xlat3.xyz);
					    u_xlat5.x = log2(abs(u_xlat5.x));
					    u_xlat5.x = u_xlat5.x * _FresnelStr;
					    u_xlat5.x = exp2(u_xlat5.x);
					    u_xlat5.x = u_xlat5.x + u_xlat5.x;
					    vs_TEXCOORD4 = min(u_xlat5.x, 1.0);
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    u_xlat4 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlat8.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati10].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati10].xy + u_xlat8.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendAdd" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					float u_xlat14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat14 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat2.xyz = vec3(u_xlat14) * u_xlat2.xyz;
					    u_xlat14 = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat3.xyz = vec3(u_xlat14) * in_NORMAL0.xyz;
					    u_xlat2.x = dot(u_xlat3.xyz, u_xlat2.xyz);
					    u_xlat2.x = log2(abs(u_xlat2.x));
					    u_xlat2.x = u_xlat2.x * _FresnelStr;
					    u_xlat2.x = exp2(u_xlat2.x);
					    u_xlat2.x = u_xlat2.x + u_xlat2.x;
					    vs_TEXCOORD4 = min(u_xlat2.x, 1.0);
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat4 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_3_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati1;
					vec4 u_xlat2;
					int u_xlati3;
					float u_xlat4;
					float u_xlat5;
					vec3 u_xlat6;
					vec3 u_xlat8;
					vec2 u_xlat10;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat6.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat6.x = inversesqrt(u_xlat6.x);
					    u_xlat6.xyz = u_xlat6.xxx * in_NORMAL0.xyz;
					    u_xlati3 = unity_StereoEyeIndex;
					    u_xlat8.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].yyy;
					    u_xlat8.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].xxx + u_xlat8.xyz;
					    u_xlat8.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].zzz + u_xlat8.xyz;
					    u_xlat8.xyz = u_xlat8.xyz + unity_WorldToObject[3].xyz;
					    u_xlat8.xyz = u_xlat8.xyz + (-in_POSITION0.xyz);
					    u_xlat4 = dot(u_xlat8.xyz, u_xlat8.xyz);
					    u_xlat4 = inversesqrt(u_xlat4);
					    u_xlat8.xyz = u_xlat8.xyz * vec3(u_xlat4);
					    u_xlat6.x = dot(u_xlat6.xyz, u_xlat8.xyz);
					    u_xlat6.x = log2(abs(u_xlat6.x));
					    u_xlat6.x = u_xlat6.x * _FresnelStr;
					    u_xlat6.x = exp2(u_xlat6.x);
					    u_xlat6.x = u_xlat6.x + u_xlat6.x;
					    vs_TEXCOORD4 = min(u_xlat6.x, 1.0);
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat5 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat5;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlat10.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati3].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati3].xy + u_xlat10.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendAdd" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					float u_xlat14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat14 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat2.xyz = vec3(u_xlat14) * u_xlat2.xyz;
					    u_xlat14 = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat3.xyz = vec3(u_xlat14) * in_NORMAL0.xyz;
					    u_xlat2.x = dot(u_xlat3.xyz, u_xlat2.xyz);
					    u_xlat2.x = log2(abs(u_xlat2.x));
					    u_xlat2.x = u_xlat2.x * _FresnelStr;
					    u_xlat2.x = exp2(u_xlat2.x);
					    u_xlat2.x = u_xlat2.x + u_xlat2.x;
					    vs_TEXCOORD4 = min(u_xlat2.x, 1.0);
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat4 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_3_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati1;
					vec4 u_xlat2;
					int u_xlati3;
					float u_xlat4;
					float u_xlat5;
					vec3 u_xlat6;
					vec3 u_xlat8;
					vec2 u_xlat10;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat6.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat6.x = inversesqrt(u_xlat6.x);
					    u_xlat6.xyz = u_xlat6.xxx * in_NORMAL0.xyz;
					    u_xlati3 = unity_StereoEyeIndex;
					    u_xlat8.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].yyy;
					    u_xlat8.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].xxx + u_xlat8.xyz;
					    u_xlat8.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].zzz + u_xlat8.xyz;
					    u_xlat8.xyz = u_xlat8.xyz + unity_WorldToObject[3].xyz;
					    u_xlat8.xyz = u_xlat8.xyz + (-in_POSITION0.xyz);
					    u_xlat4 = dot(u_xlat8.xyz, u_xlat8.xyz);
					    u_xlat4 = inversesqrt(u_xlat4);
					    u_xlat8.xyz = u_xlat8.xyz * vec3(u_xlat4);
					    u_xlat6.x = dot(u_xlat6.xyz, u_xlat8.xyz);
					    u_xlat6.x = log2(abs(u_xlat6.x));
					    u_xlat6.x = u_xlat6.x * _FresnelStr;
					    u_xlat6.x = exp2(u_xlat6.x);
					    u_xlat6.x = u_xlat6.x + u_xlat6.x;
					    vs_TEXCOORD4 = min(u_xlat6.x, 1.0);
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat5 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat5;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlat10.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati3].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati3].xy + u_xlat10.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendAdd" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					float u_xlat14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat14 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat2.xyz = vec3(u_xlat14) * u_xlat2.xyz;
					    u_xlat14 = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat3.xyz = vec3(u_xlat14) * in_NORMAL0.xyz;
					    u_xlat2.x = dot(u_xlat3.xyz, u_xlat2.xyz);
					    u_xlat2.x = log2(abs(u_xlat2.x));
					    u_xlat2.x = u_xlat2.x * _FresnelStr;
					    u_xlat2.x = exp2(u_xlat2.x);
					    u_xlat2.x = u_xlat2.x + u_xlat2.x;
					    vs_TEXCOORD4 = min(u_xlat2.x, 1.0);
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat4 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_3_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati1;
					vec4 u_xlat2;
					int u_xlati3;
					float u_xlat4;
					float u_xlat5;
					vec3 u_xlat6;
					vec3 u_xlat8;
					vec2 u_xlat10;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat6.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat6.x = inversesqrt(u_xlat6.x);
					    u_xlat6.xyz = u_xlat6.xxx * in_NORMAL0.xyz;
					    u_xlati3 = unity_StereoEyeIndex;
					    u_xlat8.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].yyy;
					    u_xlat8.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].xxx + u_xlat8.xyz;
					    u_xlat8.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].zzz + u_xlat8.xyz;
					    u_xlat8.xyz = u_xlat8.xyz + unity_WorldToObject[3].xyz;
					    u_xlat8.xyz = u_xlat8.xyz + (-in_POSITION0.xyz);
					    u_xlat4 = dot(u_xlat8.xyz, u_xlat8.xyz);
					    u_xlat4 = inversesqrt(u_xlat4);
					    u_xlat8.xyz = u_xlat8.xyz * vec3(u_xlat4);
					    u_xlat6.x = dot(u_xlat6.xyz, u_xlat8.xyz);
					    u_xlat6.x = log2(abs(u_xlat6.x));
					    u_xlat6.x = u_xlat6.x * _FresnelStr;
					    u_xlat6.x = exp2(u_xlat6.x);
					    u_xlat6.x = u_xlat6.x + u_xlat6.x;
					    vs_TEXCOORD4 = min(u_xlat6.x, 1.0);
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat5 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat5;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlat10.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati3].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati3].xy + u_xlat10.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendAdd" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					float u_xlat14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat14 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat2.xyz = vec3(u_xlat14) * u_xlat2.xyz;
					    u_xlat14 = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat3.xyz = vec3(u_xlat14) * in_NORMAL0.xyz;
					    u_xlat2.x = dot(u_xlat3.xyz, u_xlat2.xyz);
					    u_xlat2.x = log2(abs(u_xlat2.x));
					    u_xlat2.x = u_xlat2.x * _FresnelStr;
					    u_xlat2.x = exp2(u_xlat2.x);
					    u_xlat2.x = u_xlat2.x + u_xlat2.x;
					    vs_TEXCOORD4 = min(u_xlat2.x, 1.0);
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat4 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_3_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati1;
					vec4 u_xlat2;
					int u_xlati3;
					float u_xlat4;
					float u_xlat5;
					vec3 u_xlat6;
					vec3 u_xlat8;
					vec2 u_xlat10;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat6.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat6.x = inversesqrt(u_xlat6.x);
					    u_xlat6.xyz = u_xlat6.xxx * in_NORMAL0.xyz;
					    u_xlati3 = unity_StereoEyeIndex;
					    u_xlat8.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].yyy;
					    u_xlat8.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].xxx + u_xlat8.xyz;
					    u_xlat8.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].zzz + u_xlat8.xyz;
					    u_xlat8.xyz = u_xlat8.xyz + unity_WorldToObject[3].xyz;
					    u_xlat8.xyz = u_xlat8.xyz + (-in_POSITION0.xyz);
					    u_xlat4 = dot(u_xlat8.xyz, u_xlat8.xyz);
					    u_xlat4 = inversesqrt(u_xlat4);
					    u_xlat8.xyz = u_xlat8.xyz * vec3(u_xlat4);
					    u_xlat6.x = dot(u_xlat6.xyz, u_xlat8.xyz);
					    u_xlat6.x = log2(abs(u_xlat6.x));
					    u_xlat6.x = u_xlat6.x * _FresnelStr;
					    u_xlat6.x = exp2(u_xlat6.x);
					    u_xlat6.x = u_xlat6.x + u_xlat6.x;
					    vs_TEXCOORD4 = min(u_xlat6.x, 1.0);
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat5 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat5;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlat10.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati3].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati3].xy + u_xlat10.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendAdd" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					float u_xlat14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat14 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat2.xyz = vec3(u_xlat14) * u_xlat2.xyz;
					    u_xlat14 = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat3.xyz = vec3(u_xlat14) * in_NORMAL0.xyz;
					    u_xlat2.x = dot(u_xlat3.xyz, u_xlat2.xyz);
					    u_xlat2.x = log2(abs(u_xlat2.x));
					    u_xlat2.x = u_xlat2.x * _FresnelStr;
					    u_xlat2.x = exp2(u_xlat2.x);
					    u_xlat2.x = u_xlat2.x + u_xlat2.x;
					    vs_TEXCOORD4 = min(u_xlat2.x, 1.0);
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat4 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_3_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati1;
					vec4 u_xlat2;
					int u_xlati3;
					float u_xlat4;
					float u_xlat5;
					vec3 u_xlat6;
					vec3 u_xlat8;
					vec2 u_xlat10;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat6.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat6.x = inversesqrt(u_xlat6.x);
					    u_xlat6.xyz = u_xlat6.xxx * in_NORMAL0.xyz;
					    u_xlati3 = unity_StereoEyeIndex;
					    u_xlat8.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].yyy;
					    u_xlat8.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].xxx + u_xlat8.xyz;
					    u_xlat8.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].zzz + u_xlat8.xyz;
					    u_xlat8.xyz = u_xlat8.xyz + unity_WorldToObject[3].xyz;
					    u_xlat8.xyz = u_xlat8.xyz + (-in_POSITION0.xyz);
					    u_xlat4 = dot(u_xlat8.xyz, u_xlat8.xyz);
					    u_xlat4 = inversesqrt(u_xlat4);
					    u_xlat8.xyz = u_xlat8.xyz * vec3(u_xlat4);
					    u_xlat6.x = dot(u_xlat6.xyz, u_xlat8.xyz);
					    u_xlat6.x = log2(abs(u_xlat6.x));
					    u_xlat6.x = u_xlat6.x * _FresnelStr;
					    u_xlat6.x = exp2(u_xlat6.x);
					    u_xlat6.x = u_xlat6.x + u_xlat6.x;
					    vs_TEXCOORD4 = min(u_xlat6.x, 1.0);
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat5 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat5;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlat10.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati3].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati3].xy + u_xlat10.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendAdd" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					float u_xlat14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat14 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat2.xyz = vec3(u_xlat14) * u_xlat2.xyz;
					    u_xlat14 = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat3.xyz = vec3(u_xlat14) * in_NORMAL0.xyz;
					    u_xlat2.x = dot(u_xlat3.xyz, u_xlat2.xyz);
					    u_xlat2.x = log2(abs(u_xlat2.x));
					    u_xlat2.x = u_xlat2.x * _FresnelStr;
					    u_xlat2.x = exp2(u_xlat2.x);
					    u_xlat2.x = u_xlat2.x + u_xlat2.x;
					    vs_TEXCOORD4 = min(u_xlat2.x, 1.0);
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat4 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_3_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati1;
					vec4 u_xlat2;
					int u_xlati3;
					float u_xlat4;
					float u_xlat5;
					vec3 u_xlat6;
					vec3 u_xlat8;
					vec2 u_xlat10;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat6.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat6.x = inversesqrt(u_xlat6.x);
					    u_xlat6.xyz = u_xlat6.xxx * in_NORMAL0.xyz;
					    u_xlati3 = unity_StereoEyeIndex;
					    u_xlat8.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].yyy;
					    u_xlat8.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].xxx + u_xlat8.xyz;
					    u_xlat8.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].zzz + u_xlat8.xyz;
					    u_xlat8.xyz = u_xlat8.xyz + unity_WorldToObject[3].xyz;
					    u_xlat8.xyz = u_xlat8.xyz + (-in_POSITION0.xyz);
					    u_xlat4 = dot(u_xlat8.xyz, u_xlat8.xyz);
					    u_xlat4 = inversesqrt(u_xlat4);
					    u_xlat8.xyz = u_xlat8.xyz * vec3(u_xlat4);
					    u_xlat6.x = dot(u_xlat6.xyz, u_xlat8.xyz);
					    u_xlat6.x = log2(abs(u_xlat6.x));
					    u_xlat6.x = u_xlat6.x * _FresnelStr;
					    u_xlat6.x = exp2(u_xlat6.x);
					    u_xlat6.x = u_xlat6.x + u_xlat6.x;
					    vs_TEXCOORD4 = min(u_xlat6.x, 1.0);
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat5 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat5;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlat10.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati3].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati3].xy + u_xlat10.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendAdd" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    u_xlat2 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat2;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec2 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					float u_xlat3;
					int u_xlati6;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    u_xlat3 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat3;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlati6 = unity_StereoEyeIndex;
					    u_xlat1.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati6].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati6].xy + u_xlat1.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendAdd" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    u_xlat2 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat2;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec2 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					float u_xlat3;
					int u_xlati6;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    u_xlat3 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat3;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlati6 = unity_StereoEyeIndex;
					    u_xlat1.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati6].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati6].xy + u_xlat1.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendAdd" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat2 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat2;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec2 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					float u_xlat3;
					int u_xlati6;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat3 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat3;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlati6 = unity_StereoEyeIndex;
					    u_xlat1.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati6].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati6].xy + u_xlat1.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendAdd" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat2 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat2;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec2 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					float u_xlat3;
					int u_xlati6;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat3 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat3;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlati6 = unity_StereoEyeIndex;
					    u_xlat1.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati6].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati6].xy + u_xlat1.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendAdd" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat2 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat2;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec2 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					float u_xlat3;
					int u_xlati6;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat3 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat3;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlati6 = unity_StereoEyeIndex;
					    u_xlat1.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati6].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati6].xy + u_xlat1.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendAdd" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat2 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat2;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec2 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					float u_xlat3;
					int u_xlati6;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat3 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat3;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlati6 = unity_StereoEyeIndex;
					    u_xlat1.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati6].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati6].xy + u_xlat1.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendAdd" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat2 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat2;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec2 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					float u_xlat3;
					int u_xlati6;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat3 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat3;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlati6 = unity_StereoEyeIndex;
					    u_xlat1.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati6].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati6].xy + u_xlat1.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendAdd" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat2 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat2;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec2 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					float u_xlat3;
					int u_xlati6;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat3 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat3;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlati6 = unity_StereoEyeIndex;
					    u_xlat1.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati6].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati6].xy + u_xlat1.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendAdd" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    u_xlat2 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat2;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec2 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					float u_xlat3;
					int u_xlati6;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    u_xlat3 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat3;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlati6 = unity_StereoEyeIndex;
					    u_xlat1.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati6].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati6].xy + u_xlat1.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendAdd" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    u_xlat2 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat2;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec2 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					float u_xlat3;
					int u_xlati6;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    u_xlat3 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat3;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlati6 = unity_StereoEyeIndex;
					    u_xlat1.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati6].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati6].xy + u_xlat1.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendAdd" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat2 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat2;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec2 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					float u_xlat3;
					int u_xlati6;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat3 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat3;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlati6 = unity_StereoEyeIndex;
					    u_xlat1.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati6].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati6].xy + u_xlat1.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendAdd" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat2 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat2;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec2 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					float u_xlat3;
					int u_xlati6;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat3 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat3;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlati6 = unity_StereoEyeIndex;
					    u_xlat1.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati6].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati6].xy + u_xlat1.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendAdd" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat2 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat2;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec2 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					float u_xlat3;
					int u_xlati6;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat3 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat3;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlati6 = unity_StereoEyeIndex;
					    u_xlat1.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati6].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati6].xy + u_xlat1.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendAdd" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat2 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat2;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec2 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					float u_xlat3;
					int u_xlati6;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat3 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat3;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlati6 = unity_StereoEyeIndex;
					    u_xlat1.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati6].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati6].xy + u_xlat1.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendAdd" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat2 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat2;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec2 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					float u_xlat3;
					int u_xlati6;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat3 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat3;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlati6 = unity_StereoEyeIndex;
					    u_xlat1.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati6].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati6].xy + u_xlat1.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendAdd" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat2 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat2;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec2 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					float u_xlat3;
					int u_xlati6;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat3 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat3;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlati6 = unity_StereoEyeIndex;
					    u_xlat1.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati6].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati6].xy + u_xlat1.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendAdd" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					float u_xlat9;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat9 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat9 = inversesqrt(u_xlat9);
					    u_xlat2.xyz = vec3(u_xlat9) * u_xlat2.xyz;
					    u_xlat9 = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat9 = inversesqrt(u_xlat9);
					    u_xlat3.xyz = vec3(u_xlat9) * in_NORMAL0.xyz;
					    u_xlat9 = dot(u_xlat3.xyz, u_xlat2.xyz);
					    u_xlat9 = log2(abs(u_xlat9));
					    u_xlat9 = u_xlat9 * _FresnelStr;
					    u_xlat9 = exp2(u_xlat9);
					    u_xlat9 = u_xlat9 + u_xlat9;
					    vs_TEXCOORD4 = min(u_xlat9, 1.0);
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    u_xlat4 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_3_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					vec3 u_xlat5;
					vec2 u_xlat8;
					int u_xlati10;
					float u_xlat15;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat5.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat5.x = inversesqrt(u_xlat5.x);
					    u_xlat5.xyz = u_xlat5.xxx * in_NORMAL0.xyz;
					    u_xlati10 = unity_StereoEyeIndex;
					    u_xlat3.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati10].yyy;
					    u_xlat3.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati10].xxx + u_xlat3.xyz;
					    u_xlat3.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati10].zzz + u_xlat3.xyz;
					    u_xlat3.xyz = u_xlat3.xyz + unity_WorldToObject[3].xyz;
					    u_xlat3.xyz = u_xlat3.xyz + (-in_POSITION0.xyz);
					    u_xlat15 = dot(u_xlat3.xyz, u_xlat3.xyz);
					    u_xlat15 = inversesqrt(u_xlat15);
					    u_xlat3.xyz = vec3(u_xlat15) * u_xlat3.xyz;
					    u_xlat5.x = dot(u_xlat5.xyz, u_xlat3.xyz);
					    u_xlat5.x = log2(abs(u_xlat5.x));
					    u_xlat5.x = u_xlat5.x * _FresnelStr;
					    u_xlat5.x = exp2(u_xlat5.x);
					    u_xlat5.x = u_xlat5.x + u_xlat5.x;
					    vs_TEXCOORD4 = min(u_xlat5.x, 1.0);
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    u_xlat4 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlat8.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati10].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati10].xy + u_xlat8.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendAdd" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					float u_xlat9;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat9 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat9 = inversesqrt(u_xlat9);
					    u_xlat2.xyz = vec3(u_xlat9) * u_xlat2.xyz;
					    u_xlat9 = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat9 = inversesqrt(u_xlat9);
					    u_xlat3.xyz = vec3(u_xlat9) * in_NORMAL0.xyz;
					    u_xlat9 = dot(u_xlat3.xyz, u_xlat2.xyz);
					    u_xlat9 = log2(abs(u_xlat9));
					    u_xlat9 = u_xlat9 * _FresnelStr;
					    u_xlat9 = exp2(u_xlat9);
					    u_xlat9 = u_xlat9 + u_xlat9;
					    vs_TEXCOORD4 = min(u_xlat9, 1.0);
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    u_xlat4 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_3_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					vec3 u_xlat5;
					vec2 u_xlat8;
					int u_xlati10;
					float u_xlat15;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat5.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat5.x = inversesqrt(u_xlat5.x);
					    u_xlat5.xyz = u_xlat5.xxx * in_NORMAL0.xyz;
					    u_xlati10 = unity_StereoEyeIndex;
					    u_xlat3.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati10].yyy;
					    u_xlat3.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati10].xxx + u_xlat3.xyz;
					    u_xlat3.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati10].zzz + u_xlat3.xyz;
					    u_xlat3.xyz = u_xlat3.xyz + unity_WorldToObject[3].xyz;
					    u_xlat3.xyz = u_xlat3.xyz + (-in_POSITION0.xyz);
					    u_xlat15 = dot(u_xlat3.xyz, u_xlat3.xyz);
					    u_xlat15 = inversesqrt(u_xlat15);
					    u_xlat3.xyz = vec3(u_xlat15) * u_xlat3.xyz;
					    u_xlat5.x = dot(u_xlat5.xyz, u_xlat3.xyz);
					    u_xlat5.x = log2(abs(u_xlat5.x));
					    u_xlat5.x = u_xlat5.x * _FresnelStr;
					    u_xlat5.x = exp2(u_xlat5.x);
					    u_xlat5.x = u_xlat5.x + u_xlat5.x;
					    vs_TEXCOORD4 = min(u_xlat5.x, 1.0);
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    u_xlat4 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlat8.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati10].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati10].xy + u_xlat8.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendAdd" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					float u_xlat14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat14 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat2.xyz = vec3(u_xlat14) * u_xlat2.xyz;
					    u_xlat14 = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat3.xyz = vec3(u_xlat14) * in_NORMAL0.xyz;
					    u_xlat2.x = dot(u_xlat3.xyz, u_xlat2.xyz);
					    u_xlat2.x = log2(abs(u_xlat2.x));
					    u_xlat2.x = u_xlat2.x * _FresnelStr;
					    u_xlat2.x = exp2(u_xlat2.x);
					    u_xlat2.x = u_xlat2.x + u_xlat2.x;
					    vs_TEXCOORD4 = min(u_xlat2.x, 1.0);
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat4 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_3_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati1;
					vec4 u_xlat2;
					int u_xlati3;
					float u_xlat4;
					float u_xlat5;
					vec3 u_xlat6;
					vec3 u_xlat8;
					vec2 u_xlat10;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat6.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat6.x = inversesqrt(u_xlat6.x);
					    u_xlat6.xyz = u_xlat6.xxx * in_NORMAL0.xyz;
					    u_xlati3 = unity_StereoEyeIndex;
					    u_xlat8.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].yyy;
					    u_xlat8.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].xxx + u_xlat8.xyz;
					    u_xlat8.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].zzz + u_xlat8.xyz;
					    u_xlat8.xyz = u_xlat8.xyz + unity_WorldToObject[3].xyz;
					    u_xlat8.xyz = u_xlat8.xyz + (-in_POSITION0.xyz);
					    u_xlat4 = dot(u_xlat8.xyz, u_xlat8.xyz);
					    u_xlat4 = inversesqrt(u_xlat4);
					    u_xlat8.xyz = u_xlat8.xyz * vec3(u_xlat4);
					    u_xlat6.x = dot(u_xlat6.xyz, u_xlat8.xyz);
					    u_xlat6.x = log2(abs(u_xlat6.x));
					    u_xlat6.x = u_xlat6.x * _FresnelStr;
					    u_xlat6.x = exp2(u_xlat6.x);
					    u_xlat6.x = u_xlat6.x + u_xlat6.x;
					    vs_TEXCOORD4 = min(u_xlat6.x, 1.0);
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat5 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat5;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlat10.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati3].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati3].xy + u_xlat10.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendAdd" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					float u_xlat14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat14 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat2.xyz = vec3(u_xlat14) * u_xlat2.xyz;
					    u_xlat14 = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat3.xyz = vec3(u_xlat14) * in_NORMAL0.xyz;
					    u_xlat2.x = dot(u_xlat3.xyz, u_xlat2.xyz);
					    u_xlat2.x = log2(abs(u_xlat2.x));
					    u_xlat2.x = u_xlat2.x * _FresnelStr;
					    u_xlat2.x = exp2(u_xlat2.x);
					    u_xlat2.x = u_xlat2.x + u_xlat2.x;
					    vs_TEXCOORD4 = min(u_xlat2.x, 1.0);
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat4 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_3_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati1;
					vec4 u_xlat2;
					int u_xlati3;
					float u_xlat4;
					float u_xlat5;
					vec3 u_xlat6;
					vec3 u_xlat8;
					vec2 u_xlat10;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat6.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat6.x = inversesqrt(u_xlat6.x);
					    u_xlat6.xyz = u_xlat6.xxx * in_NORMAL0.xyz;
					    u_xlati3 = unity_StereoEyeIndex;
					    u_xlat8.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].yyy;
					    u_xlat8.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].xxx + u_xlat8.xyz;
					    u_xlat8.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].zzz + u_xlat8.xyz;
					    u_xlat8.xyz = u_xlat8.xyz + unity_WorldToObject[3].xyz;
					    u_xlat8.xyz = u_xlat8.xyz + (-in_POSITION0.xyz);
					    u_xlat4 = dot(u_xlat8.xyz, u_xlat8.xyz);
					    u_xlat4 = inversesqrt(u_xlat4);
					    u_xlat8.xyz = u_xlat8.xyz * vec3(u_xlat4);
					    u_xlat6.x = dot(u_xlat6.xyz, u_xlat8.xyz);
					    u_xlat6.x = log2(abs(u_xlat6.x));
					    u_xlat6.x = u_xlat6.x * _FresnelStr;
					    u_xlat6.x = exp2(u_xlat6.x);
					    u_xlat6.x = u_xlat6.x + u_xlat6.x;
					    vs_TEXCOORD4 = min(u_xlat6.x, 1.0);
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat5 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat5;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlat10.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati3].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati3].xy + u_xlat10.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendAdd" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					float u_xlat14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat14 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat2.xyz = vec3(u_xlat14) * u_xlat2.xyz;
					    u_xlat14 = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat3.xyz = vec3(u_xlat14) * in_NORMAL0.xyz;
					    u_xlat2.x = dot(u_xlat3.xyz, u_xlat2.xyz);
					    u_xlat2.x = log2(abs(u_xlat2.x));
					    u_xlat2.x = u_xlat2.x * _FresnelStr;
					    u_xlat2.x = exp2(u_xlat2.x);
					    u_xlat2.x = u_xlat2.x + u_xlat2.x;
					    vs_TEXCOORD4 = min(u_xlat2.x, 1.0);
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat4 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_3_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati1;
					vec4 u_xlat2;
					int u_xlati3;
					float u_xlat4;
					float u_xlat5;
					vec3 u_xlat6;
					vec3 u_xlat8;
					vec2 u_xlat10;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat6.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat6.x = inversesqrt(u_xlat6.x);
					    u_xlat6.xyz = u_xlat6.xxx * in_NORMAL0.xyz;
					    u_xlati3 = unity_StereoEyeIndex;
					    u_xlat8.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].yyy;
					    u_xlat8.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].xxx + u_xlat8.xyz;
					    u_xlat8.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].zzz + u_xlat8.xyz;
					    u_xlat8.xyz = u_xlat8.xyz + unity_WorldToObject[3].xyz;
					    u_xlat8.xyz = u_xlat8.xyz + (-in_POSITION0.xyz);
					    u_xlat4 = dot(u_xlat8.xyz, u_xlat8.xyz);
					    u_xlat4 = inversesqrt(u_xlat4);
					    u_xlat8.xyz = u_xlat8.xyz * vec3(u_xlat4);
					    u_xlat6.x = dot(u_xlat6.xyz, u_xlat8.xyz);
					    u_xlat6.x = log2(abs(u_xlat6.x));
					    u_xlat6.x = u_xlat6.x * _FresnelStr;
					    u_xlat6.x = exp2(u_xlat6.x);
					    u_xlat6.x = u_xlat6.x + u_xlat6.x;
					    vs_TEXCOORD4 = min(u_xlat6.x, 1.0);
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat5 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat5;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlat10.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati3].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati3].xy + u_xlat10.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendAdd" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					float u_xlat14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat14 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat2.xyz = vec3(u_xlat14) * u_xlat2.xyz;
					    u_xlat14 = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat3.xyz = vec3(u_xlat14) * in_NORMAL0.xyz;
					    u_xlat2.x = dot(u_xlat3.xyz, u_xlat2.xyz);
					    u_xlat2.x = log2(abs(u_xlat2.x));
					    u_xlat2.x = u_xlat2.x * _FresnelStr;
					    u_xlat2.x = exp2(u_xlat2.x);
					    u_xlat2.x = u_xlat2.x + u_xlat2.x;
					    vs_TEXCOORD4 = min(u_xlat2.x, 1.0);
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat4 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_3_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati1;
					vec4 u_xlat2;
					int u_xlati3;
					float u_xlat4;
					float u_xlat5;
					vec3 u_xlat6;
					vec3 u_xlat8;
					vec2 u_xlat10;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat6.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat6.x = inversesqrt(u_xlat6.x);
					    u_xlat6.xyz = u_xlat6.xxx * in_NORMAL0.xyz;
					    u_xlati3 = unity_StereoEyeIndex;
					    u_xlat8.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].yyy;
					    u_xlat8.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].xxx + u_xlat8.xyz;
					    u_xlat8.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].zzz + u_xlat8.xyz;
					    u_xlat8.xyz = u_xlat8.xyz + unity_WorldToObject[3].xyz;
					    u_xlat8.xyz = u_xlat8.xyz + (-in_POSITION0.xyz);
					    u_xlat4 = dot(u_xlat8.xyz, u_xlat8.xyz);
					    u_xlat4 = inversesqrt(u_xlat4);
					    u_xlat8.xyz = u_xlat8.xyz * vec3(u_xlat4);
					    u_xlat6.x = dot(u_xlat6.xyz, u_xlat8.xyz);
					    u_xlat6.x = log2(abs(u_xlat6.x));
					    u_xlat6.x = u_xlat6.x * _FresnelStr;
					    u_xlat6.x = exp2(u_xlat6.x);
					    u_xlat6.x = u_xlat6.x + u_xlat6.x;
					    vs_TEXCOORD4 = min(u_xlat6.x, 1.0);
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat5 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat5;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlat10.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati3].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati3].xy + u_xlat10.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendAdd" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					float u_xlat14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat14 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat2.xyz = vec3(u_xlat14) * u_xlat2.xyz;
					    u_xlat14 = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat3.xyz = vec3(u_xlat14) * in_NORMAL0.xyz;
					    u_xlat2.x = dot(u_xlat3.xyz, u_xlat2.xyz);
					    u_xlat2.x = log2(abs(u_xlat2.x));
					    u_xlat2.x = u_xlat2.x * _FresnelStr;
					    u_xlat2.x = exp2(u_xlat2.x);
					    u_xlat2.x = u_xlat2.x + u_xlat2.x;
					    vs_TEXCOORD4 = min(u_xlat2.x, 1.0);
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat4 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_3_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati1;
					vec4 u_xlat2;
					int u_xlati3;
					float u_xlat4;
					float u_xlat5;
					vec3 u_xlat6;
					vec3 u_xlat8;
					vec2 u_xlat10;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat6.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat6.x = inversesqrt(u_xlat6.x);
					    u_xlat6.xyz = u_xlat6.xxx * in_NORMAL0.xyz;
					    u_xlati3 = unity_StereoEyeIndex;
					    u_xlat8.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].yyy;
					    u_xlat8.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].xxx + u_xlat8.xyz;
					    u_xlat8.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].zzz + u_xlat8.xyz;
					    u_xlat8.xyz = u_xlat8.xyz + unity_WorldToObject[3].xyz;
					    u_xlat8.xyz = u_xlat8.xyz + (-in_POSITION0.xyz);
					    u_xlat4 = dot(u_xlat8.xyz, u_xlat8.xyz);
					    u_xlat4 = inversesqrt(u_xlat4);
					    u_xlat8.xyz = u_xlat8.xyz * vec3(u_xlat4);
					    u_xlat6.x = dot(u_xlat6.xyz, u_xlat8.xyz);
					    u_xlat6.x = log2(abs(u_xlat6.x));
					    u_xlat6.x = u_xlat6.x * _FresnelStr;
					    u_xlat6.x = exp2(u_xlat6.x);
					    u_xlat6.x = u_xlat6.x + u_xlat6.x;
					    vs_TEXCOORD4 = min(u_xlat6.x, 1.0);
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat5 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat5;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlat10.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati3].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati3].xy + u_xlat10.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendAdd" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					float u_xlat14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat14 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat2.xyz = vec3(u_xlat14) * u_xlat2.xyz;
					    u_xlat14 = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat3.xyz = vec3(u_xlat14) * in_NORMAL0.xyz;
					    u_xlat2.x = dot(u_xlat3.xyz, u_xlat2.xyz);
					    u_xlat2.x = log2(abs(u_xlat2.x));
					    u_xlat2.x = u_xlat2.x * _FresnelStr;
					    u_xlat2.x = exp2(u_xlat2.x);
					    u_xlat2.x = u_xlat2.x + u_xlat2.x;
					    vs_TEXCOORD4 = min(u_xlat2.x, 1.0);
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat4 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_3_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati1;
					vec4 u_xlat2;
					int u_xlati3;
					float u_xlat4;
					float u_xlat5;
					vec3 u_xlat6;
					vec3 u_xlat8;
					vec2 u_xlat10;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat6.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat6.x = inversesqrt(u_xlat6.x);
					    u_xlat6.xyz = u_xlat6.xxx * in_NORMAL0.xyz;
					    u_xlati3 = unity_StereoEyeIndex;
					    u_xlat8.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].yyy;
					    u_xlat8.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].xxx + u_xlat8.xyz;
					    u_xlat8.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].zzz + u_xlat8.xyz;
					    u_xlat8.xyz = u_xlat8.xyz + unity_WorldToObject[3].xyz;
					    u_xlat8.xyz = u_xlat8.xyz + (-in_POSITION0.xyz);
					    u_xlat4 = dot(u_xlat8.xyz, u_xlat8.xyz);
					    u_xlat4 = inversesqrt(u_xlat4);
					    u_xlat8.xyz = u_xlat8.xyz * vec3(u_xlat4);
					    u_xlat6.x = dot(u_xlat6.xyz, u_xlat8.xyz);
					    u_xlat6.x = log2(abs(u_xlat6.x));
					    u_xlat6.x = u_xlat6.x * _FresnelStr;
					    u_xlat6.x = exp2(u_xlat6.x);
					    u_xlat6.x = u_xlat6.x + u_xlat6.x;
					    vs_TEXCOORD4 = min(u_xlat6.x, 1.0);
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat5 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat5;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlat10.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati3].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati3].xy + u_xlat10.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendAdd" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					float u_xlat9;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat9 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat9 = inversesqrt(u_xlat9);
					    u_xlat2.xyz = vec3(u_xlat9) * u_xlat2.xyz;
					    u_xlat9 = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat9 = inversesqrt(u_xlat9);
					    u_xlat3.xyz = vec3(u_xlat9) * in_NORMAL0.xyz;
					    u_xlat9 = dot(u_xlat3.xyz, u_xlat2.xyz);
					    u_xlat9 = log2(abs(u_xlat9));
					    u_xlat9 = u_xlat9 * _FresnelStr;
					    u_xlat9 = exp2(u_xlat9);
					    u_xlat9 = u_xlat9 + u_xlat9;
					    vs_TEXCOORD4 = min(u_xlat9, 1.0);
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    u_xlat4 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_3_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					vec3 u_xlat5;
					vec2 u_xlat8;
					int u_xlati10;
					float u_xlat15;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat5.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat5.x = inversesqrt(u_xlat5.x);
					    u_xlat5.xyz = u_xlat5.xxx * in_NORMAL0.xyz;
					    u_xlati10 = unity_StereoEyeIndex;
					    u_xlat3.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati10].yyy;
					    u_xlat3.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati10].xxx + u_xlat3.xyz;
					    u_xlat3.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati10].zzz + u_xlat3.xyz;
					    u_xlat3.xyz = u_xlat3.xyz + unity_WorldToObject[3].xyz;
					    u_xlat3.xyz = u_xlat3.xyz + (-in_POSITION0.xyz);
					    u_xlat15 = dot(u_xlat3.xyz, u_xlat3.xyz);
					    u_xlat15 = inversesqrt(u_xlat15);
					    u_xlat3.xyz = vec3(u_xlat15) * u_xlat3.xyz;
					    u_xlat5.x = dot(u_xlat5.xyz, u_xlat3.xyz);
					    u_xlat5.x = log2(abs(u_xlat5.x));
					    u_xlat5.x = u_xlat5.x * _FresnelStr;
					    u_xlat5.x = exp2(u_xlat5.x);
					    u_xlat5.x = u_xlat5.x + u_xlat5.x;
					    vs_TEXCOORD4 = min(u_xlat5.x, 1.0);
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    u_xlat4 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlat8.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati10].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati10].xy + u_xlat8.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendAdd" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					float u_xlat9;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat9 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat9 = inversesqrt(u_xlat9);
					    u_xlat2.xyz = vec3(u_xlat9) * u_xlat2.xyz;
					    u_xlat9 = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat9 = inversesqrt(u_xlat9);
					    u_xlat3.xyz = vec3(u_xlat9) * in_NORMAL0.xyz;
					    u_xlat9 = dot(u_xlat3.xyz, u_xlat2.xyz);
					    u_xlat9 = log2(abs(u_xlat9));
					    u_xlat9 = u_xlat9 * _FresnelStr;
					    u_xlat9 = exp2(u_xlat9);
					    u_xlat9 = u_xlat9 + u_xlat9;
					    vs_TEXCOORD4 = min(u_xlat9, 1.0);
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    u_xlat4 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_3_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					vec3 u_xlat5;
					vec2 u_xlat8;
					int u_xlati10;
					float u_xlat15;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat5.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat5.x = inversesqrt(u_xlat5.x);
					    u_xlat5.xyz = u_xlat5.xxx * in_NORMAL0.xyz;
					    u_xlati10 = unity_StereoEyeIndex;
					    u_xlat3.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati10].yyy;
					    u_xlat3.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati10].xxx + u_xlat3.xyz;
					    u_xlat3.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati10].zzz + u_xlat3.xyz;
					    u_xlat3.xyz = u_xlat3.xyz + unity_WorldToObject[3].xyz;
					    u_xlat3.xyz = u_xlat3.xyz + (-in_POSITION0.xyz);
					    u_xlat15 = dot(u_xlat3.xyz, u_xlat3.xyz);
					    u_xlat15 = inversesqrt(u_xlat15);
					    u_xlat3.xyz = vec3(u_xlat15) * u_xlat3.xyz;
					    u_xlat5.x = dot(u_xlat5.xyz, u_xlat3.xyz);
					    u_xlat5.x = log2(abs(u_xlat5.x));
					    u_xlat5.x = u_xlat5.x * _FresnelStr;
					    u_xlat5.x = exp2(u_xlat5.x);
					    u_xlat5.x = u_xlat5.x + u_xlat5.x;
					    vs_TEXCOORD4 = min(u_xlat5.x, 1.0);
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    u_xlat4 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlat8.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati10].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati10].xy + u_xlat8.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendAdd" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					float u_xlat14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat14 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat2.xyz = vec3(u_xlat14) * u_xlat2.xyz;
					    u_xlat14 = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat3.xyz = vec3(u_xlat14) * in_NORMAL0.xyz;
					    u_xlat2.x = dot(u_xlat3.xyz, u_xlat2.xyz);
					    u_xlat2.x = log2(abs(u_xlat2.x));
					    u_xlat2.x = u_xlat2.x * _FresnelStr;
					    u_xlat2.x = exp2(u_xlat2.x);
					    u_xlat2.x = u_xlat2.x + u_xlat2.x;
					    vs_TEXCOORD4 = min(u_xlat2.x, 1.0);
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat4 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_3_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati1;
					vec4 u_xlat2;
					int u_xlati3;
					float u_xlat4;
					float u_xlat5;
					vec3 u_xlat6;
					vec3 u_xlat8;
					vec2 u_xlat10;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat6.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat6.x = inversesqrt(u_xlat6.x);
					    u_xlat6.xyz = u_xlat6.xxx * in_NORMAL0.xyz;
					    u_xlati3 = unity_StereoEyeIndex;
					    u_xlat8.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].yyy;
					    u_xlat8.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].xxx + u_xlat8.xyz;
					    u_xlat8.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].zzz + u_xlat8.xyz;
					    u_xlat8.xyz = u_xlat8.xyz + unity_WorldToObject[3].xyz;
					    u_xlat8.xyz = u_xlat8.xyz + (-in_POSITION0.xyz);
					    u_xlat4 = dot(u_xlat8.xyz, u_xlat8.xyz);
					    u_xlat4 = inversesqrt(u_xlat4);
					    u_xlat8.xyz = u_xlat8.xyz * vec3(u_xlat4);
					    u_xlat6.x = dot(u_xlat6.xyz, u_xlat8.xyz);
					    u_xlat6.x = log2(abs(u_xlat6.x));
					    u_xlat6.x = u_xlat6.x * _FresnelStr;
					    u_xlat6.x = exp2(u_xlat6.x);
					    u_xlat6.x = u_xlat6.x + u_xlat6.x;
					    vs_TEXCOORD4 = min(u_xlat6.x, 1.0);
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat5 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat5;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlat10.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati3].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati3].xy + u_xlat10.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendAdd" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					float u_xlat14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat14 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat2.xyz = vec3(u_xlat14) * u_xlat2.xyz;
					    u_xlat14 = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat3.xyz = vec3(u_xlat14) * in_NORMAL0.xyz;
					    u_xlat2.x = dot(u_xlat3.xyz, u_xlat2.xyz);
					    u_xlat2.x = log2(abs(u_xlat2.x));
					    u_xlat2.x = u_xlat2.x * _FresnelStr;
					    u_xlat2.x = exp2(u_xlat2.x);
					    u_xlat2.x = u_xlat2.x + u_xlat2.x;
					    vs_TEXCOORD4 = min(u_xlat2.x, 1.0);
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat4 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_3_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati1;
					vec4 u_xlat2;
					int u_xlati3;
					float u_xlat4;
					float u_xlat5;
					vec3 u_xlat6;
					vec3 u_xlat8;
					vec2 u_xlat10;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat6.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat6.x = inversesqrt(u_xlat6.x);
					    u_xlat6.xyz = u_xlat6.xxx * in_NORMAL0.xyz;
					    u_xlati3 = unity_StereoEyeIndex;
					    u_xlat8.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].yyy;
					    u_xlat8.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].xxx + u_xlat8.xyz;
					    u_xlat8.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].zzz + u_xlat8.xyz;
					    u_xlat8.xyz = u_xlat8.xyz + unity_WorldToObject[3].xyz;
					    u_xlat8.xyz = u_xlat8.xyz + (-in_POSITION0.xyz);
					    u_xlat4 = dot(u_xlat8.xyz, u_xlat8.xyz);
					    u_xlat4 = inversesqrt(u_xlat4);
					    u_xlat8.xyz = u_xlat8.xyz * vec3(u_xlat4);
					    u_xlat6.x = dot(u_xlat6.xyz, u_xlat8.xyz);
					    u_xlat6.x = log2(abs(u_xlat6.x));
					    u_xlat6.x = u_xlat6.x * _FresnelStr;
					    u_xlat6.x = exp2(u_xlat6.x);
					    u_xlat6.x = u_xlat6.x + u_xlat6.x;
					    vs_TEXCOORD4 = min(u_xlat6.x, 1.0);
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat5 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat5;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlat10.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati3].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati3].xy + u_xlat10.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendAdd" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					float u_xlat14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat14 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat2.xyz = vec3(u_xlat14) * u_xlat2.xyz;
					    u_xlat14 = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat3.xyz = vec3(u_xlat14) * in_NORMAL0.xyz;
					    u_xlat2.x = dot(u_xlat3.xyz, u_xlat2.xyz);
					    u_xlat2.x = log2(abs(u_xlat2.x));
					    u_xlat2.x = u_xlat2.x * _FresnelStr;
					    u_xlat2.x = exp2(u_xlat2.x);
					    u_xlat2.x = u_xlat2.x + u_xlat2.x;
					    vs_TEXCOORD4 = min(u_xlat2.x, 1.0);
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat4 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_3_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati1;
					vec4 u_xlat2;
					int u_xlati3;
					float u_xlat4;
					float u_xlat5;
					vec3 u_xlat6;
					vec3 u_xlat8;
					vec2 u_xlat10;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat6.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat6.x = inversesqrt(u_xlat6.x);
					    u_xlat6.xyz = u_xlat6.xxx * in_NORMAL0.xyz;
					    u_xlati3 = unity_StereoEyeIndex;
					    u_xlat8.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].yyy;
					    u_xlat8.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].xxx + u_xlat8.xyz;
					    u_xlat8.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].zzz + u_xlat8.xyz;
					    u_xlat8.xyz = u_xlat8.xyz + unity_WorldToObject[3].xyz;
					    u_xlat8.xyz = u_xlat8.xyz + (-in_POSITION0.xyz);
					    u_xlat4 = dot(u_xlat8.xyz, u_xlat8.xyz);
					    u_xlat4 = inversesqrt(u_xlat4);
					    u_xlat8.xyz = u_xlat8.xyz * vec3(u_xlat4);
					    u_xlat6.x = dot(u_xlat6.xyz, u_xlat8.xyz);
					    u_xlat6.x = log2(abs(u_xlat6.x));
					    u_xlat6.x = u_xlat6.x * _FresnelStr;
					    u_xlat6.x = exp2(u_xlat6.x);
					    u_xlat6.x = u_xlat6.x + u_xlat6.x;
					    vs_TEXCOORD4 = min(u_xlat6.x, 1.0);
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat5 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat5;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlat10.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati3].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati3].xy + u_xlat10.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendAdd" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					float u_xlat14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat14 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat2.xyz = vec3(u_xlat14) * u_xlat2.xyz;
					    u_xlat14 = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat3.xyz = vec3(u_xlat14) * in_NORMAL0.xyz;
					    u_xlat2.x = dot(u_xlat3.xyz, u_xlat2.xyz);
					    u_xlat2.x = log2(abs(u_xlat2.x));
					    u_xlat2.x = u_xlat2.x * _FresnelStr;
					    u_xlat2.x = exp2(u_xlat2.x);
					    u_xlat2.x = u_xlat2.x + u_xlat2.x;
					    vs_TEXCOORD4 = min(u_xlat2.x, 1.0);
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat4 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_3_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati1;
					vec4 u_xlat2;
					int u_xlati3;
					float u_xlat4;
					float u_xlat5;
					vec3 u_xlat6;
					vec3 u_xlat8;
					vec2 u_xlat10;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat6.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat6.x = inversesqrt(u_xlat6.x);
					    u_xlat6.xyz = u_xlat6.xxx * in_NORMAL0.xyz;
					    u_xlati3 = unity_StereoEyeIndex;
					    u_xlat8.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].yyy;
					    u_xlat8.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].xxx + u_xlat8.xyz;
					    u_xlat8.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].zzz + u_xlat8.xyz;
					    u_xlat8.xyz = u_xlat8.xyz + unity_WorldToObject[3].xyz;
					    u_xlat8.xyz = u_xlat8.xyz + (-in_POSITION0.xyz);
					    u_xlat4 = dot(u_xlat8.xyz, u_xlat8.xyz);
					    u_xlat4 = inversesqrt(u_xlat4);
					    u_xlat8.xyz = u_xlat8.xyz * vec3(u_xlat4);
					    u_xlat6.x = dot(u_xlat6.xyz, u_xlat8.xyz);
					    u_xlat6.x = log2(abs(u_xlat6.x));
					    u_xlat6.x = u_xlat6.x * _FresnelStr;
					    u_xlat6.x = exp2(u_xlat6.x);
					    u_xlat6.x = u_xlat6.x + u_xlat6.x;
					    vs_TEXCOORD4 = min(u_xlat6.x, 1.0);
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat5 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat5;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlat10.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati3].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati3].xy + u_xlat10.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendAdd" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					float u_xlat14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat14 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat2.xyz = vec3(u_xlat14) * u_xlat2.xyz;
					    u_xlat14 = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat3.xyz = vec3(u_xlat14) * in_NORMAL0.xyz;
					    u_xlat2.x = dot(u_xlat3.xyz, u_xlat2.xyz);
					    u_xlat2.x = log2(abs(u_xlat2.x));
					    u_xlat2.x = u_xlat2.x * _FresnelStr;
					    u_xlat2.x = exp2(u_xlat2.x);
					    u_xlat2.x = u_xlat2.x + u_xlat2.x;
					    vs_TEXCOORD4 = min(u_xlat2.x, 1.0);
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat4 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_3_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati1;
					vec4 u_xlat2;
					int u_xlati3;
					float u_xlat4;
					float u_xlat5;
					vec3 u_xlat6;
					vec3 u_xlat8;
					vec2 u_xlat10;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat6.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat6.x = inversesqrt(u_xlat6.x);
					    u_xlat6.xyz = u_xlat6.xxx * in_NORMAL0.xyz;
					    u_xlati3 = unity_StereoEyeIndex;
					    u_xlat8.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].yyy;
					    u_xlat8.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].xxx + u_xlat8.xyz;
					    u_xlat8.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].zzz + u_xlat8.xyz;
					    u_xlat8.xyz = u_xlat8.xyz + unity_WorldToObject[3].xyz;
					    u_xlat8.xyz = u_xlat8.xyz + (-in_POSITION0.xyz);
					    u_xlat4 = dot(u_xlat8.xyz, u_xlat8.xyz);
					    u_xlat4 = inversesqrt(u_xlat4);
					    u_xlat8.xyz = u_xlat8.xyz * vec3(u_xlat4);
					    u_xlat6.x = dot(u_xlat6.xyz, u_xlat8.xyz);
					    u_xlat6.x = log2(abs(u_xlat6.x));
					    u_xlat6.x = u_xlat6.x * _FresnelStr;
					    u_xlat6.x = exp2(u_xlat6.x);
					    u_xlat6.x = u_xlat6.x + u_xlat6.x;
					    vs_TEXCOORD4 = min(u_xlat6.x, 1.0);
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat5 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat5;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlat10.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati3].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati3].xy + u_xlat10.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendAdd" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					float u_xlat14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat14 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat2.xyz = vec3(u_xlat14) * u_xlat2.xyz;
					    u_xlat14 = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat3.xyz = vec3(u_xlat14) * in_NORMAL0.xyz;
					    u_xlat2.x = dot(u_xlat3.xyz, u_xlat2.xyz);
					    u_xlat2.x = log2(abs(u_xlat2.x));
					    u_xlat2.x = u_xlat2.x * _FresnelStr;
					    u_xlat2.x = exp2(u_xlat2.x);
					    u_xlat2.x = u_xlat2.x + u_xlat2.x;
					    vs_TEXCOORD4 = min(u_xlat2.x, 1.0);
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat4 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_3_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati1;
					vec4 u_xlat2;
					int u_xlati3;
					float u_xlat4;
					float u_xlat5;
					vec3 u_xlat6;
					vec3 u_xlat8;
					vec2 u_xlat10;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat6.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat6.x = inversesqrt(u_xlat6.x);
					    u_xlat6.xyz = u_xlat6.xxx * in_NORMAL0.xyz;
					    u_xlati3 = unity_StereoEyeIndex;
					    u_xlat8.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].yyy;
					    u_xlat8.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].xxx + u_xlat8.xyz;
					    u_xlat8.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].zzz + u_xlat8.xyz;
					    u_xlat8.xyz = u_xlat8.xyz + unity_WorldToObject[3].xyz;
					    u_xlat8.xyz = u_xlat8.xyz + (-in_POSITION0.xyz);
					    u_xlat4 = dot(u_xlat8.xyz, u_xlat8.xyz);
					    u_xlat4 = inversesqrt(u_xlat4);
					    u_xlat8.xyz = u_xlat8.xyz * vec3(u_xlat4);
					    u_xlat6.x = dot(u_xlat6.xyz, u_xlat8.xyz);
					    u_xlat6.x = log2(abs(u_xlat6.x));
					    u_xlat6.x = u_xlat6.x * _FresnelStr;
					    u_xlat6.x = exp2(u_xlat6.x);
					    u_xlat6.x = u_xlat6.x + u_xlat6.x;
					    vs_TEXCOORD4 = min(u_xlat6.x, 1.0);
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat5 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat5;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlat10.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati3].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati3].xy + u_xlat10.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendAdd" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    u_xlat2 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat2;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec2 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					float u_xlat3;
					int u_xlati6;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    u_xlat3 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat3;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlati6 = unity_StereoEyeIndex;
					    u_xlat1.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati6].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati6].xy + u_xlat1.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendAdd" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    u_xlat2 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat2;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec2 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					float u_xlat3;
					int u_xlati6;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    u_xlat3 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat3;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlati6 = unity_StereoEyeIndex;
					    u_xlat1.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati6].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati6].xy + u_xlat1.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendAdd" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat2 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat2;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec2 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					float u_xlat3;
					int u_xlati6;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat3 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat3;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlati6 = unity_StereoEyeIndex;
					    u_xlat1.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati6].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati6].xy + u_xlat1.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendAdd" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat2 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat2;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec2 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					float u_xlat3;
					int u_xlati6;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat3 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat3;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlati6 = unity_StereoEyeIndex;
					    u_xlat1.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati6].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati6].xy + u_xlat1.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendAdd" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat2 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat2;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec2 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					float u_xlat3;
					int u_xlati6;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat3 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat3;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlati6 = unity_StereoEyeIndex;
					    u_xlat1.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati6].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati6].xy + u_xlat1.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendAdd" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat2 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat2;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec2 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					float u_xlat3;
					int u_xlati6;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat3 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat3;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlati6 = unity_StereoEyeIndex;
					    u_xlat1.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati6].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati6].xy + u_xlat1.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendAdd" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat2 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat2;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec2 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					float u_xlat3;
					int u_xlati6;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat3 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat3;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlati6 = unity_StereoEyeIndex;
					    u_xlat1.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati6].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati6].xy + u_xlat1.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendAdd" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat2 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat2;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec2 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					float u_xlat3;
					int u_xlati6;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat3 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat3;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlati6 = unity_StereoEyeIndex;
					    u_xlat1.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati6].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati6].xy + u_xlat1.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendAdd" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    u_xlat2 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat2;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec2 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					float u_xlat3;
					int u_xlati6;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    u_xlat3 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat3;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlati6 = unity_StereoEyeIndex;
					    u_xlat1.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati6].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati6].xy + u_xlat1.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendAdd" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    u_xlat2 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat2;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec2 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					float u_xlat3;
					int u_xlati6;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    u_xlat3 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat3;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlati6 = unity_StereoEyeIndex;
					    u_xlat1.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati6].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati6].xy + u_xlat1.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendAdd" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat2 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat2;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec2 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					float u_xlat3;
					int u_xlati6;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat3 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat3;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlati6 = unity_StereoEyeIndex;
					    u_xlat1.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati6].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati6].xy + u_xlat1.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendAdd" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat2 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat2;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec2 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					float u_xlat3;
					int u_xlati6;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat3 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat3;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlati6 = unity_StereoEyeIndex;
					    u_xlat1.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati6].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati6].xy + u_xlat1.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendAdd" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat2 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat2;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec2 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					float u_xlat3;
					int u_xlati6;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat3 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat3;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlati6 = unity_StereoEyeIndex;
					    u_xlat1.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati6].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati6].xy + u_xlat1.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendAdd" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat2 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat2;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec2 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					float u_xlat3;
					int u_xlati6;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat3 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat3;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlati6 = unity_StereoEyeIndex;
					    u_xlat1.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati6].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati6].xy + u_xlat1.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendAdd" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat2 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat2;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec2 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					float u_xlat3;
					int u_xlati6;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat3 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat3;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlati6 = unity_StereoEyeIndex;
					    u_xlat1.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati6].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati6].xy + u_xlat1.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendAdd" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat2 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat2;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec2 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					float u_xlat3;
					int u_xlati6;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat3 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat3;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlati6 = unity_StereoEyeIndex;
					    u_xlat1.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati6].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati6].xy + u_xlat1.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendAdd" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					float u_xlat9;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat9 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat9 = inversesqrt(u_xlat9);
					    u_xlat2.xyz = vec3(u_xlat9) * u_xlat2.xyz;
					    u_xlat9 = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat9 = inversesqrt(u_xlat9);
					    u_xlat3.xyz = vec3(u_xlat9) * in_NORMAL0.xyz;
					    u_xlat9 = dot(u_xlat3.xyz, u_xlat2.xyz);
					    u_xlat9 = log2(abs(u_xlat9));
					    u_xlat9 = u_xlat9 * _FresnelStr;
					    u_xlat9 = exp2(u_xlat9);
					    u_xlat9 = u_xlat9 + u_xlat9;
					    vs_TEXCOORD4 = min(u_xlat9, 1.0);
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    u_xlat4 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_3_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					vec3 u_xlat5;
					vec2 u_xlat8;
					int u_xlati10;
					float u_xlat15;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat5.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat5.x = inversesqrt(u_xlat5.x);
					    u_xlat5.xyz = u_xlat5.xxx * in_NORMAL0.xyz;
					    u_xlati10 = unity_StereoEyeIndex;
					    u_xlat3.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati10].yyy;
					    u_xlat3.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati10].xxx + u_xlat3.xyz;
					    u_xlat3.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati10].zzz + u_xlat3.xyz;
					    u_xlat3.xyz = u_xlat3.xyz + unity_WorldToObject[3].xyz;
					    u_xlat3.xyz = u_xlat3.xyz + (-in_POSITION0.xyz);
					    u_xlat15 = dot(u_xlat3.xyz, u_xlat3.xyz);
					    u_xlat15 = inversesqrt(u_xlat15);
					    u_xlat3.xyz = vec3(u_xlat15) * u_xlat3.xyz;
					    u_xlat5.x = dot(u_xlat5.xyz, u_xlat3.xyz);
					    u_xlat5.x = log2(abs(u_xlat5.x));
					    u_xlat5.x = u_xlat5.x * _FresnelStr;
					    u_xlat5.x = exp2(u_xlat5.x);
					    u_xlat5.x = u_xlat5.x + u_xlat5.x;
					    vs_TEXCOORD4 = min(u_xlat5.x, 1.0);
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    u_xlat4 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlat8.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati10].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati10].xy + u_xlat8.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendAdd" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					float u_xlat9;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat9 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat9 = inversesqrt(u_xlat9);
					    u_xlat2.xyz = vec3(u_xlat9) * u_xlat2.xyz;
					    u_xlat9 = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat9 = inversesqrt(u_xlat9);
					    u_xlat3.xyz = vec3(u_xlat9) * in_NORMAL0.xyz;
					    u_xlat9 = dot(u_xlat3.xyz, u_xlat2.xyz);
					    u_xlat9 = log2(abs(u_xlat9));
					    u_xlat9 = u_xlat9 * _FresnelStr;
					    u_xlat9 = exp2(u_xlat9);
					    u_xlat9 = u_xlat9 + u_xlat9;
					    vs_TEXCOORD4 = min(u_xlat9, 1.0);
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    u_xlat4 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_3_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					vec3 u_xlat5;
					vec2 u_xlat8;
					int u_xlati10;
					float u_xlat15;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat5.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat5.x = inversesqrt(u_xlat5.x);
					    u_xlat5.xyz = u_xlat5.xxx * in_NORMAL0.xyz;
					    u_xlati10 = unity_StereoEyeIndex;
					    u_xlat3.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati10].yyy;
					    u_xlat3.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati10].xxx + u_xlat3.xyz;
					    u_xlat3.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati10].zzz + u_xlat3.xyz;
					    u_xlat3.xyz = u_xlat3.xyz + unity_WorldToObject[3].xyz;
					    u_xlat3.xyz = u_xlat3.xyz + (-in_POSITION0.xyz);
					    u_xlat15 = dot(u_xlat3.xyz, u_xlat3.xyz);
					    u_xlat15 = inversesqrt(u_xlat15);
					    u_xlat3.xyz = vec3(u_xlat15) * u_xlat3.xyz;
					    u_xlat5.x = dot(u_xlat5.xyz, u_xlat3.xyz);
					    u_xlat5.x = log2(abs(u_xlat5.x));
					    u_xlat5.x = u_xlat5.x * _FresnelStr;
					    u_xlat5.x = exp2(u_xlat5.x);
					    u_xlat5.x = u_xlat5.x + u_xlat5.x;
					    vs_TEXCOORD4 = min(u_xlat5.x, 1.0);
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    u_xlat4 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlat8.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati10].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati10].xy + u_xlat8.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendAdd" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					float u_xlat14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat14 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat2.xyz = vec3(u_xlat14) * u_xlat2.xyz;
					    u_xlat14 = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat3.xyz = vec3(u_xlat14) * in_NORMAL0.xyz;
					    u_xlat2.x = dot(u_xlat3.xyz, u_xlat2.xyz);
					    u_xlat2.x = log2(abs(u_xlat2.x));
					    u_xlat2.x = u_xlat2.x * _FresnelStr;
					    u_xlat2.x = exp2(u_xlat2.x);
					    u_xlat2.x = u_xlat2.x + u_xlat2.x;
					    vs_TEXCOORD4 = min(u_xlat2.x, 1.0);
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat4 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_3_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati1;
					vec4 u_xlat2;
					int u_xlati3;
					float u_xlat4;
					float u_xlat5;
					vec3 u_xlat6;
					vec3 u_xlat8;
					vec2 u_xlat10;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat6.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat6.x = inversesqrt(u_xlat6.x);
					    u_xlat6.xyz = u_xlat6.xxx * in_NORMAL0.xyz;
					    u_xlati3 = unity_StereoEyeIndex;
					    u_xlat8.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].yyy;
					    u_xlat8.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].xxx + u_xlat8.xyz;
					    u_xlat8.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].zzz + u_xlat8.xyz;
					    u_xlat8.xyz = u_xlat8.xyz + unity_WorldToObject[3].xyz;
					    u_xlat8.xyz = u_xlat8.xyz + (-in_POSITION0.xyz);
					    u_xlat4 = dot(u_xlat8.xyz, u_xlat8.xyz);
					    u_xlat4 = inversesqrt(u_xlat4);
					    u_xlat8.xyz = u_xlat8.xyz * vec3(u_xlat4);
					    u_xlat6.x = dot(u_xlat6.xyz, u_xlat8.xyz);
					    u_xlat6.x = log2(abs(u_xlat6.x));
					    u_xlat6.x = u_xlat6.x * _FresnelStr;
					    u_xlat6.x = exp2(u_xlat6.x);
					    u_xlat6.x = u_xlat6.x + u_xlat6.x;
					    vs_TEXCOORD4 = min(u_xlat6.x, 1.0);
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat5 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat5;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlat10.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati3].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati3].xy + u_xlat10.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendAdd" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					float u_xlat14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat14 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat2.xyz = vec3(u_xlat14) * u_xlat2.xyz;
					    u_xlat14 = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat3.xyz = vec3(u_xlat14) * in_NORMAL0.xyz;
					    u_xlat2.x = dot(u_xlat3.xyz, u_xlat2.xyz);
					    u_xlat2.x = log2(abs(u_xlat2.x));
					    u_xlat2.x = u_xlat2.x * _FresnelStr;
					    u_xlat2.x = exp2(u_xlat2.x);
					    u_xlat2.x = u_xlat2.x + u_xlat2.x;
					    vs_TEXCOORD4 = min(u_xlat2.x, 1.0);
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat4 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_3_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati1;
					vec4 u_xlat2;
					int u_xlati3;
					float u_xlat4;
					float u_xlat5;
					vec3 u_xlat6;
					vec3 u_xlat8;
					vec2 u_xlat10;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat6.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat6.x = inversesqrt(u_xlat6.x);
					    u_xlat6.xyz = u_xlat6.xxx * in_NORMAL0.xyz;
					    u_xlati3 = unity_StereoEyeIndex;
					    u_xlat8.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].yyy;
					    u_xlat8.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].xxx + u_xlat8.xyz;
					    u_xlat8.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].zzz + u_xlat8.xyz;
					    u_xlat8.xyz = u_xlat8.xyz + unity_WorldToObject[3].xyz;
					    u_xlat8.xyz = u_xlat8.xyz + (-in_POSITION0.xyz);
					    u_xlat4 = dot(u_xlat8.xyz, u_xlat8.xyz);
					    u_xlat4 = inversesqrt(u_xlat4);
					    u_xlat8.xyz = u_xlat8.xyz * vec3(u_xlat4);
					    u_xlat6.x = dot(u_xlat6.xyz, u_xlat8.xyz);
					    u_xlat6.x = log2(abs(u_xlat6.x));
					    u_xlat6.x = u_xlat6.x * _FresnelStr;
					    u_xlat6.x = exp2(u_xlat6.x);
					    u_xlat6.x = u_xlat6.x + u_xlat6.x;
					    vs_TEXCOORD4 = min(u_xlat6.x, 1.0);
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat5 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat5;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlat10.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati3].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati3].xy + u_xlat10.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendAdd" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					float u_xlat14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat14 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat2.xyz = vec3(u_xlat14) * u_xlat2.xyz;
					    u_xlat14 = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat3.xyz = vec3(u_xlat14) * in_NORMAL0.xyz;
					    u_xlat2.x = dot(u_xlat3.xyz, u_xlat2.xyz);
					    u_xlat2.x = log2(abs(u_xlat2.x));
					    u_xlat2.x = u_xlat2.x * _FresnelStr;
					    u_xlat2.x = exp2(u_xlat2.x);
					    u_xlat2.x = u_xlat2.x + u_xlat2.x;
					    vs_TEXCOORD4 = min(u_xlat2.x, 1.0);
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat4 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_3_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati1;
					vec4 u_xlat2;
					int u_xlati3;
					float u_xlat4;
					float u_xlat5;
					vec3 u_xlat6;
					vec3 u_xlat8;
					vec2 u_xlat10;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat6.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat6.x = inversesqrt(u_xlat6.x);
					    u_xlat6.xyz = u_xlat6.xxx * in_NORMAL0.xyz;
					    u_xlati3 = unity_StereoEyeIndex;
					    u_xlat8.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].yyy;
					    u_xlat8.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].xxx + u_xlat8.xyz;
					    u_xlat8.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].zzz + u_xlat8.xyz;
					    u_xlat8.xyz = u_xlat8.xyz + unity_WorldToObject[3].xyz;
					    u_xlat8.xyz = u_xlat8.xyz + (-in_POSITION0.xyz);
					    u_xlat4 = dot(u_xlat8.xyz, u_xlat8.xyz);
					    u_xlat4 = inversesqrt(u_xlat4);
					    u_xlat8.xyz = u_xlat8.xyz * vec3(u_xlat4);
					    u_xlat6.x = dot(u_xlat6.xyz, u_xlat8.xyz);
					    u_xlat6.x = log2(abs(u_xlat6.x));
					    u_xlat6.x = u_xlat6.x * _FresnelStr;
					    u_xlat6.x = exp2(u_xlat6.x);
					    u_xlat6.x = u_xlat6.x + u_xlat6.x;
					    vs_TEXCOORD4 = min(u_xlat6.x, 1.0);
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat5 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat5;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlat10.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati3].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati3].xy + u_xlat10.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendAdd" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					float u_xlat14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat14 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat2.xyz = vec3(u_xlat14) * u_xlat2.xyz;
					    u_xlat14 = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat3.xyz = vec3(u_xlat14) * in_NORMAL0.xyz;
					    u_xlat2.x = dot(u_xlat3.xyz, u_xlat2.xyz);
					    u_xlat2.x = log2(abs(u_xlat2.x));
					    u_xlat2.x = u_xlat2.x * _FresnelStr;
					    u_xlat2.x = exp2(u_xlat2.x);
					    u_xlat2.x = u_xlat2.x + u_xlat2.x;
					    vs_TEXCOORD4 = min(u_xlat2.x, 1.0);
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat4 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_3_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati1;
					vec4 u_xlat2;
					int u_xlati3;
					float u_xlat4;
					float u_xlat5;
					vec3 u_xlat6;
					vec3 u_xlat8;
					vec2 u_xlat10;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat6.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat6.x = inversesqrt(u_xlat6.x);
					    u_xlat6.xyz = u_xlat6.xxx * in_NORMAL0.xyz;
					    u_xlati3 = unity_StereoEyeIndex;
					    u_xlat8.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].yyy;
					    u_xlat8.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].xxx + u_xlat8.xyz;
					    u_xlat8.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].zzz + u_xlat8.xyz;
					    u_xlat8.xyz = u_xlat8.xyz + unity_WorldToObject[3].xyz;
					    u_xlat8.xyz = u_xlat8.xyz + (-in_POSITION0.xyz);
					    u_xlat4 = dot(u_xlat8.xyz, u_xlat8.xyz);
					    u_xlat4 = inversesqrt(u_xlat4);
					    u_xlat8.xyz = u_xlat8.xyz * vec3(u_xlat4);
					    u_xlat6.x = dot(u_xlat6.xyz, u_xlat8.xyz);
					    u_xlat6.x = log2(abs(u_xlat6.x));
					    u_xlat6.x = u_xlat6.x * _FresnelStr;
					    u_xlat6.x = exp2(u_xlat6.x);
					    u_xlat6.x = u_xlat6.x + u_xlat6.x;
					    vs_TEXCOORD4 = min(u_xlat6.x, 1.0);
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat5 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat5;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlat10.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati3].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati3].xy + u_xlat10.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendAdd" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					float u_xlat14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat14 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat2.xyz = vec3(u_xlat14) * u_xlat2.xyz;
					    u_xlat14 = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat3.xyz = vec3(u_xlat14) * in_NORMAL0.xyz;
					    u_xlat2.x = dot(u_xlat3.xyz, u_xlat2.xyz);
					    u_xlat2.x = log2(abs(u_xlat2.x));
					    u_xlat2.x = u_xlat2.x * _FresnelStr;
					    u_xlat2.x = exp2(u_xlat2.x);
					    u_xlat2.x = u_xlat2.x + u_xlat2.x;
					    vs_TEXCOORD4 = min(u_xlat2.x, 1.0);
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat4 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_3_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati1;
					vec4 u_xlat2;
					int u_xlati3;
					float u_xlat4;
					float u_xlat5;
					vec3 u_xlat6;
					vec3 u_xlat8;
					vec2 u_xlat10;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat6.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat6.x = inversesqrt(u_xlat6.x);
					    u_xlat6.xyz = u_xlat6.xxx * in_NORMAL0.xyz;
					    u_xlati3 = unity_StereoEyeIndex;
					    u_xlat8.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].yyy;
					    u_xlat8.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].xxx + u_xlat8.xyz;
					    u_xlat8.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].zzz + u_xlat8.xyz;
					    u_xlat8.xyz = u_xlat8.xyz + unity_WorldToObject[3].xyz;
					    u_xlat8.xyz = u_xlat8.xyz + (-in_POSITION0.xyz);
					    u_xlat4 = dot(u_xlat8.xyz, u_xlat8.xyz);
					    u_xlat4 = inversesqrt(u_xlat4);
					    u_xlat8.xyz = u_xlat8.xyz * vec3(u_xlat4);
					    u_xlat6.x = dot(u_xlat6.xyz, u_xlat8.xyz);
					    u_xlat6.x = log2(abs(u_xlat6.x));
					    u_xlat6.x = u_xlat6.x * _FresnelStr;
					    u_xlat6.x = exp2(u_xlat6.x);
					    u_xlat6.x = u_xlat6.x + u_xlat6.x;
					    vs_TEXCOORD4 = min(u_xlat6.x, 1.0);
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat5 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat5;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlat10.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati3].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati3].xy + u_xlat10.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendAdd" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					float u_xlat14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat14 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat2.xyz = vec3(u_xlat14) * u_xlat2.xyz;
					    u_xlat14 = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat3.xyz = vec3(u_xlat14) * in_NORMAL0.xyz;
					    u_xlat2.x = dot(u_xlat3.xyz, u_xlat2.xyz);
					    u_xlat2.x = log2(abs(u_xlat2.x));
					    u_xlat2.x = u_xlat2.x * _FresnelStr;
					    u_xlat2.x = exp2(u_xlat2.x);
					    u_xlat2.x = u_xlat2.x + u_xlat2.x;
					    vs_TEXCOORD4 = min(u_xlat2.x, 1.0);
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat4 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_3_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati1;
					vec4 u_xlat2;
					int u_xlati3;
					float u_xlat4;
					float u_xlat5;
					vec3 u_xlat6;
					vec3 u_xlat8;
					vec2 u_xlat10;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat6.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat6.x = inversesqrt(u_xlat6.x);
					    u_xlat6.xyz = u_xlat6.xxx * in_NORMAL0.xyz;
					    u_xlati3 = unity_StereoEyeIndex;
					    u_xlat8.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].yyy;
					    u_xlat8.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].xxx + u_xlat8.xyz;
					    u_xlat8.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].zzz + u_xlat8.xyz;
					    u_xlat8.xyz = u_xlat8.xyz + unity_WorldToObject[3].xyz;
					    u_xlat8.xyz = u_xlat8.xyz + (-in_POSITION0.xyz);
					    u_xlat4 = dot(u_xlat8.xyz, u_xlat8.xyz);
					    u_xlat4 = inversesqrt(u_xlat4);
					    u_xlat8.xyz = u_xlat8.xyz * vec3(u_xlat4);
					    u_xlat6.x = dot(u_xlat6.xyz, u_xlat8.xyz);
					    u_xlat6.x = log2(abs(u_xlat6.x));
					    u_xlat6.x = u_xlat6.x * _FresnelStr;
					    u_xlat6.x = exp2(u_xlat6.x);
					    u_xlat6.x = u_xlat6.x + u_xlat6.x;
					    vs_TEXCOORD4 = min(u_xlat6.x, 1.0);
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat5 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat5;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlat10.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati3].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati3].xy + u_xlat10.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendAdd" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					float u_xlat9;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat9 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat9 = inversesqrt(u_xlat9);
					    u_xlat2.xyz = vec3(u_xlat9) * u_xlat2.xyz;
					    u_xlat9 = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat9 = inversesqrt(u_xlat9);
					    u_xlat3.xyz = vec3(u_xlat9) * in_NORMAL0.xyz;
					    u_xlat9 = dot(u_xlat3.xyz, u_xlat2.xyz);
					    u_xlat9 = log2(abs(u_xlat9));
					    u_xlat9 = u_xlat9 * _FresnelStr;
					    u_xlat9 = exp2(u_xlat9);
					    u_xlat9 = u_xlat9 + u_xlat9;
					    vs_TEXCOORD4 = min(u_xlat9, 1.0);
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    u_xlat4 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_3_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					vec3 u_xlat5;
					vec2 u_xlat8;
					int u_xlati10;
					float u_xlat15;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat5.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat5.x = inversesqrt(u_xlat5.x);
					    u_xlat5.xyz = u_xlat5.xxx * in_NORMAL0.xyz;
					    u_xlati10 = unity_StereoEyeIndex;
					    u_xlat3.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati10].yyy;
					    u_xlat3.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati10].xxx + u_xlat3.xyz;
					    u_xlat3.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati10].zzz + u_xlat3.xyz;
					    u_xlat3.xyz = u_xlat3.xyz + unity_WorldToObject[3].xyz;
					    u_xlat3.xyz = u_xlat3.xyz + (-in_POSITION0.xyz);
					    u_xlat15 = dot(u_xlat3.xyz, u_xlat3.xyz);
					    u_xlat15 = inversesqrt(u_xlat15);
					    u_xlat3.xyz = vec3(u_xlat15) * u_xlat3.xyz;
					    u_xlat5.x = dot(u_xlat5.xyz, u_xlat3.xyz);
					    u_xlat5.x = log2(abs(u_xlat5.x));
					    u_xlat5.x = u_xlat5.x * _FresnelStr;
					    u_xlat5.x = exp2(u_xlat5.x);
					    u_xlat5.x = u_xlat5.x + u_xlat5.x;
					    vs_TEXCOORD4 = min(u_xlat5.x, 1.0);
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    u_xlat4 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlat8.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati10].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati10].xy + u_xlat8.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendAdd" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					float u_xlat9;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat9 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat9 = inversesqrt(u_xlat9);
					    u_xlat2.xyz = vec3(u_xlat9) * u_xlat2.xyz;
					    u_xlat9 = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat9 = inversesqrt(u_xlat9);
					    u_xlat3.xyz = vec3(u_xlat9) * in_NORMAL0.xyz;
					    u_xlat9 = dot(u_xlat3.xyz, u_xlat2.xyz);
					    u_xlat9 = log2(abs(u_xlat9));
					    u_xlat9 = u_xlat9 * _FresnelStr;
					    u_xlat9 = exp2(u_xlat9);
					    u_xlat9 = u_xlat9 + u_xlat9;
					    vs_TEXCOORD4 = min(u_xlat9, 1.0);
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    u_xlat4 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_3_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					vec3 u_xlat5;
					vec2 u_xlat8;
					int u_xlati10;
					float u_xlat15;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat5.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat5.x = inversesqrt(u_xlat5.x);
					    u_xlat5.xyz = u_xlat5.xxx * in_NORMAL0.xyz;
					    u_xlati10 = unity_StereoEyeIndex;
					    u_xlat3.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati10].yyy;
					    u_xlat3.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati10].xxx + u_xlat3.xyz;
					    u_xlat3.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati10].zzz + u_xlat3.xyz;
					    u_xlat3.xyz = u_xlat3.xyz + unity_WorldToObject[3].xyz;
					    u_xlat3.xyz = u_xlat3.xyz + (-in_POSITION0.xyz);
					    u_xlat15 = dot(u_xlat3.xyz, u_xlat3.xyz);
					    u_xlat15 = inversesqrt(u_xlat15);
					    u_xlat3.xyz = vec3(u_xlat15) * u_xlat3.xyz;
					    u_xlat5.x = dot(u_xlat5.xyz, u_xlat3.xyz);
					    u_xlat5.x = log2(abs(u_xlat5.x));
					    u_xlat5.x = u_xlat5.x * _FresnelStr;
					    u_xlat5.x = exp2(u_xlat5.x);
					    u_xlat5.x = u_xlat5.x + u_xlat5.x;
					    vs_TEXCOORD4 = min(u_xlat5.x, 1.0);
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    u_xlat4 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlat8.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati10].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati10].xy + u_xlat8.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendAdd" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					float u_xlat14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat14 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat2.xyz = vec3(u_xlat14) * u_xlat2.xyz;
					    u_xlat14 = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat3.xyz = vec3(u_xlat14) * in_NORMAL0.xyz;
					    u_xlat2.x = dot(u_xlat3.xyz, u_xlat2.xyz);
					    u_xlat2.x = log2(abs(u_xlat2.x));
					    u_xlat2.x = u_xlat2.x * _FresnelStr;
					    u_xlat2.x = exp2(u_xlat2.x);
					    u_xlat2.x = u_xlat2.x + u_xlat2.x;
					    vs_TEXCOORD4 = min(u_xlat2.x, 1.0);
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat4 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_3_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati1;
					vec4 u_xlat2;
					int u_xlati3;
					float u_xlat4;
					float u_xlat5;
					vec3 u_xlat6;
					vec3 u_xlat8;
					vec2 u_xlat10;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat6.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat6.x = inversesqrt(u_xlat6.x);
					    u_xlat6.xyz = u_xlat6.xxx * in_NORMAL0.xyz;
					    u_xlati3 = unity_StereoEyeIndex;
					    u_xlat8.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].yyy;
					    u_xlat8.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].xxx + u_xlat8.xyz;
					    u_xlat8.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].zzz + u_xlat8.xyz;
					    u_xlat8.xyz = u_xlat8.xyz + unity_WorldToObject[3].xyz;
					    u_xlat8.xyz = u_xlat8.xyz + (-in_POSITION0.xyz);
					    u_xlat4 = dot(u_xlat8.xyz, u_xlat8.xyz);
					    u_xlat4 = inversesqrt(u_xlat4);
					    u_xlat8.xyz = u_xlat8.xyz * vec3(u_xlat4);
					    u_xlat6.x = dot(u_xlat6.xyz, u_xlat8.xyz);
					    u_xlat6.x = log2(abs(u_xlat6.x));
					    u_xlat6.x = u_xlat6.x * _FresnelStr;
					    u_xlat6.x = exp2(u_xlat6.x);
					    u_xlat6.x = u_xlat6.x + u_xlat6.x;
					    vs_TEXCOORD4 = min(u_xlat6.x, 1.0);
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat5 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat5;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlat10.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati3].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati3].xy + u_xlat10.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendAdd" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					float u_xlat14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat14 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat2.xyz = vec3(u_xlat14) * u_xlat2.xyz;
					    u_xlat14 = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat3.xyz = vec3(u_xlat14) * in_NORMAL0.xyz;
					    u_xlat2.x = dot(u_xlat3.xyz, u_xlat2.xyz);
					    u_xlat2.x = log2(abs(u_xlat2.x));
					    u_xlat2.x = u_xlat2.x * _FresnelStr;
					    u_xlat2.x = exp2(u_xlat2.x);
					    u_xlat2.x = u_xlat2.x + u_xlat2.x;
					    vs_TEXCOORD4 = min(u_xlat2.x, 1.0);
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat4 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_3_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati1;
					vec4 u_xlat2;
					int u_xlati3;
					float u_xlat4;
					float u_xlat5;
					vec3 u_xlat6;
					vec3 u_xlat8;
					vec2 u_xlat10;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat6.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat6.x = inversesqrt(u_xlat6.x);
					    u_xlat6.xyz = u_xlat6.xxx * in_NORMAL0.xyz;
					    u_xlati3 = unity_StereoEyeIndex;
					    u_xlat8.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].yyy;
					    u_xlat8.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].xxx + u_xlat8.xyz;
					    u_xlat8.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].zzz + u_xlat8.xyz;
					    u_xlat8.xyz = u_xlat8.xyz + unity_WorldToObject[3].xyz;
					    u_xlat8.xyz = u_xlat8.xyz + (-in_POSITION0.xyz);
					    u_xlat4 = dot(u_xlat8.xyz, u_xlat8.xyz);
					    u_xlat4 = inversesqrt(u_xlat4);
					    u_xlat8.xyz = u_xlat8.xyz * vec3(u_xlat4);
					    u_xlat6.x = dot(u_xlat6.xyz, u_xlat8.xyz);
					    u_xlat6.x = log2(abs(u_xlat6.x));
					    u_xlat6.x = u_xlat6.x * _FresnelStr;
					    u_xlat6.x = exp2(u_xlat6.x);
					    u_xlat6.x = u_xlat6.x + u_xlat6.x;
					    vs_TEXCOORD4 = min(u_xlat6.x, 1.0);
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat5 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat5;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlat10.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati3].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati3].xy + u_xlat10.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendAdd" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					float u_xlat14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat14 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat2.xyz = vec3(u_xlat14) * u_xlat2.xyz;
					    u_xlat14 = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat3.xyz = vec3(u_xlat14) * in_NORMAL0.xyz;
					    u_xlat2.x = dot(u_xlat3.xyz, u_xlat2.xyz);
					    u_xlat2.x = log2(abs(u_xlat2.x));
					    u_xlat2.x = u_xlat2.x * _FresnelStr;
					    u_xlat2.x = exp2(u_xlat2.x);
					    u_xlat2.x = u_xlat2.x + u_xlat2.x;
					    vs_TEXCOORD4 = min(u_xlat2.x, 1.0);
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat4 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_3_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati1;
					vec4 u_xlat2;
					int u_xlati3;
					float u_xlat4;
					float u_xlat5;
					vec3 u_xlat6;
					vec3 u_xlat8;
					vec2 u_xlat10;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat6.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat6.x = inversesqrt(u_xlat6.x);
					    u_xlat6.xyz = u_xlat6.xxx * in_NORMAL0.xyz;
					    u_xlati3 = unity_StereoEyeIndex;
					    u_xlat8.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].yyy;
					    u_xlat8.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].xxx + u_xlat8.xyz;
					    u_xlat8.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].zzz + u_xlat8.xyz;
					    u_xlat8.xyz = u_xlat8.xyz + unity_WorldToObject[3].xyz;
					    u_xlat8.xyz = u_xlat8.xyz + (-in_POSITION0.xyz);
					    u_xlat4 = dot(u_xlat8.xyz, u_xlat8.xyz);
					    u_xlat4 = inversesqrt(u_xlat4);
					    u_xlat8.xyz = u_xlat8.xyz * vec3(u_xlat4);
					    u_xlat6.x = dot(u_xlat6.xyz, u_xlat8.xyz);
					    u_xlat6.x = log2(abs(u_xlat6.x));
					    u_xlat6.x = u_xlat6.x * _FresnelStr;
					    u_xlat6.x = exp2(u_xlat6.x);
					    u_xlat6.x = u_xlat6.x + u_xlat6.x;
					    vs_TEXCOORD4 = min(u_xlat6.x, 1.0);
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat5 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat5;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlat10.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati3].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati3].xy + u_xlat10.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendAdd" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					float u_xlat14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat14 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat2.xyz = vec3(u_xlat14) * u_xlat2.xyz;
					    u_xlat14 = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat3.xyz = vec3(u_xlat14) * in_NORMAL0.xyz;
					    u_xlat2.x = dot(u_xlat3.xyz, u_xlat2.xyz);
					    u_xlat2.x = log2(abs(u_xlat2.x));
					    u_xlat2.x = u_xlat2.x * _FresnelStr;
					    u_xlat2.x = exp2(u_xlat2.x);
					    u_xlat2.x = u_xlat2.x + u_xlat2.x;
					    vs_TEXCOORD4 = min(u_xlat2.x, 1.0);
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat4 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_3_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati1;
					vec4 u_xlat2;
					int u_xlati3;
					float u_xlat4;
					float u_xlat5;
					vec3 u_xlat6;
					vec3 u_xlat8;
					vec2 u_xlat10;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat6.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat6.x = inversesqrt(u_xlat6.x);
					    u_xlat6.xyz = u_xlat6.xxx * in_NORMAL0.xyz;
					    u_xlati3 = unity_StereoEyeIndex;
					    u_xlat8.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].yyy;
					    u_xlat8.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].xxx + u_xlat8.xyz;
					    u_xlat8.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].zzz + u_xlat8.xyz;
					    u_xlat8.xyz = u_xlat8.xyz + unity_WorldToObject[3].xyz;
					    u_xlat8.xyz = u_xlat8.xyz + (-in_POSITION0.xyz);
					    u_xlat4 = dot(u_xlat8.xyz, u_xlat8.xyz);
					    u_xlat4 = inversesqrt(u_xlat4);
					    u_xlat8.xyz = u_xlat8.xyz * vec3(u_xlat4);
					    u_xlat6.x = dot(u_xlat6.xyz, u_xlat8.xyz);
					    u_xlat6.x = log2(abs(u_xlat6.x));
					    u_xlat6.x = u_xlat6.x * _FresnelStr;
					    u_xlat6.x = exp2(u_xlat6.x);
					    u_xlat6.x = u_xlat6.x + u_xlat6.x;
					    vs_TEXCOORD4 = min(u_xlat6.x, 1.0);
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat5 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat5;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlat10.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati3].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati3].xy + u_xlat10.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendAdd" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					float u_xlat14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat14 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat2.xyz = vec3(u_xlat14) * u_xlat2.xyz;
					    u_xlat14 = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat3.xyz = vec3(u_xlat14) * in_NORMAL0.xyz;
					    u_xlat2.x = dot(u_xlat3.xyz, u_xlat2.xyz);
					    u_xlat2.x = log2(abs(u_xlat2.x));
					    u_xlat2.x = u_xlat2.x * _FresnelStr;
					    u_xlat2.x = exp2(u_xlat2.x);
					    u_xlat2.x = u_xlat2.x + u_xlat2.x;
					    vs_TEXCOORD4 = min(u_xlat2.x, 1.0);
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat4 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_3_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati1;
					vec4 u_xlat2;
					int u_xlati3;
					float u_xlat4;
					float u_xlat5;
					vec3 u_xlat6;
					vec3 u_xlat8;
					vec2 u_xlat10;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat6.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat6.x = inversesqrt(u_xlat6.x);
					    u_xlat6.xyz = u_xlat6.xxx * in_NORMAL0.xyz;
					    u_xlati3 = unity_StereoEyeIndex;
					    u_xlat8.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].yyy;
					    u_xlat8.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].xxx + u_xlat8.xyz;
					    u_xlat8.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].zzz + u_xlat8.xyz;
					    u_xlat8.xyz = u_xlat8.xyz + unity_WorldToObject[3].xyz;
					    u_xlat8.xyz = u_xlat8.xyz + (-in_POSITION0.xyz);
					    u_xlat4 = dot(u_xlat8.xyz, u_xlat8.xyz);
					    u_xlat4 = inversesqrt(u_xlat4);
					    u_xlat8.xyz = u_xlat8.xyz * vec3(u_xlat4);
					    u_xlat6.x = dot(u_xlat6.xyz, u_xlat8.xyz);
					    u_xlat6.x = log2(abs(u_xlat6.x));
					    u_xlat6.x = u_xlat6.x * _FresnelStr;
					    u_xlat6.x = exp2(u_xlat6.x);
					    u_xlat6.x = u_xlat6.x + u_xlat6.x;
					    vs_TEXCOORD4 = min(u_xlat6.x, 1.0);
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat5 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat5;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlat10.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati3].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati3].xy + u_xlat10.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendAdd" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					float u_xlat14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat14 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat2.xyz = vec3(u_xlat14) * u_xlat2.xyz;
					    u_xlat14 = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat3.xyz = vec3(u_xlat14) * in_NORMAL0.xyz;
					    u_xlat2.x = dot(u_xlat3.xyz, u_xlat2.xyz);
					    u_xlat2.x = log2(abs(u_xlat2.x));
					    u_xlat2.x = u_xlat2.x * _FresnelStr;
					    u_xlat2.x = exp2(u_xlat2.x);
					    u_xlat2.x = u_xlat2.x + u_xlat2.x;
					    vs_TEXCOORD4 = min(u_xlat2.x, 1.0);
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat4 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_3_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati1;
					vec4 u_xlat2;
					int u_xlati3;
					float u_xlat4;
					float u_xlat5;
					vec3 u_xlat6;
					vec3 u_xlat8;
					vec2 u_xlat10;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat6.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat6.x = inversesqrt(u_xlat6.x);
					    u_xlat6.xyz = u_xlat6.xxx * in_NORMAL0.xyz;
					    u_xlati3 = unity_StereoEyeIndex;
					    u_xlat8.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].yyy;
					    u_xlat8.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].xxx + u_xlat8.xyz;
					    u_xlat8.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].zzz + u_xlat8.xyz;
					    u_xlat8.xyz = u_xlat8.xyz + unity_WorldToObject[3].xyz;
					    u_xlat8.xyz = u_xlat8.xyz + (-in_POSITION0.xyz);
					    u_xlat4 = dot(u_xlat8.xyz, u_xlat8.xyz);
					    u_xlat4 = inversesqrt(u_xlat4);
					    u_xlat8.xyz = u_xlat8.xyz * vec3(u_xlat4);
					    u_xlat6.x = dot(u_xlat6.xyz, u_xlat8.xyz);
					    u_xlat6.x = log2(abs(u_xlat6.x));
					    u_xlat6.x = u_xlat6.x * _FresnelStr;
					    u_xlat6.x = exp2(u_xlat6.x);
					    u_xlat6.x = u_xlat6.x + u_xlat6.x;
					    vs_TEXCOORD4 = min(u_xlat6.x, 1.0);
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat5 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat5;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlat10.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati3].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati3].xy + u_xlat10.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendAdd" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    u_xlat2 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat2;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec2 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					float u_xlat3;
					int u_xlati6;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    u_xlat3 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat3;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlati6 = unity_StereoEyeIndex;
					    u_xlat1.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati6].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati6].xy + u_xlat1.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendAdd" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    u_xlat2 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat2;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec2 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					float u_xlat3;
					int u_xlati6;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    u_xlat3 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat3;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlati6 = unity_StereoEyeIndex;
					    u_xlat1.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati6].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati6].xy + u_xlat1.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendAdd" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat2 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat2;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec2 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					float u_xlat3;
					int u_xlati6;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat3 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat3;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlati6 = unity_StereoEyeIndex;
					    u_xlat1.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati6].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati6].xy + u_xlat1.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendAdd" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat2 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat2;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec2 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					float u_xlat3;
					int u_xlati6;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat3 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat3;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlati6 = unity_StereoEyeIndex;
					    u_xlat1.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati6].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati6].xy + u_xlat1.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendAdd" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat2 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat2;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec2 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					float u_xlat3;
					int u_xlati6;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat3 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat3;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlati6 = unity_StereoEyeIndex;
					    u_xlat1.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati6].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati6].xy + u_xlat1.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendAdd" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat2 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat2;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec2 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					float u_xlat3;
					int u_xlati6;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat3 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat3;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlati6 = unity_StereoEyeIndex;
					    u_xlat1.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati6].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati6].xy + u_xlat1.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendAdd" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat2 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat2;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec2 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					float u_xlat3;
					int u_xlati6;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat3 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat3;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlati6 = unity_StereoEyeIndex;
					    u_xlat1.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati6].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati6].xy + u_xlat1.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendAdd" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat2 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat2;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec2 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					float u_xlat3;
					int u_xlati6;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat3 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat3;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlati6 = unity_StereoEyeIndex;
					    u_xlat1.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati6].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati6].xy + u_xlat1.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendAdd" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    u_xlat2 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat2;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec2 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					float u_xlat3;
					int u_xlati6;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    u_xlat3 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat3;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlati6 = unity_StereoEyeIndex;
					    u_xlat1.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati6].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati6].xy + u_xlat1.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendAdd" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    u_xlat2 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat2;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec2 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					float u_xlat3;
					int u_xlati6;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    u_xlat3 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat3;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlati6 = unity_StereoEyeIndex;
					    u_xlat1.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati6].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati6].xy + u_xlat1.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendAdd" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat2 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat2;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec2 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					float u_xlat3;
					int u_xlati6;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat3 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat3;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlati6 = unity_StereoEyeIndex;
					    u_xlat1.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati6].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati6].xy + u_xlat1.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendAdd" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat2 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat2;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec2 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					float u_xlat3;
					int u_xlati6;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat3 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat3;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlati6 = unity_StereoEyeIndex;
					    u_xlat1.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati6].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati6].xy + u_xlat1.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendAdd" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat2 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat2;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec2 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					float u_xlat3;
					int u_xlati6;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat3 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat3;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlati6 = unity_StereoEyeIndex;
					    u_xlat1.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati6].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati6].xy + u_xlat1.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendAdd" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat2 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat2;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec2 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					float u_xlat3;
					int u_xlati6;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat3 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat3;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlati6 = unity_StereoEyeIndex;
					    u_xlat1.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati6].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati6].xy + u_xlat1.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendAdd" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat2 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat2;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec2 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					float u_xlat3;
					int u_xlati6;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat3 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat3;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlati6 = unity_StereoEyeIndex;
					    u_xlat1.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati6].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati6].xy + u_xlat1.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendAdd" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat2 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat2;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec2 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					float u_xlat3;
					int u_xlati6;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat3 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat3;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlati6 = unity_StereoEyeIndex;
					    u_xlat1.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati6].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati6].xy + u_xlat1.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendAdd" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					float u_xlat9;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat9 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat9 = inversesqrt(u_xlat9);
					    u_xlat2.xyz = vec3(u_xlat9) * u_xlat2.xyz;
					    u_xlat9 = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat9 = inversesqrt(u_xlat9);
					    u_xlat3.xyz = vec3(u_xlat9) * in_NORMAL0.xyz;
					    u_xlat9 = dot(u_xlat3.xyz, u_xlat2.xyz);
					    u_xlat9 = log2(abs(u_xlat9));
					    u_xlat9 = u_xlat9 * _FresnelStr;
					    u_xlat9 = exp2(u_xlat9);
					    u_xlat9 = u_xlat9 + u_xlat9;
					    vs_TEXCOORD4 = min(u_xlat9, 1.0);
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    u_xlat4 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_3_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					vec3 u_xlat5;
					vec2 u_xlat8;
					int u_xlati10;
					float u_xlat15;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat5.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat5.x = inversesqrt(u_xlat5.x);
					    u_xlat5.xyz = u_xlat5.xxx * in_NORMAL0.xyz;
					    u_xlati10 = unity_StereoEyeIndex;
					    u_xlat3.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati10].yyy;
					    u_xlat3.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati10].xxx + u_xlat3.xyz;
					    u_xlat3.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati10].zzz + u_xlat3.xyz;
					    u_xlat3.xyz = u_xlat3.xyz + unity_WorldToObject[3].xyz;
					    u_xlat3.xyz = u_xlat3.xyz + (-in_POSITION0.xyz);
					    u_xlat15 = dot(u_xlat3.xyz, u_xlat3.xyz);
					    u_xlat15 = inversesqrt(u_xlat15);
					    u_xlat3.xyz = vec3(u_xlat15) * u_xlat3.xyz;
					    u_xlat5.x = dot(u_xlat5.xyz, u_xlat3.xyz);
					    u_xlat5.x = log2(abs(u_xlat5.x));
					    u_xlat5.x = u_xlat5.x * _FresnelStr;
					    u_xlat5.x = exp2(u_xlat5.x);
					    u_xlat5.x = u_xlat5.x + u_xlat5.x;
					    vs_TEXCOORD4 = min(u_xlat5.x, 1.0);
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    u_xlat4 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlat8.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati10].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati10].xy + u_xlat8.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendAdd" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					float u_xlat9;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat9 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat9 = inversesqrt(u_xlat9);
					    u_xlat2.xyz = vec3(u_xlat9) * u_xlat2.xyz;
					    u_xlat9 = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat9 = inversesqrt(u_xlat9);
					    u_xlat3.xyz = vec3(u_xlat9) * in_NORMAL0.xyz;
					    u_xlat9 = dot(u_xlat3.xyz, u_xlat2.xyz);
					    u_xlat9 = log2(abs(u_xlat9));
					    u_xlat9 = u_xlat9 * _FresnelStr;
					    u_xlat9 = exp2(u_xlat9);
					    u_xlat9 = u_xlat9 + u_xlat9;
					    vs_TEXCOORD4 = min(u_xlat9, 1.0);
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    u_xlat4 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_3_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					vec3 u_xlat5;
					vec2 u_xlat8;
					int u_xlati10;
					float u_xlat15;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat5.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat5.x = inversesqrt(u_xlat5.x);
					    u_xlat5.xyz = u_xlat5.xxx * in_NORMAL0.xyz;
					    u_xlati10 = unity_StereoEyeIndex;
					    u_xlat3.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati10].yyy;
					    u_xlat3.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati10].xxx + u_xlat3.xyz;
					    u_xlat3.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati10].zzz + u_xlat3.xyz;
					    u_xlat3.xyz = u_xlat3.xyz + unity_WorldToObject[3].xyz;
					    u_xlat3.xyz = u_xlat3.xyz + (-in_POSITION0.xyz);
					    u_xlat15 = dot(u_xlat3.xyz, u_xlat3.xyz);
					    u_xlat15 = inversesqrt(u_xlat15);
					    u_xlat3.xyz = vec3(u_xlat15) * u_xlat3.xyz;
					    u_xlat5.x = dot(u_xlat5.xyz, u_xlat3.xyz);
					    u_xlat5.x = log2(abs(u_xlat5.x));
					    u_xlat5.x = u_xlat5.x * _FresnelStr;
					    u_xlat5.x = exp2(u_xlat5.x);
					    u_xlat5.x = u_xlat5.x + u_xlat5.x;
					    vs_TEXCOORD4 = min(u_xlat5.x, 1.0);
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    u_xlat4 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlat8.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati10].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati10].xy + u_xlat8.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendAdd" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					float u_xlat14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat14 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat2.xyz = vec3(u_xlat14) * u_xlat2.xyz;
					    u_xlat14 = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat3.xyz = vec3(u_xlat14) * in_NORMAL0.xyz;
					    u_xlat2.x = dot(u_xlat3.xyz, u_xlat2.xyz);
					    u_xlat2.x = log2(abs(u_xlat2.x));
					    u_xlat2.x = u_xlat2.x * _FresnelStr;
					    u_xlat2.x = exp2(u_xlat2.x);
					    u_xlat2.x = u_xlat2.x + u_xlat2.x;
					    vs_TEXCOORD4 = min(u_xlat2.x, 1.0);
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat4 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_3_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati1;
					vec4 u_xlat2;
					int u_xlati3;
					float u_xlat4;
					float u_xlat5;
					vec3 u_xlat6;
					vec3 u_xlat8;
					vec2 u_xlat10;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat6.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat6.x = inversesqrt(u_xlat6.x);
					    u_xlat6.xyz = u_xlat6.xxx * in_NORMAL0.xyz;
					    u_xlati3 = unity_StereoEyeIndex;
					    u_xlat8.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].yyy;
					    u_xlat8.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].xxx + u_xlat8.xyz;
					    u_xlat8.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].zzz + u_xlat8.xyz;
					    u_xlat8.xyz = u_xlat8.xyz + unity_WorldToObject[3].xyz;
					    u_xlat8.xyz = u_xlat8.xyz + (-in_POSITION0.xyz);
					    u_xlat4 = dot(u_xlat8.xyz, u_xlat8.xyz);
					    u_xlat4 = inversesqrt(u_xlat4);
					    u_xlat8.xyz = u_xlat8.xyz * vec3(u_xlat4);
					    u_xlat6.x = dot(u_xlat6.xyz, u_xlat8.xyz);
					    u_xlat6.x = log2(abs(u_xlat6.x));
					    u_xlat6.x = u_xlat6.x * _FresnelStr;
					    u_xlat6.x = exp2(u_xlat6.x);
					    u_xlat6.x = u_xlat6.x + u_xlat6.x;
					    vs_TEXCOORD4 = min(u_xlat6.x, 1.0);
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat5 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat5;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlat10.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati3].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati3].xy + u_xlat10.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendAdd" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					float u_xlat14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat14 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat2.xyz = vec3(u_xlat14) * u_xlat2.xyz;
					    u_xlat14 = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat3.xyz = vec3(u_xlat14) * in_NORMAL0.xyz;
					    u_xlat2.x = dot(u_xlat3.xyz, u_xlat2.xyz);
					    u_xlat2.x = log2(abs(u_xlat2.x));
					    u_xlat2.x = u_xlat2.x * _FresnelStr;
					    u_xlat2.x = exp2(u_xlat2.x);
					    u_xlat2.x = u_xlat2.x + u_xlat2.x;
					    vs_TEXCOORD4 = min(u_xlat2.x, 1.0);
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat4 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_3_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati1;
					vec4 u_xlat2;
					int u_xlati3;
					float u_xlat4;
					float u_xlat5;
					vec3 u_xlat6;
					vec3 u_xlat8;
					vec2 u_xlat10;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat6.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat6.x = inversesqrt(u_xlat6.x);
					    u_xlat6.xyz = u_xlat6.xxx * in_NORMAL0.xyz;
					    u_xlati3 = unity_StereoEyeIndex;
					    u_xlat8.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].yyy;
					    u_xlat8.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].xxx + u_xlat8.xyz;
					    u_xlat8.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].zzz + u_xlat8.xyz;
					    u_xlat8.xyz = u_xlat8.xyz + unity_WorldToObject[3].xyz;
					    u_xlat8.xyz = u_xlat8.xyz + (-in_POSITION0.xyz);
					    u_xlat4 = dot(u_xlat8.xyz, u_xlat8.xyz);
					    u_xlat4 = inversesqrt(u_xlat4);
					    u_xlat8.xyz = u_xlat8.xyz * vec3(u_xlat4);
					    u_xlat6.x = dot(u_xlat6.xyz, u_xlat8.xyz);
					    u_xlat6.x = log2(abs(u_xlat6.x));
					    u_xlat6.x = u_xlat6.x * _FresnelStr;
					    u_xlat6.x = exp2(u_xlat6.x);
					    u_xlat6.x = u_xlat6.x + u_xlat6.x;
					    vs_TEXCOORD4 = min(u_xlat6.x, 1.0);
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat5 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat5;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlat10.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati3].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati3].xy + u_xlat10.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendAdd" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					float u_xlat14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat14 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat2.xyz = vec3(u_xlat14) * u_xlat2.xyz;
					    u_xlat14 = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat3.xyz = vec3(u_xlat14) * in_NORMAL0.xyz;
					    u_xlat2.x = dot(u_xlat3.xyz, u_xlat2.xyz);
					    u_xlat2.x = log2(abs(u_xlat2.x));
					    u_xlat2.x = u_xlat2.x * _FresnelStr;
					    u_xlat2.x = exp2(u_xlat2.x);
					    u_xlat2.x = u_xlat2.x + u_xlat2.x;
					    vs_TEXCOORD4 = min(u_xlat2.x, 1.0);
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat4 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_3_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati1;
					vec4 u_xlat2;
					int u_xlati3;
					float u_xlat4;
					float u_xlat5;
					vec3 u_xlat6;
					vec3 u_xlat8;
					vec2 u_xlat10;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat6.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat6.x = inversesqrt(u_xlat6.x);
					    u_xlat6.xyz = u_xlat6.xxx * in_NORMAL0.xyz;
					    u_xlati3 = unity_StereoEyeIndex;
					    u_xlat8.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].yyy;
					    u_xlat8.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].xxx + u_xlat8.xyz;
					    u_xlat8.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].zzz + u_xlat8.xyz;
					    u_xlat8.xyz = u_xlat8.xyz + unity_WorldToObject[3].xyz;
					    u_xlat8.xyz = u_xlat8.xyz + (-in_POSITION0.xyz);
					    u_xlat4 = dot(u_xlat8.xyz, u_xlat8.xyz);
					    u_xlat4 = inversesqrt(u_xlat4);
					    u_xlat8.xyz = u_xlat8.xyz * vec3(u_xlat4);
					    u_xlat6.x = dot(u_xlat6.xyz, u_xlat8.xyz);
					    u_xlat6.x = log2(abs(u_xlat6.x));
					    u_xlat6.x = u_xlat6.x * _FresnelStr;
					    u_xlat6.x = exp2(u_xlat6.x);
					    u_xlat6.x = u_xlat6.x + u_xlat6.x;
					    vs_TEXCOORD4 = min(u_xlat6.x, 1.0);
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat5 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat5;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlat10.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati3].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati3].xy + u_xlat10.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendAdd" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					float u_xlat14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat14 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat2.xyz = vec3(u_xlat14) * u_xlat2.xyz;
					    u_xlat14 = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat3.xyz = vec3(u_xlat14) * in_NORMAL0.xyz;
					    u_xlat2.x = dot(u_xlat3.xyz, u_xlat2.xyz);
					    u_xlat2.x = log2(abs(u_xlat2.x));
					    u_xlat2.x = u_xlat2.x * _FresnelStr;
					    u_xlat2.x = exp2(u_xlat2.x);
					    u_xlat2.x = u_xlat2.x + u_xlat2.x;
					    vs_TEXCOORD4 = min(u_xlat2.x, 1.0);
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat4 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_3_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati1;
					vec4 u_xlat2;
					int u_xlati3;
					float u_xlat4;
					float u_xlat5;
					vec3 u_xlat6;
					vec3 u_xlat8;
					vec2 u_xlat10;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat6.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat6.x = inversesqrt(u_xlat6.x);
					    u_xlat6.xyz = u_xlat6.xxx * in_NORMAL0.xyz;
					    u_xlati3 = unity_StereoEyeIndex;
					    u_xlat8.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].yyy;
					    u_xlat8.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].xxx + u_xlat8.xyz;
					    u_xlat8.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].zzz + u_xlat8.xyz;
					    u_xlat8.xyz = u_xlat8.xyz + unity_WorldToObject[3].xyz;
					    u_xlat8.xyz = u_xlat8.xyz + (-in_POSITION0.xyz);
					    u_xlat4 = dot(u_xlat8.xyz, u_xlat8.xyz);
					    u_xlat4 = inversesqrt(u_xlat4);
					    u_xlat8.xyz = u_xlat8.xyz * vec3(u_xlat4);
					    u_xlat6.x = dot(u_xlat6.xyz, u_xlat8.xyz);
					    u_xlat6.x = log2(abs(u_xlat6.x));
					    u_xlat6.x = u_xlat6.x * _FresnelStr;
					    u_xlat6.x = exp2(u_xlat6.x);
					    u_xlat6.x = u_xlat6.x + u_xlat6.x;
					    vs_TEXCOORD4 = min(u_xlat6.x, 1.0);
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat5 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat5;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlat10.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati3].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati3].xy + u_xlat10.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendAdd" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					float u_xlat14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat14 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat2.xyz = vec3(u_xlat14) * u_xlat2.xyz;
					    u_xlat14 = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat3.xyz = vec3(u_xlat14) * in_NORMAL0.xyz;
					    u_xlat2.x = dot(u_xlat3.xyz, u_xlat2.xyz);
					    u_xlat2.x = log2(abs(u_xlat2.x));
					    u_xlat2.x = u_xlat2.x * _FresnelStr;
					    u_xlat2.x = exp2(u_xlat2.x);
					    u_xlat2.x = u_xlat2.x + u_xlat2.x;
					    vs_TEXCOORD4 = min(u_xlat2.x, 1.0);
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat4 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_3_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati1;
					vec4 u_xlat2;
					int u_xlati3;
					float u_xlat4;
					float u_xlat5;
					vec3 u_xlat6;
					vec3 u_xlat8;
					vec2 u_xlat10;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat6.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat6.x = inversesqrt(u_xlat6.x);
					    u_xlat6.xyz = u_xlat6.xxx * in_NORMAL0.xyz;
					    u_xlati3 = unity_StereoEyeIndex;
					    u_xlat8.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].yyy;
					    u_xlat8.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].xxx + u_xlat8.xyz;
					    u_xlat8.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].zzz + u_xlat8.xyz;
					    u_xlat8.xyz = u_xlat8.xyz + unity_WorldToObject[3].xyz;
					    u_xlat8.xyz = u_xlat8.xyz + (-in_POSITION0.xyz);
					    u_xlat4 = dot(u_xlat8.xyz, u_xlat8.xyz);
					    u_xlat4 = inversesqrt(u_xlat4);
					    u_xlat8.xyz = u_xlat8.xyz * vec3(u_xlat4);
					    u_xlat6.x = dot(u_xlat6.xyz, u_xlat8.xyz);
					    u_xlat6.x = log2(abs(u_xlat6.x));
					    u_xlat6.x = u_xlat6.x * _FresnelStr;
					    u_xlat6.x = exp2(u_xlat6.x);
					    u_xlat6.x = u_xlat6.x + u_xlat6.x;
					    vs_TEXCOORD4 = min(u_xlat6.x, 1.0);
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat5 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat5;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlat10.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati3].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati3].xy + u_xlat10.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendAdd" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					float u_xlat14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat14 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat2.xyz = vec3(u_xlat14) * u_xlat2.xyz;
					    u_xlat14 = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat3.xyz = vec3(u_xlat14) * in_NORMAL0.xyz;
					    u_xlat2.x = dot(u_xlat3.xyz, u_xlat2.xyz);
					    u_xlat2.x = log2(abs(u_xlat2.x));
					    u_xlat2.x = u_xlat2.x * _FresnelStr;
					    u_xlat2.x = exp2(u_xlat2.x);
					    u_xlat2.x = u_xlat2.x + u_xlat2.x;
					    vs_TEXCOORD4 = min(u_xlat2.x, 1.0);
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat4 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_3_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati1;
					vec4 u_xlat2;
					int u_xlati3;
					float u_xlat4;
					float u_xlat5;
					vec3 u_xlat6;
					vec3 u_xlat8;
					vec2 u_xlat10;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat6.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat6.x = inversesqrt(u_xlat6.x);
					    u_xlat6.xyz = u_xlat6.xxx * in_NORMAL0.xyz;
					    u_xlati3 = unity_StereoEyeIndex;
					    u_xlat8.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].yyy;
					    u_xlat8.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].xxx + u_xlat8.xyz;
					    u_xlat8.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].zzz + u_xlat8.xyz;
					    u_xlat8.xyz = u_xlat8.xyz + unity_WorldToObject[3].xyz;
					    u_xlat8.xyz = u_xlat8.xyz + (-in_POSITION0.xyz);
					    u_xlat4 = dot(u_xlat8.xyz, u_xlat8.xyz);
					    u_xlat4 = inversesqrt(u_xlat4);
					    u_xlat8.xyz = u_xlat8.xyz * vec3(u_xlat4);
					    u_xlat6.x = dot(u_xlat6.xyz, u_xlat8.xyz);
					    u_xlat6.x = log2(abs(u_xlat6.x));
					    u_xlat6.x = u_xlat6.x * _FresnelStr;
					    u_xlat6.x = exp2(u_xlat6.x);
					    u_xlat6.x = u_xlat6.x + u_xlat6.x;
					    vs_TEXCOORD4 = min(u_xlat6.x, 1.0);
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat5 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat5;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlat10.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati3].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati3].xy + u_xlat10.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendAdd" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					float u_xlat9;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat9 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat9 = inversesqrt(u_xlat9);
					    u_xlat2.xyz = vec3(u_xlat9) * u_xlat2.xyz;
					    u_xlat9 = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat9 = inversesqrt(u_xlat9);
					    u_xlat3.xyz = vec3(u_xlat9) * in_NORMAL0.xyz;
					    u_xlat9 = dot(u_xlat3.xyz, u_xlat2.xyz);
					    u_xlat9 = log2(abs(u_xlat9));
					    u_xlat9 = u_xlat9 * _FresnelStr;
					    u_xlat9 = exp2(u_xlat9);
					    u_xlat9 = u_xlat9 + u_xlat9;
					    vs_TEXCOORD4 = min(u_xlat9, 1.0);
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    u_xlat4 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_3_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					vec3 u_xlat5;
					vec2 u_xlat8;
					int u_xlati10;
					float u_xlat15;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat5.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat5.x = inversesqrt(u_xlat5.x);
					    u_xlat5.xyz = u_xlat5.xxx * in_NORMAL0.xyz;
					    u_xlati10 = unity_StereoEyeIndex;
					    u_xlat3.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati10].yyy;
					    u_xlat3.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati10].xxx + u_xlat3.xyz;
					    u_xlat3.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati10].zzz + u_xlat3.xyz;
					    u_xlat3.xyz = u_xlat3.xyz + unity_WorldToObject[3].xyz;
					    u_xlat3.xyz = u_xlat3.xyz + (-in_POSITION0.xyz);
					    u_xlat15 = dot(u_xlat3.xyz, u_xlat3.xyz);
					    u_xlat15 = inversesqrt(u_xlat15);
					    u_xlat3.xyz = vec3(u_xlat15) * u_xlat3.xyz;
					    u_xlat5.x = dot(u_xlat5.xyz, u_xlat3.xyz);
					    u_xlat5.x = log2(abs(u_xlat5.x));
					    u_xlat5.x = u_xlat5.x * _FresnelStr;
					    u_xlat5.x = exp2(u_xlat5.x);
					    u_xlat5.x = u_xlat5.x + u_xlat5.x;
					    vs_TEXCOORD4 = min(u_xlat5.x, 1.0);
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    u_xlat4 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlat8.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati10].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati10].xy + u_xlat8.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendAdd" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					float u_xlat9;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat9 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat9 = inversesqrt(u_xlat9);
					    u_xlat2.xyz = vec3(u_xlat9) * u_xlat2.xyz;
					    u_xlat9 = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat9 = inversesqrt(u_xlat9);
					    u_xlat3.xyz = vec3(u_xlat9) * in_NORMAL0.xyz;
					    u_xlat9 = dot(u_xlat3.xyz, u_xlat2.xyz);
					    u_xlat9 = log2(abs(u_xlat9));
					    u_xlat9 = u_xlat9 * _FresnelStr;
					    u_xlat9 = exp2(u_xlat9);
					    u_xlat9 = u_xlat9 + u_xlat9;
					    vs_TEXCOORD4 = min(u_xlat9, 1.0);
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    u_xlat4 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_3_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					vec3 u_xlat5;
					vec2 u_xlat8;
					int u_xlati10;
					float u_xlat15;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat5.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat5.x = inversesqrt(u_xlat5.x);
					    u_xlat5.xyz = u_xlat5.xxx * in_NORMAL0.xyz;
					    u_xlati10 = unity_StereoEyeIndex;
					    u_xlat3.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati10].yyy;
					    u_xlat3.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati10].xxx + u_xlat3.xyz;
					    u_xlat3.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati10].zzz + u_xlat3.xyz;
					    u_xlat3.xyz = u_xlat3.xyz + unity_WorldToObject[3].xyz;
					    u_xlat3.xyz = u_xlat3.xyz + (-in_POSITION0.xyz);
					    u_xlat15 = dot(u_xlat3.xyz, u_xlat3.xyz);
					    u_xlat15 = inversesqrt(u_xlat15);
					    u_xlat3.xyz = vec3(u_xlat15) * u_xlat3.xyz;
					    u_xlat5.x = dot(u_xlat5.xyz, u_xlat3.xyz);
					    u_xlat5.x = log2(abs(u_xlat5.x));
					    u_xlat5.x = u_xlat5.x * _FresnelStr;
					    u_xlat5.x = exp2(u_xlat5.x);
					    u_xlat5.x = u_xlat5.x + u_xlat5.x;
					    vs_TEXCOORD4 = min(u_xlat5.x, 1.0);
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    u_xlat4 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlat8.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati10].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati10].xy + u_xlat8.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendAdd" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					float u_xlat14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat14 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat2.xyz = vec3(u_xlat14) * u_xlat2.xyz;
					    u_xlat14 = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat3.xyz = vec3(u_xlat14) * in_NORMAL0.xyz;
					    u_xlat2.x = dot(u_xlat3.xyz, u_xlat2.xyz);
					    u_xlat2.x = log2(abs(u_xlat2.x));
					    u_xlat2.x = u_xlat2.x * _FresnelStr;
					    u_xlat2.x = exp2(u_xlat2.x);
					    u_xlat2.x = u_xlat2.x + u_xlat2.x;
					    vs_TEXCOORD4 = min(u_xlat2.x, 1.0);
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat4 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_3_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati1;
					vec4 u_xlat2;
					int u_xlati3;
					float u_xlat4;
					float u_xlat5;
					vec3 u_xlat6;
					vec3 u_xlat8;
					vec2 u_xlat10;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat6.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat6.x = inversesqrt(u_xlat6.x);
					    u_xlat6.xyz = u_xlat6.xxx * in_NORMAL0.xyz;
					    u_xlati3 = unity_StereoEyeIndex;
					    u_xlat8.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].yyy;
					    u_xlat8.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].xxx + u_xlat8.xyz;
					    u_xlat8.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].zzz + u_xlat8.xyz;
					    u_xlat8.xyz = u_xlat8.xyz + unity_WorldToObject[3].xyz;
					    u_xlat8.xyz = u_xlat8.xyz + (-in_POSITION0.xyz);
					    u_xlat4 = dot(u_xlat8.xyz, u_xlat8.xyz);
					    u_xlat4 = inversesqrt(u_xlat4);
					    u_xlat8.xyz = u_xlat8.xyz * vec3(u_xlat4);
					    u_xlat6.x = dot(u_xlat6.xyz, u_xlat8.xyz);
					    u_xlat6.x = log2(abs(u_xlat6.x));
					    u_xlat6.x = u_xlat6.x * _FresnelStr;
					    u_xlat6.x = exp2(u_xlat6.x);
					    u_xlat6.x = u_xlat6.x + u_xlat6.x;
					    vs_TEXCOORD4 = min(u_xlat6.x, 1.0);
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat5 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat5;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlat10.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati3].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati3].xy + u_xlat10.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendAdd" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					float u_xlat14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat14 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat2.xyz = vec3(u_xlat14) * u_xlat2.xyz;
					    u_xlat14 = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat3.xyz = vec3(u_xlat14) * in_NORMAL0.xyz;
					    u_xlat2.x = dot(u_xlat3.xyz, u_xlat2.xyz);
					    u_xlat2.x = log2(abs(u_xlat2.x));
					    u_xlat2.x = u_xlat2.x * _FresnelStr;
					    u_xlat2.x = exp2(u_xlat2.x);
					    u_xlat2.x = u_xlat2.x + u_xlat2.x;
					    vs_TEXCOORD4 = min(u_xlat2.x, 1.0);
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat4 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_3_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati1;
					vec4 u_xlat2;
					int u_xlati3;
					float u_xlat4;
					float u_xlat5;
					vec3 u_xlat6;
					vec3 u_xlat8;
					vec2 u_xlat10;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat6.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat6.x = inversesqrt(u_xlat6.x);
					    u_xlat6.xyz = u_xlat6.xxx * in_NORMAL0.xyz;
					    u_xlati3 = unity_StereoEyeIndex;
					    u_xlat8.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].yyy;
					    u_xlat8.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].xxx + u_xlat8.xyz;
					    u_xlat8.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].zzz + u_xlat8.xyz;
					    u_xlat8.xyz = u_xlat8.xyz + unity_WorldToObject[3].xyz;
					    u_xlat8.xyz = u_xlat8.xyz + (-in_POSITION0.xyz);
					    u_xlat4 = dot(u_xlat8.xyz, u_xlat8.xyz);
					    u_xlat4 = inversesqrt(u_xlat4);
					    u_xlat8.xyz = u_xlat8.xyz * vec3(u_xlat4);
					    u_xlat6.x = dot(u_xlat6.xyz, u_xlat8.xyz);
					    u_xlat6.x = log2(abs(u_xlat6.x));
					    u_xlat6.x = u_xlat6.x * _FresnelStr;
					    u_xlat6.x = exp2(u_xlat6.x);
					    u_xlat6.x = u_xlat6.x + u_xlat6.x;
					    vs_TEXCOORD4 = min(u_xlat6.x, 1.0);
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat5 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat5;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlat10.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati3].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati3].xy + u_xlat10.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendAdd" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					float u_xlat14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat14 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat2.xyz = vec3(u_xlat14) * u_xlat2.xyz;
					    u_xlat14 = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat3.xyz = vec3(u_xlat14) * in_NORMAL0.xyz;
					    u_xlat2.x = dot(u_xlat3.xyz, u_xlat2.xyz);
					    u_xlat2.x = log2(abs(u_xlat2.x));
					    u_xlat2.x = u_xlat2.x * _FresnelStr;
					    u_xlat2.x = exp2(u_xlat2.x);
					    u_xlat2.x = u_xlat2.x + u_xlat2.x;
					    vs_TEXCOORD4 = min(u_xlat2.x, 1.0);
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat4 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_3_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati1;
					vec4 u_xlat2;
					int u_xlati3;
					float u_xlat4;
					float u_xlat5;
					vec3 u_xlat6;
					vec3 u_xlat8;
					vec2 u_xlat10;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat6.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat6.x = inversesqrt(u_xlat6.x);
					    u_xlat6.xyz = u_xlat6.xxx * in_NORMAL0.xyz;
					    u_xlati3 = unity_StereoEyeIndex;
					    u_xlat8.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].yyy;
					    u_xlat8.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].xxx + u_xlat8.xyz;
					    u_xlat8.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].zzz + u_xlat8.xyz;
					    u_xlat8.xyz = u_xlat8.xyz + unity_WorldToObject[3].xyz;
					    u_xlat8.xyz = u_xlat8.xyz + (-in_POSITION0.xyz);
					    u_xlat4 = dot(u_xlat8.xyz, u_xlat8.xyz);
					    u_xlat4 = inversesqrt(u_xlat4);
					    u_xlat8.xyz = u_xlat8.xyz * vec3(u_xlat4);
					    u_xlat6.x = dot(u_xlat6.xyz, u_xlat8.xyz);
					    u_xlat6.x = log2(abs(u_xlat6.x));
					    u_xlat6.x = u_xlat6.x * _FresnelStr;
					    u_xlat6.x = exp2(u_xlat6.x);
					    u_xlat6.x = u_xlat6.x + u_xlat6.x;
					    vs_TEXCOORD4 = min(u_xlat6.x, 1.0);
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat5 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat5;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlat10.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati3].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati3].xy + u_xlat10.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendAdd" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					float u_xlat14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat14 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat2.xyz = vec3(u_xlat14) * u_xlat2.xyz;
					    u_xlat14 = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat3.xyz = vec3(u_xlat14) * in_NORMAL0.xyz;
					    u_xlat2.x = dot(u_xlat3.xyz, u_xlat2.xyz);
					    u_xlat2.x = log2(abs(u_xlat2.x));
					    u_xlat2.x = u_xlat2.x * _FresnelStr;
					    u_xlat2.x = exp2(u_xlat2.x);
					    u_xlat2.x = u_xlat2.x + u_xlat2.x;
					    vs_TEXCOORD4 = min(u_xlat2.x, 1.0);
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat4 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_3_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati1;
					vec4 u_xlat2;
					int u_xlati3;
					float u_xlat4;
					float u_xlat5;
					vec3 u_xlat6;
					vec3 u_xlat8;
					vec2 u_xlat10;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat6.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat6.x = inversesqrt(u_xlat6.x);
					    u_xlat6.xyz = u_xlat6.xxx * in_NORMAL0.xyz;
					    u_xlati3 = unity_StereoEyeIndex;
					    u_xlat8.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].yyy;
					    u_xlat8.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].xxx + u_xlat8.xyz;
					    u_xlat8.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].zzz + u_xlat8.xyz;
					    u_xlat8.xyz = u_xlat8.xyz + unity_WorldToObject[3].xyz;
					    u_xlat8.xyz = u_xlat8.xyz + (-in_POSITION0.xyz);
					    u_xlat4 = dot(u_xlat8.xyz, u_xlat8.xyz);
					    u_xlat4 = inversesqrt(u_xlat4);
					    u_xlat8.xyz = u_xlat8.xyz * vec3(u_xlat4);
					    u_xlat6.x = dot(u_xlat6.xyz, u_xlat8.xyz);
					    u_xlat6.x = log2(abs(u_xlat6.x));
					    u_xlat6.x = u_xlat6.x * _FresnelStr;
					    u_xlat6.x = exp2(u_xlat6.x);
					    u_xlat6.x = u_xlat6.x + u_xlat6.x;
					    vs_TEXCOORD4 = min(u_xlat6.x, 1.0);
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat5 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat5;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlat10.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati3].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati3].xy + u_xlat10.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendAdd" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					float u_xlat14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat14 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat2.xyz = vec3(u_xlat14) * u_xlat2.xyz;
					    u_xlat14 = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat3.xyz = vec3(u_xlat14) * in_NORMAL0.xyz;
					    u_xlat2.x = dot(u_xlat3.xyz, u_xlat2.xyz);
					    u_xlat2.x = log2(abs(u_xlat2.x));
					    u_xlat2.x = u_xlat2.x * _FresnelStr;
					    u_xlat2.x = exp2(u_xlat2.x);
					    u_xlat2.x = u_xlat2.x + u_xlat2.x;
					    vs_TEXCOORD4 = min(u_xlat2.x, 1.0);
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat4 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_3_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati1;
					vec4 u_xlat2;
					int u_xlati3;
					float u_xlat4;
					float u_xlat5;
					vec3 u_xlat6;
					vec3 u_xlat8;
					vec2 u_xlat10;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat6.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat6.x = inversesqrt(u_xlat6.x);
					    u_xlat6.xyz = u_xlat6.xxx * in_NORMAL0.xyz;
					    u_xlati3 = unity_StereoEyeIndex;
					    u_xlat8.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].yyy;
					    u_xlat8.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].xxx + u_xlat8.xyz;
					    u_xlat8.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].zzz + u_xlat8.xyz;
					    u_xlat8.xyz = u_xlat8.xyz + unity_WorldToObject[3].xyz;
					    u_xlat8.xyz = u_xlat8.xyz + (-in_POSITION0.xyz);
					    u_xlat4 = dot(u_xlat8.xyz, u_xlat8.xyz);
					    u_xlat4 = inversesqrt(u_xlat4);
					    u_xlat8.xyz = u_xlat8.xyz * vec3(u_xlat4);
					    u_xlat6.x = dot(u_xlat6.xyz, u_xlat8.xyz);
					    u_xlat6.x = log2(abs(u_xlat6.x));
					    u_xlat6.x = u_xlat6.x * _FresnelStr;
					    u_xlat6.x = exp2(u_xlat6.x);
					    u_xlat6.x = u_xlat6.x + u_xlat6.x;
					    vs_TEXCOORD4 = min(u_xlat6.x, 1.0);
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat5 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat5;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlat10.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati3].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati3].xy + u_xlat10.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendAdd" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					float u_xlat14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat14 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat2.xyz = vec3(u_xlat14) * u_xlat2.xyz;
					    u_xlat14 = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat3.xyz = vec3(u_xlat14) * in_NORMAL0.xyz;
					    u_xlat2.x = dot(u_xlat3.xyz, u_xlat2.xyz);
					    u_xlat2.x = log2(abs(u_xlat2.x));
					    u_xlat2.x = u_xlat2.x * _FresnelStr;
					    u_xlat2.x = exp2(u_xlat2.x);
					    u_xlat2.x = u_xlat2.x + u_xlat2.x;
					    vs_TEXCOORD4 = min(u_xlat2.x, 1.0);
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat4 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_3_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati1;
					vec4 u_xlat2;
					int u_xlati3;
					float u_xlat4;
					float u_xlat5;
					vec3 u_xlat6;
					vec3 u_xlat8;
					vec2 u_xlat10;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat6.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat6.x = inversesqrt(u_xlat6.x);
					    u_xlat6.xyz = u_xlat6.xxx * in_NORMAL0.xyz;
					    u_xlati3 = unity_StereoEyeIndex;
					    u_xlat8.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].yyy;
					    u_xlat8.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].xxx + u_xlat8.xyz;
					    u_xlat8.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].zzz + u_xlat8.xyz;
					    u_xlat8.xyz = u_xlat8.xyz + unity_WorldToObject[3].xyz;
					    u_xlat8.xyz = u_xlat8.xyz + (-in_POSITION0.xyz);
					    u_xlat4 = dot(u_xlat8.xyz, u_xlat8.xyz);
					    u_xlat4 = inversesqrt(u_xlat4);
					    u_xlat8.xyz = u_xlat8.xyz * vec3(u_xlat4);
					    u_xlat6.x = dot(u_xlat6.xyz, u_xlat8.xyz);
					    u_xlat6.x = log2(abs(u_xlat6.x));
					    u_xlat6.x = u_xlat6.x * _FresnelStr;
					    u_xlat6.x = exp2(u_xlat6.x);
					    u_xlat6.x = u_xlat6.x + u_xlat6.x;
					    vs_TEXCOORD4 = min(u_xlat6.x, 1.0);
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat5 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat5;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlat10.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati3].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati3].xy + u_xlat10.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendAdd" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec2 u_xlat4;
					int u_xlati12;
					float u_xlat13;
					bool u_xlatb13;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat0 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat1.x = float(0.0);
					    u_xlat1.y = float(0.0);
					    u_xlat1.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat13 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat13 = u_xlat13 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat13 = float(1.0) / u_xlat13;
					        u_xlat1.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat13) + u_xlat1.xyz;
					    }
					    u_xlat0.xyz = u_xlat1.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendAdd" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec2 u_xlat4;
					int u_xlati12;
					float u_xlat13;
					bool u_xlatb13;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat0 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat1.x = float(0.0);
					    u_xlat1.y = float(0.0);
					    u_xlat1.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat13 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat13 = u_xlat13 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat13 = float(1.0) / u_xlat13;
					        u_xlat1.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat13) + u_xlat1.xyz;
					    }
					    u_xlat0.xyz = u_xlat1.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendAdd" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec2 u_xlat4;
					int u_xlati12;
					float u_xlat13;
					bool u_xlatb13;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat0 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat1.x = float(0.0);
					    u_xlat1.y = float(0.0);
					    u_xlat1.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat13 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat13 = u_xlat13 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat13 = float(1.0) / u_xlat13;
					        u_xlat1.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat13) + u_xlat1.xyz;
					    }
					    u_xlat0.xyz = u_xlat1.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendAdd" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec2 u_xlat4;
					int u_xlati12;
					float u_xlat13;
					bool u_xlatb13;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat0 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat1.x = float(0.0);
					    u_xlat1.y = float(0.0);
					    u_xlat1.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat13 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat13 = u_xlat13 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat13 = float(1.0) / u_xlat13;
					        u_xlat1.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat13) + u_xlat1.xyz;
					    }
					    u_xlat0.xyz = u_xlat1.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendAdd" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec2 u_xlat4;
					int u_xlati12;
					float u_xlat13;
					bool u_xlatb13;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat0 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat1.x = float(0.0);
					    u_xlat1.y = float(0.0);
					    u_xlat1.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat13 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat13 = u_xlat13 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat13 = float(1.0) / u_xlat13;
					        u_xlat1.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat13) + u_xlat1.xyz;
					    }
					    u_xlat0.xyz = u_xlat1.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendAdd" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec2 u_xlat4;
					int u_xlati12;
					float u_xlat13;
					bool u_xlatb13;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat0 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat1.x = float(0.0);
					    u_xlat1.y = float(0.0);
					    u_xlat1.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat13 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat13 = u_xlat13 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat13 = float(1.0) / u_xlat13;
					        u_xlat1.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat13) + u_xlat1.xyz;
					    }
					    u_xlat0.xyz = u_xlat1.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendAdd" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec2 u_xlat4;
					int u_xlati12;
					float u_xlat13;
					bool u_xlatb13;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat0 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat1.x = float(0.0);
					    u_xlat1.y = float(0.0);
					    u_xlat1.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat13 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat13 = u_xlat13 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat13 = float(1.0) / u_xlat13;
					        u_xlat1.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat13) + u_xlat1.xyz;
					    }
					    u_xlat0.xyz = u_xlat1.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendAdd" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec2 u_xlat4;
					int u_xlati12;
					float u_xlat13;
					bool u_xlatb13;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat0 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat1.x = float(0.0);
					    u_xlat1.y = float(0.0);
					    u_xlat1.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat13 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat13 = u_xlat13 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat13 = float(1.0) / u_xlat13;
					        u_xlat1.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat13) + u_xlat1.xyz;
					    }
					    u_xlat0.xyz = u_xlat1.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendAdd" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec2 u_xlat4;
					int u_xlati12;
					float u_xlat13;
					bool u_xlatb13;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat0 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat1.x = float(0.0);
					    u_xlat1.y = float(0.0);
					    u_xlat1.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat13 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat13 = u_xlat13 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat13 = float(1.0) / u_xlat13;
					        u_xlat1.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat13) + u_xlat1.xyz;
					    }
					    u_xlat0.xyz = u_xlat1.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendAdd" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec2 u_xlat4;
					int u_xlati12;
					float u_xlat13;
					bool u_xlatb13;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat0 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat1.x = float(0.0);
					    u_xlat1.y = float(0.0);
					    u_xlat1.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat13 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat13 = u_xlat13 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat13 = float(1.0) / u_xlat13;
					        u_xlat1.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat13) + u_xlat1.xyz;
					    }
					    u_xlat0.xyz = u_xlat1.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendAdd" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec2 u_xlat4;
					int u_xlati12;
					float u_xlat13;
					bool u_xlatb13;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat0 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat1.x = float(0.0);
					    u_xlat1.y = float(0.0);
					    u_xlat1.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat13 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat13 = u_xlat13 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat13 = float(1.0) / u_xlat13;
					        u_xlat1.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat13) + u_xlat1.xyz;
					    }
					    u_xlat0.xyz = u_xlat1.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendAdd" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec2 u_xlat4;
					int u_xlati12;
					float u_xlat13;
					bool u_xlatb13;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat0 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat1.x = float(0.0);
					    u_xlat1.y = float(0.0);
					    u_xlat1.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat13 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat13 = u_xlat13 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat13 = float(1.0) / u_xlat13;
					        u_xlat1.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat13) + u_xlat1.xyz;
					    }
					    u_xlat0.xyz = u_xlat1.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendAdd" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec2 u_xlat4;
					int u_xlati12;
					float u_xlat13;
					bool u_xlatb13;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat0 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat1.x = float(0.0);
					    u_xlat1.y = float(0.0);
					    u_xlat1.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat13 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat13 = u_xlat13 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat13 = float(1.0) / u_xlat13;
					        u_xlat1.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat13) + u_xlat1.xyz;
					    }
					    u_xlat0.xyz = u_xlat1.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendAdd" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec2 u_xlat4;
					int u_xlati12;
					float u_xlat13;
					bool u_xlatb13;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat0 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat1.x = float(0.0);
					    u_xlat1.y = float(0.0);
					    u_xlat1.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat13 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat13 = u_xlat13 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat13 = float(1.0) / u_xlat13;
					        u_xlat1.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat13) + u_xlat1.xyz;
					    }
					    u_xlat0.xyz = u_xlat1.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendAdd" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec2 u_xlat4;
					int u_xlati12;
					float u_xlat13;
					bool u_xlatb13;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat0 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat1.x = float(0.0);
					    u_xlat1.y = float(0.0);
					    u_xlat1.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat13 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat13 = u_xlat13 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat13 = float(1.0) / u_xlat13;
					        u_xlat1.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat13) + u_xlat1.xyz;
					    }
					    u_xlat0.xyz = u_xlat1.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendAdd" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec2 u_xlat4;
					int u_xlati12;
					float u_xlat13;
					bool u_xlatb13;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat0 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat1.x = float(0.0);
					    u_xlat1.y = float(0.0);
					    u_xlat1.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat13 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat13 = u_xlat13 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat13 = float(1.0) / u_xlat13;
					        u_xlat1.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat13) + u_xlat1.xyz;
					    }
					    u_xlat0.xyz = u_xlat1.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendAdd" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat12;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat2.xyz = vec3(u_xlat12) * u_xlat2.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat2.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					bool u_xlatb3;
					vec2 u_xlat4;
					float u_xlat12;
					int u_xlati12;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat1 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat1.x);
					    u_xlat0.x = float(0.0);
					    u_xlat0.y = float(0.0);
					    u_xlat0.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat1.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat3.x = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat3.x = u_xlat3.x * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat3.x = float(1.0) / u_xlat3.x;
					        u_xlat0.xyz = unity_LightColor[u_xlati_loop_1].xyz * u_xlat3.xxx + u_xlat0.xyz;
					    }
					    u_xlat0.xyz = u_xlat0.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat1.xyz = vec3(u_xlat12) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendAdd" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat12;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat2.xyz = vec3(u_xlat12) * u_xlat2.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat2.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					bool u_xlatb3;
					vec2 u_xlat4;
					float u_xlat12;
					int u_xlati12;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat1 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat1.x);
					    u_xlat0.x = float(0.0);
					    u_xlat0.y = float(0.0);
					    u_xlat0.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat1.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat3.x = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat3.x = u_xlat3.x * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat3.x = float(1.0) / u_xlat3.x;
					        u_xlat0.xyz = unity_LightColor[u_xlati_loop_1].xyz * u_xlat3.xxx + u_xlat0.xyz;
					    }
					    u_xlat0.xyz = u_xlat0.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat1.xyz = vec3(u_xlat12) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendAdd" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat12;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat2.xyz = vec3(u_xlat12) * u_xlat2.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat2.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat1.z;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					bool u_xlatb3;
					vec2 u_xlat4;
					float u_xlat12;
					int u_xlati12;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat1 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat1.x);
					    u_xlat0.x = float(0.0);
					    u_xlat0.y = float(0.0);
					    u_xlat0.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat1.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat3.x = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat3.x = u_xlat3.x * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat3.x = float(1.0) / u_xlat3.x;
					        u_xlat0.xyz = unity_LightColor[u_xlati_loop_1].xyz * u_xlat3.xxx + u_xlat0.xyz;
					    }
					    u_xlat0.xyz = u_xlat0.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat1.xyz = vec3(u_xlat12) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat2.z;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendAdd" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat12;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat2.xyz = vec3(u_xlat12) * u_xlat2.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat2.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat1.z;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					bool u_xlatb3;
					vec2 u_xlat4;
					float u_xlat12;
					int u_xlati12;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat1 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat1.x);
					    u_xlat0.x = float(0.0);
					    u_xlat0.y = float(0.0);
					    u_xlat0.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat1.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat3.x = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat3.x = u_xlat3.x * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat3.x = float(1.0) / u_xlat3.x;
					        u_xlat0.xyz = unity_LightColor[u_xlati_loop_1].xyz * u_xlat3.xxx + u_xlat0.xyz;
					    }
					    u_xlat0.xyz = u_xlat0.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat1.xyz = vec3(u_xlat12) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat2.z;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendAdd" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat12;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat2.xyz = vec3(u_xlat12) * u_xlat2.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat2.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat1.z;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					bool u_xlatb3;
					vec2 u_xlat4;
					float u_xlat12;
					int u_xlati12;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat1 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat1.x);
					    u_xlat0.x = float(0.0);
					    u_xlat0.y = float(0.0);
					    u_xlat0.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat1.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat3.x = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat3.x = u_xlat3.x * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat3.x = float(1.0) / u_xlat3.x;
					        u_xlat0.xyz = unity_LightColor[u_xlati_loop_1].xyz * u_xlat3.xxx + u_xlat0.xyz;
					    }
					    u_xlat0.xyz = u_xlat0.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat1.xyz = vec3(u_xlat12) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat2.z;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendAdd" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat12;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat2.xyz = vec3(u_xlat12) * u_xlat2.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat2.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat1.z;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					bool u_xlatb3;
					vec2 u_xlat4;
					float u_xlat12;
					int u_xlati12;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat1 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat1.x);
					    u_xlat0.x = float(0.0);
					    u_xlat0.y = float(0.0);
					    u_xlat0.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat1.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat3.x = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat3.x = u_xlat3.x * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat3.x = float(1.0) / u_xlat3.x;
					        u_xlat0.xyz = unity_LightColor[u_xlati_loop_1].xyz * u_xlat3.xxx + u_xlat0.xyz;
					    }
					    u_xlat0.xyz = u_xlat0.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat1.xyz = vec3(u_xlat12) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat2.z;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendAdd" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat12;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat2.xyz = vec3(u_xlat12) * u_xlat2.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat2.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat1.z;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					bool u_xlatb3;
					vec2 u_xlat4;
					float u_xlat12;
					int u_xlati12;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat1 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat1.x);
					    u_xlat0.x = float(0.0);
					    u_xlat0.y = float(0.0);
					    u_xlat0.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat1.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat3.x = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat3.x = u_xlat3.x * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat3.x = float(1.0) / u_xlat3.x;
					        u_xlat0.xyz = unity_LightColor[u_xlati_loop_1].xyz * u_xlat3.xxx + u_xlat0.xyz;
					    }
					    u_xlat0.xyz = u_xlat0.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat1.xyz = vec3(u_xlat12) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat2.z;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendAdd" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat12;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat2.xyz = vec3(u_xlat12) * u_xlat2.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat2.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat1.z;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					bool u_xlatb3;
					vec2 u_xlat4;
					float u_xlat12;
					int u_xlati12;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat1 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat1.x);
					    u_xlat0.x = float(0.0);
					    u_xlat0.y = float(0.0);
					    u_xlat0.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat1.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat3.x = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat3.x = u_xlat3.x * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat3.x = float(1.0) / u_xlat3.x;
					        u_xlat0.xyz = unity_LightColor[u_xlati_loop_1].xyz * u_xlat3.xxx + u_xlat0.xyz;
					    }
					    u_xlat0.xyz = u_xlat0.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat1.xyz = vec3(u_xlat12) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat2.z;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendAdd" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat12;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat2.xyz = vec3(u_xlat12) * u_xlat2.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat2.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					bool u_xlatb3;
					vec2 u_xlat4;
					float u_xlat12;
					int u_xlati12;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat1 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat1.x);
					    u_xlat0.x = float(0.0);
					    u_xlat0.y = float(0.0);
					    u_xlat0.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat1.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat3.x = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat3.x = u_xlat3.x * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat3.x = float(1.0) / u_xlat3.x;
					        u_xlat0.xyz = unity_LightColor[u_xlati_loop_1].xyz * u_xlat3.xxx + u_xlat0.xyz;
					    }
					    u_xlat0.xyz = u_xlat0.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat1.xyz = vec3(u_xlat12) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendAdd" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat12;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat2.xyz = vec3(u_xlat12) * u_xlat2.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat2.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					bool u_xlatb3;
					vec2 u_xlat4;
					float u_xlat12;
					int u_xlati12;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat1 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat1.x);
					    u_xlat0.x = float(0.0);
					    u_xlat0.y = float(0.0);
					    u_xlat0.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat1.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat3.x = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat3.x = u_xlat3.x * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat3.x = float(1.0) / u_xlat3.x;
					        u_xlat0.xyz = unity_LightColor[u_xlati_loop_1].xyz * u_xlat3.xxx + u_xlat0.xyz;
					    }
					    u_xlat0.xyz = u_xlat0.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat1.xyz = vec3(u_xlat12) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendAdd" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat12;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat2.xyz = vec3(u_xlat12) * u_xlat2.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat2.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat1.z;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					bool u_xlatb3;
					vec2 u_xlat4;
					float u_xlat12;
					int u_xlati12;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat1 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat1.x);
					    u_xlat0.x = float(0.0);
					    u_xlat0.y = float(0.0);
					    u_xlat0.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat1.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat3.x = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat3.x = u_xlat3.x * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat3.x = float(1.0) / u_xlat3.x;
					        u_xlat0.xyz = unity_LightColor[u_xlati_loop_1].xyz * u_xlat3.xxx + u_xlat0.xyz;
					    }
					    u_xlat0.xyz = u_xlat0.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat1.xyz = vec3(u_xlat12) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat2.z;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendAdd" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat12;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat2.xyz = vec3(u_xlat12) * u_xlat2.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat2.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat1.z;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					bool u_xlatb3;
					vec2 u_xlat4;
					float u_xlat12;
					int u_xlati12;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat1 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat1.x);
					    u_xlat0.x = float(0.0);
					    u_xlat0.y = float(0.0);
					    u_xlat0.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat1.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat3.x = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat3.x = u_xlat3.x * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat3.x = float(1.0) / u_xlat3.x;
					        u_xlat0.xyz = unity_LightColor[u_xlati_loop_1].xyz * u_xlat3.xxx + u_xlat0.xyz;
					    }
					    u_xlat0.xyz = u_xlat0.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat1.xyz = vec3(u_xlat12) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat2.z;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendAdd" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat12;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat2.xyz = vec3(u_xlat12) * u_xlat2.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat2.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat1.z;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					bool u_xlatb3;
					vec2 u_xlat4;
					float u_xlat12;
					int u_xlati12;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat1 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat1.x);
					    u_xlat0.x = float(0.0);
					    u_xlat0.y = float(0.0);
					    u_xlat0.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat1.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat3.x = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat3.x = u_xlat3.x * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat3.x = float(1.0) / u_xlat3.x;
					        u_xlat0.xyz = unity_LightColor[u_xlati_loop_1].xyz * u_xlat3.xxx + u_xlat0.xyz;
					    }
					    u_xlat0.xyz = u_xlat0.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat1.xyz = vec3(u_xlat12) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat2.z;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendAdd" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat12;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat2.xyz = vec3(u_xlat12) * u_xlat2.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat2.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat1.z;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					bool u_xlatb3;
					vec2 u_xlat4;
					float u_xlat12;
					int u_xlati12;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat1 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat1.x);
					    u_xlat0.x = float(0.0);
					    u_xlat0.y = float(0.0);
					    u_xlat0.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat1.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat3.x = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat3.x = u_xlat3.x * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat3.x = float(1.0) / u_xlat3.x;
					        u_xlat0.xyz = unity_LightColor[u_xlati_loop_1].xyz * u_xlat3.xxx + u_xlat0.xyz;
					    }
					    u_xlat0.xyz = u_xlat0.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat1.xyz = vec3(u_xlat12) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat2.z;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendAdd" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat12;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat2.xyz = vec3(u_xlat12) * u_xlat2.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat2.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat1.z;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					bool u_xlatb3;
					vec2 u_xlat4;
					float u_xlat12;
					int u_xlati12;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat1 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat1.x);
					    u_xlat0.x = float(0.0);
					    u_xlat0.y = float(0.0);
					    u_xlat0.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat1.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat3.x = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat3.x = u_xlat3.x * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat3.x = float(1.0) / u_xlat3.x;
					        u_xlat0.xyz = unity_LightColor[u_xlati_loop_1].xyz * u_xlat3.xxx + u_xlat0.xyz;
					    }
					    u_xlat0.xyz = u_xlat0.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat1.xyz = vec3(u_xlat12) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat2.z;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendAdd" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat12;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat2.xyz = vec3(u_xlat12) * u_xlat2.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat2.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat1.z;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					bool u_xlatb3;
					vec2 u_xlat4;
					float u_xlat12;
					int u_xlati12;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat1 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat1.x);
					    u_xlat0.x = float(0.0);
					    u_xlat0.y = float(0.0);
					    u_xlat0.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat1.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat3.x = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat3.x = u_xlat3.x * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat3.x = float(1.0) / u_xlat3.x;
					        u_xlat0.xyz = unity_LightColor[u_xlati_loop_1].xyz * u_xlat3.xxx + u_xlat0.xyz;
					    }
					    u_xlat0.xyz = u_xlat0.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat1.xyz = vec3(u_xlat12) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat2.z;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendAdd" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec2 u_xlat4;
					int u_xlati12;
					float u_xlat13;
					bool u_xlatb13;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat0 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat1.x = float(0.0);
					    u_xlat1.y = float(0.0);
					    u_xlat1.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat13 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat13 = u_xlat13 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat13 = float(1.0) / u_xlat13;
					        u_xlat1.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat13) + u_xlat1.xyz;
					    }
					    u_xlat0.xyz = u_xlat1.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendAdd" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec2 u_xlat4;
					int u_xlati12;
					float u_xlat13;
					bool u_xlatb13;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat0 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat1.x = float(0.0);
					    u_xlat1.y = float(0.0);
					    u_xlat1.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat13 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat13 = u_xlat13 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat13 = float(1.0) / u_xlat13;
					        u_xlat1.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat13) + u_xlat1.xyz;
					    }
					    u_xlat0.xyz = u_xlat1.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendAdd" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec2 u_xlat4;
					int u_xlati12;
					float u_xlat13;
					bool u_xlatb13;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat0 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat1.x = float(0.0);
					    u_xlat1.y = float(0.0);
					    u_xlat1.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat13 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat13 = u_xlat13 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat13 = float(1.0) / u_xlat13;
					        u_xlat1.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat13) + u_xlat1.xyz;
					    }
					    u_xlat0.xyz = u_xlat1.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendAdd" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec2 u_xlat4;
					int u_xlati12;
					float u_xlat13;
					bool u_xlatb13;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat0 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat1.x = float(0.0);
					    u_xlat1.y = float(0.0);
					    u_xlat1.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat13 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat13 = u_xlat13 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat13 = float(1.0) / u_xlat13;
					        u_xlat1.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat13) + u_xlat1.xyz;
					    }
					    u_xlat0.xyz = u_xlat1.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendAdd" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec2 u_xlat4;
					int u_xlati12;
					float u_xlat13;
					bool u_xlatb13;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat0 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat1.x = float(0.0);
					    u_xlat1.y = float(0.0);
					    u_xlat1.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat13 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat13 = u_xlat13 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat13 = float(1.0) / u_xlat13;
					        u_xlat1.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat13) + u_xlat1.xyz;
					    }
					    u_xlat0.xyz = u_xlat1.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendAdd" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec2 u_xlat4;
					int u_xlati12;
					float u_xlat13;
					bool u_xlatb13;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat0 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat1.x = float(0.0);
					    u_xlat1.y = float(0.0);
					    u_xlat1.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat13 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat13 = u_xlat13 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat13 = float(1.0) / u_xlat13;
					        u_xlat1.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat13) + u_xlat1.xyz;
					    }
					    u_xlat0.xyz = u_xlat1.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendAdd" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec2 u_xlat4;
					int u_xlati12;
					float u_xlat13;
					bool u_xlatb13;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat0 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat1.x = float(0.0);
					    u_xlat1.y = float(0.0);
					    u_xlat1.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat13 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat13 = u_xlat13 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat13 = float(1.0) / u_xlat13;
					        u_xlat1.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat13) + u_xlat1.xyz;
					    }
					    u_xlat0.xyz = u_xlat1.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendAdd" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec2 u_xlat4;
					int u_xlati12;
					float u_xlat13;
					bool u_xlatb13;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat0 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat1.x = float(0.0);
					    u_xlat1.y = float(0.0);
					    u_xlat1.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat13 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat13 = u_xlat13 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat13 = float(1.0) / u_xlat13;
					        u_xlat1.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat13) + u_xlat1.xyz;
					    }
					    u_xlat0.xyz = u_xlat1.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendAdd" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec2 u_xlat4;
					int u_xlati12;
					float u_xlat13;
					bool u_xlatb13;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat0 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat1.x = float(0.0);
					    u_xlat1.y = float(0.0);
					    u_xlat1.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat13 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat13 = u_xlat13 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat13 = float(1.0) / u_xlat13;
					        u_xlat1.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat13) + u_xlat1.xyz;
					    }
					    u_xlat0.xyz = u_xlat1.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendAdd" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec2 u_xlat4;
					int u_xlati12;
					float u_xlat13;
					bool u_xlatb13;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat0 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat1.x = float(0.0);
					    u_xlat1.y = float(0.0);
					    u_xlat1.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat13 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat13 = u_xlat13 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat13 = float(1.0) / u_xlat13;
					        u_xlat1.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat13) + u_xlat1.xyz;
					    }
					    u_xlat0.xyz = u_xlat1.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendAdd" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec2 u_xlat4;
					int u_xlati12;
					float u_xlat13;
					bool u_xlatb13;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat0 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat1.x = float(0.0);
					    u_xlat1.y = float(0.0);
					    u_xlat1.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat13 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat13 = u_xlat13 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat13 = float(1.0) / u_xlat13;
					        u_xlat1.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat13) + u_xlat1.xyz;
					    }
					    u_xlat0.xyz = u_xlat1.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendAdd" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec2 u_xlat4;
					int u_xlati12;
					float u_xlat13;
					bool u_xlatb13;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat0 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat1.x = float(0.0);
					    u_xlat1.y = float(0.0);
					    u_xlat1.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat13 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat13 = u_xlat13 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat13 = float(1.0) / u_xlat13;
					        u_xlat1.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat13) + u_xlat1.xyz;
					    }
					    u_xlat0.xyz = u_xlat1.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendAdd" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec2 u_xlat4;
					int u_xlati12;
					float u_xlat13;
					bool u_xlatb13;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat0 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat1.x = float(0.0);
					    u_xlat1.y = float(0.0);
					    u_xlat1.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat13 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat13 = u_xlat13 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat13 = float(1.0) / u_xlat13;
					        u_xlat1.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat13) + u_xlat1.xyz;
					    }
					    u_xlat0.xyz = u_xlat1.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendAdd" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec2 u_xlat4;
					int u_xlati12;
					float u_xlat13;
					bool u_xlatb13;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat0 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat1.x = float(0.0);
					    u_xlat1.y = float(0.0);
					    u_xlat1.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat13 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat13 = u_xlat13 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat13 = float(1.0) / u_xlat13;
					        u_xlat1.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat13) + u_xlat1.xyz;
					    }
					    u_xlat0.xyz = u_xlat1.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendAdd" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec2 u_xlat4;
					int u_xlati12;
					float u_xlat13;
					bool u_xlatb13;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat0 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat1.x = float(0.0);
					    u_xlat1.y = float(0.0);
					    u_xlat1.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat13 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat13 = u_xlat13 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat13 = float(1.0) / u_xlat13;
					        u_xlat1.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat13) + u_xlat1.xyz;
					    }
					    u_xlat0.xyz = u_xlat1.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendAdd" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec2 u_xlat4;
					int u_xlati12;
					float u_xlat13;
					bool u_xlatb13;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat0 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat1.x = float(0.0);
					    u_xlat1.y = float(0.0);
					    u_xlat1.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat13 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat13 = u_xlat13 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat13 = float(1.0) / u_xlat13;
					        u_xlat1.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat13) + u_xlat1.xyz;
					    }
					    u_xlat0.xyz = u_xlat1.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendAdd" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat12;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat2.xyz = vec3(u_xlat12) * u_xlat2.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat2.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					bool u_xlatb3;
					vec2 u_xlat4;
					float u_xlat12;
					int u_xlati12;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat1 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat1.x);
					    u_xlat0.x = float(0.0);
					    u_xlat0.y = float(0.0);
					    u_xlat0.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat1.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat3.x = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat3.x = u_xlat3.x * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat3.x = float(1.0) / u_xlat3.x;
					        u_xlat0.xyz = unity_LightColor[u_xlati_loop_1].xyz * u_xlat3.xxx + u_xlat0.xyz;
					    }
					    u_xlat0.xyz = u_xlat0.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat1.xyz = vec3(u_xlat12) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendAdd" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat12;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat2.xyz = vec3(u_xlat12) * u_xlat2.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat2.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					bool u_xlatb3;
					vec2 u_xlat4;
					float u_xlat12;
					int u_xlati12;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat1 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat1.x);
					    u_xlat0.x = float(0.0);
					    u_xlat0.y = float(0.0);
					    u_xlat0.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat1.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat3.x = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat3.x = u_xlat3.x * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat3.x = float(1.0) / u_xlat3.x;
					        u_xlat0.xyz = unity_LightColor[u_xlati_loop_1].xyz * u_xlat3.xxx + u_xlat0.xyz;
					    }
					    u_xlat0.xyz = u_xlat0.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat1.xyz = vec3(u_xlat12) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendAdd" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat12;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat2.xyz = vec3(u_xlat12) * u_xlat2.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat2.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat1.z;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					bool u_xlatb3;
					vec2 u_xlat4;
					float u_xlat12;
					int u_xlati12;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat1 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat1.x);
					    u_xlat0.x = float(0.0);
					    u_xlat0.y = float(0.0);
					    u_xlat0.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat1.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat3.x = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat3.x = u_xlat3.x * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat3.x = float(1.0) / u_xlat3.x;
					        u_xlat0.xyz = unity_LightColor[u_xlati_loop_1].xyz * u_xlat3.xxx + u_xlat0.xyz;
					    }
					    u_xlat0.xyz = u_xlat0.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat1.xyz = vec3(u_xlat12) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat2.z;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendAdd" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat12;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat2.xyz = vec3(u_xlat12) * u_xlat2.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat2.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat1.z;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					bool u_xlatb3;
					vec2 u_xlat4;
					float u_xlat12;
					int u_xlati12;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat1 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat1.x);
					    u_xlat0.x = float(0.0);
					    u_xlat0.y = float(0.0);
					    u_xlat0.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat1.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat3.x = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat3.x = u_xlat3.x * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat3.x = float(1.0) / u_xlat3.x;
					        u_xlat0.xyz = unity_LightColor[u_xlati_loop_1].xyz * u_xlat3.xxx + u_xlat0.xyz;
					    }
					    u_xlat0.xyz = u_xlat0.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat1.xyz = vec3(u_xlat12) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat2.z;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendAdd" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat12;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat2.xyz = vec3(u_xlat12) * u_xlat2.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat2.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat1.z;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					bool u_xlatb3;
					vec2 u_xlat4;
					float u_xlat12;
					int u_xlati12;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat1 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat1.x);
					    u_xlat0.x = float(0.0);
					    u_xlat0.y = float(0.0);
					    u_xlat0.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat1.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat3.x = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat3.x = u_xlat3.x * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat3.x = float(1.0) / u_xlat3.x;
					        u_xlat0.xyz = unity_LightColor[u_xlati_loop_1].xyz * u_xlat3.xxx + u_xlat0.xyz;
					    }
					    u_xlat0.xyz = u_xlat0.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat1.xyz = vec3(u_xlat12) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat2.z;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendAdd" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat12;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat2.xyz = vec3(u_xlat12) * u_xlat2.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat2.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat1.z;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					bool u_xlatb3;
					vec2 u_xlat4;
					float u_xlat12;
					int u_xlati12;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat1 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat1.x);
					    u_xlat0.x = float(0.0);
					    u_xlat0.y = float(0.0);
					    u_xlat0.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat1.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat3.x = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat3.x = u_xlat3.x * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat3.x = float(1.0) / u_xlat3.x;
					        u_xlat0.xyz = unity_LightColor[u_xlati_loop_1].xyz * u_xlat3.xxx + u_xlat0.xyz;
					    }
					    u_xlat0.xyz = u_xlat0.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat1.xyz = vec3(u_xlat12) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat2.z;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendAdd" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat12;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat2.xyz = vec3(u_xlat12) * u_xlat2.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat2.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat1.z;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					bool u_xlatb3;
					vec2 u_xlat4;
					float u_xlat12;
					int u_xlati12;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat1 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat1.x);
					    u_xlat0.x = float(0.0);
					    u_xlat0.y = float(0.0);
					    u_xlat0.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat1.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat3.x = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat3.x = u_xlat3.x * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat3.x = float(1.0) / u_xlat3.x;
					        u_xlat0.xyz = unity_LightColor[u_xlati_loop_1].xyz * u_xlat3.xxx + u_xlat0.xyz;
					    }
					    u_xlat0.xyz = u_xlat0.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat1.xyz = vec3(u_xlat12) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat2.z;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendAdd" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat12;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat2.xyz = vec3(u_xlat12) * u_xlat2.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat2.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat1.z;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					bool u_xlatb3;
					vec2 u_xlat4;
					float u_xlat12;
					int u_xlati12;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat1 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat1.x);
					    u_xlat0.x = float(0.0);
					    u_xlat0.y = float(0.0);
					    u_xlat0.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat1.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat3.x = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat3.x = u_xlat3.x * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat3.x = float(1.0) / u_xlat3.x;
					        u_xlat0.xyz = unity_LightColor[u_xlati_loop_1].xyz * u_xlat3.xxx + u_xlat0.xyz;
					    }
					    u_xlat0.xyz = u_xlat0.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat1.xyz = vec3(u_xlat12) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat2.z;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendAdd" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat12;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat2.xyz = vec3(u_xlat12) * u_xlat2.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat2.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					bool u_xlatb3;
					vec2 u_xlat4;
					float u_xlat12;
					int u_xlati12;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat1 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat1.x);
					    u_xlat0.x = float(0.0);
					    u_xlat0.y = float(0.0);
					    u_xlat0.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat1.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat3.x = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat3.x = u_xlat3.x * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat3.x = float(1.0) / u_xlat3.x;
					        u_xlat0.xyz = unity_LightColor[u_xlati_loop_1].xyz * u_xlat3.xxx + u_xlat0.xyz;
					    }
					    u_xlat0.xyz = u_xlat0.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat1.xyz = vec3(u_xlat12) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendAdd" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat12;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat2.xyz = vec3(u_xlat12) * u_xlat2.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat2.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					bool u_xlatb3;
					vec2 u_xlat4;
					float u_xlat12;
					int u_xlati12;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat1 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat1.x);
					    u_xlat0.x = float(0.0);
					    u_xlat0.y = float(0.0);
					    u_xlat0.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat1.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat3.x = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat3.x = u_xlat3.x * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat3.x = float(1.0) / u_xlat3.x;
					        u_xlat0.xyz = unity_LightColor[u_xlati_loop_1].xyz * u_xlat3.xxx + u_xlat0.xyz;
					    }
					    u_xlat0.xyz = u_xlat0.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat1.xyz = vec3(u_xlat12) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendAdd" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat12;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat2.xyz = vec3(u_xlat12) * u_xlat2.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat2.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat1.z;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					bool u_xlatb3;
					vec2 u_xlat4;
					float u_xlat12;
					int u_xlati12;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat1 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat1.x);
					    u_xlat0.x = float(0.0);
					    u_xlat0.y = float(0.0);
					    u_xlat0.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat1.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat3.x = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat3.x = u_xlat3.x * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat3.x = float(1.0) / u_xlat3.x;
					        u_xlat0.xyz = unity_LightColor[u_xlati_loop_1].xyz * u_xlat3.xxx + u_xlat0.xyz;
					    }
					    u_xlat0.xyz = u_xlat0.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat1.xyz = vec3(u_xlat12) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat2.z;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendAdd" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat12;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat2.xyz = vec3(u_xlat12) * u_xlat2.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat2.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat1.z;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					bool u_xlatb3;
					vec2 u_xlat4;
					float u_xlat12;
					int u_xlati12;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat1 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat1.x);
					    u_xlat0.x = float(0.0);
					    u_xlat0.y = float(0.0);
					    u_xlat0.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat1.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat3.x = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat3.x = u_xlat3.x * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat3.x = float(1.0) / u_xlat3.x;
					        u_xlat0.xyz = unity_LightColor[u_xlati_loop_1].xyz * u_xlat3.xxx + u_xlat0.xyz;
					    }
					    u_xlat0.xyz = u_xlat0.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat1.xyz = vec3(u_xlat12) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat2.z;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendAdd" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat12;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat2.xyz = vec3(u_xlat12) * u_xlat2.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat2.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat1.z;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					bool u_xlatb3;
					vec2 u_xlat4;
					float u_xlat12;
					int u_xlati12;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat1 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat1.x);
					    u_xlat0.x = float(0.0);
					    u_xlat0.y = float(0.0);
					    u_xlat0.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat1.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat3.x = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat3.x = u_xlat3.x * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat3.x = float(1.0) / u_xlat3.x;
					        u_xlat0.xyz = unity_LightColor[u_xlati_loop_1].xyz * u_xlat3.xxx + u_xlat0.xyz;
					    }
					    u_xlat0.xyz = u_xlat0.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat1.xyz = vec3(u_xlat12) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat2.z;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendAdd" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat12;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat2.xyz = vec3(u_xlat12) * u_xlat2.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat2.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat1.z;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					bool u_xlatb3;
					vec2 u_xlat4;
					float u_xlat12;
					int u_xlati12;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat1 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat1.x);
					    u_xlat0.x = float(0.0);
					    u_xlat0.y = float(0.0);
					    u_xlat0.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat1.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat3.x = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat3.x = u_xlat3.x * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat3.x = float(1.0) / u_xlat3.x;
					        u_xlat0.xyz = unity_LightColor[u_xlati_loop_1].xyz * u_xlat3.xxx + u_xlat0.xyz;
					    }
					    u_xlat0.xyz = u_xlat0.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat1.xyz = vec3(u_xlat12) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat2.z;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendAdd" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat12;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat2.xyz = vec3(u_xlat12) * u_xlat2.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat2.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat1.z;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					bool u_xlatb3;
					vec2 u_xlat4;
					float u_xlat12;
					int u_xlati12;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat1 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat1.x);
					    u_xlat0.x = float(0.0);
					    u_xlat0.y = float(0.0);
					    u_xlat0.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat1.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat3.x = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat3.x = u_xlat3.x * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat3.x = float(1.0) / u_xlat3.x;
					        u_xlat0.xyz = unity_LightColor[u_xlati_loop_1].xyz * u_xlat3.xxx + u_xlat0.xyz;
					    }
					    u_xlat0.xyz = u_xlat0.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat1.xyz = vec3(u_xlat12) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat2.z;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendAdd" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat12;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat2.xyz = vec3(u_xlat12) * u_xlat2.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat2.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat1.z;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					bool u_xlatb3;
					vec2 u_xlat4;
					float u_xlat12;
					int u_xlati12;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat1 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat1.x);
					    u_xlat0.x = float(0.0);
					    u_xlat0.y = float(0.0);
					    u_xlat0.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat1.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat3.x = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat3.x = u_xlat3.x * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat3.x = float(1.0) / u_xlat3.x;
					        u_xlat0.xyz = unity_LightColor[u_xlati_loop_1].xyz * u_xlat3.xxx + u_xlat0.xyz;
					    }
					    u_xlat0.xyz = u_xlat0.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat1.xyz = vec3(u_xlat12) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat2.z;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendAdd" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec2 u_xlat4;
					int u_xlati12;
					float u_xlat13;
					bool u_xlatb13;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat0 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat1.x = float(0.0);
					    u_xlat1.y = float(0.0);
					    u_xlat1.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat13 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat13 = u_xlat13 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat13 = float(1.0) / u_xlat13;
					        u_xlat1.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat13) + u_xlat1.xyz;
					    }
					    u_xlat0.xyz = u_xlat1.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendAdd" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec2 u_xlat4;
					int u_xlati12;
					float u_xlat13;
					bool u_xlatb13;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat0 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat1.x = float(0.0);
					    u_xlat1.y = float(0.0);
					    u_xlat1.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat13 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat13 = u_xlat13 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat13 = float(1.0) / u_xlat13;
					        u_xlat1.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat13) + u_xlat1.xyz;
					    }
					    u_xlat0.xyz = u_xlat1.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendAdd" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec2 u_xlat4;
					int u_xlati12;
					float u_xlat13;
					bool u_xlatb13;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat0 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat1.x = float(0.0);
					    u_xlat1.y = float(0.0);
					    u_xlat1.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat13 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat13 = u_xlat13 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat13 = float(1.0) / u_xlat13;
					        u_xlat1.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat13) + u_xlat1.xyz;
					    }
					    u_xlat0.xyz = u_xlat1.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendAdd" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec2 u_xlat4;
					int u_xlati12;
					float u_xlat13;
					bool u_xlatb13;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat0 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat1.x = float(0.0);
					    u_xlat1.y = float(0.0);
					    u_xlat1.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat13 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat13 = u_xlat13 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat13 = float(1.0) / u_xlat13;
					        u_xlat1.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat13) + u_xlat1.xyz;
					    }
					    u_xlat0.xyz = u_xlat1.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendAdd" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec2 u_xlat4;
					int u_xlati12;
					float u_xlat13;
					bool u_xlatb13;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat0 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat1.x = float(0.0);
					    u_xlat1.y = float(0.0);
					    u_xlat1.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat13 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat13 = u_xlat13 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat13 = float(1.0) / u_xlat13;
					        u_xlat1.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat13) + u_xlat1.xyz;
					    }
					    u_xlat0.xyz = u_xlat1.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendAdd" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec2 u_xlat4;
					int u_xlati12;
					float u_xlat13;
					bool u_xlatb13;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat0 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat1.x = float(0.0);
					    u_xlat1.y = float(0.0);
					    u_xlat1.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat13 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat13 = u_xlat13 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat13 = float(1.0) / u_xlat13;
					        u_xlat1.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat13) + u_xlat1.xyz;
					    }
					    u_xlat0.xyz = u_xlat1.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendAdd" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec2 u_xlat4;
					int u_xlati12;
					float u_xlat13;
					bool u_xlatb13;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat0 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat1.x = float(0.0);
					    u_xlat1.y = float(0.0);
					    u_xlat1.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat13 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat13 = u_xlat13 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat13 = float(1.0) / u_xlat13;
					        u_xlat1.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat13) + u_xlat1.xyz;
					    }
					    u_xlat0.xyz = u_xlat1.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendAdd" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec2 u_xlat4;
					int u_xlati12;
					float u_xlat13;
					bool u_xlatb13;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat0 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat1.x = float(0.0);
					    u_xlat1.y = float(0.0);
					    u_xlat1.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat13 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat13 = u_xlat13 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat13 = float(1.0) / u_xlat13;
					        u_xlat1.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat13) + u_xlat1.xyz;
					    }
					    u_xlat0.xyz = u_xlat1.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendAdd" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec2 u_xlat4;
					int u_xlati12;
					float u_xlat13;
					bool u_xlatb13;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat0 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat1.x = float(0.0);
					    u_xlat1.y = float(0.0);
					    u_xlat1.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat13 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat13 = u_xlat13 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat13 = float(1.0) / u_xlat13;
					        u_xlat1.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat13) + u_xlat1.xyz;
					    }
					    u_xlat0.xyz = u_xlat1.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendAdd" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec2 u_xlat4;
					int u_xlati12;
					float u_xlat13;
					bool u_xlatb13;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat0 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat1.x = float(0.0);
					    u_xlat1.y = float(0.0);
					    u_xlat1.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat13 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat13 = u_xlat13 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat13 = float(1.0) / u_xlat13;
					        u_xlat1.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat13) + u_xlat1.xyz;
					    }
					    u_xlat0.xyz = u_xlat1.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendAdd" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec2 u_xlat4;
					int u_xlati12;
					float u_xlat13;
					bool u_xlatb13;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat0 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat1.x = float(0.0);
					    u_xlat1.y = float(0.0);
					    u_xlat1.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat13 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat13 = u_xlat13 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat13 = float(1.0) / u_xlat13;
					        u_xlat1.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat13) + u_xlat1.xyz;
					    }
					    u_xlat0.xyz = u_xlat1.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendAdd" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec2 u_xlat4;
					int u_xlati12;
					float u_xlat13;
					bool u_xlatb13;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat0 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat1.x = float(0.0);
					    u_xlat1.y = float(0.0);
					    u_xlat1.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat13 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat13 = u_xlat13 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat13 = float(1.0) / u_xlat13;
					        u_xlat1.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat13) + u_xlat1.xyz;
					    }
					    u_xlat0.xyz = u_xlat1.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendAdd" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec2 u_xlat4;
					int u_xlati12;
					float u_xlat13;
					bool u_xlatb13;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat0 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat1.x = float(0.0);
					    u_xlat1.y = float(0.0);
					    u_xlat1.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat13 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat13 = u_xlat13 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat13 = float(1.0) / u_xlat13;
					        u_xlat1.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat13) + u_xlat1.xyz;
					    }
					    u_xlat0.xyz = u_xlat1.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendAdd" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec2 u_xlat4;
					int u_xlati12;
					float u_xlat13;
					bool u_xlatb13;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat0 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat1.x = float(0.0);
					    u_xlat1.y = float(0.0);
					    u_xlat1.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat13 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat13 = u_xlat13 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat13 = float(1.0) / u_xlat13;
					        u_xlat1.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat13) + u_xlat1.xyz;
					    }
					    u_xlat0.xyz = u_xlat1.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendAdd" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec2 u_xlat4;
					int u_xlati12;
					float u_xlat13;
					bool u_xlatb13;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat0 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat1.x = float(0.0);
					    u_xlat1.y = float(0.0);
					    u_xlat1.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat13 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat13 = u_xlat13 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat13 = float(1.0) / u_xlat13;
					        u_xlat1.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat13) + u_xlat1.xyz;
					    }
					    u_xlat0.xyz = u_xlat1.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendAdd" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec2 u_xlat4;
					int u_xlati12;
					float u_xlat13;
					bool u_xlatb13;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat0 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat1.x = float(0.0);
					    u_xlat1.y = float(0.0);
					    u_xlat1.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat13 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat13 = u_xlat13 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat13 = float(1.0) / u_xlat13;
					        u_xlat1.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat13) + u_xlat1.xyz;
					    }
					    u_xlat0.xyz = u_xlat1.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendAdd" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat12;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat2.xyz = vec3(u_xlat12) * u_xlat2.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat2.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					bool u_xlatb3;
					vec2 u_xlat4;
					float u_xlat12;
					int u_xlati12;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat1 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat1.x);
					    u_xlat0.x = float(0.0);
					    u_xlat0.y = float(0.0);
					    u_xlat0.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat1.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat3.x = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat3.x = u_xlat3.x * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat3.x = float(1.0) / u_xlat3.x;
					        u_xlat0.xyz = unity_LightColor[u_xlati_loop_1].xyz * u_xlat3.xxx + u_xlat0.xyz;
					    }
					    u_xlat0.xyz = u_xlat0.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat1.xyz = vec3(u_xlat12) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendAdd" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat12;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat2.xyz = vec3(u_xlat12) * u_xlat2.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat2.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					bool u_xlatb3;
					vec2 u_xlat4;
					float u_xlat12;
					int u_xlati12;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat1 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat1.x);
					    u_xlat0.x = float(0.0);
					    u_xlat0.y = float(0.0);
					    u_xlat0.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat1.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat3.x = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat3.x = u_xlat3.x * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat3.x = float(1.0) / u_xlat3.x;
					        u_xlat0.xyz = unity_LightColor[u_xlati_loop_1].xyz * u_xlat3.xxx + u_xlat0.xyz;
					    }
					    u_xlat0.xyz = u_xlat0.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat1.xyz = vec3(u_xlat12) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendAdd" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat12;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat2.xyz = vec3(u_xlat12) * u_xlat2.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat2.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat1.z;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					bool u_xlatb3;
					vec2 u_xlat4;
					float u_xlat12;
					int u_xlati12;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat1 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat1.x);
					    u_xlat0.x = float(0.0);
					    u_xlat0.y = float(0.0);
					    u_xlat0.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat1.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat3.x = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat3.x = u_xlat3.x * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat3.x = float(1.0) / u_xlat3.x;
					        u_xlat0.xyz = unity_LightColor[u_xlati_loop_1].xyz * u_xlat3.xxx + u_xlat0.xyz;
					    }
					    u_xlat0.xyz = u_xlat0.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat1.xyz = vec3(u_xlat12) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat2.z;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendAdd" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat12;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat2.xyz = vec3(u_xlat12) * u_xlat2.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat2.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat1.z;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					bool u_xlatb3;
					vec2 u_xlat4;
					float u_xlat12;
					int u_xlati12;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat1 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat1.x);
					    u_xlat0.x = float(0.0);
					    u_xlat0.y = float(0.0);
					    u_xlat0.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat1.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat3.x = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat3.x = u_xlat3.x * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat3.x = float(1.0) / u_xlat3.x;
					        u_xlat0.xyz = unity_LightColor[u_xlati_loop_1].xyz * u_xlat3.xxx + u_xlat0.xyz;
					    }
					    u_xlat0.xyz = u_xlat0.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat1.xyz = vec3(u_xlat12) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat2.z;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendAdd" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat12;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat2.xyz = vec3(u_xlat12) * u_xlat2.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat2.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat1.z;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					bool u_xlatb3;
					vec2 u_xlat4;
					float u_xlat12;
					int u_xlati12;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat1 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat1.x);
					    u_xlat0.x = float(0.0);
					    u_xlat0.y = float(0.0);
					    u_xlat0.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat1.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat3.x = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat3.x = u_xlat3.x * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat3.x = float(1.0) / u_xlat3.x;
					        u_xlat0.xyz = unity_LightColor[u_xlati_loop_1].xyz * u_xlat3.xxx + u_xlat0.xyz;
					    }
					    u_xlat0.xyz = u_xlat0.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat1.xyz = vec3(u_xlat12) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat2.z;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendAdd" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat12;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat2.xyz = vec3(u_xlat12) * u_xlat2.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat2.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat1.z;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					bool u_xlatb3;
					vec2 u_xlat4;
					float u_xlat12;
					int u_xlati12;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat1 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat1.x);
					    u_xlat0.x = float(0.0);
					    u_xlat0.y = float(0.0);
					    u_xlat0.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat1.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat3.x = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat3.x = u_xlat3.x * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat3.x = float(1.0) / u_xlat3.x;
					        u_xlat0.xyz = unity_LightColor[u_xlati_loop_1].xyz * u_xlat3.xxx + u_xlat0.xyz;
					    }
					    u_xlat0.xyz = u_xlat0.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat1.xyz = vec3(u_xlat12) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat2.z;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendAdd" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat12;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat2.xyz = vec3(u_xlat12) * u_xlat2.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat2.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat1.z;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					bool u_xlatb3;
					vec2 u_xlat4;
					float u_xlat12;
					int u_xlati12;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat1 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat1.x);
					    u_xlat0.x = float(0.0);
					    u_xlat0.y = float(0.0);
					    u_xlat0.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat1.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat3.x = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat3.x = u_xlat3.x * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat3.x = float(1.0) / u_xlat3.x;
					        u_xlat0.xyz = unity_LightColor[u_xlati_loop_1].xyz * u_xlat3.xxx + u_xlat0.xyz;
					    }
					    u_xlat0.xyz = u_xlat0.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat1.xyz = vec3(u_xlat12) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat2.z;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendAdd" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat12;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat2.xyz = vec3(u_xlat12) * u_xlat2.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat2.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat1.z;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					bool u_xlatb3;
					vec2 u_xlat4;
					float u_xlat12;
					int u_xlati12;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat1 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat1.x);
					    u_xlat0.x = float(0.0);
					    u_xlat0.y = float(0.0);
					    u_xlat0.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat1.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat3.x = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat3.x = u_xlat3.x * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat3.x = float(1.0) / u_xlat3.x;
					        u_xlat0.xyz = unity_LightColor[u_xlati_loop_1].xyz * u_xlat3.xxx + u_xlat0.xyz;
					    }
					    u_xlat0.xyz = u_xlat0.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat1.xyz = vec3(u_xlat12) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat2.z;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendAdd" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat12;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat2.xyz = vec3(u_xlat12) * u_xlat2.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat2.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					bool u_xlatb3;
					vec2 u_xlat4;
					float u_xlat12;
					int u_xlati12;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat1 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat1.x);
					    u_xlat0.x = float(0.0);
					    u_xlat0.y = float(0.0);
					    u_xlat0.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat1.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat3.x = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat3.x = u_xlat3.x * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat3.x = float(1.0) / u_xlat3.x;
					        u_xlat0.xyz = unity_LightColor[u_xlati_loop_1].xyz * u_xlat3.xxx + u_xlat0.xyz;
					    }
					    u_xlat0.xyz = u_xlat0.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat1.xyz = vec3(u_xlat12) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendAdd" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat12;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat2.xyz = vec3(u_xlat12) * u_xlat2.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat2.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					bool u_xlatb3;
					vec2 u_xlat4;
					float u_xlat12;
					int u_xlati12;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat1 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat1.x);
					    u_xlat0.x = float(0.0);
					    u_xlat0.y = float(0.0);
					    u_xlat0.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat1.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat3.x = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat3.x = u_xlat3.x * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat3.x = float(1.0) / u_xlat3.x;
					        u_xlat0.xyz = unity_LightColor[u_xlati_loop_1].xyz * u_xlat3.xxx + u_xlat0.xyz;
					    }
					    u_xlat0.xyz = u_xlat0.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat1.xyz = vec3(u_xlat12) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendAdd" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat12;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat2.xyz = vec3(u_xlat12) * u_xlat2.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat2.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat1.z;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					bool u_xlatb3;
					vec2 u_xlat4;
					float u_xlat12;
					int u_xlati12;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat1 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat1.x);
					    u_xlat0.x = float(0.0);
					    u_xlat0.y = float(0.0);
					    u_xlat0.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat1.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat3.x = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat3.x = u_xlat3.x * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat3.x = float(1.0) / u_xlat3.x;
					        u_xlat0.xyz = unity_LightColor[u_xlati_loop_1].xyz * u_xlat3.xxx + u_xlat0.xyz;
					    }
					    u_xlat0.xyz = u_xlat0.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat1.xyz = vec3(u_xlat12) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat2.z;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendAdd" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat12;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat2.xyz = vec3(u_xlat12) * u_xlat2.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat2.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat1.z;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					bool u_xlatb3;
					vec2 u_xlat4;
					float u_xlat12;
					int u_xlati12;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat1 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat1.x);
					    u_xlat0.x = float(0.0);
					    u_xlat0.y = float(0.0);
					    u_xlat0.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat1.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat3.x = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat3.x = u_xlat3.x * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat3.x = float(1.0) / u_xlat3.x;
					        u_xlat0.xyz = unity_LightColor[u_xlati_loop_1].xyz * u_xlat3.xxx + u_xlat0.xyz;
					    }
					    u_xlat0.xyz = u_xlat0.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat1.xyz = vec3(u_xlat12) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat2.z;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendAdd" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat12;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat2.xyz = vec3(u_xlat12) * u_xlat2.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat2.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat1.z;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					bool u_xlatb3;
					vec2 u_xlat4;
					float u_xlat12;
					int u_xlati12;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat1 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat1.x);
					    u_xlat0.x = float(0.0);
					    u_xlat0.y = float(0.0);
					    u_xlat0.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat1.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat3.x = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat3.x = u_xlat3.x * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat3.x = float(1.0) / u_xlat3.x;
					        u_xlat0.xyz = unity_LightColor[u_xlati_loop_1].xyz * u_xlat3.xxx + u_xlat0.xyz;
					    }
					    u_xlat0.xyz = u_xlat0.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat1.xyz = vec3(u_xlat12) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat2.z;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendAdd" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat12;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat2.xyz = vec3(u_xlat12) * u_xlat2.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat2.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat1.z;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					bool u_xlatb3;
					vec2 u_xlat4;
					float u_xlat12;
					int u_xlati12;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat1 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat1.x);
					    u_xlat0.x = float(0.0);
					    u_xlat0.y = float(0.0);
					    u_xlat0.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat1.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat3.x = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat3.x = u_xlat3.x * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat3.x = float(1.0) / u_xlat3.x;
					        u_xlat0.xyz = unity_LightColor[u_xlati_loop_1].xyz * u_xlat3.xxx + u_xlat0.xyz;
					    }
					    u_xlat0.xyz = u_xlat0.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat1.xyz = vec3(u_xlat12) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat2.z;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendAdd" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat12;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat2.xyz = vec3(u_xlat12) * u_xlat2.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat2.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat1.z;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					bool u_xlatb3;
					vec2 u_xlat4;
					float u_xlat12;
					int u_xlati12;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat1 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat1.x);
					    u_xlat0.x = float(0.0);
					    u_xlat0.y = float(0.0);
					    u_xlat0.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat1.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat3.x = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat3.x = u_xlat3.x * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat3.x = float(1.0) / u_xlat3.x;
					        u_xlat0.xyz = unity_LightColor[u_xlati_loop_1].xyz * u_xlat3.xxx + u_xlat0.xyz;
					    }
					    u_xlat0.xyz = u_xlat0.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat1.xyz = vec3(u_xlat12) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat2.z;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendAdd" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat12;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat2.xyz = vec3(u_xlat12) * u_xlat2.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat2.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat1.z;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					bool u_xlatb3;
					vec2 u_xlat4;
					float u_xlat12;
					int u_xlati12;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat1 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat1.x);
					    u_xlat0.x = float(0.0);
					    u_xlat0.y = float(0.0);
					    u_xlat0.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat1.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat3.x = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat3.x = u_xlat3.x * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat3.x = float(1.0) / u_xlat3.x;
					        u_xlat0.xyz = unity_LightColor[u_xlati_loop_1].xyz * u_xlat3.xxx + u_xlat0.xyz;
					    }
					    u_xlat0.xyz = u_xlat0.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat1.xyz = vec3(u_xlat12) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat2.z;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendAdd" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec2 u_xlat4;
					int u_xlati12;
					float u_xlat13;
					bool u_xlatb13;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat0 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat1.x = float(0.0);
					    u_xlat1.y = float(0.0);
					    u_xlat1.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat13 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat13 = u_xlat13 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat13 = float(1.0) / u_xlat13;
					        u_xlat1.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat13) + u_xlat1.xyz;
					    }
					    u_xlat0.xyz = u_xlat1.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendAdd" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec2 u_xlat4;
					int u_xlati12;
					float u_xlat13;
					bool u_xlatb13;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat0 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat1.x = float(0.0);
					    u_xlat1.y = float(0.0);
					    u_xlat1.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat13 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat13 = u_xlat13 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat13 = float(1.0) / u_xlat13;
					        u_xlat1.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat13) + u_xlat1.xyz;
					    }
					    u_xlat0.xyz = u_xlat1.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendAdd" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec2 u_xlat4;
					int u_xlati12;
					float u_xlat13;
					bool u_xlatb13;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat0 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat1.x = float(0.0);
					    u_xlat1.y = float(0.0);
					    u_xlat1.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat13 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat13 = u_xlat13 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat13 = float(1.0) / u_xlat13;
					        u_xlat1.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat13) + u_xlat1.xyz;
					    }
					    u_xlat0.xyz = u_xlat1.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendAdd" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec2 u_xlat4;
					int u_xlati12;
					float u_xlat13;
					bool u_xlatb13;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat0 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat1.x = float(0.0);
					    u_xlat1.y = float(0.0);
					    u_xlat1.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat13 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat13 = u_xlat13 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat13 = float(1.0) / u_xlat13;
					        u_xlat1.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat13) + u_xlat1.xyz;
					    }
					    u_xlat0.xyz = u_xlat1.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendAdd" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec2 u_xlat4;
					int u_xlati12;
					float u_xlat13;
					bool u_xlatb13;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat0 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat1.x = float(0.0);
					    u_xlat1.y = float(0.0);
					    u_xlat1.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat13 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat13 = u_xlat13 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat13 = float(1.0) / u_xlat13;
					        u_xlat1.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat13) + u_xlat1.xyz;
					    }
					    u_xlat0.xyz = u_xlat1.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendAdd" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec2 u_xlat4;
					int u_xlati12;
					float u_xlat13;
					bool u_xlatb13;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat0 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat1.x = float(0.0);
					    u_xlat1.y = float(0.0);
					    u_xlat1.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat13 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat13 = u_xlat13 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat13 = float(1.0) / u_xlat13;
					        u_xlat1.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat13) + u_xlat1.xyz;
					    }
					    u_xlat0.xyz = u_xlat1.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendAdd" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec2 u_xlat4;
					int u_xlati12;
					float u_xlat13;
					bool u_xlatb13;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat0 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat1.x = float(0.0);
					    u_xlat1.y = float(0.0);
					    u_xlat1.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat13 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat13 = u_xlat13 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat13 = float(1.0) / u_xlat13;
					        u_xlat1.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat13) + u_xlat1.xyz;
					    }
					    u_xlat0.xyz = u_xlat1.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendAdd" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec2 u_xlat4;
					int u_xlati12;
					float u_xlat13;
					bool u_xlatb13;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat0 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat1.x = float(0.0);
					    u_xlat1.y = float(0.0);
					    u_xlat1.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat13 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat13 = u_xlat13 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat13 = float(1.0) / u_xlat13;
					        u_xlat1.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat13) + u_xlat1.xyz;
					    }
					    u_xlat0.xyz = u_xlat1.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendAdd" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec2 u_xlat4;
					int u_xlati12;
					float u_xlat13;
					bool u_xlatb13;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat0 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat1.x = float(0.0);
					    u_xlat1.y = float(0.0);
					    u_xlat1.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat13 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat13 = u_xlat13 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat13 = float(1.0) / u_xlat13;
					        u_xlat1.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat13) + u_xlat1.xyz;
					    }
					    u_xlat0.xyz = u_xlat1.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendAdd" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec2 u_xlat4;
					int u_xlati12;
					float u_xlat13;
					bool u_xlatb13;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat0 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat1.x = float(0.0);
					    u_xlat1.y = float(0.0);
					    u_xlat1.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat13 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat13 = u_xlat13 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat13 = float(1.0) / u_xlat13;
					        u_xlat1.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat13) + u_xlat1.xyz;
					    }
					    u_xlat0.xyz = u_xlat1.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendAdd" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec2 u_xlat4;
					int u_xlati12;
					float u_xlat13;
					bool u_xlatb13;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat0 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat1.x = float(0.0);
					    u_xlat1.y = float(0.0);
					    u_xlat1.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat13 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat13 = u_xlat13 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat13 = float(1.0) / u_xlat13;
					        u_xlat1.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat13) + u_xlat1.xyz;
					    }
					    u_xlat0.xyz = u_xlat1.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendAdd" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec2 u_xlat4;
					int u_xlati12;
					float u_xlat13;
					bool u_xlatb13;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat0 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat1.x = float(0.0);
					    u_xlat1.y = float(0.0);
					    u_xlat1.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat13 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat13 = u_xlat13 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat13 = float(1.0) / u_xlat13;
					        u_xlat1.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat13) + u_xlat1.xyz;
					    }
					    u_xlat0.xyz = u_xlat1.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendAdd" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec2 u_xlat4;
					int u_xlati12;
					float u_xlat13;
					bool u_xlatb13;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat0 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat1.x = float(0.0);
					    u_xlat1.y = float(0.0);
					    u_xlat1.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat13 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat13 = u_xlat13 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat13 = float(1.0) / u_xlat13;
					        u_xlat1.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat13) + u_xlat1.xyz;
					    }
					    u_xlat0.xyz = u_xlat1.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendAdd" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec2 u_xlat4;
					int u_xlati12;
					float u_xlat13;
					bool u_xlatb13;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat0 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat1.x = float(0.0);
					    u_xlat1.y = float(0.0);
					    u_xlat1.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat13 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat13 = u_xlat13 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat13 = float(1.0) / u_xlat13;
					        u_xlat1.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat13) + u_xlat1.xyz;
					    }
					    u_xlat0.xyz = u_xlat1.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendAdd" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec2 u_xlat4;
					int u_xlati12;
					float u_xlat13;
					bool u_xlatb13;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat0 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat1.x = float(0.0);
					    u_xlat1.y = float(0.0);
					    u_xlat1.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat13 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat13 = u_xlat13 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat13 = float(1.0) / u_xlat13;
					        u_xlat1.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat13) + u_xlat1.xyz;
					    }
					    u_xlat0.xyz = u_xlat1.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendAdd" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec2 u_xlat4;
					int u_xlati12;
					float u_xlat13;
					bool u_xlatb13;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat0 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat1.x = float(0.0);
					    u_xlat1.y = float(0.0);
					    u_xlat1.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat13 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat13 = u_xlat13 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat13 = float(1.0) / u_xlat13;
					        u_xlat1.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat13) + u_xlat1.xyz;
					    }
					    u_xlat0.xyz = u_xlat1.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendAdd" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat12;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat2.xyz = vec3(u_xlat12) * u_xlat2.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat2.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					bool u_xlatb3;
					vec2 u_xlat4;
					float u_xlat12;
					int u_xlati12;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat1 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat1.x);
					    u_xlat0.x = float(0.0);
					    u_xlat0.y = float(0.0);
					    u_xlat0.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat1.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat3.x = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat3.x = u_xlat3.x * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat3.x = float(1.0) / u_xlat3.x;
					        u_xlat0.xyz = unity_LightColor[u_xlati_loop_1].xyz * u_xlat3.xxx + u_xlat0.xyz;
					    }
					    u_xlat0.xyz = u_xlat0.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat1.xyz = vec3(u_xlat12) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendAdd" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat12;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat2.xyz = vec3(u_xlat12) * u_xlat2.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat2.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					bool u_xlatb3;
					vec2 u_xlat4;
					float u_xlat12;
					int u_xlati12;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat1 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat1.x);
					    u_xlat0.x = float(0.0);
					    u_xlat0.y = float(0.0);
					    u_xlat0.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat1.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat3.x = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat3.x = u_xlat3.x * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat3.x = float(1.0) / u_xlat3.x;
					        u_xlat0.xyz = unity_LightColor[u_xlati_loop_1].xyz * u_xlat3.xxx + u_xlat0.xyz;
					    }
					    u_xlat0.xyz = u_xlat0.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat1.xyz = vec3(u_xlat12) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendAdd" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat12;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat2.xyz = vec3(u_xlat12) * u_xlat2.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat2.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat1.z;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					bool u_xlatb3;
					vec2 u_xlat4;
					float u_xlat12;
					int u_xlati12;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat1 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat1.x);
					    u_xlat0.x = float(0.0);
					    u_xlat0.y = float(0.0);
					    u_xlat0.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat1.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat3.x = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat3.x = u_xlat3.x * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat3.x = float(1.0) / u_xlat3.x;
					        u_xlat0.xyz = unity_LightColor[u_xlati_loop_1].xyz * u_xlat3.xxx + u_xlat0.xyz;
					    }
					    u_xlat0.xyz = u_xlat0.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat1.xyz = vec3(u_xlat12) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat2.z;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendAdd" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat12;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat2.xyz = vec3(u_xlat12) * u_xlat2.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat2.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat1.z;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					bool u_xlatb3;
					vec2 u_xlat4;
					float u_xlat12;
					int u_xlati12;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat1 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat1.x);
					    u_xlat0.x = float(0.0);
					    u_xlat0.y = float(0.0);
					    u_xlat0.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat1.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat3.x = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat3.x = u_xlat3.x * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat3.x = float(1.0) / u_xlat3.x;
					        u_xlat0.xyz = unity_LightColor[u_xlati_loop_1].xyz * u_xlat3.xxx + u_xlat0.xyz;
					    }
					    u_xlat0.xyz = u_xlat0.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat1.xyz = vec3(u_xlat12) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat2.z;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendAdd" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat12;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat2.xyz = vec3(u_xlat12) * u_xlat2.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat2.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat1.z;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					bool u_xlatb3;
					vec2 u_xlat4;
					float u_xlat12;
					int u_xlati12;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat1 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat1.x);
					    u_xlat0.x = float(0.0);
					    u_xlat0.y = float(0.0);
					    u_xlat0.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat1.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat3.x = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat3.x = u_xlat3.x * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat3.x = float(1.0) / u_xlat3.x;
					        u_xlat0.xyz = unity_LightColor[u_xlati_loop_1].xyz * u_xlat3.xxx + u_xlat0.xyz;
					    }
					    u_xlat0.xyz = u_xlat0.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat1.xyz = vec3(u_xlat12) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat2.z;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendAdd" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat12;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat2.xyz = vec3(u_xlat12) * u_xlat2.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat2.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat1.z;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					bool u_xlatb3;
					vec2 u_xlat4;
					float u_xlat12;
					int u_xlati12;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat1 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat1.x);
					    u_xlat0.x = float(0.0);
					    u_xlat0.y = float(0.0);
					    u_xlat0.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat1.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat3.x = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat3.x = u_xlat3.x * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat3.x = float(1.0) / u_xlat3.x;
					        u_xlat0.xyz = unity_LightColor[u_xlati_loop_1].xyz * u_xlat3.xxx + u_xlat0.xyz;
					    }
					    u_xlat0.xyz = u_xlat0.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat1.xyz = vec3(u_xlat12) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat2.z;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendAdd" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat12;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat2.xyz = vec3(u_xlat12) * u_xlat2.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat2.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat1.z;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					bool u_xlatb3;
					vec2 u_xlat4;
					float u_xlat12;
					int u_xlati12;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat1 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat1.x);
					    u_xlat0.x = float(0.0);
					    u_xlat0.y = float(0.0);
					    u_xlat0.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat1.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat3.x = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat3.x = u_xlat3.x * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat3.x = float(1.0) / u_xlat3.x;
					        u_xlat0.xyz = unity_LightColor[u_xlati_loop_1].xyz * u_xlat3.xxx + u_xlat0.xyz;
					    }
					    u_xlat0.xyz = u_xlat0.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat1.xyz = vec3(u_xlat12) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat2.z;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendAdd" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat12;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat2.xyz = vec3(u_xlat12) * u_xlat2.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat2.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat1.z;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					bool u_xlatb3;
					vec2 u_xlat4;
					float u_xlat12;
					int u_xlati12;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat1 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat1.x);
					    u_xlat0.x = float(0.0);
					    u_xlat0.y = float(0.0);
					    u_xlat0.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat1.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat3.x = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat3.x = u_xlat3.x * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat3.x = float(1.0) / u_xlat3.x;
					        u_xlat0.xyz = unity_LightColor[u_xlati_loop_1].xyz * u_xlat3.xxx + u_xlat0.xyz;
					    }
					    u_xlat0.xyz = u_xlat0.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat1.xyz = vec3(u_xlat12) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat2.z;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendAdd" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat12;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat2.xyz = vec3(u_xlat12) * u_xlat2.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat2.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					bool u_xlatb3;
					vec2 u_xlat4;
					float u_xlat12;
					int u_xlati12;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat1 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat1.x);
					    u_xlat0.x = float(0.0);
					    u_xlat0.y = float(0.0);
					    u_xlat0.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat1.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat3.x = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat3.x = u_xlat3.x * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat3.x = float(1.0) / u_xlat3.x;
					        u_xlat0.xyz = unity_LightColor[u_xlati_loop_1].xyz * u_xlat3.xxx + u_xlat0.xyz;
					    }
					    u_xlat0.xyz = u_xlat0.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat1.xyz = vec3(u_xlat12) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendAdd" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat12;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat2.xyz = vec3(u_xlat12) * u_xlat2.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat2.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					bool u_xlatb3;
					vec2 u_xlat4;
					float u_xlat12;
					int u_xlati12;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat1 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat1.x);
					    u_xlat0.x = float(0.0);
					    u_xlat0.y = float(0.0);
					    u_xlat0.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat1.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat3.x = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat3.x = u_xlat3.x * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat3.x = float(1.0) / u_xlat3.x;
					        u_xlat0.xyz = unity_LightColor[u_xlati_loop_1].xyz * u_xlat3.xxx + u_xlat0.xyz;
					    }
					    u_xlat0.xyz = u_xlat0.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat1.xyz = vec3(u_xlat12) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendAdd" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat12;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat2.xyz = vec3(u_xlat12) * u_xlat2.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat2.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat1.z;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					bool u_xlatb3;
					vec2 u_xlat4;
					float u_xlat12;
					int u_xlati12;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat1 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat1.x);
					    u_xlat0.x = float(0.0);
					    u_xlat0.y = float(0.0);
					    u_xlat0.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat1.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat3.x = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat3.x = u_xlat3.x * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat3.x = float(1.0) / u_xlat3.x;
					        u_xlat0.xyz = unity_LightColor[u_xlati_loop_1].xyz * u_xlat3.xxx + u_xlat0.xyz;
					    }
					    u_xlat0.xyz = u_xlat0.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat1.xyz = vec3(u_xlat12) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat2.z;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendAdd" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat12;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat2.xyz = vec3(u_xlat12) * u_xlat2.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat2.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat1.z;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					bool u_xlatb3;
					vec2 u_xlat4;
					float u_xlat12;
					int u_xlati12;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat1 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat1.x);
					    u_xlat0.x = float(0.0);
					    u_xlat0.y = float(0.0);
					    u_xlat0.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat1.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat3.x = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat3.x = u_xlat3.x * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat3.x = float(1.0) / u_xlat3.x;
					        u_xlat0.xyz = unity_LightColor[u_xlati_loop_1].xyz * u_xlat3.xxx + u_xlat0.xyz;
					    }
					    u_xlat0.xyz = u_xlat0.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat1.xyz = vec3(u_xlat12) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat2.z;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendAdd" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat12;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat2.xyz = vec3(u_xlat12) * u_xlat2.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat2.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat1.z;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					bool u_xlatb3;
					vec2 u_xlat4;
					float u_xlat12;
					int u_xlati12;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat1 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat1.x);
					    u_xlat0.x = float(0.0);
					    u_xlat0.y = float(0.0);
					    u_xlat0.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat1.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat3.x = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat3.x = u_xlat3.x * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat3.x = float(1.0) / u_xlat3.x;
					        u_xlat0.xyz = unity_LightColor[u_xlati_loop_1].xyz * u_xlat3.xxx + u_xlat0.xyz;
					    }
					    u_xlat0.xyz = u_xlat0.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat1.xyz = vec3(u_xlat12) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat2.z;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendAdd" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat12;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat2.xyz = vec3(u_xlat12) * u_xlat2.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat2.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat1.z;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					bool u_xlatb3;
					vec2 u_xlat4;
					float u_xlat12;
					int u_xlati12;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat1 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat1.x);
					    u_xlat0.x = float(0.0);
					    u_xlat0.y = float(0.0);
					    u_xlat0.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat1.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat3.x = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat3.x = u_xlat3.x * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat3.x = float(1.0) / u_xlat3.x;
					        u_xlat0.xyz = unity_LightColor[u_xlati_loop_1].xyz * u_xlat3.xxx + u_xlat0.xyz;
					    }
					    u_xlat0.xyz = u_xlat0.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat1.xyz = vec3(u_xlat12) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat2.z;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendAdd" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat12;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat2.xyz = vec3(u_xlat12) * u_xlat2.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat2.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat1.z;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					bool u_xlatb3;
					vec2 u_xlat4;
					float u_xlat12;
					int u_xlati12;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat1 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat1.x);
					    u_xlat0.x = float(0.0);
					    u_xlat0.y = float(0.0);
					    u_xlat0.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat1.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat3.x = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat3.x = u_xlat3.x * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat3.x = float(1.0) / u_xlat3.x;
					        u_xlat0.xyz = unity_LightColor[u_xlati_loop_1].xyz * u_xlat3.xxx + u_xlat0.xyz;
					    }
					    u_xlat0.xyz = u_xlat0.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat1.xyz = vec3(u_xlat12) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat2.z;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendAdd" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat12;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat2.xyz = vec3(u_xlat12) * u_xlat2.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat2.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat1.z;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					bool u_xlatb3;
					vec2 u_xlat4;
					float u_xlat12;
					int u_xlati12;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat1 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat1.x);
					    u_xlat0.x = float(0.0);
					    u_xlat0.y = float(0.0);
					    u_xlat0.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat1.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat3.x = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat3.x = u_xlat3.x * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat3.x = float(1.0) / u_xlat3.x;
					        u_xlat0.xyz = unity_LightColor[u_xlati_loop_1].xyz * u_xlat3.xxx + u_xlat0.xyz;
					    }
					    u_xlat0.xyz = u_xlat0.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat1.xyz = vec3(u_xlat12) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat2.z;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendAdd" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec2 u_xlat4;
					int u_xlati12;
					float u_xlat13;
					bool u_xlatb13;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat0 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat1.x = float(0.0);
					    u_xlat1.y = float(0.0);
					    u_xlat1.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat13 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat13 = u_xlat13 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat13 = float(1.0) / u_xlat13;
					        u_xlat1.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat13) + u_xlat1.xyz;
					    }
					    u_xlat0.xyz = u_xlat1.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendAdd" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec2 u_xlat4;
					int u_xlati12;
					float u_xlat13;
					bool u_xlatb13;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat0 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat1.x = float(0.0);
					    u_xlat1.y = float(0.0);
					    u_xlat1.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat13 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat13 = u_xlat13 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat13 = float(1.0) / u_xlat13;
					        u_xlat1.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat13) + u_xlat1.xyz;
					    }
					    u_xlat0.xyz = u_xlat1.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendAdd" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec2 u_xlat4;
					int u_xlati12;
					float u_xlat13;
					bool u_xlatb13;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat0 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat1.x = float(0.0);
					    u_xlat1.y = float(0.0);
					    u_xlat1.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat13 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat13 = u_xlat13 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat13 = float(1.0) / u_xlat13;
					        u_xlat1.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat13) + u_xlat1.xyz;
					    }
					    u_xlat0.xyz = u_xlat1.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendAdd" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec2 u_xlat4;
					int u_xlati12;
					float u_xlat13;
					bool u_xlatb13;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat0 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat1.x = float(0.0);
					    u_xlat1.y = float(0.0);
					    u_xlat1.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat13 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat13 = u_xlat13 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat13 = float(1.0) / u_xlat13;
					        u_xlat1.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat13) + u_xlat1.xyz;
					    }
					    u_xlat0.xyz = u_xlat1.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendAdd" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec2 u_xlat4;
					int u_xlati12;
					float u_xlat13;
					bool u_xlatb13;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat0 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat1.x = float(0.0);
					    u_xlat1.y = float(0.0);
					    u_xlat1.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat13 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat13 = u_xlat13 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat13 = float(1.0) / u_xlat13;
					        u_xlat1.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat13) + u_xlat1.xyz;
					    }
					    u_xlat0.xyz = u_xlat1.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendAdd" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec2 u_xlat4;
					int u_xlati12;
					float u_xlat13;
					bool u_xlatb13;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat0 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat1.x = float(0.0);
					    u_xlat1.y = float(0.0);
					    u_xlat1.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat13 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat13 = u_xlat13 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat13 = float(1.0) / u_xlat13;
					        u_xlat1.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat13) + u_xlat1.xyz;
					    }
					    u_xlat0.xyz = u_xlat1.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendAdd" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec2 u_xlat4;
					int u_xlati12;
					float u_xlat13;
					bool u_xlatb13;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat0 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat1.x = float(0.0);
					    u_xlat1.y = float(0.0);
					    u_xlat1.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat13 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat13 = u_xlat13 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat13 = float(1.0) / u_xlat13;
					        u_xlat1.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat13) + u_xlat1.xyz;
					    }
					    u_xlat0.xyz = u_xlat1.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendAdd" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec2 u_xlat4;
					int u_xlati12;
					float u_xlat13;
					bool u_xlatb13;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat0 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat1.x = float(0.0);
					    u_xlat1.y = float(0.0);
					    u_xlat1.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat13 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat13 = u_xlat13 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat13 = float(1.0) / u_xlat13;
					        u_xlat1.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat13) + u_xlat1.xyz;
					    }
					    u_xlat0.xyz = u_xlat1.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendAdd" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec2 u_xlat4;
					int u_xlati12;
					float u_xlat13;
					bool u_xlatb13;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat0 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat1.x = float(0.0);
					    u_xlat1.y = float(0.0);
					    u_xlat1.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat13 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat13 = u_xlat13 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat13 = float(1.0) / u_xlat13;
					        u_xlat1.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat13) + u_xlat1.xyz;
					    }
					    u_xlat0.xyz = u_xlat1.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendAdd" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec2 u_xlat4;
					int u_xlati12;
					float u_xlat13;
					bool u_xlatb13;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat0 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat1.x = float(0.0);
					    u_xlat1.y = float(0.0);
					    u_xlat1.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat13 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat13 = u_xlat13 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat13 = float(1.0) / u_xlat13;
					        u_xlat1.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat13) + u_xlat1.xyz;
					    }
					    u_xlat0.xyz = u_xlat1.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendAdd" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec2 u_xlat4;
					int u_xlati12;
					float u_xlat13;
					bool u_xlatb13;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat0 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat1.x = float(0.0);
					    u_xlat1.y = float(0.0);
					    u_xlat1.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat13 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat13 = u_xlat13 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat13 = float(1.0) / u_xlat13;
					        u_xlat1.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat13) + u_xlat1.xyz;
					    }
					    u_xlat0.xyz = u_xlat1.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendAdd" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec2 u_xlat4;
					int u_xlati12;
					float u_xlat13;
					bool u_xlatb13;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat0 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat1.x = float(0.0);
					    u_xlat1.y = float(0.0);
					    u_xlat1.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat13 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat13 = u_xlat13 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat13 = float(1.0) / u_xlat13;
					        u_xlat1.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat13) + u_xlat1.xyz;
					    }
					    u_xlat0.xyz = u_xlat1.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendAdd" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec2 u_xlat4;
					int u_xlati12;
					float u_xlat13;
					bool u_xlatb13;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat0 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat1.x = float(0.0);
					    u_xlat1.y = float(0.0);
					    u_xlat1.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat13 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat13 = u_xlat13 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat13 = float(1.0) / u_xlat13;
					        u_xlat1.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat13) + u_xlat1.xyz;
					    }
					    u_xlat0.xyz = u_xlat1.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendAdd" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec2 u_xlat4;
					int u_xlati12;
					float u_xlat13;
					bool u_xlatb13;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat0 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat1.x = float(0.0);
					    u_xlat1.y = float(0.0);
					    u_xlat1.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat13 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat13 = u_xlat13 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat13 = float(1.0) / u_xlat13;
					        u_xlat1.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat13) + u_xlat1.xyz;
					    }
					    u_xlat0.xyz = u_xlat1.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendAdd" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec2 u_xlat4;
					int u_xlati12;
					float u_xlat13;
					bool u_xlatb13;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat0 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat1.x = float(0.0);
					    u_xlat1.y = float(0.0);
					    u_xlat1.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat13 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat13 = u_xlat13 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat13 = float(1.0) / u_xlat13;
					        u_xlat1.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat13) + u_xlat1.xyz;
					    }
					    u_xlat0.xyz = u_xlat1.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendAdd" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec2 u_xlat4;
					int u_xlati12;
					float u_xlat13;
					bool u_xlatb13;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat0 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat1.x = float(0.0);
					    u_xlat1.y = float(0.0);
					    u_xlat1.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat13 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat13 = u_xlat13 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat13 = float(1.0) / u_xlat13;
					        u_xlat1.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat13) + u_xlat1.xyz;
					    }
					    u_xlat0.xyz = u_xlat1.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendAdd" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat12;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat2.xyz = vec3(u_xlat12) * u_xlat2.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat2.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					bool u_xlatb3;
					vec2 u_xlat4;
					float u_xlat12;
					int u_xlati12;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat1 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat1.x);
					    u_xlat0.x = float(0.0);
					    u_xlat0.y = float(0.0);
					    u_xlat0.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat1.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat3.x = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat3.x = u_xlat3.x * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat3.x = float(1.0) / u_xlat3.x;
					        u_xlat0.xyz = unity_LightColor[u_xlati_loop_1].xyz * u_xlat3.xxx + u_xlat0.xyz;
					    }
					    u_xlat0.xyz = u_xlat0.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat1.xyz = vec3(u_xlat12) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendAdd" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat12;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat2.xyz = vec3(u_xlat12) * u_xlat2.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat2.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					bool u_xlatb3;
					vec2 u_xlat4;
					float u_xlat12;
					int u_xlati12;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat1 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat1.x);
					    u_xlat0.x = float(0.0);
					    u_xlat0.y = float(0.0);
					    u_xlat0.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat1.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat3.x = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat3.x = u_xlat3.x * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat3.x = float(1.0) / u_xlat3.x;
					        u_xlat0.xyz = unity_LightColor[u_xlati_loop_1].xyz * u_xlat3.xxx + u_xlat0.xyz;
					    }
					    u_xlat0.xyz = u_xlat0.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat1.xyz = vec3(u_xlat12) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendAdd" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat12;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat2.xyz = vec3(u_xlat12) * u_xlat2.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat2.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat1.z;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					bool u_xlatb3;
					vec2 u_xlat4;
					float u_xlat12;
					int u_xlati12;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat1 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat1.x);
					    u_xlat0.x = float(0.0);
					    u_xlat0.y = float(0.0);
					    u_xlat0.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat1.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat3.x = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat3.x = u_xlat3.x * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat3.x = float(1.0) / u_xlat3.x;
					        u_xlat0.xyz = unity_LightColor[u_xlati_loop_1].xyz * u_xlat3.xxx + u_xlat0.xyz;
					    }
					    u_xlat0.xyz = u_xlat0.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat1.xyz = vec3(u_xlat12) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat2.z;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendAdd" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat12;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat2.xyz = vec3(u_xlat12) * u_xlat2.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat2.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat1.z;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					bool u_xlatb3;
					vec2 u_xlat4;
					float u_xlat12;
					int u_xlati12;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat1 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat1.x);
					    u_xlat0.x = float(0.0);
					    u_xlat0.y = float(0.0);
					    u_xlat0.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat1.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat3.x = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat3.x = u_xlat3.x * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat3.x = float(1.0) / u_xlat3.x;
					        u_xlat0.xyz = unity_LightColor[u_xlati_loop_1].xyz * u_xlat3.xxx + u_xlat0.xyz;
					    }
					    u_xlat0.xyz = u_xlat0.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat1.xyz = vec3(u_xlat12) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat2.z;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendAdd" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat12;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat2.xyz = vec3(u_xlat12) * u_xlat2.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat2.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat1.z;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					bool u_xlatb3;
					vec2 u_xlat4;
					float u_xlat12;
					int u_xlati12;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat1 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat1.x);
					    u_xlat0.x = float(0.0);
					    u_xlat0.y = float(0.0);
					    u_xlat0.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat1.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat3.x = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat3.x = u_xlat3.x * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat3.x = float(1.0) / u_xlat3.x;
					        u_xlat0.xyz = unity_LightColor[u_xlati_loop_1].xyz * u_xlat3.xxx + u_xlat0.xyz;
					    }
					    u_xlat0.xyz = u_xlat0.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat1.xyz = vec3(u_xlat12) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat2.z;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendAdd" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat12;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat2.xyz = vec3(u_xlat12) * u_xlat2.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat2.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat1.z;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					bool u_xlatb3;
					vec2 u_xlat4;
					float u_xlat12;
					int u_xlati12;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat1 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat1.x);
					    u_xlat0.x = float(0.0);
					    u_xlat0.y = float(0.0);
					    u_xlat0.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat1.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat3.x = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat3.x = u_xlat3.x * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat3.x = float(1.0) / u_xlat3.x;
					        u_xlat0.xyz = unity_LightColor[u_xlati_loop_1].xyz * u_xlat3.xxx + u_xlat0.xyz;
					    }
					    u_xlat0.xyz = u_xlat0.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat1.xyz = vec3(u_xlat12) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat2.z;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendAdd" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat12;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat2.xyz = vec3(u_xlat12) * u_xlat2.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat2.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat1.z;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					bool u_xlatb3;
					vec2 u_xlat4;
					float u_xlat12;
					int u_xlati12;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat1 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat1.x);
					    u_xlat0.x = float(0.0);
					    u_xlat0.y = float(0.0);
					    u_xlat0.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat1.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat3.x = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat3.x = u_xlat3.x * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat3.x = float(1.0) / u_xlat3.x;
					        u_xlat0.xyz = unity_LightColor[u_xlati_loop_1].xyz * u_xlat3.xxx + u_xlat0.xyz;
					    }
					    u_xlat0.xyz = u_xlat0.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat1.xyz = vec3(u_xlat12) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat2.z;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendAdd" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat12;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat2.xyz = vec3(u_xlat12) * u_xlat2.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat2.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat1.z;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					bool u_xlatb3;
					vec2 u_xlat4;
					float u_xlat12;
					int u_xlati12;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat1 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat1.x);
					    u_xlat0.x = float(0.0);
					    u_xlat0.y = float(0.0);
					    u_xlat0.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat1.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat3.x = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat3.x = u_xlat3.x * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat3.x = float(1.0) / u_xlat3.x;
					        u_xlat0.xyz = unity_LightColor[u_xlati_loop_1].xyz * u_xlat3.xxx + u_xlat0.xyz;
					    }
					    u_xlat0.xyz = u_xlat0.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat1.xyz = vec3(u_xlat12) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat2.z;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendAdd" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat12;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat2.xyz = vec3(u_xlat12) * u_xlat2.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat2.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					bool u_xlatb3;
					vec2 u_xlat4;
					float u_xlat12;
					int u_xlati12;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat1 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat1.x);
					    u_xlat0.x = float(0.0);
					    u_xlat0.y = float(0.0);
					    u_xlat0.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat1.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat3.x = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat3.x = u_xlat3.x * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat3.x = float(1.0) / u_xlat3.x;
					        u_xlat0.xyz = unity_LightColor[u_xlati_loop_1].xyz * u_xlat3.xxx + u_xlat0.xyz;
					    }
					    u_xlat0.xyz = u_xlat0.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat1.xyz = vec3(u_xlat12) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendAdd" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat12;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat2.xyz = vec3(u_xlat12) * u_xlat2.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat2.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					bool u_xlatb3;
					vec2 u_xlat4;
					float u_xlat12;
					int u_xlati12;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat1 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat1.x);
					    u_xlat0.x = float(0.0);
					    u_xlat0.y = float(0.0);
					    u_xlat0.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat1.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat3.x = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat3.x = u_xlat3.x * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat3.x = float(1.0) / u_xlat3.x;
					        u_xlat0.xyz = unity_LightColor[u_xlati_loop_1].xyz * u_xlat3.xxx + u_xlat0.xyz;
					    }
					    u_xlat0.xyz = u_xlat0.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat1.xyz = vec3(u_xlat12) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendAdd" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat12;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat2.xyz = vec3(u_xlat12) * u_xlat2.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat2.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat1.z;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					bool u_xlatb3;
					vec2 u_xlat4;
					float u_xlat12;
					int u_xlati12;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat1 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat1.x);
					    u_xlat0.x = float(0.0);
					    u_xlat0.y = float(0.0);
					    u_xlat0.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat1.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat3.x = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat3.x = u_xlat3.x * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat3.x = float(1.0) / u_xlat3.x;
					        u_xlat0.xyz = unity_LightColor[u_xlati_loop_1].xyz * u_xlat3.xxx + u_xlat0.xyz;
					    }
					    u_xlat0.xyz = u_xlat0.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat1.xyz = vec3(u_xlat12) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat2.z;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendAdd" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat12;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat2.xyz = vec3(u_xlat12) * u_xlat2.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat2.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat1.z;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					bool u_xlatb3;
					vec2 u_xlat4;
					float u_xlat12;
					int u_xlati12;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat1 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat1.x);
					    u_xlat0.x = float(0.0);
					    u_xlat0.y = float(0.0);
					    u_xlat0.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat1.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat3.x = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat3.x = u_xlat3.x * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat3.x = float(1.0) / u_xlat3.x;
					        u_xlat0.xyz = unity_LightColor[u_xlati_loop_1].xyz * u_xlat3.xxx + u_xlat0.xyz;
					    }
					    u_xlat0.xyz = u_xlat0.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat1.xyz = vec3(u_xlat12) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat2.z;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendAdd" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat12;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat2.xyz = vec3(u_xlat12) * u_xlat2.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat2.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat1.z;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					bool u_xlatb3;
					vec2 u_xlat4;
					float u_xlat12;
					int u_xlati12;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat1 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat1.x);
					    u_xlat0.x = float(0.0);
					    u_xlat0.y = float(0.0);
					    u_xlat0.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat1.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat3.x = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat3.x = u_xlat3.x * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat3.x = float(1.0) / u_xlat3.x;
					        u_xlat0.xyz = unity_LightColor[u_xlati_loop_1].xyz * u_xlat3.xxx + u_xlat0.xyz;
					    }
					    u_xlat0.xyz = u_xlat0.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat1.xyz = vec3(u_xlat12) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat2.z;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendAdd" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat12;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat2.xyz = vec3(u_xlat12) * u_xlat2.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat2.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat1.z;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					bool u_xlatb3;
					vec2 u_xlat4;
					float u_xlat12;
					int u_xlati12;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat1 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat1.x);
					    u_xlat0.x = float(0.0);
					    u_xlat0.y = float(0.0);
					    u_xlat0.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat1.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat3.x = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat3.x = u_xlat3.x * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat3.x = float(1.0) / u_xlat3.x;
					        u_xlat0.xyz = unity_LightColor[u_xlati_loop_1].xyz * u_xlat3.xxx + u_xlat0.xyz;
					    }
					    u_xlat0.xyz = u_xlat0.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat1.xyz = vec3(u_xlat12) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat2.z;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendAdd" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat12;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat2.xyz = vec3(u_xlat12) * u_xlat2.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat2.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat1.z;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					bool u_xlatb3;
					vec2 u_xlat4;
					float u_xlat12;
					int u_xlati12;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat1 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat1.x);
					    u_xlat0.x = float(0.0);
					    u_xlat0.y = float(0.0);
					    u_xlat0.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat1.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat3.x = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat3.x = u_xlat3.x * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat3.x = float(1.0) / u_xlat3.x;
					        u_xlat0.xyz = unity_LightColor[u_xlati_loop_1].xyz * u_xlat3.xxx + u_xlat0.xyz;
					    }
					    u_xlat0.xyz = u_xlat0.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat1.xyz = vec3(u_xlat12) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat2.z;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendAdd" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat12;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat2.xyz = vec3(u_xlat12) * u_xlat2.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat2.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat1.z;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					bool u_xlatb3;
					vec2 u_xlat4;
					float u_xlat12;
					int u_xlati12;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat1 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat1.x);
					    u_xlat0.x = float(0.0);
					    u_xlat0.y = float(0.0);
					    u_xlat0.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat1.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat3.x = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat3.x = u_xlat3.x * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat3.x = float(1.0) / u_xlat3.x;
					        u_xlat0.xyz = unity_LightColor[u_xlati_loop_1].xyz * u_xlat3.xxx + u_xlat0.xyz;
					    }
					    u_xlat0.xyz = u_xlat0.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat1.xyz = vec3(u_xlat12) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat2.z;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendAdd" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec2 u_xlat4;
					int u_xlati12;
					float u_xlat13;
					bool u_xlatb13;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat0 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat1.x = float(0.0);
					    u_xlat1.y = float(0.0);
					    u_xlat1.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat13 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat13 = u_xlat13 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat13 = float(1.0) / u_xlat13;
					        u_xlat1.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat13) + u_xlat1.xyz;
					    }
					    u_xlat0.xyz = u_xlat1.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendAdd" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec2 u_xlat4;
					int u_xlati12;
					float u_xlat13;
					bool u_xlatb13;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat0 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat1.x = float(0.0);
					    u_xlat1.y = float(0.0);
					    u_xlat1.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat13 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat13 = u_xlat13 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat13 = float(1.0) / u_xlat13;
					        u_xlat1.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat13) + u_xlat1.xyz;
					    }
					    u_xlat0.xyz = u_xlat1.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendAdd" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec2 u_xlat4;
					int u_xlati12;
					float u_xlat13;
					bool u_xlatb13;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat0 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat1.x = float(0.0);
					    u_xlat1.y = float(0.0);
					    u_xlat1.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat13 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat13 = u_xlat13 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat13 = float(1.0) / u_xlat13;
					        u_xlat1.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat13) + u_xlat1.xyz;
					    }
					    u_xlat0.xyz = u_xlat1.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendAdd" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec2 u_xlat4;
					int u_xlati12;
					float u_xlat13;
					bool u_xlatb13;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat0 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat1.x = float(0.0);
					    u_xlat1.y = float(0.0);
					    u_xlat1.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat13 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat13 = u_xlat13 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat13 = float(1.0) / u_xlat13;
					        u_xlat1.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat13) + u_xlat1.xyz;
					    }
					    u_xlat0.xyz = u_xlat1.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendAdd" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec2 u_xlat4;
					int u_xlati12;
					float u_xlat13;
					bool u_xlatb13;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat0 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat1.x = float(0.0);
					    u_xlat1.y = float(0.0);
					    u_xlat1.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat13 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat13 = u_xlat13 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat13 = float(1.0) / u_xlat13;
					        u_xlat1.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat13) + u_xlat1.xyz;
					    }
					    u_xlat0.xyz = u_xlat1.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendAdd" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec2 u_xlat4;
					int u_xlati12;
					float u_xlat13;
					bool u_xlatb13;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat0 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat1.x = float(0.0);
					    u_xlat1.y = float(0.0);
					    u_xlat1.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat13 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat13 = u_xlat13 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat13 = float(1.0) / u_xlat13;
					        u_xlat1.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat13) + u_xlat1.xyz;
					    }
					    u_xlat0.xyz = u_xlat1.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendAdd" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec2 u_xlat4;
					int u_xlati12;
					float u_xlat13;
					bool u_xlatb13;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat0 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat1.x = float(0.0);
					    u_xlat1.y = float(0.0);
					    u_xlat1.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat13 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat13 = u_xlat13 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat13 = float(1.0) / u_xlat13;
					        u_xlat1.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat13) + u_xlat1.xyz;
					    }
					    u_xlat0.xyz = u_xlat1.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendAdd" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec2 u_xlat4;
					int u_xlati12;
					float u_xlat13;
					bool u_xlatb13;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat0 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat1.x = float(0.0);
					    u_xlat1.y = float(0.0);
					    u_xlat1.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat13 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat13 = u_xlat13 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat13 = float(1.0) / u_xlat13;
					        u_xlat1.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat13) + u_xlat1.xyz;
					    }
					    u_xlat0.xyz = u_xlat1.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendAdd" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec2 u_xlat4;
					int u_xlati12;
					float u_xlat13;
					bool u_xlatb13;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat0 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat1.x = float(0.0);
					    u_xlat1.y = float(0.0);
					    u_xlat1.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat13 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat13 = u_xlat13 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat13 = float(1.0) / u_xlat13;
					        u_xlat1.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat13) + u_xlat1.xyz;
					    }
					    u_xlat0.xyz = u_xlat1.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendAdd" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec2 u_xlat4;
					int u_xlati12;
					float u_xlat13;
					bool u_xlatb13;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat0 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat1.x = float(0.0);
					    u_xlat1.y = float(0.0);
					    u_xlat1.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat13 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat13 = u_xlat13 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat13 = float(1.0) / u_xlat13;
					        u_xlat1.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat13) + u_xlat1.xyz;
					    }
					    u_xlat0.xyz = u_xlat1.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendAdd" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec2 u_xlat4;
					int u_xlati12;
					float u_xlat13;
					bool u_xlatb13;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat0 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat1.x = float(0.0);
					    u_xlat1.y = float(0.0);
					    u_xlat1.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat13 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat13 = u_xlat13 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat13 = float(1.0) / u_xlat13;
					        u_xlat1.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat13) + u_xlat1.xyz;
					    }
					    u_xlat0.xyz = u_xlat1.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendAdd" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec2 u_xlat4;
					int u_xlati12;
					float u_xlat13;
					bool u_xlatb13;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat0 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat1.x = float(0.0);
					    u_xlat1.y = float(0.0);
					    u_xlat1.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat13 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat13 = u_xlat13 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat13 = float(1.0) / u_xlat13;
					        u_xlat1.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat13) + u_xlat1.xyz;
					    }
					    u_xlat0.xyz = u_xlat1.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendAdd" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec2 u_xlat4;
					int u_xlati12;
					float u_xlat13;
					bool u_xlatb13;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat0 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat1.x = float(0.0);
					    u_xlat1.y = float(0.0);
					    u_xlat1.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat13 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat13 = u_xlat13 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat13 = float(1.0) / u_xlat13;
					        u_xlat1.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat13) + u_xlat1.xyz;
					    }
					    u_xlat0.xyz = u_xlat1.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendAdd" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec2 u_xlat4;
					int u_xlati12;
					float u_xlat13;
					bool u_xlatb13;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat0 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat1.x = float(0.0);
					    u_xlat1.y = float(0.0);
					    u_xlat1.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat13 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat13 = u_xlat13 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat13 = float(1.0) / u_xlat13;
					        u_xlat1.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat13) + u_xlat1.xyz;
					    }
					    u_xlat0.xyz = u_xlat1.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendAdd" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec2 u_xlat4;
					int u_xlati12;
					float u_xlat13;
					bool u_xlatb13;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat0 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat1.x = float(0.0);
					    u_xlat1.y = float(0.0);
					    u_xlat1.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat13 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat13 = u_xlat13 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat13 = float(1.0) / u_xlat13;
					        u_xlat1.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat13) + u_xlat1.xyz;
					    }
					    u_xlat0.xyz = u_xlat1.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendAdd" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec2 u_xlat4;
					int u_xlati12;
					float u_xlat13;
					bool u_xlatb13;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat0 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat1.x = float(0.0);
					    u_xlat1.y = float(0.0);
					    u_xlat1.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat13 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat13 = u_xlat13 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat13 = float(1.0) / u_xlat13;
					        u_xlat1.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat13) + u_xlat1.xyz;
					    }
					    u_xlat0.xyz = u_xlat1.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendAdd" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat12;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat2.xyz = vec3(u_xlat12) * u_xlat2.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat2.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					bool u_xlatb3;
					vec2 u_xlat4;
					float u_xlat12;
					int u_xlati12;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat1 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat1.x);
					    u_xlat0.x = float(0.0);
					    u_xlat0.y = float(0.0);
					    u_xlat0.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat1.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat3.x = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat3.x = u_xlat3.x * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat3.x = float(1.0) / u_xlat3.x;
					        u_xlat0.xyz = unity_LightColor[u_xlati_loop_1].xyz * u_xlat3.xxx + u_xlat0.xyz;
					    }
					    u_xlat0.xyz = u_xlat0.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat1.xyz = vec3(u_xlat12) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendAdd" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat12;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat2.xyz = vec3(u_xlat12) * u_xlat2.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat2.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					bool u_xlatb3;
					vec2 u_xlat4;
					float u_xlat12;
					int u_xlati12;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat1 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat1.x);
					    u_xlat0.x = float(0.0);
					    u_xlat0.y = float(0.0);
					    u_xlat0.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat1.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat3.x = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat3.x = u_xlat3.x * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat3.x = float(1.0) / u_xlat3.x;
					        u_xlat0.xyz = unity_LightColor[u_xlati_loop_1].xyz * u_xlat3.xxx + u_xlat0.xyz;
					    }
					    u_xlat0.xyz = u_xlat0.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat1.xyz = vec3(u_xlat12) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendAdd" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat12;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat2.xyz = vec3(u_xlat12) * u_xlat2.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat2.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat1.z;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					bool u_xlatb3;
					vec2 u_xlat4;
					float u_xlat12;
					int u_xlati12;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat1 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat1.x);
					    u_xlat0.x = float(0.0);
					    u_xlat0.y = float(0.0);
					    u_xlat0.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat1.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat3.x = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat3.x = u_xlat3.x * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat3.x = float(1.0) / u_xlat3.x;
					        u_xlat0.xyz = unity_LightColor[u_xlati_loop_1].xyz * u_xlat3.xxx + u_xlat0.xyz;
					    }
					    u_xlat0.xyz = u_xlat0.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat1.xyz = vec3(u_xlat12) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat2.z;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendAdd" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat12;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat2.xyz = vec3(u_xlat12) * u_xlat2.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat2.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat1.z;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					bool u_xlatb3;
					vec2 u_xlat4;
					float u_xlat12;
					int u_xlati12;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat1 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat1.x);
					    u_xlat0.x = float(0.0);
					    u_xlat0.y = float(0.0);
					    u_xlat0.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat1.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat3.x = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat3.x = u_xlat3.x * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat3.x = float(1.0) / u_xlat3.x;
					        u_xlat0.xyz = unity_LightColor[u_xlati_loop_1].xyz * u_xlat3.xxx + u_xlat0.xyz;
					    }
					    u_xlat0.xyz = u_xlat0.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat1.xyz = vec3(u_xlat12) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat2.z;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendAdd" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat12;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat2.xyz = vec3(u_xlat12) * u_xlat2.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat2.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat1.z;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					bool u_xlatb3;
					vec2 u_xlat4;
					float u_xlat12;
					int u_xlati12;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat1 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat1.x);
					    u_xlat0.x = float(0.0);
					    u_xlat0.y = float(0.0);
					    u_xlat0.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat1.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat3.x = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat3.x = u_xlat3.x * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat3.x = float(1.0) / u_xlat3.x;
					        u_xlat0.xyz = unity_LightColor[u_xlati_loop_1].xyz * u_xlat3.xxx + u_xlat0.xyz;
					    }
					    u_xlat0.xyz = u_xlat0.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat1.xyz = vec3(u_xlat12) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat2.z;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendAdd" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat12;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat2.xyz = vec3(u_xlat12) * u_xlat2.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat2.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat1.z;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					bool u_xlatb3;
					vec2 u_xlat4;
					float u_xlat12;
					int u_xlati12;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat1 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat1.x);
					    u_xlat0.x = float(0.0);
					    u_xlat0.y = float(0.0);
					    u_xlat0.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat1.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat3.x = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat3.x = u_xlat3.x * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat3.x = float(1.0) / u_xlat3.x;
					        u_xlat0.xyz = unity_LightColor[u_xlati_loop_1].xyz * u_xlat3.xxx + u_xlat0.xyz;
					    }
					    u_xlat0.xyz = u_xlat0.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat1.xyz = vec3(u_xlat12) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat2.z;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendAdd" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat12;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat2.xyz = vec3(u_xlat12) * u_xlat2.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat2.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat1.z;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					bool u_xlatb3;
					vec2 u_xlat4;
					float u_xlat12;
					int u_xlati12;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat1 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat1.x);
					    u_xlat0.x = float(0.0);
					    u_xlat0.y = float(0.0);
					    u_xlat0.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat1.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat3.x = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat3.x = u_xlat3.x * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat3.x = float(1.0) / u_xlat3.x;
					        u_xlat0.xyz = unity_LightColor[u_xlati_loop_1].xyz * u_xlat3.xxx + u_xlat0.xyz;
					    }
					    u_xlat0.xyz = u_xlat0.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat1.xyz = vec3(u_xlat12) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat2.z;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendAdd" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat12;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat2.xyz = vec3(u_xlat12) * u_xlat2.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat2.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat1.z;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					bool u_xlatb3;
					vec2 u_xlat4;
					float u_xlat12;
					int u_xlati12;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat1 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat1.x);
					    u_xlat0.x = float(0.0);
					    u_xlat0.y = float(0.0);
					    u_xlat0.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat1.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat3.x = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat3.x = u_xlat3.x * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat3.x = float(1.0) / u_xlat3.x;
					        u_xlat0.xyz = unity_LightColor[u_xlati_loop_1].xyz * u_xlat3.xxx + u_xlat0.xyz;
					    }
					    u_xlat0.xyz = u_xlat0.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat1.xyz = vec3(u_xlat12) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat2.z;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendAdd" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat12;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat2.xyz = vec3(u_xlat12) * u_xlat2.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat2.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					bool u_xlatb3;
					vec2 u_xlat4;
					float u_xlat12;
					int u_xlati12;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat1 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat1.x);
					    u_xlat0.x = float(0.0);
					    u_xlat0.y = float(0.0);
					    u_xlat0.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat1.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat3.x = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat3.x = u_xlat3.x * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat3.x = float(1.0) / u_xlat3.x;
					        u_xlat0.xyz = unity_LightColor[u_xlati_loop_1].xyz * u_xlat3.xxx + u_xlat0.xyz;
					    }
					    u_xlat0.xyz = u_xlat0.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat1.xyz = vec3(u_xlat12) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendAdd" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat12;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat2.xyz = vec3(u_xlat12) * u_xlat2.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat2.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					bool u_xlatb3;
					vec2 u_xlat4;
					float u_xlat12;
					int u_xlati12;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat1 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat1.x);
					    u_xlat0.x = float(0.0);
					    u_xlat0.y = float(0.0);
					    u_xlat0.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat1.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat3.x = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat3.x = u_xlat3.x * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat3.x = float(1.0) / u_xlat3.x;
					        u_xlat0.xyz = unity_LightColor[u_xlati_loop_1].xyz * u_xlat3.xxx + u_xlat0.xyz;
					    }
					    u_xlat0.xyz = u_xlat0.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat1.xyz = vec3(u_xlat12) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendAdd" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat12;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat2.xyz = vec3(u_xlat12) * u_xlat2.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat2.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat1.z;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					bool u_xlatb3;
					vec2 u_xlat4;
					float u_xlat12;
					int u_xlati12;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat1 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat1.x);
					    u_xlat0.x = float(0.0);
					    u_xlat0.y = float(0.0);
					    u_xlat0.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat1.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat3.x = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat3.x = u_xlat3.x * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat3.x = float(1.0) / u_xlat3.x;
					        u_xlat0.xyz = unity_LightColor[u_xlati_loop_1].xyz * u_xlat3.xxx + u_xlat0.xyz;
					    }
					    u_xlat0.xyz = u_xlat0.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat1.xyz = vec3(u_xlat12) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat2.z;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendAdd" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat12;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat2.xyz = vec3(u_xlat12) * u_xlat2.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat2.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat1.z;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					bool u_xlatb3;
					vec2 u_xlat4;
					float u_xlat12;
					int u_xlati12;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat1 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat1.x);
					    u_xlat0.x = float(0.0);
					    u_xlat0.y = float(0.0);
					    u_xlat0.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat1.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat3.x = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat3.x = u_xlat3.x * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat3.x = float(1.0) / u_xlat3.x;
					        u_xlat0.xyz = unity_LightColor[u_xlati_loop_1].xyz * u_xlat3.xxx + u_xlat0.xyz;
					    }
					    u_xlat0.xyz = u_xlat0.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat1.xyz = vec3(u_xlat12) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat2.z;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendAdd" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat12;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat2.xyz = vec3(u_xlat12) * u_xlat2.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat2.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat1.z;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					bool u_xlatb3;
					vec2 u_xlat4;
					float u_xlat12;
					int u_xlati12;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat1 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat1.x);
					    u_xlat0.x = float(0.0);
					    u_xlat0.y = float(0.0);
					    u_xlat0.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat1.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat3.x = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat3.x = u_xlat3.x * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat3.x = float(1.0) / u_xlat3.x;
					        u_xlat0.xyz = unity_LightColor[u_xlati_loop_1].xyz * u_xlat3.xxx + u_xlat0.xyz;
					    }
					    u_xlat0.xyz = u_xlat0.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat1.xyz = vec3(u_xlat12) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat2.z;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendAdd" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat12;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat2.xyz = vec3(u_xlat12) * u_xlat2.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat2.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat1.z;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					bool u_xlatb3;
					vec2 u_xlat4;
					float u_xlat12;
					int u_xlati12;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat1 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat1.x);
					    u_xlat0.x = float(0.0);
					    u_xlat0.y = float(0.0);
					    u_xlat0.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat1.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat3.x = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat3.x = u_xlat3.x * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat3.x = float(1.0) / u_xlat3.x;
					        u_xlat0.xyz = unity_LightColor[u_xlati_loop_1].xyz * u_xlat3.xxx + u_xlat0.xyz;
					    }
					    u_xlat0.xyz = u_xlat0.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat1.xyz = vec3(u_xlat12) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat2.z;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendAdd" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat12;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat2.xyz = vec3(u_xlat12) * u_xlat2.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat2.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat1.z;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					bool u_xlatb3;
					vec2 u_xlat4;
					float u_xlat12;
					int u_xlati12;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat1 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat1.x);
					    u_xlat0.x = float(0.0);
					    u_xlat0.y = float(0.0);
					    u_xlat0.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat1.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat3.x = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat3.x = u_xlat3.x * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat3.x = float(1.0) / u_xlat3.x;
					        u_xlat0.xyz = unity_LightColor[u_xlati_loop_1].xyz * u_xlat3.xxx + u_xlat0.xyz;
					    }
					    u_xlat0.xyz = u_xlat0.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat1.xyz = vec3(u_xlat12) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat2.z;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendAdd" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat12;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat2.xyz = vec3(u_xlat12) * u_xlat2.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat2.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat1.z;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					bool u_xlatb3;
					vec2 u_xlat4;
					float u_xlat12;
					int u_xlati12;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat1 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat1.x);
					    u_xlat0.x = float(0.0);
					    u_xlat0.y = float(0.0);
					    u_xlat0.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat1.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat3.x = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat3.x = u_xlat3.x * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat3.x = float(1.0) / u_xlat3.x;
					        u_xlat0.xyz = unity_LightColor[u_xlati_loop_1].xyz * u_xlat3.xxx + u_xlat0.xyz;
					    }
					    u_xlat0.xyz = u_xlat0.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat1.xyz = vec3(u_xlat12) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat2.z;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendAdd" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec2 u_xlat4;
					int u_xlati12;
					float u_xlat13;
					bool u_xlatb13;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat0 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat1.x = float(0.0);
					    u_xlat1.y = float(0.0);
					    u_xlat1.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat13 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat13 = u_xlat13 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat13 = float(1.0) / u_xlat13;
					        u_xlat1.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat13) + u_xlat1.xyz;
					    }
					    u_xlat0.xyz = u_xlat1.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendAdd" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec2 u_xlat4;
					int u_xlati12;
					float u_xlat13;
					bool u_xlatb13;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat0 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat1.x = float(0.0);
					    u_xlat1.y = float(0.0);
					    u_xlat1.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat13 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat13 = u_xlat13 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat13 = float(1.0) / u_xlat13;
					        u_xlat1.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat13) + u_xlat1.xyz;
					    }
					    u_xlat0.xyz = u_xlat1.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendAdd" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec2 u_xlat4;
					int u_xlati12;
					float u_xlat13;
					bool u_xlatb13;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat0 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat1.x = float(0.0);
					    u_xlat1.y = float(0.0);
					    u_xlat1.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat13 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat13 = u_xlat13 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat13 = float(1.0) / u_xlat13;
					        u_xlat1.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat13) + u_xlat1.xyz;
					    }
					    u_xlat0.xyz = u_xlat1.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendAdd" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec2 u_xlat4;
					int u_xlati12;
					float u_xlat13;
					bool u_xlatb13;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat0 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat1.x = float(0.0);
					    u_xlat1.y = float(0.0);
					    u_xlat1.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat13 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat13 = u_xlat13 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat13 = float(1.0) / u_xlat13;
					        u_xlat1.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat13) + u_xlat1.xyz;
					    }
					    u_xlat0.xyz = u_xlat1.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendAdd" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec2 u_xlat4;
					int u_xlati12;
					float u_xlat13;
					bool u_xlatb13;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat0 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat1.x = float(0.0);
					    u_xlat1.y = float(0.0);
					    u_xlat1.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat13 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat13 = u_xlat13 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat13 = float(1.0) / u_xlat13;
					        u_xlat1.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat13) + u_xlat1.xyz;
					    }
					    u_xlat0.xyz = u_xlat1.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendAdd" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec2 u_xlat4;
					int u_xlati12;
					float u_xlat13;
					bool u_xlatb13;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat0 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat1.x = float(0.0);
					    u_xlat1.y = float(0.0);
					    u_xlat1.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat13 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat13 = u_xlat13 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat13 = float(1.0) / u_xlat13;
					        u_xlat1.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat13) + u_xlat1.xyz;
					    }
					    u_xlat0.xyz = u_xlat1.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendAdd" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec2 u_xlat4;
					int u_xlati12;
					float u_xlat13;
					bool u_xlatb13;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat0 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat1.x = float(0.0);
					    u_xlat1.y = float(0.0);
					    u_xlat1.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat13 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat13 = u_xlat13 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat13 = float(1.0) / u_xlat13;
					        u_xlat1.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat13) + u_xlat1.xyz;
					    }
					    u_xlat0.xyz = u_xlat1.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendAdd" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec2 u_xlat4;
					int u_xlati12;
					float u_xlat13;
					bool u_xlatb13;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat0 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat1.x = float(0.0);
					    u_xlat1.y = float(0.0);
					    u_xlat1.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat13 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat13 = u_xlat13 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat13 = float(1.0) / u_xlat13;
					        u_xlat1.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat13) + u_xlat1.xyz;
					    }
					    u_xlat0.xyz = u_xlat1.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendAdd" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec2 u_xlat4;
					int u_xlati12;
					float u_xlat13;
					bool u_xlatb13;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat0 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat1.x = float(0.0);
					    u_xlat1.y = float(0.0);
					    u_xlat1.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat13 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat13 = u_xlat13 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat13 = float(1.0) / u_xlat13;
					        u_xlat1.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat13) + u_xlat1.xyz;
					    }
					    u_xlat0.xyz = u_xlat1.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendAdd" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec2 u_xlat4;
					int u_xlati12;
					float u_xlat13;
					bool u_xlatb13;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat0 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat1.x = float(0.0);
					    u_xlat1.y = float(0.0);
					    u_xlat1.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat13 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat13 = u_xlat13 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat13 = float(1.0) / u_xlat13;
					        u_xlat1.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat13) + u_xlat1.xyz;
					    }
					    u_xlat0.xyz = u_xlat1.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendAdd" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec2 u_xlat4;
					int u_xlati12;
					float u_xlat13;
					bool u_xlatb13;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat0 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat1.x = float(0.0);
					    u_xlat1.y = float(0.0);
					    u_xlat1.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat13 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat13 = u_xlat13 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat13 = float(1.0) / u_xlat13;
					        u_xlat1.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat13) + u_xlat1.xyz;
					    }
					    u_xlat0.xyz = u_xlat1.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendAdd" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec2 u_xlat4;
					int u_xlati12;
					float u_xlat13;
					bool u_xlatb13;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat0 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat1.x = float(0.0);
					    u_xlat1.y = float(0.0);
					    u_xlat1.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat13 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat13 = u_xlat13 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat13 = float(1.0) / u_xlat13;
					        u_xlat1.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat13) + u_xlat1.xyz;
					    }
					    u_xlat0.xyz = u_xlat1.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendAdd" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec2 u_xlat4;
					int u_xlati12;
					float u_xlat13;
					bool u_xlatb13;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat0 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat1.x = float(0.0);
					    u_xlat1.y = float(0.0);
					    u_xlat1.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat13 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat13 = u_xlat13 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat13 = float(1.0) / u_xlat13;
					        u_xlat1.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat13) + u_xlat1.xyz;
					    }
					    u_xlat0.xyz = u_xlat1.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendAdd" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec2 u_xlat4;
					int u_xlati12;
					float u_xlat13;
					bool u_xlatb13;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat0 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat1.x = float(0.0);
					    u_xlat1.y = float(0.0);
					    u_xlat1.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat13 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat13 = u_xlat13 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat13 = float(1.0) / u_xlat13;
					        u_xlat1.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat13) + u_xlat1.xyz;
					    }
					    u_xlat0.xyz = u_xlat1.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendAdd" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec2 u_xlat4;
					int u_xlati12;
					float u_xlat13;
					bool u_xlatb13;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat0 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat1.x = float(0.0);
					    u_xlat1.y = float(0.0);
					    u_xlat1.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat13 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat13 = u_xlat13 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat13 = float(1.0) / u_xlat13;
					        u_xlat1.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat13) + u_xlat1.xyz;
					    }
					    u_xlat0.xyz = u_xlat1.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendAdd" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec2 u_xlat4;
					int u_xlati12;
					float u_xlat13;
					bool u_xlatb13;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat0 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat1.x = float(0.0);
					    u_xlat1.y = float(0.0);
					    u_xlat1.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat13 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat13 = u_xlat13 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat13 = float(1.0) / u_xlat13;
					        u_xlat1.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat13) + u_xlat1.xyz;
					    }
					    u_xlat0.xyz = u_xlat1.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendAdd" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat12;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat2.xyz = vec3(u_xlat12) * u_xlat2.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat2.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					bool u_xlatb3;
					vec2 u_xlat4;
					float u_xlat12;
					int u_xlati12;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat1 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat1.x);
					    u_xlat0.x = float(0.0);
					    u_xlat0.y = float(0.0);
					    u_xlat0.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat1.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat3.x = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat3.x = u_xlat3.x * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat3.x = float(1.0) / u_xlat3.x;
					        u_xlat0.xyz = unity_LightColor[u_xlati_loop_1].xyz * u_xlat3.xxx + u_xlat0.xyz;
					    }
					    u_xlat0.xyz = u_xlat0.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat1.xyz = vec3(u_xlat12) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendAdd" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat12;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat2.xyz = vec3(u_xlat12) * u_xlat2.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat2.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					bool u_xlatb3;
					vec2 u_xlat4;
					float u_xlat12;
					int u_xlati12;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat1 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat1.x);
					    u_xlat0.x = float(0.0);
					    u_xlat0.y = float(0.0);
					    u_xlat0.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat1.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat3.x = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat3.x = u_xlat3.x * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat3.x = float(1.0) / u_xlat3.x;
					        u_xlat0.xyz = unity_LightColor[u_xlati_loop_1].xyz * u_xlat3.xxx + u_xlat0.xyz;
					    }
					    u_xlat0.xyz = u_xlat0.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat1.xyz = vec3(u_xlat12) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendAdd" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat12;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat2.xyz = vec3(u_xlat12) * u_xlat2.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat2.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					bool u_xlatb3;
					vec2 u_xlat4;
					float u_xlat12;
					int u_xlati12;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat1 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat1.x);
					    u_xlat0.x = float(0.0);
					    u_xlat0.y = float(0.0);
					    u_xlat0.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat1.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat3.x = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat3.x = u_xlat3.x * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat3.x = float(1.0) / u_xlat3.x;
					        u_xlat0.xyz = unity_LightColor[u_xlati_loop_1].xyz * u_xlat3.xxx + u_xlat0.xyz;
					    }
					    u_xlat0.xyz = u_xlat0.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat1.xyz = vec3(u_xlat12) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendAdd" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat12;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat2.xyz = vec3(u_xlat12) * u_xlat2.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat2.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					bool u_xlatb3;
					vec2 u_xlat4;
					float u_xlat12;
					int u_xlati12;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat1 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat1.x);
					    u_xlat0.x = float(0.0);
					    u_xlat0.y = float(0.0);
					    u_xlat0.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat1.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat3.x = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat3.x = u_xlat3.x * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat3.x = float(1.0) / u_xlat3.x;
					        u_xlat0.xyz = unity_LightColor[u_xlati_loop_1].xyz * u_xlat3.xxx + u_xlat0.xyz;
					    }
					    u_xlat0.xyz = u_xlat0.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat1.xyz = vec3(u_xlat12) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendAdd" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat12;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat2.xyz = vec3(u_xlat12) * u_xlat2.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat2.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					bool u_xlatb3;
					vec2 u_xlat4;
					float u_xlat12;
					int u_xlati12;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat1 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat1.x);
					    u_xlat0.x = float(0.0);
					    u_xlat0.y = float(0.0);
					    u_xlat0.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat1.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat3.x = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat3.x = u_xlat3.x * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat3.x = float(1.0) / u_xlat3.x;
					        u_xlat0.xyz = unity_LightColor[u_xlati_loop_1].xyz * u_xlat3.xxx + u_xlat0.xyz;
					    }
					    u_xlat0.xyz = u_xlat0.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat1.xyz = vec3(u_xlat12) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendAdd" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat12;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat2.xyz = vec3(u_xlat12) * u_xlat2.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat2.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					bool u_xlatb3;
					vec2 u_xlat4;
					float u_xlat12;
					int u_xlati12;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat1 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat1.x);
					    u_xlat0.x = float(0.0);
					    u_xlat0.y = float(0.0);
					    u_xlat0.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat1.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat3.x = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat3.x = u_xlat3.x * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat3.x = float(1.0) / u_xlat3.x;
					        u_xlat0.xyz = unity_LightColor[u_xlati_loop_1].xyz * u_xlat3.xxx + u_xlat0.xyz;
					    }
					    u_xlat0.xyz = u_xlat0.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat1.xyz = vec3(u_xlat12) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendAdd" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat12;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat2.xyz = vec3(u_xlat12) * u_xlat2.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat2.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					bool u_xlatb3;
					vec2 u_xlat4;
					float u_xlat12;
					int u_xlati12;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat1 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat1.x);
					    u_xlat0.x = float(0.0);
					    u_xlat0.y = float(0.0);
					    u_xlat0.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat1.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat3.x = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat3.x = u_xlat3.x * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat3.x = float(1.0) / u_xlat3.x;
					        u_xlat0.xyz = unity_LightColor[u_xlati_loop_1].xyz * u_xlat3.xxx + u_xlat0.xyz;
					    }
					    u_xlat0.xyz = u_xlat0.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat1.xyz = vec3(u_xlat12) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendAdd" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat12;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat2.xyz = vec3(u_xlat12) * u_xlat2.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat2.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					bool u_xlatb3;
					vec2 u_xlat4;
					float u_xlat12;
					int u_xlati12;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat1 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat1.x);
					    u_xlat0.x = float(0.0);
					    u_xlat0.y = float(0.0);
					    u_xlat0.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat1.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat3.x = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat3.x = u_xlat3.x * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat3.x = float(1.0) / u_xlat3.x;
					        u_xlat0.xyz = unity_LightColor[u_xlati_loop_1].xyz * u_xlat3.xxx + u_xlat0.xyz;
					    }
					    u_xlat0.xyz = u_xlat0.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat1.xyz = vec3(u_xlat12) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendAdd" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat12;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat2.xyz = vec3(u_xlat12) * u_xlat2.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat2.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					bool u_xlatb3;
					vec2 u_xlat4;
					float u_xlat12;
					int u_xlati12;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat1 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat1.x);
					    u_xlat0.x = float(0.0);
					    u_xlat0.y = float(0.0);
					    u_xlat0.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat1.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat3.x = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat3.x = u_xlat3.x * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat3.x = float(1.0) / u_xlat3.x;
					        u_xlat0.xyz = unity_LightColor[u_xlati_loop_1].xyz * u_xlat3.xxx + u_xlat0.xyz;
					    }
					    u_xlat0.xyz = u_xlat0.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat1.xyz = vec3(u_xlat12) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendAdd" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat12;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat2.xyz = vec3(u_xlat12) * u_xlat2.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat2.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					bool u_xlatb3;
					vec2 u_xlat4;
					float u_xlat12;
					int u_xlati12;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat1 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat1.x);
					    u_xlat0.x = float(0.0);
					    u_xlat0.y = float(0.0);
					    u_xlat0.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat1.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat3.x = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat3.x = u_xlat3.x * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat3.x = float(1.0) / u_xlat3.x;
					        u_xlat0.xyz = unity_LightColor[u_xlati_loop_1].xyz * u_xlat3.xxx + u_xlat0.xyz;
					    }
					    u_xlat0.xyz = u_xlat0.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat1.xyz = vec3(u_xlat12) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendAdd" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat12;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat2.xyz = vec3(u_xlat12) * u_xlat2.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat2.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					bool u_xlatb3;
					vec2 u_xlat4;
					float u_xlat12;
					int u_xlati12;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat1 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat1.x);
					    u_xlat0.x = float(0.0);
					    u_xlat0.y = float(0.0);
					    u_xlat0.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat1.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat3.x = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat3.x = u_xlat3.x * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat3.x = float(1.0) / u_xlat3.x;
					        u_xlat0.xyz = unity_LightColor[u_xlati_loop_1].xyz * u_xlat3.xxx + u_xlat0.xyz;
					    }
					    u_xlat0.xyz = u_xlat0.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat1.xyz = vec3(u_xlat12) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendAdd" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat12;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat2.xyz = vec3(u_xlat12) * u_xlat2.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat2.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					bool u_xlatb3;
					vec2 u_xlat4;
					float u_xlat12;
					int u_xlati12;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat1 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat1.x);
					    u_xlat0.x = float(0.0);
					    u_xlat0.y = float(0.0);
					    u_xlat0.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat1.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat3.x = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat3.x = u_xlat3.x * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat3.x = float(1.0) / u_xlat3.x;
					        u_xlat0.xyz = unity_LightColor[u_xlati_loop_1].xyz * u_xlat3.xxx + u_xlat0.xyz;
					    }
					    u_xlat0.xyz = u_xlat0.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat1.xyz = vec3(u_xlat12) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendAdd" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat12;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat2.xyz = vec3(u_xlat12) * u_xlat2.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat2.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					bool u_xlatb3;
					vec2 u_xlat4;
					float u_xlat12;
					int u_xlati12;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat1 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat1.x);
					    u_xlat0.x = float(0.0);
					    u_xlat0.y = float(0.0);
					    u_xlat0.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat1.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat3.x = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat3.x = u_xlat3.x * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat3.x = float(1.0) / u_xlat3.x;
					        u_xlat0.xyz = unity_LightColor[u_xlati_loop_1].xyz * u_xlat3.xxx + u_xlat0.xyz;
					    }
					    u_xlat0.xyz = u_xlat0.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat1.xyz = vec3(u_xlat12) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendAdd" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat12;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat2.xyz = vec3(u_xlat12) * u_xlat2.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat2.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					bool u_xlatb3;
					vec2 u_xlat4;
					float u_xlat12;
					int u_xlati12;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat1 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat1.x);
					    u_xlat0.x = float(0.0);
					    u_xlat0.y = float(0.0);
					    u_xlat0.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat1.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat3.x = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat3.x = u_xlat3.x * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat3.x = float(1.0) / u_xlat3.x;
					        u_xlat0.xyz = unity_LightColor[u_xlati_loop_1].xyz * u_xlat3.xxx + u_xlat0.xyz;
					    }
					    u_xlat0.xyz = u_xlat0.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat1.xyz = vec3(u_xlat12) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendAdd" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat12;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat2.xyz = vec3(u_xlat12) * u_xlat2.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat2.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					bool u_xlatb3;
					vec2 u_xlat4;
					float u_xlat12;
					int u_xlati12;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat1 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat1.x);
					    u_xlat0.x = float(0.0);
					    u_xlat0.y = float(0.0);
					    u_xlat0.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat1.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat3.x = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat3.x = u_xlat3.x * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat3.x = float(1.0) / u_xlat3.x;
					        u_xlat0.xyz = unity_LightColor[u_xlati_loop_1].xyz * u_xlat3.xxx + u_xlat0.xyz;
					    }
					    u_xlat0.xyz = u_xlat0.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat1.xyz = vec3(u_xlat12) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendAdd" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat12;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat2.xyz = vec3(u_xlat12) * u_xlat2.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat2.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					bool u_xlatb3;
					vec2 u_xlat4;
					float u_xlat12;
					int u_xlati12;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat1 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat1.x);
					    u_xlat0.x = float(0.0);
					    u_xlat0.y = float(0.0);
					    u_xlat0.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat1.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat3.x = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat3.x = u_xlat3.x * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat3.x = float(1.0) / u_xlat3.x;
					        u_xlat0.xyz = unity_LightColor[u_xlati_loop_1].xyz * u_xlat3.xxx + u_xlat0.xyz;
					    }
					    u_xlat0.xyz = u_xlat0.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat1.xyz = vec3(u_xlat12) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendAdd" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec2 u_xlat4;
					int u_xlati12;
					float u_xlat13;
					bool u_xlatb13;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat0 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat1.x = float(0.0);
					    u_xlat1.y = float(0.0);
					    u_xlat1.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat13 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat13 = u_xlat13 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat13 = float(1.0) / u_xlat13;
					        u_xlat1.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat13) + u_xlat1.xyz;
					    }
					    u_xlat0.xyz = u_xlat1.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendAdd" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec2 u_xlat4;
					int u_xlati12;
					float u_xlat13;
					bool u_xlatb13;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat0 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat1.x = float(0.0);
					    u_xlat1.y = float(0.0);
					    u_xlat1.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat13 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat13 = u_xlat13 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat13 = float(1.0) / u_xlat13;
					        u_xlat1.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat13) + u_xlat1.xyz;
					    }
					    u_xlat0.xyz = u_xlat1.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendAdd" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec2 u_xlat4;
					int u_xlati12;
					float u_xlat13;
					bool u_xlatb13;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat0 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat1.x = float(0.0);
					    u_xlat1.y = float(0.0);
					    u_xlat1.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat13 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat13 = u_xlat13 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat13 = float(1.0) / u_xlat13;
					        u_xlat1.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat13) + u_xlat1.xyz;
					    }
					    u_xlat0.xyz = u_xlat1.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendAdd" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec2 u_xlat4;
					int u_xlati12;
					float u_xlat13;
					bool u_xlatb13;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat0 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat1.x = float(0.0);
					    u_xlat1.y = float(0.0);
					    u_xlat1.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat13 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat13 = u_xlat13 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat13 = float(1.0) / u_xlat13;
					        u_xlat1.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat13) + u_xlat1.xyz;
					    }
					    u_xlat0.xyz = u_xlat1.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendAdd" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec2 u_xlat4;
					int u_xlati12;
					float u_xlat13;
					bool u_xlatb13;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat0 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat1.x = float(0.0);
					    u_xlat1.y = float(0.0);
					    u_xlat1.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat13 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat13 = u_xlat13 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat13 = float(1.0) / u_xlat13;
					        u_xlat1.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat13) + u_xlat1.xyz;
					    }
					    u_xlat0.xyz = u_xlat1.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendAdd" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec2 u_xlat4;
					int u_xlati12;
					float u_xlat13;
					bool u_xlatb13;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat0 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat1.x = float(0.0);
					    u_xlat1.y = float(0.0);
					    u_xlat1.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat13 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat13 = u_xlat13 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat13 = float(1.0) / u_xlat13;
					        u_xlat1.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat13) + u_xlat1.xyz;
					    }
					    u_xlat0.xyz = u_xlat1.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendAdd" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec2 u_xlat4;
					int u_xlati12;
					float u_xlat13;
					bool u_xlatb13;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat0 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat1.x = float(0.0);
					    u_xlat1.y = float(0.0);
					    u_xlat1.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat13 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat13 = u_xlat13 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat13 = float(1.0) / u_xlat13;
					        u_xlat1.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat13) + u_xlat1.xyz;
					    }
					    u_xlat0.xyz = u_xlat1.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendAdd" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec2 u_xlat4;
					int u_xlati12;
					float u_xlat13;
					bool u_xlatb13;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat0 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat1.x = float(0.0);
					    u_xlat1.y = float(0.0);
					    u_xlat1.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat13 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat13 = u_xlat13 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat13 = float(1.0) / u_xlat13;
					        u_xlat1.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat13) + u_xlat1.xyz;
					    }
					    u_xlat0.xyz = u_xlat1.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendAdd" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec2 u_xlat4;
					int u_xlati12;
					float u_xlat13;
					bool u_xlatb13;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat0 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat1.x = float(0.0);
					    u_xlat1.y = float(0.0);
					    u_xlat1.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat13 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat13 = u_xlat13 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat13 = float(1.0) / u_xlat13;
					        u_xlat1.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat13) + u_xlat1.xyz;
					    }
					    u_xlat0.xyz = u_xlat1.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendAdd" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec2 u_xlat4;
					int u_xlati12;
					float u_xlat13;
					bool u_xlatb13;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat0 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat1.x = float(0.0);
					    u_xlat1.y = float(0.0);
					    u_xlat1.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat13 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat13 = u_xlat13 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat13 = float(1.0) / u_xlat13;
					        u_xlat1.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat13) + u_xlat1.xyz;
					    }
					    u_xlat0.xyz = u_xlat1.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendAdd" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec2 u_xlat4;
					int u_xlati12;
					float u_xlat13;
					bool u_xlatb13;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat0 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat1.x = float(0.0);
					    u_xlat1.y = float(0.0);
					    u_xlat1.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat13 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat13 = u_xlat13 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat13 = float(1.0) / u_xlat13;
					        u_xlat1.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat13) + u_xlat1.xyz;
					    }
					    u_xlat0.xyz = u_xlat1.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendAdd" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec2 u_xlat4;
					int u_xlati12;
					float u_xlat13;
					bool u_xlatb13;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat0 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat1.x = float(0.0);
					    u_xlat1.y = float(0.0);
					    u_xlat1.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat13 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat13 = u_xlat13 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat13 = float(1.0) / u_xlat13;
					        u_xlat1.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat13) + u_xlat1.xyz;
					    }
					    u_xlat0.xyz = u_xlat1.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendAdd" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec2 u_xlat4;
					int u_xlati12;
					float u_xlat13;
					bool u_xlatb13;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat0 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat1.x = float(0.0);
					    u_xlat1.y = float(0.0);
					    u_xlat1.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat13 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat13 = u_xlat13 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat13 = float(1.0) / u_xlat13;
					        u_xlat1.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat13) + u_xlat1.xyz;
					    }
					    u_xlat0.xyz = u_xlat1.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendAdd" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec2 u_xlat4;
					int u_xlati12;
					float u_xlat13;
					bool u_xlatb13;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat0 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat1.x = float(0.0);
					    u_xlat1.y = float(0.0);
					    u_xlat1.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat13 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat13 = u_xlat13 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat13 = float(1.0) / u_xlat13;
					        u_xlat1.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat13) + u_xlat1.xyz;
					    }
					    u_xlat0.xyz = u_xlat1.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendAdd" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec2 u_xlat4;
					int u_xlati12;
					float u_xlat13;
					bool u_xlatb13;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat0 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat1.x = float(0.0);
					    u_xlat1.y = float(0.0);
					    u_xlat1.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat13 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat13 = u_xlat13 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat13 = float(1.0) / u_xlat13;
					        u_xlat1.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat13) + u_xlat1.xyz;
					    }
					    u_xlat0.xyz = u_xlat1.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendAdd" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec2 u_xlat4;
					int u_xlati12;
					float u_xlat13;
					bool u_xlatb13;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat0 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat1.x = float(0.0);
					    u_xlat1.y = float(0.0);
					    u_xlat1.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat13 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat13 = u_xlat13 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat13 = float(1.0) / u_xlat13;
					        u_xlat1.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat13) + u_xlat1.xyz;
					    }
					    u_xlat0.xyz = u_xlat1.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendAdd" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat12;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat2.xyz = vec3(u_xlat12) * u_xlat2.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat2.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					bool u_xlatb3;
					vec2 u_xlat4;
					float u_xlat12;
					int u_xlati12;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat1 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat1.x);
					    u_xlat0.x = float(0.0);
					    u_xlat0.y = float(0.0);
					    u_xlat0.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat1.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat3.x = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat3.x = u_xlat3.x * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat3.x = float(1.0) / u_xlat3.x;
					        u_xlat0.xyz = unity_LightColor[u_xlati_loop_1].xyz * u_xlat3.xxx + u_xlat0.xyz;
					    }
					    u_xlat0.xyz = u_xlat0.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat1.xyz = vec3(u_xlat12) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendAdd" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat12;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat2.xyz = vec3(u_xlat12) * u_xlat2.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat2.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					bool u_xlatb3;
					vec2 u_xlat4;
					float u_xlat12;
					int u_xlati12;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat1 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat1.x);
					    u_xlat0.x = float(0.0);
					    u_xlat0.y = float(0.0);
					    u_xlat0.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat1.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat3.x = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat3.x = u_xlat3.x * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat3.x = float(1.0) / u_xlat3.x;
					        u_xlat0.xyz = unity_LightColor[u_xlati_loop_1].xyz * u_xlat3.xxx + u_xlat0.xyz;
					    }
					    u_xlat0.xyz = u_xlat0.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat1.xyz = vec3(u_xlat12) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendAdd" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat12;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat2.xyz = vec3(u_xlat12) * u_xlat2.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat2.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					bool u_xlatb3;
					vec2 u_xlat4;
					float u_xlat12;
					int u_xlati12;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat1 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat1.x);
					    u_xlat0.x = float(0.0);
					    u_xlat0.y = float(0.0);
					    u_xlat0.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat1.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat3.x = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat3.x = u_xlat3.x * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat3.x = float(1.0) / u_xlat3.x;
					        u_xlat0.xyz = unity_LightColor[u_xlati_loop_1].xyz * u_xlat3.xxx + u_xlat0.xyz;
					    }
					    u_xlat0.xyz = u_xlat0.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat1.xyz = vec3(u_xlat12) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendAdd" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat12;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat2.xyz = vec3(u_xlat12) * u_xlat2.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat2.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					bool u_xlatb3;
					vec2 u_xlat4;
					float u_xlat12;
					int u_xlati12;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat1 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat1.x);
					    u_xlat0.x = float(0.0);
					    u_xlat0.y = float(0.0);
					    u_xlat0.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat1.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat3.x = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat3.x = u_xlat3.x * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat3.x = float(1.0) / u_xlat3.x;
					        u_xlat0.xyz = unity_LightColor[u_xlati_loop_1].xyz * u_xlat3.xxx + u_xlat0.xyz;
					    }
					    u_xlat0.xyz = u_xlat0.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat1.xyz = vec3(u_xlat12) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendAdd" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat12;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat2.xyz = vec3(u_xlat12) * u_xlat2.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat2.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					bool u_xlatb3;
					vec2 u_xlat4;
					float u_xlat12;
					int u_xlati12;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat1 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat1.x);
					    u_xlat0.x = float(0.0);
					    u_xlat0.y = float(0.0);
					    u_xlat0.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat1.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat3.x = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat3.x = u_xlat3.x * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat3.x = float(1.0) / u_xlat3.x;
					        u_xlat0.xyz = unity_LightColor[u_xlati_loop_1].xyz * u_xlat3.xxx + u_xlat0.xyz;
					    }
					    u_xlat0.xyz = u_xlat0.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat1.xyz = vec3(u_xlat12) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendAdd" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat12;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat2.xyz = vec3(u_xlat12) * u_xlat2.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat2.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					bool u_xlatb3;
					vec2 u_xlat4;
					float u_xlat12;
					int u_xlati12;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat1 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat1.x);
					    u_xlat0.x = float(0.0);
					    u_xlat0.y = float(0.0);
					    u_xlat0.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat1.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat3.x = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat3.x = u_xlat3.x * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat3.x = float(1.0) / u_xlat3.x;
					        u_xlat0.xyz = unity_LightColor[u_xlati_loop_1].xyz * u_xlat3.xxx + u_xlat0.xyz;
					    }
					    u_xlat0.xyz = u_xlat0.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat1.xyz = vec3(u_xlat12) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendAdd" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat12;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat2.xyz = vec3(u_xlat12) * u_xlat2.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat2.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					bool u_xlatb3;
					vec2 u_xlat4;
					float u_xlat12;
					int u_xlati12;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat1 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat1.x);
					    u_xlat0.x = float(0.0);
					    u_xlat0.y = float(0.0);
					    u_xlat0.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat1.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat3.x = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat3.x = u_xlat3.x * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat3.x = float(1.0) / u_xlat3.x;
					        u_xlat0.xyz = unity_LightColor[u_xlati_loop_1].xyz * u_xlat3.xxx + u_xlat0.xyz;
					    }
					    u_xlat0.xyz = u_xlat0.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat1.xyz = vec3(u_xlat12) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendAdd" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat12;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat2.xyz = vec3(u_xlat12) * u_xlat2.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat2.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					bool u_xlatb3;
					vec2 u_xlat4;
					float u_xlat12;
					int u_xlati12;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat1 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat1.x);
					    u_xlat0.x = float(0.0);
					    u_xlat0.y = float(0.0);
					    u_xlat0.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat1.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat3.x = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat3.x = u_xlat3.x * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat3.x = float(1.0) / u_xlat3.x;
					        u_xlat0.xyz = unity_LightColor[u_xlati_loop_1].xyz * u_xlat3.xxx + u_xlat0.xyz;
					    }
					    u_xlat0.xyz = u_xlat0.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat1.xyz = vec3(u_xlat12) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendAdd" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat12;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat2.xyz = vec3(u_xlat12) * u_xlat2.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat2.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					bool u_xlatb3;
					vec2 u_xlat4;
					float u_xlat12;
					int u_xlati12;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat1 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat1.x);
					    u_xlat0.x = float(0.0);
					    u_xlat0.y = float(0.0);
					    u_xlat0.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat1.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat3.x = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat3.x = u_xlat3.x * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat3.x = float(1.0) / u_xlat3.x;
					        u_xlat0.xyz = unity_LightColor[u_xlati_loop_1].xyz * u_xlat3.xxx + u_xlat0.xyz;
					    }
					    u_xlat0.xyz = u_xlat0.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat1.xyz = vec3(u_xlat12) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendAdd" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat12;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat2.xyz = vec3(u_xlat12) * u_xlat2.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat2.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					bool u_xlatb3;
					vec2 u_xlat4;
					float u_xlat12;
					int u_xlati12;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat1 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat1.x);
					    u_xlat0.x = float(0.0);
					    u_xlat0.y = float(0.0);
					    u_xlat0.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat1.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat3.x = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat3.x = u_xlat3.x * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat3.x = float(1.0) / u_xlat3.x;
					        u_xlat0.xyz = unity_LightColor[u_xlati_loop_1].xyz * u_xlat3.xxx + u_xlat0.xyz;
					    }
					    u_xlat0.xyz = u_xlat0.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat1.xyz = vec3(u_xlat12) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendAdd" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat12;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat2.xyz = vec3(u_xlat12) * u_xlat2.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat2.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					bool u_xlatb3;
					vec2 u_xlat4;
					float u_xlat12;
					int u_xlati12;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat1 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat1.x);
					    u_xlat0.x = float(0.0);
					    u_xlat0.y = float(0.0);
					    u_xlat0.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat1.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat3.x = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat3.x = u_xlat3.x * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat3.x = float(1.0) / u_xlat3.x;
					        u_xlat0.xyz = unity_LightColor[u_xlati_loop_1].xyz * u_xlat3.xxx + u_xlat0.xyz;
					    }
					    u_xlat0.xyz = u_xlat0.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat1.xyz = vec3(u_xlat12) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendAdd" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat12;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat2.xyz = vec3(u_xlat12) * u_xlat2.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat2.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					bool u_xlatb3;
					vec2 u_xlat4;
					float u_xlat12;
					int u_xlati12;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat1 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat1.x);
					    u_xlat0.x = float(0.0);
					    u_xlat0.y = float(0.0);
					    u_xlat0.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat1.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat3.x = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat3.x = u_xlat3.x * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat3.x = float(1.0) / u_xlat3.x;
					        u_xlat0.xyz = unity_LightColor[u_xlati_loop_1].xyz * u_xlat3.xxx + u_xlat0.xyz;
					    }
					    u_xlat0.xyz = u_xlat0.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat1.xyz = vec3(u_xlat12) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendAdd" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat12;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat2.xyz = vec3(u_xlat12) * u_xlat2.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat2.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					bool u_xlatb3;
					vec2 u_xlat4;
					float u_xlat12;
					int u_xlati12;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat1 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat1.x);
					    u_xlat0.x = float(0.0);
					    u_xlat0.y = float(0.0);
					    u_xlat0.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat1.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat3.x = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat3.x = u_xlat3.x * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat3.x = float(1.0) / u_xlat3.x;
					        u_xlat0.xyz = unity_LightColor[u_xlati_loop_1].xyz * u_xlat3.xxx + u_xlat0.xyz;
					    }
					    u_xlat0.xyz = u_xlat0.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat1.xyz = vec3(u_xlat12) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendAdd" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat12;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat2.xyz = vec3(u_xlat12) * u_xlat2.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat2.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					bool u_xlatb3;
					vec2 u_xlat4;
					float u_xlat12;
					int u_xlati12;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat1 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat1.x);
					    u_xlat0.x = float(0.0);
					    u_xlat0.y = float(0.0);
					    u_xlat0.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat1.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat3.x = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat3.x = u_xlat3.x * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat3.x = float(1.0) / u_xlat3.x;
					        u_xlat0.xyz = unity_LightColor[u_xlati_loop_1].xyz * u_xlat3.xxx + u_xlat0.xyz;
					    }
					    u_xlat0.xyz = u_xlat0.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat1.xyz = vec3(u_xlat12) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendAdd" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat12;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat2.xyz = vec3(u_xlat12) * u_xlat2.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat2.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					bool u_xlatb3;
					vec2 u_xlat4;
					float u_xlat12;
					int u_xlati12;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat1 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat1.x);
					    u_xlat0.x = float(0.0);
					    u_xlat0.y = float(0.0);
					    u_xlat0.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat1.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat3.x = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat3.x = u_xlat3.x * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat3.x = float(1.0) / u_xlat3.x;
					        u_xlat0.xyz = unity_LightColor[u_xlati_loop_1].xyz * u_xlat3.xxx + u_xlat0.xyz;
					    }
					    u_xlat0.xyz = u_xlat0.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat1.xyz = vec3(u_xlat12) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendAdd" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat12;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat2.xyz = vec3(u_xlat12) * u_xlat2.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat2.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					bool u_xlatb3;
					vec2 u_xlat4;
					float u_xlat12;
					int u_xlati12;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat1 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat1.x);
					    u_xlat0.x = float(0.0);
					    u_xlat0.y = float(0.0);
					    u_xlat0.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat1.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat3.x = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat3.x = u_xlat3.x * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat3.x = float(1.0) / u_xlat3.x;
					        u_xlat0.xyz = unity_LightColor[u_xlati_loop_1].xyz * u_xlat3.xxx + u_xlat0.xyz;
					    }
					    u_xlat0.xyz = u_xlat0.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat1.xyz = vec3(u_xlat12) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendAdd" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec2 u_xlat4;
					int u_xlati12;
					float u_xlat13;
					bool u_xlatb13;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat0 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat1.x = float(0.0);
					    u_xlat1.y = float(0.0);
					    u_xlat1.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat13 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat13 = u_xlat13 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat13 = float(1.0) / u_xlat13;
					        u_xlat1.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat13) + u_xlat1.xyz;
					    }
					    u_xlat0.xyz = u_xlat1.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendAdd" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec2 u_xlat4;
					int u_xlati12;
					float u_xlat13;
					bool u_xlatb13;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat0 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat1.x = float(0.0);
					    u_xlat1.y = float(0.0);
					    u_xlat1.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat13 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat13 = u_xlat13 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat13 = float(1.0) / u_xlat13;
					        u_xlat1.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat13) + u_xlat1.xyz;
					    }
					    u_xlat0.xyz = u_xlat1.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendAdd" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec2 u_xlat4;
					int u_xlati12;
					float u_xlat13;
					bool u_xlatb13;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat0 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat1.x = float(0.0);
					    u_xlat1.y = float(0.0);
					    u_xlat1.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat13 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat13 = u_xlat13 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat13 = float(1.0) / u_xlat13;
					        u_xlat1.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat13) + u_xlat1.xyz;
					    }
					    u_xlat0.xyz = u_xlat1.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendAdd" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec2 u_xlat4;
					int u_xlati12;
					float u_xlat13;
					bool u_xlatb13;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat0 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat1.x = float(0.0);
					    u_xlat1.y = float(0.0);
					    u_xlat1.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat13 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat13 = u_xlat13 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat13 = float(1.0) / u_xlat13;
					        u_xlat1.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat13) + u_xlat1.xyz;
					    }
					    u_xlat0.xyz = u_xlat1.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendAdd" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec2 u_xlat4;
					int u_xlati12;
					float u_xlat13;
					bool u_xlatb13;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat0 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat1.x = float(0.0);
					    u_xlat1.y = float(0.0);
					    u_xlat1.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat13 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat13 = u_xlat13 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat13 = float(1.0) / u_xlat13;
					        u_xlat1.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat13) + u_xlat1.xyz;
					    }
					    u_xlat0.xyz = u_xlat1.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendAdd" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec2 u_xlat4;
					int u_xlati12;
					float u_xlat13;
					bool u_xlatb13;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat0 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat1.x = float(0.0);
					    u_xlat1.y = float(0.0);
					    u_xlat1.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat13 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat13 = u_xlat13 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat13 = float(1.0) / u_xlat13;
					        u_xlat1.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat13) + u_xlat1.xyz;
					    }
					    u_xlat0.xyz = u_xlat1.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendAdd" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec2 u_xlat4;
					int u_xlati12;
					float u_xlat13;
					bool u_xlatb13;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat0 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat1.x = float(0.0);
					    u_xlat1.y = float(0.0);
					    u_xlat1.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat13 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat13 = u_xlat13 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat13 = float(1.0) / u_xlat13;
					        u_xlat1.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat13) + u_xlat1.xyz;
					    }
					    u_xlat0.xyz = u_xlat1.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendAdd" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec2 u_xlat4;
					int u_xlati12;
					float u_xlat13;
					bool u_xlatb13;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat0 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat1.x = float(0.0);
					    u_xlat1.y = float(0.0);
					    u_xlat1.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat13 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat13 = u_xlat13 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat13 = float(1.0) / u_xlat13;
					        u_xlat1.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat13) + u_xlat1.xyz;
					    }
					    u_xlat0.xyz = u_xlat1.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendAdd" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec2 u_xlat4;
					int u_xlati12;
					float u_xlat13;
					bool u_xlatb13;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat0 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat1.x = float(0.0);
					    u_xlat1.y = float(0.0);
					    u_xlat1.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat13 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat13 = u_xlat13 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat13 = float(1.0) / u_xlat13;
					        u_xlat1.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat13) + u_xlat1.xyz;
					    }
					    u_xlat0.xyz = u_xlat1.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendAdd" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec2 u_xlat4;
					int u_xlati12;
					float u_xlat13;
					bool u_xlatb13;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat0 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat1.x = float(0.0);
					    u_xlat1.y = float(0.0);
					    u_xlat1.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat13 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat13 = u_xlat13 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat13 = float(1.0) / u_xlat13;
					        u_xlat1.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat13) + u_xlat1.xyz;
					    }
					    u_xlat0.xyz = u_xlat1.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendAdd" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec2 u_xlat4;
					int u_xlati12;
					float u_xlat13;
					bool u_xlatb13;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat0 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat1.x = float(0.0);
					    u_xlat1.y = float(0.0);
					    u_xlat1.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat13 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat13 = u_xlat13 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat13 = float(1.0) / u_xlat13;
					        u_xlat1.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat13) + u_xlat1.xyz;
					    }
					    u_xlat0.xyz = u_xlat1.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendAdd" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec2 u_xlat4;
					int u_xlati12;
					float u_xlat13;
					bool u_xlatb13;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat0 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat1.x = float(0.0);
					    u_xlat1.y = float(0.0);
					    u_xlat1.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat13 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat13 = u_xlat13 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat13 = float(1.0) / u_xlat13;
					        u_xlat1.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat13) + u_xlat1.xyz;
					    }
					    u_xlat0.xyz = u_xlat1.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendAdd" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec2 u_xlat4;
					int u_xlati12;
					float u_xlat13;
					bool u_xlatb13;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat0 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat1.x = float(0.0);
					    u_xlat1.y = float(0.0);
					    u_xlat1.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat13 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat13 = u_xlat13 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat13 = float(1.0) / u_xlat13;
					        u_xlat1.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat13) + u_xlat1.xyz;
					    }
					    u_xlat0.xyz = u_xlat1.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendAdd" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec2 u_xlat4;
					int u_xlati12;
					float u_xlat13;
					bool u_xlatb13;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat0 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat1.x = float(0.0);
					    u_xlat1.y = float(0.0);
					    u_xlat1.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat13 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat13 = u_xlat13 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat13 = float(1.0) / u_xlat13;
					        u_xlat1.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat13) + u_xlat1.xyz;
					    }
					    u_xlat0.xyz = u_xlat1.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendAdd" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec2 u_xlat4;
					int u_xlati12;
					float u_xlat13;
					bool u_xlatb13;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat0 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat1.x = float(0.0);
					    u_xlat1.y = float(0.0);
					    u_xlat1.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat13 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat13 = u_xlat13 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat13 = float(1.0) / u_xlat13;
					        u_xlat1.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat13) + u_xlat1.xyz;
					    }
					    u_xlat0.xyz = u_xlat1.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendAdd" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec2 u_xlat4;
					int u_xlati12;
					float u_xlat13;
					bool u_xlatb13;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat0 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat1.x = float(0.0);
					    u_xlat1.y = float(0.0);
					    u_xlat1.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat13 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat13 = u_xlat13 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat13 = float(1.0) / u_xlat13;
					        u_xlat1.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat13) + u_xlat1.xyz;
					    }
					    u_xlat0.xyz = u_xlat1.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendAdd" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat12;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat2.xyz = vec3(u_xlat12) * u_xlat2.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat2.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					bool u_xlatb3;
					vec2 u_xlat4;
					float u_xlat12;
					int u_xlati12;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat1 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat1.x);
					    u_xlat0.x = float(0.0);
					    u_xlat0.y = float(0.0);
					    u_xlat0.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat1.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat3.x = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat3.x = u_xlat3.x * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat3.x = float(1.0) / u_xlat3.x;
					        u_xlat0.xyz = unity_LightColor[u_xlati_loop_1].xyz * u_xlat3.xxx + u_xlat0.xyz;
					    }
					    u_xlat0.xyz = u_xlat0.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat1.xyz = vec3(u_xlat12) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendAdd" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat12;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat2.xyz = vec3(u_xlat12) * u_xlat2.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat2.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					bool u_xlatb3;
					vec2 u_xlat4;
					float u_xlat12;
					int u_xlati12;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat1 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat1.x);
					    u_xlat0.x = float(0.0);
					    u_xlat0.y = float(0.0);
					    u_xlat0.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat1.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat3.x = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat3.x = u_xlat3.x * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat3.x = float(1.0) / u_xlat3.x;
					        u_xlat0.xyz = unity_LightColor[u_xlati_loop_1].xyz * u_xlat3.xxx + u_xlat0.xyz;
					    }
					    u_xlat0.xyz = u_xlat0.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat1.xyz = vec3(u_xlat12) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendAdd" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat12;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat2.xyz = vec3(u_xlat12) * u_xlat2.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat2.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					bool u_xlatb3;
					vec2 u_xlat4;
					float u_xlat12;
					int u_xlati12;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat1 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat1.x);
					    u_xlat0.x = float(0.0);
					    u_xlat0.y = float(0.0);
					    u_xlat0.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat1.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat3.x = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat3.x = u_xlat3.x * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat3.x = float(1.0) / u_xlat3.x;
					        u_xlat0.xyz = unity_LightColor[u_xlati_loop_1].xyz * u_xlat3.xxx + u_xlat0.xyz;
					    }
					    u_xlat0.xyz = u_xlat0.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat1.xyz = vec3(u_xlat12) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendAdd" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat12;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat2.xyz = vec3(u_xlat12) * u_xlat2.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat2.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					bool u_xlatb3;
					vec2 u_xlat4;
					float u_xlat12;
					int u_xlati12;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat1 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat1.x);
					    u_xlat0.x = float(0.0);
					    u_xlat0.y = float(0.0);
					    u_xlat0.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat1.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat3.x = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat3.x = u_xlat3.x * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat3.x = float(1.0) / u_xlat3.x;
					        u_xlat0.xyz = unity_LightColor[u_xlati_loop_1].xyz * u_xlat3.xxx + u_xlat0.xyz;
					    }
					    u_xlat0.xyz = u_xlat0.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat1.xyz = vec3(u_xlat12) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendAdd" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat12;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat2.xyz = vec3(u_xlat12) * u_xlat2.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat2.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					bool u_xlatb3;
					vec2 u_xlat4;
					float u_xlat12;
					int u_xlati12;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat1 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat1.x);
					    u_xlat0.x = float(0.0);
					    u_xlat0.y = float(0.0);
					    u_xlat0.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat1.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat3.x = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat3.x = u_xlat3.x * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat3.x = float(1.0) / u_xlat3.x;
					        u_xlat0.xyz = unity_LightColor[u_xlati_loop_1].xyz * u_xlat3.xxx + u_xlat0.xyz;
					    }
					    u_xlat0.xyz = u_xlat0.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat1.xyz = vec3(u_xlat12) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendAdd" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat12;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat2.xyz = vec3(u_xlat12) * u_xlat2.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat2.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					bool u_xlatb3;
					vec2 u_xlat4;
					float u_xlat12;
					int u_xlati12;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat1 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat1.x);
					    u_xlat0.x = float(0.0);
					    u_xlat0.y = float(0.0);
					    u_xlat0.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat1.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat3.x = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat3.x = u_xlat3.x * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat3.x = float(1.0) / u_xlat3.x;
					        u_xlat0.xyz = unity_LightColor[u_xlati_loop_1].xyz * u_xlat3.xxx + u_xlat0.xyz;
					    }
					    u_xlat0.xyz = u_xlat0.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat1.xyz = vec3(u_xlat12) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendAdd" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat12;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat2.xyz = vec3(u_xlat12) * u_xlat2.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat2.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					bool u_xlatb3;
					vec2 u_xlat4;
					float u_xlat12;
					int u_xlati12;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat1 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat1.x);
					    u_xlat0.x = float(0.0);
					    u_xlat0.y = float(0.0);
					    u_xlat0.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat1.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat3.x = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat3.x = u_xlat3.x * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat3.x = float(1.0) / u_xlat3.x;
					        u_xlat0.xyz = unity_LightColor[u_xlati_loop_1].xyz * u_xlat3.xxx + u_xlat0.xyz;
					    }
					    u_xlat0.xyz = u_xlat0.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat1.xyz = vec3(u_xlat12) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendAdd" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat12;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat2.xyz = vec3(u_xlat12) * u_xlat2.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat2.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					bool u_xlatb3;
					vec2 u_xlat4;
					float u_xlat12;
					int u_xlati12;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat1 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat1.x);
					    u_xlat0.x = float(0.0);
					    u_xlat0.y = float(0.0);
					    u_xlat0.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat1.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat3.x = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat3.x = u_xlat3.x * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat3.x = float(1.0) / u_xlat3.x;
					        u_xlat0.xyz = unity_LightColor[u_xlati_loop_1].xyz * u_xlat3.xxx + u_xlat0.xyz;
					    }
					    u_xlat0.xyz = u_xlat0.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat1.xyz = vec3(u_xlat12) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendAdd" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat12;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat2.xyz = vec3(u_xlat12) * u_xlat2.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat2.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					bool u_xlatb3;
					vec2 u_xlat4;
					float u_xlat12;
					int u_xlati12;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat1 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat1.x);
					    u_xlat0.x = float(0.0);
					    u_xlat0.y = float(0.0);
					    u_xlat0.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat1.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat3.x = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat3.x = u_xlat3.x * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat3.x = float(1.0) / u_xlat3.x;
					        u_xlat0.xyz = unity_LightColor[u_xlati_loop_1].xyz * u_xlat3.xxx + u_xlat0.xyz;
					    }
					    u_xlat0.xyz = u_xlat0.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat1.xyz = vec3(u_xlat12) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendAdd" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat12;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat2.xyz = vec3(u_xlat12) * u_xlat2.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat2.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					bool u_xlatb3;
					vec2 u_xlat4;
					float u_xlat12;
					int u_xlati12;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat1 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat1.x);
					    u_xlat0.x = float(0.0);
					    u_xlat0.y = float(0.0);
					    u_xlat0.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat1.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat3.x = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat3.x = u_xlat3.x * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat3.x = float(1.0) / u_xlat3.x;
					        u_xlat0.xyz = unity_LightColor[u_xlati_loop_1].xyz * u_xlat3.xxx + u_xlat0.xyz;
					    }
					    u_xlat0.xyz = u_xlat0.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat1.xyz = vec3(u_xlat12) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendAdd" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat12;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat2.xyz = vec3(u_xlat12) * u_xlat2.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat2.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					bool u_xlatb3;
					vec2 u_xlat4;
					float u_xlat12;
					int u_xlati12;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat1 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat1.x);
					    u_xlat0.x = float(0.0);
					    u_xlat0.y = float(0.0);
					    u_xlat0.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat1.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat3.x = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat3.x = u_xlat3.x * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat3.x = float(1.0) / u_xlat3.x;
					        u_xlat0.xyz = unity_LightColor[u_xlati_loop_1].xyz * u_xlat3.xxx + u_xlat0.xyz;
					    }
					    u_xlat0.xyz = u_xlat0.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat1.xyz = vec3(u_xlat12) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendAdd" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat12;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat2.xyz = vec3(u_xlat12) * u_xlat2.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat2.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					bool u_xlatb3;
					vec2 u_xlat4;
					float u_xlat12;
					int u_xlati12;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat1 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat1.x);
					    u_xlat0.x = float(0.0);
					    u_xlat0.y = float(0.0);
					    u_xlat0.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat1.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat3.x = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat3.x = u_xlat3.x * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat3.x = float(1.0) / u_xlat3.x;
					        u_xlat0.xyz = unity_LightColor[u_xlati_loop_1].xyz * u_xlat3.xxx + u_xlat0.xyz;
					    }
					    u_xlat0.xyz = u_xlat0.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat1.xyz = vec3(u_xlat12) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendAdd" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat12;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat2.xyz = vec3(u_xlat12) * u_xlat2.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat2.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					bool u_xlatb3;
					vec2 u_xlat4;
					float u_xlat12;
					int u_xlati12;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat1 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat1.x);
					    u_xlat0.x = float(0.0);
					    u_xlat0.y = float(0.0);
					    u_xlat0.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat1.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat3.x = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat3.x = u_xlat3.x * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat3.x = float(1.0) / u_xlat3.x;
					        u_xlat0.xyz = unity_LightColor[u_xlati_loop_1].xyz * u_xlat3.xxx + u_xlat0.xyz;
					    }
					    u_xlat0.xyz = u_xlat0.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat1.xyz = vec3(u_xlat12) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendAdd" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat12;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat2.xyz = vec3(u_xlat12) * u_xlat2.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat2.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					bool u_xlatb3;
					vec2 u_xlat4;
					float u_xlat12;
					int u_xlati12;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat1 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat1.x);
					    u_xlat0.x = float(0.0);
					    u_xlat0.y = float(0.0);
					    u_xlat0.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat1.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat3.x = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat3.x = u_xlat3.x * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat3.x = float(1.0) / u_xlat3.x;
					        u_xlat0.xyz = unity_LightColor[u_xlati_loop_1].xyz * u_xlat3.xxx + u_xlat0.xyz;
					    }
					    u_xlat0.xyz = u_xlat0.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat1.xyz = vec3(u_xlat12) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendAdd" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat12;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat2.xyz = vec3(u_xlat12) * u_xlat2.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat2.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					bool u_xlatb3;
					vec2 u_xlat4;
					float u_xlat12;
					int u_xlati12;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat1 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat1.x);
					    u_xlat0.x = float(0.0);
					    u_xlat0.y = float(0.0);
					    u_xlat0.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat1.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat3.x = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat3.x = u_xlat3.x * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat3.x = float(1.0) / u_xlat3.x;
					        u_xlat0.xyz = unity_LightColor[u_xlati_loop_1].xyz * u_xlat3.xxx + u_xlat0.xyz;
					    }
					    u_xlat0.xyz = u_xlat0.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat1.xyz = vec3(u_xlat12) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendAdd" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat12;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat2.xyz = vec3(u_xlat12) * u_xlat2.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat2.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					bool u_xlatb3;
					vec2 u_xlat4;
					float u_xlat12;
					int u_xlati12;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat1 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat1.x);
					    u_xlat0.x = float(0.0);
					    u_xlat0.y = float(0.0);
					    u_xlat0.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat1.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat3.x = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat3.x = u_xlat3.x * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat3.x = float(1.0) / u_xlat3.x;
					        u_xlat0.xyz = unity_LightColor[u_xlati_loop_1].xyz * u_xlat3.xxx + u_xlat0.xyz;
					    }
					    u_xlat0.xyz = u_xlat0.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat1.xyz = vec3(u_xlat12) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendAdd" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec2 u_xlat4;
					int u_xlati12;
					float u_xlat13;
					bool u_xlatb13;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat0 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat1.x = float(0.0);
					    u_xlat1.y = float(0.0);
					    u_xlat1.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat13 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat13 = u_xlat13 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat13 = float(1.0) / u_xlat13;
					        u_xlat1.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat13) + u_xlat1.xyz;
					    }
					    u_xlat0.xyz = u_xlat1.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendAdd" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec2 u_xlat4;
					int u_xlati12;
					float u_xlat13;
					bool u_xlatb13;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat0 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat1.x = float(0.0);
					    u_xlat1.y = float(0.0);
					    u_xlat1.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat13 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat13 = u_xlat13 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat13 = float(1.0) / u_xlat13;
					        u_xlat1.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat13) + u_xlat1.xyz;
					    }
					    u_xlat0.xyz = u_xlat1.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendAdd" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec2 u_xlat4;
					int u_xlati12;
					float u_xlat13;
					bool u_xlatb13;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat0 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat1.x = float(0.0);
					    u_xlat1.y = float(0.0);
					    u_xlat1.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat13 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat13 = u_xlat13 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat13 = float(1.0) / u_xlat13;
					        u_xlat1.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat13) + u_xlat1.xyz;
					    }
					    u_xlat0.xyz = u_xlat1.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendAdd" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec2 u_xlat4;
					int u_xlati12;
					float u_xlat13;
					bool u_xlatb13;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat0 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat1.x = float(0.0);
					    u_xlat1.y = float(0.0);
					    u_xlat1.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat13 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat13 = u_xlat13 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat13 = float(1.0) / u_xlat13;
					        u_xlat1.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat13) + u_xlat1.xyz;
					    }
					    u_xlat0.xyz = u_xlat1.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendAdd" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec2 u_xlat4;
					int u_xlati12;
					float u_xlat13;
					bool u_xlatb13;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat0 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat1.x = float(0.0);
					    u_xlat1.y = float(0.0);
					    u_xlat1.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat13 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat13 = u_xlat13 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat13 = float(1.0) / u_xlat13;
					        u_xlat1.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat13) + u_xlat1.xyz;
					    }
					    u_xlat0.xyz = u_xlat1.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendAdd" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec2 u_xlat4;
					int u_xlati12;
					float u_xlat13;
					bool u_xlatb13;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat0 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat1.x = float(0.0);
					    u_xlat1.y = float(0.0);
					    u_xlat1.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat13 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat13 = u_xlat13 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat13 = float(1.0) / u_xlat13;
					        u_xlat1.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat13) + u_xlat1.xyz;
					    }
					    u_xlat0.xyz = u_xlat1.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendAdd" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec2 u_xlat4;
					int u_xlati12;
					float u_xlat13;
					bool u_xlatb13;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat0 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat1.x = float(0.0);
					    u_xlat1.y = float(0.0);
					    u_xlat1.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat13 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat13 = u_xlat13 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat13 = float(1.0) / u_xlat13;
					        u_xlat1.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat13) + u_xlat1.xyz;
					    }
					    u_xlat0.xyz = u_xlat1.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendAdd" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec2 u_xlat4;
					int u_xlati12;
					float u_xlat13;
					bool u_xlatb13;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat0 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat1.x = float(0.0);
					    u_xlat1.y = float(0.0);
					    u_xlat1.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat13 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat13 = u_xlat13 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat13 = float(1.0) / u_xlat13;
					        u_xlat1.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat13) + u_xlat1.xyz;
					    }
					    u_xlat0.xyz = u_xlat1.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendAdd" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec2 u_xlat4;
					int u_xlati12;
					float u_xlat13;
					bool u_xlatb13;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat0 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat1.x = float(0.0);
					    u_xlat1.y = float(0.0);
					    u_xlat1.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat13 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat13 = u_xlat13 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat13 = float(1.0) / u_xlat13;
					        u_xlat1.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat13) + u_xlat1.xyz;
					    }
					    u_xlat0.xyz = u_xlat1.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendAdd" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec2 u_xlat4;
					int u_xlati12;
					float u_xlat13;
					bool u_xlatb13;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat0 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat1.x = float(0.0);
					    u_xlat1.y = float(0.0);
					    u_xlat1.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat13 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat13 = u_xlat13 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat13 = float(1.0) / u_xlat13;
					        u_xlat1.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat13) + u_xlat1.xyz;
					    }
					    u_xlat0.xyz = u_xlat1.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendAdd" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec2 u_xlat4;
					int u_xlati12;
					float u_xlat13;
					bool u_xlatb13;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat0 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat1.x = float(0.0);
					    u_xlat1.y = float(0.0);
					    u_xlat1.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat13 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat13 = u_xlat13 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat13 = float(1.0) / u_xlat13;
					        u_xlat1.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat13) + u_xlat1.xyz;
					    }
					    u_xlat0.xyz = u_xlat1.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendAdd" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec2 u_xlat4;
					int u_xlati12;
					float u_xlat13;
					bool u_xlatb13;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat0 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat1.x = float(0.0);
					    u_xlat1.y = float(0.0);
					    u_xlat1.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat13 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat13 = u_xlat13 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat13 = float(1.0) / u_xlat13;
					        u_xlat1.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat13) + u_xlat1.xyz;
					    }
					    u_xlat0.xyz = u_xlat1.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendAdd" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec2 u_xlat4;
					int u_xlati12;
					float u_xlat13;
					bool u_xlatb13;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat0 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat1.x = float(0.0);
					    u_xlat1.y = float(0.0);
					    u_xlat1.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat13 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat13 = u_xlat13 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat13 = float(1.0) / u_xlat13;
					        u_xlat1.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat13) + u_xlat1.xyz;
					    }
					    u_xlat0.xyz = u_xlat1.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendAdd" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec2 u_xlat4;
					int u_xlati12;
					float u_xlat13;
					bool u_xlatb13;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat0 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat1.x = float(0.0);
					    u_xlat1.y = float(0.0);
					    u_xlat1.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat13 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat13 = u_xlat13 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat13 = float(1.0) / u_xlat13;
					        u_xlat1.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat13) + u_xlat1.xyz;
					    }
					    u_xlat0.xyz = u_xlat1.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendAdd" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec2 u_xlat4;
					int u_xlati12;
					float u_xlat13;
					bool u_xlatb13;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat0 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat1.x = float(0.0);
					    u_xlat1.y = float(0.0);
					    u_xlat1.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat13 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat13 = u_xlat13 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat13 = float(1.0) / u_xlat13;
					        u_xlat1.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat13) + u_xlat1.xyz;
					    }
					    u_xlat0.xyz = u_xlat1.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendAdd" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec2 u_xlat4;
					int u_xlati12;
					float u_xlat13;
					bool u_xlatb13;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat0 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat1.x = float(0.0);
					    u_xlat1.y = float(0.0);
					    u_xlat1.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat13 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat13 = u_xlat13 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat13 = float(1.0) / u_xlat13;
					        u_xlat1.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat13) + u_xlat1.xyz;
					    }
					    u_xlat0.xyz = u_xlat1.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendAdd" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat12;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat2.xyz = vec3(u_xlat12) * u_xlat2.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat2.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					bool u_xlatb3;
					vec2 u_xlat4;
					float u_xlat12;
					int u_xlati12;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat1 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat1.x);
					    u_xlat0.x = float(0.0);
					    u_xlat0.y = float(0.0);
					    u_xlat0.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat1.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat3.x = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat3.x = u_xlat3.x * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat3.x = float(1.0) / u_xlat3.x;
					        u_xlat0.xyz = unity_LightColor[u_xlati_loop_1].xyz * u_xlat3.xxx + u_xlat0.xyz;
					    }
					    u_xlat0.xyz = u_xlat0.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat1.xyz = vec3(u_xlat12) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendAdd" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat12;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat2.xyz = vec3(u_xlat12) * u_xlat2.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat2.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					bool u_xlatb3;
					vec2 u_xlat4;
					float u_xlat12;
					int u_xlati12;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat1 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat1.x);
					    u_xlat0.x = float(0.0);
					    u_xlat0.y = float(0.0);
					    u_xlat0.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat1.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat3.x = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat3.x = u_xlat3.x * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat3.x = float(1.0) / u_xlat3.x;
					        u_xlat0.xyz = unity_LightColor[u_xlati_loop_1].xyz * u_xlat3.xxx + u_xlat0.xyz;
					    }
					    u_xlat0.xyz = u_xlat0.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat1.xyz = vec3(u_xlat12) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendAdd" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat12;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat2.xyz = vec3(u_xlat12) * u_xlat2.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat2.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					bool u_xlatb3;
					vec2 u_xlat4;
					float u_xlat12;
					int u_xlati12;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat1 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat1.x);
					    u_xlat0.x = float(0.0);
					    u_xlat0.y = float(0.0);
					    u_xlat0.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat1.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat3.x = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat3.x = u_xlat3.x * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat3.x = float(1.0) / u_xlat3.x;
					        u_xlat0.xyz = unity_LightColor[u_xlati_loop_1].xyz * u_xlat3.xxx + u_xlat0.xyz;
					    }
					    u_xlat0.xyz = u_xlat0.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat1.xyz = vec3(u_xlat12) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendAdd" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat12;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat2.xyz = vec3(u_xlat12) * u_xlat2.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat2.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					bool u_xlatb3;
					vec2 u_xlat4;
					float u_xlat12;
					int u_xlati12;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat1 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat1.x);
					    u_xlat0.x = float(0.0);
					    u_xlat0.y = float(0.0);
					    u_xlat0.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat1.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat3.x = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat3.x = u_xlat3.x * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat3.x = float(1.0) / u_xlat3.x;
					        u_xlat0.xyz = unity_LightColor[u_xlati_loop_1].xyz * u_xlat3.xxx + u_xlat0.xyz;
					    }
					    u_xlat0.xyz = u_xlat0.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat1.xyz = vec3(u_xlat12) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendAdd" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat12;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat2.xyz = vec3(u_xlat12) * u_xlat2.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat2.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					bool u_xlatb3;
					vec2 u_xlat4;
					float u_xlat12;
					int u_xlati12;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat1 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat1.x);
					    u_xlat0.x = float(0.0);
					    u_xlat0.y = float(0.0);
					    u_xlat0.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat1.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat3.x = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat3.x = u_xlat3.x * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat3.x = float(1.0) / u_xlat3.x;
					        u_xlat0.xyz = unity_LightColor[u_xlati_loop_1].xyz * u_xlat3.xxx + u_xlat0.xyz;
					    }
					    u_xlat0.xyz = u_xlat0.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat1.xyz = vec3(u_xlat12) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendAdd" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat12;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat2.xyz = vec3(u_xlat12) * u_xlat2.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat2.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					bool u_xlatb3;
					vec2 u_xlat4;
					float u_xlat12;
					int u_xlati12;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat1 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat1.x);
					    u_xlat0.x = float(0.0);
					    u_xlat0.y = float(0.0);
					    u_xlat0.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat1.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat3.x = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat3.x = u_xlat3.x * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat3.x = float(1.0) / u_xlat3.x;
					        u_xlat0.xyz = unity_LightColor[u_xlati_loop_1].xyz * u_xlat3.xxx + u_xlat0.xyz;
					    }
					    u_xlat0.xyz = u_xlat0.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat1.xyz = vec3(u_xlat12) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendAdd" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat12;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat2.xyz = vec3(u_xlat12) * u_xlat2.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat2.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					bool u_xlatb3;
					vec2 u_xlat4;
					float u_xlat12;
					int u_xlati12;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat1 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat1.x);
					    u_xlat0.x = float(0.0);
					    u_xlat0.y = float(0.0);
					    u_xlat0.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat1.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat3.x = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat3.x = u_xlat3.x * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat3.x = float(1.0) / u_xlat3.x;
					        u_xlat0.xyz = unity_LightColor[u_xlati_loop_1].xyz * u_xlat3.xxx + u_xlat0.xyz;
					    }
					    u_xlat0.xyz = u_xlat0.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat1.xyz = vec3(u_xlat12) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendAdd" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat12;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat2.xyz = vec3(u_xlat12) * u_xlat2.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat2.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					bool u_xlatb3;
					vec2 u_xlat4;
					float u_xlat12;
					int u_xlati12;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat1 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat1.x);
					    u_xlat0.x = float(0.0);
					    u_xlat0.y = float(0.0);
					    u_xlat0.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat1.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat3.x = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat3.x = u_xlat3.x * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat3.x = float(1.0) / u_xlat3.x;
					        u_xlat0.xyz = unity_LightColor[u_xlati_loop_1].xyz * u_xlat3.xxx + u_xlat0.xyz;
					    }
					    u_xlat0.xyz = u_xlat0.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat1.xyz = vec3(u_xlat12) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendAdd" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat12;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat2.xyz = vec3(u_xlat12) * u_xlat2.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat2.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					bool u_xlatb3;
					vec2 u_xlat4;
					float u_xlat12;
					int u_xlati12;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat1 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat1.x);
					    u_xlat0.x = float(0.0);
					    u_xlat0.y = float(0.0);
					    u_xlat0.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat1.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat3.x = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat3.x = u_xlat3.x * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat3.x = float(1.0) / u_xlat3.x;
					        u_xlat0.xyz = unity_LightColor[u_xlati_loop_1].xyz * u_xlat3.xxx + u_xlat0.xyz;
					    }
					    u_xlat0.xyz = u_xlat0.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat1.xyz = vec3(u_xlat12) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendAdd" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat12;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat2.xyz = vec3(u_xlat12) * u_xlat2.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat2.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					bool u_xlatb3;
					vec2 u_xlat4;
					float u_xlat12;
					int u_xlati12;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat1 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat1.x);
					    u_xlat0.x = float(0.0);
					    u_xlat0.y = float(0.0);
					    u_xlat0.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat1.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat3.x = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat3.x = u_xlat3.x * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat3.x = float(1.0) / u_xlat3.x;
					        u_xlat0.xyz = unity_LightColor[u_xlati_loop_1].xyz * u_xlat3.xxx + u_xlat0.xyz;
					    }
					    u_xlat0.xyz = u_xlat0.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat1.xyz = vec3(u_xlat12) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendAdd" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat12;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat2.xyz = vec3(u_xlat12) * u_xlat2.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat2.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					bool u_xlatb3;
					vec2 u_xlat4;
					float u_xlat12;
					int u_xlati12;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat1 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat1.x);
					    u_xlat0.x = float(0.0);
					    u_xlat0.y = float(0.0);
					    u_xlat0.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat1.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat3.x = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat3.x = u_xlat3.x * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat3.x = float(1.0) / u_xlat3.x;
					        u_xlat0.xyz = unity_LightColor[u_xlati_loop_1].xyz * u_xlat3.xxx + u_xlat0.xyz;
					    }
					    u_xlat0.xyz = u_xlat0.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat1.xyz = vec3(u_xlat12) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendAdd" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat12;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat2.xyz = vec3(u_xlat12) * u_xlat2.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat2.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					bool u_xlatb3;
					vec2 u_xlat4;
					float u_xlat12;
					int u_xlati12;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat1 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat1.x);
					    u_xlat0.x = float(0.0);
					    u_xlat0.y = float(0.0);
					    u_xlat0.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat1.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat3.x = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat3.x = u_xlat3.x * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat3.x = float(1.0) / u_xlat3.x;
					        u_xlat0.xyz = unity_LightColor[u_xlati_loop_1].xyz * u_xlat3.xxx + u_xlat0.xyz;
					    }
					    u_xlat0.xyz = u_xlat0.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat1.xyz = vec3(u_xlat12) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendAdd" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat12;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat2.xyz = vec3(u_xlat12) * u_xlat2.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat2.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					bool u_xlatb3;
					vec2 u_xlat4;
					float u_xlat12;
					int u_xlati12;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat1 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat1.x);
					    u_xlat0.x = float(0.0);
					    u_xlat0.y = float(0.0);
					    u_xlat0.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat1.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat3.x = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat3.x = u_xlat3.x * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat3.x = float(1.0) / u_xlat3.x;
					        u_xlat0.xyz = unity_LightColor[u_xlati_loop_1].xyz * u_xlat3.xxx + u_xlat0.xyz;
					    }
					    u_xlat0.xyz = u_xlat0.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat1.xyz = vec3(u_xlat12) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendAdd" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat12;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat2.xyz = vec3(u_xlat12) * u_xlat2.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat2.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					bool u_xlatb3;
					vec2 u_xlat4;
					float u_xlat12;
					int u_xlati12;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat1 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat1.x);
					    u_xlat0.x = float(0.0);
					    u_xlat0.y = float(0.0);
					    u_xlat0.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat1.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat3.x = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat3.x = u_xlat3.x * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat3.x = float(1.0) / u_xlat3.x;
					        u_xlat0.xyz = unity_LightColor[u_xlati_loop_1].xyz * u_xlat3.xxx + u_xlat0.xyz;
					    }
					    u_xlat0.xyz = u_xlat0.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat1.xyz = vec3(u_xlat12) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendAdd" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat12;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat2.xyz = vec3(u_xlat12) * u_xlat2.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat2.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					bool u_xlatb3;
					vec2 u_xlat4;
					float u_xlat12;
					int u_xlati12;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat1 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat1.x);
					    u_xlat0.x = float(0.0);
					    u_xlat0.y = float(0.0);
					    u_xlat0.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat1.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat3.x = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat3.x = u_xlat3.x * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat3.x = float(1.0) / u_xlat3.x;
					        u_xlat0.xyz = unity_LightColor[u_xlati_loop_1].xyz * u_xlat3.xxx + u_xlat0.xyz;
					    }
					    u_xlat0.xyz = u_xlat0.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat1.xyz = vec3(u_xlat12) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendAdd" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat12;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat2.xyz = vec3(u_xlat12) * u_xlat2.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat2.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					bool u_xlatb3;
					vec2 u_xlat4;
					float u_xlat12;
					int u_xlati12;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat1 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat1.x);
					    u_xlat0.x = float(0.0);
					    u_xlat0.y = float(0.0);
					    u_xlat0.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat1.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat3.x = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat3.x = u_xlat3.x * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat3.x = float(1.0) / u_xlat3.x;
					        u_xlat0.xyz = unity_LightColor[u_xlati_loop_1].xyz * u_xlat3.xxx + u_xlat0.xyz;
					    }
					    u_xlat0.xyz = u_xlat0.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat1.xyz = vec3(u_xlat12) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendAdd" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec2 u_xlat4;
					int u_xlati12;
					float u_xlat13;
					bool u_xlatb13;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat0 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat1.x = float(0.0);
					    u_xlat1.y = float(0.0);
					    u_xlat1.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat13 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat13 = u_xlat13 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat13 = float(1.0) / u_xlat13;
					        u_xlat1.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat13) + u_xlat1.xyz;
					    }
					    u_xlat0.xyz = u_xlat1.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendAdd" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec2 u_xlat4;
					int u_xlati12;
					float u_xlat13;
					bool u_xlatb13;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat0 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat1.x = float(0.0);
					    u_xlat1.y = float(0.0);
					    u_xlat1.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat13 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat13 = u_xlat13 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat13 = float(1.0) / u_xlat13;
					        u_xlat1.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat13) + u_xlat1.xyz;
					    }
					    u_xlat0.xyz = u_xlat1.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendAdd" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec2 u_xlat4;
					int u_xlati12;
					float u_xlat13;
					bool u_xlatb13;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat0 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat1.x = float(0.0);
					    u_xlat1.y = float(0.0);
					    u_xlat1.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat13 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat13 = u_xlat13 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat13 = float(1.0) / u_xlat13;
					        u_xlat1.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat13) + u_xlat1.xyz;
					    }
					    u_xlat0.xyz = u_xlat1.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendAdd" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec2 u_xlat4;
					int u_xlati12;
					float u_xlat13;
					bool u_xlatb13;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat0 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat1.x = float(0.0);
					    u_xlat1.y = float(0.0);
					    u_xlat1.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat13 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat13 = u_xlat13 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat13 = float(1.0) / u_xlat13;
					        u_xlat1.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat13) + u_xlat1.xyz;
					    }
					    u_xlat0.xyz = u_xlat1.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendAdd" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec2 u_xlat4;
					int u_xlati12;
					float u_xlat13;
					bool u_xlatb13;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat0 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat1.x = float(0.0);
					    u_xlat1.y = float(0.0);
					    u_xlat1.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat13 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat13 = u_xlat13 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat13 = float(1.0) / u_xlat13;
					        u_xlat1.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat13) + u_xlat1.xyz;
					    }
					    u_xlat0.xyz = u_xlat1.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendAdd" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec2 u_xlat4;
					int u_xlati12;
					float u_xlat13;
					bool u_xlatb13;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat0 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat1.x = float(0.0);
					    u_xlat1.y = float(0.0);
					    u_xlat1.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat13 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat13 = u_xlat13 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat13 = float(1.0) / u_xlat13;
					        u_xlat1.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat13) + u_xlat1.xyz;
					    }
					    u_xlat0.xyz = u_xlat1.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendAdd" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec2 u_xlat4;
					int u_xlati12;
					float u_xlat13;
					bool u_xlatb13;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat0 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat1.x = float(0.0);
					    u_xlat1.y = float(0.0);
					    u_xlat1.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat13 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat13 = u_xlat13 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat13 = float(1.0) / u_xlat13;
					        u_xlat1.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat13) + u_xlat1.xyz;
					    }
					    u_xlat0.xyz = u_xlat1.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendAdd" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec2 u_xlat4;
					int u_xlati12;
					float u_xlat13;
					bool u_xlatb13;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat0 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat1.x = float(0.0);
					    u_xlat1.y = float(0.0);
					    u_xlat1.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat13 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat13 = u_xlat13 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat13 = float(1.0) / u_xlat13;
					        u_xlat1.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat13) + u_xlat1.xyz;
					    }
					    u_xlat0.xyz = u_xlat1.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendAdd" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec2 u_xlat4;
					int u_xlati12;
					float u_xlat13;
					bool u_xlatb13;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat0 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat1.x = float(0.0);
					    u_xlat1.y = float(0.0);
					    u_xlat1.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat13 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat13 = u_xlat13 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat13 = float(1.0) / u_xlat13;
					        u_xlat1.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat13) + u_xlat1.xyz;
					    }
					    u_xlat0.xyz = u_xlat1.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendAdd" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec2 u_xlat4;
					int u_xlati12;
					float u_xlat13;
					bool u_xlatb13;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat0 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat1.x = float(0.0);
					    u_xlat1.y = float(0.0);
					    u_xlat1.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat13 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat13 = u_xlat13 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat13 = float(1.0) / u_xlat13;
					        u_xlat1.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat13) + u_xlat1.xyz;
					    }
					    u_xlat0.xyz = u_xlat1.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendAdd" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec2 u_xlat4;
					int u_xlati12;
					float u_xlat13;
					bool u_xlatb13;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat0 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat1.x = float(0.0);
					    u_xlat1.y = float(0.0);
					    u_xlat1.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat13 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat13 = u_xlat13 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat13 = float(1.0) / u_xlat13;
					        u_xlat1.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat13) + u_xlat1.xyz;
					    }
					    u_xlat0.xyz = u_xlat1.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendAdd" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec2 u_xlat4;
					int u_xlati12;
					float u_xlat13;
					bool u_xlatb13;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat0 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat1.x = float(0.0);
					    u_xlat1.y = float(0.0);
					    u_xlat1.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat13 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat13 = u_xlat13 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat13 = float(1.0) / u_xlat13;
					        u_xlat1.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat13) + u_xlat1.xyz;
					    }
					    u_xlat0.xyz = u_xlat1.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendAdd" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec2 u_xlat4;
					int u_xlati12;
					float u_xlat13;
					bool u_xlatb13;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat0 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat1.x = float(0.0);
					    u_xlat1.y = float(0.0);
					    u_xlat1.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat13 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat13 = u_xlat13 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat13 = float(1.0) / u_xlat13;
					        u_xlat1.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat13) + u_xlat1.xyz;
					    }
					    u_xlat0.xyz = u_xlat1.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendAdd" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec2 u_xlat4;
					int u_xlati12;
					float u_xlat13;
					bool u_xlatb13;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat0 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat1.x = float(0.0);
					    u_xlat1.y = float(0.0);
					    u_xlat1.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat13 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat13 = u_xlat13 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat13 = float(1.0) / u_xlat13;
					        u_xlat1.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat13) + u_xlat1.xyz;
					    }
					    u_xlat0.xyz = u_xlat1.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendAdd" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec2 u_xlat4;
					int u_xlati12;
					float u_xlat13;
					bool u_xlatb13;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat0 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat1.x = float(0.0);
					    u_xlat1.y = float(0.0);
					    u_xlat1.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat13 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat13 = u_xlat13 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat13 = float(1.0) / u_xlat13;
					        u_xlat1.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat13) + u_xlat1.xyz;
					    }
					    u_xlat0.xyz = u_xlat1.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendAdd" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec2 u_xlat4;
					int u_xlati12;
					float u_xlat13;
					bool u_xlatb13;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat0 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat1.x = float(0.0);
					    u_xlat1.y = float(0.0);
					    u_xlat1.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat13 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat13 = u_xlat13 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat13 = float(1.0) / u_xlat13;
					        u_xlat1.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat13) + u_xlat1.xyz;
					    }
					    u_xlat0.xyz = u_xlat1.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendAdd" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat12;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat2.xyz = vec3(u_xlat12) * u_xlat2.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat2.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					bool u_xlatb3;
					vec2 u_xlat4;
					float u_xlat12;
					int u_xlati12;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat1 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat1.x);
					    u_xlat0.x = float(0.0);
					    u_xlat0.y = float(0.0);
					    u_xlat0.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat1.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat3.x = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat3.x = u_xlat3.x * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat3.x = float(1.0) / u_xlat3.x;
					        u_xlat0.xyz = unity_LightColor[u_xlati_loop_1].xyz * u_xlat3.xxx + u_xlat0.xyz;
					    }
					    u_xlat0.xyz = u_xlat0.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat1.xyz = vec3(u_xlat12) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendAdd" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat12;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat2.xyz = vec3(u_xlat12) * u_xlat2.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat2.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					bool u_xlatb3;
					vec2 u_xlat4;
					float u_xlat12;
					int u_xlati12;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat1 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat1.x);
					    u_xlat0.x = float(0.0);
					    u_xlat0.y = float(0.0);
					    u_xlat0.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat1.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat3.x = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat3.x = u_xlat3.x * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat3.x = float(1.0) / u_xlat3.x;
					        u_xlat0.xyz = unity_LightColor[u_xlati_loop_1].xyz * u_xlat3.xxx + u_xlat0.xyz;
					    }
					    u_xlat0.xyz = u_xlat0.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat1.xyz = vec3(u_xlat12) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendAdd" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat12;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat2.xyz = vec3(u_xlat12) * u_xlat2.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat2.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					bool u_xlatb3;
					vec2 u_xlat4;
					float u_xlat12;
					int u_xlati12;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat1 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat1.x);
					    u_xlat0.x = float(0.0);
					    u_xlat0.y = float(0.0);
					    u_xlat0.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat1.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat3.x = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat3.x = u_xlat3.x * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat3.x = float(1.0) / u_xlat3.x;
					        u_xlat0.xyz = unity_LightColor[u_xlati_loop_1].xyz * u_xlat3.xxx + u_xlat0.xyz;
					    }
					    u_xlat0.xyz = u_xlat0.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat1.xyz = vec3(u_xlat12) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendAdd" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat12;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat2.xyz = vec3(u_xlat12) * u_xlat2.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat2.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					bool u_xlatb3;
					vec2 u_xlat4;
					float u_xlat12;
					int u_xlati12;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat1 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat1.x);
					    u_xlat0.x = float(0.0);
					    u_xlat0.y = float(0.0);
					    u_xlat0.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat1.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat3.x = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat3.x = u_xlat3.x * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat3.x = float(1.0) / u_xlat3.x;
					        u_xlat0.xyz = unity_LightColor[u_xlati_loop_1].xyz * u_xlat3.xxx + u_xlat0.xyz;
					    }
					    u_xlat0.xyz = u_xlat0.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat1.xyz = vec3(u_xlat12) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendAdd" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat12;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat2.xyz = vec3(u_xlat12) * u_xlat2.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat2.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					bool u_xlatb3;
					vec2 u_xlat4;
					float u_xlat12;
					int u_xlati12;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat1 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat1.x);
					    u_xlat0.x = float(0.0);
					    u_xlat0.y = float(0.0);
					    u_xlat0.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat1.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat3.x = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat3.x = u_xlat3.x * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat3.x = float(1.0) / u_xlat3.x;
					        u_xlat0.xyz = unity_LightColor[u_xlati_loop_1].xyz * u_xlat3.xxx + u_xlat0.xyz;
					    }
					    u_xlat0.xyz = u_xlat0.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat1.xyz = vec3(u_xlat12) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendAdd" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat12;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat2.xyz = vec3(u_xlat12) * u_xlat2.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat2.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					bool u_xlatb3;
					vec2 u_xlat4;
					float u_xlat12;
					int u_xlati12;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat1 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat1.x);
					    u_xlat0.x = float(0.0);
					    u_xlat0.y = float(0.0);
					    u_xlat0.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat1.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat3.x = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat3.x = u_xlat3.x * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat3.x = float(1.0) / u_xlat3.x;
					        u_xlat0.xyz = unity_LightColor[u_xlati_loop_1].xyz * u_xlat3.xxx + u_xlat0.xyz;
					    }
					    u_xlat0.xyz = u_xlat0.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat1.xyz = vec3(u_xlat12) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendAdd" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat12;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat2.xyz = vec3(u_xlat12) * u_xlat2.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat2.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					bool u_xlatb3;
					vec2 u_xlat4;
					float u_xlat12;
					int u_xlati12;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat1 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat1.x);
					    u_xlat0.x = float(0.0);
					    u_xlat0.y = float(0.0);
					    u_xlat0.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat1.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat3.x = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat3.x = u_xlat3.x * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat3.x = float(1.0) / u_xlat3.x;
					        u_xlat0.xyz = unity_LightColor[u_xlati_loop_1].xyz * u_xlat3.xxx + u_xlat0.xyz;
					    }
					    u_xlat0.xyz = u_xlat0.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat1.xyz = vec3(u_xlat12) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendAdd" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat12;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat2.xyz = vec3(u_xlat12) * u_xlat2.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat2.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					bool u_xlatb3;
					vec2 u_xlat4;
					float u_xlat12;
					int u_xlati12;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat1 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat1.x);
					    u_xlat0.x = float(0.0);
					    u_xlat0.y = float(0.0);
					    u_xlat0.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat1.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat3.x = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat3.x = u_xlat3.x * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat3.x = float(1.0) / u_xlat3.x;
					        u_xlat0.xyz = unity_LightColor[u_xlati_loop_1].xyz * u_xlat3.xxx + u_xlat0.xyz;
					    }
					    u_xlat0.xyz = u_xlat0.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat1.xyz = vec3(u_xlat12) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendAdd" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat12;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat2.xyz = vec3(u_xlat12) * u_xlat2.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat2.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					bool u_xlatb3;
					vec2 u_xlat4;
					float u_xlat12;
					int u_xlati12;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat1 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat1.x);
					    u_xlat0.x = float(0.0);
					    u_xlat0.y = float(0.0);
					    u_xlat0.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat1.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat3.x = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat3.x = u_xlat3.x * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat3.x = float(1.0) / u_xlat3.x;
					        u_xlat0.xyz = unity_LightColor[u_xlati_loop_1].xyz * u_xlat3.xxx + u_xlat0.xyz;
					    }
					    u_xlat0.xyz = u_xlat0.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat1.xyz = vec3(u_xlat12) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendAdd" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat12;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat2.xyz = vec3(u_xlat12) * u_xlat2.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat2.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					bool u_xlatb3;
					vec2 u_xlat4;
					float u_xlat12;
					int u_xlati12;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat1 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat1.x);
					    u_xlat0.x = float(0.0);
					    u_xlat0.y = float(0.0);
					    u_xlat0.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat1.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat3.x = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat3.x = u_xlat3.x * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat3.x = float(1.0) / u_xlat3.x;
					        u_xlat0.xyz = unity_LightColor[u_xlati_loop_1].xyz * u_xlat3.xxx + u_xlat0.xyz;
					    }
					    u_xlat0.xyz = u_xlat0.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat1.xyz = vec3(u_xlat12) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendAdd" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat12;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat2.xyz = vec3(u_xlat12) * u_xlat2.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat2.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					bool u_xlatb3;
					vec2 u_xlat4;
					float u_xlat12;
					int u_xlati12;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat1 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat1.x);
					    u_xlat0.x = float(0.0);
					    u_xlat0.y = float(0.0);
					    u_xlat0.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat1.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat3.x = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat3.x = u_xlat3.x * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat3.x = float(1.0) / u_xlat3.x;
					        u_xlat0.xyz = unity_LightColor[u_xlati_loop_1].xyz * u_xlat3.xxx + u_xlat0.xyz;
					    }
					    u_xlat0.xyz = u_xlat0.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat1.xyz = vec3(u_xlat12) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendAdd" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat12;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat2.xyz = vec3(u_xlat12) * u_xlat2.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat2.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					bool u_xlatb3;
					vec2 u_xlat4;
					float u_xlat12;
					int u_xlati12;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat1 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat1.x);
					    u_xlat0.x = float(0.0);
					    u_xlat0.y = float(0.0);
					    u_xlat0.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat1.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat3.x = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat3.x = u_xlat3.x * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat3.x = float(1.0) / u_xlat3.x;
					        u_xlat0.xyz = unity_LightColor[u_xlati_loop_1].xyz * u_xlat3.xxx + u_xlat0.xyz;
					    }
					    u_xlat0.xyz = u_xlat0.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat1.xyz = vec3(u_xlat12) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendAdd" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat12;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat2.xyz = vec3(u_xlat12) * u_xlat2.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat2.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					bool u_xlatb3;
					vec2 u_xlat4;
					float u_xlat12;
					int u_xlati12;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat1 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat1.x);
					    u_xlat0.x = float(0.0);
					    u_xlat0.y = float(0.0);
					    u_xlat0.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat1.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat3.x = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat3.x = u_xlat3.x * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat3.x = float(1.0) / u_xlat3.x;
					        u_xlat0.xyz = unity_LightColor[u_xlati_loop_1].xyz * u_xlat3.xxx + u_xlat0.xyz;
					    }
					    u_xlat0.xyz = u_xlat0.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat1.xyz = vec3(u_xlat12) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendAdd" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat12;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat2.xyz = vec3(u_xlat12) * u_xlat2.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat2.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					bool u_xlatb3;
					vec2 u_xlat4;
					float u_xlat12;
					int u_xlati12;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat1 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat1.x);
					    u_xlat0.x = float(0.0);
					    u_xlat0.y = float(0.0);
					    u_xlat0.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat1.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat3.x = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat3.x = u_xlat3.x * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat3.x = float(1.0) / u_xlat3.x;
					        u_xlat0.xyz = unity_LightColor[u_xlati_loop_1].xyz * u_xlat3.xxx + u_xlat0.xyz;
					    }
					    u_xlat0.xyz = u_xlat0.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat1.xyz = vec3(u_xlat12) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendAdd" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat12;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat2.xyz = vec3(u_xlat12) * u_xlat2.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat2.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					bool u_xlatb3;
					vec2 u_xlat4;
					float u_xlat12;
					int u_xlati12;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat1 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat1.x);
					    u_xlat0.x = float(0.0);
					    u_xlat0.y = float(0.0);
					    u_xlat0.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat1.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat3.x = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat3.x = u_xlat3.x * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat3.x = float(1.0) / u_xlat3.x;
					        u_xlat0.xyz = unity_LightColor[u_xlati_loop_1].xyz * u_xlat3.xxx + u_xlat0.xyz;
					    }
					    u_xlat0.xyz = u_xlat0.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat1.xyz = vec3(u_xlat12) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendAdd" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat12;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat2.xyz = vec3(u_xlat12) * u_xlat2.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat2.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					bool u_xlatb3;
					vec2 u_xlat4;
					float u_xlat12;
					int u_xlati12;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat1 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat1.x);
					    u_xlat0.x = float(0.0);
					    u_xlat0.y = float(0.0);
					    u_xlat0.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat1.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat3.x = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat3.x = u_xlat3.x * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat3.x = float(1.0) / u_xlat3.x;
					        u_xlat0.xyz = unity_LightColor[u_xlati_loop_1].xyz * u_xlat3.xxx + u_xlat0.xyz;
					    }
					    u_xlat0.xyz = u_xlat0.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat1.xyz = vec3(u_xlat12) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendAdd" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec2 u_xlat4;
					int u_xlati12;
					float u_xlat13;
					bool u_xlatb13;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat0 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat1.x = float(0.0);
					    u_xlat1.y = float(0.0);
					    u_xlat1.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat13 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat13 = u_xlat13 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat13 = float(1.0) / u_xlat13;
					        u_xlat1.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat13) + u_xlat1.xyz;
					    }
					    u_xlat0.xyz = u_xlat1.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendAdd" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec2 u_xlat4;
					int u_xlati12;
					float u_xlat13;
					bool u_xlatb13;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat0 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat1.x = float(0.0);
					    u_xlat1.y = float(0.0);
					    u_xlat1.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat13 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat13 = u_xlat13 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat13 = float(1.0) / u_xlat13;
					        u_xlat1.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat13) + u_xlat1.xyz;
					    }
					    u_xlat0.xyz = u_xlat1.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendAdd" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec2 u_xlat4;
					int u_xlati12;
					float u_xlat13;
					bool u_xlatb13;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat0 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat1.x = float(0.0);
					    u_xlat1.y = float(0.0);
					    u_xlat1.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat13 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat13 = u_xlat13 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat13 = float(1.0) / u_xlat13;
					        u_xlat1.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat13) + u_xlat1.xyz;
					    }
					    u_xlat0.xyz = u_xlat1.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendAdd" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec2 u_xlat4;
					int u_xlati12;
					float u_xlat13;
					bool u_xlatb13;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat0 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat1.x = float(0.0);
					    u_xlat1.y = float(0.0);
					    u_xlat1.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat13 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat13 = u_xlat13 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat13 = float(1.0) / u_xlat13;
					        u_xlat1.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat13) + u_xlat1.xyz;
					    }
					    u_xlat0.xyz = u_xlat1.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendAdd" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec2 u_xlat4;
					int u_xlati12;
					float u_xlat13;
					bool u_xlatb13;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat0 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat1.x = float(0.0);
					    u_xlat1.y = float(0.0);
					    u_xlat1.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat13 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat13 = u_xlat13 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat13 = float(1.0) / u_xlat13;
					        u_xlat1.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat13) + u_xlat1.xyz;
					    }
					    u_xlat0.xyz = u_xlat1.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendAdd" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec2 u_xlat4;
					int u_xlati12;
					float u_xlat13;
					bool u_xlatb13;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat0 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat1.x = float(0.0);
					    u_xlat1.y = float(0.0);
					    u_xlat1.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat13 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat13 = u_xlat13 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat13 = float(1.0) / u_xlat13;
					        u_xlat1.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat13) + u_xlat1.xyz;
					    }
					    u_xlat0.xyz = u_xlat1.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendAdd" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec2 u_xlat4;
					int u_xlati12;
					float u_xlat13;
					bool u_xlatb13;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat0 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat1.x = float(0.0);
					    u_xlat1.y = float(0.0);
					    u_xlat1.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat13 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat13 = u_xlat13 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat13 = float(1.0) / u_xlat13;
					        u_xlat1.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat13) + u_xlat1.xyz;
					    }
					    u_xlat0.xyz = u_xlat1.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendAdd" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec2 u_xlat4;
					int u_xlati12;
					float u_xlat13;
					bool u_xlatb13;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat0 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat1.x = float(0.0);
					    u_xlat1.y = float(0.0);
					    u_xlat1.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat13 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat13 = u_xlat13 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat13 = float(1.0) / u_xlat13;
					        u_xlat1.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat13) + u_xlat1.xyz;
					    }
					    u_xlat0.xyz = u_xlat1.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendAdd" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec2 u_xlat4;
					int u_xlati12;
					float u_xlat13;
					bool u_xlatb13;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat0 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat1.x = float(0.0);
					    u_xlat1.y = float(0.0);
					    u_xlat1.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat13 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat13 = u_xlat13 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat13 = float(1.0) / u_xlat13;
					        u_xlat1.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat13) + u_xlat1.xyz;
					    }
					    u_xlat0.xyz = u_xlat1.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendAdd" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec2 u_xlat4;
					int u_xlati12;
					float u_xlat13;
					bool u_xlatb13;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat0 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat1.x = float(0.0);
					    u_xlat1.y = float(0.0);
					    u_xlat1.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat13 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat13 = u_xlat13 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat13 = float(1.0) / u_xlat13;
					        u_xlat1.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat13) + u_xlat1.xyz;
					    }
					    u_xlat0.xyz = u_xlat1.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendAdd" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec2 u_xlat4;
					int u_xlati12;
					float u_xlat13;
					bool u_xlatb13;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat0 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat1.x = float(0.0);
					    u_xlat1.y = float(0.0);
					    u_xlat1.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat13 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat13 = u_xlat13 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat13 = float(1.0) / u_xlat13;
					        u_xlat1.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat13) + u_xlat1.xyz;
					    }
					    u_xlat0.xyz = u_xlat1.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendAdd" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec2 u_xlat4;
					int u_xlati12;
					float u_xlat13;
					bool u_xlatb13;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat0 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat1.x = float(0.0);
					    u_xlat1.y = float(0.0);
					    u_xlat1.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat13 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat13 = u_xlat13 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat13 = float(1.0) / u_xlat13;
					        u_xlat1.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat13) + u_xlat1.xyz;
					    }
					    u_xlat0.xyz = u_xlat1.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendAdd" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec2 u_xlat4;
					int u_xlati12;
					float u_xlat13;
					bool u_xlatb13;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat0 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat1.x = float(0.0);
					    u_xlat1.y = float(0.0);
					    u_xlat1.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat13 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat13 = u_xlat13 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat13 = float(1.0) / u_xlat13;
					        u_xlat1.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat13) + u_xlat1.xyz;
					    }
					    u_xlat0.xyz = u_xlat1.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendAdd" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec2 u_xlat4;
					int u_xlati12;
					float u_xlat13;
					bool u_xlatb13;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat0 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat1.x = float(0.0);
					    u_xlat1.y = float(0.0);
					    u_xlat1.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat13 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat13 = u_xlat13 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat13 = float(1.0) / u_xlat13;
					        u_xlat1.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat13) + u_xlat1.xyz;
					    }
					    u_xlat0.xyz = u_xlat1.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendAdd" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec2 u_xlat4;
					int u_xlati12;
					float u_xlat13;
					bool u_xlatb13;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat0 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat1.x = float(0.0);
					    u_xlat1.y = float(0.0);
					    u_xlat1.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat13 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat13 = u_xlat13 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat13 = float(1.0) / u_xlat13;
					        u_xlat1.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat13) + u_xlat1.xyz;
					    }
					    u_xlat0.xyz = u_xlat1.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendAdd" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec2 u_xlat4;
					int u_xlati12;
					float u_xlat13;
					bool u_xlatb13;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat0 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat1.x = float(0.0);
					    u_xlat1.y = float(0.0);
					    u_xlat1.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat13 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat13 = u_xlat13 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat13 = float(1.0) / u_xlat13;
					        u_xlat1.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat13) + u_xlat1.xyz;
					    }
					    u_xlat0.xyz = u_xlat1.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendAdd" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat12;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat2.xyz = vec3(u_xlat12) * u_xlat2.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat2.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					bool u_xlatb3;
					vec2 u_xlat4;
					float u_xlat12;
					int u_xlati12;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat1 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat1.x);
					    u_xlat0.x = float(0.0);
					    u_xlat0.y = float(0.0);
					    u_xlat0.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat1.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat3.x = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat3.x = u_xlat3.x * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat3.x = float(1.0) / u_xlat3.x;
					        u_xlat0.xyz = unity_LightColor[u_xlati_loop_1].xyz * u_xlat3.xxx + u_xlat0.xyz;
					    }
					    u_xlat0.xyz = u_xlat0.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat1.xyz = vec3(u_xlat12) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendAdd" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat12;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat2.xyz = vec3(u_xlat12) * u_xlat2.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat2.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					bool u_xlatb3;
					vec2 u_xlat4;
					float u_xlat12;
					int u_xlati12;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat1 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat1.x);
					    u_xlat0.x = float(0.0);
					    u_xlat0.y = float(0.0);
					    u_xlat0.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat1.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat3.x = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat3.x = u_xlat3.x * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat3.x = float(1.0) / u_xlat3.x;
					        u_xlat0.xyz = unity_LightColor[u_xlati_loop_1].xyz * u_xlat3.xxx + u_xlat0.xyz;
					    }
					    u_xlat0.xyz = u_xlat0.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat1.xyz = vec3(u_xlat12) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendAdd" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat12;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat2.xyz = vec3(u_xlat12) * u_xlat2.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat2.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					bool u_xlatb3;
					vec2 u_xlat4;
					float u_xlat12;
					int u_xlati12;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat1 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat1.x);
					    u_xlat0.x = float(0.0);
					    u_xlat0.y = float(0.0);
					    u_xlat0.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat1.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat3.x = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat3.x = u_xlat3.x * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat3.x = float(1.0) / u_xlat3.x;
					        u_xlat0.xyz = unity_LightColor[u_xlati_loop_1].xyz * u_xlat3.xxx + u_xlat0.xyz;
					    }
					    u_xlat0.xyz = u_xlat0.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat1.xyz = vec3(u_xlat12) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendAdd" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat12;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat2.xyz = vec3(u_xlat12) * u_xlat2.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat2.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					bool u_xlatb3;
					vec2 u_xlat4;
					float u_xlat12;
					int u_xlati12;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat1 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat1.x);
					    u_xlat0.x = float(0.0);
					    u_xlat0.y = float(0.0);
					    u_xlat0.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat1.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat3.x = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat3.x = u_xlat3.x * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat3.x = float(1.0) / u_xlat3.x;
					        u_xlat0.xyz = unity_LightColor[u_xlati_loop_1].xyz * u_xlat3.xxx + u_xlat0.xyz;
					    }
					    u_xlat0.xyz = u_xlat0.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat1.xyz = vec3(u_xlat12) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendAdd" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat12;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat2.xyz = vec3(u_xlat12) * u_xlat2.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat2.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					bool u_xlatb3;
					vec2 u_xlat4;
					float u_xlat12;
					int u_xlati12;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat1 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat1.x);
					    u_xlat0.x = float(0.0);
					    u_xlat0.y = float(0.0);
					    u_xlat0.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat1.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat3.x = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat3.x = u_xlat3.x * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat3.x = float(1.0) / u_xlat3.x;
					        u_xlat0.xyz = unity_LightColor[u_xlati_loop_1].xyz * u_xlat3.xxx + u_xlat0.xyz;
					    }
					    u_xlat0.xyz = u_xlat0.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat1.xyz = vec3(u_xlat12) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendAdd" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat12;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat2.xyz = vec3(u_xlat12) * u_xlat2.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat2.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					bool u_xlatb3;
					vec2 u_xlat4;
					float u_xlat12;
					int u_xlati12;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat1 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat1.x);
					    u_xlat0.x = float(0.0);
					    u_xlat0.y = float(0.0);
					    u_xlat0.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat1.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat3.x = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat3.x = u_xlat3.x * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat3.x = float(1.0) / u_xlat3.x;
					        u_xlat0.xyz = unity_LightColor[u_xlati_loop_1].xyz * u_xlat3.xxx + u_xlat0.xyz;
					    }
					    u_xlat0.xyz = u_xlat0.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat1.xyz = vec3(u_xlat12) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendAdd" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat12;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat2.xyz = vec3(u_xlat12) * u_xlat2.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat2.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					bool u_xlatb3;
					vec2 u_xlat4;
					float u_xlat12;
					int u_xlati12;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat1 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat1.x);
					    u_xlat0.x = float(0.0);
					    u_xlat0.y = float(0.0);
					    u_xlat0.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat1.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat3.x = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat3.x = u_xlat3.x * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat3.x = float(1.0) / u_xlat3.x;
					        u_xlat0.xyz = unity_LightColor[u_xlati_loop_1].xyz * u_xlat3.xxx + u_xlat0.xyz;
					    }
					    u_xlat0.xyz = u_xlat0.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat1.xyz = vec3(u_xlat12) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendAdd" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat12;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat2.xyz = vec3(u_xlat12) * u_xlat2.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat2.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					bool u_xlatb3;
					vec2 u_xlat4;
					float u_xlat12;
					int u_xlati12;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat1 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat1.x);
					    u_xlat0.x = float(0.0);
					    u_xlat0.y = float(0.0);
					    u_xlat0.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat1.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat3.x = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat3.x = u_xlat3.x * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat3.x = float(1.0) / u_xlat3.x;
					        u_xlat0.xyz = unity_LightColor[u_xlati_loop_1].xyz * u_xlat3.xxx + u_xlat0.xyz;
					    }
					    u_xlat0.xyz = u_xlat0.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat1.xyz = vec3(u_xlat12) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendAdd" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat12;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat2.xyz = vec3(u_xlat12) * u_xlat2.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat2.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					bool u_xlatb3;
					vec2 u_xlat4;
					float u_xlat12;
					int u_xlati12;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat1 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat1.x);
					    u_xlat0.x = float(0.0);
					    u_xlat0.y = float(0.0);
					    u_xlat0.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat1.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat3.x = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat3.x = u_xlat3.x * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat3.x = float(1.0) / u_xlat3.x;
					        u_xlat0.xyz = unity_LightColor[u_xlati_loop_1].xyz * u_xlat3.xxx + u_xlat0.xyz;
					    }
					    u_xlat0.xyz = u_xlat0.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat1.xyz = vec3(u_xlat12) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendAdd" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat12;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat2.xyz = vec3(u_xlat12) * u_xlat2.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat2.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					bool u_xlatb3;
					vec2 u_xlat4;
					float u_xlat12;
					int u_xlati12;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat1 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat1.x);
					    u_xlat0.x = float(0.0);
					    u_xlat0.y = float(0.0);
					    u_xlat0.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat1.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat3.x = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat3.x = u_xlat3.x * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat3.x = float(1.0) / u_xlat3.x;
					        u_xlat0.xyz = unity_LightColor[u_xlati_loop_1].xyz * u_xlat3.xxx + u_xlat0.xyz;
					    }
					    u_xlat0.xyz = u_xlat0.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat1.xyz = vec3(u_xlat12) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendAdd" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat12;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat2.xyz = vec3(u_xlat12) * u_xlat2.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat2.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					bool u_xlatb3;
					vec2 u_xlat4;
					float u_xlat12;
					int u_xlati12;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat1 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat1.x);
					    u_xlat0.x = float(0.0);
					    u_xlat0.y = float(0.0);
					    u_xlat0.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat1.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat3.x = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat3.x = u_xlat3.x * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat3.x = float(1.0) / u_xlat3.x;
					        u_xlat0.xyz = unity_LightColor[u_xlati_loop_1].xyz * u_xlat3.xxx + u_xlat0.xyz;
					    }
					    u_xlat0.xyz = u_xlat0.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat1.xyz = vec3(u_xlat12) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendAdd" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat12;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat2.xyz = vec3(u_xlat12) * u_xlat2.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat2.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					bool u_xlatb3;
					vec2 u_xlat4;
					float u_xlat12;
					int u_xlati12;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat1 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat1.x);
					    u_xlat0.x = float(0.0);
					    u_xlat0.y = float(0.0);
					    u_xlat0.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat1.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat3.x = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat3.x = u_xlat3.x * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat3.x = float(1.0) / u_xlat3.x;
					        u_xlat0.xyz = unity_LightColor[u_xlati_loop_1].xyz * u_xlat3.xxx + u_xlat0.xyz;
					    }
					    u_xlat0.xyz = u_xlat0.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat1.xyz = vec3(u_xlat12) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendAdd" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat12;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat2.xyz = vec3(u_xlat12) * u_xlat2.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat2.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					bool u_xlatb3;
					vec2 u_xlat4;
					float u_xlat12;
					int u_xlati12;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat1 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat1.x);
					    u_xlat0.x = float(0.0);
					    u_xlat0.y = float(0.0);
					    u_xlat0.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat1.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat3.x = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat3.x = u_xlat3.x * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat3.x = float(1.0) / u_xlat3.x;
					        u_xlat0.xyz = unity_LightColor[u_xlati_loop_1].xyz * u_xlat3.xxx + u_xlat0.xyz;
					    }
					    u_xlat0.xyz = u_xlat0.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat1.xyz = vec3(u_xlat12) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendAdd" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat12;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat2.xyz = vec3(u_xlat12) * u_xlat2.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat2.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					bool u_xlatb3;
					vec2 u_xlat4;
					float u_xlat12;
					int u_xlati12;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat1 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat1.x);
					    u_xlat0.x = float(0.0);
					    u_xlat0.y = float(0.0);
					    u_xlat0.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat1.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat3.x = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat3.x = u_xlat3.x * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat3.x = float(1.0) / u_xlat3.x;
					        u_xlat0.xyz = unity_LightColor[u_xlati_loop_1].xyz * u_xlat3.xxx + u_xlat0.xyz;
					    }
					    u_xlat0.xyz = u_xlat0.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat1.xyz = vec3(u_xlat12) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendAdd" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat12;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat2.xyz = vec3(u_xlat12) * u_xlat2.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat2.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					bool u_xlatb3;
					vec2 u_xlat4;
					float u_xlat12;
					int u_xlati12;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat1 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat1.x);
					    u_xlat0.x = float(0.0);
					    u_xlat0.y = float(0.0);
					    u_xlat0.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat1.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat3.x = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat3.x = u_xlat3.x * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat3.x = float(1.0) / u_xlat3.x;
					        u_xlat0.xyz = unity_LightColor[u_xlati_loop_1].xyz * u_xlat3.xxx + u_xlat0.xyz;
					    }
					    u_xlat0.xyz = u_xlat0.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat1.xyz = vec3(u_xlat12) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendAdd" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat12;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat2.xyz = vec3(u_xlat12) * u_xlat2.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat2.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					bool u_xlatb3;
					vec2 u_xlat4;
					float u_xlat12;
					int u_xlati12;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat1 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat1.x);
					    u_xlat0.x = float(0.0);
					    u_xlat0.y = float(0.0);
					    u_xlat0.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat1.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat3.x = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat3.x = u_xlat3.x * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat3.x = float(1.0) / u_xlat3.x;
					        u_xlat0.xyz = unity_LightColor[u_xlati_loop_1].xyz * u_xlat3.xxx + u_xlat0.xyz;
					    }
					    u_xlat0.xyz = u_xlat0.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat1.xyz = vec3(u_xlat12) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendAdd" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendAdd" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendAdd" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_8;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_10;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					float u_xlat20;
					bool u_xlatb20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat20 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 9.99999997e-07);
					        u_xlat3.x = inversesqrt(u_xlat20);
					        u_xlat5.xyz = u_xlat3.xxx * u_xlat5.xyz;
					        u_xlat20 = u_xlat20 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat20 = float(1.0) / u_xlat20;
					        u_xlat3.x = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat3.x = max(u_xlat3.x, 0.0);
					        u_xlat20 = u_xlat20 * u_xlat3.x;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat20) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_8;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_10;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					float u_xlat20;
					bool u_xlatb20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat20 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 9.99999997e-07);
					        u_xlat3.x = inversesqrt(u_xlat20);
					        u_xlat5.xyz = u_xlat3.xxx * u_xlat5.xyz;
					        u_xlat20 = u_xlat20 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat20 = float(1.0) / u_xlat20;
					        u_xlat3.x = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat3.x = max(u_xlat3.x, 0.0);
					        u_xlat20 = u_xlat20 * u_xlat3.x;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat20) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_8;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_10;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					float u_xlat20;
					bool u_xlatb20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat20 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 9.99999997e-07);
					        u_xlat3.x = inversesqrt(u_xlat20);
					        u_xlat5.xyz = u_xlat3.xxx * u_xlat5.xyz;
					        u_xlat20 = u_xlat20 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat20 = float(1.0) / u_xlat20;
					        u_xlat3.x = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat3.x = max(u_xlat3.x, 0.0);
					        u_xlat20 = u_xlat20 * u_xlat3.x;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat20) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_8;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_10;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					float u_xlat20;
					bool u_xlatb20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat20 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 9.99999997e-07);
					        u_xlat3.x = inversesqrt(u_xlat20);
					        u_xlat5.xyz = u_xlat3.xxx * u_xlat5.xyz;
					        u_xlat20 = u_xlat20 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat20 = float(1.0) / u_xlat20;
					        u_xlat3.x = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat3.x = max(u_xlat3.x, 0.0);
					        u_xlat20 = u_xlat20 * u_xlat3.x;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat20) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_8;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_10;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					float u_xlat20;
					bool u_xlatb20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat20 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 9.99999997e-07);
					        u_xlat3.x = inversesqrt(u_xlat20);
					        u_xlat5.xyz = u_xlat3.xxx * u_xlat5.xyz;
					        u_xlat20 = u_xlat20 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat20 = float(1.0) / u_xlat20;
					        u_xlat3.x = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat3.x = max(u_xlat3.x, 0.0);
					        u_xlat20 = u_xlat20 * u_xlat3.x;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat20) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_8;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_10;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					float u_xlat20;
					bool u_xlatb20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat20 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 9.99999997e-07);
					        u_xlat3.x = inversesqrt(u_xlat20);
					        u_xlat5.xyz = u_xlat3.xxx * u_xlat5.xyz;
					        u_xlat20 = u_xlat20 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat20 = float(1.0) / u_xlat20;
					        u_xlat3.x = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat3.x = max(u_xlat3.x, 0.0);
					        u_xlat20 = u_xlat20 * u_xlat3.x;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat20) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_8;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_10;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					float u_xlat20;
					bool u_xlatb20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat20 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 9.99999997e-07);
					        u_xlat3.x = inversesqrt(u_xlat20);
					        u_xlat5.xyz = u_xlat3.xxx * u_xlat5.xyz;
					        u_xlat20 = u_xlat20 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat20 = float(1.0) / u_xlat20;
					        u_xlat3.x = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat3.x = max(u_xlat3.x, 0.0);
					        u_xlat20 = u_xlat20 * u_xlat3.x;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat20) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_8;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_10;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					float u_xlat20;
					bool u_xlatb20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat20 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 9.99999997e-07);
					        u_xlat3.x = inversesqrt(u_xlat20);
					        u_xlat5.xyz = u_xlat3.xxx * u_xlat5.xyz;
					        u_xlat20 = u_xlat20 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat20 = float(1.0) / u_xlat20;
					        u_xlat3.x = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat3.x = max(u_xlat3.x, 0.0);
					        u_xlat20 = u_xlat20 * u_xlat3.x;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat20) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendAdd" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_8;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_10;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					float u_xlat20;
					bool u_xlatb20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat20 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 9.99999997e-07);
					        u_xlat3.x = inversesqrt(u_xlat20);
					        u_xlat5.xyz = u_xlat3.xxx * u_xlat5.xyz;
					        u_xlat20 = u_xlat20 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat20 = float(1.0) / u_xlat20;
					        u_xlat3.x = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat3.x = max(u_xlat3.x, 0.0);
					        u_xlat20 = u_xlat20 * u_xlat3.x;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat20) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_8;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_10;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					float u_xlat20;
					bool u_xlatb20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat20 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 9.99999997e-07);
					        u_xlat3.x = inversesqrt(u_xlat20);
					        u_xlat5.xyz = u_xlat3.xxx * u_xlat5.xyz;
					        u_xlat20 = u_xlat20 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat20 = float(1.0) / u_xlat20;
					        u_xlat3.x = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat3.x = max(u_xlat3.x, 0.0);
					        u_xlat20 = u_xlat20 * u_xlat3.x;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat20) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_8;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_10;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					float u_xlat20;
					bool u_xlatb20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat20 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 9.99999997e-07);
					        u_xlat3.x = inversesqrt(u_xlat20);
					        u_xlat5.xyz = u_xlat3.xxx * u_xlat5.xyz;
					        u_xlat20 = u_xlat20 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat20 = float(1.0) / u_xlat20;
					        u_xlat3.x = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat3.x = max(u_xlat3.x, 0.0);
					        u_xlat20 = u_xlat20 * u_xlat3.x;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat20) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_8;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_10;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					float u_xlat20;
					bool u_xlatb20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat20 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 9.99999997e-07);
					        u_xlat3.x = inversesqrt(u_xlat20);
					        u_xlat5.xyz = u_xlat3.xxx * u_xlat5.xyz;
					        u_xlat20 = u_xlat20 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat20 = float(1.0) / u_xlat20;
					        u_xlat3.x = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat3.x = max(u_xlat3.x, 0.0);
					        u_xlat20 = u_xlat20 * u_xlat3.x;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat20) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_8;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_10;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					float u_xlat20;
					bool u_xlatb20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat20 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 9.99999997e-07);
					        u_xlat3.x = inversesqrt(u_xlat20);
					        u_xlat5.xyz = u_xlat3.xxx * u_xlat5.xyz;
					        u_xlat20 = u_xlat20 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat20 = float(1.0) / u_xlat20;
					        u_xlat3.x = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat3.x = max(u_xlat3.x, 0.0);
					        u_xlat20 = u_xlat20 * u_xlat3.x;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat20) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_8;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_10;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					float u_xlat20;
					bool u_xlatb20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat20 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 9.99999997e-07);
					        u_xlat3.x = inversesqrt(u_xlat20);
					        u_xlat5.xyz = u_xlat3.xxx * u_xlat5.xyz;
					        u_xlat20 = u_xlat20 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat20 = float(1.0) / u_xlat20;
					        u_xlat3.x = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat3.x = max(u_xlat3.x, 0.0);
					        u_xlat20 = u_xlat20 * u_xlat3.x;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat20) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_8;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_10;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					float u_xlat20;
					bool u_xlatb20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat20 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 9.99999997e-07);
					        u_xlat3.x = inversesqrt(u_xlat20);
					        u_xlat5.xyz = u_xlat3.xxx * u_xlat5.xyz;
					        u_xlat20 = u_xlat20 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat20 = float(1.0) / u_xlat20;
					        u_xlat3.x = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat3.x = max(u_xlat3.x, 0.0);
					        u_xlat20 = u_xlat20 * u_xlat3.x;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat20) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_8;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_10;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					float u_xlat20;
					bool u_xlatb20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat20 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 9.99999997e-07);
					        u_xlat3.x = inversesqrt(u_xlat20);
					        u_xlat5.xyz = u_xlat3.xxx * u_xlat5.xyz;
					        u_xlat20 = u_xlat20 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat20 = float(1.0) / u_xlat20;
					        u_xlat3.x = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat3.x = max(u_xlat3.x, 0.0);
					        u_xlat20 = u_xlat20 * u_xlat3.x;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat20) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendAdd" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendAdd" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendAdd" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_8;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_10;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					float u_xlat20;
					bool u_xlatb20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat20 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 9.99999997e-07);
					        u_xlat3.x = inversesqrt(u_xlat20);
					        u_xlat5.xyz = u_xlat3.xxx * u_xlat5.xyz;
					        u_xlat20 = u_xlat20 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat20 = float(1.0) / u_xlat20;
					        u_xlat3.x = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat3.x = max(u_xlat3.x, 0.0);
					        u_xlat20 = u_xlat20 * u_xlat3.x;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat20) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_8;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_10;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					float u_xlat20;
					bool u_xlatb20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat20 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 9.99999997e-07);
					        u_xlat3.x = inversesqrt(u_xlat20);
					        u_xlat5.xyz = u_xlat3.xxx * u_xlat5.xyz;
					        u_xlat20 = u_xlat20 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat20 = float(1.0) / u_xlat20;
					        u_xlat3.x = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat3.x = max(u_xlat3.x, 0.0);
					        u_xlat20 = u_xlat20 * u_xlat3.x;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat20) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_8;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_10;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					float u_xlat20;
					bool u_xlatb20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat20 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 9.99999997e-07);
					        u_xlat3.x = inversesqrt(u_xlat20);
					        u_xlat5.xyz = u_xlat3.xxx * u_xlat5.xyz;
					        u_xlat20 = u_xlat20 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat20 = float(1.0) / u_xlat20;
					        u_xlat3.x = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat3.x = max(u_xlat3.x, 0.0);
					        u_xlat20 = u_xlat20 * u_xlat3.x;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat20) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_8;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_10;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					float u_xlat20;
					bool u_xlatb20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat20 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 9.99999997e-07);
					        u_xlat3.x = inversesqrt(u_xlat20);
					        u_xlat5.xyz = u_xlat3.xxx * u_xlat5.xyz;
					        u_xlat20 = u_xlat20 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat20 = float(1.0) / u_xlat20;
					        u_xlat3.x = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat3.x = max(u_xlat3.x, 0.0);
					        u_xlat20 = u_xlat20 * u_xlat3.x;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat20) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_8;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_10;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					float u_xlat20;
					bool u_xlatb20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat20 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 9.99999997e-07);
					        u_xlat3.x = inversesqrt(u_xlat20);
					        u_xlat5.xyz = u_xlat3.xxx * u_xlat5.xyz;
					        u_xlat20 = u_xlat20 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat20 = float(1.0) / u_xlat20;
					        u_xlat3.x = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat3.x = max(u_xlat3.x, 0.0);
					        u_xlat20 = u_xlat20 * u_xlat3.x;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat20) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_8;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_10;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					float u_xlat20;
					bool u_xlatb20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat20 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 9.99999997e-07);
					        u_xlat3.x = inversesqrt(u_xlat20);
					        u_xlat5.xyz = u_xlat3.xxx * u_xlat5.xyz;
					        u_xlat20 = u_xlat20 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat20 = float(1.0) / u_xlat20;
					        u_xlat3.x = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat3.x = max(u_xlat3.x, 0.0);
					        u_xlat20 = u_xlat20 * u_xlat3.x;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat20) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_8;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_10;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					float u_xlat20;
					bool u_xlatb20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat20 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 9.99999997e-07);
					        u_xlat3.x = inversesqrt(u_xlat20);
					        u_xlat5.xyz = u_xlat3.xxx * u_xlat5.xyz;
					        u_xlat20 = u_xlat20 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat20 = float(1.0) / u_xlat20;
					        u_xlat3.x = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat3.x = max(u_xlat3.x, 0.0);
					        u_xlat20 = u_xlat20 * u_xlat3.x;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat20) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_8;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_10;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					float u_xlat20;
					bool u_xlatb20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat20 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 9.99999997e-07);
					        u_xlat3.x = inversesqrt(u_xlat20);
					        u_xlat5.xyz = u_xlat3.xxx * u_xlat5.xyz;
					        u_xlat20 = u_xlat20 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat20 = float(1.0) / u_xlat20;
					        u_xlat3.x = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat3.x = max(u_xlat3.x, 0.0);
					        u_xlat20 = u_xlat20 * u_xlat3.x;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat20) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendAdd" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_8;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_10;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					float u_xlat20;
					bool u_xlatb20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat20 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 9.99999997e-07);
					        u_xlat3.x = inversesqrt(u_xlat20);
					        u_xlat5.xyz = u_xlat3.xxx * u_xlat5.xyz;
					        u_xlat20 = u_xlat20 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat20 = float(1.0) / u_xlat20;
					        u_xlat3.x = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat3.x = max(u_xlat3.x, 0.0);
					        u_xlat20 = u_xlat20 * u_xlat3.x;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat20) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_8;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_10;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					float u_xlat20;
					bool u_xlatb20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat20 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 9.99999997e-07);
					        u_xlat3.x = inversesqrt(u_xlat20);
					        u_xlat5.xyz = u_xlat3.xxx * u_xlat5.xyz;
					        u_xlat20 = u_xlat20 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat20 = float(1.0) / u_xlat20;
					        u_xlat3.x = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat3.x = max(u_xlat3.x, 0.0);
					        u_xlat20 = u_xlat20 * u_xlat3.x;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat20) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_8;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_10;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					float u_xlat20;
					bool u_xlatb20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat20 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 9.99999997e-07);
					        u_xlat3.x = inversesqrt(u_xlat20);
					        u_xlat5.xyz = u_xlat3.xxx * u_xlat5.xyz;
					        u_xlat20 = u_xlat20 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat20 = float(1.0) / u_xlat20;
					        u_xlat3.x = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat3.x = max(u_xlat3.x, 0.0);
					        u_xlat20 = u_xlat20 * u_xlat3.x;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat20) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_8;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_10;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					float u_xlat20;
					bool u_xlatb20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat20 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 9.99999997e-07);
					        u_xlat3.x = inversesqrt(u_xlat20);
					        u_xlat5.xyz = u_xlat3.xxx * u_xlat5.xyz;
					        u_xlat20 = u_xlat20 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat20 = float(1.0) / u_xlat20;
					        u_xlat3.x = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat3.x = max(u_xlat3.x, 0.0);
					        u_xlat20 = u_xlat20 * u_xlat3.x;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat20) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_8;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_10;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					float u_xlat20;
					bool u_xlatb20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat20 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 9.99999997e-07);
					        u_xlat3.x = inversesqrt(u_xlat20);
					        u_xlat5.xyz = u_xlat3.xxx * u_xlat5.xyz;
					        u_xlat20 = u_xlat20 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat20 = float(1.0) / u_xlat20;
					        u_xlat3.x = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat3.x = max(u_xlat3.x, 0.0);
					        u_xlat20 = u_xlat20 * u_xlat3.x;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat20) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_8;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_10;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					float u_xlat20;
					bool u_xlatb20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat20 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 9.99999997e-07);
					        u_xlat3.x = inversesqrt(u_xlat20);
					        u_xlat5.xyz = u_xlat3.xxx * u_xlat5.xyz;
					        u_xlat20 = u_xlat20 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat20 = float(1.0) / u_xlat20;
					        u_xlat3.x = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat3.x = max(u_xlat3.x, 0.0);
					        u_xlat20 = u_xlat20 * u_xlat3.x;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat20) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_8;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_10;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					float u_xlat20;
					bool u_xlatb20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat20 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 9.99999997e-07);
					        u_xlat3.x = inversesqrt(u_xlat20);
					        u_xlat5.xyz = u_xlat3.xxx * u_xlat5.xyz;
					        u_xlat20 = u_xlat20 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat20 = float(1.0) / u_xlat20;
					        u_xlat3.x = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat3.x = max(u_xlat3.x, 0.0);
					        u_xlat20 = u_xlat20 * u_xlat3.x;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat20) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_8;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_10;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					float u_xlat20;
					bool u_xlatb20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat20 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 9.99999997e-07);
					        u_xlat3.x = inversesqrt(u_xlat20);
					        u_xlat5.xyz = u_xlat3.xxx * u_xlat5.xyz;
					        u_xlat20 = u_xlat20 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat20 = float(1.0) / u_xlat20;
					        u_xlat3.x = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat3.x = max(u_xlat3.x, 0.0);
					        u_xlat20 = u_xlat20 * u_xlat3.x;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat20) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendAdd" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendAdd" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendAdd" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_8;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_10;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					float u_xlat20;
					bool u_xlatb20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat20 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 9.99999997e-07);
					        u_xlat3.x = inversesqrt(u_xlat20);
					        u_xlat5.xyz = u_xlat3.xxx * u_xlat5.xyz;
					        u_xlat20 = u_xlat20 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat20 = float(1.0) / u_xlat20;
					        u_xlat3.x = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat3.x = max(u_xlat3.x, 0.0);
					        u_xlat20 = u_xlat20 * u_xlat3.x;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat20) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_8;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_10;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					float u_xlat20;
					bool u_xlatb20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat20 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 9.99999997e-07);
					        u_xlat3.x = inversesqrt(u_xlat20);
					        u_xlat5.xyz = u_xlat3.xxx * u_xlat5.xyz;
					        u_xlat20 = u_xlat20 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat20 = float(1.0) / u_xlat20;
					        u_xlat3.x = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat3.x = max(u_xlat3.x, 0.0);
					        u_xlat20 = u_xlat20 * u_xlat3.x;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat20) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_8;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_10;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					float u_xlat20;
					bool u_xlatb20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat20 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 9.99999997e-07);
					        u_xlat3.x = inversesqrt(u_xlat20);
					        u_xlat5.xyz = u_xlat3.xxx * u_xlat5.xyz;
					        u_xlat20 = u_xlat20 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat20 = float(1.0) / u_xlat20;
					        u_xlat3.x = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat3.x = max(u_xlat3.x, 0.0);
					        u_xlat20 = u_xlat20 * u_xlat3.x;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat20) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_8;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_10;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					float u_xlat20;
					bool u_xlatb20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat20 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 9.99999997e-07);
					        u_xlat3.x = inversesqrt(u_xlat20);
					        u_xlat5.xyz = u_xlat3.xxx * u_xlat5.xyz;
					        u_xlat20 = u_xlat20 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat20 = float(1.0) / u_xlat20;
					        u_xlat3.x = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat3.x = max(u_xlat3.x, 0.0);
					        u_xlat20 = u_xlat20 * u_xlat3.x;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat20) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_8;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_10;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					float u_xlat20;
					bool u_xlatb20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat20 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 9.99999997e-07);
					        u_xlat3.x = inversesqrt(u_xlat20);
					        u_xlat5.xyz = u_xlat3.xxx * u_xlat5.xyz;
					        u_xlat20 = u_xlat20 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat20 = float(1.0) / u_xlat20;
					        u_xlat3.x = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat3.x = max(u_xlat3.x, 0.0);
					        u_xlat20 = u_xlat20 * u_xlat3.x;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat20) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_8;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_10;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					float u_xlat20;
					bool u_xlatb20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat20 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 9.99999997e-07);
					        u_xlat3.x = inversesqrt(u_xlat20);
					        u_xlat5.xyz = u_xlat3.xxx * u_xlat5.xyz;
					        u_xlat20 = u_xlat20 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat20 = float(1.0) / u_xlat20;
					        u_xlat3.x = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat3.x = max(u_xlat3.x, 0.0);
					        u_xlat20 = u_xlat20 * u_xlat3.x;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat20) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_8;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_10;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					float u_xlat20;
					bool u_xlatb20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat20 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 9.99999997e-07);
					        u_xlat3.x = inversesqrt(u_xlat20);
					        u_xlat5.xyz = u_xlat3.xxx * u_xlat5.xyz;
					        u_xlat20 = u_xlat20 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat20 = float(1.0) / u_xlat20;
					        u_xlat3.x = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat3.x = max(u_xlat3.x, 0.0);
					        u_xlat20 = u_xlat20 * u_xlat3.x;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat20) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_8;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_10;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					float u_xlat20;
					bool u_xlatb20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat20 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 9.99999997e-07);
					        u_xlat3.x = inversesqrt(u_xlat20);
					        u_xlat5.xyz = u_xlat3.xxx * u_xlat5.xyz;
					        u_xlat20 = u_xlat20 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat20 = float(1.0) / u_xlat20;
					        u_xlat3.x = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat3.x = max(u_xlat3.x, 0.0);
					        u_xlat20 = u_xlat20 * u_xlat3.x;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat20) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendAdd" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_8;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_10;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					float u_xlat20;
					bool u_xlatb20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat20 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 9.99999997e-07);
					        u_xlat3.x = inversesqrt(u_xlat20);
					        u_xlat5.xyz = u_xlat3.xxx * u_xlat5.xyz;
					        u_xlat20 = u_xlat20 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat20 = float(1.0) / u_xlat20;
					        u_xlat3.x = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat3.x = max(u_xlat3.x, 0.0);
					        u_xlat20 = u_xlat20 * u_xlat3.x;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat20) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_8;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_10;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					float u_xlat20;
					bool u_xlatb20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat20 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 9.99999997e-07);
					        u_xlat3.x = inversesqrt(u_xlat20);
					        u_xlat5.xyz = u_xlat3.xxx * u_xlat5.xyz;
					        u_xlat20 = u_xlat20 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat20 = float(1.0) / u_xlat20;
					        u_xlat3.x = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat3.x = max(u_xlat3.x, 0.0);
					        u_xlat20 = u_xlat20 * u_xlat3.x;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat20) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_8;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_10;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					float u_xlat20;
					bool u_xlatb20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat20 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 9.99999997e-07);
					        u_xlat3.x = inversesqrt(u_xlat20);
					        u_xlat5.xyz = u_xlat3.xxx * u_xlat5.xyz;
					        u_xlat20 = u_xlat20 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat20 = float(1.0) / u_xlat20;
					        u_xlat3.x = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat3.x = max(u_xlat3.x, 0.0);
					        u_xlat20 = u_xlat20 * u_xlat3.x;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat20) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_8;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_10;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					float u_xlat20;
					bool u_xlatb20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat20 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 9.99999997e-07);
					        u_xlat3.x = inversesqrt(u_xlat20);
					        u_xlat5.xyz = u_xlat3.xxx * u_xlat5.xyz;
					        u_xlat20 = u_xlat20 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat20 = float(1.0) / u_xlat20;
					        u_xlat3.x = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat3.x = max(u_xlat3.x, 0.0);
					        u_xlat20 = u_xlat20 * u_xlat3.x;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat20) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_8;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_10;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					float u_xlat20;
					bool u_xlatb20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat20 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 9.99999997e-07);
					        u_xlat3.x = inversesqrt(u_xlat20);
					        u_xlat5.xyz = u_xlat3.xxx * u_xlat5.xyz;
					        u_xlat20 = u_xlat20 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat20 = float(1.0) / u_xlat20;
					        u_xlat3.x = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat3.x = max(u_xlat3.x, 0.0);
					        u_xlat20 = u_xlat20 * u_xlat3.x;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat20) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_8;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_10;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					float u_xlat20;
					bool u_xlatb20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat20 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 9.99999997e-07);
					        u_xlat3.x = inversesqrt(u_xlat20);
					        u_xlat5.xyz = u_xlat3.xxx * u_xlat5.xyz;
					        u_xlat20 = u_xlat20 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat20 = float(1.0) / u_xlat20;
					        u_xlat3.x = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat3.x = max(u_xlat3.x, 0.0);
					        u_xlat20 = u_xlat20 * u_xlat3.x;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat20) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_8;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_10;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					float u_xlat20;
					bool u_xlatb20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat20 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 9.99999997e-07);
					        u_xlat3.x = inversesqrt(u_xlat20);
					        u_xlat5.xyz = u_xlat3.xxx * u_xlat5.xyz;
					        u_xlat20 = u_xlat20 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat20 = float(1.0) / u_xlat20;
					        u_xlat3.x = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat3.x = max(u_xlat3.x, 0.0);
					        u_xlat20 = u_xlat20 * u_xlat3.x;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat20) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_8;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_10;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					float u_xlat20;
					bool u_xlatb20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat20 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 9.99999997e-07);
					        u_xlat3.x = inversesqrt(u_xlat20);
					        u_xlat5.xyz = u_xlat3.xxx * u_xlat5.xyz;
					        u_xlat20 = u_xlat20 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat20 = float(1.0) / u_xlat20;
					        u_xlat3.x = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat3.x = max(u_xlat3.x, 0.0);
					        u_xlat20 = u_xlat20 * u_xlat3.x;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat20) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendAdd" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendAdd" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendAdd" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_8;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_10;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					float u_xlat20;
					bool u_xlatb20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat20 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 9.99999997e-07);
					        u_xlat3.x = inversesqrt(u_xlat20);
					        u_xlat5.xyz = u_xlat3.xxx * u_xlat5.xyz;
					        u_xlat20 = u_xlat20 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat20 = float(1.0) / u_xlat20;
					        u_xlat3.x = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat3.x = max(u_xlat3.x, 0.0);
					        u_xlat20 = u_xlat20 * u_xlat3.x;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat20) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_8;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_10;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					float u_xlat20;
					bool u_xlatb20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat20 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 9.99999997e-07);
					        u_xlat3.x = inversesqrt(u_xlat20);
					        u_xlat5.xyz = u_xlat3.xxx * u_xlat5.xyz;
					        u_xlat20 = u_xlat20 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat20 = float(1.0) / u_xlat20;
					        u_xlat3.x = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat3.x = max(u_xlat3.x, 0.0);
					        u_xlat20 = u_xlat20 * u_xlat3.x;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat20) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_8;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_10;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					float u_xlat20;
					bool u_xlatb20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat20 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 9.99999997e-07);
					        u_xlat3.x = inversesqrt(u_xlat20);
					        u_xlat5.xyz = u_xlat3.xxx * u_xlat5.xyz;
					        u_xlat20 = u_xlat20 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat20 = float(1.0) / u_xlat20;
					        u_xlat3.x = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat3.x = max(u_xlat3.x, 0.0);
					        u_xlat20 = u_xlat20 * u_xlat3.x;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat20) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_8;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_10;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					float u_xlat20;
					bool u_xlatb20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat20 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 9.99999997e-07);
					        u_xlat3.x = inversesqrt(u_xlat20);
					        u_xlat5.xyz = u_xlat3.xxx * u_xlat5.xyz;
					        u_xlat20 = u_xlat20 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat20 = float(1.0) / u_xlat20;
					        u_xlat3.x = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat3.x = max(u_xlat3.x, 0.0);
					        u_xlat20 = u_xlat20 * u_xlat3.x;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat20) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_8;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_10;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					float u_xlat20;
					bool u_xlatb20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat20 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 9.99999997e-07);
					        u_xlat3.x = inversesqrt(u_xlat20);
					        u_xlat5.xyz = u_xlat3.xxx * u_xlat5.xyz;
					        u_xlat20 = u_xlat20 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat20 = float(1.0) / u_xlat20;
					        u_xlat3.x = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat3.x = max(u_xlat3.x, 0.0);
					        u_xlat20 = u_xlat20 * u_xlat3.x;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat20) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_8;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_10;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					float u_xlat20;
					bool u_xlatb20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat20 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 9.99999997e-07);
					        u_xlat3.x = inversesqrt(u_xlat20);
					        u_xlat5.xyz = u_xlat3.xxx * u_xlat5.xyz;
					        u_xlat20 = u_xlat20 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat20 = float(1.0) / u_xlat20;
					        u_xlat3.x = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat3.x = max(u_xlat3.x, 0.0);
					        u_xlat20 = u_xlat20 * u_xlat3.x;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat20) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_8;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_10;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					float u_xlat20;
					bool u_xlatb20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat20 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 9.99999997e-07);
					        u_xlat3.x = inversesqrt(u_xlat20);
					        u_xlat5.xyz = u_xlat3.xxx * u_xlat5.xyz;
					        u_xlat20 = u_xlat20 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat20 = float(1.0) / u_xlat20;
					        u_xlat3.x = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat3.x = max(u_xlat3.x, 0.0);
					        u_xlat20 = u_xlat20 * u_xlat3.x;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat20) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_8;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_10;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					float u_xlat20;
					bool u_xlatb20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat20 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 9.99999997e-07);
					        u_xlat3.x = inversesqrt(u_xlat20);
					        u_xlat5.xyz = u_xlat3.xxx * u_xlat5.xyz;
					        u_xlat20 = u_xlat20 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat20 = float(1.0) / u_xlat20;
					        u_xlat3.x = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat3.x = max(u_xlat3.x, 0.0);
					        u_xlat20 = u_xlat20 * u_xlat3.x;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat20) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendAdd" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_8;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_10;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					float u_xlat20;
					bool u_xlatb20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat20 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 9.99999997e-07);
					        u_xlat3.x = inversesqrt(u_xlat20);
					        u_xlat5.xyz = u_xlat3.xxx * u_xlat5.xyz;
					        u_xlat20 = u_xlat20 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat20 = float(1.0) / u_xlat20;
					        u_xlat3.x = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat3.x = max(u_xlat3.x, 0.0);
					        u_xlat20 = u_xlat20 * u_xlat3.x;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat20) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_8;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_10;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					float u_xlat20;
					bool u_xlatb20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat20 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 9.99999997e-07);
					        u_xlat3.x = inversesqrt(u_xlat20);
					        u_xlat5.xyz = u_xlat3.xxx * u_xlat5.xyz;
					        u_xlat20 = u_xlat20 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat20 = float(1.0) / u_xlat20;
					        u_xlat3.x = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat3.x = max(u_xlat3.x, 0.0);
					        u_xlat20 = u_xlat20 * u_xlat3.x;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat20) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_8;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_10;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					float u_xlat20;
					bool u_xlatb20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat20 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 9.99999997e-07);
					        u_xlat3.x = inversesqrt(u_xlat20);
					        u_xlat5.xyz = u_xlat3.xxx * u_xlat5.xyz;
					        u_xlat20 = u_xlat20 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat20 = float(1.0) / u_xlat20;
					        u_xlat3.x = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat3.x = max(u_xlat3.x, 0.0);
					        u_xlat20 = u_xlat20 * u_xlat3.x;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat20) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_8;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_10;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					float u_xlat20;
					bool u_xlatb20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat20 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 9.99999997e-07);
					        u_xlat3.x = inversesqrt(u_xlat20);
					        u_xlat5.xyz = u_xlat3.xxx * u_xlat5.xyz;
					        u_xlat20 = u_xlat20 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat20 = float(1.0) / u_xlat20;
					        u_xlat3.x = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat3.x = max(u_xlat3.x, 0.0);
					        u_xlat20 = u_xlat20 * u_xlat3.x;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat20) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_8;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_10;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					float u_xlat20;
					bool u_xlatb20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat20 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 9.99999997e-07);
					        u_xlat3.x = inversesqrt(u_xlat20);
					        u_xlat5.xyz = u_xlat3.xxx * u_xlat5.xyz;
					        u_xlat20 = u_xlat20 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat20 = float(1.0) / u_xlat20;
					        u_xlat3.x = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat3.x = max(u_xlat3.x, 0.0);
					        u_xlat20 = u_xlat20 * u_xlat3.x;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat20) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_8;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_10;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					float u_xlat20;
					bool u_xlatb20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat20 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 9.99999997e-07);
					        u_xlat3.x = inversesqrt(u_xlat20);
					        u_xlat5.xyz = u_xlat3.xxx * u_xlat5.xyz;
					        u_xlat20 = u_xlat20 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat20 = float(1.0) / u_xlat20;
					        u_xlat3.x = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat3.x = max(u_xlat3.x, 0.0);
					        u_xlat20 = u_xlat20 * u_xlat3.x;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat20) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_8;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_10;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					float u_xlat20;
					bool u_xlatb20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat20 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 9.99999997e-07);
					        u_xlat3.x = inversesqrt(u_xlat20);
					        u_xlat5.xyz = u_xlat3.xxx * u_xlat5.xyz;
					        u_xlat20 = u_xlat20 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat20 = float(1.0) / u_xlat20;
					        u_xlat3.x = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat3.x = max(u_xlat3.x, 0.0);
					        u_xlat20 = u_xlat20 * u_xlat3.x;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat20) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_8;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_10;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					float u_xlat20;
					bool u_xlatb20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat20 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 9.99999997e-07);
					        u_xlat3.x = inversesqrt(u_xlat20);
					        u_xlat5.xyz = u_xlat3.xxx * u_xlat5.xyz;
					        u_xlat20 = u_xlat20 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat20 = float(1.0) / u_xlat20;
					        u_xlat3.x = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat3.x = max(u_xlat3.x, 0.0);
					        u_xlat20 = u_xlat20 * u_xlat3.x;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat20) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendAdd" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendAdd" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendAdd" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_8;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_10;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					float u_xlat20;
					bool u_xlatb20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat20 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 9.99999997e-07);
					        u_xlat3.x = inversesqrt(u_xlat20);
					        u_xlat5.xyz = u_xlat3.xxx * u_xlat5.xyz;
					        u_xlat20 = u_xlat20 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat20 = float(1.0) / u_xlat20;
					        u_xlat3.x = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat3.x = max(u_xlat3.x, 0.0);
					        u_xlat20 = u_xlat20 * u_xlat3.x;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat20) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_8;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_10;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					float u_xlat20;
					bool u_xlatb20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat20 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 9.99999997e-07);
					        u_xlat3.x = inversesqrt(u_xlat20);
					        u_xlat5.xyz = u_xlat3.xxx * u_xlat5.xyz;
					        u_xlat20 = u_xlat20 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat20 = float(1.0) / u_xlat20;
					        u_xlat3.x = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat3.x = max(u_xlat3.x, 0.0);
					        u_xlat20 = u_xlat20 * u_xlat3.x;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat20) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_8;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_10;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					float u_xlat20;
					bool u_xlatb20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat20 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 9.99999997e-07);
					        u_xlat3.x = inversesqrt(u_xlat20);
					        u_xlat5.xyz = u_xlat3.xxx * u_xlat5.xyz;
					        u_xlat20 = u_xlat20 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat20 = float(1.0) / u_xlat20;
					        u_xlat3.x = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat3.x = max(u_xlat3.x, 0.0);
					        u_xlat20 = u_xlat20 * u_xlat3.x;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat20) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_8;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_10;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					float u_xlat20;
					bool u_xlatb20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat20 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 9.99999997e-07);
					        u_xlat3.x = inversesqrt(u_xlat20);
					        u_xlat5.xyz = u_xlat3.xxx * u_xlat5.xyz;
					        u_xlat20 = u_xlat20 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat20 = float(1.0) / u_xlat20;
					        u_xlat3.x = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat3.x = max(u_xlat3.x, 0.0);
					        u_xlat20 = u_xlat20 * u_xlat3.x;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat20) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_8;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_10;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					float u_xlat20;
					bool u_xlatb20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat20 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 9.99999997e-07);
					        u_xlat3.x = inversesqrt(u_xlat20);
					        u_xlat5.xyz = u_xlat3.xxx * u_xlat5.xyz;
					        u_xlat20 = u_xlat20 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat20 = float(1.0) / u_xlat20;
					        u_xlat3.x = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat3.x = max(u_xlat3.x, 0.0);
					        u_xlat20 = u_xlat20 * u_xlat3.x;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat20) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_8;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_10;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					float u_xlat20;
					bool u_xlatb20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat20 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 9.99999997e-07);
					        u_xlat3.x = inversesqrt(u_xlat20);
					        u_xlat5.xyz = u_xlat3.xxx * u_xlat5.xyz;
					        u_xlat20 = u_xlat20 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat20 = float(1.0) / u_xlat20;
					        u_xlat3.x = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat3.x = max(u_xlat3.x, 0.0);
					        u_xlat20 = u_xlat20 * u_xlat3.x;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat20) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_8;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_10;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					float u_xlat20;
					bool u_xlatb20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat20 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 9.99999997e-07);
					        u_xlat3.x = inversesqrt(u_xlat20);
					        u_xlat5.xyz = u_xlat3.xxx * u_xlat5.xyz;
					        u_xlat20 = u_xlat20 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat20 = float(1.0) / u_xlat20;
					        u_xlat3.x = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat3.x = max(u_xlat3.x, 0.0);
					        u_xlat20 = u_xlat20 * u_xlat3.x;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat20) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_8;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_10;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					float u_xlat20;
					bool u_xlatb20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat20 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 9.99999997e-07);
					        u_xlat3.x = inversesqrt(u_xlat20);
					        u_xlat5.xyz = u_xlat3.xxx * u_xlat5.xyz;
					        u_xlat20 = u_xlat20 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat20 = float(1.0) / u_xlat20;
					        u_xlat3.x = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat3.x = max(u_xlat3.x, 0.0);
					        u_xlat20 = u_xlat20 * u_xlat3.x;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat20) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendAdd" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_8;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_10;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					float u_xlat20;
					bool u_xlatb20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat20 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 9.99999997e-07);
					        u_xlat3.x = inversesqrt(u_xlat20);
					        u_xlat5.xyz = u_xlat3.xxx * u_xlat5.xyz;
					        u_xlat20 = u_xlat20 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat20 = float(1.0) / u_xlat20;
					        u_xlat3.x = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat3.x = max(u_xlat3.x, 0.0);
					        u_xlat20 = u_xlat20 * u_xlat3.x;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat20) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_8;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_10;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					float u_xlat20;
					bool u_xlatb20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat20 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 9.99999997e-07);
					        u_xlat3.x = inversesqrt(u_xlat20);
					        u_xlat5.xyz = u_xlat3.xxx * u_xlat5.xyz;
					        u_xlat20 = u_xlat20 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat20 = float(1.0) / u_xlat20;
					        u_xlat3.x = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat3.x = max(u_xlat3.x, 0.0);
					        u_xlat20 = u_xlat20 * u_xlat3.x;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat20) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_8;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_10;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					float u_xlat20;
					bool u_xlatb20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat20 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 9.99999997e-07);
					        u_xlat3.x = inversesqrt(u_xlat20);
					        u_xlat5.xyz = u_xlat3.xxx * u_xlat5.xyz;
					        u_xlat20 = u_xlat20 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat20 = float(1.0) / u_xlat20;
					        u_xlat3.x = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat3.x = max(u_xlat3.x, 0.0);
					        u_xlat20 = u_xlat20 * u_xlat3.x;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat20) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_8;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_10;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					float u_xlat20;
					bool u_xlatb20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat20 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 9.99999997e-07);
					        u_xlat3.x = inversesqrt(u_xlat20);
					        u_xlat5.xyz = u_xlat3.xxx * u_xlat5.xyz;
					        u_xlat20 = u_xlat20 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat20 = float(1.0) / u_xlat20;
					        u_xlat3.x = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat3.x = max(u_xlat3.x, 0.0);
					        u_xlat20 = u_xlat20 * u_xlat3.x;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat20) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_8;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_10;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					float u_xlat20;
					bool u_xlatb20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat20 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 9.99999997e-07);
					        u_xlat3.x = inversesqrt(u_xlat20);
					        u_xlat5.xyz = u_xlat3.xxx * u_xlat5.xyz;
					        u_xlat20 = u_xlat20 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat20 = float(1.0) / u_xlat20;
					        u_xlat3.x = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat3.x = max(u_xlat3.x, 0.0);
					        u_xlat20 = u_xlat20 * u_xlat3.x;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat20) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_8;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_10;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					float u_xlat20;
					bool u_xlatb20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat20 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 9.99999997e-07);
					        u_xlat3.x = inversesqrt(u_xlat20);
					        u_xlat5.xyz = u_xlat3.xxx * u_xlat5.xyz;
					        u_xlat20 = u_xlat20 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat20 = float(1.0) / u_xlat20;
					        u_xlat3.x = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat3.x = max(u_xlat3.x, 0.0);
					        u_xlat20 = u_xlat20 * u_xlat3.x;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat20) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_8;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_10;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					float u_xlat20;
					bool u_xlatb20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat20 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 9.99999997e-07);
					        u_xlat3.x = inversesqrt(u_xlat20);
					        u_xlat5.xyz = u_xlat3.xxx * u_xlat5.xyz;
					        u_xlat20 = u_xlat20 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat20 = float(1.0) / u_xlat20;
					        u_xlat3.x = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat3.x = max(u_xlat3.x, 0.0);
					        u_xlat20 = u_xlat20 * u_xlat3.x;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat20) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_8;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_10;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					float u_xlat20;
					bool u_xlatb20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat20 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 9.99999997e-07);
					        u_xlat3.x = inversesqrt(u_xlat20);
					        u_xlat5.xyz = u_xlat3.xxx * u_xlat5.xyz;
					        u_xlat20 = u_xlat20 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat20 = float(1.0) / u_xlat20;
					        u_xlat3.x = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat3.x = max(u_xlat3.x, 0.0);
					        u_xlat20 = u_xlat20 * u_xlat3.x;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat20) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendAdd" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendAdd" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendAdd" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_8;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_10;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					float u_xlat20;
					bool u_xlatb20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat20 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 9.99999997e-07);
					        u_xlat3.x = inversesqrt(u_xlat20);
					        u_xlat5.xyz = u_xlat3.xxx * u_xlat5.xyz;
					        u_xlat20 = u_xlat20 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat20 = float(1.0) / u_xlat20;
					        u_xlat3.x = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat3.x = max(u_xlat3.x, 0.0);
					        u_xlat20 = u_xlat20 * u_xlat3.x;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat20) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_8;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_10;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					float u_xlat20;
					bool u_xlatb20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat20 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 9.99999997e-07);
					        u_xlat3.x = inversesqrt(u_xlat20);
					        u_xlat5.xyz = u_xlat3.xxx * u_xlat5.xyz;
					        u_xlat20 = u_xlat20 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat20 = float(1.0) / u_xlat20;
					        u_xlat3.x = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat3.x = max(u_xlat3.x, 0.0);
					        u_xlat20 = u_xlat20 * u_xlat3.x;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat20) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_8;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_10;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					float u_xlat20;
					bool u_xlatb20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat20 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 9.99999997e-07);
					        u_xlat3.x = inversesqrt(u_xlat20);
					        u_xlat5.xyz = u_xlat3.xxx * u_xlat5.xyz;
					        u_xlat20 = u_xlat20 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat20 = float(1.0) / u_xlat20;
					        u_xlat3.x = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat3.x = max(u_xlat3.x, 0.0);
					        u_xlat20 = u_xlat20 * u_xlat3.x;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat20) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_8;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_10;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					float u_xlat20;
					bool u_xlatb20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat20 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 9.99999997e-07);
					        u_xlat3.x = inversesqrt(u_xlat20);
					        u_xlat5.xyz = u_xlat3.xxx * u_xlat5.xyz;
					        u_xlat20 = u_xlat20 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat20 = float(1.0) / u_xlat20;
					        u_xlat3.x = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat3.x = max(u_xlat3.x, 0.0);
					        u_xlat20 = u_xlat20 * u_xlat3.x;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat20) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_8;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_10;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					float u_xlat20;
					bool u_xlatb20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat20 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 9.99999997e-07);
					        u_xlat3.x = inversesqrt(u_xlat20);
					        u_xlat5.xyz = u_xlat3.xxx * u_xlat5.xyz;
					        u_xlat20 = u_xlat20 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat20 = float(1.0) / u_xlat20;
					        u_xlat3.x = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat3.x = max(u_xlat3.x, 0.0);
					        u_xlat20 = u_xlat20 * u_xlat3.x;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat20) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_8;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_10;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					float u_xlat20;
					bool u_xlatb20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat20 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 9.99999997e-07);
					        u_xlat3.x = inversesqrt(u_xlat20);
					        u_xlat5.xyz = u_xlat3.xxx * u_xlat5.xyz;
					        u_xlat20 = u_xlat20 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat20 = float(1.0) / u_xlat20;
					        u_xlat3.x = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat3.x = max(u_xlat3.x, 0.0);
					        u_xlat20 = u_xlat20 * u_xlat3.x;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat20) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_8;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_10;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					float u_xlat20;
					bool u_xlatb20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat20 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 9.99999997e-07);
					        u_xlat3.x = inversesqrt(u_xlat20);
					        u_xlat5.xyz = u_xlat3.xxx * u_xlat5.xyz;
					        u_xlat20 = u_xlat20 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat20 = float(1.0) / u_xlat20;
					        u_xlat3.x = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat3.x = max(u_xlat3.x, 0.0);
					        u_xlat20 = u_xlat20 * u_xlat3.x;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat20) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_8;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_10;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					float u_xlat20;
					bool u_xlatb20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat20 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 9.99999997e-07);
					        u_xlat3.x = inversesqrt(u_xlat20);
					        u_xlat5.xyz = u_xlat3.xxx * u_xlat5.xyz;
					        u_xlat20 = u_xlat20 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat20 = float(1.0) / u_xlat20;
					        u_xlat3.x = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat3.x = max(u_xlat3.x, 0.0);
					        u_xlat20 = u_xlat20 * u_xlat3.x;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat20) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendAdd" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_8;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_10;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					float u_xlat20;
					bool u_xlatb20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat20 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 9.99999997e-07);
					        u_xlat3.x = inversesqrt(u_xlat20);
					        u_xlat5.xyz = u_xlat3.xxx * u_xlat5.xyz;
					        u_xlat20 = u_xlat20 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat20 = float(1.0) / u_xlat20;
					        u_xlat3.x = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat3.x = max(u_xlat3.x, 0.0);
					        u_xlat20 = u_xlat20 * u_xlat3.x;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat20) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_8;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_10;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					float u_xlat20;
					bool u_xlatb20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat20 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 9.99999997e-07);
					        u_xlat3.x = inversesqrt(u_xlat20);
					        u_xlat5.xyz = u_xlat3.xxx * u_xlat5.xyz;
					        u_xlat20 = u_xlat20 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat20 = float(1.0) / u_xlat20;
					        u_xlat3.x = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat3.x = max(u_xlat3.x, 0.0);
					        u_xlat20 = u_xlat20 * u_xlat3.x;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat20) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_8;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_10;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					float u_xlat20;
					bool u_xlatb20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat20 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 9.99999997e-07);
					        u_xlat3.x = inversesqrt(u_xlat20);
					        u_xlat5.xyz = u_xlat3.xxx * u_xlat5.xyz;
					        u_xlat20 = u_xlat20 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat20 = float(1.0) / u_xlat20;
					        u_xlat3.x = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat3.x = max(u_xlat3.x, 0.0);
					        u_xlat20 = u_xlat20 * u_xlat3.x;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat20) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_8;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_10;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					float u_xlat20;
					bool u_xlatb20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat20 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 9.99999997e-07);
					        u_xlat3.x = inversesqrt(u_xlat20);
					        u_xlat5.xyz = u_xlat3.xxx * u_xlat5.xyz;
					        u_xlat20 = u_xlat20 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat20 = float(1.0) / u_xlat20;
					        u_xlat3.x = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat3.x = max(u_xlat3.x, 0.0);
					        u_xlat20 = u_xlat20 * u_xlat3.x;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat20) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_8;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_10;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					float u_xlat20;
					bool u_xlatb20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat20 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 9.99999997e-07);
					        u_xlat3.x = inversesqrt(u_xlat20);
					        u_xlat5.xyz = u_xlat3.xxx * u_xlat5.xyz;
					        u_xlat20 = u_xlat20 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat20 = float(1.0) / u_xlat20;
					        u_xlat3.x = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat3.x = max(u_xlat3.x, 0.0);
					        u_xlat20 = u_xlat20 * u_xlat3.x;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat20) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_8;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_10;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					float u_xlat20;
					bool u_xlatb20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat20 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 9.99999997e-07);
					        u_xlat3.x = inversesqrt(u_xlat20);
					        u_xlat5.xyz = u_xlat3.xxx * u_xlat5.xyz;
					        u_xlat20 = u_xlat20 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat20 = float(1.0) / u_xlat20;
					        u_xlat3.x = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat3.x = max(u_xlat3.x, 0.0);
					        u_xlat20 = u_xlat20 * u_xlat3.x;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat20) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_8;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_10;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					float u_xlat20;
					bool u_xlatb20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat20 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 9.99999997e-07);
					        u_xlat3.x = inversesqrt(u_xlat20);
					        u_xlat5.xyz = u_xlat3.xxx * u_xlat5.xyz;
					        u_xlat20 = u_xlat20 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat20 = float(1.0) / u_xlat20;
					        u_xlat3.x = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat3.x = max(u_xlat3.x, 0.0);
					        u_xlat20 = u_xlat20 * u_xlat3.x;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat20) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_8;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_10;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					float u_xlat20;
					bool u_xlatb20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat20 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 9.99999997e-07);
					        u_xlat3.x = inversesqrt(u_xlat20);
					        u_xlat5.xyz = u_xlat3.xxx * u_xlat5.xyz;
					        u_xlat20 = u_xlat20 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat20 = float(1.0) / u_xlat20;
					        u_xlat3.x = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat3.x = max(u_xlat3.x, 0.0);
					        u_xlat20 = u_xlat20 * u_xlat3.x;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat20) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendAdd" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendAdd" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendAdd" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_8;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_10;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					float u_xlat20;
					bool u_xlatb20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat20 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 9.99999997e-07);
					        u_xlat3.x = inversesqrt(u_xlat20);
					        u_xlat5.xyz = u_xlat3.xxx * u_xlat5.xyz;
					        u_xlat20 = u_xlat20 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat20 = float(1.0) / u_xlat20;
					        u_xlat3.x = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat3.x = max(u_xlat3.x, 0.0);
					        u_xlat20 = u_xlat20 * u_xlat3.x;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat20) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_8;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_10;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					float u_xlat20;
					bool u_xlatb20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat20 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 9.99999997e-07);
					        u_xlat3.x = inversesqrt(u_xlat20);
					        u_xlat5.xyz = u_xlat3.xxx * u_xlat5.xyz;
					        u_xlat20 = u_xlat20 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat20 = float(1.0) / u_xlat20;
					        u_xlat3.x = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat3.x = max(u_xlat3.x, 0.0);
					        u_xlat20 = u_xlat20 * u_xlat3.x;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat20) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_8;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_10;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					float u_xlat20;
					bool u_xlatb20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat20 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 9.99999997e-07);
					        u_xlat3.x = inversesqrt(u_xlat20);
					        u_xlat5.xyz = u_xlat3.xxx * u_xlat5.xyz;
					        u_xlat20 = u_xlat20 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat20 = float(1.0) / u_xlat20;
					        u_xlat3.x = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat3.x = max(u_xlat3.x, 0.0);
					        u_xlat20 = u_xlat20 * u_xlat3.x;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat20) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_8;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_10;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					float u_xlat20;
					bool u_xlatb20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat20 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 9.99999997e-07);
					        u_xlat3.x = inversesqrt(u_xlat20);
					        u_xlat5.xyz = u_xlat3.xxx * u_xlat5.xyz;
					        u_xlat20 = u_xlat20 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat20 = float(1.0) / u_xlat20;
					        u_xlat3.x = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat3.x = max(u_xlat3.x, 0.0);
					        u_xlat20 = u_xlat20 * u_xlat3.x;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat20) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_8;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_10;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					float u_xlat20;
					bool u_xlatb20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat20 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 9.99999997e-07);
					        u_xlat3.x = inversesqrt(u_xlat20);
					        u_xlat5.xyz = u_xlat3.xxx * u_xlat5.xyz;
					        u_xlat20 = u_xlat20 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat20 = float(1.0) / u_xlat20;
					        u_xlat3.x = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat3.x = max(u_xlat3.x, 0.0);
					        u_xlat20 = u_xlat20 * u_xlat3.x;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat20) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_8;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_10;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					float u_xlat20;
					bool u_xlatb20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat20 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 9.99999997e-07);
					        u_xlat3.x = inversesqrt(u_xlat20);
					        u_xlat5.xyz = u_xlat3.xxx * u_xlat5.xyz;
					        u_xlat20 = u_xlat20 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat20 = float(1.0) / u_xlat20;
					        u_xlat3.x = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat3.x = max(u_xlat3.x, 0.0);
					        u_xlat20 = u_xlat20 * u_xlat3.x;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat20) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_8;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_10;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					float u_xlat20;
					bool u_xlatb20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat20 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 9.99999997e-07);
					        u_xlat3.x = inversesqrt(u_xlat20);
					        u_xlat5.xyz = u_xlat3.xxx * u_xlat5.xyz;
					        u_xlat20 = u_xlat20 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat20 = float(1.0) / u_xlat20;
					        u_xlat3.x = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat3.x = max(u_xlat3.x, 0.0);
					        u_xlat20 = u_xlat20 * u_xlat3.x;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat20) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_8;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_10;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					float u_xlat20;
					bool u_xlatb20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat20 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 9.99999997e-07);
					        u_xlat3.x = inversesqrt(u_xlat20);
					        u_xlat5.xyz = u_xlat3.xxx * u_xlat5.xyz;
					        u_xlat20 = u_xlat20 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat20 = float(1.0) / u_xlat20;
					        u_xlat3.x = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat3.x = max(u_xlat3.x, 0.0);
					        u_xlat20 = u_xlat20 * u_xlat3.x;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat20) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendAdd" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_8;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_10;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					float u_xlat20;
					bool u_xlatb20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat20 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 9.99999997e-07);
					        u_xlat3.x = inversesqrt(u_xlat20);
					        u_xlat5.xyz = u_xlat3.xxx * u_xlat5.xyz;
					        u_xlat20 = u_xlat20 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat20 = float(1.0) / u_xlat20;
					        u_xlat3.x = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat3.x = max(u_xlat3.x, 0.0);
					        u_xlat20 = u_xlat20 * u_xlat3.x;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat20) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_8;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_10;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					float u_xlat20;
					bool u_xlatb20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat20 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 9.99999997e-07);
					        u_xlat3.x = inversesqrt(u_xlat20);
					        u_xlat5.xyz = u_xlat3.xxx * u_xlat5.xyz;
					        u_xlat20 = u_xlat20 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat20 = float(1.0) / u_xlat20;
					        u_xlat3.x = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat3.x = max(u_xlat3.x, 0.0);
					        u_xlat20 = u_xlat20 * u_xlat3.x;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat20) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_8;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_10;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					float u_xlat20;
					bool u_xlatb20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat20 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 9.99999997e-07);
					        u_xlat3.x = inversesqrt(u_xlat20);
					        u_xlat5.xyz = u_xlat3.xxx * u_xlat5.xyz;
					        u_xlat20 = u_xlat20 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat20 = float(1.0) / u_xlat20;
					        u_xlat3.x = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat3.x = max(u_xlat3.x, 0.0);
					        u_xlat20 = u_xlat20 * u_xlat3.x;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat20) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_8;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_10;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					float u_xlat20;
					bool u_xlatb20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat20 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 9.99999997e-07);
					        u_xlat3.x = inversesqrt(u_xlat20);
					        u_xlat5.xyz = u_xlat3.xxx * u_xlat5.xyz;
					        u_xlat20 = u_xlat20 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat20 = float(1.0) / u_xlat20;
					        u_xlat3.x = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat3.x = max(u_xlat3.x, 0.0);
					        u_xlat20 = u_xlat20 * u_xlat3.x;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat20) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_8;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_10;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					float u_xlat20;
					bool u_xlatb20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat20 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 9.99999997e-07);
					        u_xlat3.x = inversesqrt(u_xlat20);
					        u_xlat5.xyz = u_xlat3.xxx * u_xlat5.xyz;
					        u_xlat20 = u_xlat20 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat20 = float(1.0) / u_xlat20;
					        u_xlat3.x = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat3.x = max(u_xlat3.x, 0.0);
					        u_xlat20 = u_xlat20 * u_xlat3.x;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat20) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_8;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_10;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					float u_xlat20;
					bool u_xlatb20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat20 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 9.99999997e-07);
					        u_xlat3.x = inversesqrt(u_xlat20);
					        u_xlat5.xyz = u_xlat3.xxx * u_xlat5.xyz;
					        u_xlat20 = u_xlat20 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat20 = float(1.0) / u_xlat20;
					        u_xlat3.x = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat3.x = max(u_xlat3.x, 0.0);
					        u_xlat20 = u_xlat20 * u_xlat3.x;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat20) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_8;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_10;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					float u_xlat20;
					bool u_xlatb20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat20 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 9.99999997e-07);
					        u_xlat3.x = inversesqrt(u_xlat20);
					        u_xlat5.xyz = u_xlat3.xxx * u_xlat5.xyz;
					        u_xlat20 = u_xlat20 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat20 = float(1.0) / u_xlat20;
					        u_xlat3.x = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat3.x = max(u_xlat3.x, 0.0);
					        u_xlat20 = u_xlat20 * u_xlat3.x;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat20) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_8;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_10;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					float u_xlat20;
					bool u_xlatb20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat20 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 9.99999997e-07);
					        u_xlat3.x = inversesqrt(u_xlat20);
					        u_xlat5.xyz = u_xlat3.xxx * u_xlat5.xyz;
					        u_xlat20 = u_xlat20 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat20 = float(1.0) / u_xlat20;
					        u_xlat3.x = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat3.x = max(u_xlat3.x, 0.0);
					        u_xlat20 = u_xlat20 * u_xlat3.x;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat20) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendAdd" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendAdd" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendAdd" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_8;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_10;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					float u_xlat20;
					bool u_xlatb20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat20 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 9.99999997e-07);
					        u_xlat3.x = inversesqrt(u_xlat20);
					        u_xlat5.xyz = u_xlat3.xxx * u_xlat5.xyz;
					        u_xlat20 = u_xlat20 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat20 = float(1.0) / u_xlat20;
					        u_xlat3.x = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat3.x = max(u_xlat3.x, 0.0);
					        u_xlat20 = u_xlat20 * u_xlat3.x;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat20) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_8;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_10;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					float u_xlat20;
					bool u_xlatb20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat20 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 9.99999997e-07);
					        u_xlat3.x = inversesqrt(u_xlat20);
					        u_xlat5.xyz = u_xlat3.xxx * u_xlat5.xyz;
					        u_xlat20 = u_xlat20 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat20 = float(1.0) / u_xlat20;
					        u_xlat3.x = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat3.x = max(u_xlat3.x, 0.0);
					        u_xlat20 = u_xlat20 * u_xlat3.x;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat20) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_8;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_10;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					float u_xlat20;
					bool u_xlatb20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat20 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 9.99999997e-07);
					        u_xlat3.x = inversesqrt(u_xlat20);
					        u_xlat5.xyz = u_xlat3.xxx * u_xlat5.xyz;
					        u_xlat20 = u_xlat20 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat20 = float(1.0) / u_xlat20;
					        u_xlat3.x = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat3.x = max(u_xlat3.x, 0.0);
					        u_xlat20 = u_xlat20 * u_xlat3.x;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat20) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_8;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_10;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					float u_xlat20;
					bool u_xlatb20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat20 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 9.99999997e-07);
					        u_xlat3.x = inversesqrt(u_xlat20);
					        u_xlat5.xyz = u_xlat3.xxx * u_xlat5.xyz;
					        u_xlat20 = u_xlat20 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat20 = float(1.0) / u_xlat20;
					        u_xlat3.x = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat3.x = max(u_xlat3.x, 0.0);
					        u_xlat20 = u_xlat20 * u_xlat3.x;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat20) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_8;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_10;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					float u_xlat20;
					bool u_xlatb20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat20 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 9.99999997e-07);
					        u_xlat3.x = inversesqrt(u_xlat20);
					        u_xlat5.xyz = u_xlat3.xxx * u_xlat5.xyz;
					        u_xlat20 = u_xlat20 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat20 = float(1.0) / u_xlat20;
					        u_xlat3.x = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat3.x = max(u_xlat3.x, 0.0);
					        u_xlat20 = u_xlat20 * u_xlat3.x;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat20) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_8;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_10;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					float u_xlat20;
					bool u_xlatb20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat20 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 9.99999997e-07);
					        u_xlat3.x = inversesqrt(u_xlat20);
					        u_xlat5.xyz = u_xlat3.xxx * u_xlat5.xyz;
					        u_xlat20 = u_xlat20 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat20 = float(1.0) / u_xlat20;
					        u_xlat3.x = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat3.x = max(u_xlat3.x, 0.0);
					        u_xlat20 = u_xlat20 * u_xlat3.x;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat20) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_8;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_10;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					float u_xlat20;
					bool u_xlatb20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat20 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 9.99999997e-07);
					        u_xlat3.x = inversesqrt(u_xlat20);
					        u_xlat5.xyz = u_xlat3.xxx * u_xlat5.xyz;
					        u_xlat20 = u_xlat20 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat20 = float(1.0) / u_xlat20;
					        u_xlat3.x = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat3.x = max(u_xlat3.x, 0.0);
					        u_xlat20 = u_xlat20 * u_xlat3.x;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat20) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_8;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_10;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					float u_xlat20;
					bool u_xlatb20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat20 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 9.99999997e-07);
					        u_xlat3.x = inversesqrt(u_xlat20);
					        u_xlat5.xyz = u_xlat3.xxx * u_xlat5.xyz;
					        u_xlat20 = u_xlat20 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat20 = float(1.0) / u_xlat20;
					        u_xlat3.x = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat3.x = max(u_xlat3.x, 0.0);
					        u_xlat20 = u_xlat20 * u_xlat3.x;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat20) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendAdd" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_8;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_10;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					float u_xlat20;
					bool u_xlatb20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat20 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 9.99999997e-07);
					        u_xlat3.x = inversesqrt(u_xlat20);
					        u_xlat5.xyz = u_xlat3.xxx * u_xlat5.xyz;
					        u_xlat20 = u_xlat20 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat20 = float(1.0) / u_xlat20;
					        u_xlat3.x = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat3.x = max(u_xlat3.x, 0.0);
					        u_xlat20 = u_xlat20 * u_xlat3.x;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat20) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_8;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_10;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					float u_xlat20;
					bool u_xlatb20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat20 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 9.99999997e-07);
					        u_xlat3.x = inversesqrt(u_xlat20);
					        u_xlat5.xyz = u_xlat3.xxx * u_xlat5.xyz;
					        u_xlat20 = u_xlat20 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat20 = float(1.0) / u_xlat20;
					        u_xlat3.x = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat3.x = max(u_xlat3.x, 0.0);
					        u_xlat20 = u_xlat20 * u_xlat3.x;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat20) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_8;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_10;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					float u_xlat20;
					bool u_xlatb20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat20 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 9.99999997e-07);
					        u_xlat3.x = inversesqrt(u_xlat20);
					        u_xlat5.xyz = u_xlat3.xxx * u_xlat5.xyz;
					        u_xlat20 = u_xlat20 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat20 = float(1.0) / u_xlat20;
					        u_xlat3.x = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat3.x = max(u_xlat3.x, 0.0);
					        u_xlat20 = u_xlat20 * u_xlat3.x;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat20) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_8;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_10;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					float u_xlat20;
					bool u_xlatb20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat20 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 9.99999997e-07);
					        u_xlat3.x = inversesqrt(u_xlat20);
					        u_xlat5.xyz = u_xlat3.xxx * u_xlat5.xyz;
					        u_xlat20 = u_xlat20 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat20 = float(1.0) / u_xlat20;
					        u_xlat3.x = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat3.x = max(u_xlat3.x, 0.0);
					        u_xlat20 = u_xlat20 * u_xlat3.x;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat20) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_8;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_10;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					float u_xlat20;
					bool u_xlatb20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat20 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 9.99999997e-07);
					        u_xlat3.x = inversesqrt(u_xlat20);
					        u_xlat5.xyz = u_xlat3.xxx * u_xlat5.xyz;
					        u_xlat20 = u_xlat20 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat20 = float(1.0) / u_xlat20;
					        u_xlat3.x = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat3.x = max(u_xlat3.x, 0.0);
					        u_xlat20 = u_xlat20 * u_xlat3.x;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat20) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_8;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_10;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					float u_xlat20;
					bool u_xlatb20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat20 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 9.99999997e-07);
					        u_xlat3.x = inversesqrt(u_xlat20);
					        u_xlat5.xyz = u_xlat3.xxx * u_xlat5.xyz;
					        u_xlat20 = u_xlat20 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat20 = float(1.0) / u_xlat20;
					        u_xlat3.x = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat3.x = max(u_xlat3.x, 0.0);
					        u_xlat20 = u_xlat20 * u_xlat3.x;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat20) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_8;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_10;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					float u_xlat20;
					bool u_xlatb20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat20 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 9.99999997e-07);
					        u_xlat3.x = inversesqrt(u_xlat20);
					        u_xlat5.xyz = u_xlat3.xxx * u_xlat5.xyz;
					        u_xlat20 = u_xlat20 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat20 = float(1.0) / u_xlat20;
					        u_xlat3.x = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat3.x = max(u_xlat3.x, 0.0);
					        u_xlat20 = u_xlat20 * u_xlat3.x;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat20) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_8;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_10;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					float u_xlat20;
					bool u_xlatb20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat20 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 9.99999997e-07);
					        u_xlat3.x = inversesqrt(u_xlat20);
					        u_xlat5.xyz = u_xlat3.xxx * u_xlat5.xyz;
					        u_xlat20 = u_xlat20 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat20 = float(1.0) / u_xlat20;
					        u_xlat3.x = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat3.x = max(u_xlat3.x, 0.0);
					        u_xlat20 = u_xlat20 * u_xlat3.x;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat20) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendAdd" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendAdd" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendAdd" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_8;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_10;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					float u_xlat20;
					bool u_xlatb20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat20 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 9.99999997e-07);
					        u_xlat3.x = inversesqrt(u_xlat20);
					        u_xlat5.xyz = u_xlat3.xxx * u_xlat5.xyz;
					        u_xlat20 = u_xlat20 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat20 = float(1.0) / u_xlat20;
					        u_xlat3.x = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat3.x = max(u_xlat3.x, 0.0);
					        u_xlat20 = u_xlat20 * u_xlat3.x;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat20) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_8;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_10;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					float u_xlat20;
					bool u_xlatb20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat20 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 9.99999997e-07);
					        u_xlat3.x = inversesqrt(u_xlat20);
					        u_xlat5.xyz = u_xlat3.xxx * u_xlat5.xyz;
					        u_xlat20 = u_xlat20 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat20 = float(1.0) / u_xlat20;
					        u_xlat3.x = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat3.x = max(u_xlat3.x, 0.0);
					        u_xlat20 = u_xlat20 * u_xlat3.x;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat20) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_8;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_10;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					float u_xlat20;
					bool u_xlatb20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat20 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 9.99999997e-07);
					        u_xlat3.x = inversesqrt(u_xlat20);
					        u_xlat5.xyz = u_xlat3.xxx * u_xlat5.xyz;
					        u_xlat20 = u_xlat20 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat20 = float(1.0) / u_xlat20;
					        u_xlat3.x = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat3.x = max(u_xlat3.x, 0.0);
					        u_xlat20 = u_xlat20 * u_xlat3.x;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat20) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_8;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_10;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					float u_xlat20;
					bool u_xlatb20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat20 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 9.99999997e-07);
					        u_xlat3.x = inversesqrt(u_xlat20);
					        u_xlat5.xyz = u_xlat3.xxx * u_xlat5.xyz;
					        u_xlat20 = u_xlat20 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat20 = float(1.0) / u_xlat20;
					        u_xlat3.x = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat3.x = max(u_xlat3.x, 0.0);
					        u_xlat20 = u_xlat20 * u_xlat3.x;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat20) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_8;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_10;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					float u_xlat20;
					bool u_xlatb20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat20 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 9.99999997e-07);
					        u_xlat3.x = inversesqrt(u_xlat20);
					        u_xlat5.xyz = u_xlat3.xxx * u_xlat5.xyz;
					        u_xlat20 = u_xlat20 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat20 = float(1.0) / u_xlat20;
					        u_xlat3.x = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat3.x = max(u_xlat3.x, 0.0);
					        u_xlat20 = u_xlat20 * u_xlat3.x;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat20) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_8;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_10;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					float u_xlat20;
					bool u_xlatb20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat20 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 9.99999997e-07);
					        u_xlat3.x = inversesqrt(u_xlat20);
					        u_xlat5.xyz = u_xlat3.xxx * u_xlat5.xyz;
					        u_xlat20 = u_xlat20 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat20 = float(1.0) / u_xlat20;
					        u_xlat3.x = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat3.x = max(u_xlat3.x, 0.0);
					        u_xlat20 = u_xlat20 * u_xlat3.x;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat20) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_8;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_10;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					float u_xlat20;
					bool u_xlatb20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat20 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 9.99999997e-07);
					        u_xlat3.x = inversesqrt(u_xlat20);
					        u_xlat5.xyz = u_xlat3.xxx * u_xlat5.xyz;
					        u_xlat20 = u_xlat20 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat20 = float(1.0) / u_xlat20;
					        u_xlat3.x = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat3.x = max(u_xlat3.x, 0.0);
					        u_xlat20 = u_xlat20 * u_xlat3.x;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat20) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_8;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_10;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					float u_xlat20;
					bool u_xlatb20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat20 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 9.99999997e-07);
					        u_xlat3.x = inversesqrt(u_xlat20);
					        u_xlat5.xyz = u_xlat3.xxx * u_xlat5.xyz;
					        u_xlat20 = u_xlat20 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat20 = float(1.0) / u_xlat20;
					        u_xlat3.x = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat3.x = max(u_xlat3.x, 0.0);
					        u_xlat20 = u_xlat20 * u_xlat3.x;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat20) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendAdd" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_8;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_10;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					float u_xlat20;
					bool u_xlatb20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat20 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 9.99999997e-07);
					        u_xlat3.x = inversesqrt(u_xlat20);
					        u_xlat5.xyz = u_xlat3.xxx * u_xlat5.xyz;
					        u_xlat20 = u_xlat20 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat20 = float(1.0) / u_xlat20;
					        u_xlat3.x = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat3.x = max(u_xlat3.x, 0.0);
					        u_xlat20 = u_xlat20 * u_xlat3.x;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat20) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_8;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_10;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					float u_xlat20;
					bool u_xlatb20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat20 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 9.99999997e-07);
					        u_xlat3.x = inversesqrt(u_xlat20);
					        u_xlat5.xyz = u_xlat3.xxx * u_xlat5.xyz;
					        u_xlat20 = u_xlat20 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat20 = float(1.0) / u_xlat20;
					        u_xlat3.x = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat3.x = max(u_xlat3.x, 0.0);
					        u_xlat20 = u_xlat20 * u_xlat3.x;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat20) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_8;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_10;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					float u_xlat20;
					bool u_xlatb20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat20 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 9.99999997e-07);
					        u_xlat3.x = inversesqrt(u_xlat20);
					        u_xlat5.xyz = u_xlat3.xxx * u_xlat5.xyz;
					        u_xlat20 = u_xlat20 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat20 = float(1.0) / u_xlat20;
					        u_xlat3.x = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat3.x = max(u_xlat3.x, 0.0);
					        u_xlat20 = u_xlat20 * u_xlat3.x;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat20) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_8;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_10;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					float u_xlat20;
					bool u_xlatb20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat20 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 9.99999997e-07);
					        u_xlat3.x = inversesqrt(u_xlat20);
					        u_xlat5.xyz = u_xlat3.xxx * u_xlat5.xyz;
					        u_xlat20 = u_xlat20 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat20 = float(1.0) / u_xlat20;
					        u_xlat3.x = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat3.x = max(u_xlat3.x, 0.0);
					        u_xlat20 = u_xlat20 * u_xlat3.x;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat20) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_8;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_10;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					float u_xlat20;
					bool u_xlatb20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat20 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 9.99999997e-07);
					        u_xlat3.x = inversesqrt(u_xlat20);
					        u_xlat5.xyz = u_xlat3.xxx * u_xlat5.xyz;
					        u_xlat20 = u_xlat20 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat20 = float(1.0) / u_xlat20;
					        u_xlat3.x = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat3.x = max(u_xlat3.x, 0.0);
					        u_xlat20 = u_xlat20 * u_xlat3.x;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat20) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_8;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_10;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					float u_xlat20;
					bool u_xlatb20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat20 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 9.99999997e-07);
					        u_xlat3.x = inversesqrt(u_xlat20);
					        u_xlat5.xyz = u_xlat3.xxx * u_xlat5.xyz;
					        u_xlat20 = u_xlat20 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat20 = float(1.0) / u_xlat20;
					        u_xlat3.x = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat3.x = max(u_xlat3.x, 0.0);
					        u_xlat20 = u_xlat20 * u_xlat3.x;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat20) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_8;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_10;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					float u_xlat20;
					bool u_xlatb20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat20 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 9.99999997e-07);
					        u_xlat3.x = inversesqrt(u_xlat20);
					        u_xlat5.xyz = u_xlat3.xxx * u_xlat5.xyz;
					        u_xlat20 = u_xlat20 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat20 = float(1.0) / u_xlat20;
					        u_xlat3.x = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat3.x = max(u_xlat3.x, 0.0);
					        u_xlat20 = u_xlat20 * u_xlat3.x;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat20) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_8;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_10;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					float u_xlat20;
					bool u_xlatb20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat20 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 9.99999997e-07);
					        u_xlat3.x = inversesqrt(u_xlat20);
					        u_xlat5.xyz = u_xlat3.xxx * u_xlat5.xyz;
					        u_xlat20 = u_xlat20 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat20 = float(1.0) / u_xlat20;
					        u_xlat3.x = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat3.x = max(u_xlat3.x, 0.0);
					        u_xlat20 = u_xlat20 * u_xlat3.x;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat20) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendAdd" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendAdd" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendAdd" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_8;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_10;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					float u_xlat20;
					bool u_xlatb20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat20 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 9.99999997e-07);
					        u_xlat3.x = inversesqrt(u_xlat20);
					        u_xlat5.xyz = u_xlat3.xxx * u_xlat5.xyz;
					        u_xlat20 = u_xlat20 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat20 = float(1.0) / u_xlat20;
					        u_xlat3.x = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat3.x = max(u_xlat3.x, 0.0);
					        u_xlat20 = u_xlat20 * u_xlat3.x;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat20) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_8;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_10;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					float u_xlat20;
					bool u_xlatb20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat20 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 9.99999997e-07);
					        u_xlat3.x = inversesqrt(u_xlat20);
					        u_xlat5.xyz = u_xlat3.xxx * u_xlat5.xyz;
					        u_xlat20 = u_xlat20 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat20 = float(1.0) / u_xlat20;
					        u_xlat3.x = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat3.x = max(u_xlat3.x, 0.0);
					        u_xlat20 = u_xlat20 * u_xlat3.x;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat20) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_8;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_10;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					float u_xlat20;
					bool u_xlatb20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat20 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 9.99999997e-07);
					        u_xlat3.x = inversesqrt(u_xlat20);
					        u_xlat5.xyz = u_xlat3.xxx * u_xlat5.xyz;
					        u_xlat20 = u_xlat20 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat20 = float(1.0) / u_xlat20;
					        u_xlat3.x = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat3.x = max(u_xlat3.x, 0.0);
					        u_xlat20 = u_xlat20 * u_xlat3.x;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat20) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_8;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_10;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					float u_xlat20;
					bool u_xlatb20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat20 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 9.99999997e-07);
					        u_xlat3.x = inversesqrt(u_xlat20);
					        u_xlat5.xyz = u_xlat3.xxx * u_xlat5.xyz;
					        u_xlat20 = u_xlat20 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat20 = float(1.0) / u_xlat20;
					        u_xlat3.x = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat3.x = max(u_xlat3.x, 0.0);
					        u_xlat20 = u_xlat20 * u_xlat3.x;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat20) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_8;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_10;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					float u_xlat20;
					bool u_xlatb20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat20 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 9.99999997e-07);
					        u_xlat3.x = inversesqrt(u_xlat20);
					        u_xlat5.xyz = u_xlat3.xxx * u_xlat5.xyz;
					        u_xlat20 = u_xlat20 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat20 = float(1.0) / u_xlat20;
					        u_xlat3.x = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat3.x = max(u_xlat3.x, 0.0);
					        u_xlat20 = u_xlat20 * u_xlat3.x;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat20) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_8;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_10;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					float u_xlat20;
					bool u_xlatb20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat20 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 9.99999997e-07);
					        u_xlat3.x = inversesqrt(u_xlat20);
					        u_xlat5.xyz = u_xlat3.xxx * u_xlat5.xyz;
					        u_xlat20 = u_xlat20 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat20 = float(1.0) / u_xlat20;
					        u_xlat3.x = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat3.x = max(u_xlat3.x, 0.0);
					        u_xlat20 = u_xlat20 * u_xlat3.x;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat20) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_8;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_10;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					float u_xlat20;
					bool u_xlatb20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat20 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 9.99999997e-07);
					        u_xlat3.x = inversesqrt(u_xlat20);
					        u_xlat5.xyz = u_xlat3.xxx * u_xlat5.xyz;
					        u_xlat20 = u_xlat20 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat20 = float(1.0) / u_xlat20;
					        u_xlat3.x = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat3.x = max(u_xlat3.x, 0.0);
					        u_xlat20 = u_xlat20 * u_xlat3.x;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat20) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_8;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_10;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					float u_xlat20;
					bool u_xlatb20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat20 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 9.99999997e-07);
					        u_xlat3.x = inversesqrt(u_xlat20);
					        u_xlat5.xyz = u_xlat3.xxx * u_xlat5.xyz;
					        u_xlat20 = u_xlat20 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat20 = float(1.0) / u_xlat20;
					        u_xlat3.x = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat3.x = max(u_xlat3.x, 0.0);
					        u_xlat20 = u_xlat20 * u_xlat3.x;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat20) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendAdd" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_8;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_10;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					float u_xlat20;
					bool u_xlatb20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat20 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 9.99999997e-07);
					        u_xlat3.x = inversesqrt(u_xlat20);
					        u_xlat5.xyz = u_xlat3.xxx * u_xlat5.xyz;
					        u_xlat20 = u_xlat20 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat20 = float(1.0) / u_xlat20;
					        u_xlat3.x = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat3.x = max(u_xlat3.x, 0.0);
					        u_xlat20 = u_xlat20 * u_xlat3.x;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat20) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_8;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_10;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					float u_xlat20;
					bool u_xlatb20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat20 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 9.99999997e-07);
					        u_xlat3.x = inversesqrt(u_xlat20);
					        u_xlat5.xyz = u_xlat3.xxx * u_xlat5.xyz;
					        u_xlat20 = u_xlat20 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat20 = float(1.0) / u_xlat20;
					        u_xlat3.x = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat3.x = max(u_xlat3.x, 0.0);
					        u_xlat20 = u_xlat20 * u_xlat3.x;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat20) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_8;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_10;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					float u_xlat20;
					bool u_xlatb20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat20 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 9.99999997e-07);
					        u_xlat3.x = inversesqrt(u_xlat20);
					        u_xlat5.xyz = u_xlat3.xxx * u_xlat5.xyz;
					        u_xlat20 = u_xlat20 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat20 = float(1.0) / u_xlat20;
					        u_xlat3.x = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat3.x = max(u_xlat3.x, 0.0);
					        u_xlat20 = u_xlat20 * u_xlat3.x;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat20) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_8;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_10;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					float u_xlat20;
					bool u_xlatb20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat20 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 9.99999997e-07);
					        u_xlat3.x = inversesqrt(u_xlat20);
					        u_xlat5.xyz = u_xlat3.xxx * u_xlat5.xyz;
					        u_xlat20 = u_xlat20 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat20 = float(1.0) / u_xlat20;
					        u_xlat3.x = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat3.x = max(u_xlat3.x, 0.0);
					        u_xlat20 = u_xlat20 * u_xlat3.x;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat20) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_8;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_10;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					float u_xlat20;
					bool u_xlatb20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat20 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 9.99999997e-07);
					        u_xlat3.x = inversesqrt(u_xlat20);
					        u_xlat5.xyz = u_xlat3.xxx * u_xlat5.xyz;
					        u_xlat20 = u_xlat20 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat20 = float(1.0) / u_xlat20;
					        u_xlat3.x = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat3.x = max(u_xlat3.x, 0.0);
					        u_xlat20 = u_xlat20 * u_xlat3.x;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat20) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_8;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_10;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					float u_xlat20;
					bool u_xlatb20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat20 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 9.99999997e-07);
					        u_xlat3.x = inversesqrt(u_xlat20);
					        u_xlat5.xyz = u_xlat3.xxx * u_xlat5.xyz;
					        u_xlat20 = u_xlat20 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat20 = float(1.0) / u_xlat20;
					        u_xlat3.x = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat3.x = max(u_xlat3.x, 0.0);
					        u_xlat20 = u_xlat20 * u_xlat3.x;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat20) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_8;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_10;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					float u_xlat20;
					bool u_xlatb20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat20 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 9.99999997e-07);
					        u_xlat3.x = inversesqrt(u_xlat20);
					        u_xlat5.xyz = u_xlat3.xxx * u_xlat5.xyz;
					        u_xlat20 = u_xlat20 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat20 = float(1.0) / u_xlat20;
					        u_xlat3.x = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat3.x = max(u_xlat3.x, 0.0);
					        u_xlat20 = u_xlat20 * u_xlat3.x;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat20) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_8;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_10;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					float u_xlat20;
					bool u_xlatb20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat20 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 9.99999997e-07);
					        u_xlat3.x = inversesqrt(u_xlat20);
					        u_xlat5.xyz = u_xlat3.xxx * u_xlat5.xyz;
					        u_xlat20 = u_xlat20 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat20 = float(1.0) / u_xlat20;
					        u_xlat3.x = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat3.x = max(u_xlat3.x, 0.0);
					        u_xlat20 = u_xlat20 * u_xlat3.x;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat20) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendAdd" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendAdd" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendAdd" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_8;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_10;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					float u_xlat20;
					bool u_xlatb20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat20 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 9.99999997e-07);
					        u_xlat3.x = inversesqrt(u_xlat20);
					        u_xlat5.xyz = u_xlat3.xxx * u_xlat5.xyz;
					        u_xlat20 = u_xlat20 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat20 = float(1.0) / u_xlat20;
					        u_xlat3.x = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat3.x = max(u_xlat3.x, 0.0);
					        u_xlat20 = u_xlat20 * u_xlat3.x;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat20) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_8;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_10;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					float u_xlat20;
					bool u_xlatb20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat20 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 9.99999997e-07);
					        u_xlat3.x = inversesqrt(u_xlat20);
					        u_xlat5.xyz = u_xlat3.xxx * u_xlat5.xyz;
					        u_xlat20 = u_xlat20 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat20 = float(1.0) / u_xlat20;
					        u_xlat3.x = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat3.x = max(u_xlat3.x, 0.0);
					        u_xlat20 = u_xlat20 * u_xlat3.x;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat20) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_8;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_10;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					float u_xlat20;
					bool u_xlatb20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat20 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 9.99999997e-07);
					        u_xlat3.x = inversesqrt(u_xlat20);
					        u_xlat5.xyz = u_xlat3.xxx * u_xlat5.xyz;
					        u_xlat20 = u_xlat20 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat20 = float(1.0) / u_xlat20;
					        u_xlat3.x = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat3.x = max(u_xlat3.x, 0.0);
					        u_xlat20 = u_xlat20 * u_xlat3.x;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat20) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_8;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_10;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					float u_xlat20;
					bool u_xlatb20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat20 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 9.99999997e-07);
					        u_xlat3.x = inversesqrt(u_xlat20);
					        u_xlat5.xyz = u_xlat3.xxx * u_xlat5.xyz;
					        u_xlat20 = u_xlat20 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat20 = float(1.0) / u_xlat20;
					        u_xlat3.x = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat3.x = max(u_xlat3.x, 0.0);
					        u_xlat20 = u_xlat20 * u_xlat3.x;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat20) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_8;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_10;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					float u_xlat20;
					bool u_xlatb20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat20 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 9.99999997e-07);
					        u_xlat3.x = inversesqrt(u_xlat20);
					        u_xlat5.xyz = u_xlat3.xxx * u_xlat5.xyz;
					        u_xlat20 = u_xlat20 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat20 = float(1.0) / u_xlat20;
					        u_xlat3.x = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat3.x = max(u_xlat3.x, 0.0);
					        u_xlat20 = u_xlat20 * u_xlat3.x;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat20) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_8;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_10;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					float u_xlat20;
					bool u_xlatb20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat20 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 9.99999997e-07);
					        u_xlat3.x = inversesqrt(u_xlat20);
					        u_xlat5.xyz = u_xlat3.xxx * u_xlat5.xyz;
					        u_xlat20 = u_xlat20 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat20 = float(1.0) / u_xlat20;
					        u_xlat3.x = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat3.x = max(u_xlat3.x, 0.0);
					        u_xlat20 = u_xlat20 * u_xlat3.x;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat20) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_8;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_10;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					float u_xlat20;
					bool u_xlatb20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat20 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 9.99999997e-07);
					        u_xlat3.x = inversesqrt(u_xlat20);
					        u_xlat5.xyz = u_xlat3.xxx * u_xlat5.xyz;
					        u_xlat20 = u_xlat20 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat20 = float(1.0) / u_xlat20;
					        u_xlat3.x = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat3.x = max(u_xlat3.x, 0.0);
					        u_xlat20 = u_xlat20 * u_xlat3.x;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat20) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_8;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_10;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					float u_xlat20;
					bool u_xlatb20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat20 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 9.99999997e-07);
					        u_xlat3.x = inversesqrt(u_xlat20);
					        u_xlat5.xyz = u_xlat3.xxx * u_xlat5.xyz;
					        u_xlat20 = u_xlat20 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat20 = float(1.0) / u_xlat20;
					        u_xlat3.x = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat3.x = max(u_xlat3.x, 0.0);
					        u_xlat20 = u_xlat20 * u_xlat3.x;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat20) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendAdd" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_8;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_10;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					float u_xlat20;
					bool u_xlatb20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat20 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 9.99999997e-07);
					        u_xlat3.x = inversesqrt(u_xlat20);
					        u_xlat5.xyz = u_xlat3.xxx * u_xlat5.xyz;
					        u_xlat20 = u_xlat20 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat20 = float(1.0) / u_xlat20;
					        u_xlat3.x = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat3.x = max(u_xlat3.x, 0.0);
					        u_xlat20 = u_xlat20 * u_xlat3.x;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat20) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_8;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_10;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					float u_xlat20;
					bool u_xlatb20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat20 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 9.99999997e-07);
					        u_xlat3.x = inversesqrt(u_xlat20);
					        u_xlat5.xyz = u_xlat3.xxx * u_xlat5.xyz;
					        u_xlat20 = u_xlat20 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat20 = float(1.0) / u_xlat20;
					        u_xlat3.x = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat3.x = max(u_xlat3.x, 0.0);
					        u_xlat20 = u_xlat20 * u_xlat3.x;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat20) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_8;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_10;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					float u_xlat20;
					bool u_xlatb20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat20 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 9.99999997e-07);
					        u_xlat3.x = inversesqrt(u_xlat20);
					        u_xlat5.xyz = u_xlat3.xxx * u_xlat5.xyz;
					        u_xlat20 = u_xlat20 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat20 = float(1.0) / u_xlat20;
					        u_xlat3.x = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat3.x = max(u_xlat3.x, 0.0);
					        u_xlat20 = u_xlat20 * u_xlat3.x;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat20) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_8;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_10;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					float u_xlat20;
					bool u_xlatb20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat20 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 9.99999997e-07);
					        u_xlat3.x = inversesqrt(u_xlat20);
					        u_xlat5.xyz = u_xlat3.xxx * u_xlat5.xyz;
					        u_xlat20 = u_xlat20 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat20 = float(1.0) / u_xlat20;
					        u_xlat3.x = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat3.x = max(u_xlat3.x, 0.0);
					        u_xlat20 = u_xlat20 * u_xlat3.x;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat20) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_8;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_10;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					float u_xlat20;
					bool u_xlatb20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat20 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 9.99999997e-07);
					        u_xlat3.x = inversesqrt(u_xlat20);
					        u_xlat5.xyz = u_xlat3.xxx * u_xlat5.xyz;
					        u_xlat20 = u_xlat20 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat20 = float(1.0) / u_xlat20;
					        u_xlat3.x = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat3.x = max(u_xlat3.x, 0.0);
					        u_xlat20 = u_xlat20 * u_xlat3.x;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat20) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_8;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_10;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					float u_xlat20;
					bool u_xlatb20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat20 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 9.99999997e-07);
					        u_xlat3.x = inversesqrt(u_xlat20);
					        u_xlat5.xyz = u_xlat3.xxx * u_xlat5.xyz;
					        u_xlat20 = u_xlat20 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat20 = float(1.0) / u_xlat20;
					        u_xlat3.x = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat3.x = max(u_xlat3.x, 0.0);
					        u_xlat20 = u_xlat20 * u_xlat3.x;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat20) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_8;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_10;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					float u_xlat20;
					bool u_xlatb20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat20 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 9.99999997e-07);
					        u_xlat3.x = inversesqrt(u_xlat20);
					        u_xlat5.xyz = u_xlat3.xxx * u_xlat5.xyz;
					        u_xlat20 = u_xlat20 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat20 = float(1.0) / u_xlat20;
					        u_xlat3.x = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat3.x = max(u_xlat3.x, 0.0);
					        u_xlat20 = u_xlat20 * u_xlat3.x;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat20) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_8;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_10;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					float u_xlat20;
					bool u_xlatb20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat20 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 9.99999997e-07);
					        u_xlat3.x = inversesqrt(u_xlat20);
					        u_xlat5.xyz = u_xlat3.xxx * u_xlat5.xyz;
					        u_xlat20 = u_xlat20 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat20 = float(1.0) / u_xlat20;
					        u_xlat3.x = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat3.x = max(u_xlat3.x, 0.0);
					        u_xlat20 = u_xlat20 * u_xlat3.x;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat20) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendAdd" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendAdd" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendAdd" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_8;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_10;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					float u_xlat20;
					bool u_xlatb20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat20 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 9.99999997e-07);
					        u_xlat3.x = inversesqrt(u_xlat20);
					        u_xlat5.xyz = u_xlat3.xxx * u_xlat5.xyz;
					        u_xlat20 = u_xlat20 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat20 = float(1.0) / u_xlat20;
					        u_xlat3.x = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat3.x = max(u_xlat3.x, 0.0);
					        u_xlat20 = u_xlat20 * u_xlat3.x;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat20) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_8;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_10;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					float u_xlat20;
					bool u_xlatb20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat20 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 9.99999997e-07);
					        u_xlat3.x = inversesqrt(u_xlat20);
					        u_xlat5.xyz = u_xlat3.xxx * u_xlat5.xyz;
					        u_xlat20 = u_xlat20 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat20 = float(1.0) / u_xlat20;
					        u_xlat3.x = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat3.x = max(u_xlat3.x, 0.0);
					        u_xlat20 = u_xlat20 * u_xlat3.x;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat20) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_8;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_10;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					float u_xlat20;
					bool u_xlatb20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat20 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 9.99999997e-07);
					        u_xlat3.x = inversesqrt(u_xlat20);
					        u_xlat5.xyz = u_xlat3.xxx * u_xlat5.xyz;
					        u_xlat20 = u_xlat20 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat20 = float(1.0) / u_xlat20;
					        u_xlat3.x = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat3.x = max(u_xlat3.x, 0.0);
					        u_xlat20 = u_xlat20 * u_xlat3.x;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat20) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_8;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_10;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					float u_xlat20;
					bool u_xlatb20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat20 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 9.99999997e-07);
					        u_xlat3.x = inversesqrt(u_xlat20);
					        u_xlat5.xyz = u_xlat3.xxx * u_xlat5.xyz;
					        u_xlat20 = u_xlat20 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat20 = float(1.0) / u_xlat20;
					        u_xlat3.x = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat3.x = max(u_xlat3.x, 0.0);
					        u_xlat20 = u_xlat20 * u_xlat3.x;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat20) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_8;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_10;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					float u_xlat20;
					bool u_xlatb20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat20 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 9.99999997e-07);
					        u_xlat3.x = inversesqrt(u_xlat20);
					        u_xlat5.xyz = u_xlat3.xxx * u_xlat5.xyz;
					        u_xlat20 = u_xlat20 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat20 = float(1.0) / u_xlat20;
					        u_xlat3.x = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat3.x = max(u_xlat3.x, 0.0);
					        u_xlat20 = u_xlat20 * u_xlat3.x;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat20) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_8;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_10;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					float u_xlat20;
					bool u_xlatb20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat20 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 9.99999997e-07);
					        u_xlat3.x = inversesqrt(u_xlat20);
					        u_xlat5.xyz = u_xlat3.xxx * u_xlat5.xyz;
					        u_xlat20 = u_xlat20 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat20 = float(1.0) / u_xlat20;
					        u_xlat3.x = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat3.x = max(u_xlat3.x, 0.0);
					        u_xlat20 = u_xlat20 * u_xlat3.x;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat20) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_8;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_10;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					float u_xlat20;
					bool u_xlatb20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat20 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 9.99999997e-07);
					        u_xlat3.x = inversesqrt(u_xlat20);
					        u_xlat5.xyz = u_xlat3.xxx * u_xlat5.xyz;
					        u_xlat20 = u_xlat20 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat20 = float(1.0) / u_xlat20;
					        u_xlat3.x = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat3.x = max(u_xlat3.x, 0.0);
					        u_xlat20 = u_xlat20 * u_xlat3.x;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat20) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_8;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_10;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					float u_xlat20;
					bool u_xlatb20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat20 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 9.99999997e-07);
					        u_xlat3.x = inversesqrt(u_xlat20);
					        u_xlat5.xyz = u_xlat3.xxx * u_xlat5.xyz;
					        u_xlat20 = u_xlat20 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat20 = float(1.0) / u_xlat20;
					        u_xlat3.x = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat3.x = max(u_xlat3.x, 0.0);
					        u_xlat20 = u_xlat20 * u_xlat3.x;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat20) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendAdd" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_8;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_10;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					float u_xlat20;
					bool u_xlatb20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat20 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 9.99999997e-07);
					        u_xlat3.x = inversesqrt(u_xlat20);
					        u_xlat5.xyz = u_xlat3.xxx * u_xlat5.xyz;
					        u_xlat20 = u_xlat20 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat20 = float(1.0) / u_xlat20;
					        u_xlat3.x = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat3.x = max(u_xlat3.x, 0.0);
					        u_xlat20 = u_xlat20 * u_xlat3.x;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat20) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_8;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_10;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					float u_xlat20;
					bool u_xlatb20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat20 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 9.99999997e-07);
					        u_xlat3.x = inversesqrt(u_xlat20);
					        u_xlat5.xyz = u_xlat3.xxx * u_xlat5.xyz;
					        u_xlat20 = u_xlat20 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat20 = float(1.0) / u_xlat20;
					        u_xlat3.x = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat3.x = max(u_xlat3.x, 0.0);
					        u_xlat20 = u_xlat20 * u_xlat3.x;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat20) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_8;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_10;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					float u_xlat20;
					bool u_xlatb20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat20 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 9.99999997e-07);
					        u_xlat3.x = inversesqrt(u_xlat20);
					        u_xlat5.xyz = u_xlat3.xxx * u_xlat5.xyz;
					        u_xlat20 = u_xlat20 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat20 = float(1.0) / u_xlat20;
					        u_xlat3.x = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat3.x = max(u_xlat3.x, 0.0);
					        u_xlat20 = u_xlat20 * u_xlat3.x;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat20) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_8;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_10;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					float u_xlat20;
					bool u_xlatb20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat20 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 9.99999997e-07);
					        u_xlat3.x = inversesqrt(u_xlat20);
					        u_xlat5.xyz = u_xlat3.xxx * u_xlat5.xyz;
					        u_xlat20 = u_xlat20 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat20 = float(1.0) / u_xlat20;
					        u_xlat3.x = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat3.x = max(u_xlat3.x, 0.0);
					        u_xlat20 = u_xlat20 * u_xlat3.x;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat20) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_8;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_10;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					float u_xlat20;
					bool u_xlatb20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat20 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 9.99999997e-07);
					        u_xlat3.x = inversesqrt(u_xlat20);
					        u_xlat5.xyz = u_xlat3.xxx * u_xlat5.xyz;
					        u_xlat20 = u_xlat20 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat20 = float(1.0) / u_xlat20;
					        u_xlat3.x = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat3.x = max(u_xlat3.x, 0.0);
					        u_xlat20 = u_xlat20 * u_xlat3.x;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat20) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_8;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_10;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					float u_xlat20;
					bool u_xlatb20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat20 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 9.99999997e-07);
					        u_xlat3.x = inversesqrt(u_xlat20);
					        u_xlat5.xyz = u_xlat3.xxx * u_xlat5.xyz;
					        u_xlat20 = u_xlat20 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat20 = float(1.0) / u_xlat20;
					        u_xlat3.x = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat3.x = max(u_xlat3.x, 0.0);
					        u_xlat20 = u_xlat20 * u_xlat3.x;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat20) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_8;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_10;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					float u_xlat20;
					bool u_xlatb20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat20 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 9.99999997e-07);
					        u_xlat3.x = inversesqrt(u_xlat20);
					        u_xlat5.xyz = u_xlat3.xxx * u_xlat5.xyz;
					        u_xlat20 = u_xlat20 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat20 = float(1.0) / u_xlat20;
					        u_xlat3.x = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat3.x = max(u_xlat3.x, 0.0);
					        u_xlat20 = u_xlat20 * u_xlat3.x;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat20) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_8;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_10;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					float u_xlat20;
					bool u_xlatb20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat20 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 9.99999997e-07);
					        u_xlat3.x = inversesqrt(u_xlat20);
					        u_xlat5.xyz = u_xlat3.xxx * u_xlat5.xyz;
					        u_xlat20 = u_xlat20 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat20 = float(1.0) / u_xlat20;
					        u_xlat3.x = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat3.x = max(u_xlat3.x, 0.0);
					        u_xlat20 = u_xlat20 * u_xlat3.x;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat20) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendAlpha" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat2 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat2;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec2 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					float u_xlat3;
					int u_xlati6;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat3 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat3;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlati6 = unity_StereoEyeIndex;
					    u_xlat1.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati6].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati6].xy + u_xlat1.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendAlpha" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat2 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat2;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec2 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					float u_xlat3;
					int u_xlati6;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat3 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat3;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlati6 = unity_StereoEyeIndex;
					    u_xlat1.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati6].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati6].xy + u_xlat1.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendAlpha" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat2 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat2;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec2 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					float u_xlat3;
					int u_xlati6;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat3 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat3;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlati6 = unity_StereoEyeIndex;
					    u_xlat1.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati6].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati6].xy + u_xlat1.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat2 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat2;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec2 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					float u_xlat3;
					int u_xlati6;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat3 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat3;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlati6 = unity_StereoEyeIndex;
					    u_xlat1.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati6].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati6].xy + u_xlat1.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendAlpha" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat2 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat2;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec2 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					float u_xlat3;
					int u_xlati6;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat3 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat3;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlati6 = unity_StereoEyeIndex;
					    u_xlat1.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati6].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati6].xy + u_xlat1.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat2 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat2;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec2 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					float u_xlat3;
					int u_xlati6;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat3 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat3;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlati6 = unity_StereoEyeIndex;
					    u_xlat1.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati6].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati6].xy + u_xlat1.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendAlpha" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat2 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat2;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec2 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					float u_xlat3;
					int u_xlati6;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat3 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat3;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlati6 = unity_StereoEyeIndex;
					    u_xlat1.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati6].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati6].xy + u_xlat1.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat2 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat2;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec2 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					float u_xlat3;
					int u_xlati6;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat3 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat3;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlati6 = unity_StereoEyeIndex;
					    u_xlat1.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati6].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati6].xy + u_xlat1.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendAlpha" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat2 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat2;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec2 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					float u_xlat3;
					int u_xlati6;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat3 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat3;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlati6 = unity_StereoEyeIndex;
					    u_xlat1.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati6].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati6].xy + u_xlat1.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendAlpha" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat2 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat2;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec2 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					float u_xlat3;
					int u_xlati6;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat3 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat3;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlati6 = unity_StereoEyeIndex;
					    u_xlat1.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati6].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati6].xy + u_xlat1.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendAlpha" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat2 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat2;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec2 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					float u_xlat3;
					int u_xlati6;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat3 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat3;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlati6 = unity_StereoEyeIndex;
					    u_xlat1.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati6].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati6].xy + u_xlat1.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat2 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat2;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec2 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					float u_xlat3;
					int u_xlati6;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat3 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat3;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlati6 = unity_StereoEyeIndex;
					    u_xlat1.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati6].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati6].xy + u_xlat1.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendAlpha" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat2 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat2;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec2 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					float u_xlat3;
					int u_xlati6;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat3 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat3;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlati6 = unity_StereoEyeIndex;
					    u_xlat1.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati6].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati6].xy + u_xlat1.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat2 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat2;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec2 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					float u_xlat3;
					int u_xlati6;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat3 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat3;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlati6 = unity_StereoEyeIndex;
					    u_xlat1.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati6].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati6].xy + u_xlat1.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendAlpha" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat2 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat2;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec2 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					float u_xlat3;
					int u_xlati6;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat3 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat3;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlati6 = unity_StereoEyeIndex;
					    u_xlat1.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati6].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati6].xy + u_xlat1.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat2 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat2;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec2 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					float u_xlat3;
					int u_xlati6;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat3 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat3;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlati6 = unity_StereoEyeIndex;
					    u_xlat1.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati6].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati6].xy + u_xlat1.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendAlpha" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					float u_xlat9;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat9 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat9 = inversesqrt(u_xlat9);
					    u_xlat2.xyz = vec3(u_xlat9) * u_xlat2.xyz;
					    u_xlat9 = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat9 = inversesqrt(u_xlat9);
					    u_xlat3.xyz = vec3(u_xlat9) * in_NORMAL0.xyz;
					    u_xlat9 = dot(u_xlat3.xyz, u_xlat2.xyz);
					    u_xlat9 = log2(abs(u_xlat9));
					    u_xlat9 = u_xlat9 * _FresnelStr;
					    u_xlat9 = exp2(u_xlat9);
					    u_xlat9 = u_xlat9 + u_xlat9;
					    vs_TEXCOORD4 = min(u_xlat9, 1.0);
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat4 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_3_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					vec3 u_xlat5;
					vec2 u_xlat8;
					int u_xlati10;
					float u_xlat15;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    u_xlat5.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat5.x = inversesqrt(u_xlat5.x);
					    u_xlat5.xyz = u_xlat5.xxx * in_NORMAL0.xyz;
					    u_xlati10 = unity_StereoEyeIndex;
					    u_xlat3.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati10].yyy;
					    u_xlat3.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati10].xxx + u_xlat3.xyz;
					    u_xlat3.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati10].zzz + u_xlat3.xyz;
					    u_xlat3.xyz = u_xlat3.xyz + unity_WorldToObject[3].xyz;
					    u_xlat3.xyz = u_xlat3.xyz + (-in_POSITION0.xyz);
					    u_xlat15 = dot(u_xlat3.xyz, u_xlat3.xyz);
					    u_xlat15 = inversesqrt(u_xlat15);
					    u_xlat3.xyz = vec3(u_xlat15) * u_xlat3.xyz;
					    u_xlat5.x = dot(u_xlat5.xyz, u_xlat3.xyz);
					    u_xlat5.x = log2(abs(u_xlat5.x));
					    u_xlat5.x = u_xlat5.x * _FresnelStr;
					    u_xlat5.x = exp2(u_xlat5.x);
					    u_xlat5.x = u_xlat5.x + u_xlat5.x;
					    vs_TEXCOORD4 = min(u_xlat5.x, 1.0);
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat4 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlat8.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati10].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati10].xy + u_xlat8.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendAlpha" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					float u_xlat9;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat9 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat9 = inversesqrt(u_xlat9);
					    u_xlat2.xyz = vec3(u_xlat9) * u_xlat2.xyz;
					    u_xlat9 = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat9 = inversesqrt(u_xlat9);
					    u_xlat3.xyz = vec3(u_xlat9) * in_NORMAL0.xyz;
					    u_xlat9 = dot(u_xlat3.xyz, u_xlat2.xyz);
					    u_xlat9 = log2(abs(u_xlat9));
					    u_xlat9 = u_xlat9 * _FresnelStr;
					    u_xlat9 = exp2(u_xlat9);
					    u_xlat9 = u_xlat9 + u_xlat9;
					    vs_TEXCOORD4 = min(u_xlat9, 1.0);
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat4 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_3_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					vec3 u_xlat5;
					vec2 u_xlat8;
					int u_xlati10;
					float u_xlat15;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    u_xlat5.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat5.x = inversesqrt(u_xlat5.x);
					    u_xlat5.xyz = u_xlat5.xxx * in_NORMAL0.xyz;
					    u_xlati10 = unity_StereoEyeIndex;
					    u_xlat3.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati10].yyy;
					    u_xlat3.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati10].xxx + u_xlat3.xyz;
					    u_xlat3.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati10].zzz + u_xlat3.xyz;
					    u_xlat3.xyz = u_xlat3.xyz + unity_WorldToObject[3].xyz;
					    u_xlat3.xyz = u_xlat3.xyz + (-in_POSITION0.xyz);
					    u_xlat15 = dot(u_xlat3.xyz, u_xlat3.xyz);
					    u_xlat15 = inversesqrt(u_xlat15);
					    u_xlat3.xyz = vec3(u_xlat15) * u_xlat3.xyz;
					    u_xlat5.x = dot(u_xlat5.xyz, u_xlat3.xyz);
					    u_xlat5.x = log2(abs(u_xlat5.x));
					    u_xlat5.x = u_xlat5.x * _FresnelStr;
					    u_xlat5.x = exp2(u_xlat5.x);
					    u_xlat5.x = u_xlat5.x + u_xlat5.x;
					    vs_TEXCOORD4 = min(u_xlat5.x, 1.0);
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat4 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlat8.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati10].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati10].xy + u_xlat8.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendAlpha" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					float u_xlat14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat14 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat2.xyz = vec3(u_xlat14) * u_xlat2.xyz;
					    u_xlat14 = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat3.xyz = vec3(u_xlat14) * in_NORMAL0.xyz;
					    u_xlat2.x = dot(u_xlat3.xyz, u_xlat2.xyz);
					    u_xlat2.x = log2(abs(u_xlat2.x));
					    u_xlat2.x = u_xlat2.x * _FresnelStr;
					    u_xlat2.x = exp2(u_xlat2.x);
					    u_xlat2.x = u_xlat2.x + u_xlat2.x;
					    vs_TEXCOORD4 = min(u_xlat2.x, 1.0);
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat4 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_3_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati1;
					vec4 u_xlat2;
					int u_xlati3;
					float u_xlat4;
					float u_xlat5;
					vec3 u_xlat6;
					vec3 u_xlat8;
					vec2 u_xlat10;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    u_xlat6.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat6.x = inversesqrt(u_xlat6.x);
					    u_xlat6.xyz = u_xlat6.xxx * in_NORMAL0.xyz;
					    u_xlati3 = unity_StereoEyeIndex;
					    u_xlat8.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].yyy;
					    u_xlat8.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].xxx + u_xlat8.xyz;
					    u_xlat8.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].zzz + u_xlat8.xyz;
					    u_xlat8.xyz = u_xlat8.xyz + unity_WorldToObject[3].xyz;
					    u_xlat8.xyz = u_xlat8.xyz + (-in_POSITION0.xyz);
					    u_xlat4 = dot(u_xlat8.xyz, u_xlat8.xyz);
					    u_xlat4 = inversesqrt(u_xlat4);
					    u_xlat8.xyz = u_xlat8.xyz * vec3(u_xlat4);
					    u_xlat6.x = dot(u_xlat6.xyz, u_xlat8.xyz);
					    u_xlat6.x = log2(abs(u_xlat6.x));
					    u_xlat6.x = u_xlat6.x * _FresnelStr;
					    u_xlat6.x = exp2(u_xlat6.x);
					    u_xlat6.x = u_xlat6.x + u_xlat6.x;
					    vs_TEXCOORD4 = min(u_xlat6.x, 1.0);
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat5 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat5;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlat10.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati3].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati3].xy + u_xlat10.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					float u_xlat14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat14 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat2.xyz = vec3(u_xlat14) * u_xlat2.xyz;
					    u_xlat14 = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat3.xyz = vec3(u_xlat14) * in_NORMAL0.xyz;
					    u_xlat2.x = dot(u_xlat3.xyz, u_xlat2.xyz);
					    u_xlat2.x = log2(abs(u_xlat2.x));
					    u_xlat2.x = u_xlat2.x * _FresnelStr;
					    u_xlat2.x = exp2(u_xlat2.x);
					    u_xlat2.x = u_xlat2.x + u_xlat2.x;
					    vs_TEXCOORD4 = min(u_xlat2.x, 1.0);
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat4 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_3_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati1;
					vec4 u_xlat2;
					int u_xlati3;
					float u_xlat4;
					float u_xlat5;
					vec3 u_xlat6;
					vec3 u_xlat8;
					vec2 u_xlat10;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    u_xlat6.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat6.x = inversesqrt(u_xlat6.x);
					    u_xlat6.xyz = u_xlat6.xxx * in_NORMAL0.xyz;
					    u_xlati3 = unity_StereoEyeIndex;
					    u_xlat8.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].yyy;
					    u_xlat8.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].xxx + u_xlat8.xyz;
					    u_xlat8.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].zzz + u_xlat8.xyz;
					    u_xlat8.xyz = u_xlat8.xyz + unity_WorldToObject[3].xyz;
					    u_xlat8.xyz = u_xlat8.xyz + (-in_POSITION0.xyz);
					    u_xlat4 = dot(u_xlat8.xyz, u_xlat8.xyz);
					    u_xlat4 = inversesqrt(u_xlat4);
					    u_xlat8.xyz = u_xlat8.xyz * vec3(u_xlat4);
					    u_xlat6.x = dot(u_xlat6.xyz, u_xlat8.xyz);
					    u_xlat6.x = log2(abs(u_xlat6.x));
					    u_xlat6.x = u_xlat6.x * _FresnelStr;
					    u_xlat6.x = exp2(u_xlat6.x);
					    u_xlat6.x = u_xlat6.x + u_xlat6.x;
					    vs_TEXCOORD4 = min(u_xlat6.x, 1.0);
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat5 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat5;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlat10.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati3].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati3].xy + u_xlat10.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendAlpha" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					float u_xlat14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat14 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat2.xyz = vec3(u_xlat14) * u_xlat2.xyz;
					    u_xlat14 = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat3.xyz = vec3(u_xlat14) * in_NORMAL0.xyz;
					    u_xlat2.x = dot(u_xlat3.xyz, u_xlat2.xyz);
					    u_xlat2.x = log2(abs(u_xlat2.x));
					    u_xlat2.x = u_xlat2.x * _FresnelStr;
					    u_xlat2.x = exp2(u_xlat2.x);
					    u_xlat2.x = u_xlat2.x + u_xlat2.x;
					    vs_TEXCOORD4 = min(u_xlat2.x, 1.0);
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat4 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_3_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati1;
					vec4 u_xlat2;
					int u_xlati3;
					float u_xlat4;
					float u_xlat5;
					vec3 u_xlat6;
					vec3 u_xlat8;
					vec2 u_xlat10;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    u_xlat6.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat6.x = inversesqrt(u_xlat6.x);
					    u_xlat6.xyz = u_xlat6.xxx * in_NORMAL0.xyz;
					    u_xlati3 = unity_StereoEyeIndex;
					    u_xlat8.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].yyy;
					    u_xlat8.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].xxx + u_xlat8.xyz;
					    u_xlat8.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].zzz + u_xlat8.xyz;
					    u_xlat8.xyz = u_xlat8.xyz + unity_WorldToObject[3].xyz;
					    u_xlat8.xyz = u_xlat8.xyz + (-in_POSITION0.xyz);
					    u_xlat4 = dot(u_xlat8.xyz, u_xlat8.xyz);
					    u_xlat4 = inversesqrt(u_xlat4);
					    u_xlat8.xyz = u_xlat8.xyz * vec3(u_xlat4);
					    u_xlat6.x = dot(u_xlat6.xyz, u_xlat8.xyz);
					    u_xlat6.x = log2(abs(u_xlat6.x));
					    u_xlat6.x = u_xlat6.x * _FresnelStr;
					    u_xlat6.x = exp2(u_xlat6.x);
					    u_xlat6.x = u_xlat6.x + u_xlat6.x;
					    vs_TEXCOORD4 = min(u_xlat6.x, 1.0);
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat5 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat5;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlat10.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati3].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati3].xy + u_xlat10.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					float u_xlat14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat14 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat2.xyz = vec3(u_xlat14) * u_xlat2.xyz;
					    u_xlat14 = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat3.xyz = vec3(u_xlat14) * in_NORMAL0.xyz;
					    u_xlat2.x = dot(u_xlat3.xyz, u_xlat2.xyz);
					    u_xlat2.x = log2(abs(u_xlat2.x));
					    u_xlat2.x = u_xlat2.x * _FresnelStr;
					    u_xlat2.x = exp2(u_xlat2.x);
					    u_xlat2.x = u_xlat2.x + u_xlat2.x;
					    vs_TEXCOORD4 = min(u_xlat2.x, 1.0);
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat4 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_3_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati1;
					vec4 u_xlat2;
					int u_xlati3;
					float u_xlat4;
					float u_xlat5;
					vec3 u_xlat6;
					vec3 u_xlat8;
					vec2 u_xlat10;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    u_xlat6.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat6.x = inversesqrt(u_xlat6.x);
					    u_xlat6.xyz = u_xlat6.xxx * in_NORMAL0.xyz;
					    u_xlati3 = unity_StereoEyeIndex;
					    u_xlat8.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].yyy;
					    u_xlat8.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].xxx + u_xlat8.xyz;
					    u_xlat8.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].zzz + u_xlat8.xyz;
					    u_xlat8.xyz = u_xlat8.xyz + unity_WorldToObject[3].xyz;
					    u_xlat8.xyz = u_xlat8.xyz + (-in_POSITION0.xyz);
					    u_xlat4 = dot(u_xlat8.xyz, u_xlat8.xyz);
					    u_xlat4 = inversesqrt(u_xlat4);
					    u_xlat8.xyz = u_xlat8.xyz * vec3(u_xlat4);
					    u_xlat6.x = dot(u_xlat6.xyz, u_xlat8.xyz);
					    u_xlat6.x = log2(abs(u_xlat6.x));
					    u_xlat6.x = u_xlat6.x * _FresnelStr;
					    u_xlat6.x = exp2(u_xlat6.x);
					    u_xlat6.x = u_xlat6.x + u_xlat6.x;
					    vs_TEXCOORD4 = min(u_xlat6.x, 1.0);
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat5 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat5;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlat10.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati3].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati3].xy + u_xlat10.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendAlpha" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					float u_xlat14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat14 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat2.xyz = vec3(u_xlat14) * u_xlat2.xyz;
					    u_xlat14 = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat3.xyz = vec3(u_xlat14) * in_NORMAL0.xyz;
					    u_xlat2.x = dot(u_xlat3.xyz, u_xlat2.xyz);
					    u_xlat2.x = log2(abs(u_xlat2.x));
					    u_xlat2.x = u_xlat2.x * _FresnelStr;
					    u_xlat2.x = exp2(u_xlat2.x);
					    u_xlat2.x = u_xlat2.x + u_xlat2.x;
					    vs_TEXCOORD4 = min(u_xlat2.x, 1.0);
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat4 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_3_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati1;
					vec4 u_xlat2;
					int u_xlati3;
					float u_xlat4;
					float u_xlat5;
					vec3 u_xlat6;
					vec3 u_xlat8;
					vec2 u_xlat10;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    u_xlat6.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat6.x = inversesqrt(u_xlat6.x);
					    u_xlat6.xyz = u_xlat6.xxx * in_NORMAL0.xyz;
					    u_xlati3 = unity_StereoEyeIndex;
					    u_xlat8.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].yyy;
					    u_xlat8.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].xxx + u_xlat8.xyz;
					    u_xlat8.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].zzz + u_xlat8.xyz;
					    u_xlat8.xyz = u_xlat8.xyz + unity_WorldToObject[3].xyz;
					    u_xlat8.xyz = u_xlat8.xyz + (-in_POSITION0.xyz);
					    u_xlat4 = dot(u_xlat8.xyz, u_xlat8.xyz);
					    u_xlat4 = inversesqrt(u_xlat4);
					    u_xlat8.xyz = u_xlat8.xyz * vec3(u_xlat4);
					    u_xlat6.x = dot(u_xlat6.xyz, u_xlat8.xyz);
					    u_xlat6.x = log2(abs(u_xlat6.x));
					    u_xlat6.x = u_xlat6.x * _FresnelStr;
					    u_xlat6.x = exp2(u_xlat6.x);
					    u_xlat6.x = u_xlat6.x + u_xlat6.x;
					    vs_TEXCOORD4 = min(u_xlat6.x, 1.0);
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat5 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat5;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlat10.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati3].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati3].xy + u_xlat10.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					float u_xlat14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat14 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat2.xyz = vec3(u_xlat14) * u_xlat2.xyz;
					    u_xlat14 = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat3.xyz = vec3(u_xlat14) * in_NORMAL0.xyz;
					    u_xlat2.x = dot(u_xlat3.xyz, u_xlat2.xyz);
					    u_xlat2.x = log2(abs(u_xlat2.x));
					    u_xlat2.x = u_xlat2.x * _FresnelStr;
					    u_xlat2.x = exp2(u_xlat2.x);
					    u_xlat2.x = u_xlat2.x + u_xlat2.x;
					    vs_TEXCOORD4 = min(u_xlat2.x, 1.0);
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat4 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_3_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati1;
					vec4 u_xlat2;
					int u_xlati3;
					float u_xlat4;
					float u_xlat5;
					vec3 u_xlat6;
					vec3 u_xlat8;
					vec2 u_xlat10;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    u_xlat6.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat6.x = inversesqrt(u_xlat6.x);
					    u_xlat6.xyz = u_xlat6.xxx * in_NORMAL0.xyz;
					    u_xlati3 = unity_StereoEyeIndex;
					    u_xlat8.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].yyy;
					    u_xlat8.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].xxx + u_xlat8.xyz;
					    u_xlat8.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].zzz + u_xlat8.xyz;
					    u_xlat8.xyz = u_xlat8.xyz + unity_WorldToObject[3].xyz;
					    u_xlat8.xyz = u_xlat8.xyz + (-in_POSITION0.xyz);
					    u_xlat4 = dot(u_xlat8.xyz, u_xlat8.xyz);
					    u_xlat4 = inversesqrt(u_xlat4);
					    u_xlat8.xyz = u_xlat8.xyz * vec3(u_xlat4);
					    u_xlat6.x = dot(u_xlat6.xyz, u_xlat8.xyz);
					    u_xlat6.x = log2(abs(u_xlat6.x));
					    u_xlat6.x = u_xlat6.x * _FresnelStr;
					    u_xlat6.x = exp2(u_xlat6.x);
					    u_xlat6.x = u_xlat6.x + u_xlat6.x;
					    vs_TEXCOORD4 = min(u_xlat6.x, 1.0);
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat5 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat5;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlat10.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati3].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati3].xy + u_xlat10.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendAlpha" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					float u_xlat9;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat9 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat9 = inversesqrt(u_xlat9);
					    u_xlat2.xyz = vec3(u_xlat9) * u_xlat2.xyz;
					    u_xlat9 = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat9 = inversesqrt(u_xlat9);
					    u_xlat3.xyz = vec3(u_xlat9) * in_NORMAL0.xyz;
					    u_xlat9 = dot(u_xlat3.xyz, u_xlat2.xyz);
					    u_xlat9 = log2(abs(u_xlat9));
					    u_xlat9 = u_xlat9 * _FresnelStr;
					    u_xlat9 = exp2(u_xlat9);
					    u_xlat9 = u_xlat9 + u_xlat9;
					    vs_TEXCOORD4 = min(u_xlat9, 1.0);
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat4 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_3_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					vec3 u_xlat5;
					vec2 u_xlat8;
					int u_xlati10;
					float u_xlat15;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    u_xlat5.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat5.x = inversesqrt(u_xlat5.x);
					    u_xlat5.xyz = u_xlat5.xxx * in_NORMAL0.xyz;
					    u_xlati10 = unity_StereoEyeIndex;
					    u_xlat3.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati10].yyy;
					    u_xlat3.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati10].xxx + u_xlat3.xyz;
					    u_xlat3.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati10].zzz + u_xlat3.xyz;
					    u_xlat3.xyz = u_xlat3.xyz + unity_WorldToObject[3].xyz;
					    u_xlat3.xyz = u_xlat3.xyz + (-in_POSITION0.xyz);
					    u_xlat15 = dot(u_xlat3.xyz, u_xlat3.xyz);
					    u_xlat15 = inversesqrt(u_xlat15);
					    u_xlat3.xyz = vec3(u_xlat15) * u_xlat3.xyz;
					    u_xlat5.x = dot(u_xlat5.xyz, u_xlat3.xyz);
					    u_xlat5.x = log2(abs(u_xlat5.x));
					    u_xlat5.x = u_xlat5.x * _FresnelStr;
					    u_xlat5.x = exp2(u_xlat5.x);
					    u_xlat5.x = u_xlat5.x + u_xlat5.x;
					    vs_TEXCOORD4 = min(u_xlat5.x, 1.0);
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat4 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlat8.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati10].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati10].xy + u_xlat8.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendAlpha" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					float u_xlat9;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat9 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat9 = inversesqrt(u_xlat9);
					    u_xlat2.xyz = vec3(u_xlat9) * u_xlat2.xyz;
					    u_xlat9 = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat9 = inversesqrt(u_xlat9);
					    u_xlat3.xyz = vec3(u_xlat9) * in_NORMAL0.xyz;
					    u_xlat9 = dot(u_xlat3.xyz, u_xlat2.xyz);
					    u_xlat9 = log2(abs(u_xlat9));
					    u_xlat9 = u_xlat9 * _FresnelStr;
					    u_xlat9 = exp2(u_xlat9);
					    u_xlat9 = u_xlat9 + u_xlat9;
					    vs_TEXCOORD4 = min(u_xlat9, 1.0);
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat4 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_3_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					vec3 u_xlat5;
					vec2 u_xlat8;
					int u_xlati10;
					float u_xlat15;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    u_xlat5.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat5.x = inversesqrt(u_xlat5.x);
					    u_xlat5.xyz = u_xlat5.xxx * in_NORMAL0.xyz;
					    u_xlati10 = unity_StereoEyeIndex;
					    u_xlat3.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati10].yyy;
					    u_xlat3.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati10].xxx + u_xlat3.xyz;
					    u_xlat3.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati10].zzz + u_xlat3.xyz;
					    u_xlat3.xyz = u_xlat3.xyz + unity_WorldToObject[3].xyz;
					    u_xlat3.xyz = u_xlat3.xyz + (-in_POSITION0.xyz);
					    u_xlat15 = dot(u_xlat3.xyz, u_xlat3.xyz);
					    u_xlat15 = inversesqrt(u_xlat15);
					    u_xlat3.xyz = vec3(u_xlat15) * u_xlat3.xyz;
					    u_xlat5.x = dot(u_xlat5.xyz, u_xlat3.xyz);
					    u_xlat5.x = log2(abs(u_xlat5.x));
					    u_xlat5.x = u_xlat5.x * _FresnelStr;
					    u_xlat5.x = exp2(u_xlat5.x);
					    u_xlat5.x = u_xlat5.x + u_xlat5.x;
					    vs_TEXCOORD4 = min(u_xlat5.x, 1.0);
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat4 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlat8.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati10].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati10].xy + u_xlat8.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendAlpha" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					float u_xlat14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat14 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat2.xyz = vec3(u_xlat14) * u_xlat2.xyz;
					    u_xlat14 = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat3.xyz = vec3(u_xlat14) * in_NORMAL0.xyz;
					    u_xlat2.x = dot(u_xlat3.xyz, u_xlat2.xyz);
					    u_xlat2.x = log2(abs(u_xlat2.x));
					    u_xlat2.x = u_xlat2.x * _FresnelStr;
					    u_xlat2.x = exp2(u_xlat2.x);
					    u_xlat2.x = u_xlat2.x + u_xlat2.x;
					    vs_TEXCOORD4 = min(u_xlat2.x, 1.0);
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat4 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_3_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati1;
					vec4 u_xlat2;
					int u_xlati3;
					float u_xlat4;
					float u_xlat5;
					vec3 u_xlat6;
					vec3 u_xlat8;
					vec2 u_xlat10;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    u_xlat6.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat6.x = inversesqrt(u_xlat6.x);
					    u_xlat6.xyz = u_xlat6.xxx * in_NORMAL0.xyz;
					    u_xlati3 = unity_StereoEyeIndex;
					    u_xlat8.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].yyy;
					    u_xlat8.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].xxx + u_xlat8.xyz;
					    u_xlat8.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].zzz + u_xlat8.xyz;
					    u_xlat8.xyz = u_xlat8.xyz + unity_WorldToObject[3].xyz;
					    u_xlat8.xyz = u_xlat8.xyz + (-in_POSITION0.xyz);
					    u_xlat4 = dot(u_xlat8.xyz, u_xlat8.xyz);
					    u_xlat4 = inversesqrt(u_xlat4);
					    u_xlat8.xyz = u_xlat8.xyz * vec3(u_xlat4);
					    u_xlat6.x = dot(u_xlat6.xyz, u_xlat8.xyz);
					    u_xlat6.x = log2(abs(u_xlat6.x));
					    u_xlat6.x = u_xlat6.x * _FresnelStr;
					    u_xlat6.x = exp2(u_xlat6.x);
					    u_xlat6.x = u_xlat6.x + u_xlat6.x;
					    vs_TEXCOORD4 = min(u_xlat6.x, 1.0);
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat5 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat5;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlat10.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati3].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati3].xy + u_xlat10.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					float u_xlat14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat14 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat2.xyz = vec3(u_xlat14) * u_xlat2.xyz;
					    u_xlat14 = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat3.xyz = vec3(u_xlat14) * in_NORMAL0.xyz;
					    u_xlat2.x = dot(u_xlat3.xyz, u_xlat2.xyz);
					    u_xlat2.x = log2(abs(u_xlat2.x));
					    u_xlat2.x = u_xlat2.x * _FresnelStr;
					    u_xlat2.x = exp2(u_xlat2.x);
					    u_xlat2.x = u_xlat2.x + u_xlat2.x;
					    vs_TEXCOORD4 = min(u_xlat2.x, 1.0);
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat4 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_3_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati1;
					vec4 u_xlat2;
					int u_xlati3;
					float u_xlat4;
					float u_xlat5;
					vec3 u_xlat6;
					vec3 u_xlat8;
					vec2 u_xlat10;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    u_xlat6.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat6.x = inversesqrt(u_xlat6.x);
					    u_xlat6.xyz = u_xlat6.xxx * in_NORMAL0.xyz;
					    u_xlati3 = unity_StereoEyeIndex;
					    u_xlat8.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].yyy;
					    u_xlat8.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].xxx + u_xlat8.xyz;
					    u_xlat8.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].zzz + u_xlat8.xyz;
					    u_xlat8.xyz = u_xlat8.xyz + unity_WorldToObject[3].xyz;
					    u_xlat8.xyz = u_xlat8.xyz + (-in_POSITION0.xyz);
					    u_xlat4 = dot(u_xlat8.xyz, u_xlat8.xyz);
					    u_xlat4 = inversesqrt(u_xlat4);
					    u_xlat8.xyz = u_xlat8.xyz * vec3(u_xlat4);
					    u_xlat6.x = dot(u_xlat6.xyz, u_xlat8.xyz);
					    u_xlat6.x = log2(abs(u_xlat6.x));
					    u_xlat6.x = u_xlat6.x * _FresnelStr;
					    u_xlat6.x = exp2(u_xlat6.x);
					    u_xlat6.x = u_xlat6.x + u_xlat6.x;
					    vs_TEXCOORD4 = min(u_xlat6.x, 1.0);
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat5 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat5;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlat10.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati3].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati3].xy + u_xlat10.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendAlpha" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					float u_xlat14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat14 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat2.xyz = vec3(u_xlat14) * u_xlat2.xyz;
					    u_xlat14 = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat3.xyz = vec3(u_xlat14) * in_NORMAL0.xyz;
					    u_xlat2.x = dot(u_xlat3.xyz, u_xlat2.xyz);
					    u_xlat2.x = log2(abs(u_xlat2.x));
					    u_xlat2.x = u_xlat2.x * _FresnelStr;
					    u_xlat2.x = exp2(u_xlat2.x);
					    u_xlat2.x = u_xlat2.x + u_xlat2.x;
					    vs_TEXCOORD4 = min(u_xlat2.x, 1.0);
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat4 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_3_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati1;
					vec4 u_xlat2;
					int u_xlati3;
					float u_xlat4;
					float u_xlat5;
					vec3 u_xlat6;
					vec3 u_xlat8;
					vec2 u_xlat10;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    u_xlat6.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat6.x = inversesqrt(u_xlat6.x);
					    u_xlat6.xyz = u_xlat6.xxx * in_NORMAL0.xyz;
					    u_xlati3 = unity_StereoEyeIndex;
					    u_xlat8.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].yyy;
					    u_xlat8.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].xxx + u_xlat8.xyz;
					    u_xlat8.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].zzz + u_xlat8.xyz;
					    u_xlat8.xyz = u_xlat8.xyz + unity_WorldToObject[3].xyz;
					    u_xlat8.xyz = u_xlat8.xyz + (-in_POSITION0.xyz);
					    u_xlat4 = dot(u_xlat8.xyz, u_xlat8.xyz);
					    u_xlat4 = inversesqrt(u_xlat4);
					    u_xlat8.xyz = u_xlat8.xyz * vec3(u_xlat4);
					    u_xlat6.x = dot(u_xlat6.xyz, u_xlat8.xyz);
					    u_xlat6.x = log2(abs(u_xlat6.x));
					    u_xlat6.x = u_xlat6.x * _FresnelStr;
					    u_xlat6.x = exp2(u_xlat6.x);
					    u_xlat6.x = u_xlat6.x + u_xlat6.x;
					    vs_TEXCOORD4 = min(u_xlat6.x, 1.0);
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat5 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat5;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlat10.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati3].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati3].xy + u_xlat10.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					float u_xlat14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat14 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat2.xyz = vec3(u_xlat14) * u_xlat2.xyz;
					    u_xlat14 = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat3.xyz = vec3(u_xlat14) * in_NORMAL0.xyz;
					    u_xlat2.x = dot(u_xlat3.xyz, u_xlat2.xyz);
					    u_xlat2.x = log2(abs(u_xlat2.x));
					    u_xlat2.x = u_xlat2.x * _FresnelStr;
					    u_xlat2.x = exp2(u_xlat2.x);
					    u_xlat2.x = u_xlat2.x + u_xlat2.x;
					    vs_TEXCOORD4 = min(u_xlat2.x, 1.0);
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat4 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_3_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati1;
					vec4 u_xlat2;
					int u_xlati3;
					float u_xlat4;
					float u_xlat5;
					vec3 u_xlat6;
					vec3 u_xlat8;
					vec2 u_xlat10;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    u_xlat6.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat6.x = inversesqrt(u_xlat6.x);
					    u_xlat6.xyz = u_xlat6.xxx * in_NORMAL0.xyz;
					    u_xlati3 = unity_StereoEyeIndex;
					    u_xlat8.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].yyy;
					    u_xlat8.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].xxx + u_xlat8.xyz;
					    u_xlat8.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].zzz + u_xlat8.xyz;
					    u_xlat8.xyz = u_xlat8.xyz + unity_WorldToObject[3].xyz;
					    u_xlat8.xyz = u_xlat8.xyz + (-in_POSITION0.xyz);
					    u_xlat4 = dot(u_xlat8.xyz, u_xlat8.xyz);
					    u_xlat4 = inversesqrt(u_xlat4);
					    u_xlat8.xyz = u_xlat8.xyz * vec3(u_xlat4);
					    u_xlat6.x = dot(u_xlat6.xyz, u_xlat8.xyz);
					    u_xlat6.x = log2(abs(u_xlat6.x));
					    u_xlat6.x = u_xlat6.x * _FresnelStr;
					    u_xlat6.x = exp2(u_xlat6.x);
					    u_xlat6.x = u_xlat6.x + u_xlat6.x;
					    vs_TEXCOORD4 = min(u_xlat6.x, 1.0);
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat5 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat5;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlat10.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati3].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati3].xy + u_xlat10.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendAlpha" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					float u_xlat14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat14 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat2.xyz = vec3(u_xlat14) * u_xlat2.xyz;
					    u_xlat14 = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat3.xyz = vec3(u_xlat14) * in_NORMAL0.xyz;
					    u_xlat2.x = dot(u_xlat3.xyz, u_xlat2.xyz);
					    u_xlat2.x = log2(abs(u_xlat2.x));
					    u_xlat2.x = u_xlat2.x * _FresnelStr;
					    u_xlat2.x = exp2(u_xlat2.x);
					    u_xlat2.x = u_xlat2.x + u_xlat2.x;
					    vs_TEXCOORD4 = min(u_xlat2.x, 1.0);
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat4 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_3_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati1;
					vec4 u_xlat2;
					int u_xlati3;
					float u_xlat4;
					float u_xlat5;
					vec3 u_xlat6;
					vec3 u_xlat8;
					vec2 u_xlat10;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    u_xlat6.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat6.x = inversesqrt(u_xlat6.x);
					    u_xlat6.xyz = u_xlat6.xxx * in_NORMAL0.xyz;
					    u_xlati3 = unity_StereoEyeIndex;
					    u_xlat8.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].yyy;
					    u_xlat8.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].xxx + u_xlat8.xyz;
					    u_xlat8.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].zzz + u_xlat8.xyz;
					    u_xlat8.xyz = u_xlat8.xyz + unity_WorldToObject[3].xyz;
					    u_xlat8.xyz = u_xlat8.xyz + (-in_POSITION0.xyz);
					    u_xlat4 = dot(u_xlat8.xyz, u_xlat8.xyz);
					    u_xlat4 = inversesqrt(u_xlat4);
					    u_xlat8.xyz = u_xlat8.xyz * vec3(u_xlat4);
					    u_xlat6.x = dot(u_xlat6.xyz, u_xlat8.xyz);
					    u_xlat6.x = log2(abs(u_xlat6.x));
					    u_xlat6.x = u_xlat6.x * _FresnelStr;
					    u_xlat6.x = exp2(u_xlat6.x);
					    u_xlat6.x = u_xlat6.x + u_xlat6.x;
					    vs_TEXCOORD4 = min(u_xlat6.x, 1.0);
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat5 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat5;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlat10.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati3].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati3].xy + u_xlat10.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					float u_xlat14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat14 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat2.xyz = vec3(u_xlat14) * u_xlat2.xyz;
					    u_xlat14 = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat3.xyz = vec3(u_xlat14) * in_NORMAL0.xyz;
					    u_xlat2.x = dot(u_xlat3.xyz, u_xlat2.xyz);
					    u_xlat2.x = log2(abs(u_xlat2.x));
					    u_xlat2.x = u_xlat2.x * _FresnelStr;
					    u_xlat2.x = exp2(u_xlat2.x);
					    u_xlat2.x = u_xlat2.x + u_xlat2.x;
					    vs_TEXCOORD4 = min(u_xlat2.x, 1.0);
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat4 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_3_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati1;
					vec4 u_xlat2;
					int u_xlati3;
					float u_xlat4;
					float u_xlat5;
					vec3 u_xlat6;
					vec3 u_xlat8;
					vec2 u_xlat10;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    u_xlat6.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat6.x = inversesqrt(u_xlat6.x);
					    u_xlat6.xyz = u_xlat6.xxx * in_NORMAL0.xyz;
					    u_xlati3 = unity_StereoEyeIndex;
					    u_xlat8.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].yyy;
					    u_xlat8.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].xxx + u_xlat8.xyz;
					    u_xlat8.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].zzz + u_xlat8.xyz;
					    u_xlat8.xyz = u_xlat8.xyz + unity_WorldToObject[3].xyz;
					    u_xlat8.xyz = u_xlat8.xyz + (-in_POSITION0.xyz);
					    u_xlat4 = dot(u_xlat8.xyz, u_xlat8.xyz);
					    u_xlat4 = inversesqrt(u_xlat4);
					    u_xlat8.xyz = u_xlat8.xyz * vec3(u_xlat4);
					    u_xlat6.x = dot(u_xlat6.xyz, u_xlat8.xyz);
					    u_xlat6.x = log2(abs(u_xlat6.x));
					    u_xlat6.x = u_xlat6.x * _FresnelStr;
					    u_xlat6.x = exp2(u_xlat6.x);
					    u_xlat6.x = u_xlat6.x + u_xlat6.x;
					    vs_TEXCOORD4 = min(u_xlat6.x, 1.0);
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat5 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat5;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlat10.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati3].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati3].xy + u_xlat10.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendAlpha" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat2 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat2;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec2 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					float u_xlat3;
					int u_xlati6;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat3 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat3;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlati6 = unity_StereoEyeIndex;
					    u_xlat1.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati6].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati6].xy + u_xlat1.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendAlpha" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat2 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat2;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec2 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					float u_xlat3;
					int u_xlati6;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat3 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat3;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlati6 = unity_StereoEyeIndex;
					    u_xlat1.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati6].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati6].xy + u_xlat1.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendAlpha" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat2 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat2;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec2 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					float u_xlat3;
					int u_xlati6;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat3 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat3;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlati6 = unity_StereoEyeIndex;
					    u_xlat1.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati6].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati6].xy + u_xlat1.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat2 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat2;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec2 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					float u_xlat3;
					int u_xlati6;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat3 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat3;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlati6 = unity_StereoEyeIndex;
					    u_xlat1.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati6].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati6].xy + u_xlat1.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendAlpha" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat2 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat2;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec2 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					float u_xlat3;
					int u_xlati6;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat3 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat3;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlati6 = unity_StereoEyeIndex;
					    u_xlat1.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati6].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati6].xy + u_xlat1.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat2 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat2;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec2 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					float u_xlat3;
					int u_xlati6;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat3 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat3;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlati6 = unity_StereoEyeIndex;
					    u_xlat1.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati6].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati6].xy + u_xlat1.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendAlpha" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat2 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat2;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec2 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					float u_xlat3;
					int u_xlati6;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat3 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat3;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlati6 = unity_StereoEyeIndex;
					    u_xlat1.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati6].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati6].xy + u_xlat1.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat2 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat2;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec2 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					float u_xlat3;
					int u_xlati6;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat3 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat3;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlati6 = unity_StereoEyeIndex;
					    u_xlat1.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati6].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati6].xy + u_xlat1.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendAlpha" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat2 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat2;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec2 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					float u_xlat3;
					int u_xlati6;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat3 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat3;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlati6 = unity_StereoEyeIndex;
					    u_xlat1.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati6].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati6].xy + u_xlat1.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendAlpha" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat2 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat2;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec2 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					float u_xlat3;
					int u_xlati6;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat3 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat3;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlati6 = unity_StereoEyeIndex;
					    u_xlat1.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati6].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati6].xy + u_xlat1.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendAlpha" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat2 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat2;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec2 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					float u_xlat3;
					int u_xlati6;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat3 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat3;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlati6 = unity_StereoEyeIndex;
					    u_xlat1.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati6].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati6].xy + u_xlat1.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat2 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat2;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec2 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					float u_xlat3;
					int u_xlati6;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat3 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat3;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlati6 = unity_StereoEyeIndex;
					    u_xlat1.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati6].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati6].xy + u_xlat1.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendAlpha" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat2 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat2;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec2 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					float u_xlat3;
					int u_xlati6;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat3 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat3;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlati6 = unity_StereoEyeIndex;
					    u_xlat1.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati6].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati6].xy + u_xlat1.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat2 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat2;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec2 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					float u_xlat3;
					int u_xlati6;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat3 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat3;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlati6 = unity_StereoEyeIndex;
					    u_xlat1.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati6].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati6].xy + u_xlat1.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendAlpha" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat2 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat2;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec2 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					float u_xlat3;
					int u_xlati6;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat3 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat3;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlati6 = unity_StereoEyeIndex;
					    u_xlat1.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati6].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati6].xy + u_xlat1.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat2 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat2;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec2 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					float u_xlat3;
					int u_xlati6;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat3 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat3;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlati6 = unity_StereoEyeIndex;
					    u_xlat1.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati6].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati6].xy + u_xlat1.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendAlpha" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					float u_xlat9;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat9 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat9 = inversesqrt(u_xlat9);
					    u_xlat2.xyz = vec3(u_xlat9) * u_xlat2.xyz;
					    u_xlat9 = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat9 = inversesqrt(u_xlat9);
					    u_xlat3.xyz = vec3(u_xlat9) * in_NORMAL0.xyz;
					    u_xlat9 = dot(u_xlat3.xyz, u_xlat2.xyz);
					    u_xlat9 = log2(abs(u_xlat9));
					    u_xlat9 = u_xlat9 * _FresnelStr;
					    u_xlat9 = exp2(u_xlat9);
					    u_xlat9 = u_xlat9 + u_xlat9;
					    vs_TEXCOORD4 = min(u_xlat9, 1.0);
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat4 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_3_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					vec3 u_xlat5;
					vec2 u_xlat8;
					int u_xlati10;
					float u_xlat15;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    u_xlat5.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat5.x = inversesqrt(u_xlat5.x);
					    u_xlat5.xyz = u_xlat5.xxx * in_NORMAL0.xyz;
					    u_xlati10 = unity_StereoEyeIndex;
					    u_xlat3.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati10].yyy;
					    u_xlat3.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati10].xxx + u_xlat3.xyz;
					    u_xlat3.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati10].zzz + u_xlat3.xyz;
					    u_xlat3.xyz = u_xlat3.xyz + unity_WorldToObject[3].xyz;
					    u_xlat3.xyz = u_xlat3.xyz + (-in_POSITION0.xyz);
					    u_xlat15 = dot(u_xlat3.xyz, u_xlat3.xyz);
					    u_xlat15 = inversesqrt(u_xlat15);
					    u_xlat3.xyz = vec3(u_xlat15) * u_xlat3.xyz;
					    u_xlat5.x = dot(u_xlat5.xyz, u_xlat3.xyz);
					    u_xlat5.x = log2(abs(u_xlat5.x));
					    u_xlat5.x = u_xlat5.x * _FresnelStr;
					    u_xlat5.x = exp2(u_xlat5.x);
					    u_xlat5.x = u_xlat5.x + u_xlat5.x;
					    vs_TEXCOORD4 = min(u_xlat5.x, 1.0);
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat4 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlat8.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati10].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati10].xy + u_xlat8.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendAlpha" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					float u_xlat9;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat9 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat9 = inversesqrt(u_xlat9);
					    u_xlat2.xyz = vec3(u_xlat9) * u_xlat2.xyz;
					    u_xlat9 = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat9 = inversesqrt(u_xlat9);
					    u_xlat3.xyz = vec3(u_xlat9) * in_NORMAL0.xyz;
					    u_xlat9 = dot(u_xlat3.xyz, u_xlat2.xyz);
					    u_xlat9 = log2(abs(u_xlat9));
					    u_xlat9 = u_xlat9 * _FresnelStr;
					    u_xlat9 = exp2(u_xlat9);
					    u_xlat9 = u_xlat9 + u_xlat9;
					    vs_TEXCOORD4 = min(u_xlat9, 1.0);
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat4 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_3_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					vec3 u_xlat5;
					vec2 u_xlat8;
					int u_xlati10;
					float u_xlat15;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    u_xlat5.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat5.x = inversesqrt(u_xlat5.x);
					    u_xlat5.xyz = u_xlat5.xxx * in_NORMAL0.xyz;
					    u_xlati10 = unity_StereoEyeIndex;
					    u_xlat3.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati10].yyy;
					    u_xlat3.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati10].xxx + u_xlat3.xyz;
					    u_xlat3.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati10].zzz + u_xlat3.xyz;
					    u_xlat3.xyz = u_xlat3.xyz + unity_WorldToObject[3].xyz;
					    u_xlat3.xyz = u_xlat3.xyz + (-in_POSITION0.xyz);
					    u_xlat15 = dot(u_xlat3.xyz, u_xlat3.xyz);
					    u_xlat15 = inversesqrt(u_xlat15);
					    u_xlat3.xyz = vec3(u_xlat15) * u_xlat3.xyz;
					    u_xlat5.x = dot(u_xlat5.xyz, u_xlat3.xyz);
					    u_xlat5.x = log2(abs(u_xlat5.x));
					    u_xlat5.x = u_xlat5.x * _FresnelStr;
					    u_xlat5.x = exp2(u_xlat5.x);
					    u_xlat5.x = u_xlat5.x + u_xlat5.x;
					    vs_TEXCOORD4 = min(u_xlat5.x, 1.0);
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat4 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlat8.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati10].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati10].xy + u_xlat8.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendAlpha" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					float u_xlat14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat14 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat2.xyz = vec3(u_xlat14) * u_xlat2.xyz;
					    u_xlat14 = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat3.xyz = vec3(u_xlat14) * in_NORMAL0.xyz;
					    u_xlat2.x = dot(u_xlat3.xyz, u_xlat2.xyz);
					    u_xlat2.x = log2(abs(u_xlat2.x));
					    u_xlat2.x = u_xlat2.x * _FresnelStr;
					    u_xlat2.x = exp2(u_xlat2.x);
					    u_xlat2.x = u_xlat2.x + u_xlat2.x;
					    vs_TEXCOORD4 = min(u_xlat2.x, 1.0);
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat4 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_3_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati1;
					vec4 u_xlat2;
					int u_xlati3;
					float u_xlat4;
					float u_xlat5;
					vec3 u_xlat6;
					vec3 u_xlat8;
					vec2 u_xlat10;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    u_xlat6.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat6.x = inversesqrt(u_xlat6.x);
					    u_xlat6.xyz = u_xlat6.xxx * in_NORMAL0.xyz;
					    u_xlati3 = unity_StereoEyeIndex;
					    u_xlat8.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].yyy;
					    u_xlat8.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].xxx + u_xlat8.xyz;
					    u_xlat8.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].zzz + u_xlat8.xyz;
					    u_xlat8.xyz = u_xlat8.xyz + unity_WorldToObject[3].xyz;
					    u_xlat8.xyz = u_xlat8.xyz + (-in_POSITION0.xyz);
					    u_xlat4 = dot(u_xlat8.xyz, u_xlat8.xyz);
					    u_xlat4 = inversesqrt(u_xlat4);
					    u_xlat8.xyz = u_xlat8.xyz * vec3(u_xlat4);
					    u_xlat6.x = dot(u_xlat6.xyz, u_xlat8.xyz);
					    u_xlat6.x = log2(abs(u_xlat6.x));
					    u_xlat6.x = u_xlat6.x * _FresnelStr;
					    u_xlat6.x = exp2(u_xlat6.x);
					    u_xlat6.x = u_xlat6.x + u_xlat6.x;
					    vs_TEXCOORD4 = min(u_xlat6.x, 1.0);
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat5 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat5;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlat10.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati3].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati3].xy + u_xlat10.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					float u_xlat14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat14 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat2.xyz = vec3(u_xlat14) * u_xlat2.xyz;
					    u_xlat14 = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat3.xyz = vec3(u_xlat14) * in_NORMAL0.xyz;
					    u_xlat2.x = dot(u_xlat3.xyz, u_xlat2.xyz);
					    u_xlat2.x = log2(abs(u_xlat2.x));
					    u_xlat2.x = u_xlat2.x * _FresnelStr;
					    u_xlat2.x = exp2(u_xlat2.x);
					    u_xlat2.x = u_xlat2.x + u_xlat2.x;
					    vs_TEXCOORD4 = min(u_xlat2.x, 1.0);
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat4 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_3_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati1;
					vec4 u_xlat2;
					int u_xlati3;
					float u_xlat4;
					float u_xlat5;
					vec3 u_xlat6;
					vec3 u_xlat8;
					vec2 u_xlat10;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    u_xlat6.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat6.x = inversesqrt(u_xlat6.x);
					    u_xlat6.xyz = u_xlat6.xxx * in_NORMAL0.xyz;
					    u_xlati3 = unity_StereoEyeIndex;
					    u_xlat8.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].yyy;
					    u_xlat8.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].xxx + u_xlat8.xyz;
					    u_xlat8.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].zzz + u_xlat8.xyz;
					    u_xlat8.xyz = u_xlat8.xyz + unity_WorldToObject[3].xyz;
					    u_xlat8.xyz = u_xlat8.xyz + (-in_POSITION0.xyz);
					    u_xlat4 = dot(u_xlat8.xyz, u_xlat8.xyz);
					    u_xlat4 = inversesqrt(u_xlat4);
					    u_xlat8.xyz = u_xlat8.xyz * vec3(u_xlat4);
					    u_xlat6.x = dot(u_xlat6.xyz, u_xlat8.xyz);
					    u_xlat6.x = log2(abs(u_xlat6.x));
					    u_xlat6.x = u_xlat6.x * _FresnelStr;
					    u_xlat6.x = exp2(u_xlat6.x);
					    u_xlat6.x = u_xlat6.x + u_xlat6.x;
					    vs_TEXCOORD4 = min(u_xlat6.x, 1.0);
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat5 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat5;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlat10.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati3].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati3].xy + u_xlat10.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendAlpha" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					float u_xlat14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat14 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat2.xyz = vec3(u_xlat14) * u_xlat2.xyz;
					    u_xlat14 = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat3.xyz = vec3(u_xlat14) * in_NORMAL0.xyz;
					    u_xlat2.x = dot(u_xlat3.xyz, u_xlat2.xyz);
					    u_xlat2.x = log2(abs(u_xlat2.x));
					    u_xlat2.x = u_xlat2.x * _FresnelStr;
					    u_xlat2.x = exp2(u_xlat2.x);
					    u_xlat2.x = u_xlat2.x + u_xlat2.x;
					    vs_TEXCOORD4 = min(u_xlat2.x, 1.0);
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat4 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_3_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati1;
					vec4 u_xlat2;
					int u_xlati3;
					float u_xlat4;
					float u_xlat5;
					vec3 u_xlat6;
					vec3 u_xlat8;
					vec2 u_xlat10;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    u_xlat6.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat6.x = inversesqrt(u_xlat6.x);
					    u_xlat6.xyz = u_xlat6.xxx * in_NORMAL0.xyz;
					    u_xlati3 = unity_StereoEyeIndex;
					    u_xlat8.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].yyy;
					    u_xlat8.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].xxx + u_xlat8.xyz;
					    u_xlat8.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].zzz + u_xlat8.xyz;
					    u_xlat8.xyz = u_xlat8.xyz + unity_WorldToObject[3].xyz;
					    u_xlat8.xyz = u_xlat8.xyz + (-in_POSITION0.xyz);
					    u_xlat4 = dot(u_xlat8.xyz, u_xlat8.xyz);
					    u_xlat4 = inversesqrt(u_xlat4);
					    u_xlat8.xyz = u_xlat8.xyz * vec3(u_xlat4);
					    u_xlat6.x = dot(u_xlat6.xyz, u_xlat8.xyz);
					    u_xlat6.x = log2(abs(u_xlat6.x));
					    u_xlat6.x = u_xlat6.x * _FresnelStr;
					    u_xlat6.x = exp2(u_xlat6.x);
					    u_xlat6.x = u_xlat6.x + u_xlat6.x;
					    vs_TEXCOORD4 = min(u_xlat6.x, 1.0);
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat5 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat5;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlat10.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati3].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati3].xy + u_xlat10.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					float u_xlat14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat14 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat2.xyz = vec3(u_xlat14) * u_xlat2.xyz;
					    u_xlat14 = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat3.xyz = vec3(u_xlat14) * in_NORMAL0.xyz;
					    u_xlat2.x = dot(u_xlat3.xyz, u_xlat2.xyz);
					    u_xlat2.x = log2(abs(u_xlat2.x));
					    u_xlat2.x = u_xlat2.x * _FresnelStr;
					    u_xlat2.x = exp2(u_xlat2.x);
					    u_xlat2.x = u_xlat2.x + u_xlat2.x;
					    vs_TEXCOORD4 = min(u_xlat2.x, 1.0);
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat4 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_3_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati1;
					vec4 u_xlat2;
					int u_xlati3;
					float u_xlat4;
					float u_xlat5;
					vec3 u_xlat6;
					vec3 u_xlat8;
					vec2 u_xlat10;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    u_xlat6.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat6.x = inversesqrt(u_xlat6.x);
					    u_xlat6.xyz = u_xlat6.xxx * in_NORMAL0.xyz;
					    u_xlati3 = unity_StereoEyeIndex;
					    u_xlat8.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].yyy;
					    u_xlat8.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].xxx + u_xlat8.xyz;
					    u_xlat8.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].zzz + u_xlat8.xyz;
					    u_xlat8.xyz = u_xlat8.xyz + unity_WorldToObject[3].xyz;
					    u_xlat8.xyz = u_xlat8.xyz + (-in_POSITION0.xyz);
					    u_xlat4 = dot(u_xlat8.xyz, u_xlat8.xyz);
					    u_xlat4 = inversesqrt(u_xlat4);
					    u_xlat8.xyz = u_xlat8.xyz * vec3(u_xlat4);
					    u_xlat6.x = dot(u_xlat6.xyz, u_xlat8.xyz);
					    u_xlat6.x = log2(abs(u_xlat6.x));
					    u_xlat6.x = u_xlat6.x * _FresnelStr;
					    u_xlat6.x = exp2(u_xlat6.x);
					    u_xlat6.x = u_xlat6.x + u_xlat6.x;
					    vs_TEXCOORD4 = min(u_xlat6.x, 1.0);
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat5 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat5;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlat10.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati3].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati3].xy + u_xlat10.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendAlpha" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					float u_xlat14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat14 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat2.xyz = vec3(u_xlat14) * u_xlat2.xyz;
					    u_xlat14 = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat3.xyz = vec3(u_xlat14) * in_NORMAL0.xyz;
					    u_xlat2.x = dot(u_xlat3.xyz, u_xlat2.xyz);
					    u_xlat2.x = log2(abs(u_xlat2.x));
					    u_xlat2.x = u_xlat2.x * _FresnelStr;
					    u_xlat2.x = exp2(u_xlat2.x);
					    u_xlat2.x = u_xlat2.x + u_xlat2.x;
					    vs_TEXCOORD4 = min(u_xlat2.x, 1.0);
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat4 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_3_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati1;
					vec4 u_xlat2;
					int u_xlati3;
					float u_xlat4;
					float u_xlat5;
					vec3 u_xlat6;
					vec3 u_xlat8;
					vec2 u_xlat10;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    u_xlat6.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat6.x = inversesqrt(u_xlat6.x);
					    u_xlat6.xyz = u_xlat6.xxx * in_NORMAL0.xyz;
					    u_xlati3 = unity_StereoEyeIndex;
					    u_xlat8.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].yyy;
					    u_xlat8.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].xxx + u_xlat8.xyz;
					    u_xlat8.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].zzz + u_xlat8.xyz;
					    u_xlat8.xyz = u_xlat8.xyz + unity_WorldToObject[3].xyz;
					    u_xlat8.xyz = u_xlat8.xyz + (-in_POSITION0.xyz);
					    u_xlat4 = dot(u_xlat8.xyz, u_xlat8.xyz);
					    u_xlat4 = inversesqrt(u_xlat4);
					    u_xlat8.xyz = u_xlat8.xyz * vec3(u_xlat4);
					    u_xlat6.x = dot(u_xlat6.xyz, u_xlat8.xyz);
					    u_xlat6.x = log2(abs(u_xlat6.x));
					    u_xlat6.x = u_xlat6.x * _FresnelStr;
					    u_xlat6.x = exp2(u_xlat6.x);
					    u_xlat6.x = u_xlat6.x + u_xlat6.x;
					    vs_TEXCOORD4 = min(u_xlat6.x, 1.0);
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat5 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat5;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlat10.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati3].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati3].xy + u_xlat10.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					float u_xlat14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat14 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat2.xyz = vec3(u_xlat14) * u_xlat2.xyz;
					    u_xlat14 = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat3.xyz = vec3(u_xlat14) * in_NORMAL0.xyz;
					    u_xlat2.x = dot(u_xlat3.xyz, u_xlat2.xyz);
					    u_xlat2.x = log2(abs(u_xlat2.x));
					    u_xlat2.x = u_xlat2.x * _FresnelStr;
					    u_xlat2.x = exp2(u_xlat2.x);
					    u_xlat2.x = u_xlat2.x + u_xlat2.x;
					    vs_TEXCOORD4 = min(u_xlat2.x, 1.0);
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat4 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_3_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati1;
					vec4 u_xlat2;
					int u_xlati3;
					float u_xlat4;
					float u_xlat5;
					vec3 u_xlat6;
					vec3 u_xlat8;
					vec2 u_xlat10;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    u_xlat6.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat6.x = inversesqrt(u_xlat6.x);
					    u_xlat6.xyz = u_xlat6.xxx * in_NORMAL0.xyz;
					    u_xlati3 = unity_StereoEyeIndex;
					    u_xlat8.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].yyy;
					    u_xlat8.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].xxx + u_xlat8.xyz;
					    u_xlat8.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].zzz + u_xlat8.xyz;
					    u_xlat8.xyz = u_xlat8.xyz + unity_WorldToObject[3].xyz;
					    u_xlat8.xyz = u_xlat8.xyz + (-in_POSITION0.xyz);
					    u_xlat4 = dot(u_xlat8.xyz, u_xlat8.xyz);
					    u_xlat4 = inversesqrt(u_xlat4);
					    u_xlat8.xyz = u_xlat8.xyz * vec3(u_xlat4);
					    u_xlat6.x = dot(u_xlat6.xyz, u_xlat8.xyz);
					    u_xlat6.x = log2(abs(u_xlat6.x));
					    u_xlat6.x = u_xlat6.x * _FresnelStr;
					    u_xlat6.x = exp2(u_xlat6.x);
					    u_xlat6.x = u_xlat6.x + u_xlat6.x;
					    vs_TEXCOORD4 = min(u_xlat6.x, 1.0);
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat5 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat5;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlat10.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati3].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati3].xy + u_xlat10.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendAlpha" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					float u_xlat9;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat9 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat9 = inversesqrt(u_xlat9);
					    u_xlat2.xyz = vec3(u_xlat9) * u_xlat2.xyz;
					    u_xlat9 = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat9 = inversesqrt(u_xlat9);
					    u_xlat3.xyz = vec3(u_xlat9) * in_NORMAL0.xyz;
					    u_xlat9 = dot(u_xlat3.xyz, u_xlat2.xyz);
					    u_xlat9 = log2(abs(u_xlat9));
					    u_xlat9 = u_xlat9 * _FresnelStr;
					    u_xlat9 = exp2(u_xlat9);
					    u_xlat9 = u_xlat9 + u_xlat9;
					    vs_TEXCOORD4 = min(u_xlat9, 1.0);
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat4 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_3_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					vec3 u_xlat5;
					vec2 u_xlat8;
					int u_xlati10;
					float u_xlat15;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    u_xlat5.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat5.x = inversesqrt(u_xlat5.x);
					    u_xlat5.xyz = u_xlat5.xxx * in_NORMAL0.xyz;
					    u_xlati10 = unity_StereoEyeIndex;
					    u_xlat3.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati10].yyy;
					    u_xlat3.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati10].xxx + u_xlat3.xyz;
					    u_xlat3.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati10].zzz + u_xlat3.xyz;
					    u_xlat3.xyz = u_xlat3.xyz + unity_WorldToObject[3].xyz;
					    u_xlat3.xyz = u_xlat3.xyz + (-in_POSITION0.xyz);
					    u_xlat15 = dot(u_xlat3.xyz, u_xlat3.xyz);
					    u_xlat15 = inversesqrt(u_xlat15);
					    u_xlat3.xyz = vec3(u_xlat15) * u_xlat3.xyz;
					    u_xlat5.x = dot(u_xlat5.xyz, u_xlat3.xyz);
					    u_xlat5.x = log2(abs(u_xlat5.x));
					    u_xlat5.x = u_xlat5.x * _FresnelStr;
					    u_xlat5.x = exp2(u_xlat5.x);
					    u_xlat5.x = u_xlat5.x + u_xlat5.x;
					    vs_TEXCOORD4 = min(u_xlat5.x, 1.0);
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat4 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlat8.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati10].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati10].xy + u_xlat8.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendAlpha" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					float u_xlat9;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat9 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat9 = inversesqrt(u_xlat9);
					    u_xlat2.xyz = vec3(u_xlat9) * u_xlat2.xyz;
					    u_xlat9 = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat9 = inversesqrt(u_xlat9);
					    u_xlat3.xyz = vec3(u_xlat9) * in_NORMAL0.xyz;
					    u_xlat9 = dot(u_xlat3.xyz, u_xlat2.xyz);
					    u_xlat9 = log2(abs(u_xlat9));
					    u_xlat9 = u_xlat9 * _FresnelStr;
					    u_xlat9 = exp2(u_xlat9);
					    u_xlat9 = u_xlat9 + u_xlat9;
					    vs_TEXCOORD4 = min(u_xlat9, 1.0);
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat4 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_3_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					vec3 u_xlat5;
					vec2 u_xlat8;
					int u_xlati10;
					float u_xlat15;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    u_xlat5.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat5.x = inversesqrt(u_xlat5.x);
					    u_xlat5.xyz = u_xlat5.xxx * in_NORMAL0.xyz;
					    u_xlati10 = unity_StereoEyeIndex;
					    u_xlat3.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati10].yyy;
					    u_xlat3.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati10].xxx + u_xlat3.xyz;
					    u_xlat3.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati10].zzz + u_xlat3.xyz;
					    u_xlat3.xyz = u_xlat3.xyz + unity_WorldToObject[3].xyz;
					    u_xlat3.xyz = u_xlat3.xyz + (-in_POSITION0.xyz);
					    u_xlat15 = dot(u_xlat3.xyz, u_xlat3.xyz);
					    u_xlat15 = inversesqrt(u_xlat15);
					    u_xlat3.xyz = vec3(u_xlat15) * u_xlat3.xyz;
					    u_xlat5.x = dot(u_xlat5.xyz, u_xlat3.xyz);
					    u_xlat5.x = log2(abs(u_xlat5.x));
					    u_xlat5.x = u_xlat5.x * _FresnelStr;
					    u_xlat5.x = exp2(u_xlat5.x);
					    u_xlat5.x = u_xlat5.x + u_xlat5.x;
					    vs_TEXCOORD4 = min(u_xlat5.x, 1.0);
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat4 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlat8.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati10].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati10].xy + u_xlat8.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendAlpha" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					float u_xlat14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat14 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat2.xyz = vec3(u_xlat14) * u_xlat2.xyz;
					    u_xlat14 = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat3.xyz = vec3(u_xlat14) * in_NORMAL0.xyz;
					    u_xlat2.x = dot(u_xlat3.xyz, u_xlat2.xyz);
					    u_xlat2.x = log2(abs(u_xlat2.x));
					    u_xlat2.x = u_xlat2.x * _FresnelStr;
					    u_xlat2.x = exp2(u_xlat2.x);
					    u_xlat2.x = u_xlat2.x + u_xlat2.x;
					    vs_TEXCOORD4 = min(u_xlat2.x, 1.0);
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat4 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_3_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati1;
					vec4 u_xlat2;
					int u_xlati3;
					float u_xlat4;
					float u_xlat5;
					vec3 u_xlat6;
					vec3 u_xlat8;
					vec2 u_xlat10;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    u_xlat6.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat6.x = inversesqrt(u_xlat6.x);
					    u_xlat6.xyz = u_xlat6.xxx * in_NORMAL0.xyz;
					    u_xlati3 = unity_StereoEyeIndex;
					    u_xlat8.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].yyy;
					    u_xlat8.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].xxx + u_xlat8.xyz;
					    u_xlat8.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].zzz + u_xlat8.xyz;
					    u_xlat8.xyz = u_xlat8.xyz + unity_WorldToObject[3].xyz;
					    u_xlat8.xyz = u_xlat8.xyz + (-in_POSITION0.xyz);
					    u_xlat4 = dot(u_xlat8.xyz, u_xlat8.xyz);
					    u_xlat4 = inversesqrt(u_xlat4);
					    u_xlat8.xyz = u_xlat8.xyz * vec3(u_xlat4);
					    u_xlat6.x = dot(u_xlat6.xyz, u_xlat8.xyz);
					    u_xlat6.x = log2(abs(u_xlat6.x));
					    u_xlat6.x = u_xlat6.x * _FresnelStr;
					    u_xlat6.x = exp2(u_xlat6.x);
					    u_xlat6.x = u_xlat6.x + u_xlat6.x;
					    vs_TEXCOORD4 = min(u_xlat6.x, 1.0);
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat5 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat5;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlat10.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati3].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati3].xy + u_xlat10.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					float u_xlat14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat14 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat2.xyz = vec3(u_xlat14) * u_xlat2.xyz;
					    u_xlat14 = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat3.xyz = vec3(u_xlat14) * in_NORMAL0.xyz;
					    u_xlat2.x = dot(u_xlat3.xyz, u_xlat2.xyz);
					    u_xlat2.x = log2(abs(u_xlat2.x));
					    u_xlat2.x = u_xlat2.x * _FresnelStr;
					    u_xlat2.x = exp2(u_xlat2.x);
					    u_xlat2.x = u_xlat2.x + u_xlat2.x;
					    vs_TEXCOORD4 = min(u_xlat2.x, 1.0);
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat4 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_3_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati1;
					vec4 u_xlat2;
					int u_xlati3;
					float u_xlat4;
					float u_xlat5;
					vec3 u_xlat6;
					vec3 u_xlat8;
					vec2 u_xlat10;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    u_xlat6.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat6.x = inversesqrt(u_xlat6.x);
					    u_xlat6.xyz = u_xlat6.xxx * in_NORMAL0.xyz;
					    u_xlati3 = unity_StereoEyeIndex;
					    u_xlat8.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].yyy;
					    u_xlat8.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].xxx + u_xlat8.xyz;
					    u_xlat8.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].zzz + u_xlat8.xyz;
					    u_xlat8.xyz = u_xlat8.xyz + unity_WorldToObject[3].xyz;
					    u_xlat8.xyz = u_xlat8.xyz + (-in_POSITION0.xyz);
					    u_xlat4 = dot(u_xlat8.xyz, u_xlat8.xyz);
					    u_xlat4 = inversesqrt(u_xlat4);
					    u_xlat8.xyz = u_xlat8.xyz * vec3(u_xlat4);
					    u_xlat6.x = dot(u_xlat6.xyz, u_xlat8.xyz);
					    u_xlat6.x = log2(abs(u_xlat6.x));
					    u_xlat6.x = u_xlat6.x * _FresnelStr;
					    u_xlat6.x = exp2(u_xlat6.x);
					    u_xlat6.x = u_xlat6.x + u_xlat6.x;
					    vs_TEXCOORD4 = min(u_xlat6.x, 1.0);
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat5 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat5;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlat10.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati3].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati3].xy + u_xlat10.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendAlpha" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					float u_xlat14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat14 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat2.xyz = vec3(u_xlat14) * u_xlat2.xyz;
					    u_xlat14 = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat3.xyz = vec3(u_xlat14) * in_NORMAL0.xyz;
					    u_xlat2.x = dot(u_xlat3.xyz, u_xlat2.xyz);
					    u_xlat2.x = log2(abs(u_xlat2.x));
					    u_xlat2.x = u_xlat2.x * _FresnelStr;
					    u_xlat2.x = exp2(u_xlat2.x);
					    u_xlat2.x = u_xlat2.x + u_xlat2.x;
					    vs_TEXCOORD4 = min(u_xlat2.x, 1.0);
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat4 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_3_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati1;
					vec4 u_xlat2;
					int u_xlati3;
					float u_xlat4;
					float u_xlat5;
					vec3 u_xlat6;
					vec3 u_xlat8;
					vec2 u_xlat10;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    u_xlat6.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat6.x = inversesqrt(u_xlat6.x);
					    u_xlat6.xyz = u_xlat6.xxx * in_NORMAL0.xyz;
					    u_xlati3 = unity_StereoEyeIndex;
					    u_xlat8.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].yyy;
					    u_xlat8.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].xxx + u_xlat8.xyz;
					    u_xlat8.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].zzz + u_xlat8.xyz;
					    u_xlat8.xyz = u_xlat8.xyz + unity_WorldToObject[3].xyz;
					    u_xlat8.xyz = u_xlat8.xyz + (-in_POSITION0.xyz);
					    u_xlat4 = dot(u_xlat8.xyz, u_xlat8.xyz);
					    u_xlat4 = inversesqrt(u_xlat4);
					    u_xlat8.xyz = u_xlat8.xyz * vec3(u_xlat4);
					    u_xlat6.x = dot(u_xlat6.xyz, u_xlat8.xyz);
					    u_xlat6.x = log2(abs(u_xlat6.x));
					    u_xlat6.x = u_xlat6.x * _FresnelStr;
					    u_xlat6.x = exp2(u_xlat6.x);
					    u_xlat6.x = u_xlat6.x + u_xlat6.x;
					    vs_TEXCOORD4 = min(u_xlat6.x, 1.0);
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat5 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat5;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlat10.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati3].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati3].xy + u_xlat10.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					float u_xlat14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat14 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat2.xyz = vec3(u_xlat14) * u_xlat2.xyz;
					    u_xlat14 = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat3.xyz = vec3(u_xlat14) * in_NORMAL0.xyz;
					    u_xlat2.x = dot(u_xlat3.xyz, u_xlat2.xyz);
					    u_xlat2.x = log2(abs(u_xlat2.x));
					    u_xlat2.x = u_xlat2.x * _FresnelStr;
					    u_xlat2.x = exp2(u_xlat2.x);
					    u_xlat2.x = u_xlat2.x + u_xlat2.x;
					    vs_TEXCOORD4 = min(u_xlat2.x, 1.0);
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat4 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_3_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati1;
					vec4 u_xlat2;
					int u_xlati3;
					float u_xlat4;
					float u_xlat5;
					vec3 u_xlat6;
					vec3 u_xlat8;
					vec2 u_xlat10;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    u_xlat6.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat6.x = inversesqrt(u_xlat6.x);
					    u_xlat6.xyz = u_xlat6.xxx * in_NORMAL0.xyz;
					    u_xlati3 = unity_StereoEyeIndex;
					    u_xlat8.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].yyy;
					    u_xlat8.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].xxx + u_xlat8.xyz;
					    u_xlat8.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].zzz + u_xlat8.xyz;
					    u_xlat8.xyz = u_xlat8.xyz + unity_WorldToObject[3].xyz;
					    u_xlat8.xyz = u_xlat8.xyz + (-in_POSITION0.xyz);
					    u_xlat4 = dot(u_xlat8.xyz, u_xlat8.xyz);
					    u_xlat4 = inversesqrt(u_xlat4);
					    u_xlat8.xyz = u_xlat8.xyz * vec3(u_xlat4);
					    u_xlat6.x = dot(u_xlat6.xyz, u_xlat8.xyz);
					    u_xlat6.x = log2(abs(u_xlat6.x));
					    u_xlat6.x = u_xlat6.x * _FresnelStr;
					    u_xlat6.x = exp2(u_xlat6.x);
					    u_xlat6.x = u_xlat6.x + u_xlat6.x;
					    vs_TEXCOORD4 = min(u_xlat6.x, 1.0);
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat5 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat5;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlat10.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati3].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati3].xy + u_xlat10.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendAlpha" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					float u_xlat14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat14 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat2.xyz = vec3(u_xlat14) * u_xlat2.xyz;
					    u_xlat14 = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat3.xyz = vec3(u_xlat14) * in_NORMAL0.xyz;
					    u_xlat2.x = dot(u_xlat3.xyz, u_xlat2.xyz);
					    u_xlat2.x = log2(abs(u_xlat2.x));
					    u_xlat2.x = u_xlat2.x * _FresnelStr;
					    u_xlat2.x = exp2(u_xlat2.x);
					    u_xlat2.x = u_xlat2.x + u_xlat2.x;
					    vs_TEXCOORD4 = min(u_xlat2.x, 1.0);
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat4 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_3_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati1;
					vec4 u_xlat2;
					int u_xlati3;
					float u_xlat4;
					float u_xlat5;
					vec3 u_xlat6;
					vec3 u_xlat8;
					vec2 u_xlat10;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    u_xlat6.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat6.x = inversesqrt(u_xlat6.x);
					    u_xlat6.xyz = u_xlat6.xxx * in_NORMAL0.xyz;
					    u_xlati3 = unity_StereoEyeIndex;
					    u_xlat8.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].yyy;
					    u_xlat8.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].xxx + u_xlat8.xyz;
					    u_xlat8.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].zzz + u_xlat8.xyz;
					    u_xlat8.xyz = u_xlat8.xyz + unity_WorldToObject[3].xyz;
					    u_xlat8.xyz = u_xlat8.xyz + (-in_POSITION0.xyz);
					    u_xlat4 = dot(u_xlat8.xyz, u_xlat8.xyz);
					    u_xlat4 = inversesqrt(u_xlat4);
					    u_xlat8.xyz = u_xlat8.xyz * vec3(u_xlat4);
					    u_xlat6.x = dot(u_xlat6.xyz, u_xlat8.xyz);
					    u_xlat6.x = log2(abs(u_xlat6.x));
					    u_xlat6.x = u_xlat6.x * _FresnelStr;
					    u_xlat6.x = exp2(u_xlat6.x);
					    u_xlat6.x = u_xlat6.x + u_xlat6.x;
					    vs_TEXCOORD4 = min(u_xlat6.x, 1.0);
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat5 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat5;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlat10.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati3].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati3].xy + u_xlat10.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					float u_xlat14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat14 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat2.xyz = vec3(u_xlat14) * u_xlat2.xyz;
					    u_xlat14 = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat3.xyz = vec3(u_xlat14) * in_NORMAL0.xyz;
					    u_xlat2.x = dot(u_xlat3.xyz, u_xlat2.xyz);
					    u_xlat2.x = log2(abs(u_xlat2.x));
					    u_xlat2.x = u_xlat2.x * _FresnelStr;
					    u_xlat2.x = exp2(u_xlat2.x);
					    u_xlat2.x = u_xlat2.x + u_xlat2.x;
					    vs_TEXCOORD4 = min(u_xlat2.x, 1.0);
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat4 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_3_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati1;
					vec4 u_xlat2;
					int u_xlati3;
					float u_xlat4;
					float u_xlat5;
					vec3 u_xlat6;
					vec3 u_xlat8;
					vec2 u_xlat10;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    u_xlat6.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat6.x = inversesqrt(u_xlat6.x);
					    u_xlat6.xyz = u_xlat6.xxx * in_NORMAL0.xyz;
					    u_xlati3 = unity_StereoEyeIndex;
					    u_xlat8.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].yyy;
					    u_xlat8.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].xxx + u_xlat8.xyz;
					    u_xlat8.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].zzz + u_xlat8.xyz;
					    u_xlat8.xyz = u_xlat8.xyz + unity_WorldToObject[3].xyz;
					    u_xlat8.xyz = u_xlat8.xyz + (-in_POSITION0.xyz);
					    u_xlat4 = dot(u_xlat8.xyz, u_xlat8.xyz);
					    u_xlat4 = inversesqrt(u_xlat4);
					    u_xlat8.xyz = u_xlat8.xyz * vec3(u_xlat4);
					    u_xlat6.x = dot(u_xlat6.xyz, u_xlat8.xyz);
					    u_xlat6.x = log2(abs(u_xlat6.x));
					    u_xlat6.x = u_xlat6.x * _FresnelStr;
					    u_xlat6.x = exp2(u_xlat6.x);
					    u_xlat6.x = u_xlat6.x + u_xlat6.x;
					    vs_TEXCOORD4 = min(u_xlat6.x, 1.0);
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat5 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat5;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlat10.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati3].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati3].xy + u_xlat10.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendAlpha" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat2 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat2;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec2 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					float u_xlat3;
					int u_xlati6;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat3 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat3;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlati6 = unity_StereoEyeIndex;
					    u_xlat1.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati6].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati6].xy + u_xlat1.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendAlpha" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat2 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat2;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec2 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					float u_xlat3;
					int u_xlati6;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat3 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat3;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlati6 = unity_StereoEyeIndex;
					    u_xlat1.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati6].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati6].xy + u_xlat1.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendAlpha" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat2 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat2;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec2 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					float u_xlat3;
					int u_xlati6;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat3 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat3;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlati6 = unity_StereoEyeIndex;
					    u_xlat1.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati6].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati6].xy + u_xlat1.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat2 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat2;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec2 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					float u_xlat3;
					int u_xlati6;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat3 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat3;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlati6 = unity_StereoEyeIndex;
					    u_xlat1.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati6].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati6].xy + u_xlat1.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendAlpha" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat2 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat2;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec2 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					float u_xlat3;
					int u_xlati6;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat3 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat3;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlati6 = unity_StereoEyeIndex;
					    u_xlat1.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati6].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati6].xy + u_xlat1.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat2 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat2;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec2 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					float u_xlat3;
					int u_xlati6;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat3 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat3;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlati6 = unity_StereoEyeIndex;
					    u_xlat1.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati6].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati6].xy + u_xlat1.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendAlpha" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat2 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat2;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec2 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					float u_xlat3;
					int u_xlati6;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat3 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat3;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlati6 = unity_StereoEyeIndex;
					    u_xlat1.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati6].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati6].xy + u_xlat1.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat2 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat2;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec2 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					float u_xlat3;
					int u_xlati6;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat3 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat3;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlati6 = unity_StereoEyeIndex;
					    u_xlat1.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati6].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati6].xy + u_xlat1.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendAlpha" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat2 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat2;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec2 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					float u_xlat3;
					int u_xlati6;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat3 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat3;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlati6 = unity_StereoEyeIndex;
					    u_xlat1.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati6].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati6].xy + u_xlat1.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendAlpha" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat2 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat2;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec2 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					float u_xlat3;
					int u_xlati6;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat3 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat3;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlati6 = unity_StereoEyeIndex;
					    u_xlat1.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati6].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati6].xy + u_xlat1.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendAlpha" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat2 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat2;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec2 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					float u_xlat3;
					int u_xlati6;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat3 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat3;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlati6 = unity_StereoEyeIndex;
					    u_xlat1.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati6].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati6].xy + u_xlat1.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat2 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat2;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec2 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					float u_xlat3;
					int u_xlati6;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat3 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat3;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlati6 = unity_StereoEyeIndex;
					    u_xlat1.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati6].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati6].xy + u_xlat1.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendAlpha" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat2 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat2;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec2 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					float u_xlat3;
					int u_xlati6;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat3 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat3;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlati6 = unity_StereoEyeIndex;
					    u_xlat1.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati6].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati6].xy + u_xlat1.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat2 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat2;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec2 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					float u_xlat3;
					int u_xlati6;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat3 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat3;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlati6 = unity_StereoEyeIndex;
					    u_xlat1.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati6].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati6].xy + u_xlat1.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendAlpha" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat2 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat2;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec2 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					float u_xlat3;
					int u_xlati6;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat3 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat3;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlati6 = unity_StereoEyeIndex;
					    u_xlat1.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati6].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati6].xy + u_xlat1.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat2 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat2;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec2 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					float u_xlat3;
					int u_xlati6;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat3 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat3;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlati6 = unity_StereoEyeIndex;
					    u_xlat1.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati6].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati6].xy + u_xlat1.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendAlpha" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					float u_xlat9;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat9 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat9 = inversesqrt(u_xlat9);
					    u_xlat2.xyz = vec3(u_xlat9) * u_xlat2.xyz;
					    u_xlat9 = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat9 = inversesqrt(u_xlat9);
					    u_xlat3.xyz = vec3(u_xlat9) * in_NORMAL0.xyz;
					    u_xlat9 = dot(u_xlat3.xyz, u_xlat2.xyz);
					    u_xlat9 = log2(abs(u_xlat9));
					    u_xlat9 = u_xlat9 * _FresnelStr;
					    u_xlat9 = exp2(u_xlat9);
					    u_xlat9 = u_xlat9 + u_xlat9;
					    vs_TEXCOORD4 = min(u_xlat9, 1.0);
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat4 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_3_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					vec3 u_xlat5;
					vec2 u_xlat8;
					int u_xlati10;
					float u_xlat15;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    u_xlat5.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat5.x = inversesqrt(u_xlat5.x);
					    u_xlat5.xyz = u_xlat5.xxx * in_NORMAL0.xyz;
					    u_xlati10 = unity_StereoEyeIndex;
					    u_xlat3.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati10].yyy;
					    u_xlat3.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati10].xxx + u_xlat3.xyz;
					    u_xlat3.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati10].zzz + u_xlat3.xyz;
					    u_xlat3.xyz = u_xlat3.xyz + unity_WorldToObject[3].xyz;
					    u_xlat3.xyz = u_xlat3.xyz + (-in_POSITION0.xyz);
					    u_xlat15 = dot(u_xlat3.xyz, u_xlat3.xyz);
					    u_xlat15 = inversesqrt(u_xlat15);
					    u_xlat3.xyz = vec3(u_xlat15) * u_xlat3.xyz;
					    u_xlat5.x = dot(u_xlat5.xyz, u_xlat3.xyz);
					    u_xlat5.x = log2(abs(u_xlat5.x));
					    u_xlat5.x = u_xlat5.x * _FresnelStr;
					    u_xlat5.x = exp2(u_xlat5.x);
					    u_xlat5.x = u_xlat5.x + u_xlat5.x;
					    vs_TEXCOORD4 = min(u_xlat5.x, 1.0);
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat4 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlat8.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati10].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati10].xy + u_xlat8.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendAlpha" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					float u_xlat9;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat9 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat9 = inversesqrt(u_xlat9);
					    u_xlat2.xyz = vec3(u_xlat9) * u_xlat2.xyz;
					    u_xlat9 = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat9 = inversesqrt(u_xlat9);
					    u_xlat3.xyz = vec3(u_xlat9) * in_NORMAL0.xyz;
					    u_xlat9 = dot(u_xlat3.xyz, u_xlat2.xyz);
					    u_xlat9 = log2(abs(u_xlat9));
					    u_xlat9 = u_xlat9 * _FresnelStr;
					    u_xlat9 = exp2(u_xlat9);
					    u_xlat9 = u_xlat9 + u_xlat9;
					    vs_TEXCOORD4 = min(u_xlat9, 1.0);
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat4 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_3_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					vec3 u_xlat5;
					vec2 u_xlat8;
					int u_xlati10;
					float u_xlat15;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    u_xlat5.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat5.x = inversesqrt(u_xlat5.x);
					    u_xlat5.xyz = u_xlat5.xxx * in_NORMAL0.xyz;
					    u_xlati10 = unity_StereoEyeIndex;
					    u_xlat3.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati10].yyy;
					    u_xlat3.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati10].xxx + u_xlat3.xyz;
					    u_xlat3.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati10].zzz + u_xlat3.xyz;
					    u_xlat3.xyz = u_xlat3.xyz + unity_WorldToObject[3].xyz;
					    u_xlat3.xyz = u_xlat3.xyz + (-in_POSITION0.xyz);
					    u_xlat15 = dot(u_xlat3.xyz, u_xlat3.xyz);
					    u_xlat15 = inversesqrt(u_xlat15);
					    u_xlat3.xyz = vec3(u_xlat15) * u_xlat3.xyz;
					    u_xlat5.x = dot(u_xlat5.xyz, u_xlat3.xyz);
					    u_xlat5.x = log2(abs(u_xlat5.x));
					    u_xlat5.x = u_xlat5.x * _FresnelStr;
					    u_xlat5.x = exp2(u_xlat5.x);
					    u_xlat5.x = u_xlat5.x + u_xlat5.x;
					    vs_TEXCOORD4 = min(u_xlat5.x, 1.0);
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat4 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlat8.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati10].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati10].xy + u_xlat8.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendAlpha" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					float u_xlat14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat14 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat2.xyz = vec3(u_xlat14) * u_xlat2.xyz;
					    u_xlat14 = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat3.xyz = vec3(u_xlat14) * in_NORMAL0.xyz;
					    u_xlat2.x = dot(u_xlat3.xyz, u_xlat2.xyz);
					    u_xlat2.x = log2(abs(u_xlat2.x));
					    u_xlat2.x = u_xlat2.x * _FresnelStr;
					    u_xlat2.x = exp2(u_xlat2.x);
					    u_xlat2.x = u_xlat2.x + u_xlat2.x;
					    vs_TEXCOORD4 = min(u_xlat2.x, 1.0);
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat4 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_3_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati1;
					vec4 u_xlat2;
					int u_xlati3;
					float u_xlat4;
					float u_xlat5;
					vec3 u_xlat6;
					vec3 u_xlat8;
					vec2 u_xlat10;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    u_xlat6.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat6.x = inversesqrt(u_xlat6.x);
					    u_xlat6.xyz = u_xlat6.xxx * in_NORMAL0.xyz;
					    u_xlati3 = unity_StereoEyeIndex;
					    u_xlat8.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].yyy;
					    u_xlat8.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].xxx + u_xlat8.xyz;
					    u_xlat8.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].zzz + u_xlat8.xyz;
					    u_xlat8.xyz = u_xlat8.xyz + unity_WorldToObject[3].xyz;
					    u_xlat8.xyz = u_xlat8.xyz + (-in_POSITION0.xyz);
					    u_xlat4 = dot(u_xlat8.xyz, u_xlat8.xyz);
					    u_xlat4 = inversesqrt(u_xlat4);
					    u_xlat8.xyz = u_xlat8.xyz * vec3(u_xlat4);
					    u_xlat6.x = dot(u_xlat6.xyz, u_xlat8.xyz);
					    u_xlat6.x = log2(abs(u_xlat6.x));
					    u_xlat6.x = u_xlat6.x * _FresnelStr;
					    u_xlat6.x = exp2(u_xlat6.x);
					    u_xlat6.x = u_xlat6.x + u_xlat6.x;
					    vs_TEXCOORD4 = min(u_xlat6.x, 1.0);
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat5 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat5;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlat10.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati3].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati3].xy + u_xlat10.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					float u_xlat14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat14 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat2.xyz = vec3(u_xlat14) * u_xlat2.xyz;
					    u_xlat14 = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat3.xyz = vec3(u_xlat14) * in_NORMAL0.xyz;
					    u_xlat2.x = dot(u_xlat3.xyz, u_xlat2.xyz);
					    u_xlat2.x = log2(abs(u_xlat2.x));
					    u_xlat2.x = u_xlat2.x * _FresnelStr;
					    u_xlat2.x = exp2(u_xlat2.x);
					    u_xlat2.x = u_xlat2.x + u_xlat2.x;
					    vs_TEXCOORD4 = min(u_xlat2.x, 1.0);
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat4 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_3_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati1;
					vec4 u_xlat2;
					int u_xlati3;
					float u_xlat4;
					float u_xlat5;
					vec3 u_xlat6;
					vec3 u_xlat8;
					vec2 u_xlat10;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    u_xlat6.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat6.x = inversesqrt(u_xlat6.x);
					    u_xlat6.xyz = u_xlat6.xxx * in_NORMAL0.xyz;
					    u_xlati3 = unity_StereoEyeIndex;
					    u_xlat8.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].yyy;
					    u_xlat8.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].xxx + u_xlat8.xyz;
					    u_xlat8.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].zzz + u_xlat8.xyz;
					    u_xlat8.xyz = u_xlat8.xyz + unity_WorldToObject[3].xyz;
					    u_xlat8.xyz = u_xlat8.xyz + (-in_POSITION0.xyz);
					    u_xlat4 = dot(u_xlat8.xyz, u_xlat8.xyz);
					    u_xlat4 = inversesqrt(u_xlat4);
					    u_xlat8.xyz = u_xlat8.xyz * vec3(u_xlat4);
					    u_xlat6.x = dot(u_xlat6.xyz, u_xlat8.xyz);
					    u_xlat6.x = log2(abs(u_xlat6.x));
					    u_xlat6.x = u_xlat6.x * _FresnelStr;
					    u_xlat6.x = exp2(u_xlat6.x);
					    u_xlat6.x = u_xlat6.x + u_xlat6.x;
					    vs_TEXCOORD4 = min(u_xlat6.x, 1.0);
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat5 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat5;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlat10.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati3].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati3].xy + u_xlat10.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendAlpha" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					float u_xlat14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat14 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat2.xyz = vec3(u_xlat14) * u_xlat2.xyz;
					    u_xlat14 = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat3.xyz = vec3(u_xlat14) * in_NORMAL0.xyz;
					    u_xlat2.x = dot(u_xlat3.xyz, u_xlat2.xyz);
					    u_xlat2.x = log2(abs(u_xlat2.x));
					    u_xlat2.x = u_xlat2.x * _FresnelStr;
					    u_xlat2.x = exp2(u_xlat2.x);
					    u_xlat2.x = u_xlat2.x + u_xlat2.x;
					    vs_TEXCOORD4 = min(u_xlat2.x, 1.0);
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat4 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_3_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati1;
					vec4 u_xlat2;
					int u_xlati3;
					float u_xlat4;
					float u_xlat5;
					vec3 u_xlat6;
					vec3 u_xlat8;
					vec2 u_xlat10;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    u_xlat6.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat6.x = inversesqrt(u_xlat6.x);
					    u_xlat6.xyz = u_xlat6.xxx * in_NORMAL0.xyz;
					    u_xlati3 = unity_StereoEyeIndex;
					    u_xlat8.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].yyy;
					    u_xlat8.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].xxx + u_xlat8.xyz;
					    u_xlat8.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].zzz + u_xlat8.xyz;
					    u_xlat8.xyz = u_xlat8.xyz + unity_WorldToObject[3].xyz;
					    u_xlat8.xyz = u_xlat8.xyz + (-in_POSITION0.xyz);
					    u_xlat4 = dot(u_xlat8.xyz, u_xlat8.xyz);
					    u_xlat4 = inversesqrt(u_xlat4);
					    u_xlat8.xyz = u_xlat8.xyz * vec3(u_xlat4);
					    u_xlat6.x = dot(u_xlat6.xyz, u_xlat8.xyz);
					    u_xlat6.x = log2(abs(u_xlat6.x));
					    u_xlat6.x = u_xlat6.x * _FresnelStr;
					    u_xlat6.x = exp2(u_xlat6.x);
					    u_xlat6.x = u_xlat6.x + u_xlat6.x;
					    vs_TEXCOORD4 = min(u_xlat6.x, 1.0);
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat5 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat5;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlat10.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati3].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati3].xy + u_xlat10.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					float u_xlat14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat14 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat2.xyz = vec3(u_xlat14) * u_xlat2.xyz;
					    u_xlat14 = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat3.xyz = vec3(u_xlat14) * in_NORMAL0.xyz;
					    u_xlat2.x = dot(u_xlat3.xyz, u_xlat2.xyz);
					    u_xlat2.x = log2(abs(u_xlat2.x));
					    u_xlat2.x = u_xlat2.x * _FresnelStr;
					    u_xlat2.x = exp2(u_xlat2.x);
					    u_xlat2.x = u_xlat2.x + u_xlat2.x;
					    vs_TEXCOORD4 = min(u_xlat2.x, 1.0);
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat4 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_3_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati1;
					vec4 u_xlat2;
					int u_xlati3;
					float u_xlat4;
					float u_xlat5;
					vec3 u_xlat6;
					vec3 u_xlat8;
					vec2 u_xlat10;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    u_xlat6.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat6.x = inversesqrt(u_xlat6.x);
					    u_xlat6.xyz = u_xlat6.xxx * in_NORMAL0.xyz;
					    u_xlati3 = unity_StereoEyeIndex;
					    u_xlat8.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].yyy;
					    u_xlat8.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].xxx + u_xlat8.xyz;
					    u_xlat8.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].zzz + u_xlat8.xyz;
					    u_xlat8.xyz = u_xlat8.xyz + unity_WorldToObject[3].xyz;
					    u_xlat8.xyz = u_xlat8.xyz + (-in_POSITION0.xyz);
					    u_xlat4 = dot(u_xlat8.xyz, u_xlat8.xyz);
					    u_xlat4 = inversesqrt(u_xlat4);
					    u_xlat8.xyz = u_xlat8.xyz * vec3(u_xlat4);
					    u_xlat6.x = dot(u_xlat6.xyz, u_xlat8.xyz);
					    u_xlat6.x = log2(abs(u_xlat6.x));
					    u_xlat6.x = u_xlat6.x * _FresnelStr;
					    u_xlat6.x = exp2(u_xlat6.x);
					    u_xlat6.x = u_xlat6.x + u_xlat6.x;
					    vs_TEXCOORD4 = min(u_xlat6.x, 1.0);
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat5 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat5;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlat10.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati3].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati3].xy + u_xlat10.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendAlpha" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					float u_xlat14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat14 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat2.xyz = vec3(u_xlat14) * u_xlat2.xyz;
					    u_xlat14 = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat3.xyz = vec3(u_xlat14) * in_NORMAL0.xyz;
					    u_xlat2.x = dot(u_xlat3.xyz, u_xlat2.xyz);
					    u_xlat2.x = log2(abs(u_xlat2.x));
					    u_xlat2.x = u_xlat2.x * _FresnelStr;
					    u_xlat2.x = exp2(u_xlat2.x);
					    u_xlat2.x = u_xlat2.x + u_xlat2.x;
					    vs_TEXCOORD4 = min(u_xlat2.x, 1.0);
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat4 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_3_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati1;
					vec4 u_xlat2;
					int u_xlati3;
					float u_xlat4;
					float u_xlat5;
					vec3 u_xlat6;
					vec3 u_xlat8;
					vec2 u_xlat10;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    u_xlat6.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat6.x = inversesqrt(u_xlat6.x);
					    u_xlat6.xyz = u_xlat6.xxx * in_NORMAL0.xyz;
					    u_xlati3 = unity_StereoEyeIndex;
					    u_xlat8.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].yyy;
					    u_xlat8.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].xxx + u_xlat8.xyz;
					    u_xlat8.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].zzz + u_xlat8.xyz;
					    u_xlat8.xyz = u_xlat8.xyz + unity_WorldToObject[3].xyz;
					    u_xlat8.xyz = u_xlat8.xyz + (-in_POSITION0.xyz);
					    u_xlat4 = dot(u_xlat8.xyz, u_xlat8.xyz);
					    u_xlat4 = inversesqrt(u_xlat4);
					    u_xlat8.xyz = u_xlat8.xyz * vec3(u_xlat4);
					    u_xlat6.x = dot(u_xlat6.xyz, u_xlat8.xyz);
					    u_xlat6.x = log2(abs(u_xlat6.x));
					    u_xlat6.x = u_xlat6.x * _FresnelStr;
					    u_xlat6.x = exp2(u_xlat6.x);
					    u_xlat6.x = u_xlat6.x + u_xlat6.x;
					    vs_TEXCOORD4 = min(u_xlat6.x, 1.0);
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat5 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat5;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlat10.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati3].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati3].xy + u_xlat10.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					float u_xlat14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat14 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat2.xyz = vec3(u_xlat14) * u_xlat2.xyz;
					    u_xlat14 = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat3.xyz = vec3(u_xlat14) * in_NORMAL0.xyz;
					    u_xlat2.x = dot(u_xlat3.xyz, u_xlat2.xyz);
					    u_xlat2.x = log2(abs(u_xlat2.x));
					    u_xlat2.x = u_xlat2.x * _FresnelStr;
					    u_xlat2.x = exp2(u_xlat2.x);
					    u_xlat2.x = u_xlat2.x + u_xlat2.x;
					    vs_TEXCOORD4 = min(u_xlat2.x, 1.0);
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat4 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_3_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati1;
					vec4 u_xlat2;
					int u_xlati3;
					float u_xlat4;
					float u_xlat5;
					vec3 u_xlat6;
					vec3 u_xlat8;
					vec2 u_xlat10;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    u_xlat6.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat6.x = inversesqrt(u_xlat6.x);
					    u_xlat6.xyz = u_xlat6.xxx * in_NORMAL0.xyz;
					    u_xlati3 = unity_StereoEyeIndex;
					    u_xlat8.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].yyy;
					    u_xlat8.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].xxx + u_xlat8.xyz;
					    u_xlat8.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].zzz + u_xlat8.xyz;
					    u_xlat8.xyz = u_xlat8.xyz + unity_WorldToObject[3].xyz;
					    u_xlat8.xyz = u_xlat8.xyz + (-in_POSITION0.xyz);
					    u_xlat4 = dot(u_xlat8.xyz, u_xlat8.xyz);
					    u_xlat4 = inversesqrt(u_xlat4);
					    u_xlat8.xyz = u_xlat8.xyz * vec3(u_xlat4);
					    u_xlat6.x = dot(u_xlat6.xyz, u_xlat8.xyz);
					    u_xlat6.x = log2(abs(u_xlat6.x));
					    u_xlat6.x = u_xlat6.x * _FresnelStr;
					    u_xlat6.x = exp2(u_xlat6.x);
					    u_xlat6.x = u_xlat6.x + u_xlat6.x;
					    vs_TEXCOORD4 = min(u_xlat6.x, 1.0);
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat5 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat5;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlat10.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati3].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati3].xy + u_xlat10.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendAlpha" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					float u_xlat9;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat9 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat9 = inversesqrt(u_xlat9);
					    u_xlat2.xyz = vec3(u_xlat9) * u_xlat2.xyz;
					    u_xlat9 = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat9 = inversesqrt(u_xlat9);
					    u_xlat3.xyz = vec3(u_xlat9) * in_NORMAL0.xyz;
					    u_xlat9 = dot(u_xlat3.xyz, u_xlat2.xyz);
					    u_xlat9 = log2(abs(u_xlat9));
					    u_xlat9 = u_xlat9 * _FresnelStr;
					    u_xlat9 = exp2(u_xlat9);
					    u_xlat9 = u_xlat9 + u_xlat9;
					    vs_TEXCOORD4 = min(u_xlat9, 1.0);
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat4 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_3_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					vec3 u_xlat5;
					vec2 u_xlat8;
					int u_xlati10;
					float u_xlat15;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    u_xlat5.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat5.x = inversesqrt(u_xlat5.x);
					    u_xlat5.xyz = u_xlat5.xxx * in_NORMAL0.xyz;
					    u_xlati10 = unity_StereoEyeIndex;
					    u_xlat3.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati10].yyy;
					    u_xlat3.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati10].xxx + u_xlat3.xyz;
					    u_xlat3.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati10].zzz + u_xlat3.xyz;
					    u_xlat3.xyz = u_xlat3.xyz + unity_WorldToObject[3].xyz;
					    u_xlat3.xyz = u_xlat3.xyz + (-in_POSITION0.xyz);
					    u_xlat15 = dot(u_xlat3.xyz, u_xlat3.xyz);
					    u_xlat15 = inversesqrt(u_xlat15);
					    u_xlat3.xyz = vec3(u_xlat15) * u_xlat3.xyz;
					    u_xlat5.x = dot(u_xlat5.xyz, u_xlat3.xyz);
					    u_xlat5.x = log2(abs(u_xlat5.x));
					    u_xlat5.x = u_xlat5.x * _FresnelStr;
					    u_xlat5.x = exp2(u_xlat5.x);
					    u_xlat5.x = u_xlat5.x + u_xlat5.x;
					    vs_TEXCOORD4 = min(u_xlat5.x, 1.0);
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat4 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlat8.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati10].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati10].xy + u_xlat8.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendAlpha" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					float u_xlat9;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat9 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat9 = inversesqrt(u_xlat9);
					    u_xlat2.xyz = vec3(u_xlat9) * u_xlat2.xyz;
					    u_xlat9 = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat9 = inversesqrt(u_xlat9);
					    u_xlat3.xyz = vec3(u_xlat9) * in_NORMAL0.xyz;
					    u_xlat9 = dot(u_xlat3.xyz, u_xlat2.xyz);
					    u_xlat9 = log2(abs(u_xlat9));
					    u_xlat9 = u_xlat9 * _FresnelStr;
					    u_xlat9 = exp2(u_xlat9);
					    u_xlat9 = u_xlat9 + u_xlat9;
					    vs_TEXCOORD4 = min(u_xlat9, 1.0);
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat4 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_3_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					vec3 u_xlat5;
					vec2 u_xlat8;
					int u_xlati10;
					float u_xlat15;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    u_xlat5.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat5.x = inversesqrt(u_xlat5.x);
					    u_xlat5.xyz = u_xlat5.xxx * in_NORMAL0.xyz;
					    u_xlati10 = unity_StereoEyeIndex;
					    u_xlat3.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati10].yyy;
					    u_xlat3.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati10].xxx + u_xlat3.xyz;
					    u_xlat3.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati10].zzz + u_xlat3.xyz;
					    u_xlat3.xyz = u_xlat3.xyz + unity_WorldToObject[3].xyz;
					    u_xlat3.xyz = u_xlat3.xyz + (-in_POSITION0.xyz);
					    u_xlat15 = dot(u_xlat3.xyz, u_xlat3.xyz);
					    u_xlat15 = inversesqrt(u_xlat15);
					    u_xlat3.xyz = vec3(u_xlat15) * u_xlat3.xyz;
					    u_xlat5.x = dot(u_xlat5.xyz, u_xlat3.xyz);
					    u_xlat5.x = log2(abs(u_xlat5.x));
					    u_xlat5.x = u_xlat5.x * _FresnelStr;
					    u_xlat5.x = exp2(u_xlat5.x);
					    u_xlat5.x = u_xlat5.x + u_xlat5.x;
					    vs_TEXCOORD4 = min(u_xlat5.x, 1.0);
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat4 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlat8.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati10].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati10].xy + u_xlat8.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendAlpha" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					float u_xlat14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat14 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat2.xyz = vec3(u_xlat14) * u_xlat2.xyz;
					    u_xlat14 = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat3.xyz = vec3(u_xlat14) * in_NORMAL0.xyz;
					    u_xlat2.x = dot(u_xlat3.xyz, u_xlat2.xyz);
					    u_xlat2.x = log2(abs(u_xlat2.x));
					    u_xlat2.x = u_xlat2.x * _FresnelStr;
					    u_xlat2.x = exp2(u_xlat2.x);
					    u_xlat2.x = u_xlat2.x + u_xlat2.x;
					    vs_TEXCOORD4 = min(u_xlat2.x, 1.0);
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat4 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_3_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati1;
					vec4 u_xlat2;
					int u_xlati3;
					float u_xlat4;
					float u_xlat5;
					vec3 u_xlat6;
					vec3 u_xlat8;
					vec2 u_xlat10;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    u_xlat6.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat6.x = inversesqrt(u_xlat6.x);
					    u_xlat6.xyz = u_xlat6.xxx * in_NORMAL0.xyz;
					    u_xlati3 = unity_StereoEyeIndex;
					    u_xlat8.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].yyy;
					    u_xlat8.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].xxx + u_xlat8.xyz;
					    u_xlat8.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].zzz + u_xlat8.xyz;
					    u_xlat8.xyz = u_xlat8.xyz + unity_WorldToObject[3].xyz;
					    u_xlat8.xyz = u_xlat8.xyz + (-in_POSITION0.xyz);
					    u_xlat4 = dot(u_xlat8.xyz, u_xlat8.xyz);
					    u_xlat4 = inversesqrt(u_xlat4);
					    u_xlat8.xyz = u_xlat8.xyz * vec3(u_xlat4);
					    u_xlat6.x = dot(u_xlat6.xyz, u_xlat8.xyz);
					    u_xlat6.x = log2(abs(u_xlat6.x));
					    u_xlat6.x = u_xlat6.x * _FresnelStr;
					    u_xlat6.x = exp2(u_xlat6.x);
					    u_xlat6.x = u_xlat6.x + u_xlat6.x;
					    vs_TEXCOORD4 = min(u_xlat6.x, 1.0);
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat5 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat5;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlat10.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati3].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati3].xy + u_xlat10.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					float u_xlat14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat14 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat2.xyz = vec3(u_xlat14) * u_xlat2.xyz;
					    u_xlat14 = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat3.xyz = vec3(u_xlat14) * in_NORMAL0.xyz;
					    u_xlat2.x = dot(u_xlat3.xyz, u_xlat2.xyz);
					    u_xlat2.x = log2(abs(u_xlat2.x));
					    u_xlat2.x = u_xlat2.x * _FresnelStr;
					    u_xlat2.x = exp2(u_xlat2.x);
					    u_xlat2.x = u_xlat2.x + u_xlat2.x;
					    vs_TEXCOORD4 = min(u_xlat2.x, 1.0);
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat4 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_3_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati1;
					vec4 u_xlat2;
					int u_xlati3;
					float u_xlat4;
					float u_xlat5;
					vec3 u_xlat6;
					vec3 u_xlat8;
					vec2 u_xlat10;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    u_xlat6.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat6.x = inversesqrt(u_xlat6.x);
					    u_xlat6.xyz = u_xlat6.xxx * in_NORMAL0.xyz;
					    u_xlati3 = unity_StereoEyeIndex;
					    u_xlat8.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].yyy;
					    u_xlat8.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].xxx + u_xlat8.xyz;
					    u_xlat8.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].zzz + u_xlat8.xyz;
					    u_xlat8.xyz = u_xlat8.xyz + unity_WorldToObject[3].xyz;
					    u_xlat8.xyz = u_xlat8.xyz + (-in_POSITION0.xyz);
					    u_xlat4 = dot(u_xlat8.xyz, u_xlat8.xyz);
					    u_xlat4 = inversesqrt(u_xlat4);
					    u_xlat8.xyz = u_xlat8.xyz * vec3(u_xlat4);
					    u_xlat6.x = dot(u_xlat6.xyz, u_xlat8.xyz);
					    u_xlat6.x = log2(abs(u_xlat6.x));
					    u_xlat6.x = u_xlat6.x * _FresnelStr;
					    u_xlat6.x = exp2(u_xlat6.x);
					    u_xlat6.x = u_xlat6.x + u_xlat6.x;
					    vs_TEXCOORD4 = min(u_xlat6.x, 1.0);
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat5 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat5;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlat10.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati3].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati3].xy + u_xlat10.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendAlpha" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					float u_xlat14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat14 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat2.xyz = vec3(u_xlat14) * u_xlat2.xyz;
					    u_xlat14 = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat3.xyz = vec3(u_xlat14) * in_NORMAL0.xyz;
					    u_xlat2.x = dot(u_xlat3.xyz, u_xlat2.xyz);
					    u_xlat2.x = log2(abs(u_xlat2.x));
					    u_xlat2.x = u_xlat2.x * _FresnelStr;
					    u_xlat2.x = exp2(u_xlat2.x);
					    u_xlat2.x = u_xlat2.x + u_xlat2.x;
					    vs_TEXCOORD4 = min(u_xlat2.x, 1.0);
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat4 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_3_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati1;
					vec4 u_xlat2;
					int u_xlati3;
					float u_xlat4;
					float u_xlat5;
					vec3 u_xlat6;
					vec3 u_xlat8;
					vec2 u_xlat10;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    u_xlat6.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat6.x = inversesqrt(u_xlat6.x);
					    u_xlat6.xyz = u_xlat6.xxx * in_NORMAL0.xyz;
					    u_xlati3 = unity_StereoEyeIndex;
					    u_xlat8.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].yyy;
					    u_xlat8.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].xxx + u_xlat8.xyz;
					    u_xlat8.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].zzz + u_xlat8.xyz;
					    u_xlat8.xyz = u_xlat8.xyz + unity_WorldToObject[3].xyz;
					    u_xlat8.xyz = u_xlat8.xyz + (-in_POSITION0.xyz);
					    u_xlat4 = dot(u_xlat8.xyz, u_xlat8.xyz);
					    u_xlat4 = inversesqrt(u_xlat4);
					    u_xlat8.xyz = u_xlat8.xyz * vec3(u_xlat4);
					    u_xlat6.x = dot(u_xlat6.xyz, u_xlat8.xyz);
					    u_xlat6.x = log2(abs(u_xlat6.x));
					    u_xlat6.x = u_xlat6.x * _FresnelStr;
					    u_xlat6.x = exp2(u_xlat6.x);
					    u_xlat6.x = u_xlat6.x + u_xlat6.x;
					    vs_TEXCOORD4 = min(u_xlat6.x, 1.0);
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat5 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat5;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlat10.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati3].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati3].xy + u_xlat10.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					float u_xlat14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat14 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat2.xyz = vec3(u_xlat14) * u_xlat2.xyz;
					    u_xlat14 = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat3.xyz = vec3(u_xlat14) * in_NORMAL0.xyz;
					    u_xlat2.x = dot(u_xlat3.xyz, u_xlat2.xyz);
					    u_xlat2.x = log2(abs(u_xlat2.x));
					    u_xlat2.x = u_xlat2.x * _FresnelStr;
					    u_xlat2.x = exp2(u_xlat2.x);
					    u_xlat2.x = u_xlat2.x + u_xlat2.x;
					    vs_TEXCOORD4 = min(u_xlat2.x, 1.0);
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat4 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_3_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati1;
					vec4 u_xlat2;
					int u_xlati3;
					float u_xlat4;
					float u_xlat5;
					vec3 u_xlat6;
					vec3 u_xlat8;
					vec2 u_xlat10;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    u_xlat6.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat6.x = inversesqrt(u_xlat6.x);
					    u_xlat6.xyz = u_xlat6.xxx * in_NORMAL0.xyz;
					    u_xlati3 = unity_StereoEyeIndex;
					    u_xlat8.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].yyy;
					    u_xlat8.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].xxx + u_xlat8.xyz;
					    u_xlat8.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].zzz + u_xlat8.xyz;
					    u_xlat8.xyz = u_xlat8.xyz + unity_WorldToObject[3].xyz;
					    u_xlat8.xyz = u_xlat8.xyz + (-in_POSITION0.xyz);
					    u_xlat4 = dot(u_xlat8.xyz, u_xlat8.xyz);
					    u_xlat4 = inversesqrt(u_xlat4);
					    u_xlat8.xyz = u_xlat8.xyz * vec3(u_xlat4);
					    u_xlat6.x = dot(u_xlat6.xyz, u_xlat8.xyz);
					    u_xlat6.x = log2(abs(u_xlat6.x));
					    u_xlat6.x = u_xlat6.x * _FresnelStr;
					    u_xlat6.x = exp2(u_xlat6.x);
					    u_xlat6.x = u_xlat6.x + u_xlat6.x;
					    vs_TEXCOORD4 = min(u_xlat6.x, 1.0);
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat5 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat5;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlat10.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati3].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati3].xy + u_xlat10.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendAlpha" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					float u_xlat14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat14 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat2.xyz = vec3(u_xlat14) * u_xlat2.xyz;
					    u_xlat14 = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat3.xyz = vec3(u_xlat14) * in_NORMAL0.xyz;
					    u_xlat2.x = dot(u_xlat3.xyz, u_xlat2.xyz);
					    u_xlat2.x = log2(abs(u_xlat2.x));
					    u_xlat2.x = u_xlat2.x * _FresnelStr;
					    u_xlat2.x = exp2(u_xlat2.x);
					    u_xlat2.x = u_xlat2.x + u_xlat2.x;
					    vs_TEXCOORD4 = min(u_xlat2.x, 1.0);
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat4 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_3_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati1;
					vec4 u_xlat2;
					int u_xlati3;
					float u_xlat4;
					float u_xlat5;
					vec3 u_xlat6;
					vec3 u_xlat8;
					vec2 u_xlat10;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    u_xlat6.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat6.x = inversesqrt(u_xlat6.x);
					    u_xlat6.xyz = u_xlat6.xxx * in_NORMAL0.xyz;
					    u_xlati3 = unity_StereoEyeIndex;
					    u_xlat8.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].yyy;
					    u_xlat8.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].xxx + u_xlat8.xyz;
					    u_xlat8.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].zzz + u_xlat8.xyz;
					    u_xlat8.xyz = u_xlat8.xyz + unity_WorldToObject[3].xyz;
					    u_xlat8.xyz = u_xlat8.xyz + (-in_POSITION0.xyz);
					    u_xlat4 = dot(u_xlat8.xyz, u_xlat8.xyz);
					    u_xlat4 = inversesqrt(u_xlat4);
					    u_xlat8.xyz = u_xlat8.xyz * vec3(u_xlat4);
					    u_xlat6.x = dot(u_xlat6.xyz, u_xlat8.xyz);
					    u_xlat6.x = log2(abs(u_xlat6.x));
					    u_xlat6.x = u_xlat6.x * _FresnelStr;
					    u_xlat6.x = exp2(u_xlat6.x);
					    u_xlat6.x = u_xlat6.x + u_xlat6.x;
					    vs_TEXCOORD4 = min(u_xlat6.x, 1.0);
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat5 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat5;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlat10.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati3].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati3].xy + u_xlat10.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					float u_xlat14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat14 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat2.xyz = vec3(u_xlat14) * u_xlat2.xyz;
					    u_xlat14 = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat3.xyz = vec3(u_xlat14) * in_NORMAL0.xyz;
					    u_xlat2.x = dot(u_xlat3.xyz, u_xlat2.xyz);
					    u_xlat2.x = log2(abs(u_xlat2.x));
					    u_xlat2.x = u_xlat2.x * _FresnelStr;
					    u_xlat2.x = exp2(u_xlat2.x);
					    u_xlat2.x = u_xlat2.x + u_xlat2.x;
					    vs_TEXCOORD4 = min(u_xlat2.x, 1.0);
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat4 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_3_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati1;
					vec4 u_xlat2;
					int u_xlati3;
					float u_xlat4;
					float u_xlat5;
					vec3 u_xlat6;
					vec3 u_xlat8;
					vec2 u_xlat10;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    u_xlat6.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat6.x = inversesqrt(u_xlat6.x);
					    u_xlat6.xyz = u_xlat6.xxx * in_NORMAL0.xyz;
					    u_xlati3 = unity_StereoEyeIndex;
					    u_xlat8.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].yyy;
					    u_xlat8.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].xxx + u_xlat8.xyz;
					    u_xlat8.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].zzz + u_xlat8.xyz;
					    u_xlat8.xyz = u_xlat8.xyz + unity_WorldToObject[3].xyz;
					    u_xlat8.xyz = u_xlat8.xyz + (-in_POSITION0.xyz);
					    u_xlat4 = dot(u_xlat8.xyz, u_xlat8.xyz);
					    u_xlat4 = inversesqrt(u_xlat4);
					    u_xlat8.xyz = u_xlat8.xyz * vec3(u_xlat4);
					    u_xlat6.x = dot(u_xlat6.xyz, u_xlat8.xyz);
					    u_xlat6.x = log2(abs(u_xlat6.x));
					    u_xlat6.x = u_xlat6.x * _FresnelStr;
					    u_xlat6.x = exp2(u_xlat6.x);
					    u_xlat6.x = u_xlat6.x + u_xlat6.x;
					    vs_TEXCOORD4 = min(u_xlat6.x, 1.0);
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat5 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat5;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlat10.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati3].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati3].xy + u_xlat10.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendAlpha" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat2 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat2;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec2 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					float u_xlat3;
					int u_xlati6;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat3 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat3;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlati6 = unity_StereoEyeIndex;
					    u_xlat1.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati6].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati6].xy + u_xlat1.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendAlpha" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat2 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat2;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec2 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					float u_xlat3;
					int u_xlati6;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat3 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat3;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlati6 = unity_StereoEyeIndex;
					    u_xlat1.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati6].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati6].xy + u_xlat1.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendAlpha" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat2 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat2;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec2 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					float u_xlat3;
					int u_xlati6;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat3 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat3;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlati6 = unity_StereoEyeIndex;
					    u_xlat1.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati6].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati6].xy + u_xlat1.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat2 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat2;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec2 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					float u_xlat3;
					int u_xlati6;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat3 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat3;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlati6 = unity_StereoEyeIndex;
					    u_xlat1.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati6].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati6].xy + u_xlat1.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendAlpha" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat2 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat2;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec2 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					float u_xlat3;
					int u_xlati6;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat3 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat3;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlati6 = unity_StereoEyeIndex;
					    u_xlat1.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati6].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati6].xy + u_xlat1.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat2 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat2;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec2 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					float u_xlat3;
					int u_xlati6;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat3 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat3;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlati6 = unity_StereoEyeIndex;
					    u_xlat1.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati6].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati6].xy + u_xlat1.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendAlpha" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat2 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat2;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec2 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					float u_xlat3;
					int u_xlati6;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat3 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat3;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlati6 = unity_StereoEyeIndex;
					    u_xlat1.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati6].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati6].xy + u_xlat1.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat2 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat2;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec2 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					float u_xlat3;
					int u_xlati6;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat3 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat3;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlati6 = unity_StereoEyeIndex;
					    u_xlat1.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati6].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati6].xy + u_xlat1.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendAlpha" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat2 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat2;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec2 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					float u_xlat3;
					int u_xlati6;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat3 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat3;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlati6 = unity_StereoEyeIndex;
					    u_xlat1.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati6].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati6].xy + u_xlat1.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendAlpha" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat2 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat2;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec2 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					float u_xlat3;
					int u_xlati6;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat3 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat3;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlati6 = unity_StereoEyeIndex;
					    u_xlat1.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati6].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati6].xy + u_xlat1.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendAlpha" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat2 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat2;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec2 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					float u_xlat3;
					int u_xlati6;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat3 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat3;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlati6 = unity_StereoEyeIndex;
					    u_xlat1.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati6].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati6].xy + u_xlat1.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat2 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat2;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec2 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					float u_xlat3;
					int u_xlati6;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat3 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat3;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlati6 = unity_StereoEyeIndex;
					    u_xlat1.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati6].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati6].xy + u_xlat1.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendAlpha" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat2 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat2;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec2 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					float u_xlat3;
					int u_xlati6;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat3 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat3;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlati6 = unity_StereoEyeIndex;
					    u_xlat1.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati6].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati6].xy + u_xlat1.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat2 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat2;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec2 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					float u_xlat3;
					int u_xlati6;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat3 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat3;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlati6 = unity_StereoEyeIndex;
					    u_xlat1.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati6].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati6].xy + u_xlat1.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendAlpha" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat2 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat2;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec2 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					float u_xlat3;
					int u_xlati6;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat3 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat3;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlati6 = unity_StereoEyeIndex;
					    u_xlat1.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati6].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati6].xy + u_xlat1.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat2 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat2;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec2 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					float u_xlat3;
					int u_xlati6;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat3 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat3;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlati6 = unity_StereoEyeIndex;
					    u_xlat1.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati6].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati6].xy + u_xlat1.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendAlpha" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					float u_xlat9;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat9 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat9 = inversesqrt(u_xlat9);
					    u_xlat2.xyz = vec3(u_xlat9) * u_xlat2.xyz;
					    u_xlat9 = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat9 = inversesqrt(u_xlat9);
					    u_xlat3.xyz = vec3(u_xlat9) * in_NORMAL0.xyz;
					    u_xlat9 = dot(u_xlat3.xyz, u_xlat2.xyz);
					    u_xlat9 = log2(abs(u_xlat9));
					    u_xlat9 = u_xlat9 * _FresnelStr;
					    u_xlat9 = exp2(u_xlat9);
					    u_xlat9 = u_xlat9 + u_xlat9;
					    vs_TEXCOORD4 = min(u_xlat9, 1.0);
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat4 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_3_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					vec3 u_xlat5;
					vec2 u_xlat8;
					int u_xlati10;
					float u_xlat15;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    u_xlat5.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat5.x = inversesqrt(u_xlat5.x);
					    u_xlat5.xyz = u_xlat5.xxx * in_NORMAL0.xyz;
					    u_xlati10 = unity_StereoEyeIndex;
					    u_xlat3.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati10].yyy;
					    u_xlat3.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati10].xxx + u_xlat3.xyz;
					    u_xlat3.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati10].zzz + u_xlat3.xyz;
					    u_xlat3.xyz = u_xlat3.xyz + unity_WorldToObject[3].xyz;
					    u_xlat3.xyz = u_xlat3.xyz + (-in_POSITION0.xyz);
					    u_xlat15 = dot(u_xlat3.xyz, u_xlat3.xyz);
					    u_xlat15 = inversesqrt(u_xlat15);
					    u_xlat3.xyz = vec3(u_xlat15) * u_xlat3.xyz;
					    u_xlat5.x = dot(u_xlat5.xyz, u_xlat3.xyz);
					    u_xlat5.x = log2(abs(u_xlat5.x));
					    u_xlat5.x = u_xlat5.x * _FresnelStr;
					    u_xlat5.x = exp2(u_xlat5.x);
					    u_xlat5.x = u_xlat5.x + u_xlat5.x;
					    vs_TEXCOORD4 = min(u_xlat5.x, 1.0);
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat4 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlat8.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati10].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati10].xy + u_xlat8.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendAlpha" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					float u_xlat9;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat9 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat9 = inversesqrt(u_xlat9);
					    u_xlat2.xyz = vec3(u_xlat9) * u_xlat2.xyz;
					    u_xlat9 = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat9 = inversesqrt(u_xlat9);
					    u_xlat3.xyz = vec3(u_xlat9) * in_NORMAL0.xyz;
					    u_xlat9 = dot(u_xlat3.xyz, u_xlat2.xyz);
					    u_xlat9 = log2(abs(u_xlat9));
					    u_xlat9 = u_xlat9 * _FresnelStr;
					    u_xlat9 = exp2(u_xlat9);
					    u_xlat9 = u_xlat9 + u_xlat9;
					    vs_TEXCOORD4 = min(u_xlat9, 1.0);
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat4 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_3_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					vec3 u_xlat5;
					vec2 u_xlat8;
					int u_xlati10;
					float u_xlat15;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    u_xlat5.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat5.x = inversesqrt(u_xlat5.x);
					    u_xlat5.xyz = u_xlat5.xxx * in_NORMAL0.xyz;
					    u_xlati10 = unity_StereoEyeIndex;
					    u_xlat3.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati10].yyy;
					    u_xlat3.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati10].xxx + u_xlat3.xyz;
					    u_xlat3.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati10].zzz + u_xlat3.xyz;
					    u_xlat3.xyz = u_xlat3.xyz + unity_WorldToObject[3].xyz;
					    u_xlat3.xyz = u_xlat3.xyz + (-in_POSITION0.xyz);
					    u_xlat15 = dot(u_xlat3.xyz, u_xlat3.xyz);
					    u_xlat15 = inversesqrt(u_xlat15);
					    u_xlat3.xyz = vec3(u_xlat15) * u_xlat3.xyz;
					    u_xlat5.x = dot(u_xlat5.xyz, u_xlat3.xyz);
					    u_xlat5.x = log2(abs(u_xlat5.x));
					    u_xlat5.x = u_xlat5.x * _FresnelStr;
					    u_xlat5.x = exp2(u_xlat5.x);
					    u_xlat5.x = u_xlat5.x + u_xlat5.x;
					    vs_TEXCOORD4 = min(u_xlat5.x, 1.0);
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat4 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlat8.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati10].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati10].xy + u_xlat8.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendAlpha" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					float u_xlat14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat14 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat2.xyz = vec3(u_xlat14) * u_xlat2.xyz;
					    u_xlat14 = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat3.xyz = vec3(u_xlat14) * in_NORMAL0.xyz;
					    u_xlat2.x = dot(u_xlat3.xyz, u_xlat2.xyz);
					    u_xlat2.x = log2(abs(u_xlat2.x));
					    u_xlat2.x = u_xlat2.x * _FresnelStr;
					    u_xlat2.x = exp2(u_xlat2.x);
					    u_xlat2.x = u_xlat2.x + u_xlat2.x;
					    vs_TEXCOORD4 = min(u_xlat2.x, 1.0);
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat4 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_3_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati1;
					vec4 u_xlat2;
					int u_xlati3;
					float u_xlat4;
					float u_xlat5;
					vec3 u_xlat6;
					vec3 u_xlat8;
					vec2 u_xlat10;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    u_xlat6.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat6.x = inversesqrt(u_xlat6.x);
					    u_xlat6.xyz = u_xlat6.xxx * in_NORMAL0.xyz;
					    u_xlati3 = unity_StereoEyeIndex;
					    u_xlat8.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].yyy;
					    u_xlat8.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].xxx + u_xlat8.xyz;
					    u_xlat8.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].zzz + u_xlat8.xyz;
					    u_xlat8.xyz = u_xlat8.xyz + unity_WorldToObject[3].xyz;
					    u_xlat8.xyz = u_xlat8.xyz + (-in_POSITION0.xyz);
					    u_xlat4 = dot(u_xlat8.xyz, u_xlat8.xyz);
					    u_xlat4 = inversesqrt(u_xlat4);
					    u_xlat8.xyz = u_xlat8.xyz * vec3(u_xlat4);
					    u_xlat6.x = dot(u_xlat6.xyz, u_xlat8.xyz);
					    u_xlat6.x = log2(abs(u_xlat6.x));
					    u_xlat6.x = u_xlat6.x * _FresnelStr;
					    u_xlat6.x = exp2(u_xlat6.x);
					    u_xlat6.x = u_xlat6.x + u_xlat6.x;
					    vs_TEXCOORD4 = min(u_xlat6.x, 1.0);
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat5 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat5;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlat10.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati3].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati3].xy + u_xlat10.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					float u_xlat14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat14 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat2.xyz = vec3(u_xlat14) * u_xlat2.xyz;
					    u_xlat14 = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat3.xyz = vec3(u_xlat14) * in_NORMAL0.xyz;
					    u_xlat2.x = dot(u_xlat3.xyz, u_xlat2.xyz);
					    u_xlat2.x = log2(abs(u_xlat2.x));
					    u_xlat2.x = u_xlat2.x * _FresnelStr;
					    u_xlat2.x = exp2(u_xlat2.x);
					    u_xlat2.x = u_xlat2.x + u_xlat2.x;
					    vs_TEXCOORD4 = min(u_xlat2.x, 1.0);
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat4 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_3_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati1;
					vec4 u_xlat2;
					int u_xlati3;
					float u_xlat4;
					float u_xlat5;
					vec3 u_xlat6;
					vec3 u_xlat8;
					vec2 u_xlat10;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    u_xlat6.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat6.x = inversesqrt(u_xlat6.x);
					    u_xlat6.xyz = u_xlat6.xxx * in_NORMAL0.xyz;
					    u_xlati3 = unity_StereoEyeIndex;
					    u_xlat8.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].yyy;
					    u_xlat8.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].xxx + u_xlat8.xyz;
					    u_xlat8.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].zzz + u_xlat8.xyz;
					    u_xlat8.xyz = u_xlat8.xyz + unity_WorldToObject[3].xyz;
					    u_xlat8.xyz = u_xlat8.xyz + (-in_POSITION0.xyz);
					    u_xlat4 = dot(u_xlat8.xyz, u_xlat8.xyz);
					    u_xlat4 = inversesqrt(u_xlat4);
					    u_xlat8.xyz = u_xlat8.xyz * vec3(u_xlat4);
					    u_xlat6.x = dot(u_xlat6.xyz, u_xlat8.xyz);
					    u_xlat6.x = log2(abs(u_xlat6.x));
					    u_xlat6.x = u_xlat6.x * _FresnelStr;
					    u_xlat6.x = exp2(u_xlat6.x);
					    u_xlat6.x = u_xlat6.x + u_xlat6.x;
					    vs_TEXCOORD4 = min(u_xlat6.x, 1.0);
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat5 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat5;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlat10.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati3].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati3].xy + u_xlat10.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendAlpha" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					float u_xlat14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat14 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat2.xyz = vec3(u_xlat14) * u_xlat2.xyz;
					    u_xlat14 = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat3.xyz = vec3(u_xlat14) * in_NORMAL0.xyz;
					    u_xlat2.x = dot(u_xlat3.xyz, u_xlat2.xyz);
					    u_xlat2.x = log2(abs(u_xlat2.x));
					    u_xlat2.x = u_xlat2.x * _FresnelStr;
					    u_xlat2.x = exp2(u_xlat2.x);
					    u_xlat2.x = u_xlat2.x + u_xlat2.x;
					    vs_TEXCOORD4 = min(u_xlat2.x, 1.0);
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat4 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_3_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati1;
					vec4 u_xlat2;
					int u_xlati3;
					float u_xlat4;
					float u_xlat5;
					vec3 u_xlat6;
					vec3 u_xlat8;
					vec2 u_xlat10;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    u_xlat6.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat6.x = inversesqrt(u_xlat6.x);
					    u_xlat6.xyz = u_xlat6.xxx * in_NORMAL0.xyz;
					    u_xlati3 = unity_StereoEyeIndex;
					    u_xlat8.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].yyy;
					    u_xlat8.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].xxx + u_xlat8.xyz;
					    u_xlat8.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].zzz + u_xlat8.xyz;
					    u_xlat8.xyz = u_xlat8.xyz + unity_WorldToObject[3].xyz;
					    u_xlat8.xyz = u_xlat8.xyz + (-in_POSITION0.xyz);
					    u_xlat4 = dot(u_xlat8.xyz, u_xlat8.xyz);
					    u_xlat4 = inversesqrt(u_xlat4);
					    u_xlat8.xyz = u_xlat8.xyz * vec3(u_xlat4);
					    u_xlat6.x = dot(u_xlat6.xyz, u_xlat8.xyz);
					    u_xlat6.x = log2(abs(u_xlat6.x));
					    u_xlat6.x = u_xlat6.x * _FresnelStr;
					    u_xlat6.x = exp2(u_xlat6.x);
					    u_xlat6.x = u_xlat6.x + u_xlat6.x;
					    vs_TEXCOORD4 = min(u_xlat6.x, 1.0);
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat5 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat5;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlat10.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati3].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati3].xy + u_xlat10.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					float u_xlat14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat14 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat2.xyz = vec3(u_xlat14) * u_xlat2.xyz;
					    u_xlat14 = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat3.xyz = vec3(u_xlat14) * in_NORMAL0.xyz;
					    u_xlat2.x = dot(u_xlat3.xyz, u_xlat2.xyz);
					    u_xlat2.x = log2(abs(u_xlat2.x));
					    u_xlat2.x = u_xlat2.x * _FresnelStr;
					    u_xlat2.x = exp2(u_xlat2.x);
					    u_xlat2.x = u_xlat2.x + u_xlat2.x;
					    vs_TEXCOORD4 = min(u_xlat2.x, 1.0);
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat4 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_3_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati1;
					vec4 u_xlat2;
					int u_xlati3;
					float u_xlat4;
					float u_xlat5;
					vec3 u_xlat6;
					vec3 u_xlat8;
					vec2 u_xlat10;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    u_xlat6.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat6.x = inversesqrt(u_xlat6.x);
					    u_xlat6.xyz = u_xlat6.xxx * in_NORMAL0.xyz;
					    u_xlati3 = unity_StereoEyeIndex;
					    u_xlat8.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].yyy;
					    u_xlat8.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].xxx + u_xlat8.xyz;
					    u_xlat8.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].zzz + u_xlat8.xyz;
					    u_xlat8.xyz = u_xlat8.xyz + unity_WorldToObject[3].xyz;
					    u_xlat8.xyz = u_xlat8.xyz + (-in_POSITION0.xyz);
					    u_xlat4 = dot(u_xlat8.xyz, u_xlat8.xyz);
					    u_xlat4 = inversesqrt(u_xlat4);
					    u_xlat8.xyz = u_xlat8.xyz * vec3(u_xlat4);
					    u_xlat6.x = dot(u_xlat6.xyz, u_xlat8.xyz);
					    u_xlat6.x = log2(abs(u_xlat6.x));
					    u_xlat6.x = u_xlat6.x * _FresnelStr;
					    u_xlat6.x = exp2(u_xlat6.x);
					    u_xlat6.x = u_xlat6.x + u_xlat6.x;
					    vs_TEXCOORD4 = min(u_xlat6.x, 1.0);
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat5 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat5;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlat10.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati3].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati3].xy + u_xlat10.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendAlpha" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					float u_xlat14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat14 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat2.xyz = vec3(u_xlat14) * u_xlat2.xyz;
					    u_xlat14 = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat3.xyz = vec3(u_xlat14) * in_NORMAL0.xyz;
					    u_xlat2.x = dot(u_xlat3.xyz, u_xlat2.xyz);
					    u_xlat2.x = log2(abs(u_xlat2.x));
					    u_xlat2.x = u_xlat2.x * _FresnelStr;
					    u_xlat2.x = exp2(u_xlat2.x);
					    u_xlat2.x = u_xlat2.x + u_xlat2.x;
					    vs_TEXCOORD4 = min(u_xlat2.x, 1.0);
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat4 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_3_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati1;
					vec4 u_xlat2;
					int u_xlati3;
					float u_xlat4;
					float u_xlat5;
					vec3 u_xlat6;
					vec3 u_xlat8;
					vec2 u_xlat10;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    u_xlat6.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat6.x = inversesqrt(u_xlat6.x);
					    u_xlat6.xyz = u_xlat6.xxx * in_NORMAL0.xyz;
					    u_xlati3 = unity_StereoEyeIndex;
					    u_xlat8.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].yyy;
					    u_xlat8.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].xxx + u_xlat8.xyz;
					    u_xlat8.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].zzz + u_xlat8.xyz;
					    u_xlat8.xyz = u_xlat8.xyz + unity_WorldToObject[3].xyz;
					    u_xlat8.xyz = u_xlat8.xyz + (-in_POSITION0.xyz);
					    u_xlat4 = dot(u_xlat8.xyz, u_xlat8.xyz);
					    u_xlat4 = inversesqrt(u_xlat4);
					    u_xlat8.xyz = u_xlat8.xyz * vec3(u_xlat4);
					    u_xlat6.x = dot(u_xlat6.xyz, u_xlat8.xyz);
					    u_xlat6.x = log2(abs(u_xlat6.x));
					    u_xlat6.x = u_xlat6.x * _FresnelStr;
					    u_xlat6.x = exp2(u_xlat6.x);
					    u_xlat6.x = u_xlat6.x + u_xlat6.x;
					    vs_TEXCOORD4 = min(u_xlat6.x, 1.0);
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat5 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat5;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlat10.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati3].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati3].xy + u_xlat10.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					float u_xlat14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat14 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat2.xyz = vec3(u_xlat14) * u_xlat2.xyz;
					    u_xlat14 = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat3.xyz = vec3(u_xlat14) * in_NORMAL0.xyz;
					    u_xlat2.x = dot(u_xlat3.xyz, u_xlat2.xyz);
					    u_xlat2.x = log2(abs(u_xlat2.x));
					    u_xlat2.x = u_xlat2.x * _FresnelStr;
					    u_xlat2.x = exp2(u_xlat2.x);
					    u_xlat2.x = u_xlat2.x + u_xlat2.x;
					    vs_TEXCOORD4 = min(u_xlat2.x, 1.0);
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat4 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_3_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati1;
					vec4 u_xlat2;
					int u_xlati3;
					float u_xlat4;
					float u_xlat5;
					vec3 u_xlat6;
					vec3 u_xlat8;
					vec2 u_xlat10;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    u_xlat6.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat6.x = inversesqrt(u_xlat6.x);
					    u_xlat6.xyz = u_xlat6.xxx * in_NORMAL0.xyz;
					    u_xlati3 = unity_StereoEyeIndex;
					    u_xlat8.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].yyy;
					    u_xlat8.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].xxx + u_xlat8.xyz;
					    u_xlat8.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].zzz + u_xlat8.xyz;
					    u_xlat8.xyz = u_xlat8.xyz + unity_WorldToObject[3].xyz;
					    u_xlat8.xyz = u_xlat8.xyz + (-in_POSITION0.xyz);
					    u_xlat4 = dot(u_xlat8.xyz, u_xlat8.xyz);
					    u_xlat4 = inversesqrt(u_xlat4);
					    u_xlat8.xyz = u_xlat8.xyz * vec3(u_xlat4);
					    u_xlat6.x = dot(u_xlat6.xyz, u_xlat8.xyz);
					    u_xlat6.x = log2(abs(u_xlat6.x));
					    u_xlat6.x = u_xlat6.x * _FresnelStr;
					    u_xlat6.x = exp2(u_xlat6.x);
					    u_xlat6.x = u_xlat6.x + u_xlat6.x;
					    vs_TEXCOORD4 = min(u_xlat6.x, 1.0);
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat5 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat5;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlat10.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati3].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati3].xy + u_xlat10.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendAlpha" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					float u_xlat9;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat9 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat9 = inversesqrt(u_xlat9);
					    u_xlat2.xyz = vec3(u_xlat9) * u_xlat2.xyz;
					    u_xlat9 = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat9 = inversesqrt(u_xlat9);
					    u_xlat3.xyz = vec3(u_xlat9) * in_NORMAL0.xyz;
					    u_xlat9 = dot(u_xlat3.xyz, u_xlat2.xyz);
					    u_xlat9 = log2(abs(u_xlat9));
					    u_xlat9 = u_xlat9 * _FresnelStr;
					    u_xlat9 = exp2(u_xlat9);
					    u_xlat9 = u_xlat9 + u_xlat9;
					    vs_TEXCOORD4 = min(u_xlat9, 1.0);
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat4 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_3_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					vec3 u_xlat5;
					vec2 u_xlat8;
					int u_xlati10;
					float u_xlat15;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    u_xlat5.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat5.x = inversesqrt(u_xlat5.x);
					    u_xlat5.xyz = u_xlat5.xxx * in_NORMAL0.xyz;
					    u_xlati10 = unity_StereoEyeIndex;
					    u_xlat3.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati10].yyy;
					    u_xlat3.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati10].xxx + u_xlat3.xyz;
					    u_xlat3.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati10].zzz + u_xlat3.xyz;
					    u_xlat3.xyz = u_xlat3.xyz + unity_WorldToObject[3].xyz;
					    u_xlat3.xyz = u_xlat3.xyz + (-in_POSITION0.xyz);
					    u_xlat15 = dot(u_xlat3.xyz, u_xlat3.xyz);
					    u_xlat15 = inversesqrt(u_xlat15);
					    u_xlat3.xyz = vec3(u_xlat15) * u_xlat3.xyz;
					    u_xlat5.x = dot(u_xlat5.xyz, u_xlat3.xyz);
					    u_xlat5.x = log2(abs(u_xlat5.x));
					    u_xlat5.x = u_xlat5.x * _FresnelStr;
					    u_xlat5.x = exp2(u_xlat5.x);
					    u_xlat5.x = u_xlat5.x + u_xlat5.x;
					    vs_TEXCOORD4 = min(u_xlat5.x, 1.0);
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat4 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlat8.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati10].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati10].xy + u_xlat8.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendAlpha" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					float u_xlat9;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat9 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat9 = inversesqrt(u_xlat9);
					    u_xlat2.xyz = vec3(u_xlat9) * u_xlat2.xyz;
					    u_xlat9 = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat9 = inversesqrt(u_xlat9);
					    u_xlat3.xyz = vec3(u_xlat9) * in_NORMAL0.xyz;
					    u_xlat9 = dot(u_xlat3.xyz, u_xlat2.xyz);
					    u_xlat9 = log2(abs(u_xlat9));
					    u_xlat9 = u_xlat9 * _FresnelStr;
					    u_xlat9 = exp2(u_xlat9);
					    u_xlat9 = u_xlat9 + u_xlat9;
					    vs_TEXCOORD4 = min(u_xlat9, 1.0);
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat4 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_3_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					vec3 u_xlat5;
					vec2 u_xlat8;
					int u_xlati10;
					float u_xlat15;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    u_xlat5.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat5.x = inversesqrt(u_xlat5.x);
					    u_xlat5.xyz = u_xlat5.xxx * in_NORMAL0.xyz;
					    u_xlati10 = unity_StereoEyeIndex;
					    u_xlat3.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati10].yyy;
					    u_xlat3.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati10].xxx + u_xlat3.xyz;
					    u_xlat3.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati10].zzz + u_xlat3.xyz;
					    u_xlat3.xyz = u_xlat3.xyz + unity_WorldToObject[3].xyz;
					    u_xlat3.xyz = u_xlat3.xyz + (-in_POSITION0.xyz);
					    u_xlat15 = dot(u_xlat3.xyz, u_xlat3.xyz);
					    u_xlat15 = inversesqrt(u_xlat15);
					    u_xlat3.xyz = vec3(u_xlat15) * u_xlat3.xyz;
					    u_xlat5.x = dot(u_xlat5.xyz, u_xlat3.xyz);
					    u_xlat5.x = log2(abs(u_xlat5.x));
					    u_xlat5.x = u_xlat5.x * _FresnelStr;
					    u_xlat5.x = exp2(u_xlat5.x);
					    u_xlat5.x = u_xlat5.x + u_xlat5.x;
					    vs_TEXCOORD4 = min(u_xlat5.x, 1.0);
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat4 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlat8.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati10].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati10].xy + u_xlat8.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendAlpha" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					float u_xlat14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat14 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat2.xyz = vec3(u_xlat14) * u_xlat2.xyz;
					    u_xlat14 = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat3.xyz = vec3(u_xlat14) * in_NORMAL0.xyz;
					    u_xlat2.x = dot(u_xlat3.xyz, u_xlat2.xyz);
					    u_xlat2.x = log2(abs(u_xlat2.x));
					    u_xlat2.x = u_xlat2.x * _FresnelStr;
					    u_xlat2.x = exp2(u_xlat2.x);
					    u_xlat2.x = u_xlat2.x + u_xlat2.x;
					    vs_TEXCOORD4 = min(u_xlat2.x, 1.0);
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat4 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_3_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati1;
					vec4 u_xlat2;
					int u_xlati3;
					float u_xlat4;
					float u_xlat5;
					vec3 u_xlat6;
					vec3 u_xlat8;
					vec2 u_xlat10;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    u_xlat6.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat6.x = inversesqrt(u_xlat6.x);
					    u_xlat6.xyz = u_xlat6.xxx * in_NORMAL0.xyz;
					    u_xlati3 = unity_StereoEyeIndex;
					    u_xlat8.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].yyy;
					    u_xlat8.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].xxx + u_xlat8.xyz;
					    u_xlat8.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].zzz + u_xlat8.xyz;
					    u_xlat8.xyz = u_xlat8.xyz + unity_WorldToObject[3].xyz;
					    u_xlat8.xyz = u_xlat8.xyz + (-in_POSITION0.xyz);
					    u_xlat4 = dot(u_xlat8.xyz, u_xlat8.xyz);
					    u_xlat4 = inversesqrt(u_xlat4);
					    u_xlat8.xyz = u_xlat8.xyz * vec3(u_xlat4);
					    u_xlat6.x = dot(u_xlat6.xyz, u_xlat8.xyz);
					    u_xlat6.x = log2(abs(u_xlat6.x));
					    u_xlat6.x = u_xlat6.x * _FresnelStr;
					    u_xlat6.x = exp2(u_xlat6.x);
					    u_xlat6.x = u_xlat6.x + u_xlat6.x;
					    vs_TEXCOORD4 = min(u_xlat6.x, 1.0);
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat5 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat5;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlat10.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati3].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati3].xy + u_xlat10.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					float u_xlat14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat14 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat2.xyz = vec3(u_xlat14) * u_xlat2.xyz;
					    u_xlat14 = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat3.xyz = vec3(u_xlat14) * in_NORMAL0.xyz;
					    u_xlat2.x = dot(u_xlat3.xyz, u_xlat2.xyz);
					    u_xlat2.x = log2(abs(u_xlat2.x));
					    u_xlat2.x = u_xlat2.x * _FresnelStr;
					    u_xlat2.x = exp2(u_xlat2.x);
					    u_xlat2.x = u_xlat2.x + u_xlat2.x;
					    vs_TEXCOORD4 = min(u_xlat2.x, 1.0);
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat4 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_3_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati1;
					vec4 u_xlat2;
					int u_xlati3;
					float u_xlat4;
					float u_xlat5;
					vec3 u_xlat6;
					vec3 u_xlat8;
					vec2 u_xlat10;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    u_xlat6.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat6.x = inversesqrt(u_xlat6.x);
					    u_xlat6.xyz = u_xlat6.xxx * in_NORMAL0.xyz;
					    u_xlati3 = unity_StereoEyeIndex;
					    u_xlat8.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].yyy;
					    u_xlat8.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].xxx + u_xlat8.xyz;
					    u_xlat8.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].zzz + u_xlat8.xyz;
					    u_xlat8.xyz = u_xlat8.xyz + unity_WorldToObject[3].xyz;
					    u_xlat8.xyz = u_xlat8.xyz + (-in_POSITION0.xyz);
					    u_xlat4 = dot(u_xlat8.xyz, u_xlat8.xyz);
					    u_xlat4 = inversesqrt(u_xlat4);
					    u_xlat8.xyz = u_xlat8.xyz * vec3(u_xlat4);
					    u_xlat6.x = dot(u_xlat6.xyz, u_xlat8.xyz);
					    u_xlat6.x = log2(abs(u_xlat6.x));
					    u_xlat6.x = u_xlat6.x * _FresnelStr;
					    u_xlat6.x = exp2(u_xlat6.x);
					    u_xlat6.x = u_xlat6.x + u_xlat6.x;
					    vs_TEXCOORD4 = min(u_xlat6.x, 1.0);
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat5 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat5;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlat10.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati3].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati3].xy + u_xlat10.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendAlpha" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					float u_xlat14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat14 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat2.xyz = vec3(u_xlat14) * u_xlat2.xyz;
					    u_xlat14 = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat3.xyz = vec3(u_xlat14) * in_NORMAL0.xyz;
					    u_xlat2.x = dot(u_xlat3.xyz, u_xlat2.xyz);
					    u_xlat2.x = log2(abs(u_xlat2.x));
					    u_xlat2.x = u_xlat2.x * _FresnelStr;
					    u_xlat2.x = exp2(u_xlat2.x);
					    u_xlat2.x = u_xlat2.x + u_xlat2.x;
					    vs_TEXCOORD4 = min(u_xlat2.x, 1.0);
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat4 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_3_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati1;
					vec4 u_xlat2;
					int u_xlati3;
					float u_xlat4;
					float u_xlat5;
					vec3 u_xlat6;
					vec3 u_xlat8;
					vec2 u_xlat10;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    u_xlat6.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat6.x = inversesqrt(u_xlat6.x);
					    u_xlat6.xyz = u_xlat6.xxx * in_NORMAL0.xyz;
					    u_xlati3 = unity_StereoEyeIndex;
					    u_xlat8.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].yyy;
					    u_xlat8.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].xxx + u_xlat8.xyz;
					    u_xlat8.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].zzz + u_xlat8.xyz;
					    u_xlat8.xyz = u_xlat8.xyz + unity_WorldToObject[3].xyz;
					    u_xlat8.xyz = u_xlat8.xyz + (-in_POSITION0.xyz);
					    u_xlat4 = dot(u_xlat8.xyz, u_xlat8.xyz);
					    u_xlat4 = inversesqrt(u_xlat4);
					    u_xlat8.xyz = u_xlat8.xyz * vec3(u_xlat4);
					    u_xlat6.x = dot(u_xlat6.xyz, u_xlat8.xyz);
					    u_xlat6.x = log2(abs(u_xlat6.x));
					    u_xlat6.x = u_xlat6.x * _FresnelStr;
					    u_xlat6.x = exp2(u_xlat6.x);
					    u_xlat6.x = u_xlat6.x + u_xlat6.x;
					    vs_TEXCOORD4 = min(u_xlat6.x, 1.0);
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat5 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat5;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlat10.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati3].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati3].xy + u_xlat10.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					float u_xlat14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat14 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat2.xyz = vec3(u_xlat14) * u_xlat2.xyz;
					    u_xlat14 = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat3.xyz = vec3(u_xlat14) * in_NORMAL0.xyz;
					    u_xlat2.x = dot(u_xlat3.xyz, u_xlat2.xyz);
					    u_xlat2.x = log2(abs(u_xlat2.x));
					    u_xlat2.x = u_xlat2.x * _FresnelStr;
					    u_xlat2.x = exp2(u_xlat2.x);
					    u_xlat2.x = u_xlat2.x + u_xlat2.x;
					    vs_TEXCOORD4 = min(u_xlat2.x, 1.0);
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat4 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_3_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati1;
					vec4 u_xlat2;
					int u_xlati3;
					float u_xlat4;
					float u_xlat5;
					vec3 u_xlat6;
					vec3 u_xlat8;
					vec2 u_xlat10;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    u_xlat6.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat6.x = inversesqrt(u_xlat6.x);
					    u_xlat6.xyz = u_xlat6.xxx * in_NORMAL0.xyz;
					    u_xlati3 = unity_StereoEyeIndex;
					    u_xlat8.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].yyy;
					    u_xlat8.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].xxx + u_xlat8.xyz;
					    u_xlat8.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].zzz + u_xlat8.xyz;
					    u_xlat8.xyz = u_xlat8.xyz + unity_WorldToObject[3].xyz;
					    u_xlat8.xyz = u_xlat8.xyz + (-in_POSITION0.xyz);
					    u_xlat4 = dot(u_xlat8.xyz, u_xlat8.xyz);
					    u_xlat4 = inversesqrt(u_xlat4);
					    u_xlat8.xyz = u_xlat8.xyz * vec3(u_xlat4);
					    u_xlat6.x = dot(u_xlat6.xyz, u_xlat8.xyz);
					    u_xlat6.x = log2(abs(u_xlat6.x));
					    u_xlat6.x = u_xlat6.x * _FresnelStr;
					    u_xlat6.x = exp2(u_xlat6.x);
					    u_xlat6.x = u_xlat6.x + u_xlat6.x;
					    vs_TEXCOORD4 = min(u_xlat6.x, 1.0);
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat5 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat5;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlat10.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati3].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati3].xy + u_xlat10.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendAlpha" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					float u_xlat14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat14 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat2.xyz = vec3(u_xlat14) * u_xlat2.xyz;
					    u_xlat14 = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat3.xyz = vec3(u_xlat14) * in_NORMAL0.xyz;
					    u_xlat2.x = dot(u_xlat3.xyz, u_xlat2.xyz);
					    u_xlat2.x = log2(abs(u_xlat2.x));
					    u_xlat2.x = u_xlat2.x * _FresnelStr;
					    u_xlat2.x = exp2(u_xlat2.x);
					    u_xlat2.x = u_xlat2.x + u_xlat2.x;
					    vs_TEXCOORD4 = min(u_xlat2.x, 1.0);
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat4 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_3_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati1;
					vec4 u_xlat2;
					int u_xlati3;
					float u_xlat4;
					float u_xlat5;
					vec3 u_xlat6;
					vec3 u_xlat8;
					vec2 u_xlat10;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    u_xlat6.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat6.x = inversesqrt(u_xlat6.x);
					    u_xlat6.xyz = u_xlat6.xxx * in_NORMAL0.xyz;
					    u_xlati3 = unity_StereoEyeIndex;
					    u_xlat8.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].yyy;
					    u_xlat8.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].xxx + u_xlat8.xyz;
					    u_xlat8.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].zzz + u_xlat8.xyz;
					    u_xlat8.xyz = u_xlat8.xyz + unity_WorldToObject[3].xyz;
					    u_xlat8.xyz = u_xlat8.xyz + (-in_POSITION0.xyz);
					    u_xlat4 = dot(u_xlat8.xyz, u_xlat8.xyz);
					    u_xlat4 = inversesqrt(u_xlat4);
					    u_xlat8.xyz = u_xlat8.xyz * vec3(u_xlat4);
					    u_xlat6.x = dot(u_xlat6.xyz, u_xlat8.xyz);
					    u_xlat6.x = log2(abs(u_xlat6.x));
					    u_xlat6.x = u_xlat6.x * _FresnelStr;
					    u_xlat6.x = exp2(u_xlat6.x);
					    u_xlat6.x = u_xlat6.x + u_xlat6.x;
					    vs_TEXCOORD4 = min(u_xlat6.x, 1.0);
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat5 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat5;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlat10.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati3].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati3].xy + u_xlat10.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					float u_xlat14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat14 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat2.xyz = vec3(u_xlat14) * u_xlat2.xyz;
					    u_xlat14 = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat3.xyz = vec3(u_xlat14) * in_NORMAL0.xyz;
					    u_xlat2.x = dot(u_xlat3.xyz, u_xlat2.xyz);
					    u_xlat2.x = log2(abs(u_xlat2.x));
					    u_xlat2.x = u_xlat2.x * _FresnelStr;
					    u_xlat2.x = exp2(u_xlat2.x);
					    u_xlat2.x = u_xlat2.x + u_xlat2.x;
					    vs_TEXCOORD4 = min(u_xlat2.x, 1.0);
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat4 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_3_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati1;
					vec4 u_xlat2;
					int u_xlati3;
					float u_xlat4;
					float u_xlat5;
					vec3 u_xlat6;
					vec3 u_xlat8;
					vec2 u_xlat10;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    u_xlat6.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat6.x = inversesqrt(u_xlat6.x);
					    u_xlat6.xyz = u_xlat6.xxx * in_NORMAL0.xyz;
					    u_xlati3 = unity_StereoEyeIndex;
					    u_xlat8.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].yyy;
					    u_xlat8.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].xxx + u_xlat8.xyz;
					    u_xlat8.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].zzz + u_xlat8.xyz;
					    u_xlat8.xyz = u_xlat8.xyz + unity_WorldToObject[3].xyz;
					    u_xlat8.xyz = u_xlat8.xyz + (-in_POSITION0.xyz);
					    u_xlat4 = dot(u_xlat8.xyz, u_xlat8.xyz);
					    u_xlat4 = inversesqrt(u_xlat4);
					    u_xlat8.xyz = u_xlat8.xyz * vec3(u_xlat4);
					    u_xlat6.x = dot(u_xlat6.xyz, u_xlat8.xyz);
					    u_xlat6.x = log2(abs(u_xlat6.x));
					    u_xlat6.x = u_xlat6.x * _FresnelStr;
					    u_xlat6.x = exp2(u_xlat6.x);
					    u_xlat6.x = u_xlat6.x + u_xlat6.x;
					    vs_TEXCOORD4 = min(u_xlat6.x, 1.0);
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat5 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat5;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlat10.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati3].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati3].xy + u_xlat10.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendAlpha" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat2 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat2;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec2 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					float u_xlat3;
					int u_xlati6;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat3 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat3;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlati6 = unity_StereoEyeIndex;
					    u_xlat1.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati6].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati6].xy + u_xlat1.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendAlpha" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat2 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat2;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec2 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					float u_xlat3;
					int u_xlati6;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat3 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat3;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlati6 = unity_StereoEyeIndex;
					    u_xlat1.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati6].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati6].xy + u_xlat1.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendAlpha" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat2 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat2;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec2 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					float u_xlat3;
					int u_xlati6;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat3 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat3;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlati6 = unity_StereoEyeIndex;
					    u_xlat1.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati6].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati6].xy + u_xlat1.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat2 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat2;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec2 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					float u_xlat3;
					int u_xlati6;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat3 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat3;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlati6 = unity_StereoEyeIndex;
					    u_xlat1.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati6].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati6].xy + u_xlat1.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendAlpha" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat2 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat2;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec2 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					float u_xlat3;
					int u_xlati6;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat3 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat3;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlati6 = unity_StereoEyeIndex;
					    u_xlat1.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati6].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati6].xy + u_xlat1.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat2 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat2;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec2 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					float u_xlat3;
					int u_xlati6;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat3 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat3;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlati6 = unity_StereoEyeIndex;
					    u_xlat1.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati6].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati6].xy + u_xlat1.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendAlpha" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat2 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat2;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec2 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					float u_xlat3;
					int u_xlati6;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat3 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat3;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlati6 = unity_StereoEyeIndex;
					    u_xlat1.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati6].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati6].xy + u_xlat1.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat2 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat2;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec2 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					float u_xlat3;
					int u_xlati6;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat3 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat3;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlati6 = unity_StereoEyeIndex;
					    u_xlat1.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati6].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati6].xy + u_xlat1.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendAlpha" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat2 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat2;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec2 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					float u_xlat3;
					int u_xlati6;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat3 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat3;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlati6 = unity_StereoEyeIndex;
					    u_xlat1.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati6].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati6].xy + u_xlat1.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendAlpha" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat2 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat2;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec2 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					float u_xlat3;
					int u_xlati6;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat3 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat3;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlati6 = unity_StereoEyeIndex;
					    u_xlat1.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati6].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati6].xy + u_xlat1.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendAlpha" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat2 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat2;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec2 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					float u_xlat3;
					int u_xlati6;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat3 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat3;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlati6 = unity_StereoEyeIndex;
					    u_xlat1.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati6].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati6].xy + u_xlat1.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat2 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat2;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec2 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					float u_xlat3;
					int u_xlati6;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat3 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat3;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlati6 = unity_StereoEyeIndex;
					    u_xlat1.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati6].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati6].xy + u_xlat1.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendAlpha" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat2 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat2;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec2 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					float u_xlat3;
					int u_xlati6;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat3 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat3;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlati6 = unity_StereoEyeIndex;
					    u_xlat1.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati6].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati6].xy + u_xlat1.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat2 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat2;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec2 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					float u_xlat3;
					int u_xlati6;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat3 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat3;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlati6 = unity_StereoEyeIndex;
					    u_xlat1.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati6].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati6].xy + u_xlat1.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendAlpha" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat2 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat2;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec2 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					float u_xlat3;
					int u_xlati6;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat3 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat3;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlati6 = unity_StereoEyeIndex;
					    u_xlat1.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati6].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati6].xy + u_xlat1.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat2 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat2;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec2 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					float u_xlat3;
					int u_xlati6;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat3 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat3;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlati6 = unity_StereoEyeIndex;
					    u_xlat1.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati6].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati6].xy + u_xlat1.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendAlpha" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					float u_xlat9;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat9 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat9 = inversesqrt(u_xlat9);
					    u_xlat2.xyz = vec3(u_xlat9) * u_xlat2.xyz;
					    u_xlat9 = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat9 = inversesqrt(u_xlat9);
					    u_xlat3.xyz = vec3(u_xlat9) * in_NORMAL0.xyz;
					    u_xlat9 = dot(u_xlat3.xyz, u_xlat2.xyz);
					    u_xlat9 = log2(abs(u_xlat9));
					    u_xlat9 = u_xlat9 * _FresnelStr;
					    u_xlat9 = exp2(u_xlat9);
					    u_xlat9 = u_xlat9 + u_xlat9;
					    vs_TEXCOORD4 = min(u_xlat9, 1.0);
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat4 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_3_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					vec3 u_xlat5;
					vec2 u_xlat8;
					int u_xlati10;
					float u_xlat15;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    u_xlat5.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat5.x = inversesqrt(u_xlat5.x);
					    u_xlat5.xyz = u_xlat5.xxx * in_NORMAL0.xyz;
					    u_xlati10 = unity_StereoEyeIndex;
					    u_xlat3.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati10].yyy;
					    u_xlat3.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati10].xxx + u_xlat3.xyz;
					    u_xlat3.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati10].zzz + u_xlat3.xyz;
					    u_xlat3.xyz = u_xlat3.xyz + unity_WorldToObject[3].xyz;
					    u_xlat3.xyz = u_xlat3.xyz + (-in_POSITION0.xyz);
					    u_xlat15 = dot(u_xlat3.xyz, u_xlat3.xyz);
					    u_xlat15 = inversesqrt(u_xlat15);
					    u_xlat3.xyz = vec3(u_xlat15) * u_xlat3.xyz;
					    u_xlat5.x = dot(u_xlat5.xyz, u_xlat3.xyz);
					    u_xlat5.x = log2(abs(u_xlat5.x));
					    u_xlat5.x = u_xlat5.x * _FresnelStr;
					    u_xlat5.x = exp2(u_xlat5.x);
					    u_xlat5.x = u_xlat5.x + u_xlat5.x;
					    vs_TEXCOORD4 = min(u_xlat5.x, 1.0);
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat4 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlat8.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati10].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati10].xy + u_xlat8.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendAlpha" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					float u_xlat9;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat9 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat9 = inversesqrt(u_xlat9);
					    u_xlat2.xyz = vec3(u_xlat9) * u_xlat2.xyz;
					    u_xlat9 = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat9 = inversesqrt(u_xlat9);
					    u_xlat3.xyz = vec3(u_xlat9) * in_NORMAL0.xyz;
					    u_xlat9 = dot(u_xlat3.xyz, u_xlat2.xyz);
					    u_xlat9 = log2(abs(u_xlat9));
					    u_xlat9 = u_xlat9 * _FresnelStr;
					    u_xlat9 = exp2(u_xlat9);
					    u_xlat9 = u_xlat9 + u_xlat9;
					    vs_TEXCOORD4 = min(u_xlat9, 1.0);
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat4 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_3_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					vec3 u_xlat5;
					vec2 u_xlat8;
					int u_xlati10;
					float u_xlat15;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    u_xlat5.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat5.x = inversesqrt(u_xlat5.x);
					    u_xlat5.xyz = u_xlat5.xxx * in_NORMAL0.xyz;
					    u_xlati10 = unity_StereoEyeIndex;
					    u_xlat3.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati10].yyy;
					    u_xlat3.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati10].xxx + u_xlat3.xyz;
					    u_xlat3.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati10].zzz + u_xlat3.xyz;
					    u_xlat3.xyz = u_xlat3.xyz + unity_WorldToObject[3].xyz;
					    u_xlat3.xyz = u_xlat3.xyz + (-in_POSITION0.xyz);
					    u_xlat15 = dot(u_xlat3.xyz, u_xlat3.xyz);
					    u_xlat15 = inversesqrt(u_xlat15);
					    u_xlat3.xyz = vec3(u_xlat15) * u_xlat3.xyz;
					    u_xlat5.x = dot(u_xlat5.xyz, u_xlat3.xyz);
					    u_xlat5.x = log2(abs(u_xlat5.x));
					    u_xlat5.x = u_xlat5.x * _FresnelStr;
					    u_xlat5.x = exp2(u_xlat5.x);
					    u_xlat5.x = u_xlat5.x + u_xlat5.x;
					    vs_TEXCOORD4 = min(u_xlat5.x, 1.0);
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat4 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlat8.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati10].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati10].xy + u_xlat8.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendAlpha" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					float u_xlat14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat14 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat2.xyz = vec3(u_xlat14) * u_xlat2.xyz;
					    u_xlat14 = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat3.xyz = vec3(u_xlat14) * in_NORMAL0.xyz;
					    u_xlat2.x = dot(u_xlat3.xyz, u_xlat2.xyz);
					    u_xlat2.x = log2(abs(u_xlat2.x));
					    u_xlat2.x = u_xlat2.x * _FresnelStr;
					    u_xlat2.x = exp2(u_xlat2.x);
					    u_xlat2.x = u_xlat2.x + u_xlat2.x;
					    vs_TEXCOORD4 = min(u_xlat2.x, 1.0);
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat4 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_3_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati1;
					vec4 u_xlat2;
					int u_xlati3;
					float u_xlat4;
					float u_xlat5;
					vec3 u_xlat6;
					vec3 u_xlat8;
					vec2 u_xlat10;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    u_xlat6.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat6.x = inversesqrt(u_xlat6.x);
					    u_xlat6.xyz = u_xlat6.xxx * in_NORMAL0.xyz;
					    u_xlati3 = unity_StereoEyeIndex;
					    u_xlat8.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].yyy;
					    u_xlat8.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].xxx + u_xlat8.xyz;
					    u_xlat8.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].zzz + u_xlat8.xyz;
					    u_xlat8.xyz = u_xlat8.xyz + unity_WorldToObject[3].xyz;
					    u_xlat8.xyz = u_xlat8.xyz + (-in_POSITION0.xyz);
					    u_xlat4 = dot(u_xlat8.xyz, u_xlat8.xyz);
					    u_xlat4 = inversesqrt(u_xlat4);
					    u_xlat8.xyz = u_xlat8.xyz * vec3(u_xlat4);
					    u_xlat6.x = dot(u_xlat6.xyz, u_xlat8.xyz);
					    u_xlat6.x = log2(abs(u_xlat6.x));
					    u_xlat6.x = u_xlat6.x * _FresnelStr;
					    u_xlat6.x = exp2(u_xlat6.x);
					    u_xlat6.x = u_xlat6.x + u_xlat6.x;
					    vs_TEXCOORD4 = min(u_xlat6.x, 1.0);
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat5 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat5;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlat10.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati3].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati3].xy + u_xlat10.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					float u_xlat14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat14 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat2.xyz = vec3(u_xlat14) * u_xlat2.xyz;
					    u_xlat14 = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat3.xyz = vec3(u_xlat14) * in_NORMAL0.xyz;
					    u_xlat2.x = dot(u_xlat3.xyz, u_xlat2.xyz);
					    u_xlat2.x = log2(abs(u_xlat2.x));
					    u_xlat2.x = u_xlat2.x * _FresnelStr;
					    u_xlat2.x = exp2(u_xlat2.x);
					    u_xlat2.x = u_xlat2.x + u_xlat2.x;
					    vs_TEXCOORD4 = min(u_xlat2.x, 1.0);
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat4 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_3_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati1;
					vec4 u_xlat2;
					int u_xlati3;
					float u_xlat4;
					float u_xlat5;
					vec3 u_xlat6;
					vec3 u_xlat8;
					vec2 u_xlat10;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    u_xlat6.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat6.x = inversesqrt(u_xlat6.x);
					    u_xlat6.xyz = u_xlat6.xxx * in_NORMAL0.xyz;
					    u_xlati3 = unity_StereoEyeIndex;
					    u_xlat8.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].yyy;
					    u_xlat8.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].xxx + u_xlat8.xyz;
					    u_xlat8.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].zzz + u_xlat8.xyz;
					    u_xlat8.xyz = u_xlat8.xyz + unity_WorldToObject[3].xyz;
					    u_xlat8.xyz = u_xlat8.xyz + (-in_POSITION0.xyz);
					    u_xlat4 = dot(u_xlat8.xyz, u_xlat8.xyz);
					    u_xlat4 = inversesqrt(u_xlat4);
					    u_xlat8.xyz = u_xlat8.xyz * vec3(u_xlat4);
					    u_xlat6.x = dot(u_xlat6.xyz, u_xlat8.xyz);
					    u_xlat6.x = log2(abs(u_xlat6.x));
					    u_xlat6.x = u_xlat6.x * _FresnelStr;
					    u_xlat6.x = exp2(u_xlat6.x);
					    u_xlat6.x = u_xlat6.x + u_xlat6.x;
					    vs_TEXCOORD4 = min(u_xlat6.x, 1.0);
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat5 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat5;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlat10.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati3].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati3].xy + u_xlat10.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendAlpha" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					float u_xlat14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat14 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat2.xyz = vec3(u_xlat14) * u_xlat2.xyz;
					    u_xlat14 = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat3.xyz = vec3(u_xlat14) * in_NORMAL0.xyz;
					    u_xlat2.x = dot(u_xlat3.xyz, u_xlat2.xyz);
					    u_xlat2.x = log2(abs(u_xlat2.x));
					    u_xlat2.x = u_xlat2.x * _FresnelStr;
					    u_xlat2.x = exp2(u_xlat2.x);
					    u_xlat2.x = u_xlat2.x + u_xlat2.x;
					    vs_TEXCOORD4 = min(u_xlat2.x, 1.0);
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat4 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_3_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati1;
					vec4 u_xlat2;
					int u_xlati3;
					float u_xlat4;
					float u_xlat5;
					vec3 u_xlat6;
					vec3 u_xlat8;
					vec2 u_xlat10;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    u_xlat6.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat6.x = inversesqrt(u_xlat6.x);
					    u_xlat6.xyz = u_xlat6.xxx * in_NORMAL0.xyz;
					    u_xlati3 = unity_StereoEyeIndex;
					    u_xlat8.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].yyy;
					    u_xlat8.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].xxx + u_xlat8.xyz;
					    u_xlat8.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].zzz + u_xlat8.xyz;
					    u_xlat8.xyz = u_xlat8.xyz + unity_WorldToObject[3].xyz;
					    u_xlat8.xyz = u_xlat8.xyz + (-in_POSITION0.xyz);
					    u_xlat4 = dot(u_xlat8.xyz, u_xlat8.xyz);
					    u_xlat4 = inversesqrt(u_xlat4);
					    u_xlat8.xyz = u_xlat8.xyz * vec3(u_xlat4);
					    u_xlat6.x = dot(u_xlat6.xyz, u_xlat8.xyz);
					    u_xlat6.x = log2(abs(u_xlat6.x));
					    u_xlat6.x = u_xlat6.x * _FresnelStr;
					    u_xlat6.x = exp2(u_xlat6.x);
					    u_xlat6.x = u_xlat6.x + u_xlat6.x;
					    vs_TEXCOORD4 = min(u_xlat6.x, 1.0);
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat5 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat5;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlat10.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati3].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati3].xy + u_xlat10.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					float u_xlat14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat14 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat2.xyz = vec3(u_xlat14) * u_xlat2.xyz;
					    u_xlat14 = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat3.xyz = vec3(u_xlat14) * in_NORMAL0.xyz;
					    u_xlat2.x = dot(u_xlat3.xyz, u_xlat2.xyz);
					    u_xlat2.x = log2(abs(u_xlat2.x));
					    u_xlat2.x = u_xlat2.x * _FresnelStr;
					    u_xlat2.x = exp2(u_xlat2.x);
					    u_xlat2.x = u_xlat2.x + u_xlat2.x;
					    vs_TEXCOORD4 = min(u_xlat2.x, 1.0);
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat4 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_3_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati1;
					vec4 u_xlat2;
					int u_xlati3;
					float u_xlat4;
					float u_xlat5;
					vec3 u_xlat6;
					vec3 u_xlat8;
					vec2 u_xlat10;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    u_xlat6.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat6.x = inversesqrt(u_xlat6.x);
					    u_xlat6.xyz = u_xlat6.xxx * in_NORMAL0.xyz;
					    u_xlati3 = unity_StereoEyeIndex;
					    u_xlat8.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].yyy;
					    u_xlat8.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].xxx + u_xlat8.xyz;
					    u_xlat8.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].zzz + u_xlat8.xyz;
					    u_xlat8.xyz = u_xlat8.xyz + unity_WorldToObject[3].xyz;
					    u_xlat8.xyz = u_xlat8.xyz + (-in_POSITION0.xyz);
					    u_xlat4 = dot(u_xlat8.xyz, u_xlat8.xyz);
					    u_xlat4 = inversesqrt(u_xlat4);
					    u_xlat8.xyz = u_xlat8.xyz * vec3(u_xlat4);
					    u_xlat6.x = dot(u_xlat6.xyz, u_xlat8.xyz);
					    u_xlat6.x = log2(abs(u_xlat6.x));
					    u_xlat6.x = u_xlat6.x * _FresnelStr;
					    u_xlat6.x = exp2(u_xlat6.x);
					    u_xlat6.x = u_xlat6.x + u_xlat6.x;
					    vs_TEXCOORD4 = min(u_xlat6.x, 1.0);
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat5 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat5;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlat10.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati3].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati3].xy + u_xlat10.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendAlpha" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					float u_xlat14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat14 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat2.xyz = vec3(u_xlat14) * u_xlat2.xyz;
					    u_xlat14 = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat3.xyz = vec3(u_xlat14) * in_NORMAL0.xyz;
					    u_xlat2.x = dot(u_xlat3.xyz, u_xlat2.xyz);
					    u_xlat2.x = log2(abs(u_xlat2.x));
					    u_xlat2.x = u_xlat2.x * _FresnelStr;
					    u_xlat2.x = exp2(u_xlat2.x);
					    u_xlat2.x = u_xlat2.x + u_xlat2.x;
					    vs_TEXCOORD4 = min(u_xlat2.x, 1.0);
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat4 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_3_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati1;
					vec4 u_xlat2;
					int u_xlati3;
					float u_xlat4;
					float u_xlat5;
					vec3 u_xlat6;
					vec3 u_xlat8;
					vec2 u_xlat10;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    u_xlat6.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat6.x = inversesqrt(u_xlat6.x);
					    u_xlat6.xyz = u_xlat6.xxx * in_NORMAL0.xyz;
					    u_xlati3 = unity_StereoEyeIndex;
					    u_xlat8.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].yyy;
					    u_xlat8.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].xxx + u_xlat8.xyz;
					    u_xlat8.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].zzz + u_xlat8.xyz;
					    u_xlat8.xyz = u_xlat8.xyz + unity_WorldToObject[3].xyz;
					    u_xlat8.xyz = u_xlat8.xyz + (-in_POSITION0.xyz);
					    u_xlat4 = dot(u_xlat8.xyz, u_xlat8.xyz);
					    u_xlat4 = inversesqrt(u_xlat4);
					    u_xlat8.xyz = u_xlat8.xyz * vec3(u_xlat4);
					    u_xlat6.x = dot(u_xlat6.xyz, u_xlat8.xyz);
					    u_xlat6.x = log2(abs(u_xlat6.x));
					    u_xlat6.x = u_xlat6.x * _FresnelStr;
					    u_xlat6.x = exp2(u_xlat6.x);
					    u_xlat6.x = u_xlat6.x + u_xlat6.x;
					    vs_TEXCOORD4 = min(u_xlat6.x, 1.0);
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat5 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat5;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlat10.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati3].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati3].xy + u_xlat10.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					float u_xlat14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat14 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat2.xyz = vec3(u_xlat14) * u_xlat2.xyz;
					    u_xlat14 = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat3.xyz = vec3(u_xlat14) * in_NORMAL0.xyz;
					    u_xlat2.x = dot(u_xlat3.xyz, u_xlat2.xyz);
					    u_xlat2.x = log2(abs(u_xlat2.x));
					    u_xlat2.x = u_xlat2.x * _FresnelStr;
					    u_xlat2.x = exp2(u_xlat2.x);
					    u_xlat2.x = u_xlat2.x + u_xlat2.x;
					    vs_TEXCOORD4 = min(u_xlat2.x, 1.0);
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat4 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_3_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati1;
					vec4 u_xlat2;
					int u_xlati3;
					float u_xlat4;
					float u_xlat5;
					vec3 u_xlat6;
					vec3 u_xlat8;
					vec2 u_xlat10;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    u_xlat6.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat6.x = inversesqrt(u_xlat6.x);
					    u_xlat6.xyz = u_xlat6.xxx * in_NORMAL0.xyz;
					    u_xlati3 = unity_StereoEyeIndex;
					    u_xlat8.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].yyy;
					    u_xlat8.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].xxx + u_xlat8.xyz;
					    u_xlat8.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].zzz + u_xlat8.xyz;
					    u_xlat8.xyz = u_xlat8.xyz + unity_WorldToObject[3].xyz;
					    u_xlat8.xyz = u_xlat8.xyz + (-in_POSITION0.xyz);
					    u_xlat4 = dot(u_xlat8.xyz, u_xlat8.xyz);
					    u_xlat4 = inversesqrt(u_xlat4);
					    u_xlat8.xyz = u_xlat8.xyz * vec3(u_xlat4);
					    u_xlat6.x = dot(u_xlat6.xyz, u_xlat8.xyz);
					    u_xlat6.x = log2(abs(u_xlat6.x));
					    u_xlat6.x = u_xlat6.x * _FresnelStr;
					    u_xlat6.x = exp2(u_xlat6.x);
					    u_xlat6.x = u_xlat6.x + u_xlat6.x;
					    vs_TEXCOORD4 = min(u_xlat6.x, 1.0);
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat5 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat5;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlat10.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati3].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati3].xy + u_xlat10.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendAlpha" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					float u_xlat9;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat9 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat9 = inversesqrt(u_xlat9);
					    u_xlat2.xyz = vec3(u_xlat9) * u_xlat2.xyz;
					    u_xlat9 = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat9 = inversesqrt(u_xlat9);
					    u_xlat3.xyz = vec3(u_xlat9) * in_NORMAL0.xyz;
					    u_xlat9 = dot(u_xlat3.xyz, u_xlat2.xyz);
					    u_xlat9 = log2(abs(u_xlat9));
					    u_xlat9 = u_xlat9 * _FresnelStr;
					    u_xlat9 = exp2(u_xlat9);
					    u_xlat9 = u_xlat9 + u_xlat9;
					    vs_TEXCOORD4 = min(u_xlat9, 1.0);
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat4 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_3_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					vec3 u_xlat5;
					vec2 u_xlat8;
					int u_xlati10;
					float u_xlat15;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    u_xlat5.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat5.x = inversesqrt(u_xlat5.x);
					    u_xlat5.xyz = u_xlat5.xxx * in_NORMAL0.xyz;
					    u_xlati10 = unity_StereoEyeIndex;
					    u_xlat3.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati10].yyy;
					    u_xlat3.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati10].xxx + u_xlat3.xyz;
					    u_xlat3.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati10].zzz + u_xlat3.xyz;
					    u_xlat3.xyz = u_xlat3.xyz + unity_WorldToObject[3].xyz;
					    u_xlat3.xyz = u_xlat3.xyz + (-in_POSITION0.xyz);
					    u_xlat15 = dot(u_xlat3.xyz, u_xlat3.xyz);
					    u_xlat15 = inversesqrt(u_xlat15);
					    u_xlat3.xyz = vec3(u_xlat15) * u_xlat3.xyz;
					    u_xlat5.x = dot(u_xlat5.xyz, u_xlat3.xyz);
					    u_xlat5.x = log2(abs(u_xlat5.x));
					    u_xlat5.x = u_xlat5.x * _FresnelStr;
					    u_xlat5.x = exp2(u_xlat5.x);
					    u_xlat5.x = u_xlat5.x + u_xlat5.x;
					    vs_TEXCOORD4 = min(u_xlat5.x, 1.0);
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat4 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlat8.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati10].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati10].xy + u_xlat8.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendAlpha" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					float u_xlat9;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat9 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat9 = inversesqrt(u_xlat9);
					    u_xlat2.xyz = vec3(u_xlat9) * u_xlat2.xyz;
					    u_xlat9 = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat9 = inversesqrt(u_xlat9);
					    u_xlat3.xyz = vec3(u_xlat9) * in_NORMAL0.xyz;
					    u_xlat9 = dot(u_xlat3.xyz, u_xlat2.xyz);
					    u_xlat9 = log2(abs(u_xlat9));
					    u_xlat9 = u_xlat9 * _FresnelStr;
					    u_xlat9 = exp2(u_xlat9);
					    u_xlat9 = u_xlat9 + u_xlat9;
					    vs_TEXCOORD4 = min(u_xlat9, 1.0);
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat4 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_3_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					vec3 u_xlat5;
					vec2 u_xlat8;
					int u_xlati10;
					float u_xlat15;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    u_xlat5.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat5.x = inversesqrt(u_xlat5.x);
					    u_xlat5.xyz = u_xlat5.xxx * in_NORMAL0.xyz;
					    u_xlati10 = unity_StereoEyeIndex;
					    u_xlat3.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati10].yyy;
					    u_xlat3.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati10].xxx + u_xlat3.xyz;
					    u_xlat3.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati10].zzz + u_xlat3.xyz;
					    u_xlat3.xyz = u_xlat3.xyz + unity_WorldToObject[3].xyz;
					    u_xlat3.xyz = u_xlat3.xyz + (-in_POSITION0.xyz);
					    u_xlat15 = dot(u_xlat3.xyz, u_xlat3.xyz);
					    u_xlat15 = inversesqrt(u_xlat15);
					    u_xlat3.xyz = vec3(u_xlat15) * u_xlat3.xyz;
					    u_xlat5.x = dot(u_xlat5.xyz, u_xlat3.xyz);
					    u_xlat5.x = log2(abs(u_xlat5.x));
					    u_xlat5.x = u_xlat5.x * _FresnelStr;
					    u_xlat5.x = exp2(u_xlat5.x);
					    u_xlat5.x = u_xlat5.x + u_xlat5.x;
					    vs_TEXCOORD4 = min(u_xlat5.x, 1.0);
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat4 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlat8.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati10].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati10].xy + u_xlat8.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendAlpha" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					float u_xlat14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat14 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat2.xyz = vec3(u_xlat14) * u_xlat2.xyz;
					    u_xlat14 = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat3.xyz = vec3(u_xlat14) * in_NORMAL0.xyz;
					    u_xlat2.x = dot(u_xlat3.xyz, u_xlat2.xyz);
					    u_xlat2.x = log2(abs(u_xlat2.x));
					    u_xlat2.x = u_xlat2.x * _FresnelStr;
					    u_xlat2.x = exp2(u_xlat2.x);
					    u_xlat2.x = u_xlat2.x + u_xlat2.x;
					    vs_TEXCOORD4 = min(u_xlat2.x, 1.0);
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat4 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_3_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati1;
					vec4 u_xlat2;
					int u_xlati3;
					float u_xlat4;
					float u_xlat5;
					vec3 u_xlat6;
					vec3 u_xlat8;
					vec2 u_xlat10;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    u_xlat6.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat6.x = inversesqrt(u_xlat6.x);
					    u_xlat6.xyz = u_xlat6.xxx * in_NORMAL0.xyz;
					    u_xlati3 = unity_StereoEyeIndex;
					    u_xlat8.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].yyy;
					    u_xlat8.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].xxx + u_xlat8.xyz;
					    u_xlat8.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].zzz + u_xlat8.xyz;
					    u_xlat8.xyz = u_xlat8.xyz + unity_WorldToObject[3].xyz;
					    u_xlat8.xyz = u_xlat8.xyz + (-in_POSITION0.xyz);
					    u_xlat4 = dot(u_xlat8.xyz, u_xlat8.xyz);
					    u_xlat4 = inversesqrt(u_xlat4);
					    u_xlat8.xyz = u_xlat8.xyz * vec3(u_xlat4);
					    u_xlat6.x = dot(u_xlat6.xyz, u_xlat8.xyz);
					    u_xlat6.x = log2(abs(u_xlat6.x));
					    u_xlat6.x = u_xlat6.x * _FresnelStr;
					    u_xlat6.x = exp2(u_xlat6.x);
					    u_xlat6.x = u_xlat6.x + u_xlat6.x;
					    vs_TEXCOORD4 = min(u_xlat6.x, 1.0);
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat5 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat5;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlat10.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati3].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati3].xy + u_xlat10.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					float u_xlat14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat14 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat2.xyz = vec3(u_xlat14) * u_xlat2.xyz;
					    u_xlat14 = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat3.xyz = vec3(u_xlat14) * in_NORMAL0.xyz;
					    u_xlat2.x = dot(u_xlat3.xyz, u_xlat2.xyz);
					    u_xlat2.x = log2(abs(u_xlat2.x));
					    u_xlat2.x = u_xlat2.x * _FresnelStr;
					    u_xlat2.x = exp2(u_xlat2.x);
					    u_xlat2.x = u_xlat2.x + u_xlat2.x;
					    vs_TEXCOORD4 = min(u_xlat2.x, 1.0);
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat4 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_3_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati1;
					vec4 u_xlat2;
					int u_xlati3;
					float u_xlat4;
					float u_xlat5;
					vec3 u_xlat6;
					vec3 u_xlat8;
					vec2 u_xlat10;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    u_xlat6.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat6.x = inversesqrt(u_xlat6.x);
					    u_xlat6.xyz = u_xlat6.xxx * in_NORMAL0.xyz;
					    u_xlati3 = unity_StereoEyeIndex;
					    u_xlat8.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].yyy;
					    u_xlat8.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].xxx + u_xlat8.xyz;
					    u_xlat8.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].zzz + u_xlat8.xyz;
					    u_xlat8.xyz = u_xlat8.xyz + unity_WorldToObject[3].xyz;
					    u_xlat8.xyz = u_xlat8.xyz + (-in_POSITION0.xyz);
					    u_xlat4 = dot(u_xlat8.xyz, u_xlat8.xyz);
					    u_xlat4 = inversesqrt(u_xlat4);
					    u_xlat8.xyz = u_xlat8.xyz * vec3(u_xlat4);
					    u_xlat6.x = dot(u_xlat6.xyz, u_xlat8.xyz);
					    u_xlat6.x = log2(abs(u_xlat6.x));
					    u_xlat6.x = u_xlat6.x * _FresnelStr;
					    u_xlat6.x = exp2(u_xlat6.x);
					    u_xlat6.x = u_xlat6.x + u_xlat6.x;
					    vs_TEXCOORD4 = min(u_xlat6.x, 1.0);
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat5 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat5;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlat10.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati3].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati3].xy + u_xlat10.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendAlpha" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					float u_xlat14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat14 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat2.xyz = vec3(u_xlat14) * u_xlat2.xyz;
					    u_xlat14 = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat3.xyz = vec3(u_xlat14) * in_NORMAL0.xyz;
					    u_xlat2.x = dot(u_xlat3.xyz, u_xlat2.xyz);
					    u_xlat2.x = log2(abs(u_xlat2.x));
					    u_xlat2.x = u_xlat2.x * _FresnelStr;
					    u_xlat2.x = exp2(u_xlat2.x);
					    u_xlat2.x = u_xlat2.x + u_xlat2.x;
					    vs_TEXCOORD4 = min(u_xlat2.x, 1.0);
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat4 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_3_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati1;
					vec4 u_xlat2;
					int u_xlati3;
					float u_xlat4;
					float u_xlat5;
					vec3 u_xlat6;
					vec3 u_xlat8;
					vec2 u_xlat10;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    u_xlat6.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat6.x = inversesqrt(u_xlat6.x);
					    u_xlat6.xyz = u_xlat6.xxx * in_NORMAL0.xyz;
					    u_xlati3 = unity_StereoEyeIndex;
					    u_xlat8.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].yyy;
					    u_xlat8.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].xxx + u_xlat8.xyz;
					    u_xlat8.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].zzz + u_xlat8.xyz;
					    u_xlat8.xyz = u_xlat8.xyz + unity_WorldToObject[3].xyz;
					    u_xlat8.xyz = u_xlat8.xyz + (-in_POSITION0.xyz);
					    u_xlat4 = dot(u_xlat8.xyz, u_xlat8.xyz);
					    u_xlat4 = inversesqrt(u_xlat4);
					    u_xlat8.xyz = u_xlat8.xyz * vec3(u_xlat4);
					    u_xlat6.x = dot(u_xlat6.xyz, u_xlat8.xyz);
					    u_xlat6.x = log2(abs(u_xlat6.x));
					    u_xlat6.x = u_xlat6.x * _FresnelStr;
					    u_xlat6.x = exp2(u_xlat6.x);
					    u_xlat6.x = u_xlat6.x + u_xlat6.x;
					    vs_TEXCOORD4 = min(u_xlat6.x, 1.0);
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat5 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat5;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlat10.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati3].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati3].xy + u_xlat10.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					float u_xlat14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat14 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat2.xyz = vec3(u_xlat14) * u_xlat2.xyz;
					    u_xlat14 = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat3.xyz = vec3(u_xlat14) * in_NORMAL0.xyz;
					    u_xlat2.x = dot(u_xlat3.xyz, u_xlat2.xyz);
					    u_xlat2.x = log2(abs(u_xlat2.x));
					    u_xlat2.x = u_xlat2.x * _FresnelStr;
					    u_xlat2.x = exp2(u_xlat2.x);
					    u_xlat2.x = u_xlat2.x + u_xlat2.x;
					    vs_TEXCOORD4 = min(u_xlat2.x, 1.0);
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat4 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_3_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati1;
					vec4 u_xlat2;
					int u_xlati3;
					float u_xlat4;
					float u_xlat5;
					vec3 u_xlat6;
					vec3 u_xlat8;
					vec2 u_xlat10;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    u_xlat6.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat6.x = inversesqrt(u_xlat6.x);
					    u_xlat6.xyz = u_xlat6.xxx * in_NORMAL0.xyz;
					    u_xlati3 = unity_StereoEyeIndex;
					    u_xlat8.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].yyy;
					    u_xlat8.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].xxx + u_xlat8.xyz;
					    u_xlat8.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].zzz + u_xlat8.xyz;
					    u_xlat8.xyz = u_xlat8.xyz + unity_WorldToObject[3].xyz;
					    u_xlat8.xyz = u_xlat8.xyz + (-in_POSITION0.xyz);
					    u_xlat4 = dot(u_xlat8.xyz, u_xlat8.xyz);
					    u_xlat4 = inversesqrt(u_xlat4);
					    u_xlat8.xyz = u_xlat8.xyz * vec3(u_xlat4);
					    u_xlat6.x = dot(u_xlat6.xyz, u_xlat8.xyz);
					    u_xlat6.x = log2(abs(u_xlat6.x));
					    u_xlat6.x = u_xlat6.x * _FresnelStr;
					    u_xlat6.x = exp2(u_xlat6.x);
					    u_xlat6.x = u_xlat6.x + u_xlat6.x;
					    vs_TEXCOORD4 = min(u_xlat6.x, 1.0);
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat5 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat5;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlat10.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati3].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati3].xy + u_xlat10.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendAlpha" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					float u_xlat14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat14 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat2.xyz = vec3(u_xlat14) * u_xlat2.xyz;
					    u_xlat14 = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat3.xyz = vec3(u_xlat14) * in_NORMAL0.xyz;
					    u_xlat2.x = dot(u_xlat3.xyz, u_xlat2.xyz);
					    u_xlat2.x = log2(abs(u_xlat2.x));
					    u_xlat2.x = u_xlat2.x * _FresnelStr;
					    u_xlat2.x = exp2(u_xlat2.x);
					    u_xlat2.x = u_xlat2.x + u_xlat2.x;
					    vs_TEXCOORD4 = min(u_xlat2.x, 1.0);
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat4 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_3_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati1;
					vec4 u_xlat2;
					int u_xlati3;
					float u_xlat4;
					float u_xlat5;
					vec3 u_xlat6;
					vec3 u_xlat8;
					vec2 u_xlat10;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    u_xlat6.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat6.x = inversesqrt(u_xlat6.x);
					    u_xlat6.xyz = u_xlat6.xxx * in_NORMAL0.xyz;
					    u_xlati3 = unity_StereoEyeIndex;
					    u_xlat8.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].yyy;
					    u_xlat8.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].xxx + u_xlat8.xyz;
					    u_xlat8.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].zzz + u_xlat8.xyz;
					    u_xlat8.xyz = u_xlat8.xyz + unity_WorldToObject[3].xyz;
					    u_xlat8.xyz = u_xlat8.xyz + (-in_POSITION0.xyz);
					    u_xlat4 = dot(u_xlat8.xyz, u_xlat8.xyz);
					    u_xlat4 = inversesqrt(u_xlat4);
					    u_xlat8.xyz = u_xlat8.xyz * vec3(u_xlat4);
					    u_xlat6.x = dot(u_xlat6.xyz, u_xlat8.xyz);
					    u_xlat6.x = log2(abs(u_xlat6.x));
					    u_xlat6.x = u_xlat6.x * _FresnelStr;
					    u_xlat6.x = exp2(u_xlat6.x);
					    u_xlat6.x = u_xlat6.x + u_xlat6.x;
					    vs_TEXCOORD4 = min(u_xlat6.x, 1.0);
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat5 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat5;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlat10.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati3].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati3].xy + u_xlat10.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					float u_xlat14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat14 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat2.xyz = vec3(u_xlat14) * u_xlat2.xyz;
					    u_xlat14 = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat3.xyz = vec3(u_xlat14) * in_NORMAL0.xyz;
					    u_xlat2.x = dot(u_xlat3.xyz, u_xlat2.xyz);
					    u_xlat2.x = log2(abs(u_xlat2.x));
					    u_xlat2.x = u_xlat2.x * _FresnelStr;
					    u_xlat2.x = exp2(u_xlat2.x);
					    u_xlat2.x = u_xlat2.x + u_xlat2.x;
					    vs_TEXCOORD4 = min(u_xlat2.x, 1.0);
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat4 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_3_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati1;
					vec4 u_xlat2;
					int u_xlati3;
					float u_xlat4;
					float u_xlat5;
					vec3 u_xlat6;
					vec3 u_xlat8;
					vec2 u_xlat10;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    u_xlat6.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat6.x = inversesqrt(u_xlat6.x);
					    u_xlat6.xyz = u_xlat6.xxx * in_NORMAL0.xyz;
					    u_xlati3 = unity_StereoEyeIndex;
					    u_xlat8.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].yyy;
					    u_xlat8.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].xxx + u_xlat8.xyz;
					    u_xlat8.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].zzz + u_xlat8.xyz;
					    u_xlat8.xyz = u_xlat8.xyz + unity_WorldToObject[3].xyz;
					    u_xlat8.xyz = u_xlat8.xyz + (-in_POSITION0.xyz);
					    u_xlat4 = dot(u_xlat8.xyz, u_xlat8.xyz);
					    u_xlat4 = inversesqrt(u_xlat4);
					    u_xlat8.xyz = u_xlat8.xyz * vec3(u_xlat4);
					    u_xlat6.x = dot(u_xlat6.xyz, u_xlat8.xyz);
					    u_xlat6.x = log2(abs(u_xlat6.x));
					    u_xlat6.x = u_xlat6.x * _FresnelStr;
					    u_xlat6.x = exp2(u_xlat6.x);
					    u_xlat6.x = u_xlat6.x + u_xlat6.x;
					    vs_TEXCOORD4 = min(u_xlat6.x, 1.0);
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat5 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat5;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlat10.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati3].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati3].xy + u_xlat10.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendAlpha" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat2 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat2;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec2 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					float u_xlat3;
					int u_xlati6;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat3 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat3;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlati6 = unity_StereoEyeIndex;
					    u_xlat1.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati6].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati6].xy + u_xlat1.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendAlpha" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat2 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat2;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec2 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					float u_xlat3;
					int u_xlati6;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat3 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat3;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlati6 = unity_StereoEyeIndex;
					    u_xlat1.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati6].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati6].xy + u_xlat1.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendAlpha" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat2 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat2;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec2 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					float u_xlat3;
					int u_xlati6;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat3 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat3;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlati6 = unity_StereoEyeIndex;
					    u_xlat1.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati6].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati6].xy + u_xlat1.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat2 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat2;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec2 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					float u_xlat3;
					int u_xlati6;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat3 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat3;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlati6 = unity_StereoEyeIndex;
					    u_xlat1.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati6].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati6].xy + u_xlat1.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendAlpha" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat2 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat2;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec2 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					float u_xlat3;
					int u_xlati6;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat3 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat3;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlati6 = unity_StereoEyeIndex;
					    u_xlat1.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati6].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati6].xy + u_xlat1.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat2 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat2;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec2 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					float u_xlat3;
					int u_xlati6;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat3 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat3;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlati6 = unity_StereoEyeIndex;
					    u_xlat1.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati6].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati6].xy + u_xlat1.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendAlpha" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat2 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat2;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec2 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					float u_xlat3;
					int u_xlati6;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat3 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat3;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlati6 = unity_StereoEyeIndex;
					    u_xlat1.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati6].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati6].xy + u_xlat1.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat2 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat2;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec2 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					float u_xlat3;
					int u_xlati6;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat3 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat3;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlati6 = unity_StereoEyeIndex;
					    u_xlat1.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati6].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati6].xy + u_xlat1.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendAlpha" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat2 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat2;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec2 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					float u_xlat3;
					int u_xlati6;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat3 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat3;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlati6 = unity_StereoEyeIndex;
					    u_xlat1.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati6].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati6].xy + u_xlat1.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendAlpha" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat2 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat2;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec2 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					float u_xlat3;
					int u_xlati6;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat3 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat3;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlati6 = unity_StereoEyeIndex;
					    u_xlat1.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati6].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati6].xy + u_xlat1.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendAlpha" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat2 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat2;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec2 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					float u_xlat3;
					int u_xlati6;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat3 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat3;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlati6 = unity_StereoEyeIndex;
					    u_xlat1.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati6].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati6].xy + u_xlat1.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat2 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat2;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec2 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					float u_xlat3;
					int u_xlati6;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat3 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat3;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlati6 = unity_StereoEyeIndex;
					    u_xlat1.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati6].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati6].xy + u_xlat1.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendAlpha" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat2 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat2;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec2 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					float u_xlat3;
					int u_xlati6;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat3 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat3;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlati6 = unity_StereoEyeIndex;
					    u_xlat1.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati6].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati6].xy + u_xlat1.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat2 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat2;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec2 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					float u_xlat3;
					int u_xlati6;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat3 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat3;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlati6 = unity_StereoEyeIndex;
					    u_xlat1.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati6].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati6].xy + u_xlat1.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendAlpha" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat2 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat2;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec2 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					float u_xlat3;
					int u_xlati6;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat3 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat3;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlati6 = unity_StereoEyeIndex;
					    u_xlat1.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati6].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati6].xy + u_xlat1.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat2 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat2;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec2 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					float u_xlat3;
					int u_xlati6;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat3 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat3;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlati6 = unity_StereoEyeIndex;
					    u_xlat1.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati6].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati6].xy + u_xlat1.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendAlpha" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					float u_xlat9;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat9 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat9 = inversesqrt(u_xlat9);
					    u_xlat2.xyz = vec3(u_xlat9) * u_xlat2.xyz;
					    u_xlat9 = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat9 = inversesqrt(u_xlat9);
					    u_xlat3.xyz = vec3(u_xlat9) * in_NORMAL0.xyz;
					    u_xlat9 = dot(u_xlat3.xyz, u_xlat2.xyz);
					    u_xlat9 = log2(abs(u_xlat9));
					    u_xlat9 = u_xlat9 * _FresnelStr;
					    u_xlat9 = exp2(u_xlat9);
					    u_xlat9 = u_xlat9 + u_xlat9;
					    vs_TEXCOORD4 = min(u_xlat9, 1.0);
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat4 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_3_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					vec3 u_xlat5;
					vec2 u_xlat8;
					int u_xlati10;
					float u_xlat15;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    u_xlat5.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat5.x = inversesqrt(u_xlat5.x);
					    u_xlat5.xyz = u_xlat5.xxx * in_NORMAL0.xyz;
					    u_xlati10 = unity_StereoEyeIndex;
					    u_xlat3.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati10].yyy;
					    u_xlat3.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati10].xxx + u_xlat3.xyz;
					    u_xlat3.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati10].zzz + u_xlat3.xyz;
					    u_xlat3.xyz = u_xlat3.xyz + unity_WorldToObject[3].xyz;
					    u_xlat3.xyz = u_xlat3.xyz + (-in_POSITION0.xyz);
					    u_xlat15 = dot(u_xlat3.xyz, u_xlat3.xyz);
					    u_xlat15 = inversesqrt(u_xlat15);
					    u_xlat3.xyz = vec3(u_xlat15) * u_xlat3.xyz;
					    u_xlat5.x = dot(u_xlat5.xyz, u_xlat3.xyz);
					    u_xlat5.x = log2(abs(u_xlat5.x));
					    u_xlat5.x = u_xlat5.x * _FresnelStr;
					    u_xlat5.x = exp2(u_xlat5.x);
					    u_xlat5.x = u_xlat5.x + u_xlat5.x;
					    vs_TEXCOORD4 = min(u_xlat5.x, 1.0);
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat4 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlat8.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati10].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati10].xy + u_xlat8.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendAlpha" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					float u_xlat9;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat9 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat9 = inversesqrt(u_xlat9);
					    u_xlat2.xyz = vec3(u_xlat9) * u_xlat2.xyz;
					    u_xlat9 = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat9 = inversesqrt(u_xlat9);
					    u_xlat3.xyz = vec3(u_xlat9) * in_NORMAL0.xyz;
					    u_xlat9 = dot(u_xlat3.xyz, u_xlat2.xyz);
					    u_xlat9 = log2(abs(u_xlat9));
					    u_xlat9 = u_xlat9 * _FresnelStr;
					    u_xlat9 = exp2(u_xlat9);
					    u_xlat9 = u_xlat9 + u_xlat9;
					    vs_TEXCOORD4 = min(u_xlat9, 1.0);
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat4 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_3_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					vec3 u_xlat5;
					vec2 u_xlat8;
					int u_xlati10;
					float u_xlat15;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    u_xlat5.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat5.x = inversesqrt(u_xlat5.x);
					    u_xlat5.xyz = u_xlat5.xxx * in_NORMAL0.xyz;
					    u_xlati10 = unity_StereoEyeIndex;
					    u_xlat3.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati10].yyy;
					    u_xlat3.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati10].xxx + u_xlat3.xyz;
					    u_xlat3.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati10].zzz + u_xlat3.xyz;
					    u_xlat3.xyz = u_xlat3.xyz + unity_WorldToObject[3].xyz;
					    u_xlat3.xyz = u_xlat3.xyz + (-in_POSITION0.xyz);
					    u_xlat15 = dot(u_xlat3.xyz, u_xlat3.xyz);
					    u_xlat15 = inversesqrt(u_xlat15);
					    u_xlat3.xyz = vec3(u_xlat15) * u_xlat3.xyz;
					    u_xlat5.x = dot(u_xlat5.xyz, u_xlat3.xyz);
					    u_xlat5.x = log2(abs(u_xlat5.x));
					    u_xlat5.x = u_xlat5.x * _FresnelStr;
					    u_xlat5.x = exp2(u_xlat5.x);
					    u_xlat5.x = u_xlat5.x + u_xlat5.x;
					    vs_TEXCOORD4 = min(u_xlat5.x, 1.0);
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat4 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlat8.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati10].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati10].xy + u_xlat8.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendAlpha" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					float u_xlat14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat14 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat2.xyz = vec3(u_xlat14) * u_xlat2.xyz;
					    u_xlat14 = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat3.xyz = vec3(u_xlat14) * in_NORMAL0.xyz;
					    u_xlat2.x = dot(u_xlat3.xyz, u_xlat2.xyz);
					    u_xlat2.x = log2(abs(u_xlat2.x));
					    u_xlat2.x = u_xlat2.x * _FresnelStr;
					    u_xlat2.x = exp2(u_xlat2.x);
					    u_xlat2.x = u_xlat2.x + u_xlat2.x;
					    vs_TEXCOORD4 = min(u_xlat2.x, 1.0);
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat4 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_3_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati1;
					vec4 u_xlat2;
					int u_xlati3;
					float u_xlat4;
					float u_xlat5;
					vec3 u_xlat6;
					vec3 u_xlat8;
					vec2 u_xlat10;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    u_xlat6.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat6.x = inversesqrt(u_xlat6.x);
					    u_xlat6.xyz = u_xlat6.xxx * in_NORMAL0.xyz;
					    u_xlati3 = unity_StereoEyeIndex;
					    u_xlat8.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].yyy;
					    u_xlat8.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].xxx + u_xlat8.xyz;
					    u_xlat8.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].zzz + u_xlat8.xyz;
					    u_xlat8.xyz = u_xlat8.xyz + unity_WorldToObject[3].xyz;
					    u_xlat8.xyz = u_xlat8.xyz + (-in_POSITION0.xyz);
					    u_xlat4 = dot(u_xlat8.xyz, u_xlat8.xyz);
					    u_xlat4 = inversesqrt(u_xlat4);
					    u_xlat8.xyz = u_xlat8.xyz * vec3(u_xlat4);
					    u_xlat6.x = dot(u_xlat6.xyz, u_xlat8.xyz);
					    u_xlat6.x = log2(abs(u_xlat6.x));
					    u_xlat6.x = u_xlat6.x * _FresnelStr;
					    u_xlat6.x = exp2(u_xlat6.x);
					    u_xlat6.x = u_xlat6.x + u_xlat6.x;
					    vs_TEXCOORD4 = min(u_xlat6.x, 1.0);
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat5 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat5;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlat10.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati3].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati3].xy + u_xlat10.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					float u_xlat14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat14 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat2.xyz = vec3(u_xlat14) * u_xlat2.xyz;
					    u_xlat14 = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat3.xyz = vec3(u_xlat14) * in_NORMAL0.xyz;
					    u_xlat2.x = dot(u_xlat3.xyz, u_xlat2.xyz);
					    u_xlat2.x = log2(abs(u_xlat2.x));
					    u_xlat2.x = u_xlat2.x * _FresnelStr;
					    u_xlat2.x = exp2(u_xlat2.x);
					    u_xlat2.x = u_xlat2.x + u_xlat2.x;
					    vs_TEXCOORD4 = min(u_xlat2.x, 1.0);
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat4 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_3_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati1;
					vec4 u_xlat2;
					int u_xlati3;
					float u_xlat4;
					float u_xlat5;
					vec3 u_xlat6;
					vec3 u_xlat8;
					vec2 u_xlat10;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    u_xlat6.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat6.x = inversesqrt(u_xlat6.x);
					    u_xlat6.xyz = u_xlat6.xxx * in_NORMAL0.xyz;
					    u_xlati3 = unity_StereoEyeIndex;
					    u_xlat8.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].yyy;
					    u_xlat8.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].xxx + u_xlat8.xyz;
					    u_xlat8.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].zzz + u_xlat8.xyz;
					    u_xlat8.xyz = u_xlat8.xyz + unity_WorldToObject[3].xyz;
					    u_xlat8.xyz = u_xlat8.xyz + (-in_POSITION0.xyz);
					    u_xlat4 = dot(u_xlat8.xyz, u_xlat8.xyz);
					    u_xlat4 = inversesqrt(u_xlat4);
					    u_xlat8.xyz = u_xlat8.xyz * vec3(u_xlat4);
					    u_xlat6.x = dot(u_xlat6.xyz, u_xlat8.xyz);
					    u_xlat6.x = log2(abs(u_xlat6.x));
					    u_xlat6.x = u_xlat6.x * _FresnelStr;
					    u_xlat6.x = exp2(u_xlat6.x);
					    u_xlat6.x = u_xlat6.x + u_xlat6.x;
					    vs_TEXCOORD4 = min(u_xlat6.x, 1.0);
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat5 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat5;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlat10.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati3].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati3].xy + u_xlat10.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendAlpha" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					float u_xlat14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat14 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat2.xyz = vec3(u_xlat14) * u_xlat2.xyz;
					    u_xlat14 = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat3.xyz = vec3(u_xlat14) * in_NORMAL0.xyz;
					    u_xlat2.x = dot(u_xlat3.xyz, u_xlat2.xyz);
					    u_xlat2.x = log2(abs(u_xlat2.x));
					    u_xlat2.x = u_xlat2.x * _FresnelStr;
					    u_xlat2.x = exp2(u_xlat2.x);
					    u_xlat2.x = u_xlat2.x + u_xlat2.x;
					    vs_TEXCOORD4 = min(u_xlat2.x, 1.0);
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat4 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_3_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati1;
					vec4 u_xlat2;
					int u_xlati3;
					float u_xlat4;
					float u_xlat5;
					vec3 u_xlat6;
					vec3 u_xlat8;
					vec2 u_xlat10;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    u_xlat6.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat6.x = inversesqrt(u_xlat6.x);
					    u_xlat6.xyz = u_xlat6.xxx * in_NORMAL0.xyz;
					    u_xlati3 = unity_StereoEyeIndex;
					    u_xlat8.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].yyy;
					    u_xlat8.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].xxx + u_xlat8.xyz;
					    u_xlat8.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].zzz + u_xlat8.xyz;
					    u_xlat8.xyz = u_xlat8.xyz + unity_WorldToObject[3].xyz;
					    u_xlat8.xyz = u_xlat8.xyz + (-in_POSITION0.xyz);
					    u_xlat4 = dot(u_xlat8.xyz, u_xlat8.xyz);
					    u_xlat4 = inversesqrt(u_xlat4);
					    u_xlat8.xyz = u_xlat8.xyz * vec3(u_xlat4);
					    u_xlat6.x = dot(u_xlat6.xyz, u_xlat8.xyz);
					    u_xlat6.x = log2(abs(u_xlat6.x));
					    u_xlat6.x = u_xlat6.x * _FresnelStr;
					    u_xlat6.x = exp2(u_xlat6.x);
					    u_xlat6.x = u_xlat6.x + u_xlat6.x;
					    vs_TEXCOORD4 = min(u_xlat6.x, 1.0);
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat5 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat5;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlat10.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati3].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati3].xy + u_xlat10.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					float u_xlat14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat14 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat2.xyz = vec3(u_xlat14) * u_xlat2.xyz;
					    u_xlat14 = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat3.xyz = vec3(u_xlat14) * in_NORMAL0.xyz;
					    u_xlat2.x = dot(u_xlat3.xyz, u_xlat2.xyz);
					    u_xlat2.x = log2(abs(u_xlat2.x));
					    u_xlat2.x = u_xlat2.x * _FresnelStr;
					    u_xlat2.x = exp2(u_xlat2.x);
					    u_xlat2.x = u_xlat2.x + u_xlat2.x;
					    vs_TEXCOORD4 = min(u_xlat2.x, 1.0);
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat4 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_3_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati1;
					vec4 u_xlat2;
					int u_xlati3;
					float u_xlat4;
					float u_xlat5;
					vec3 u_xlat6;
					vec3 u_xlat8;
					vec2 u_xlat10;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    u_xlat6.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat6.x = inversesqrt(u_xlat6.x);
					    u_xlat6.xyz = u_xlat6.xxx * in_NORMAL0.xyz;
					    u_xlati3 = unity_StereoEyeIndex;
					    u_xlat8.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].yyy;
					    u_xlat8.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].xxx + u_xlat8.xyz;
					    u_xlat8.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].zzz + u_xlat8.xyz;
					    u_xlat8.xyz = u_xlat8.xyz + unity_WorldToObject[3].xyz;
					    u_xlat8.xyz = u_xlat8.xyz + (-in_POSITION0.xyz);
					    u_xlat4 = dot(u_xlat8.xyz, u_xlat8.xyz);
					    u_xlat4 = inversesqrt(u_xlat4);
					    u_xlat8.xyz = u_xlat8.xyz * vec3(u_xlat4);
					    u_xlat6.x = dot(u_xlat6.xyz, u_xlat8.xyz);
					    u_xlat6.x = log2(abs(u_xlat6.x));
					    u_xlat6.x = u_xlat6.x * _FresnelStr;
					    u_xlat6.x = exp2(u_xlat6.x);
					    u_xlat6.x = u_xlat6.x + u_xlat6.x;
					    vs_TEXCOORD4 = min(u_xlat6.x, 1.0);
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat5 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat5;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlat10.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati3].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati3].xy + u_xlat10.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendAlpha" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					float u_xlat14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat14 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat2.xyz = vec3(u_xlat14) * u_xlat2.xyz;
					    u_xlat14 = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat3.xyz = vec3(u_xlat14) * in_NORMAL0.xyz;
					    u_xlat2.x = dot(u_xlat3.xyz, u_xlat2.xyz);
					    u_xlat2.x = log2(abs(u_xlat2.x));
					    u_xlat2.x = u_xlat2.x * _FresnelStr;
					    u_xlat2.x = exp2(u_xlat2.x);
					    u_xlat2.x = u_xlat2.x + u_xlat2.x;
					    vs_TEXCOORD4 = min(u_xlat2.x, 1.0);
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat4 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_3_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati1;
					vec4 u_xlat2;
					int u_xlati3;
					float u_xlat4;
					float u_xlat5;
					vec3 u_xlat6;
					vec3 u_xlat8;
					vec2 u_xlat10;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    u_xlat6.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat6.x = inversesqrt(u_xlat6.x);
					    u_xlat6.xyz = u_xlat6.xxx * in_NORMAL0.xyz;
					    u_xlati3 = unity_StereoEyeIndex;
					    u_xlat8.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].yyy;
					    u_xlat8.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].xxx + u_xlat8.xyz;
					    u_xlat8.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].zzz + u_xlat8.xyz;
					    u_xlat8.xyz = u_xlat8.xyz + unity_WorldToObject[3].xyz;
					    u_xlat8.xyz = u_xlat8.xyz + (-in_POSITION0.xyz);
					    u_xlat4 = dot(u_xlat8.xyz, u_xlat8.xyz);
					    u_xlat4 = inversesqrt(u_xlat4);
					    u_xlat8.xyz = u_xlat8.xyz * vec3(u_xlat4);
					    u_xlat6.x = dot(u_xlat6.xyz, u_xlat8.xyz);
					    u_xlat6.x = log2(abs(u_xlat6.x));
					    u_xlat6.x = u_xlat6.x * _FresnelStr;
					    u_xlat6.x = exp2(u_xlat6.x);
					    u_xlat6.x = u_xlat6.x + u_xlat6.x;
					    vs_TEXCOORD4 = min(u_xlat6.x, 1.0);
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat5 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat5;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlat10.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati3].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati3].xy + u_xlat10.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					float u_xlat14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat14 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat2.xyz = vec3(u_xlat14) * u_xlat2.xyz;
					    u_xlat14 = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat3.xyz = vec3(u_xlat14) * in_NORMAL0.xyz;
					    u_xlat2.x = dot(u_xlat3.xyz, u_xlat2.xyz);
					    u_xlat2.x = log2(abs(u_xlat2.x));
					    u_xlat2.x = u_xlat2.x * _FresnelStr;
					    u_xlat2.x = exp2(u_xlat2.x);
					    u_xlat2.x = u_xlat2.x + u_xlat2.x;
					    vs_TEXCOORD4 = min(u_xlat2.x, 1.0);
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat4 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_3_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati1;
					vec4 u_xlat2;
					int u_xlati3;
					float u_xlat4;
					float u_xlat5;
					vec3 u_xlat6;
					vec3 u_xlat8;
					vec2 u_xlat10;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    u_xlat6.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat6.x = inversesqrt(u_xlat6.x);
					    u_xlat6.xyz = u_xlat6.xxx * in_NORMAL0.xyz;
					    u_xlati3 = unity_StereoEyeIndex;
					    u_xlat8.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].yyy;
					    u_xlat8.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].xxx + u_xlat8.xyz;
					    u_xlat8.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].zzz + u_xlat8.xyz;
					    u_xlat8.xyz = u_xlat8.xyz + unity_WorldToObject[3].xyz;
					    u_xlat8.xyz = u_xlat8.xyz + (-in_POSITION0.xyz);
					    u_xlat4 = dot(u_xlat8.xyz, u_xlat8.xyz);
					    u_xlat4 = inversesqrt(u_xlat4);
					    u_xlat8.xyz = u_xlat8.xyz * vec3(u_xlat4);
					    u_xlat6.x = dot(u_xlat6.xyz, u_xlat8.xyz);
					    u_xlat6.x = log2(abs(u_xlat6.x));
					    u_xlat6.x = u_xlat6.x * _FresnelStr;
					    u_xlat6.x = exp2(u_xlat6.x);
					    u_xlat6.x = u_xlat6.x + u_xlat6.x;
					    vs_TEXCOORD4 = min(u_xlat6.x, 1.0);
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat5 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat5;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlat10.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati3].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati3].xy + u_xlat10.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendAlpha" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					float u_xlat9;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat9 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat9 = inversesqrt(u_xlat9);
					    u_xlat2.xyz = vec3(u_xlat9) * u_xlat2.xyz;
					    u_xlat9 = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat9 = inversesqrt(u_xlat9);
					    u_xlat3.xyz = vec3(u_xlat9) * in_NORMAL0.xyz;
					    u_xlat9 = dot(u_xlat3.xyz, u_xlat2.xyz);
					    u_xlat9 = log2(abs(u_xlat9));
					    u_xlat9 = u_xlat9 * _FresnelStr;
					    u_xlat9 = exp2(u_xlat9);
					    u_xlat9 = u_xlat9 + u_xlat9;
					    vs_TEXCOORD4 = min(u_xlat9, 1.0);
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat4 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_3_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					vec3 u_xlat5;
					vec2 u_xlat8;
					int u_xlati10;
					float u_xlat15;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    u_xlat5.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat5.x = inversesqrt(u_xlat5.x);
					    u_xlat5.xyz = u_xlat5.xxx * in_NORMAL0.xyz;
					    u_xlati10 = unity_StereoEyeIndex;
					    u_xlat3.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati10].yyy;
					    u_xlat3.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati10].xxx + u_xlat3.xyz;
					    u_xlat3.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati10].zzz + u_xlat3.xyz;
					    u_xlat3.xyz = u_xlat3.xyz + unity_WorldToObject[3].xyz;
					    u_xlat3.xyz = u_xlat3.xyz + (-in_POSITION0.xyz);
					    u_xlat15 = dot(u_xlat3.xyz, u_xlat3.xyz);
					    u_xlat15 = inversesqrt(u_xlat15);
					    u_xlat3.xyz = vec3(u_xlat15) * u_xlat3.xyz;
					    u_xlat5.x = dot(u_xlat5.xyz, u_xlat3.xyz);
					    u_xlat5.x = log2(abs(u_xlat5.x));
					    u_xlat5.x = u_xlat5.x * _FresnelStr;
					    u_xlat5.x = exp2(u_xlat5.x);
					    u_xlat5.x = u_xlat5.x + u_xlat5.x;
					    vs_TEXCOORD4 = min(u_xlat5.x, 1.0);
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat4 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlat8.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati10].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati10].xy + u_xlat8.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendAlpha" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					float u_xlat9;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat9 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat9 = inversesqrt(u_xlat9);
					    u_xlat2.xyz = vec3(u_xlat9) * u_xlat2.xyz;
					    u_xlat9 = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat9 = inversesqrt(u_xlat9);
					    u_xlat3.xyz = vec3(u_xlat9) * in_NORMAL0.xyz;
					    u_xlat9 = dot(u_xlat3.xyz, u_xlat2.xyz);
					    u_xlat9 = log2(abs(u_xlat9));
					    u_xlat9 = u_xlat9 * _FresnelStr;
					    u_xlat9 = exp2(u_xlat9);
					    u_xlat9 = u_xlat9 + u_xlat9;
					    vs_TEXCOORD4 = min(u_xlat9, 1.0);
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat4 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_3_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					vec3 u_xlat5;
					vec2 u_xlat8;
					int u_xlati10;
					float u_xlat15;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    u_xlat5.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat5.x = inversesqrt(u_xlat5.x);
					    u_xlat5.xyz = u_xlat5.xxx * in_NORMAL0.xyz;
					    u_xlati10 = unity_StereoEyeIndex;
					    u_xlat3.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati10].yyy;
					    u_xlat3.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati10].xxx + u_xlat3.xyz;
					    u_xlat3.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati10].zzz + u_xlat3.xyz;
					    u_xlat3.xyz = u_xlat3.xyz + unity_WorldToObject[3].xyz;
					    u_xlat3.xyz = u_xlat3.xyz + (-in_POSITION0.xyz);
					    u_xlat15 = dot(u_xlat3.xyz, u_xlat3.xyz);
					    u_xlat15 = inversesqrt(u_xlat15);
					    u_xlat3.xyz = vec3(u_xlat15) * u_xlat3.xyz;
					    u_xlat5.x = dot(u_xlat5.xyz, u_xlat3.xyz);
					    u_xlat5.x = log2(abs(u_xlat5.x));
					    u_xlat5.x = u_xlat5.x * _FresnelStr;
					    u_xlat5.x = exp2(u_xlat5.x);
					    u_xlat5.x = u_xlat5.x + u_xlat5.x;
					    vs_TEXCOORD4 = min(u_xlat5.x, 1.0);
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat4 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlat8.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati10].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati10].xy + u_xlat8.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendAlpha" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					float u_xlat14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat14 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat2.xyz = vec3(u_xlat14) * u_xlat2.xyz;
					    u_xlat14 = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat3.xyz = vec3(u_xlat14) * in_NORMAL0.xyz;
					    u_xlat2.x = dot(u_xlat3.xyz, u_xlat2.xyz);
					    u_xlat2.x = log2(abs(u_xlat2.x));
					    u_xlat2.x = u_xlat2.x * _FresnelStr;
					    u_xlat2.x = exp2(u_xlat2.x);
					    u_xlat2.x = u_xlat2.x + u_xlat2.x;
					    vs_TEXCOORD4 = min(u_xlat2.x, 1.0);
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat4 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_3_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati1;
					vec4 u_xlat2;
					int u_xlati3;
					float u_xlat4;
					float u_xlat5;
					vec3 u_xlat6;
					vec3 u_xlat8;
					vec2 u_xlat10;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    u_xlat6.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat6.x = inversesqrt(u_xlat6.x);
					    u_xlat6.xyz = u_xlat6.xxx * in_NORMAL0.xyz;
					    u_xlati3 = unity_StereoEyeIndex;
					    u_xlat8.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].yyy;
					    u_xlat8.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].xxx + u_xlat8.xyz;
					    u_xlat8.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].zzz + u_xlat8.xyz;
					    u_xlat8.xyz = u_xlat8.xyz + unity_WorldToObject[3].xyz;
					    u_xlat8.xyz = u_xlat8.xyz + (-in_POSITION0.xyz);
					    u_xlat4 = dot(u_xlat8.xyz, u_xlat8.xyz);
					    u_xlat4 = inversesqrt(u_xlat4);
					    u_xlat8.xyz = u_xlat8.xyz * vec3(u_xlat4);
					    u_xlat6.x = dot(u_xlat6.xyz, u_xlat8.xyz);
					    u_xlat6.x = log2(abs(u_xlat6.x));
					    u_xlat6.x = u_xlat6.x * _FresnelStr;
					    u_xlat6.x = exp2(u_xlat6.x);
					    u_xlat6.x = u_xlat6.x + u_xlat6.x;
					    vs_TEXCOORD4 = min(u_xlat6.x, 1.0);
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat5 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat5;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlat10.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati3].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati3].xy + u_xlat10.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					float u_xlat14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat14 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat2.xyz = vec3(u_xlat14) * u_xlat2.xyz;
					    u_xlat14 = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat3.xyz = vec3(u_xlat14) * in_NORMAL0.xyz;
					    u_xlat2.x = dot(u_xlat3.xyz, u_xlat2.xyz);
					    u_xlat2.x = log2(abs(u_xlat2.x));
					    u_xlat2.x = u_xlat2.x * _FresnelStr;
					    u_xlat2.x = exp2(u_xlat2.x);
					    u_xlat2.x = u_xlat2.x + u_xlat2.x;
					    vs_TEXCOORD4 = min(u_xlat2.x, 1.0);
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat4 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_3_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati1;
					vec4 u_xlat2;
					int u_xlati3;
					float u_xlat4;
					float u_xlat5;
					vec3 u_xlat6;
					vec3 u_xlat8;
					vec2 u_xlat10;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    u_xlat6.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat6.x = inversesqrt(u_xlat6.x);
					    u_xlat6.xyz = u_xlat6.xxx * in_NORMAL0.xyz;
					    u_xlati3 = unity_StereoEyeIndex;
					    u_xlat8.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].yyy;
					    u_xlat8.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].xxx + u_xlat8.xyz;
					    u_xlat8.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].zzz + u_xlat8.xyz;
					    u_xlat8.xyz = u_xlat8.xyz + unity_WorldToObject[3].xyz;
					    u_xlat8.xyz = u_xlat8.xyz + (-in_POSITION0.xyz);
					    u_xlat4 = dot(u_xlat8.xyz, u_xlat8.xyz);
					    u_xlat4 = inversesqrt(u_xlat4);
					    u_xlat8.xyz = u_xlat8.xyz * vec3(u_xlat4);
					    u_xlat6.x = dot(u_xlat6.xyz, u_xlat8.xyz);
					    u_xlat6.x = log2(abs(u_xlat6.x));
					    u_xlat6.x = u_xlat6.x * _FresnelStr;
					    u_xlat6.x = exp2(u_xlat6.x);
					    u_xlat6.x = u_xlat6.x + u_xlat6.x;
					    vs_TEXCOORD4 = min(u_xlat6.x, 1.0);
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat5 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat5;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlat10.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati3].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati3].xy + u_xlat10.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendAlpha" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					float u_xlat14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat14 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat2.xyz = vec3(u_xlat14) * u_xlat2.xyz;
					    u_xlat14 = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat3.xyz = vec3(u_xlat14) * in_NORMAL0.xyz;
					    u_xlat2.x = dot(u_xlat3.xyz, u_xlat2.xyz);
					    u_xlat2.x = log2(abs(u_xlat2.x));
					    u_xlat2.x = u_xlat2.x * _FresnelStr;
					    u_xlat2.x = exp2(u_xlat2.x);
					    u_xlat2.x = u_xlat2.x + u_xlat2.x;
					    vs_TEXCOORD4 = min(u_xlat2.x, 1.0);
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat4 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_3_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati1;
					vec4 u_xlat2;
					int u_xlati3;
					float u_xlat4;
					float u_xlat5;
					vec3 u_xlat6;
					vec3 u_xlat8;
					vec2 u_xlat10;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    u_xlat6.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat6.x = inversesqrt(u_xlat6.x);
					    u_xlat6.xyz = u_xlat6.xxx * in_NORMAL0.xyz;
					    u_xlati3 = unity_StereoEyeIndex;
					    u_xlat8.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].yyy;
					    u_xlat8.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].xxx + u_xlat8.xyz;
					    u_xlat8.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].zzz + u_xlat8.xyz;
					    u_xlat8.xyz = u_xlat8.xyz + unity_WorldToObject[3].xyz;
					    u_xlat8.xyz = u_xlat8.xyz + (-in_POSITION0.xyz);
					    u_xlat4 = dot(u_xlat8.xyz, u_xlat8.xyz);
					    u_xlat4 = inversesqrt(u_xlat4);
					    u_xlat8.xyz = u_xlat8.xyz * vec3(u_xlat4);
					    u_xlat6.x = dot(u_xlat6.xyz, u_xlat8.xyz);
					    u_xlat6.x = log2(abs(u_xlat6.x));
					    u_xlat6.x = u_xlat6.x * _FresnelStr;
					    u_xlat6.x = exp2(u_xlat6.x);
					    u_xlat6.x = u_xlat6.x + u_xlat6.x;
					    vs_TEXCOORD4 = min(u_xlat6.x, 1.0);
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat5 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat5;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlat10.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati3].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati3].xy + u_xlat10.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					float u_xlat14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat14 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat2.xyz = vec3(u_xlat14) * u_xlat2.xyz;
					    u_xlat14 = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat3.xyz = vec3(u_xlat14) * in_NORMAL0.xyz;
					    u_xlat2.x = dot(u_xlat3.xyz, u_xlat2.xyz);
					    u_xlat2.x = log2(abs(u_xlat2.x));
					    u_xlat2.x = u_xlat2.x * _FresnelStr;
					    u_xlat2.x = exp2(u_xlat2.x);
					    u_xlat2.x = u_xlat2.x + u_xlat2.x;
					    vs_TEXCOORD4 = min(u_xlat2.x, 1.0);
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat4 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_3_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati1;
					vec4 u_xlat2;
					int u_xlati3;
					float u_xlat4;
					float u_xlat5;
					vec3 u_xlat6;
					vec3 u_xlat8;
					vec2 u_xlat10;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    u_xlat6.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat6.x = inversesqrt(u_xlat6.x);
					    u_xlat6.xyz = u_xlat6.xxx * in_NORMAL0.xyz;
					    u_xlati3 = unity_StereoEyeIndex;
					    u_xlat8.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].yyy;
					    u_xlat8.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].xxx + u_xlat8.xyz;
					    u_xlat8.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].zzz + u_xlat8.xyz;
					    u_xlat8.xyz = u_xlat8.xyz + unity_WorldToObject[3].xyz;
					    u_xlat8.xyz = u_xlat8.xyz + (-in_POSITION0.xyz);
					    u_xlat4 = dot(u_xlat8.xyz, u_xlat8.xyz);
					    u_xlat4 = inversesqrt(u_xlat4);
					    u_xlat8.xyz = u_xlat8.xyz * vec3(u_xlat4);
					    u_xlat6.x = dot(u_xlat6.xyz, u_xlat8.xyz);
					    u_xlat6.x = log2(abs(u_xlat6.x));
					    u_xlat6.x = u_xlat6.x * _FresnelStr;
					    u_xlat6.x = exp2(u_xlat6.x);
					    u_xlat6.x = u_xlat6.x + u_xlat6.x;
					    vs_TEXCOORD4 = min(u_xlat6.x, 1.0);
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat5 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat5;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlat10.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati3].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati3].xy + u_xlat10.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendAlpha" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					float u_xlat14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat14 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat2.xyz = vec3(u_xlat14) * u_xlat2.xyz;
					    u_xlat14 = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat3.xyz = vec3(u_xlat14) * in_NORMAL0.xyz;
					    u_xlat2.x = dot(u_xlat3.xyz, u_xlat2.xyz);
					    u_xlat2.x = log2(abs(u_xlat2.x));
					    u_xlat2.x = u_xlat2.x * _FresnelStr;
					    u_xlat2.x = exp2(u_xlat2.x);
					    u_xlat2.x = u_xlat2.x + u_xlat2.x;
					    vs_TEXCOORD4 = min(u_xlat2.x, 1.0);
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat4 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_3_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati1;
					vec4 u_xlat2;
					int u_xlati3;
					float u_xlat4;
					float u_xlat5;
					vec3 u_xlat6;
					vec3 u_xlat8;
					vec2 u_xlat10;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    u_xlat6.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat6.x = inversesqrt(u_xlat6.x);
					    u_xlat6.xyz = u_xlat6.xxx * in_NORMAL0.xyz;
					    u_xlati3 = unity_StereoEyeIndex;
					    u_xlat8.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].yyy;
					    u_xlat8.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].xxx + u_xlat8.xyz;
					    u_xlat8.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].zzz + u_xlat8.xyz;
					    u_xlat8.xyz = u_xlat8.xyz + unity_WorldToObject[3].xyz;
					    u_xlat8.xyz = u_xlat8.xyz + (-in_POSITION0.xyz);
					    u_xlat4 = dot(u_xlat8.xyz, u_xlat8.xyz);
					    u_xlat4 = inversesqrt(u_xlat4);
					    u_xlat8.xyz = u_xlat8.xyz * vec3(u_xlat4);
					    u_xlat6.x = dot(u_xlat6.xyz, u_xlat8.xyz);
					    u_xlat6.x = log2(abs(u_xlat6.x));
					    u_xlat6.x = u_xlat6.x * _FresnelStr;
					    u_xlat6.x = exp2(u_xlat6.x);
					    u_xlat6.x = u_xlat6.x + u_xlat6.x;
					    vs_TEXCOORD4 = min(u_xlat6.x, 1.0);
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat5 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat5;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlat10.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati3].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati3].xy + u_xlat10.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					float u_xlat14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat14 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat2.xyz = vec3(u_xlat14) * u_xlat2.xyz;
					    u_xlat14 = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat3.xyz = vec3(u_xlat14) * in_NORMAL0.xyz;
					    u_xlat2.x = dot(u_xlat3.xyz, u_xlat2.xyz);
					    u_xlat2.x = log2(abs(u_xlat2.x));
					    u_xlat2.x = u_xlat2.x * _FresnelStr;
					    u_xlat2.x = exp2(u_xlat2.x);
					    u_xlat2.x = u_xlat2.x + u_xlat2.x;
					    vs_TEXCOORD4 = min(u_xlat2.x, 1.0);
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat4 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_3_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati1;
					vec4 u_xlat2;
					int u_xlati3;
					float u_xlat4;
					float u_xlat5;
					vec3 u_xlat6;
					vec3 u_xlat8;
					vec2 u_xlat10;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    u_xlat6.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat6.x = inversesqrt(u_xlat6.x);
					    u_xlat6.xyz = u_xlat6.xxx * in_NORMAL0.xyz;
					    u_xlati3 = unity_StereoEyeIndex;
					    u_xlat8.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].yyy;
					    u_xlat8.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].xxx + u_xlat8.xyz;
					    u_xlat8.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].zzz + u_xlat8.xyz;
					    u_xlat8.xyz = u_xlat8.xyz + unity_WorldToObject[3].xyz;
					    u_xlat8.xyz = u_xlat8.xyz + (-in_POSITION0.xyz);
					    u_xlat4 = dot(u_xlat8.xyz, u_xlat8.xyz);
					    u_xlat4 = inversesqrt(u_xlat4);
					    u_xlat8.xyz = u_xlat8.xyz * vec3(u_xlat4);
					    u_xlat6.x = dot(u_xlat6.xyz, u_xlat8.xyz);
					    u_xlat6.x = log2(abs(u_xlat6.x));
					    u_xlat6.x = u_xlat6.x * _FresnelStr;
					    u_xlat6.x = exp2(u_xlat6.x);
					    u_xlat6.x = u_xlat6.x + u_xlat6.x;
					    vs_TEXCOORD4 = min(u_xlat6.x, 1.0);
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat5 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat5;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlat10.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati3].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati3].xy + u_xlat10.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendAlpha" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    u_xlat2 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat2;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec2 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					float u_xlat3;
					int u_xlati6;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    u_xlat3 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat3;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlati6 = unity_StereoEyeIndex;
					    u_xlat1.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati6].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati6].xy + u_xlat1.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendAlpha" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    u_xlat2 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat2;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec2 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					float u_xlat3;
					int u_xlati6;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    u_xlat3 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat3;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlati6 = unity_StereoEyeIndex;
					    u_xlat1.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati6].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati6].xy + u_xlat1.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendAlpha" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat2 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat2;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec2 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					float u_xlat3;
					int u_xlati6;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat3 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat3;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlati6 = unity_StereoEyeIndex;
					    u_xlat1.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati6].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati6].xy + u_xlat1.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat2 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat2;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec2 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					float u_xlat3;
					int u_xlati6;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat3 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat3;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlati6 = unity_StereoEyeIndex;
					    u_xlat1.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati6].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati6].xy + u_xlat1.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendAlpha" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat2 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat2;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec2 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					float u_xlat3;
					int u_xlati6;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat3 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat3;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlati6 = unity_StereoEyeIndex;
					    u_xlat1.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati6].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati6].xy + u_xlat1.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat2 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat2;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec2 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					float u_xlat3;
					int u_xlati6;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat3 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat3;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlati6 = unity_StereoEyeIndex;
					    u_xlat1.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati6].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati6].xy + u_xlat1.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendAlpha" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat2 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat2;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec2 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					float u_xlat3;
					int u_xlati6;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat3 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat3;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlati6 = unity_StereoEyeIndex;
					    u_xlat1.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati6].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati6].xy + u_xlat1.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat2 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat2;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec2 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					float u_xlat3;
					int u_xlati6;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat3 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat3;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlati6 = unity_StereoEyeIndex;
					    u_xlat1.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati6].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati6].xy + u_xlat1.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendAlpha" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    u_xlat2 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat2;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec2 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					float u_xlat3;
					int u_xlati6;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    u_xlat3 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat3;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlati6 = unity_StereoEyeIndex;
					    u_xlat1.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati6].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati6].xy + u_xlat1.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendAlpha" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    u_xlat2 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat2;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec2 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					float u_xlat3;
					int u_xlati6;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    u_xlat3 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat3;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlati6 = unity_StereoEyeIndex;
					    u_xlat1.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati6].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati6].xy + u_xlat1.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendAlpha" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat2 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat2;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec2 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					float u_xlat3;
					int u_xlati6;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat3 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat3;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlati6 = unity_StereoEyeIndex;
					    u_xlat1.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati6].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati6].xy + u_xlat1.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat2 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat2;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec2 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					float u_xlat3;
					int u_xlati6;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat3 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat3;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlati6 = unity_StereoEyeIndex;
					    u_xlat1.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati6].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati6].xy + u_xlat1.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendAlpha" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat2 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat2;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec2 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					float u_xlat3;
					int u_xlati6;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat3 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat3;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlati6 = unity_StereoEyeIndex;
					    u_xlat1.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati6].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati6].xy + u_xlat1.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat2 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat2;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec2 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					float u_xlat3;
					int u_xlati6;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat3 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat3;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlati6 = unity_StereoEyeIndex;
					    u_xlat1.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati6].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati6].xy + u_xlat1.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendAlpha" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat2 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat2;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec2 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					float u_xlat3;
					int u_xlati6;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat3 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat3;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlati6 = unity_StereoEyeIndex;
					    u_xlat1.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati6].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati6].xy + u_xlat1.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat2 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat2;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec2 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					float u_xlat3;
					int u_xlati6;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat3 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat3;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlati6 = unity_StereoEyeIndex;
					    u_xlat1.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati6].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati6].xy + u_xlat1.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendAlpha" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					float u_xlat9;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat9 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat9 = inversesqrt(u_xlat9);
					    u_xlat2.xyz = vec3(u_xlat9) * u_xlat2.xyz;
					    u_xlat9 = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat9 = inversesqrt(u_xlat9);
					    u_xlat3.xyz = vec3(u_xlat9) * in_NORMAL0.xyz;
					    u_xlat9 = dot(u_xlat3.xyz, u_xlat2.xyz);
					    u_xlat9 = log2(abs(u_xlat9));
					    u_xlat9 = u_xlat9 * _FresnelStr;
					    u_xlat9 = exp2(u_xlat9);
					    u_xlat9 = u_xlat9 + u_xlat9;
					    vs_TEXCOORD4 = min(u_xlat9, 1.0);
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    u_xlat4 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_3_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					vec3 u_xlat5;
					vec2 u_xlat8;
					int u_xlati10;
					float u_xlat15;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat5.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat5.x = inversesqrt(u_xlat5.x);
					    u_xlat5.xyz = u_xlat5.xxx * in_NORMAL0.xyz;
					    u_xlati10 = unity_StereoEyeIndex;
					    u_xlat3.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati10].yyy;
					    u_xlat3.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati10].xxx + u_xlat3.xyz;
					    u_xlat3.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati10].zzz + u_xlat3.xyz;
					    u_xlat3.xyz = u_xlat3.xyz + unity_WorldToObject[3].xyz;
					    u_xlat3.xyz = u_xlat3.xyz + (-in_POSITION0.xyz);
					    u_xlat15 = dot(u_xlat3.xyz, u_xlat3.xyz);
					    u_xlat15 = inversesqrt(u_xlat15);
					    u_xlat3.xyz = vec3(u_xlat15) * u_xlat3.xyz;
					    u_xlat5.x = dot(u_xlat5.xyz, u_xlat3.xyz);
					    u_xlat5.x = log2(abs(u_xlat5.x));
					    u_xlat5.x = u_xlat5.x * _FresnelStr;
					    u_xlat5.x = exp2(u_xlat5.x);
					    u_xlat5.x = u_xlat5.x + u_xlat5.x;
					    vs_TEXCOORD4 = min(u_xlat5.x, 1.0);
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    u_xlat4 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlat8.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati10].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati10].xy + u_xlat8.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendAlpha" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					float u_xlat9;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat9 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat9 = inversesqrt(u_xlat9);
					    u_xlat2.xyz = vec3(u_xlat9) * u_xlat2.xyz;
					    u_xlat9 = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat9 = inversesqrt(u_xlat9);
					    u_xlat3.xyz = vec3(u_xlat9) * in_NORMAL0.xyz;
					    u_xlat9 = dot(u_xlat3.xyz, u_xlat2.xyz);
					    u_xlat9 = log2(abs(u_xlat9));
					    u_xlat9 = u_xlat9 * _FresnelStr;
					    u_xlat9 = exp2(u_xlat9);
					    u_xlat9 = u_xlat9 + u_xlat9;
					    vs_TEXCOORD4 = min(u_xlat9, 1.0);
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    u_xlat4 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_3_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					vec3 u_xlat5;
					vec2 u_xlat8;
					int u_xlati10;
					float u_xlat15;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat5.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat5.x = inversesqrt(u_xlat5.x);
					    u_xlat5.xyz = u_xlat5.xxx * in_NORMAL0.xyz;
					    u_xlati10 = unity_StereoEyeIndex;
					    u_xlat3.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati10].yyy;
					    u_xlat3.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati10].xxx + u_xlat3.xyz;
					    u_xlat3.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati10].zzz + u_xlat3.xyz;
					    u_xlat3.xyz = u_xlat3.xyz + unity_WorldToObject[3].xyz;
					    u_xlat3.xyz = u_xlat3.xyz + (-in_POSITION0.xyz);
					    u_xlat15 = dot(u_xlat3.xyz, u_xlat3.xyz);
					    u_xlat15 = inversesqrt(u_xlat15);
					    u_xlat3.xyz = vec3(u_xlat15) * u_xlat3.xyz;
					    u_xlat5.x = dot(u_xlat5.xyz, u_xlat3.xyz);
					    u_xlat5.x = log2(abs(u_xlat5.x));
					    u_xlat5.x = u_xlat5.x * _FresnelStr;
					    u_xlat5.x = exp2(u_xlat5.x);
					    u_xlat5.x = u_xlat5.x + u_xlat5.x;
					    vs_TEXCOORD4 = min(u_xlat5.x, 1.0);
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    u_xlat4 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlat8.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati10].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati10].xy + u_xlat8.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendAlpha" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					float u_xlat14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat14 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat2.xyz = vec3(u_xlat14) * u_xlat2.xyz;
					    u_xlat14 = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat3.xyz = vec3(u_xlat14) * in_NORMAL0.xyz;
					    u_xlat2.x = dot(u_xlat3.xyz, u_xlat2.xyz);
					    u_xlat2.x = log2(abs(u_xlat2.x));
					    u_xlat2.x = u_xlat2.x * _FresnelStr;
					    u_xlat2.x = exp2(u_xlat2.x);
					    u_xlat2.x = u_xlat2.x + u_xlat2.x;
					    vs_TEXCOORD4 = min(u_xlat2.x, 1.0);
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat4 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_3_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati1;
					vec4 u_xlat2;
					int u_xlati3;
					float u_xlat4;
					float u_xlat5;
					vec3 u_xlat6;
					vec3 u_xlat8;
					vec2 u_xlat10;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat6.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat6.x = inversesqrt(u_xlat6.x);
					    u_xlat6.xyz = u_xlat6.xxx * in_NORMAL0.xyz;
					    u_xlati3 = unity_StereoEyeIndex;
					    u_xlat8.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].yyy;
					    u_xlat8.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].xxx + u_xlat8.xyz;
					    u_xlat8.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].zzz + u_xlat8.xyz;
					    u_xlat8.xyz = u_xlat8.xyz + unity_WorldToObject[3].xyz;
					    u_xlat8.xyz = u_xlat8.xyz + (-in_POSITION0.xyz);
					    u_xlat4 = dot(u_xlat8.xyz, u_xlat8.xyz);
					    u_xlat4 = inversesqrt(u_xlat4);
					    u_xlat8.xyz = u_xlat8.xyz * vec3(u_xlat4);
					    u_xlat6.x = dot(u_xlat6.xyz, u_xlat8.xyz);
					    u_xlat6.x = log2(abs(u_xlat6.x));
					    u_xlat6.x = u_xlat6.x * _FresnelStr;
					    u_xlat6.x = exp2(u_xlat6.x);
					    u_xlat6.x = u_xlat6.x + u_xlat6.x;
					    vs_TEXCOORD4 = min(u_xlat6.x, 1.0);
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat5 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat5;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlat10.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati3].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati3].xy + u_xlat10.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					float u_xlat14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat14 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat2.xyz = vec3(u_xlat14) * u_xlat2.xyz;
					    u_xlat14 = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat3.xyz = vec3(u_xlat14) * in_NORMAL0.xyz;
					    u_xlat2.x = dot(u_xlat3.xyz, u_xlat2.xyz);
					    u_xlat2.x = log2(abs(u_xlat2.x));
					    u_xlat2.x = u_xlat2.x * _FresnelStr;
					    u_xlat2.x = exp2(u_xlat2.x);
					    u_xlat2.x = u_xlat2.x + u_xlat2.x;
					    vs_TEXCOORD4 = min(u_xlat2.x, 1.0);
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat4 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_3_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati1;
					vec4 u_xlat2;
					int u_xlati3;
					float u_xlat4;
					float u_xlat5;
					vec3 u_xlat6;
					vec3 u_xlat8;
					vec2 u_xlat10;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat6.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat6.x = inversesqrt(u_xlat6.x);
					    u_xlat6.xyz = u_xlat6.xxx * in_NORMAL0.xyz;
					    u_xlati3 = unity_StereoEyeIndex;
					    u_xlat8.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].yyy;
					    u_xlat8.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].xxx + u_xlat8.xyz;
					    u_xlat8.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].zzz + u_xlat8.xyz;
					    u_xlat8.xyz = u_xlat8.xyz + unity_WorldToObject[3].xyz;
					    u_xlat8.xyz = u_xlat8.xyz + (-in_POSITION0.xyz);
					    u_xlat4 = dot(u_xlat8.xyz, u_xlat8.xyz);
					    u_xlat4 = inversesqrt(u_xlat4);
					    u_xlat8.xyz = u_xlat8.xyz * vec3(u_xlat4);
					    u_xlat6.x = dot(u_xlat6.xyz, u_xlat8.xyz);
					    u_xlat6.x = log2(abs(u_xlat6.x));
					    u_xlat6.x = u_xlat6.x * _FresnelStr;
					    u_xlat6.x = exp2(u_xlat6.x);
					    u_xlat6.x = u_xlat6.x + u_xlat6.x;
					    vs_TEXCOORD4 = min(u_xlat6.x, 1.0);
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat5 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat5;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlat10.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati3].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati3].xy + u_xlat10.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendAlpha" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					float u_xlat14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat14 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat2.xyz = vec3(u_xlat14) * u_xlat2.xyz;
					    u_xlat14 = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat3.xyz = vec3(u_xlat14) * in_NORMAL0.xyz;
					    u_xlat2.x = dot(u_xlat3.xyz, u_xlat2.xyz);
					    u_xlat2.x = log2(abs(u_xlat2.x));
					    u_xlat2.x = u_xlat2.x * _FresnelStr;
					    u_xlat2.x = exp2(u_xlat2.x);
					    u_xlat2.x = u_xlat2.x + u_xlat2.x;
					    vs_TEXCOORD4 = min(u_xlat2.x, 1.0);
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat4 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_3_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati1;
					vec4 u_xlat2;
					int u_xlati3;
					float u_xlat4;
					float u_xlat5;
					vec3 u_xlat6;
					vec3 u_xlat8;
					vec2 u_xlat10;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat6.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat6.x = inversesqrt(u_xlat6.x);
					    u_xlat6.xyz = u_xlat6.xxx * in_NORMAL0.xyz;
					    u_xlati3 = unity_StereoEyeIndex;
					    u_xlat8.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].yyy;
					    u_xlat8.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].xxx + u_xlat8.xyz;
					    u_xlat8.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].zzz + u_xlat8.xyz;
					    u_xlat8.xyz = u_xlat8.xyz + unity_WorldToObject[3].xyz;
					    u_xlat8.xyz = u_xlat8.xyz + (-in_POSITION0.xyz);
					    u_xlat4 = dot(u_xlat8.xyz, u_xlat8.xyz);
					    u_xlat4 = inversesqrt(u_xlat4);
					    u_xlat8.xyz = u_xlat8.xyz * vec3(u_xlat4);
					    u_xlat6.x = dot(u_xlat6.xyz, u_xlat8.xyz);
					    u_xlat6.x = log2(abs(u_xlat6.x));
					    u_xlat6.x = u_xlat6.x * _FresnelStr;
					    u_xlat6.x = exp2(u_xlat6.x);
					    u_xlat6.x = u_xlat6.x + u_xlat6.x;
					    vs_TEXCOORD4 = min(u_xlat6.x, 1.0);
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat5 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat5;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlat10.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati3].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati3].xy + u_xlat10.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					float u_xlat14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat14 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat2.xyz = vec3(u_xlat14) * u_xlat2.xyz;
					    u_xlat14 = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat3.xyz = vec3(u_xlat14) * in_NORMAL0.xyz;
					    u_xlat2.x = dot(u_xlat3.xyz, u_xlat2.xyz);
					    u_xlat2.x = log2(abs(u_xlat2.x));
					    u_xlat2.x = u_xlat2.x * _FresnelStr;
					    u_xlat2.x = exp2(u_xlat2.x);
					    u_xlat2.x = u_xlat2.x + u_xlat2.x;
					    vs_TEXCOORD4 = min(u_xlat2.x, 1.0);
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat4 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_3_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati1;
					vec4 u_xlat2;
					int u_xlati3;
					float u_xlat4;
					float u_xlat5;
					vec3 u_xlat6;
					vec3 u_xlat8;
					vec2 u_xlat10;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat6.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat6.x = inversesqrt(u_xlat6.x);
					    u_xlat6.xyz = u_xlat6.xxx * in_NORMAL0.xyz;
					    u_xlati3 = unity_StereoEyeIndex;
					    u_xlat8.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].yyy;
					    u_xlat8.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].xxx + u_xlat8.xyz;
					    u_xlat8.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].zzz + u_xlat8.xyz;
					    u_xlat8.xyz = u_xlat8.xyz + unity_WorldToObject[3].xyz;
					    u_xlat8.xyz = u_xlat8.xyz + (-in_POSITION0.xyz);
					    u_xlat4 = dot(u_xlat8.xyz, u_xlat8.xyz);
					    u_xlat4 = inversesqrt(u_xlat4);
					    u_xlat8.xyz = u_xlat8.xyz * vec3(u_xlat4);
					    u_xlat6.x = dot(u_xlat6.xyz, u_xlat8.xyz);
					    u_xlat6.x = log2(abs(u_xlat6.x));
					    u_xlat6.x = u_xlat6.x * _FresnelStr;
					    u_xlat6.x = exp2(u_xlat6.x);
					    u_xlat6.x = u_xlat6.x + u_xlat6.x;
					    vs_TEXCOORD4 = min(u_xlat6.x, 1.0);
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat5 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat5;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlat10.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati3].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati3].xy + u_xlat10.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendAlpha" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					float u_xlat14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat14 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat2.xyz = vec3(u_xlat14) * u_xlat2.xyz;
					    u_xlat14 = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat3.xyz = vec3(u_xlat14) * in_NORMAL0.xyz;
					    u_xlat2.x = dot(u_xlat3.xyz, u_xlat2.xyz);
					    u_xlat2.x = log2(abs(u_xlat2.x));
					    u_xlat2.x = u_xlat2.x * _FresnelStr;
					    u_xlat2.x = exp2(u_xlat2.x);
					    u_xlat2.x = u_xlat2.x + u_xlat2.x;
					    vs_TEXCOORD4 = min(u_xlat2.x, 1.0);
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat4 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_3_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati1;
					vec4 u_xlat2;
					int u_xlati3;
					float u_xlat4;
					float u_xlat5;
					vec3 u_xlat6;
					vec3 u_xlat8;
					vec2 u_xlat10;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat6.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat6.x = inversesqrt(u_xlat6.x);
					    u_xlat6.xyz = u_xlat6.xxx * in_NORMAL0.xyz;
					    u_xlati3 = unity_StereoEyeIndex;
					    u_xlat8.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].yyy;
					    u_xlat8.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].xxx + u_xlat8.xyz;
					    u_xlat8.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].zzz + u_xlat8.xyz;
					    u_xlat8.xyz = u_xlat8.xyz + unity_WorldToObject[3].xyz;
					    u_xlat8.xyz = u_xlat8.xyz + (-in_POSITION0.xyz);
					    u_xlat4 = dot(u_xlat8.xyz, u_xlat8.xyz);
					    u_xlat4 = inversesqrt(u_xlat4);
					    u_xlat8.xyz = u_xlat8.xyz * vec3(u_xlat4);
					    u_xlat6.x = dot(u_xlat6.xyz, u_xlat8.xyz);
					    u_xlat6.x = log2(abs(u_xlat6.x));
					    u_xlat6.x = u_xlat6.x * _FresnelStr;
					    u_xlat6.x = exp2(u_xlat6.x);
					    u_xlat6.x = u_xlat6.x + u_xlat6.x;
					    vs_TEXCOORD4 = min(u_xlat6.x, 1.0);
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat5 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat5;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlat10.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati3].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati3].xy + u_xlat10.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					float u_xlat14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat14 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat2.xyz = vec3(u_xlat14) * u_xlat2.xyz;
					    u_xlat14 = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat3.xyz = vec3(u_xlat14) * in_NORMAL0.xyz;
					    u_xlat2.x = dot(u_xlat3.xyz, u_xlat2.xyz);
					    u_xlat2.x = log2(abs(u_xlat2.x));
					    u_xlat2.x = u_xlat2.x * _FresnelStr;
					    u_xlat2.x = exp2(u_xlat2.x);
					    u_xlat2.x = u_xlat2.x + u_xlat2.x;
					    vs_TEXCOORD4 = min(u_xlat2.x, 1.0);
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat4 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_3_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati1;
					vec4 u_xlat2;
					int u_xlati3;
					float u_xlat4;
					float u_xlat5;
					vec3 u_xlat6;
					vec3 u_xlat8;
					vec2 u_xlat10;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat6.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat6.x = inversesqrt(u_xlat6.x);
					    u_xlat6.xyz = u_xlat6.xxx * in_NORMAL0.xyz;
					    u_xlati3 = unity_StereoEyeIndex;
					    u_xlat8.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].yyy;
					    u_xlat8.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].xxx + u_xlat8.xyz;
					    u_xlat8.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].zzz + u_xlat8.xyz;
					    u_xlat8.xyz = u_xlat8.xyz + unity_WorldToObject[3].xyz;
					    u_xlat8.xyz = u_xlat8.xyz + (-in_POSITION0.xyz);
					    u_xlat4 = dot(u_xlat8.xyz, u_xlat8.xyz);
					    u_xlat4 = inversesqrt(u_xlat4);
					    u_xlat8.xyz = u_xlat8.xyz * vec3(u_xlat4);
					    u_xlat6.x = dot(u_xlat6.xyz, u_xlat8.xyz);
					    u_xlat6.x = log2(abs(u_xlat6.x));
					    u_xlat6.x = u_xlat6.x * _FresnelStr;
					    u_xlat6.x = exp2(u_xlat6.x);
					    u_xlat6.x = u_xlat6.x + u_xlat6.x;
					    vs_TEXCOORD4 = min(u_xlat6.x, 1.0);
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat5 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat5;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlat10.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati3].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati3].xy + u_xlat10.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendAlpha" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					float u_xlat9;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat9 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat9 = inversesqrt(u_xlat9);
					    u_xlat2.xyz = vec3(u_xlat9) * u_xlat2.xyz;
					    u_xlat9 = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat9 = inversesqrt(u_xlat9);
					    u_xlat3.xyz = vec3(u_xlat9) * in_NORMAL0.xyz;
					    u_xlat9 = dot(u_xlat3.xyz, u_xlat2.xyz);
					    u_xlat9 = log2(abs(u_xlat9));
					    u_xlat9 = u_xlat9 * _FresnelStr;
					    u_xlat9 = exp2(u_xlat9);
					    u_xlat9 = u_xlat9 + u_xlat9;
					    vs_TEXCOORD4 = min(u_xlat9, 1.0);
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    u_xlat4 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_3_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					vec3 u_xlat5;
					vec2 u_xlat8;
					int u_xlati10;
					float u_xlat15;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat5.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat5.x = inversesqrt(u_xlat5.x);
					    u_xlat5.xyz = u_xlat5.xxx * in_NORMAL0.xyz;
					    u_xlati10 = unity_StereoEyeIndex;
					    u_xlat3.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati10].yyy;
					    u_xlat3.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati10].xxx + u_xlat3.xyz;
					    u_xlat3.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati10].zzz + u_xlat3.xyz;
					    u_xlat3.xyz = u_xlat3.xyz + unity_WorldToObject[3].xyz;
					    u_xlat3.xyz = u_xlat3.xyz + (-in_POSITION0.xyz);
					    u_xlat15 = dot(u_xlat3.xyz, u_xlat3.xyz);
					    u_xlat15 = inversesqrt(u_xlat15);
					    u_xlat3.xyz = vec3(u_xlat15) * u_xlat3.xyz;
					    u_xlat5.x = dot(u_xlat5.xyz, u_xlat3.xyz);
					    u_xlat5.x = log2(abs(u_xlat5.x));
					    u_xlat5.x = u_xlat5.x * _FresnelStr;
					    u_xlat5.x = exp2(u_xlat5.x);
					    u_xlat5.x = u_xlat5.x + u_xlat5.x;
					    vs_TEXCOORD4 = min(u_xlat5.x, 1.0);
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    u_xlat4 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlat8.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati10].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati10].xy + u_xlat8.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendAlpha" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					float u_xlat9;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat9 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat9 = inversesqrt(u_xlat9);
					    u_xlat2.xyz = vec3(u_xlat9) * u_xlat2.xyz;
					    u_xlat9 = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat9 = inversesqrt(u_xlat9);
					    u_xlat3.xyz = vec3(u_xlat9) * in_NORMAL0.xyz;
					    u_xlat9 = dot(u_xlat3.xyz, u_xlat2.xyz);
					    u_xlat9 = log2(abs(u_xlat9));
					    u_xlat9 = u_xlat9 * _FresnelStr;
					    u_xlat9 = exp2(u_xlat9);
					    u_xlat9 = u_xlat9 + u_xlat9;
					    vs_TEXCOORD4 = min(u_xlat9, 1.0);
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    u_xlat4 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_3_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					vec3 u_xlat5;
					vec2 u_xlat8;
					int u_xlati10;
					float u_xlat15;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat5.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat5.x = inversesqrt(u_xlat5.x);
					    u_xlat5.xyz = u_xlat5.xxx * in_NORMAL0.xyz;
					    u_xlati10 = unity_StereoEyeIndex;
					    u_xlat3.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati10].yyy;
					    u_xlat3.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati10].xxx + u_xlat3.xyz;
					    u_xlat3.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati10].zzz + u_xlat3.xyz;
					    u_xlat3.xyz = u_xlat3.xyz + unity_WorldToObject[3].xyz;
					    u_xlat3.xyz = u_xlat3.xyz + (-in_POSITION0.xyz);
					    u_xlat15 = dot(u_xlat3.xyz, u_xlat3.xyz);
					    u_xlat15 = inversesqrt(u_xlat15);
					    u_xlat3.xyz = vec3(u_xlat15) * u_xlat3.xyz;
					    u_xlat5.x = dot(u_xlat5.xyz, u_xlat3.xyz);
					    u_xlat5.x = log2(abs(u_xlat5.x));
					    u_xlat5.x = u_xlat5.x * _FresnelStr;
					    u_xlat5.x = exp2(u_xlat5.x);
					    u_xlat5.x = u_xlat5.x + u_xlat5.x;
					    vs_TEXCOORD4 = min(u_xlat5.x, 1.0);
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    u_xlat4 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlat8.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati10].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati10].xy + u_xlat8.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendAlpha" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					float u_xlat14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat14 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat2.xyz = vec3(u_xlat14) * u_xlat2.xyz;
					    u_xlat14 = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat3.xyz = vec3(u_xlat14) * in_NORMAL0.xyz;
					    u_xlat2.x = dot(u_xlat3.xyz, u_xlat2.xyz);
					    u_xlat2.x = log2(abs(u_xlat2.x));
					    u_xlat2.x = u_xlat2.x * _FresnelStr;
					    u_xlat2.x = exp2(u_xlat2.x);
					    u_xlat2.x = u_xlat2.x + u_xlat2.x;
					    vs_TEXCOORD4 = min(u_xlat2.x, 1.0);
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat4 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_3_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati1;
					vec4 u_xlat2;
					int u_xlati3;
					float u_xlat4;
					float u_xlat5;
					vec3 u_xlat6;
					vec3 u_xlat8;
					vec2 u_xlat10;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat6.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat6.x = inversesqrt(u_xlat6.x);
					    u_xlat6.xyz = u_xlat6.xxx * in_NORMAL0.xyz;
					    u_xlati3 = unity_StereoEyeIndex;
					    u_xlat8.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].yyy;
					    u_xlat8.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].xxx + u_xlat8.xyz;
					    u_xlat8.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].zzz + u_xlat8.xyz;
					    u_xlat8.xyz = u_xlat8.xyz + unity_WorldToObject[3].xyz;
					    u_xlat8.xyz = u_xlat8.xyz + (-in_POSITION0.xyz);
					    u_xlat4 = dot(u_xlat8.xyz, u_xlat8.xyz);
					    u_xlat4 = inversesqrt(u_xlat4);
					    u_xlat8.xyz = u_xlat8.xyz * vec3(u_xlat4);
					    u_xlat6.x = dot(u_xlat6.xyz, u_xlat8.xyz);
					    u_xlat6.x = log2(abs(u_xlat6.x));
					    u_xlat6.x = u_xlat6.x * _FresnelStr;
					    u_xlat6.x = exp2(u_xlat6.x);
					    u_xlat6.x = u_xlat6.x + u_xlat6.x;
					    vs_TEXCOORD4 = min(u_xlat6.x, 1.0);
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat5 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat5;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlat10.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati3].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati3].xy + u_xlat10.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					float u_xlat14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat14 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat2.xyz = vec3(u_xlat14) * u_xlat2.xyz;
					    u_xlat14 = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat3.xyz = vec3(u_xlat14) * in_NORMAL0.xyz;
					    u_xlat2.x = dot(u_xlat3.xyz, u_xlat2.xyz);
					    u_xlat2.x = log2(abs(u_xlat2.x));
					    u_xlat2.x = u_xlat2.x * _FresnelStr;
					    u_xlat2.x = exp2(u_xlat2.x);
					    u_xlat2.x = u_xlat2.x + u_xlat2.x;
					    vs_TEXCOORD4 = min(u_xlat2.x, 1.0);
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat4 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_3_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati1;
					vec4 u_xlat2;
					int u_xlati3;
					float u_xlat4;
					float u_xlat5;
					vec3 u_xlat6;
					vec3 u_xlat8;
					vec2 u_xlat10;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat6.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat6.x = inversesqrt(u_xlat6.x);
					    u_xlat6.xyz = u_xlat6.xxx * in_NORMAL0.xyz;
					    u_xlati3 = unity_StereoEyeIndex;
					    u_xlat8.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].yyy;
					    u_xlat8.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].xxx + u_xlat8.xyz;
					    u_xlat8.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].zzz + u_xlat8.xyz;
					    u_xlat8.xyz = u_xlat8.xyz + unity_WorldToObject[3].xyz;
					    u_xlat8.xyz = u_xlat8.xyz + (-in_POSITION0.xyz);
					    u_xlat4 = dot(u_xlat8.xyz, u_xlat8.xyz);
					    u_xlat4 = inversesqrt(u_xlat4);
					    u_xlat8.xyz = u_xlat8.xyz * vec3(u_xlat4);
					    u_xlat6.x = dot(u_xlat6.xyz, u_xlat8.xyz);
					    u_xlat6.x = log2(abs(u_xlat6.x));
					    u_xlat6.x = u_xlat6.x * _FresnelStr;
					    u_xlat6.x = exp2(u_xlat6.x);
					    u_xlat6.x = u_xlat6.x + u_xlat6.x;
					    vs_TEXCOORD4 = min(u_xlat6.x, 1.0);
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat5 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat5;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlat10.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati3].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati3].xy + u_xlat10.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendAlpha" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					float u_xlat14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat14 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat2.xyz = vec3(u_xlat14) * u_xlat2.xyz;
					    u_xlat14 = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat3.xyz = vec3(u_xlat14) * in_NORMAL0.xyz;
					    u_xlat2.x = dot(u_xlat3.xyz, u_xlat2.xyz);
					    u_xlat2.x = log2(abs(u_xlat2.x));
					    u_xlat2.x = u_xlat2.x * _FresnelStr;
					    u_xlat2.x = exp2(u_xlat2.x);
					    u_xlat2.x = u_xlat2.x + u_xlat2.x;
					    vs_TEXCOORD4 = min(u_xlat2.x, 1.0);
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat4 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_3_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati1;
					vec4 u_xlat2;
					int u_xlati3;
					float u_xlat4;
					float u_xlat5;
					vec3 u_xlat6;
					vec3 u_xlat8;
					vec2 u_xlat10;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat6.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat6.x = inversesqrt(u_xlat6.x);
					    u_xlat6.xyz = u_xlat6.xxx * in_NORMAL0.xyz;
					    u_xlati3 = unity_StereoEyeIndex;
					    u_xlat8.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].yyy;
					    u_xlat8.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].xxx + u_xlat8.xyz;
					    u_xlat8.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].zzz + u_xlat8.xyz;
					    u_xlat8.xyz = u_xlat8.xyz + unity_WorldToObject[3].xyz;
					    u_xlat8.xyz = u_xlat8.xyz + (-in_POSITION0.xyz);
					    u_xlat4 = dot(u_xlat8.xyz, u_xlat8.xyz);
					    u_xlat4 = inversesqrt(u_xlat4);
					    u_xlat8.xyz = u_xlat8.xyz * vec3(u_xlat4);
					    u_xlat6.x = dot(u_xlat6.xyz, u_xlat8.xyz);
					    u_xlat6.x = log2(abs(u_xlat6.x));
					    u_xlat6.x = u_xlat6.x * _FresnelStr;
					    u_xlat6.x = exp2(u_xlat6.x);
					    u_xlat6.x = u_xlat6.x + u_xlat6.x;
					    vs_TEXCOORD4 = min(u_xlat6.x, 1.0);
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat5 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat5;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlat10.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati3].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati3].xy + u_xlat10.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					float u_xlat14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat14 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat2.xyz = vec3(u_xlat14) * u_xlat2.xyz;
					    u_xlat14 = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat3.xyz = vec3(u_xlat14) * in_NORMAL0.xyz;
					    u_xlat2.x = dot(u_xlat3.xyz, u_xlat2.xyz);
					    u_xlat2.x = log2(abs(u_xlat2.x));
					    u_xlat2.x = u_xlat2.x * _FresnelStr;
					    u_xlat2.x = exp2(u_xlat2.x);
					    u_xlat2.x = u_xlat2.x + u_xlat2.x;
					    vs_TEXCOORD4 = min(u_xlat2.x, 1.0);
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat4 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_3_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati1;
					vec4 u_xlat2;
					int u_xlati3;
					float u_xlat4;
					float u_xlat5;
					vec3 u_xlat6;
					vec3 u_xlat8;
					vec2 u_xlat10;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat6.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat6.x = inversesqrt(u_xlat6.x);
					    u_xlat6.xyz = u_xlat6.xxx * in_NORMAL0.xyz;
					    u_xlati3 = unity_StereoEyeIndex;
					    u_xlat8.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].yyy;
					    u_xlat8.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].xxx + u_xlat8.xyz;
					    u_xlat8.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].zzz + u_xlat8.xyz;
					    u_xlat8.xyz = u_xlat8.xyz + unity_WorldToObject[3].xyz;
					    u_xlat8.xyz = u_xlat8.xyz + (-in_POSITION0.xyz);
					    u_xlat4 = dot(u_xlat8.xyz, u_xlat8.xyz);
					    u_xlat4 = inversesqrt(u_xlat4);
					    u_xlat8.xyz = u_xlat8.xyz * vec3(u_xlat4);
					    u_xlat6.x = dot(u_xlat6.xyz, u_xlat8.xyz);
					    u_xlat6.x = log2(abs(u_xlat6.x));
					    u_xlat6.x = u_xlat6.x * _FresnelStr;
					    u_xlat6.x = exp2(u_xlat6.x);
					    u_xlat6.x = u_xlat6.x + u_xlat6.x;
					    vs_TEXCOORD4 = min(u_xlat6.x, 1.0);
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat5 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat5;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlat10.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati3].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati3].xy + u_xlat10.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendAlpha" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					float u_xlat14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat14 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat2.xyz = vec3(u_xlat14) * u_xlat2.xyz;
					    u_xlat14 = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat3.xyz = vec3(u_xlat14) * in_NORMAL0.xyz;
					    u_xlat2.x = dot(u_xlat3.xyz, u_xlat2.xyz);
					    u_xlat2.x = log2(abs(u_xlat2.x));
					    u_xlat2.x = u_xlat2.x * _FresnelStr;
					    u_xlat2.x = exp2(u_xlat2.x);
					    u_xlat2.x = u_xlat2.x + u_xlat2.x;
					    vs_TEXCOORD4 = min(u_xlat2.x, 1.0);
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat4 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_3_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati1;
					vec4 u_xlat2;
					int u_xlati3;
					float u_xlat4;
					float u_xlat5;
					vec3 u_xlat6;
					vec3 u_xlat8;
					vec2 u_xlat10;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat6.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat6.x = inversesqrt(u_xlat6.x);
					    u_xlat6.xyz = u_xlat6.xxx * in_NORMAL0.xyz;
					    u_xlati3 = unity_StereoEyeIndex;
					    u_xlat8.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].yyy;
					    u_xlat8.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].xxx + u_xlat8.xyz;
					    u_xlat8.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].zzz + u_xlat8.xyz;
					    u_xlat8.xyz = u_xlat8.xyz + unity_WorldToObject[3].xyz;
					    u_xlat8.xyz = u_xlat8.xyz + (-in_POSITION0.xyz);
					    u_xlat4 = dot(u_xlat8.xyz, u_xlat8.xyz);
					    u_xlat4 = inversesqrt(u_xlat4);
					    u_xlat8.xyz = u_xlat8.xyz * vec3(u_xlat4);
					    u_xlat6.x = dot(u_xlat6.xyz, u_xlat8.xyz);
					    u_xlat6.x = log2(abs(u_xlat6.x));
					    u_xlat6.x = u_xlat6.x * _FresnelStr;
					    u_xlat6.x = exp2(u_xlat6.x);
					    u_xlat6.x = u_xlat6.x + u_xlat6.x;
					    vs_TEXCOORD4 = min(u_xlat6.x, 1.0);
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat5 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat5;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlat10.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati3].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati3].xy + u_xlat10.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					float u_xlat14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat14 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat2.xyz = vec3(u_xlat14) * u_xlat2.xyz;
					    u_xlat14 = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat3.xyz = vec3(u_xlat14) * in_NORMAL0.xyz;
					    u_xlat2.x = dot(u_xlat3.xyz, u_xlat2.xyz);
					    u_xlat2.x = log2(abs(u_xlat2.x));
					    u_xlat2.x = u_xlat2.x * _FresnelStr;
					    u_xlat2.x = exp2(u_xlat2.x);
					    u_xlat2.x = u_xlat2.x + u_xlat2.x;
					    vs_TEXCOORD4 = min(u_xlat2.x, 1.0);
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat4 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_3_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati1;
					vec4 u_xlat2;
					int u_xlati3;
					float u_xlat4;
					float u_xlat5;
					vec3 u_xlat6;
					vec3 u_xlat8;
					vec2 u_xlat10;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat6.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat6.x = inversesqrt(u_xlat6.x);
					    u_xlat6.xyz = u_xlat6.xxx * in_NORMAL0.xyz;
					    u_xlati3 = unity_StereoEyeIndex;
					    u_xlat8.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].yyy;
					    u_xlat8.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].xxx + u_xlat8.xyz;
					    u_xlat8.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].zzz + u_xlat8.xyz;
					    u_xlat8.xyz = u_xlat8.xyz + unity_WorldToObject[3].xyz;
					    u_xlat8.xyz = u_xlat8.xyz + (-in_POSITION0.xyz);
					    u_xlat4 = dot(u_xlat8.xyz, u_xlat8.xyz);
					    u_xlat4 = inversesqrt(u_xlat4);
					    u_xlat8.xyz = u_xlat8.xyz * vec3(u_xlat4);
					    u_xlat6.x = dot(u_xlat6.xyz, u_xlat8.xyz);
					    u_xlat6.x = log2(abs(u_xlat6.x));
					    u_xlat6.x = u_xlat6.x * _FresnelStr;
					    u_xlat6.x = exp2(u_xlat6.x);
					    u_xlat6.x = u_xlat6.x + u_xlat6.x;
					    vs_TEXCOORD4 = min(u_xlat6.x, 1.0);
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat5 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat5;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlat10.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati3].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati3].xy + u_xlat10.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendAlpha" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    u_xlat2 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat2;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec2 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					float u_xlat3;
					int u_xlati6;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    u_xlat3 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat3;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlati6 = unity_StereoEyeIndex;
					    u_xlat1.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati6].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati6].xy + u_xlat1.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendAlpha" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    u_xlat2 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat2;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec2 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					float u_xlat3;
					int u_xlati6;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    u_xlat3 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat3;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlati6 = unity_StereoEyeIndex;
					    u_xlat1.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati6].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati6].xy + u_xlat1.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendAlpha" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat2 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat2;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec2 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					float u_xlat3;
					int u_xlati6;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat3 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat3;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlati6 = unity_StereoEyeIndex;
					    u_xlat1.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati6].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati6].xy + u_xlat1.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat2 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat2;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec2 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					float u_xlat3;
					int u_xlati6;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat3 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat3;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlati6 = unity_StereoEyeIndex;
					    u_xlat1.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati6].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati6].xy + u_xlat1.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendAlpha" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat2 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat2;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec2 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					float u_xlat3;
					int u_xlati6;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat3 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat3;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlati6 = unity_StereoEyeIndex;
					    u_xlat1.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati6].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati6].xy + u_xlat1.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat2 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat2;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec2 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					float u_xlat3;
					int u_xlati6;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat3 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat3;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlati6 = unity_StereoEyeIndex;
					    u_xlat1.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati6].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati6].xy + u_xlat1.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendAlpha" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat2 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat2;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec2 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					float u_xlat3;
					int u_xlati6;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat3 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat3;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlati6 = unity_StereoEyeIndex;
					    u_xlat1.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati6].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati6].xy + u_xlat1.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat2 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat2;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec2 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					float u_xlat3;
					int u_xlati6;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat3 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat3;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlati6 = unity_StereoEyeIndex;
					    u_xlat1.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati6].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati6].xy + u_xlat1.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendAlpha" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    u_xlat2 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat2;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec2 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					float u_xlat3;
					int u_xlati6;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    u_xlat3 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat3;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlati6 = unity_StereoEyeIndex;
					    u_xlat1.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati6].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati6].xy + u_xlat1.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendAlpha" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    u_xlat2 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat2;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec2 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					float u_xlat3;
					int u_xlati6;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    u_xlat3 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat3;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlati6 = unity_StereoEyeIndex;
					    u_xlat1.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati6].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati6].xy + u_xlat1.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendAlpha" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat2 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat2;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec2 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					float u_xlat3;
					int u_xlati6;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat3 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat3;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlati6 = unity_StereoEyeIndex;
					    u_xlat1.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati6].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati6].xy + u_xlat1.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat2 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat2;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec2 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					float u_xlat3;
					int u_xlati6;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat3 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat3;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlati6 = unity_StereoEyeIndex;
					    u_xlat1.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati6].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati6].xy + u_xlat1.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendAlpha" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat2 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat2;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec2 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					float u_xlat3;
					int u_xlati6;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat3 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat3;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlati6 = unity_StereoEyeIndex;
					    u_xlat1.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati6].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati6].xy + u_xlat1.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat2 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat2;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec2 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					float u_xlat3;
					int u_xlati6;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat3 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat3;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlati6 = unity_StereoEyeIndex;
					    u_xlat1.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati6].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati6].xy + u_xlat1.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendAlpha" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat2 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat2;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec2 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					float u_xlat3;
					int u_xlati6;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat3 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat3;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlati6 = unity_StereoEyeIndex;
					    u_xlat1.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati6].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati6].xy + u_xlat1.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat2 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat2;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec2 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					float u_xlat3;
					int u_xlati6;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat3 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat3;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlati6 = unity_StereoEyeIndex;
					    u_xlat1.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati6].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati6].xy + u_xlat1.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendAlpha" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					float u_xlat9;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat9 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat9 = inversesqrt(u_xlat9);
					    u_xlat2.xyz = vec3(u_xlat9) * u_xlat2.xyz;
					    u_xlat9 = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat9 = inversesqrt(u_xlat9);
					    u_xlat3.xyz = vec3(u_xlat9) * in_NORMAL0.xyz;
					    u_xlat9 = dot(u_xlat3.xyz, u_xlat2.xyz);
					    u_xlat9 = log2(abs(u_xlat9));
					    u_xlat9 = u_xlat9 * _FresnelStr;
					    u_xlat9 = exp2(u_xlat9);
					    u_xlat9 = u_xlat9 + u_xlat9;
					    vs_TEXCOORD4 = min(u_xlat9, 1.0);
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    u_xlat4 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_3_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					vec3 u_xlat5;
					vec2 u_xlat8;
					int u_xlati10;
					float u_xlat15;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat5.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat5.x = inversesqrt(u_xlat5.x);
					    u_xlat5.xyz = u_xlat5.xxx * in_NORMAL0.xyz;
					    u_xlati10 = unity_StereoEyeIndex;
					    u_xlat3.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati10].yyy;
					    u_xlat3.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati10].xxx + u_xlat3.xyz;
					    u_xlat3.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati10].zzz + u_xlat3.xyz;
					    u_xlat3.xyz = u_xlat3.xyz + unity_WorldToObject[3].xyz;
					    u_xlat3.xyz = u_xlat3.xyz + (-in_POSITION0.xyz);
					    u_xlat15 = dot(u_xlat3.xyz, u_xlat3.xyz);
					    u_xlat15 = inversesqrt(u_xlat15);
					    u_xlat3.xyz = vec3(u_xlat15) * u_xlat3.xyz;
					    u_xlat5.x = dot(u_xlat5.xyz, u_xlat3.xyz);
					    u_xlat5.x = log2(abs(u_xlat5.x));
					    u_xlat5.x = u_xlat5.x * _FresnelStr;
					    u_xlat5.x = exp2(u_xlat5.x);
					    u_xlat5.x = u_xlat5.x + u_xlat5.x;
					    vs_TEXCOORD4 = min(u_xlat5.x, 1.0);
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    u_xlat4 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlat8.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati10].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati10].xy + u_xlat8.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendAlpha" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					float u_xlat9;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat9 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat9 = inversesqrt(u_xlat9);
					    u_xlat2.xyz = vec3(u_xlat9) * u_xlat2.xyz;
					    u_xlat9 = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat9 = inversesqrt(u_xlat9);
					    u_xlat3.xyz = vec3(u_xlat9) * in_NORMAL0.xyz;
					    u_xlat9 = dot(u_xlat3.xyz, u_xlat2.xyz);
					    u_xlat9 = log2(abs(u_xlat9));
					    u_xlat9 = u_xlat9 * _FresnelStr;
					    u_xlat9 = exp2(u_xlat9);
					    u_xlat9 = u_xlat9 + u_xlat9;
					    vs_TEXCOORD4 = min(u_xlat9, 1.0);
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    u_xlat4 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_3_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					vec3 u_xlat5;
					vec2 u_xlat8;
					int u_xlati10;
					float u_xlat15;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat5.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat5.x = inversesqrt(u_xlat5.x);
					    u_xlat5.xyz = u_xlat5.xxx * in_NORMAL0.xyz;
					    u_xlati10 = unity_StereoEyeIndex;
					    u_xlat3.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati10].yyy;
					    u_xlat3.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati10].xxx + u_xlat3.xyz;
					    u_xlat3.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati10].zzz + u_xlat3.xyz;
					    u_xlat3.xyz = u_xlat3.xyz + unity_WorldToObject[3].xyz;
					    u_xlat3.xyz = u_xlat3.xyz + (-in_POSITION0.xyz);
					    u_xlat15 = dot(u_xlat3.xyz, u_xlat3.xyz);
					    u_xlat15 = inversesqrt(u_xlat15);
					    u_xlat3.xyz = vec3(u_xlat15) * u_xlat3.xyz;
					    u_xlat5.x = dot(u_xlat5.xyz, u_xlat3.xyz);
					    u_xlat5.x = log2(abs(u_xlat5.x));
					    u_xlat5.x = u_xlat5.x * _FresnelStr;
					    u_xlat5.x = exp2(u_xlat5.x);
					    u_xlat5.x = u_xlat5.x + u_xlat5.x;
					    vs_TEXCOORD4 = min(u_xlat5.x, 1.0);
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    u_xlat4 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlat8.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati10].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati10].xy + u_xlat8.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendAlpha" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					float u_xlat14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat14 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat2.xyz = vec3(u_xlat14) * u_xlat2.xyz;
					    u_xlat14 = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat3.xyz = vec3(u_xlat14) * in_NORMAL0.xyz;
					    u_xlat2.x = dot(u_xlat3.xyz, u_xlat2.xyz);
					    u_xlat2.x = log2(abs(u_xlat2.x));
					    u_xlat2.x = u_xlat2.x * _FresnelStr;
					    u_xlat2.x = exp2(u_xlat2.x);
					    u_xlat2.x = u_xlat2.x + u_xlat2.x;
					    vs_TEXCOORD4 = min(u_xlat2.x, 1.0);
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat4 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_3_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati1;
					vec4 u_xlat2;
					int u_xlati3;
					float u_xlat4;
					float u_xlat5;
					vec3 u_xlat6;
					vec3 u_xlat8;
					vec2 u_xlat10;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat6.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat6.x = inversesqrt(u_xlat6.x);
					    u_xlat6.xyz = u_xlat6.xxx * in_NORMAL0.xyz;
					    u_xlati3 = unity_StereoEyeIndex;
					    u_xlat8.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].yyy;
					    u_xlat8.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].xxx + u_xlat8.xyz;
					    u_xlat8.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].zzz + u_xlat8.xyz;
					    u_xlat8.xyz = u_xlat8.xyz + unity_WorldToObject[3].xyz;
					    u_xlat8.xyz = u_xlat8.xyz + (-in_POSITION0.xyz);
					    u_xlat4 = dot(u_xlat8.xyz, u_xlat8.xyz);
					    u_xlat4 = inversesqrt(u_xlat4);
					    u_xlat8.xyz = u_xlat8.xyz * vec3(u_xlat4);
					    u_xlat6.x = dot(u_xlat6.xyz, u_xlat8.xyz);
					    u_xlat6.x = log2(abs(u_xlat6.x));
					    u_xlat6.x = u_xlat6.x * _FresnelStr;
					    u_xlat6.x = exp2(u_xlat6.x);
					    u_xlat6.x = u_xlat6.x + u_xlat6.x;
					    vs_TEXCOORD4 = min(u_xlat6.x, 1.0);
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat5 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat5;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlat10.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati3].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati3].xy + u_xlat10.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					float u_xlat14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat14 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat2.xyz = vec3(u_xlat14) * u_xlat2.xyz;
					    u_xlat14 = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat3.xyz = vec3(u_xlat14) * in_NORMAL0.xyz;
					    u_xlat2.x = dot(u_xlat3.xyz, u_xlat2.xyz);
					    u_xlat2.x = log2(abs(u_xlat2.x));
					    u_xlat2.x = u_xlat2.x * _FresnelStr;
					    u_xlat2.x = exp2(u_xlat2.x);
					    u_xlat2.x = u_xlat2.x + u_xlat2.x;
					    vs_TEXCOORD4 = min(u_xlat2.x, 1.0);
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat4 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_3_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati1;
					vec4 u_xlat2;
					int u_xlati3;
					float u_xlat4;
					float u_xlat5;
					vec3 u_xlat6;
					vec3 u_xlat8;
					vec2 u_xlat10;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat6.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat6.x = inversesqrt(u_xlat6.x);
					    u_xlat6.xyz = u_xlat6.xxx * in_NORMAL0.xyz;
					    u_xlati3 = unity_StereoEyeIndex;
					    u_xlat8.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].yyy;
					    u_xlat8.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].xxx + u_xlat8.xyz;
					    u_xlat8.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].zzz + u_xlat8.xyz;
					    u_xlat8.xyz = u_xlat8.xyz + unity_WorldToObject[3].xyz;
					    u_xlat8.xyz = u_xlat8.xyz + (-in_POSITION0.xyz);
					    u_xlat4 = dot(u_xlat8.xyz, u_xlat8.xyz);
					    u_xlat4 = inversesqrt(u_xlat4);
					    u_xlat8.xyz = u_xlat8.xyz * vec3(u_xlat4);
					    u_xlat6.x = dot(u_xlat6.xyz, u_xlat8.xyz);
					    u_xlat6.x = log2(abs(u_xlat6.x));
					    u_xlat6.x = u_xlat6.x * _FresnelStr;
					    u_xlat6.x = exp2(u_xlat6.x);
					    u_xlat6.x = u_xlat6.x + u_xlat6.x;
					    vs_TEXCOORD4 = min(u_xlat6.x, 1.0);
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat5 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat5;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlat10.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati3].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati3].xy + u_xlat10.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendAlpha" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					float u_xlat14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat14 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat2.xyz = vec3(u_xlat14) * u_xlat2.xyz;
					    u_xlat14 = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat3.xyz = vec3(u_xlat14) * in_NORMAL0.xyz;
					    u_xlat2.x = dot(u_xlat3.xyz, u_xlat2.xyz);
					    u_xlat2.x = log2(abs(u_xlat2.x));
					    u_xlat2.x = u_xlat2.x * _FresnelStr;
					    u_xlat2.x = exp2(u_xlat2.x);
					    u_xlat2.x = u_xlat2.x + u_xlat2.x;
					    vs_TEXCOORD4 = min(u_xlat2.x, 1.0);
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat4 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_3_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati1;
					vec4 u_xlat2;
					int u_xlati3;
					float u_xlat4;
					float u_xlat5;
					vec3 u_xlat6;
					vec3 u_xlat8;
					vec2 u_xlat10;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat6.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat6.x = inversesqrt(u_xlat6.x);
					    u_xlat6.xyz = u_xlat6.xxx * in_NORMAL0.xyz;
					    u_xlati3 = unity_StereoEyeIndex;
					    u_xlat8.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].yyy;
					    u_xlat8.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].xxx + u_xlat8.xyz;
					    u_xlat8.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].zzz + u_xlat8.xyz;
					    u_xlat8.xyz = u_xlat8.xyz + unity_WorldToObject[3].xyz;
					    u_xlat8.xyz = u_xlat8.xyz + (-in_POSITION0.xyz);
					    u_xlat4 = dot(u_xlat8.xyz, u_xlat8.xyz);
					    u_xlat4 = inversesqrt(u_xlat4);
					    u_xlat8.xyz = u_xlat8.xyz * vec3(u_xlat4);
					    u_xlat6.x = dot(u_xlat6.xyz, u_xlat8.xyz);
					    u_xlat6.x = log2(abs(u_xlat6.x));
					    u_xlat6.x = u_xlat6.x * _FresnelStr;
					    u_xlat6.x = exp2(u_xlat6.x);
					    u_xlat6.x = u_xlat6.x + u_xlat6.x;
					    vs_TEXCOORD4 = min(u_xlat6.x, 1.0);
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat5 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat5;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlat10.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati3].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati3].xy + u_xlat10.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					float u_xlat14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat14 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat2.xyz = vec3(u_xlat14) * u_xlat2.xyz;
					    u_xlat14 = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat3.xyz = vec3(u_xlat14) * in_NORMAL0.xyz;
					    u_xlat2.x = dot(u_xlat3.xyz, u_xlat2.xyz);
					    u_xlat2.x = log2(abs(u_xlat2.x));
					    u_xlat2.x = u_xlat2.x * _FresnelStr;
					    u_xlat2.x = exp2(u_xlat2.x);
					    u_xlat2.x = u_xlat2.x + u_xlat2.x;
					    vs_TEXCOORD4 = min(u_xlat2.x, 1.0);
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat4 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_3_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati1;
					vec4 u_xlat2;
					int u_xlati3;
					float u_xlat4;
					float u_xlat5;
					vec3 u_xlat6;
					vec3 u_xlat8;
					vec2 u_xlat10;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat6.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat6.x = inversesqrt(u_xlat6.x);
					    u_xlat6.xyz = u_xlat6.xxx * in_NORMAL0.xyz;
					    u_xlati3 = unity_StereoEyeIndex;
					    u_xlat8.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].yyy;
					    u_xlat8.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].xxx + u_xlat8.xyz;
					    u_xlat8.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].zzz + u_xlat8.xyz;
					    u_xlat8.xyz = u_xlat8.xyz + unity_WorldToObject[3].xyz;
					    u_xlat8.xyz = u_xlat8.xyz + (-in_POSITION0.xyz);
					    u_xlat4 = dot(u_xlat8.xyz, u_xlat8.xyz);
					    u_xlat4 = inversesqrt(u_xlat4);
					    u_xlat8.xyz = u_xlat8.xyz * vec3(u_xlat4);
					    u_xlat6.x = dot(u_xlat6.xyz, u_xlat8.xyz);
					    u_xlat6.x = log2(abs(u_xlat6.x));
					    u_xlat6.x = u_xlat6.x * _FresnelStr;
					    u_xlat6.x = exp2(u_xlat6.x);
					    u_xlat6.x = u_xlat6.x + u_xlat6.x;
					    vs_TEXCOORD4 = min(u_xlat6.x, 1.0);
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat5 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat5;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlat10.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati3].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati3].xy + u_xlat10.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendAlpha" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					float u_xlat14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat14 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat2.xyz = vec3(u_xlat14) * u_xlat2.xyz;
					    u_xlat14 = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat3.xyz = vec3(u_xlat14) * in_NORMAL0.xyz;
					    u_xlat2.x = dot(u_xlat3.xyz, u_xlat2.xyz);
					    u_xlat2.x = log2(abs(u_xlat2.x));
					    u_xlat2.x = u_xlat2.x * _FresnelStr;
					    u_xlat2.x = exp2(u_xlat2.x);
					    u_xlat2.x = u_xlat2.x + u_xlat2.x;
					    vs_TEXCOORD4 = min(u_xlat2.x, 1.0);
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat4 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_3_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati1;
					vec4 u_xlat2;
					int u_xlati3;
					float u_xlat4;
					float u_xlat5;
					vec3 u_xlat6;
					vec3 u_xlat8;
					vec2 u_xlat10;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat6.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat6.x = inversesqrt(u_xlat6.x);
					    u_xlat6.xyz = u_xlat6.xxx * in_NORMAL0.xyz;
					    u_xlati3 = unity_StereoEyeIndex;
					    u_xlat8.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].yyy;
					    u_xlat8.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].xxx + u_xlat8.xyz;
					    u_xlat8.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].zzz + u_xlat8.xyz;
					    u_xlat8.xyz = u_xlat8.xyz + unity_WorldToObject[3].xyz;
					    u_xlat8.xyz = u_xlat8.xyz + (-in_POSITION0.xyz);
					    u_xlat4 = dot(u_xlat8.xyz, u_xlat8.xyz);
					    u_xlat4 = inversesqrt(u_xlat4);
					    u_xlat8.xyz = u_xlat8.xyz * vec3(u_xlat4);
					    u_xlat6.x = dot(u_xlat6.xyz, u_xlat8.xyz);
					    u_xlat6.x = log2(abs(u_xlat6.x));
					    u_xlat6.x = u_xlat6.x * _FresnelStr;
					    u_xlat6.x = exp2(u_xlat6.x);
					    u_xlat6.x = u_xlat6.x + u_xlat6.x;
					    vs_TEXCOORD4 = min(u_xlat6.x, 1.0);
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat5 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat5;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlat10.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati3].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati3].xy + u_xlat10.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					float u_xlat14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat14 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat2.xyz = vec3(u_xlat14) * u_xlat2.xyz;
					    u_xlat14 = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat3.xyz = vec3(u_xlat14) * in_NORMAL0.xyz;
					    u_xlat2.x = dot(u_xlat3.xyz, u_xlat2.xyz);
					    u_xlat2.x = log2(abs(u_xlat2.x));
					    u_xlat2.x = u_xlat2.x * _FresnelStr;
					    u_xlat2.x = exp2(u_xlat2.x);
					    u_xlat2.x = u_xlat2.x + u_xlat2.x;
					    vs_TEXCOORD4 = min(u_xlat2.x, 1.0);
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat4 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_3_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati1;
					vec4 u_xlat2;
					int u_xlati3;
					float u_xlat4;
					float u_xlat5;
					vec3 u_xlat6;
					vec3 u_xlat8;
					vec2 u_xlat10;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat6.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat6.x = inversesqrt(u_xlat6.x);
					    u_xlat6.xyz = u_xlat6.xxx * in_NORMAL0.xyz;
					    u_xlati3 = unity_StereoEyeIndex;
					    u_xlat8.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].yyy;
					    u_xlat8.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].xxx + u_xlat8.xyz;
					    u_xlat8.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].zzz + u_xlat8.xyz;
					    u_xlat8.xyz = u_xlat8.xyz + unity_WorldToObject[3].xyz;
					    u_xlat8.xyz = u_xlat8.xyz + (-in_POSITION0.xyz);
					    u_xlat4 = dot(u_xlat8.xyz, u_xlat8.xyz);
					    u_xlat4 = inversesqrt(u_xlat4);
					    u_xlat8.xyz = u_xlat8.xyz * vec3(u_xlat4);
					    u_xlat6.x = dot(u_xlat6.xyz, u_xlat8.xyz);
					    u_xlat6.x = log2(abs(u_xlat6.x));
					    u_xlat6.x = u_xlat6.x * _FresnelStr;
					    u_xlat6.x = exp2(u_xlat6.x);
					    u_xlat6.x = u_xlat6.x + u_xlat6.x;
					    vs_TEXCOORD4 = min(u_xlat6.x, 1.0);
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat5 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat5;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlat10.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati3].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati3].xy + u_xlat10.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendAlpha" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					float u_xlat9;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat9 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat9 = inversesqrt(u_xlat9);
					    u_xlat2.xyz = vec3(u_xlat9) * u_xlat2.xyz;
					    u_xlat9 = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat9 = inversesqrt(u_xlat9);
					    u_xlat3.xyz = vec3(u_xlat9) * in_NORMAL0.xyz;
					    u_xlat9 = dot(u_xlat3.xyz, u_xlat2.xyz);
					    u_xlat9 = log2(abs(u_xlat9));
					    u_xlat9 = u_xlat9 * _FresnelStr;
					    u_xlat9 = exp2(u_xlat9);
					    u_xlat9 = u_xlat9 + u_xlat9;
					    vs_TEXCOORD4 = min(u_xlat9, 1.0);
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    u_xlat4 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_3_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					vec3 u_xlat5;
					vec2 u_xlat8;
					int u_xlati10;
					float u_xlat15;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat5.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat5.x = inversesqrt(u_xlat5.x);
					    u_xlat5.xyz = u_xlat5.xxx * in_NORMAL0.xyz;
					    u_xlati10 = unity_StereoEyeIndex;
					    u_xlat3.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati10].yyy;
					    u_xlat3.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati10].xxx + u_xlat3.xyz;
					    u_xlat3.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati10].zzz + u_xlat3.xyz;
					    u_xlat3.xyz = u_xlat3.xyz + unity_WorldToObject[3].xyz;
					    u_xlat3.xyz = u_xlat3.xyz + (-in_POSITION0.xyz);
					    u_xlat15 = dot(u_xlat3.xyz, u_xlat3.xyz);
					    u_xlat15 = inversesqrt(u_xlat15);
					    u_xlat3.xyz = vec3(u_xlat15) * u_xlat3.xyz;
					    u_xlat5.x = dot(u_xlat5.xyz, u_xlat3.xyz);
					    u_xlat5.x = log2(abs(u_xlat5.x));
					    u_xlat5.x = u_xlat5.x * _FresnelStr;
					    u_xlat5.x = exp2(u_xlat5.x);
					    u_xlat5.x = u_xlat5.x + u_xlat5.x;
					    vs_TEXCOORD4 = min(u_xlat5.x, 1.0);
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    u_xlat4 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlat8.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati10].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati10].xy + u_xlat8.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendAlpha" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					float u_xlat9;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat9 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat9 = inversesqrt(u_xlat9);
					    u_xlat2.xyz = vec3(u_xlat9) * u_xlat2.xyz;
					    u_xlat9 = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat9 = inversesqrt(u_xlat9);
					    u_xlat3.xyz = vec3(u_xlat9) * in_NORMAL0.xyz;
					    u_xlat9 = dot(u_xlat3.xyz, u_xlat2.xyz);
					    u_xlat9 = log2(abs(u_xlat9));
					    u_xlat9 = u_xlat9 * _FresnelStr;
					    u_xlat9 = exp2(u_xlat9);
					    u_xlat9 = u_xlat9 + u_xlat9;
					    vs_TEXCOORD4 = min(u_xlat9, 1.0);
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    u_xlat4 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_3_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					vec3 u_xlat5;
					vec2 u_xlat8;
					int u_xlati10;
					float u_xlat15;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat5.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat5.x = inversesqrt(u_xlat5.x);
					    u_xlat5.xyz = u_xlat5.xxx * in_NORMAL0.xyz;
					    u_xlati10 = unity_StereoEyeIndex;
					    u_xlat3.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati10].yyy;
					    u_xlat3.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati10].xxx + u_xlat3.xyz;
					    u_xlat3.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati10].zzz + u_xlat3.xyz;
					    u_xlat3.xyz = u_xlat3.xyz + unity_WorldToObject[3].xyz;
					    u_xlat3.xyz = u_xlat3.xyz + (-in_POSITION0.xyz);
					    u_xlat15 = dot(u_xlat3.xyz, u_xlat3.xyz);
					    u_xlat15 = inversesqrt(u_xlat15);
					    u_xlat3.xyz = vec3(u_xlat15) * u_xlat3.xyz;
					    u_xlat5.x = dot(u_xlat5.xyz, u_xlat3.xyz);
					    u_xlat5.x = log2(abs(u_xlat5.x));
					    u_xlat5.x = u_xlat5.x * _FresnelStr;
					    u_xlat5.x = exp2(u_xlat5.x);
					    u_xlat5.x = u_xlat5.x + u_xlat5.x;
					    vs_TEXCOORD4 = min(u_xlat5.x, 1.0);
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    u_xlat4 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlat8.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati10].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati10].xy + u_xlat8.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendAlpha" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					float u_xlat14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat14 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat2.xyz = vec3(u_xlat14) * u_xlat2.xyz;
					    u_xlat14 = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat3.xyz = vec3(u_xlat14) * in_NORMAL0.xyz;
					    u_xlat2.x = dot(u_xlat3.xyz, u_xlat2.xyz);
					    u_xlat2.x = log2(abs(u_xlat2.x));
					    u_xlat2.x = u_xlat2.x * _FresnelStr;
					    u_xlat2.x = exp2(u_xlat2.x);
					    u_xlat2.x = u_xlat2.x + u_xlat2.x;
					    vs_TEXCOORD4 = min(u_xlat2.x, 1.0);
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat4 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_3_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati1;
					vec4 u_xlat2;
					int u_xlati3;
					float u_xlat4;
					float u_xlat5;
					vec3 u_xlat6;
					vec3 u_xlat8;
					vec2 u_xlat10;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat6.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat6.x = inversesqrt(u_xlat6.x);
					    u_xlat6.xyz = u_xlat6.xxx * in_NORMAL0.xyz;
					    u_xlati3 = unity_StereoEyeIndex;
					    u_xlat8.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].yyy;
					    u_xlat8.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].xxx + u_xlat8.xyz;
					    u_xlat8.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].zzz + u_xlat8.xyz;
					    u_xlat8.xyz = u_xlat8.xyz + unity_WorldToObject[3].xyz;
					    u_xlat8.xyz = u_xlat8.xyz + (-in_POSITION0.xyz);
					    u_xlat4 = dot(u_xlat8.xyz, u_xlat8.xyz);
					    u_xlat4 = inversesqrt(u_xlat4);
					    u_xlat8.xyz = u_xlat8.xyz * vec3(u_xlat4);
					    u_xlat6.x = dot(u_xlat6.xyz, u_xlat8.xyz);
					    u_xlat6.x = log2(abs(u_xlat6.x));
					    u_xlat6.x = u_xlat6.x * _FresnelStr;
					    u_xlat6.x = exp2(u_xlat6.x);
					    u_xlat6.x = u_xlat6.x + u_xlat6.x;
					    vs_TEXCOORD4 = min(u_xlat6.x, 1.0);
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat5 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat5;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlat10.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati3].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati3].xy + u_xlat10.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					float u_xlat14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat14 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat2.xyz = vec3(u_xlat14) * u_xlat2.xyz;
					    u_xlat14 = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat3.xyz = vec3(u_xlat14) * in_NORMAL0.xyz;
					    u_xlat2.x = dot(u_xlat3.xyz, u_xlat2.xyz);
					    u_xlat2.x = log2(abs(u_xlat2.x));
					    u_xlat2.x = u_xlat2.x * _FresnelStr;
					    u_xlat2.x = exp2(u_xlat2.x);
					    u_xlat2.x = u_xlat2.x + u_xlat2.x;
					    vs_TEXCOORD4 = min(u_xlat2.x, 1.0);
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat4 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_3_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati1;
					vec4 u_xlat2;
					int u_xlati3;
					float u_xlat4;
					float u_xlat5;
					vec3 u_xlat6;
					vec3 u_xlat8;
					vec2 u_xlat10;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat6.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat6.x = inversesqrt(u_xlat6.x);
					    u_xlat6.xyz = u_xlat6.xxx * in_NORMAL0.xyz;
					    u_xlati3 = unity_StereoEyeIndex;
					    u_xlat8.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].yyy;
					    u_xlat8.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].xxx + u_xlat8.xyz;
					    u_xlat8.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].zzz + u_xlat8.xyz;
					    u_xlat8.xyz = u_xlat8.xyz + unity_WorldToObject[3].xyz;
					    u_xlat8.xyz = u_xlat8.xyz + (-in_POSITION0.xyz);
					    u_xlat4 = dot(u_xlat8.xyz, u_xlat8.xyz);
					    u_xlat4 = inversesqrt(u_xlat4);
					    u_xlat8.xyz = u_xlat8.xyz * vec3(u_xlat4);
					    u_xlat6.x = dot(u_xlat6.xyz, u_xlat8.xyz);
					    u_xlat6.x = log2(abs(u_xlat6.x));
					    u_xlat6.x = u_xlat6.x * _FresnelStr;
					    u_xlat6.x = exp2(u_xlat6.x);
					    u_xlat6.x = u_xlat6.x + u_xlat6.x;
					    vs_TEXCOORD4 = min(u_xlat6.x, 1.0);
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat5 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat5;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlat10.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati3].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati3].xy + u_xlat10.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendAlpha" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					float u_xlat14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat14 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat2.xyz = vec3(u_xlat14) * u_xlat2.xyz;
					    u_xlat14 = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat3.xyz = vec3(u_xlat14) * in_NORMAL0.xyz;
					    u_xlat2.x = dot(u_xlat3.xyz, u_xlat2.xyz);
					    u_xlat2.x = log2(abs(u_xlat2.x));
					    u_xlat2.x = u_xlat2.x * _FresnelStr;
					    u_xlat2.x = exp2(u_xlat2.x);
					    u_xlat2.x = u_xlat2.x + u_xlat2.x;
					    vs_TEXCOORD4 = min(u_xlat2.x, 1.0);
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat4 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_3_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati1;
					vec4 u_xlat2;
					int u_xlati3;
					float u_xlat4;
					float u_xlat5;
					vec3 u_xlat6;
					vec3 u_xlat8;
					vec2 u_xlat10;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat6.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat6.x = inversesqrt(u_xlat6.x);
					    u_xlat6.xyz = u_xlat6.xxx * in_NORMAL0.xyz;
					    u_xlati3 = unity_StereoEyeIndex;
					    u_xlat8.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].yyy;
					    u_xlat8.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].xxx + u_xlat8.xyz;
					    u_xlat8.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].zzz + u_xlat8.xyz;
					    u_xlat8.xyz = u_xlat8.xyz + unity_WorldToObject[3].xyz;
					    u_xlat8.xyz = u_xlat8.xyz + (-in_POSITION0.xyz);
					    u_xlat4 = dot(u_xlat8.xyz, u_xlat8.xyz);
					    u_xlat4 = inversesqrt(u_xlat4);
					    u_xlat8.xyz = u_xlat8.xyz * vec3(u_xlat4);
					    u_xlat6.x = dot(u_xlat6.xyz, u_xlat8.xyz);
					    u_xlat6.x = log2(abs(u_xlat6.x));
					    u_xlat6.x = u_xlat6.x * _FresnelStr;
					    u_xlat6.x = exp2(u_xlat6.x);
					    u_xlat6.x = u_xlat6.x + u_xlat6.x;
					    vs_TEXCOORD4 = min(u_xlat6.x, 1.0);
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat5 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat5;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlat10.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati3].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati3].xy + u_xlat10.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					float u_xlat14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat14 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat2.xyz = vec3(u_xlat14) * u_xlat2.xyz;
					    u_xlat14 = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat3.xyz = vec3(u_xlat14) * in_NORMAL0.xyz;
					    u_xlat2.x = dot(u_xlat3.xyz, u_xlat2.xyz);
					    u_xlat2.x = log2(abs(u_xlat2.x));
					    u_xlat2.x = u_xlat2.x * _FresnelStr;
					    u_xlat2.x = exp2(u_xlat2.x);
					    u_xlat2.x = u_xlat2.x + u_xlat2.x;
					    vs_TEXCOORD4 = min(u_xlat2.x, 1.0);
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat4 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_3_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati1;
					vec4 u_xlat2;
					int u_xlati3;
					float u_xlat4;
					float u_xlat5;
					vec3 u_xlat6;
					vec3 u_xlat8;
					vec2 u_xlat10;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat6.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat6.x = inversesqrt(u_xlat6.x);
					    u_xlat6.xyz = u_xlat6.xxx * in_NORMAL0.xyz;
					    u_xlati3 = unity_StereoEyeIndex;
					    u_xlat8.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].yyy;
					    u_xlat8.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].xxx + u_xlat8.xyz;
					    u_xlat8.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].zzz + u_xlat8.xyz;
					    u_xlat8.xyz = u_xlat8.xyz + unity_WorldToObject[3].xyz;
					    u_xlat8.xyz = u_xlat8.xyz + (-in_POSITION0.xyz);
					    u_xlat4 = dot(u_xlat8.xyz, u_xlat8.xyz);
					    u_xlat4 = inversesqrt(u_xlat4);
					    u_xlat8.xyz = u_xlat8.xyz * vec3(u_xlat4);
					    u_xlat6.x = dot(u_xlat6.xyz, u_xlat8.xyz);
					    u_xlat6.x = log2(abs(u_xlat6.x));
					    u_xlat6.x = u_xlat6.x * _FresnelStr;
					    u_xlat6.x = exp2(u_xlat6.x);
					    u_xlat6.x = u_xlat6.x + u_xlat6.x;
					    vs_TEXCOORD4 = min(u_xlat6.x, 1.0);
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat5 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat5;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlat10.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati3].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati3].xy + u_xlat10.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendAlpha" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					float u_xlat14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat14 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat2.xyz = vec3(u_xlat14) * u_xlat2.xyz;
					    u_xlat14 = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat3.xyz = vec3(u_xlat14) * in_NORMAL0.xyz;
					    u_xlat2.x = dot(u_xlat3.xyz, u_xlat2.xyz);
					    u_xlat2.x = log2(abs(u_xlat2.x));
					    u_xlat2.x = u_xlat2.x * _FresnelStr;
					    u_xlat2.x = exp2(u_xlat2.x);
					    u_xlat2.x = u_xlat2.x + u_xlat2.x;
					    vs_TEXCOORD4 = min(u_xlat2.x, 1.0);
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat4 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_3_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati1;
					vec4 u_xlat2;
					int u_xlati3;
					float u_xlat4;
					float u_xlat5;
					vec3 u_xlat6;
					vec3 u_xlat8;
					vec2 u_xlat10;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat6.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat6.x = inversesqrt(u_xlat6.x);
					    u_xlat6.xyz = u_xlat6.xxx * in_NORMAL0.xyz;
					    u_xlati3 = unity_StereoEyeIndex;
					    u_xlat8.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].yyy;
					    u_xlat8.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].xxx + u_xlat8.xyz;
					    u_xlat8.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].zzz + u_xlat8.xyz;
					    u_xlat8.xyz = u_xlat8.xyz + unity_WorldToObject[3].xyz;
					    u_xlat8.xyz = u_xlat8.xyz + (-in_POSITION0.xyz);
					    u_xlat4 = dot(u_xlat8.xyz, u_xlat8.xyz);
					    u_xlat4 = inversesqrt(u_xlat4);
					    u_xlat8.xyz = u_xlat8.xyz * vec3(u_xlat4);
					    u_xlat6.x = dot(u_xlat6.xyz, u_xlat8.xyz);
					    u_xlat6.x = log2(abs(u_xlat6.x));
					    u_xlat6.x = u_xlat6.x * _FresnelStr;
					    u_xlat6.x = exp2(u_xlat6.x);
					    u_xlat6.x = u_xlat6.x + u_xlat6.x;
					    vs_TEXCOORD4 = min(u_xlat6.x, 1.0);
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat5 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat5;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlat10.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati3].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati3].xy + u_xlat10.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					float u_xlat14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat14 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat2.xyz = vec3(u_xlat14) * u_xlat2.xyz;
					    u_xlat14 = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat3.xyz = vec3(u_xlat14) * in_NORMAL0.xyz;
					    u_xlat2.x = dot(u_xlat3.xyz, u_xlat2.xyz);
					    u_xlat2.x = log2(abs(u_xlat2.x));
					    u_xlat2.x = u_xlat2.x * _FresnelStr;
					    u_xlat2.x = exp2(u_xlat2.x);
					    u_xlat2.x = u_xlat2.x + u_xlat2.x;
					    vs_TEXCOORD4 = min(u_xlat2.x, 1.0);
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat4 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_3_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati1;
					vec4 u_xlat2;
					int u_xlati3;
					float u_xlat4;
					float u_xlat5;
					vec3 u_xlat6;
					vec3 u_xlat8;
					vec2 u_xlat10;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat6.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat6.x = inversesqrt(u_xlat6.x);
					    u_xlat6.xyz = u_xlat6.xxx * in_NORMAL0.xyz;
					    u_xlati3 = unity_StereoEyeIndex;
					    u_xlat8.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].yyy;
					    u_xlat8.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].xxx + u_xlat8.xyz;
					    u_xlat8.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].zzz + u_xlat8.xyz;
					    u_xlat8.xyz = u_xlat8.xyz + unity_WorldToObject[3].xyz;
					    u_xlat8.xyz = u_xlat8.xyz + (-in_POSITION0.xyz);
					    u_xlat4 = dot(u_xlat8.xyz, u_xlat8.xyz);
					    u_xlat4 = inversesqrt(u_xlat4);
					    u_xlat8.xyz = u_xlat8.xyz * vec3(u_xlat4);
					    u_xlat6.x = dot(u_xlat6.xyz, u_xlat8.xyz);
					    u_xlat6.x = log2(abs(u_xlat6.x));
					    u_xlat6.x = u_xlat6.x * _FresnelStr;
					    u_xlat6.x = exp2(u_xlat6.x);
					    u_xlat6.x = u_xlat6.x + u_xlat6.x;
					    vs_TEXCOORD4 = min(u_xlat6.x, 1.0);
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat5 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat5;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlat10.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati3].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati3].xy + u_xlat10.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendAlpha" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    u_xlat2 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat2;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec2 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					float u_xlat3;
					int u_xlati6;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    u_xlat3 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat3;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlati6 = unity_StereoEyeIndex;
					    u_xlat1.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati6].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati6].xy + u_xlat1.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendAlpha" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    u_xlat2 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat2;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec2 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					float u_xlat3;
					int u_xlati6;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    u_xlat3 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat3;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlati6 = unity_StereoEyeIndex;
					    u_xlat1.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati6].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati6].xy + u_xlat1.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendAlpha" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat2 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat2;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec2 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					float u_xlat3;
					int u_xlati6;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat3 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat3;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlati6 = unity_StereoEyeIndex;
					    u_xlat1.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati6].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati6].xy + u_xlat1.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat2 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat2;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec2 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					float u_xlat3;
					int u_xlati6;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat3 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat3;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlati6 = unity_StereoEyeIndex;
					    u_xlat1.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati6].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati6].xy + u_xlat1.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendAlpha" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat2 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat2;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec2 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					float u_xlat3;
					int u_xlati6;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat3 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat3;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlati6 = unity_StereoEyeIndex;
					    u_xlat1.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati6].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati6].xy + u_xlat1.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat2 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat2;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec2 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					float u_xlat3;
					int u_xlati6;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat3 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat3;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlati6 = unity_StereoEyeIndex;
					    u_xlat1.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati6].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati6].xy + u_xlat1.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendAlpha" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat2 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat2;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec2 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					float u_xlat3;
					int u_xlati6;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat3 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat3;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlati6 = unity_StereoEyeIndex;
					    u_xlat1.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati6].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati6].xy + u_xlat1.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat2 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat2;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec2 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					float u_xlat3;
					int u_xlati6;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat3 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat3;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlati6 = unity_StereoEyeIndex;
					    u_xlat1.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati6].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati6].xy + u_xlat1.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendAlpha" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    u_xlat2 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat2;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec2 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					float u_xlat3;
					int u_xlati6;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    u_xlat3 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat3;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlati6 = unity_StereoEyeIndex;
					    u_xlat1.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati6].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati6].xy + u_xlat1.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendAlpha" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    u_xlat2 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat2;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec2 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					float u_xlat3;
					int u_xlati6;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    u_xlat3 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat3;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlati6 = unity_StereoEyeIndex;
					    u_xlat1.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati6].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati6].xy + u_xlat1.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendAlpha" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat2 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat2;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec2 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					float u_xlat3;
					int u_xlati6;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat3 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat3;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlati6 = unity_StereoEyeIndex;
					    u_xlat1.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati6].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati6].xy + u_xlat1.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat2 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat2;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec2 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					float u_xlat3;
					int u_xlati6;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat3 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat3;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlati6 = unity_StereoEyeIndex;
					    u_xlat1.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati6].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati6].xy + u_xlat1.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendAlpha" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat2 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat2;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec2 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					float u_xlat3;
					int u_xlati6;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat3 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat3;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlati6 = unity_StereoEyeIndex;
					    u_xlat1.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati6].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati6].xy + u_xlat1.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat2 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat2;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec2 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					float u_xlat3;
					int u_xlati6;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat3 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat3;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlati6 = unity_StereoEyeIndex;
					    u_xlat1.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati6].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati6].xy + u_xlat1.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendAlpha" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat2 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat2;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec2 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					float u_xlat3;
					int u_xlati6;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat3 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat3;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlati6 = unity_StereoEyeIndex;
					    u_xlat1.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati6].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati6].xy + u_xlat1.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat2 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat2;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec2 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					float u_xlat3;
					int u_xlati6;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat3 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat3;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlati6 = unity_StereoEyeIndex;
					    u_xlat1.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati6].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati6].xy + u_xlat1.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendAlpha" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					float u_xlat9;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat9 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat9 = inversesqrt(u_xlat9);
					    u_xlat2.xyz = vec3(u_xlat9) * u_xlat2.xyz;
					    u_xlat9 = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat9 = inversesqrt(u_xlat9);
					    u_xlat3.xyz = vec3(u_xlat9) * in_NORMAL0.xyz;
					    u_xlat9 = dot(u_xlat3.xyz, u_xlat2.xyz);
					    u_xlat9 = log2(abs(u_xlat9));
					    u_xlat9 = u_xlat9 * _FresnelStr;
					    u_xlat9 = exp2(u_xlat9);
					    u_xlat9 = u_xlat9 + u_xlat9;
					    vs_TEXCOORD4 = min(u_xlat9, 1.0);
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    u_xlat4 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_3_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					vec3 u_xlat5;
					vec2 u_xlat8;
					int u_xlati10;
					float u_xlat15;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat5.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat5.x = inversesqrt(u_xlat5.x);
					    u_xlat5.xyz = u_xlat5.xxx * in_NORMAL0.xyz;
					    u_xlati10 = unity_StereoEyeIndex;
					    u_xlat3.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati10].yyy;
					    u_xlat3.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati10].xxx + u_xlat3.xyz;
					    u_xlat3.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati10].zzz + u_xlat3.xyz;
					    u_xlat3.xyz = u_xlat3.xyz + unity_WorldToObject[3].xyz;
					    u_xlat3.xyz = u_xlat3.xyz + (-in_POSITION0.xyz);
					    u_xlat15 = dot(u_xlat3.xyz, u_xlat3.xyz);
					    u_xlat15 = inversesqrt(u_xlat15);
					    u_xlat3.xyz = vec3(u_xlat15) * u_xlat3.xyz;
					    u_xlat5.x = dot(u_xlat5.xyz, u_xlat3.xyz);
					    u_xlat5.x = log2(abs(u_xlat5.x));
					    u_xlat5.x = u_xlat5.x * _FresnelStr;
					    u_xlat5.x = exp2(u_xlat5.x);
					    u_xlat5.x = u_xlat5.x + u_xlat5.x;
					    vs_TEXCOORD4 = min(u_xlat5.x, 1.0);
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    u_xlat4 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlat8.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati10].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati10].xy + u_xlat8.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendAlpha" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					float u_xlat9;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat9 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat9 = inversesqrt(u_xlat9);
					    u_xlat2.xyz = vec3(u_xlat9) * u_xlat2.xyz;
					    u_xlat9 = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat9 = inversesqrt(u_xlat9);
					    u_xlat3.xyz = vec3(u_xlat9) * in_NORMAL0.xyz;
					    u_xlat9 = dot(u_xlat3.xyz, u_xlat2.xyz);
					    u_xlat9 = log2(abs(u_xlat9));
					    u_xlat9 = u_xlat9 * _FresnelStr;
					    u_xlat9 = exp2(u_xlat9);
					    u_xlat9 = u_xlat9 + u_xlat9;
					    vs_TEXCOORD4 = min(u_xlat9, 1.0);
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    u_xlat4 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_3_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					vec3 u_xlat5;
					vec2 u_xlat8;
					int u_xlati10;
					float u_xlat15;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat5.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat5.x = inversesqrt(u_xlat5.x);
					    u_xlat5.xyz = u_xlat5.xxx * in_NORMAL0.xyz;
					    u_xlati10 = unity_StereoEyeIndex;
					    u_xlat3.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati10].yyy;
					    u_xlat3.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati10].xxx + u_xlat3.xyz;
					    u_xlat3.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati10].zzz + u_xlat3.xyz;
					    u_xlat3.xyz = u_xlat3.xyz + unity_WorldToObject[3].xyz;
					    u_xlat3.xyz = u_xlat3.xyz + (-in_POSITION0.xyz);
					    u_xlat15 = dot(u_xlat3.xyz, u_xlat3.xyz);
					    u_xlat15 = inversesqrt(u_xlat15);
					    u_xlat3.xyz = vec3(u_xlat15) * u_xlat3.xyz;
					    u_xlat5.x = dot(u_xlat5.xyz, u_xlat3.xyz);
					    u_xlat5.x = log2(abs(u_xlat5.x));
					    u_xlat5.x = u_xlat5.x * _FresnelStr;
					    u_xlat5.x = exp2(u_xlat5.x);
					    u_xlat5.x = u_xlat5.x + u_xlat5.x;
					    vs_TEXCOORD4 = min(u_xlat5.x, 1.0);
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    u_xlat4 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlat8.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati10].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati10].xy + u_xlat8.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendAlpha" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					float u_xlat14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat14 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat2.xyz = vec3(u_xlat14) * u_xlat2.xyz;
					    u_xlat14 = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat3.xyz = vec3(u_xlat14) * in_NORMAL0.xyz;
					    u_xlat2.x = dot(u_xlat3.xyz, u_xlat2.xyz);
					    u_xlat2.x = log2(abs(u_xlat2.x));
					    u_xlat2.x = u_xlat2.x * _FresnelStr;
					    u_xlat2.x = exp2(u_xlat2.x);
					    u_xlat2.x = u_xlat2.x + u_xlat2.x;
					    vs_TEXCOORD4 = min(u_xlat2.x, 1.0);
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat4 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_3_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati1;
					vec4 u_xlat2;
					int u_xlati3;
					float u_xlat4;
					float u_xlat5;
					vec3 u_xlat6;
					vec3 u_xlat8;
					vec2 u_xlat10;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat6.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat6.x = inversesqrt(u_xlat6.x);
					    u_xlat6.xyz = u_xlat6.xxx * in_NORMAL0.xyz;
					    u_xlati3 = unity_StereoEyeIndex;
					    u_xlat8.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].yyy;
					    u_xlat8.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].xxx + u_xlat8.xyz;
					    u_xlat8.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].zzz + u_xlat8.xyz;
					    u_xlat8.xyz = u_xlat8.xyz + unity_WorldToObject[3].xyz;
					    u_xlat8.xyz = u_xlat8.xyz + (-in_POSITION0.xyz);
					    u_xlat4 = dot(u_xlat8.xyz, u_xlat8.xyz);
					    u_xlat4 = inversesqrt(u_xlat4);
					    u_xlat8.xyz = u_xlat8.xyz * vec3(u_xlat4);
					    u_xlat6.x = dot(u_xlat6.xyz, u_xlat8.xyz);
					    u_xlat6.x = log2(abs(u_xlat6.x));
					    u_xlat6.x = u_xlat6.x * _FresnelStr;
					    u_xlat6.x = exp2(u_xlat6.x);
					    u_xlat6.x = u_xlat6.x + u_xlat6.x;
					    vs_TEXCOORD4 = min(u_xlat6.x, 1.0);
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat5 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat5;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlat10.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati3].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati3].xy + u_xlat10.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					float u_xlat14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat14 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat2.xyz = vec3(u_xlat14) * u_xlat2.xyz;
					    u_xlat14 = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat3.xyz = vec3(u_xlat14) * in_NORMAL0.xyz;
					    u_xlat2.x = dot(u_xlat3.xyz, u_xlat2.xyz);
					    u_xlat2.x = log2(abs(u_xlat2.x));
					    u_xlat2.x = u_xlat2.x * _FresnelStr;
					    u_xlat2.x = exp2(u_xlat2.x);
					    u_xlat2.x = u_xlat2.x + u_xlat2.x;
					    vs_TEXCOORD4 = min(u_xlat2.x, 1.0);
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat4 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_3_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati1;
					vec4 u_xlat2;
					int u_xlati3;
					float u_xlat4;
					float u_xlat5;
					vec3 u_xlat6;
					vec3 u_xlat8;
					vec2 u_xlat10;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat6.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat6.x = inversesqrt(u_xlat6.x);
					    u_xlat6.xyz = u_xlat6.xxx * in_NORMAL0.xyz;
					    u_xlati3 = unity_StereoEyeIndex;
					    u_xlat8.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].yyy;
					    u_xlat8.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].xxx + u_xlat8.xyz;
					    u_xlat8.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].zzz + u_xlat8.xyz;
					    u_xlat8.xyz = u_xlat8.xyz + unity_WorldToObject[3].xyz;
					    u_xlat8.xyz = u_xlat8.xyz + (-in_POSITION0.xyz);
					    u_xlat4 = dot(u_xlat8.xyz, u_xlat8.xyz);
					    u_xlat4 = inversesqrt(u_xlat4);
					    u_xlat8.xyz = u_xlat8.xyz * vec3(u_xlat4);
					    u_xlat6.x = dot(u_xlat6.xyz, u_xlat8.xyz);
					    u_xlat6.x = log2(abs(u_xlat6.x));
					    u_xlat6.x = u_xlat6.x * _FresnelStr;
					    u_xlat6.x = exp2(u_xlat6.x);
					    u_xlat6.x = u_xlat6.x + u_xlat6.x;
					    vs_TEXCOORD4 = min(u_xlat6.x, 1.0);
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat5 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat5;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlat10.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati3].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati3].xy + u_xlat10.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendAlpha" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					float u_xlat14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat14 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat2.xyz = vec3(u_xlat14) * u_xlat2.xyz;
					    u_xlat14 = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat3.xyz = vec3(u_xlat14) * in_NORMAL0.xyz;
					    u_xlat2.x = dot(u_xlat3.xyz, u_xlat2.xyz);
					    u_xlat2.x = log2(abs(u_xlat2.x));
					    u_xlat2.x = u_xlat2.x * _FresnelStr;
					    u_xlat2.x = exp2(u_xlat2.x);
					    u_xlat2.x = u_xlat2.x + u_xlat2.x;
					    vs_TEXCOORD4 = min(u_xlat2.x, 1.0);
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat4 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_3_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati1;
					vec4 u_xlat2;
					int u_xlati3;
					float u_xlat4;
					float u_xlat5;
					vec3 u_xlat6;
					vec3 u_xlat8;
					vec2 u_xlat10;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat6.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat6.x = inversesqrt(u_xlat6.x);
					    u_xlat6.xyz = u_xlat6.xxx * in_NORMAL0.xyz;
					    u_xlati3 = unity_StereoEyeIndex;
					    u_xlat8.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].yyy;
					    u_xlat8.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].xxx + u_xlat8.xyz;
					    u_xlat8.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].zzz + u_xlat8.xyz;
					    u_xlat8.xyz = u_xlat8.xyz + unity_WorldToObject[3].xyz;
					    u_xlat8.xyz = u_xlat8.xyz + (-in_POSITION0.xyz);
					    u_xlat4 = dot(u_xlat8.xyz, u_xlat8.xyz);
					    u_xlat4 = inversesqrt(u_xlat4);
					    u_xlat8.xyz = u_xlat8.xyz * vec3(u_xlat4);
					    u_xlat6.x = dot(u_xlat6.xyz, u_xlat8.xyz);
					    u_xlat6.x = log2(abs(u_xlat6.x));
					    u_xlat6.x = u_xlat6.x * _FresnelStr;
					    u_xlat6.x = exp2(u_xlat6.x);
					    u_xlat6.x = u_xlat6.x + u_xlat6.x;
					    vs_TEXCOORD4 = min(u_xlat6.x, 1.0);
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat5 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat5;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlat10.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati3].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati3].xy + u_xlat10.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					float u_xlat14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat14 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat2.xyz = vec3(u_xlat14) * u_xlat2.xyz;
					    u_xlat14 = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat3.xyz = vec3(u_xlat14) * in_NORMAL0.xyz;
					    u_xlat2.x = dot(u_xlat3.xyz, u_xlat2.xyz);
					    u_xlat2.x = log2(abs(u_xlat2.x));
					    u_xlat2.x = u_xlat2.x * _FresnelStr;
					    u_xlat2.x = exp2(u_xlat2.x);
					    u_xlat2.x = u_xlat2.x + u_xlat2.x;
					    vs_TEXCOORD4 = min(u_xlat2.x, 1.0);
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat4 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_3_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati1;
					vec4 u_xlat2;
					int u_xlati3;
					float u_xlat4;
					float u_xlat5;
					vec3 u_xlat6;
					vec3 u_xlat8;
					vec2 u_xlat10;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat6.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat6.x = inversesqrt(u_xlat6.x);
					    u_xlat6.xyz = u_xlat6.xxx * in_NORMAL0.xyz;
					    u_xlati3 = unity_StereoEyeIndex;
					    u_xlat8.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].yyy;
					    u_xlat8.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].xxx + u_xlat8.xyz;
					    u_xlat8.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].zzz + u_xlat8.xyz;
					    u_xlat8.xyz = u_xlat8.xyz + unity_WorldToObject[3].xyz;
					    u_xlat8.xyz = u_xlat8.xyz + (-in_POSITION0.xyz);
					    u_xlat4 = dot(u_xlat8.xyz, u_xlat8.xyz);
					    u_xlat4 = inversesqrt(u_xlat4);
					    u_xlat8.xyz = u_xlat8.xyz * vec3(u_xlat4);
					    u_xlat6.x = dot(u_xlat6.xyz, u_xlat8.xyz);
					    u_xlat6.x = log2(abs(u_xlat6.x));
					    u_xlat6.x = u_xlat6.x * _FresnelStr;
					    u_xlat6.x = exp2(u_xlat6.x);
					    u_xlat6.x = u_xlat6.x + u_xlat6.x;
					    vs_TEXCOORD4 = min(u_xlat6.x, 1.0);
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat5 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat5;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlat10.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati3].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati3].xy + u_xlat10.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendAlpha" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					float u_xlat14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat14 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat2.xyz = vec3(u_xlat14) * u_xlat2.xyz;
					    u_xlat14 = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat3.xyz = vec3(u_xlat14) * in_NORMAL0.xyz;
					    u_xlat2.x = dot(u_xlat3.xyz, u_xlat2.xyz);
					    u_xlat2.x = log2(abs(u_xlat2.x));
					    u_xlat2.x = u_xlat2.x * _FresnelStr;
					    u_xlat2.x = exp2(u_xlat2.x);
					    u_xlat2.x = u_xlat2.x + u_xlat2.x;
					    vs_TEXCOORD4 = min(u_xlat2.x, 1.0);
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat4 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_3_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati1;
					vec4 u_xlat2;
					int u_xlati3;
					float u_xlat4;
					float u_xlat5;
					vec3 u_xlat6;
					vec3 u_xlat8;
					vec2 u_xlat10;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat6.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat6.x = inversesqrt(u_xlat6.x);
					    u_xlat6.xyz = u_xlat6.xxx * in_NORMAL0.xyz;
					    u_xlati3 = unity_StereoEyeIndex;
					    u_xlat8.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].yyy;
					    u_xlat8.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].xxx + u_xlat8.xyz;
					    u_xlat8.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].zzz + u_xlat8.xyz;
					    u_xlat8.xyz = u_xlat8.xyz + unity_WorldToObject[3].xyz;
					    u_xlat8.xyz = u_xlat8.xyz + (-in_POSITION0.xyz);
					    u_xlat4 = dot(u_xlat8.xyz, u_xlat8.xyz);
					    u_xlat4 = inversesqrt(u_xlat4);
					    u_xlat8.xyz = u_xlat8.xyz * vec3(u_xlat4);
					    u_xlat6.x = dot(u_xlat6.xyz, u_xlat8.xyz);
					    u_xlat6.x = log2(abs(u_xlat6.x));
					    u_xlat6.x = u_xlat6.x * _FresnelStr;
					    u_xlat6.x = exp2(u_xlat6.x);
					    u_xlat6.x = u_xlat6.x + u_xlat6.x;
					    vs_TEXCOORD4 = min(u_xlat6.x, 1.0);
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat5 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat5;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlat10.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati3].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati3].xy + u_xlat10.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					float u_xlat14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat14 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat2.xyz = vec3(u_xlat14) * u_xlat2.xyz;
					    u_xlat14 = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat3.xyz = vec3(u_xlat14) * in_NORMAL0.xyz;
					    u_xlat2.x = dot(u_xlat3.xyz, u_xlat2.xyz);
					    u_xlat2.x = log2(abs(u_xlat2.x));
					    u_xlat2.x = u_xlat2.x * _FresnelStr;
					    u_xlat2.x = exp2(u_xlat2.x);
					    u_xlat2.x = u_xlat2.x + u_xlat2.x;
					    vs_TEXCOORD4 = min(u_xlat2.x, 1.0);
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat4 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_3_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati1;
					vec4 u_xlat2;
					int u_xlati3;
					float u_xlat4;
					float u_xlat5;
					vec3 u_xlat6;
					vec3 u_xlat8;
					vec2 u_xlat10;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat6.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat6.x = inversesqrt(u_xlat6.x);
					    u_xlat6.xyz = u_xlat6.xxx * in_NORMAL0.xyz;
					    u_xlati3 = unity_StereoEyeIndex;
					    u_xlat8.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].yyy;
					    u_xlat8.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].xxx + u_xlat8.xyz;
					    u_xlat8.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].zzz + u_xlat8.xyz;
					    u_xlat8.xyz = u_xlat8.xyz + unity_WorldToObject[3].xyz;
					    u_xlat8.xyz = u_xlat8.xyz + (-in_POSITION0.xyz);
					    u_xlat4 = dot(u_xlat8.xyz, u_xlat8.xyz);
					    u_xlat4 = inversesqrt(u_xlat4);
					    u_xlat8.xyz = u_xlat8.xyz * vec3(u_xlat4);
					    u_xlat6.x = dot(u_xlat6.xyz, u_xlat8.xyz);
					    u_xlat6.x = log2(abs(u_xlat6.x));
					    u_xlat6.x = u_xlat6.x * _FresnelStr;
					    u_xlat6.x = exp2(u_xlat6.x);
					    u_xlat6.x = u_xlat6.x + u_xlat6.x;
					    vs_TEXCOORD4 = min(u_xlat6.x, 1.0);
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat5 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat5;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlat10.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati3].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati3].xy + u_xlat10.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendAlpha" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					float u_xlat9;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat9 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat9 = inversesqrt(u_xlat9);
					    u_xlat2.xyz = vec3(u_xlat9) * u_xlat2.xyz;
					    u_xlat9 = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat9 = inversesqrt(u_xlat9);
					    u_xlat3.xyz = vec3(u_xlat9) * in_NORMAL0.xyz;
					    u_xlat9 = dot(u_xlat3.xyz, u_xlat2.xyz);
					    u_xlat9 = log2(abs(u_xlat9));
					    u_xlat9 = u_xlat9 * _FresnelStr;
					    u_xlat9 = exp2(u_xlat9);
					    u_xlat9 = u_xlat9 + u_xlat9;
					    vs_TEXCOORD4 = min(u_xlat9, 1.0);
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    u_xlat4 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_3_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					vec3 u_xlat5;
					vec2 u_xlat8;
					int u_xlati10;
					float u_xlat15;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat5.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat5.x = inversesqrt(u_xlat5.x);
					    u_xlat5.xyz = u_xlat5.xxx * in_NORMAL0.xyz;
					    u_xlati10 = unity_StereoEyeIndex;
					    u_xlat3.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati10].yyy;
					    u_xlat3.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati10].xxx + u_xlat3.xyz;
					    u_xlat3.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati10].zzz + u_xlat3.xyz;
					    u_xlat3.xyz = u_xlat3.xyz + unity_WorldToObject[3].xyz;
					    u_xlat3.xyz = u_xlat3.xyz + (-in_POSITION0.xyz);
					    u_xlat15 = dot(u_xlat3.xyz, u_xlat3.xyz);
					    u_xlat15 = inversesqrt(u_xlat15);
					    u_xlat3.xyz = vec3(u_xlat15) * u_xlat3.xyz;
					    u_xlat5.x = dot(u_xlat5.xyz, u_xlat3.xyz);
					    u_xlat5.x = log2(abs(u_xlat5.x));
					    u_xlat5.x = u_xlat5.x * _FresnelStr;
					    u_xlat5.x = exp2(u_xlat5.x);
					    u_xlat5.x = u_xlat5.x + u_xlat5.x;
					    vs_TEXCOORD4 = min(u_xlat5.x, 1.0);
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    u_xlat4 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlat8.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati10].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati10].xy + u_xlat8.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendAlpha" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					float u_xlat9;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat9 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat9 = inversesqrt(u_xlat9);
					    u_xlat2.xyz = vec3(u_xlat9) * u_xlat2.xyz;
					    u_xlat9 = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat9 = inversesqrt(u_xlat9);
					    u_xlat3.xyz = vec3(u_xlat9) * in_NORMAL0.xyz;
					    u_xlat9 = dot(u_xlat3.xyz, u_xlat2.xyz);
					    u_xlat9 = log2(abs(u_xlat9));
					    u_xlat9 = u_xlat9 * _FresnelStr;
					    u_xlat9 = exp2(u_xlat9);
					    u_xlat9 = u_xlat9 + u_xlat9;
					    vs_TEXCOORD4 = min(u_xlat9, 1.0);
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    u_xlat4 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_3_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					vec3 u_xlat5;
					vec2 u_xlat8;
					int u_xlati10;
					float u_xlat15;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat5.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat5.x = inversesqrt(u_xlat5.x);
					    u_xlat5.xyz = u_xlat5.xxx * in_NORMAL0.xyz;
					    u_xlati10 = unity_StereoEyeIndex;
					    u_xlat3.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati10].yyy;
					    u_xlat3.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati10].xxx + u_xlat3.xyz;
					    u_xlat3.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati10].zzz + u_xlat3.xyz;
					    u_xlat3.xyz = u_xlat3.xyz + unity_WorldToObject[3].xyz;
					    u_xlat3.xyz = u_xlat3.xyz + (-in_POSITION0.xyz);
					    u_xlat15 = dot(u_xlat3.xyz, u_xlat3.xyz);
					    u_xlat15 = inversesqrt(u_xlat15);
					    u_xlat3.xyz = vec3(u_xlat15) * u_xlat3.xyz;
					    u_xlat5.x = dot(u_xlat5.xyz, u_xlat3.xyz);
					    u_xlat5.x = log2(abs(u_xlat5.x));
					    u_xlat5.x = u_xlat5.x * _FresnelStr;
					    u_xlat5.x = exp2(u_xlat5.x);
					    u_xlat5.x = u_xlat5.x + u_xlat5.x;
					    vs_TEXCOORD4 = min(u_xlat5.x, 1.0);
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    u_xlat4 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlat8.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati10].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati10].xy + u_xlat8.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendAlpha" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					float u_xlat14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat14 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat2.xyz = vec3(u_xlat14) * u_xlat2.xyz;
					    u_xlat14 = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat3.xyz = vec3(u_xlat14) * in_NORMAL0.xyz;
					    u_xlat2.x = dot(u_xlat3.xyz, u_xlat2.xyz);
					    u_xlat2.x = log2(abs(u_xlat2.x));
					    u_xlat2.x = u_xlat2.x * _FresnelStr;
					    u_xlat2.x = exp2(u_xlat2.x);
					    u_xlat2.x = u_xlat2.x + u_xlat2.x;
					    vs_TEXCOORD4 = min(u_xlat2.x, 1.0);
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat4 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_3_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati1;
					vec4 u_xlat2;
					int u_xlati3;
					float u_xlat4;
					float u_xlat5;
					vec3 u_xlat6;
					vec3 u_xlat8;
					vec2 u_xlat10;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat6.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat6.x = inversesqrt(u_xlat6.x);
					    u_xlat6.xyz = u_xlat6.xxx * in_NORMAL0.xyz;
					    u_xlati3 = unity_StereoEyeIndex;
					    u_xlat8.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].yyy;
					    u_xlat8.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].xxx + u_xlat8.xyz;
					    u_xlat8.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].zzz + u_xlat8.xyz;
					    u_xlat8.xyz = u_xlat8.xyz + unity_WorldToObject[3].xyz;
					    u_xlat8.xyz = u_xlat8.xyz + (-in_POSITION0.xyz);
					    u_xlat4 = dot(u_xlat8.xyz, u_xlat8.xyz);
					    u_xlat4 = inversesqrt(u_xlat4);
					    u_xlat8.xyz = u_xlat8.xyz * vec3(u_xlat4);
					    u_xlat6.x = dot(u_xlat6.xyz, u_xlat8.xyz);
					    u_xlat6.x = log2(abs(u_xlat6.x));
					    u_xlat6.x = u_xlat6.x * _FresnelStr;
					    u_xlat6.x = exp2(u_xlat6.x);
					    u_xlat6.x = u_xlat6.x + u_xlat6.x;
					    vs_TEXCOORD4 = min(u_xlat6.x, 1.0);
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat5 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat5;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlat10.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati3].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati3].xy + u_xlat10.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					float u_xlat14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat14 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat2.xyz = vec3(u_xlat14) * u_xlat2.xyz;
					    u_xlat14 = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat3.xyz = vec3(u_xlat14) * in_NORMAL0.xyz;
					    u_xlat2.x = dot(u_xlat3.xyz, u_xlat2.xyz);
					    u_xlat2.x = log2(abs(u_xlat2.x));
					    u_xlat2.x = u_xlat2.x * _FresnelStr;
					    u_xlat2.x = exp2(u_xlat2.x);
					    u_xlat2.x = u_xlat2.x + u_xlat2.x;
					    vs_TEXCOORD4 = min(u_xlat2.x, 1.0);
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat4 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_3_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati1;
					vec4 u_xlat2;
					int u_xlati3;
					float u_xlat4;
					float u_xlat5;
					vec3 u_xlat6;
					vec3 u_xlat8;
					vec2 u_xlat10;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat6.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat6.x = inversesqrt(u_xlat6.x);
					    u_xlat6.xyz = u_xlat6.xxx * in_NORMAL0.xyz;
					    u_xlati3 = unity_StereoEyeIndex;
					    u_xlat8.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].yyy;
					    u_xlat8.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].xxx + u_xlat8.xyz;
					    u_xlat8.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].zzz + u_xlat8.xyz;
					    u_xlat8.xyz = u_xlat8.xyz + unity_WorldToObject[3].xyz;
					    u_xlat8.xyz = u_xlat8.xyz + (-in_POSITION0.xyz);
					    u_xlat4 = dot(u_xlat8.xyz, u_xlat8.xyz);
					    u_xlat4 = inversesqrt(u_xlat4);
					    u_xlat8.xyz = u_xlat8.xyz * vec3(u_xlat4);
					    u_xlat6.x = dot(u_xlat6.xyz, u_xlat8.xyz);
					    u_xlat6.x = log2(abs(u_xlat6.x));
					    u_xlat6.x = u_xlat6.x * _FresnelStr;
					    u_xlat6.x = exp2(u_xlat6.x);
					    u_xlat6.x = u_xlat6.x + u_xlat6.x;
					    vs_TEXCOORD4 = min(u_xlat6.x, 1.0);
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat5 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat5;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlat10.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati3].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati3].xy + u_xlat10.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendAlpha" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					float u_xlat14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat14 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat2.xyz = vec3(u_xlat14) * u_xlat2.xyz;
					    u_xlat14 = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat3.xyz = vec3(u_xlat14) * in_NORMAL0.xyz;
					    u_xlat2.x = dot(u_xlat3.xyz, u_xlat2.xyz);
					    u_xlat2.x = log2(abs(u_xlat2.x));
					    u_xlat2.x = u_xlat2.x * _FresnelStr;
					    u_xlat2.x = exp2(u_xlat2.x);
					    u_xlat2.x = u_xlat2.x + u_xlat2.x;
					    vs_TEXCOORD4 = min(u_xlat2.x, 1.0);
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat4 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_3_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati1;
					vec4 u_xlat2;
					int u_xlati3;
					float u_xlat4;
					float u_xlat5;
					vec3 u_xlat6;
					vec3 u_xlat8;
					vec2 u_xlat10;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat6.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat6.x = inversesqrt(u_xlat6.x);
					    u_xlat6.xyz = u_xlat6.xxx * in_NORMAL0.xyz;
					    u_xlati3 = unity_StereoEyeIndex;
					    u_xlat8.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].yyy;
					    u_xlat8.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].xxx + u_xlat8.xyz;
					    u_xlat8.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].zzz + u_xlat8.xyz;
					    u_xlat8.xyz = u_xlat8.xyz + unity_WorldToObject[3].xyz;
					    u_xlat8.xyz = u_xlat8.xyz + (-in_POSITION0.xyz);
					    u_xlat4 = dot(u_xlat8.xyz, u_xlat8.xyz);
					    u_xlat4 = inversesqrt(u_xlat4);
					    u_xlat8.xyz = u_xlat8.xyz * vec3(u_xlat4);
					    u_xlat6.x = dot(u_xlat6.xyz, u_xlat8.xyz);
					    u_xlat6.x = log2(abs(u_xlat6.x));
					    u_xlat6.x = u_xlat6.x * _FresnelStr;
					    u_xlat6.x = exp2(u_xlat6.x);
					    u_xlat6.x = u_xlat6.x + u_xlat6.x;
					    vs_TEXCOORD4 = min(u_xlat6.x, 1.0);
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat5 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat5;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlat10.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati3].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati3].xy + u_xlat10.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					float u_xlat14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat14 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat2.xyz = vec3(u_xlat14) * u_xlat2.xyz;
					    u_xlat14 = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat3.xyz = vec3(u_xlat14) * in_NORMAL0.xyz;
					    u_xlat2.x = dot(u_xlat3.xyz, u_xlat2.xyz);
					    u_xlat2.x = log2(abs(u_xlat2.x));
					    u_xlat2.x = u_xlat2.x * _FresnelStr;
					    u_xlat2.x = exp2(u_xlat2.x);
					    u_xlat2.x = u_xlat2.x + u_xlat2.x;
					    vs_TEXCOORD4 = min(u_xlat2.x, 1.0);
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat4 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_3_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati1;
					vec4 u_xlat2;
					int u_xlati3;
					float u_xlat4;
					float u_xlat5;
					vec3 u_xlat6;
					vec3 u_xlat8;
					vec2 u_xlat10;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat6.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat6.x = inversesqrt(u_xlat6.x);
					    u_xlat6.xyz = u_xlat6.xxx * in_NORMAL0.xyz;
					    u_xlati3 = unity_StereoEyeIndex;
					    u_xlat8.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].yyy;
					    u_xlat8.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].xxx + u_xlat8.xyz;
					    u_xlat8.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].zzz + u_xlat8.xyz;
					    u_xlat8.xyz = u_xlat8.xyz + unity_WorldToObject[3].xyz;
					    u_xlat8.xyz = u_xlat8.xyz + (-in_POSITION0.xyz);
					    u_xlat4 = dot(u_xlat8.xyz, u_xlat8.xyz);
					    u_xlat4 = inversesqrt(u_xlat4);
					    u_xlat8.xyz = u_xlat8.xyz * vec3(u_xlat4);
					    u_xlat6.x = dot(u_xlat6.xyz, u_xlat8.xyz);
					    u_xlat6.x = log2(abs(u_xlat6.x));
					    u_xlat6.x = u_xlat6.x * _FresnelStr;
					    u_xlat6.x = exp2(u_xlat6.x);
					    u_xlat6.x = u_xlat6.x + u_xlat6.x;
					    vs_TEXCOORD4 = min(u_xlat6.x, 1.0);
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat5 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat5;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlat10.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati3].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati3].xy + u_xlat10.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendAlpha" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					float u_xlat14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat14 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat2.xyz = vec3(u_xlat14) * u_xlat2.xyz;
					    u_xlat14 = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat3.xyz = vec3(u_xlat14) * in_NORMAL0.xyz;
					    u_xlat2.x = dot(u_xlat3.xyz, u_xlat2.xyz);
					    u_xlat2.x = log2(abs(u_xlat2.x));
					    u_xlat2.x = u_xlat2.x * _FresnelStr;
					    u_xlat2.x = exp2(u_xlat2.x);
					    u_xlat2.x = u_xlat2.x + u_xlat2.x;
					    vs_TEXCOORD4 = min(u_xlat2.x, 1.0);
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat4 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_3_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati1;
					vec4 u_xlat2;
					int u_xlati3;
					float u_xlat4;
					float u_xlat5;
					vec3 u_xlat6;
					vec3 u_xlat8;
					vec2 u_xlat10;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat6.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat6.x = inversesqrt(u_xlat6.x);
					    u_xlat6.xyz = u_xlat6.xxx * in_NORMAL0.xyz;
					    u_xlati3 = unity_StereoEyeIndex;
					    u_xlat8.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].yyy;
					    u_xlat8.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].xxx + u_xlat8.xyz;
					    u_xlat8.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].zzz + u_xlat8.xyz;
					    u_xlat8.xyz = u_xlat8.xyz + unity_WorldToObject[3].xyz;
					    u_xlat8.xyz = u_xlat8.xyz + (-in_POSITION0.xyz);
					    u_xlat4 = dot(u_xlat8.xyz, u_xlat8.xyz);
					    u_xlat4 = inversesqrt(u_xlat4);
					    u_xlat8.xyz = u_xlat8.xyz * vec3(u_xlat4);
					    u_xlat6.x = dot(u_xlat6.xyz, u_xlat8.xyz);
					    u_xlat6.x = log2(abs(u_xlat6.x));
					    u_xlat6.x = u_xlat6.x * _FresnelStr;
					    u_xlat6.x = exp2(u_xlat6.x);
					    u_xlat6.x = u_xlat6.x + u_xlat6.x;
					    vs_TEXCOORD4 = min(u_xlat6.x, 1.0);
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat5 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat5;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlat10.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati3].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati3].xy + u_xlat10.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					float u_xlat14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat14 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat2.xyz = vec3(u_xlat14) * u_xlat2.xyz;
					    u_xlat14 = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat3.xyz = vec3(u_xlat14) * in_NORMAL0.xyz;
					    u_xlat2.x = dot(u_xlat3.xyz, u_xlat2.xyz);
					    u_xlat2.x = log2(abs(u_xlat2.x));
					    u_xlat2.x = u_xlat2.x * _FresnelStr;
					    u_xlat2.x = exp2(u_xlat2.x);
					    u_xlat2.x = u_xlat2.x + u_xlat2.x;
					    vs_TEXCOORD4 = min(u_xlat2.x, 1.0);
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat4 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_3_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati1;
					vec4 u_xlat2;
					int u_xlati3;
					float u_xlat4;
					float u_xlat5;
					vec3 u_xlat6;
					vec3 u_xlat8;
					vec2 u_xlat10;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat6.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat6.x = inversesqrt(u_xlat6.x);
					    u_xlat6.xyz = u_xlat6.xxx * in_NORMAL0.xyz;
					    u_xlati3 = unity_StereoEyeIndex;
					    u_xlat8.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].yyy;
					    u_xlat8.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].xxx + u_xlat8.xyz;
					    u_xlat8.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].zzz + u_xlat8.xyz;
					    u_xlat8.xyz = u_xlat8.xyz + unity_WorldToObject[3].xyz;
					    u_xlat8.xyz = u_xlat8.xyz + (-in_POSITION0.xyz);
					    u_xlat4 = dot(u_xlat8.xyz, u_xlat8.xyz);
					    u_xlat4 = inversesqrt(u_xlat4);
					    u_xlat8.xyz = u_xlat8.xyz * vec3(u_xlat4);
					    u_xlat6.x = dot(u_xlat6.xyz, u_xlat8.xyz);
					    u_xlat6.x = log2(abs(u_xlat6.x));
					    u_xlat6.x = u_xlat6.x * _FresnelStr;
					    u_xlat6.x = exp2(u_xlat6.x);
					    u_xlat6.x = u_xlat6.x + u_xlat6.x;
					    vs_TEXCOORD4 = min(u_xlat6.x, 1.0);
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat5 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat5;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlat10.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati3].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati3].xy + u_xlat10.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendAlpha" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    u_xlat2 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat2;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec2 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					float u_xlat3;
					int u_xlati6;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    u_xlat3 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat3;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlati6 = unity_StereoEyeIndex;
					    u_xlat1.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati6].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati6].xy + u_xlat1.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendAlpha" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    u_xlat2 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat2;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec2 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					float u_xlat3;
					int u_xlati6;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    u_xlat3 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat3;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlati6 = unity_StereoEyeIndex;
					    u_xlat1.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati6].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati6].xy + u_xlat1.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendAlpha" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat2 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat2;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec2 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					float u_xlat3;
					int u_xlati6;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat3 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat3;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlati6 = unity_StereoEyeIndex;
					    u_xlat1.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati6].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati6].xy + u_xlat1.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat2 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat2;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec2 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					float u_xlat3;
					int u_xlati6;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat3 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat3;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlati6 = unity_StereoEyeIndex;
					    u_xlat1.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati6].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati6].xy + u_xlat1.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendAlpha" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat2 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat2;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec2 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					float u_xlat3;
					int u_xlati6;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat3 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat3;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlati6 = unity_StereoEyeIndex;
					    u_xlat1.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati6].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati6].xy + u_xlat1.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat2 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat2;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec2 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					float u_xlat3;
					int u_xlati6;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat3 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat3;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlati6 = unity_StereoEyeIndex;
					    u_xlat1.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati6].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati6].xy + u_xlat1.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendAlpha" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat2 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat2;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec2 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					float u_xlat3;
					int u_xlati6;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat3 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat3;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlati6 = unity_StereoEyeIndex;
					    u_xlat1.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati6].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati6].xy + u_xlat1.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat2 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat2;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec2 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					float u_xlat3;
					int u_xlati6;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat3 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat3;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlati6 = unity_StereoEyeIndex;
					    u_xlat1.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati6].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati6].xy + u_xlat1.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendAlpha" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    u_xlat2 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat2;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec2 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					float u_xlat3;
					int u_xlati6;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    u_xlat3 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat3;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlati6 = unity_StereoEyeIndex;
					    u_xlat1.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati6].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati6].xy + u_xlat1.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendAlpha" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    u_xlat2 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat2;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec2 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					float u_xlat3;
					int u_xlati6;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    u_xlat3 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat3;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlati6 = unity_StereoEyeIndex;
					    u_xlat1.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati6].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati6].xy + u_xlat1.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendAlpha" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat2 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat2;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec2 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					float u_xlat3;
					int u_xlati6;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat3 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat3;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlati6 = unity_StereoEyeIndex;
					    u_xlat1.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati6].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati6].xy + u_xlat1.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat2 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat2;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec2 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					float u_xlat3;
					int u_xlati6;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat3 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat3;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlati6 = unity_StereoEyeIndex;
					    u_xlat1.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati6].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati6].xy + u_xlat1.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendAlpha" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat2 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat2;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec2 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					float u_xlat3;
					int u_xlati6;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat3 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat3;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlati6 = unity_StereoEyeIndex;
					    u_xlat1.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati6].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati6].xy + u_xlat1.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat2 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat2;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec2 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					float u_xlat3;
					int u_xlati6;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat3 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat3;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlati6 = unity_StereoEyeIndex;
					    u_xlat1.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati6].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati6].xy + u_xlat1.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendAlpha" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat2 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat2;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec2 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					float u_xlat3;
					int u_xlati6;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat3 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat3;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlati6 = unity_StereoEyeIndex;
					    u_xlat1.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati6].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati6].xy + u_xlat1.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat2 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat2;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec2 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					float u_xlat3;
					int u_xlati6;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat3 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat3;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlati6 = unity_StereoEyeIndex;
					    u_xlat1.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati6].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati6].xy + u_xlat1.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendAlpha" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					float u_xlat9;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat9 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat9 = inversesqrt(u_xlat9);
					    u_xlat2.xyz = vec3(u_xlat9) * u_xlat2.xyz;
					    u_xlat9 = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat9 = inversesqrt(u_xlat9);
					    u_xlat3.xyz = vec3(u_xlat9) * in_NORMAL0.xyz;
					    u_xlat9 = dot(u_xlat3.xyz, u_xlat2.xyz);
					    u_xlat9 = log2(abs(u_xlat9));
					    u_xlat9 = u_xlat9 * _FresnelStr;
					    u_xlat9 = exp2(u_xlat9);
					    u_xlat9 = u_xlat9 + u_xlat9;
					    vs_TEXCOORD4 = min(u_xlat9, 1.0);
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    u_xlat4 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_3_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					vec3 u_xlat5;
					vec2 u_xlat8;
					int u_xlati10;
					float u_xlat15;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat5.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat5.x = inversesqrt(u_xlat5.x);
					    u_xlat5.xyz = u_xlat5.xxx * in_NORMAL0.xyz;
					    u_xlati10 = unity_StereoEyeIndex;
					    u_xlat3.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati10].yyy;
					    u_xlat3.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati10].xxx + u_xlat3.xyz;
					    u_xlat3.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati10].zzz + u_xlat3.xyz;
					    u_xlat3.xyz = u_xlat3.xyz + unity_WorldToObject[3].xyz;
					    u_xlat3.xyz = u_xlat3.xyz + (-in_POSITION0.xyz);
					    u_xlat15 = dot(u_xlat3.xyz, u_xlat3.xyz);
					    u_xlat15 = inversesqrt(u_xlat15);
					    u_xlat3.xyz = vec3(u_xlat15) * u_xlat3.xyz;
					    u_xlat5.x = dot(u_xlat5.xyz, u_xlat3.xyz);
					    u_xlat5.x = log2(abs(u_xlat5.x));
					    u_xlat5.x = u_xlat5.x * _FresnelStr;
					    u_xlat5.x = exp2(u_xlat5.x);
					    u_xlat5.x = u_xlat5.x + u_xlat5.x;
					    vs_TEXCOORD4 = min(u_xlat5.x, 1.0);
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    u_xlat4 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlat8.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati10].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati10].xy + u_xlat8.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendAlpha" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					float u_xlat9;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat9 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat9 = inversesqrt(u_xlat9);
					    u_xlat2.xyz = vec3(u_xlat9) * u_xlat2.xyz;
					    u_xlat9 = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat9 = inversesqrt(u_xlat9);
					    u_xlat3.xyz = vec3(u_xlat9) * in_NORMAL0.xyz;
					    u_xlat9 = dot(u_xlat3.xyz, u_xlat2.xyz);
					    u_xlat9 = log2(abs(u_xlat9));
					    u_xlat9 = u_xlat9 * _FresnelStr;
					    u_xlat9 = exp2(u_xlat9);
					    u_xlat9 = u_xlat9 + u_xlat9;
					    vs_TEXCOORD4 = min(u_xlat9, 1.0);
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    u_xlat4 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_3_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					vec3 u_xlat5;
					vec2 u_xlat8;
					int u_xlati10;
					float u_xlat15;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat5.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat5.x = inversesqrt(u_xlat5.x);
					    u_xlat5.xyz = u_xlat5.xxx * in_NORMAL0.xyz;
					    u_xlati10 = unity_StereoEyeIndex;
					    u_xlat3.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati10].yyy;
					    u_xlat3.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati10].xxx + u_xlat3.xyz;
					    u_xlat3.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati10].zzz + u_xlat3.xyz;
					    u_xlat3.xyz = u_xlat3.xyz + unity_WorldToObject[3].xyz;
					    u_xlat3.xyz = u_xlat3.xyz + (-in_POSITION0.xyz);
					    u_xlat15 = dot(u_xlat3.xyz, u_xlat3.xyz);
					    u_xlat15 = inversesqrt(u_xlat15);
					    u_xlat3.xyz = vec3(u_xlat15) * u_xlat3.xyz;
					    u_xlat5.x = dot(u_xlat5.xyz, u_xlat3.xyz);
					    u_xlat5.x = log2(abs(u_xlat5.x));
					    u_xlat5.x = u_xlat5.x * _FresnelStr;
					    u_xlat5.x = exp2(u_xlat5.x);
					    u_xlat5.x = u_xlat5.x + u_xlat5.x;
					    vs_TEXCOORD4 = min(u_xlat5.x, 1.0);
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    u_xlat4 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlat8.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati10].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati10].xy + u_xlat8.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendAlpha" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					float u_xlat14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat14 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat2.xyz = vec3(u_xlat14) * u_xlat2.xyz;
					    u_xlat14 = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat3.xyz = vec3(u_xlat14) * in_NORMAL0.xyz;
					    u_xlat2.x = dot(u_xlat3.xyz, u_xlat2.xyz);
					    u_xlat2.x = log2(abs(u_xlat2.x));
					    u_xlat2.x = u_xlat2.x * _FresnelStr;
					    u_xlat2.x = exp2(u_xlat2.x);
					    u_xlat2.x = u_xlat2.x + u_xlat2.x;
					    vs_TEXCOORD4 = min(u_xlat2.x, 1.0);
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat4 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_3_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati1;
					vec4 u_xlat2;
					int u_xlati3;
					float u_xlat4;
					float u_xlat5;
					vec3 u_xlat6;
					vec3 u_xlat8;
					vec2 u_xlat10;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat6.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat6.x = inversesqrt(u_xlat6.x);
					    u_xlat6.xyz = u_xlat6.xxx * in_NORMAL0.xyz;
					    u_xlati3 = unity_StereoEyeIndex;
					    u_xlat8.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].yyy;
					    u_xlat8.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].xxx + u_xlat8.xyz;
					    u_xlat8.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].zzz + u_xlat8.xyz;
					    u_xlat8.xyz = u_xlat8.xyz + unity_WorldToObject[3].xyz;
					    u_xlat8.xyz = u_xlat8.xyz + (-in_POSITION0.xyz);
					    u_xlat4 = dot(u_xlat8.xyz, u_xlat8.xyz);
					    u_xlat4 = inversesqrt(u_xlat4);
					    u_xlat8.xyz = u_xlat8.xyz * vec3(u_xlat4);
					    u_xlat6.x = dot(u_xlat6.xyz, u_xlat8.xyz);
					    u_xlat6.x = log2(abs(u_xlat6.x));
					    u_xlat6.x = u_xlat6.x * _FresnelStr;
					    u_xlat6.x = exp2(u_xlat6.x);
					    u_xlat6.x = u_xlat6.x + u_xlat6.x;
					    vs_TEXCOORD4 = min(u_xlat6.x, 1.0);
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat5 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat5;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlat10.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati3].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati3].xy + u_xlat10.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					float u_xlat14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat14 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat2.xyz = vec3(u_xlat14) * u_xlat2.xyz;
					    u_xlat14 = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat3.xyz = vec3(u_xlat14) * in_NORMAL0.xyz;
					    u_xlat2.x = dot(u_xlat3.xyz, u_xlat2.xyz);
					    u_xlat2.x = log2(abs(u_xlat2.x));
					    u_xlat2.x = u_xlat2.x * _FresnelStr;
					    u_xlat2.x = exp2(u_xlat2.x);
					    u_xlat2.x = u_xlat2.x + u_xlat2.x;
					    vs_TEXCOORD4 = min(u_xlat2.x, 1.0);
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat4 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_3_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati1;
					vec4 u_xlat2;
					int u_xlati3;
					float u_xlat4;
					float u_xlat5;
					vec3 u_xlat6;
					vec3 u_xlat8;
					vec2 u_xlat10;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat6.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat6.x = inversesqrt(u_xlat6.x);
					    u_xlat6.xyz = u_xlat6.xxx * in_NORMAL0.xyz;
					    u_xlati3 = unity_StereoEyeIndex;
					    u_xlat8.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].yyy;
					    u_xlat8.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].xxx + u_xlat8.xyz;
					    u_xlat8.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].zzz + u_xlat8.xyz;
					    u_xlat8.xyz = u_xlat8.xyz + unity_WorldToObject[3].xyz;
					    u_xlat8.xyz = u_xlat8.xyz + (-in_POSITION0.xyz);
					    u_xlat4 = dot(u_xlat8.xyz, u_xlat8.xyz);
					    u_xlat4 = inversesqrt(u_xlat4);
					    u_xlat8.xyz = u_xlat8.xyz * vec3(u_xlat4);
					    u_xlat6.x = dot(u_xlat6.xyz, u_xlat8.xyz);
					    u_xlat6.x = log2(abs(u_xlat6.x));
					    u_xlat6.x = u_xlat6.x * _FresnelStr;
					    u_xlat6.x = exp2(u_xlat6.x);
					    u_xlat6.x = u_xlat6.x + u_xlat6.x;
					    vs_TEXCOORD4 = min(u_xlat6.x, 1.0);
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat5 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat5;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlat10.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati3].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati3].xy + u_xlat10.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendAlpha" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					float u_xlat14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat14 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat2.xyz = vec3(u_xlat14) * u_xlat2.xyz;
					    u_xlat14 = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat3.xyz = vec3(u_xlat14) * in_NORMAL0.xyz;
					    u_xlat2.x = dot(u_xlat3.xyz, u_xlat2.xyz);
					    u_xlat2.x = log2(abs(u_xlat2.x));
					    u_xlat2.x = u_xlat2.x * _FresnelStr;
					    u_xlat2.x = exp2(u_xlat2.x);
					    u_xlat2.x = u_xlat2.x + u_xlat2.x;
					    vs_TEXCOORD4 = min(u_xlat2.x, 1.0);
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat4 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_3_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati1;
					vec4 u_xlat2;
					int u_xlati3;
					float u_xlat4;
					float u_xlat5;
					vec3 u_xlat6;
					vec3 u_xlat8;
					vec2 u_xlat10;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat6.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat6.x = inversesqrt(u_xlat6.x);
					    u_xlat6.xyz = u_xlat6.xxx * in_NORMAL0.xyz;
					    u_xlati3 = unity_StereoEyeIndex;
					    u_xlat8.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].yyy;
					    u_xlat8.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].xxx + u_xlat8.xyz;
					    u_xlat8.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].zzz + u_xlat8.xyz;
					    u_xlat8.xyz = u_xlat8.xyz + unity_WorldToObject[3].xyz;
					    u_xlat8.xyz = u_xlat8.xyz + (-in_POSITION0.xyz);
					    u_xlat4 = dot(u_xlat8.xyz, u_xlat8.xyz);
					    u_xlat4 = inversesqrt(u_xlat4);
					    u_xlat8.xyz = u_xlat8.xyz * vec3(u_xlat4);
					    u_xlat6.x = dot(u_xlat6.xyz, u_xlat8.xyz);
					    u_xlat6.x = log2(abs(u_xlat6.x));
					    u_xlat6.x = u_xlat6.x * _FresnelStr;
					    u_xlat6.x = exp2(u_xlat6.x);
					    u_xlat6.x = u_xlat6.x + u_xlat6.x;
					    vs_TEXCOORD4 = min(u_xlat6.x, 1.0);
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat5 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat5;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlat10.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati3].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati3].xy + u_xlat10.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					float u_xlat14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat14 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat2.xyz = vec3(u_xlat14) * u_xlat2.xyz;
					    u_xlat14 = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat3.xyz = vec3(u_xlat14) * in_NORMAL0.xyz;
					    u_xlat2.x = dot(u_xlat3.xyz, u_xlat2.xyz);
					    u_xlat2.x = log2(abs(u_xlat2.x));
					    u_xlat2.x = u_xlat2.x * _FresnelStr;
					    u_xlat2.x = exp2(u_xlat2.x);
					    u_xlat2.x = u_xlat2.x + u_xlat2.x;
					    vs_TEXCOORD4 = min(u_xlat2.x, 1.0);
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat4 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_3_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati1;
					vec4 u_xlat2;
					int u_xlati3;
					float u_xlat4;
					float u_xlat5;
					vec3 u_xlat6;
					vec3 u_xlat8;
					vec2 u_xlat10;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat6.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat6.x = inversesqrt(u_xlat6.x);
					    u_xlat6.xyz = u_xlat6.xxx * in_NORMAL0.xyz;
					    u_xlati3 = unity_StereoEyeIndex;
					    u_xlat8.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].yyy;
					    u_xlat8.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].xxx + u_xlat8.xyz;
					    u_xlat8.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].zzz + u_xlat8.xyz;
					    u_xlat8.xyz = u_xlat8.xyz + unity_WorldToObject[3].xyz;
					    u_xlat8.xyz = u_xlat8.xyz + (-in_POSITION0.xyz);
					    u_xlat4 = dot(u_xlat8.xyz, u_xlat8.xyz);
					    u_xlat4 = inversesqrt(u_xlat4);
					    u_xlat8.xyz = u_xlat8.xyz * vec3(u_xlat4);
					    u_xlat6.x = dot(u_xlat6.xyz, u_xlat8.xyz);
					    u_xlat6.x = log2(abs(u_xlat6.x));
					    u_xlat6.x = u_xlat6.x * _FresnelStr;
					    u_xlat6.x = exp2(u_xlat6.x);
					    u_xlat6.x = u_xlat6.x + u_xlat6.x;
					    vs_TEXCOORD4 = min(u_xlat6.x, 1.0);
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat5 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat5;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlat10.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati3].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati3].xy + u_xlat10.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendAlpha" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					float u_xlat14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat14 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat2.xyz = vec3(u_xlat14) * u_xlat2.xyz;
					    u_xlat14 = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat3.xyz = vec3(u_xlat14) * in_NORMAL0.xyz;
					    u_xlat2.x = dot(u_xlat3.xyz, u_xlat2.xyz);
					    u_xlat2.x = log2(abs(u_xlat2.x));
					    u_xlat2.x = u_xlat2.x * _FresnelStr;
					    u_xlat2.x = exp2(u_xlat2.x);
					    u_xlat2.x = u_xlat2.x + u_xlat2.x;
					    vs_TEXCOORD4 = min(u_xlat2.x, 1.0);
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat4 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_3_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati1;
					vec4 u_xlat2;
					int u_xlati3;
					float u_xlat4;
					float u_xlat5;
					vec3 u_xlat6;
					vec3 u_xlat8;
					vec2 u_xlat10;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat6.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat6.x = inversesqrt(u_xlat6.x);
					    u_xlat6.xyz = u_xlat6.xxx * in_NORMAL0.xyz;
					    u_xlati3 = unity_StereoEyeIndex;
					    u_xlat8.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].yyy;
					    u_xlat8.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].xxx + u_xlat8.xyz;
					    u_xlat8.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].zzz + u_xlat8.xyz;
					    u_xlat8.xyz = u_xlat8.xyz + unity_WorldToObject[3].xyz;
					    u_xlat8.xyz = u_xlat8.xyz + (-in_POSITION0.xyz);
					    u_xlat4 = dot(u_xlat8.xyz, u_xlat8.xyz);
					    u_xlat4 = inversesqrt(u_xlat4);
					    u_xlat8.xyz = u_xlat8.xyz * vec3(u_xlat4);
					    u_xlat6.x = dot(u_xlat6.xyz, u_xlat8.xyz);
					    u_xlat6.x = log2(abs(u_xlat6.x));
					    u_xlat6.x = u_xlat6.x * _FresnelStr;
					    u_xlat6.x = exp2(u_xlat6.x);
					    u_xlat6.x = u_xlat6.x + u_xlat6.x;
					    vs_TEXCOORD4 = min(u_xlat6.x, 1.0);
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat5 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat5;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlat10.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati3].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati3].xy + u_xlat10.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					float u_xlat14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat14 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat2.xyz = vec3(u_xlat14) * u_xlat2.xyz;
					    u_xlat14 = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat3.xyz = vec3(u_xlat14) * in_NORMAL0.xyz;
					    u_xlat2.x = dot(u_xlat3.xyz, u_xlat2.xyz);
					    u_xlat2.x = log2(abs(u_xlat2.x));
					    u_xlat2.x = u_xlat2.x * _FresnelStr;
					    u_xlat2.x = exp2(u_xlat2.x);
					    u_xlat2.x = u_xlat2.x + u_xlat2.x;
					    vs_TEXCOORD4 = min(u_xlat2.x, 1.0);
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat4 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_3_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati1;
					vec4 u_xlat2;
					int u_xlati3;
					float u_xlat4;
					float u_xlat5;
					vec3 u_xlat6;
					vec3 u_xlat8;
					vec2 u_xlat10;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat6.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat6.x = inversesqrt(u_xlat6.x);
					    u_xlat6.xyz = u_xlat6.xxx * in_NORMAL0.xyz;
					    u_xlati3 = unity_StereoEyeIndex;
					    u_xlat8.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].yyy;
					    u_xlat8.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].xxx + u_xlat8.xyz;
					    u_xlat8.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].zzz + u_xlat8.xyz;
					    u_xlat8.xyz = u_xlat8.xyz + unity_WorldToObject[3].xyz;
					    u_xlat8.xyz = u_xlat8.xyz + (-in_POSITION0.xyz);
					    u_xlat4 = dot(u_xlat8.xyz, u_xlat8.xyz);
					    u_xlat4 = inversesqrt(u_xlat4);
					    u_xlat8.xyz = u_xlat8.xyz * vec3(u_xlat4);
					    u_xlat6.x = dot(u_xlat6.xyz, u_xlat8.xyz);
					    u_xlat6.x = log2(abs(u_xlat6.x));
					    u_xlat6.x = u_xlat6.x * _FresnelStr;
					    u_xlat6.x = exp2(u_xlat6.x);
					    u_xlat6.x = u_xlat6.x + u_xlat6.x;
					    vs_TEXCOORD4 = min(u_xlat6.x, 1.0);
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat5 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat5;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlat10.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati3].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati3].xy + u_xlat10.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendAlpha" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					float u_xlat9;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat9 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat9 = inversesqrt(u_xlat9);
					    u_xlat2.xyz = vec3(u_xlat9) * u_xlat2.xyz;
					    u_xlat9 = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat9 = inversesqrt(u_xlat9);
					    u_xlat3.xyz = vec3(u_xlat9) * in_NORMAL0.xyz;
					    u_xlat9 = dot(u_xlat3.xyz, u_xlat2.xyz);
					    u_xlat9 = log2(abs(u_xlat9));
					    u_xlat9 = u_xlat9 * _FresnelStr;
					    u_xlat9 = exp2(u_xlat9);
					    u_xlat9 = u_xlat9 + u_xlat9;
					    vs_TEXCOORD4 = min(u_xlat9, 1.0);
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    u_xlat4 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_3_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					vec3 u_xlat5;
					vec2 u_xlat8;
					int u_xlati10;
					float u_xlat15;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat5.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat5.x = inversesqrt(u_xlat5.x);
					    u_xlat5.xyz = u_xlat5.xxx * in_NORMAL0.xyz;
					    u_xlati10 = unity_StereoEyeIndex;
					    u_xlat3.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati10].yyy;
					    u_xlat3.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati10].xxx + u_xlat3.xyz;
					    u_xlat3.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati10].zzz + u_xlat3.xyz;
					    u_xlat3.xyz = u_xlat3.xyz + unity_WorldToObject[3].xyz;
					    u_xlat3.xyz = u_xlat3.xyz + (-in_POSITION0.xyz);
					    u_xlat15 = dot(u_xlat3.xyz, u_xlat3.xyz);
					    u_xlat15 = inversesqrt(u_xlat15);
					    u_xlat3.xyz = vec3(u_xlat15) * u_xlat3.xyz;
					    u_xlat5.x = dot(u_xlat5.xyz, u_xlat3.xyz);
					    u_xlat5.x = log2(abs(u_xlat5.x));
					    u_xlat5.x = u_xlat5.x * _FresnelStr;
					    u_xlat5.x = exp2(u_xlat5.x);
					    u_xlat5.x = u_xlat5.x + u_xlat5.x;
					    vs_TEXCOORD4 = min(u_xlat5.x, 1.0);
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    u_xlat4 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlat8.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati10].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati10].xy + u_xlat8.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendAlpha" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					float u_xlat9;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat9 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat9 = inversesqrt(u_xlat9);
					    u_xlat2.xyz = vec3(u_xlat9) * u_xlat2.xyz;
					    u_xlat9 = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat9 = inversesqrt(u_xlat9);
					    u_xlat3.xyz = vec3(u_xlat9) * in_NORMAL0.xyz;
					    u_xlat9 = dot(u_xlat3.xyz, u_xlat2.xyz);
					    u_xlat9 = log2(abs(u_xlat9));
					    u_xlat9 = u_xlat9 * _FresnelStr;
					    u_xlat9 = exp2(u_xlat9);
					    u_xlat9 = u_xlat9 + u_xlat9;
					    vs_TEXCOORD4 = min(u_xlat9, 1.0);
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    u_xlat4 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_3_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					vec3 u_xlat5;
					vec2 u_xlat8;
					int u_xlati10;
					float u_xlat15;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat5.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat5.x = inversesqrt(u_xlat5.x);
					    u_xlat5.xyz = u_xlat5.xxx * in_NORMAL0.xyz;
					    u_xlati10 = unity_StereoEyeIndex;
					    u_xlat3.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati10].yyy;
					    u_xlat3.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati10].xxx + u_xlat3.xyz;
					    u_xlat3.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati10].zzz + u_xlat3.xyz;
					    u_xlat3.xyz = u_xlat3.xyz + unity_WorldToObject[3].xyz;
					    u_xlat3.xyz = u_xlat3.xyz + (-in_POSITION0.xyz);
					    u_xlat15 = dot(u_xlat3.xyz, u_xlat3.xyz);
					    u_xlat15 = inversesqrt(u_xlat15);
					    u_xlat3.xyz = vec3(u_xlat15) * u_xlat3.xyz;
					    u_xlat5.x = dot(u_xlat5.xyz, u_xlat3.xyz);
					    u_xlat5.x = log2(abs(u_xlat5.x));
					    u_xlat5.x = u_xlat5.x * _FresnelStr;
					    u_xlat5.x = exp2(u_xlat5.x);
					    u_xlat5.x = u_xlat5.x + u_xlat5.x;
					    vs_TEXCOORD4 = min(u_xlat5.x, 1.0);
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    u_xlat4 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlat8.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati10].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati10].xy + u_xlat8.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendAlpha" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					float u_xlat14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat14 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat2.xyz = vec3(u_xlat14) * u_xlat2.xyz;
					    u_xlat14 = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat3.xyz = vec3(u_xlat14) * in_NORMAL0.xyz;
					    u_xlat2.x = dot(u_xlat3.xyz, u_xlat2.xyz);
					    u_xlat2.x = log2(abs(u_xlat2.x));
					    u_xlat2.x = u_xlat2.x * _FresnelStr;
					    u_xlat2.x = exp2(u_xlat2.x);
					    u_xlat2.x = u_xlat2.x + u_xlat2.x;
					    vs_TEXCOORD4 = min(u_xlat2.x, 1.0);
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat4 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_3_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati1;
					vec4 u_xlat2;
					int u_xlati3;
					float u_xlat4;
					float u_xlat5;
					vec3 u_xlat6;
					vec3 u_xlat8;
					vec2 u_xlat10;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat6.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat6.x = inversesqrt(u_xlat6.x);
					    u_xlat6.xyz = u_xlat6.xxx * in_NORMAL0.xyz;
					    u_xlati3 = unity_StereoEyeIndex;
					    u_xlat8.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].yyy;
					    u_xlat8.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].xxx + u_xlat8.xyz;
					    u_xlat8.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].zzz + u_xlat8.xyz;
					    u_xlat8.xyz = u_xlat8.xyz + unity_WorldToObject[3].xyz;
					    u_xlat8.xyz = u_xlat8.xyz + (-in_POSITION0.xyz);
					    u_xlat4 = dot(u_xlat8.xyz, u_xlat8.xyz);
					    u_xlat4 = inversesqrt(u_xlat4);
					    u_xlat8.xyz = u_xlat8.xyz * vec3(u_xlat4);
					    u_xlat6.x = dot(u_xlat6.xyz, u_xlat8.xyz);
					    u_xlat6.x = log2(abs(u_xlat6.x));
					    u_xlat6.x = u_xlat6.x * _FresnelStr;
					    u_xlat6.x = exp2(u_xlat6.x);
					    u_xlat6.x = u_xlat6.x + u_xlat6.x;
					    vs_TEXCOORD4 = min(u_xlat6.x, 1.0);
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat5 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat5;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlat10.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati3].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati3].xy + u_xlat10.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					float u_xlat14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat14 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat2.xyz = vec3(u_xlat14) * u_xlat2.xyz;
					    u_xlat14 = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat3.xyz = vec3(u_xlat14) * in_NORMAL0.xyz;
					    u_xlat2.x = dot(u_xlat3.xyz, u_xlat2.xyz);
					    u_xlat2.x = log2(abs(u_xlat2.x));
					    u_xlat2.x = u_xlat2.x * _FresnelStr;
					    u_xlat2.x = exp2(u_xlat2.x);
					    u_xlat2.x = u_xlat2.x + u_xlat2.x;
					    vs_TEXCOORD4 = min(u_xlat2.x, 1.0);
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat4 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_3_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati1;
					vec4 u_xlat2;
					int u_xlati3;
					float u_xlat4;
					float u_xlat5;
					vec3 u_xlat6;
					vec3 u_xlat8;
					vec2 u_xlat10;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat6.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat6.x = inversesqrt(u_xlat6.x);
					    u_xlat6.xyz = u_xlat6.xxx * in_NORMAL0.xyz;
					    u_xlati3 = unity_StereoEyeIndex;
					    u_xlat8.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].yyy;
					    u_xlat8.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].xxx + u_xlat8.xyz;
					    u_xlat8.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].zzz + u_xlat8.xyz;
					    u_xlat8.xyz = u_xlat8.xyz + unity_WorldToObject[3].xyz;
					    u_xlat8.xyz = u_xlat8.xyz + (-in_POSITION0.xyz);
					    u_xlat4 = dot(u_xlat8.xyz, u_xlat8.xyz);
					    u_xlat4 = inversesqrt(u_xlat4);
					    u_xlat8.xyz = u_xlat8.xyz * vec3(u_xlat4);
					    u_xlat6.x = dot(u_xlat6.xyz, u_xlat8.xyz);
					    u_xlat6.x = log2(abs(u_xlat6.x));
					    u_xlat6.x = u_xlat6.x * _FresnelStr;
					    u_xlat6.x = exp2(u_xlat6.x);
					    u_xlat6.x = u_xlat6.x + u_xlat6.x;
					    vs_TEXCOORD4 = min(u_xlat6.x, 1.0);
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat5 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat5;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlat10.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati3].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati3].xy + u_xlat10.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendAlpha" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					float u_xlat14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat14 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat2.xyz = vec3(u_xlat14) * u_xlat2.xyz;
					    u_xlat14 = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat3.xyz = vec3(u_xlat14) * in_NORMAL0.xyz;
					    u_xlat2.x = dot(u_xlat3.xyz, u_xlat2.xyz);
					    u_xlat2.x = log2(abs(u_xlat2.x));
					    u_xlat2.x = u_xlat2.x * _FresnelStr;
					    u_xlat2.x = exp2(u_xlat2.x);
					    u_xlat2.x = u_xlat2.x + u_xlat2.x;
					    vs_TEXCOORD4 = min(u_xlat2.x, 1.0);
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat4 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_3_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati1;
					vec4 u_xlat2;
					int u_xlati3;
					float u_xlat4;
					float u_xlat5;
					vec3 u_xlat6;
					vec3 u_xlat8;
					vec2 u_xlat10;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat6.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat6.x = inversesqrt(u_xlat6.x);
					    u_xlat6.xyz = u_xlat6.xxx * in_NORMAL0.xyz;
					    u_xlati3 = unity_StereoEyeIndex;
					    u_xlat8.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].yyy;
					    u_xlat8.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].xxx + u_xlat8.xyz;
					    u_xlat8.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].zzz + u_xlat8.xyz;
					    u_xlat8.xyz = u_xlat8.xyz + unity_WorldToObject[3].xyz;
					    u_xlat8.xyz = u_xlat8.xyz + (-in_POSITION0.xyz);
					    u_xlat4 = dot(u_xlat8.xyz, u_xlat8.xyz);
					    u_xlat4 = inversesqrt(u_xlat4);
					    u_xlat8.xyz = u_xlat8.xyz * vec3(u_xlat4);
					    u_xlat6.x = dot(u_xlat6.xyz, u_xlat8.xyz);
					    u_xlat6.x = log2(abs(u_xlat6.x));
					    u_xlat6.x = u_xlat6.x * _FresnelStr;
					    u_xlat6.x = exp2(u_xlat6.x);
					    u_xlat6.x = u_xlat6.x + u_xlat6.x;
					    vs_TEXCOORD4 = min(u_xlat6.x, 1.0);
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat5 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat5;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlat10.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati3].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati3].xy + u_xlat10.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					float u_xlat14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat14 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat2.xyz = vec3(u_xlat14) * u_xlat2.xyz;
					    u_xlat14 = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat3.xyz = vec3(u_xlat14) * in_NORMAL0.xyz;
					    u_xlat2.x = dot(u_xlat3.xyz, u_xlat2.xyz);
					    u_xlat2.x = log2(abs(u_xlat2.x));
					    u_xlat2.x = u_xlat2.x * _FresnelStr;
					    u_xlat2.x = exp2(u_xlat2.x);
					    u_xlat2.x = u_xlat2.x + u_xlat2.x;
					    vs_TEXCOORD4 = min(u_xlat2.x, 1.0);
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat4 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_3_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati1;
					vec4 u_xlat2;
					int u_xlati3;
					float u_xlat4;
					float u_xlat5;
					vec3 u_xlat6;
					vec3 u_xlat8;
					vec2 u_xlat10;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat6.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat6.x = inversesqrt(u_xlat6.x);
					    u_xlat6.xyz = u_xlat6.xxx * in_NORMAL0.xyz;
					    u_xlati3 = unity_StereoEyeIndex;
					    u_xlat8.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].yyy;
					    u_xlat8.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].xxx + u_xlat8.xyz;
					    u_xlat8.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].zzz + u_xlat8.xyz;
					    u_xlat8.xyz = u_xlat8.xyz + unity_WorldToObject[3].xyz;
					    u_xlat8.xyz = u_xlat8.xyz + (-in_POSITION0.xyz);
					    u_xlat4 = dot(u_xlat8.xyz, u_xlat8.xyz);
					    u_xlat4 = inversesqrt(u_xlat4);
					    u_xlat8.xyz = u_xlat8.xyz * vec3(u_xlat4);
					    u_xlat6.x = dot(u_xlat6.xyz, u_xlat8.xyz);
					    u_xlat6.x = log2(abs(u_xlat6.x));
					    u_xlat6.x = u_xlat6.x * _FresnelStr;
					    u_xlat6.x = exp2(u_xlat6.x);
					    u_xlat6.x = u_xlat6.x + u_xlat6.x;
					    vs_TEXCOORD4 = min(u_xlat6.x, 1.0);
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat5 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat5;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlat10.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati3].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati3].xy + u_xlat10.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendAlpha" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					float u_xlat14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat14 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat2.xyz = vec3(u_xlat14) * u_xlat2.xyz;
					    u_xlat14 = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat3.xyz = vec3(u_xlat14) * in_NORMAL0.xyz;
					    u_xlat2.x = dot(u_xlat3.xyz, u_xlat2.xyz);
					    u_xlat2.x = log2(abs(u_xlat2.x));
					    u_xlat2.x = u_xlat2.x * _FresnelStr;
					    u_xlat2.x = exp2(u_xlat2.x);
					    u_xlat2.x = u_xlat2.x + u_xlat2.x;
					    vs_TEXCOORD4 = min(u_xlat2.x, 1.0);
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat4 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_3_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati1;
					vec4 u_xlat2;
					int u_xlati3;
					float u_xlat4;
					float u_xlat5;
					vec3 u_xlat6;
					vec3 u_xlat8;
					vec2 u_xlat10;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat6.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat6.x = inversesqrt(u_xlat6.x);
					    u_xlat6.xyz = u_xlat6.xxx * in_NORMAL0.xyz;
					    u_xlati3 = unity_StereoEyeIndex;
					    u_xlat8.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].yyy;
					    u_xlat8.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].xxx + u_xlat8.xyz;
					    u_xlat8.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].zzz + u_xlat8.xyz;
					    u_xlat8.xyz = u_xlat8.xyz + unity_WorldToObject[3].xyz;
					    u_xlat8.xyz = u_xlat8.xyz + (-in_POSITION0.xyz);
					    u_xlat4 = dot(u_xlat8.xyz, u_xlat8.xyz);
					    u_xlat4 = inversesqrt(u_xlat4);
					    u_xlat8.xyz = u_xlat8.xyz * vec3(u_xlat4);
					    u_xlat6.x = dot(u_xlat6.xyz, u_xlat8.xyz);
					    u_xlat6.x = log2(abs(u_xlat6.x));
					    u_xlat6.x = u_xlat6.x * _FresnelStr;
					    u_xlat6.x = exp2(u_xlat6.x);
					    u_xlat6.x = u_xlat6.x + u_xlat6.x;
					    vs_TEXCOORD4 = min(u_xlat6.x, 1.0);
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat5 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat5;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlat10.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati3].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati3].xy + u_xlat10.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					float u_xlat14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat14 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat2.xyz = vec3(u_xlat14) * u_xlat2.xyz;
					    u_xlat14 = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat3.xyz = vec3(u_xlat14) * in_NORMAL0.xyz;
					    u_xlat2.x = dot(u_xlat3.xyz, u_xlat2.xyz);
					    u_xlat2.x = log2(abs(u_xlat2.x));
					    u_xlat2.x = u_xlat2.x * _FresnelStr;
					    u_xlat2.x = exp2(u_xlat2.x);
					    u_xlat2.x = u_xlat2.x + u_xlat2.x;
					    vs_TEXCOORD4 = min(u_xlat2.x, 1.0);
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat4 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_3_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati1;
					vec4 u_xlat2;
					int u_xlati3;
					float u_xlat4;
					float u_xlat5;
					vec3 u_xlat6;
					vec3 u_xlat8;
					vec2 u_xlat10;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat6.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat6.x = inversesqrt(u_xlat6.x);
					    u_xlat6.xyz = u_xlat6.xxx * in_NORMAL0.xyz;
					    u_xlati3 = unity_StereoEyeIndex;
					    u_xlat8.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].yyy;
					    u_xlat8.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].xxx + u_xlat8.xyz;
					    u_xlat8.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].zzz + u_xlat8.xyz;
					    u_xlat8.xyz = u_xlat8.xyz + unity_WorldToObject[3].xyz;
					    u_xlat8.xyz = u_xlat8.xyz + (-in_POSITION0.xyz);
					    u_xlat4 = dot(u_xlat8.xyz, u_xlat8.xyz);
					    u_xlat4 = inversesqrt(u_xlat4);
					    u_xlat8.xyz = u_xlat8.xyz * vec3(u_xlat4);
					    u_xlat6.x = dot(u_xlat6.xyz, u_xlat8.xyz);
					    u_xlat6.x = log2(abs(u_xlat6.x));
					    u_xlat6.x = u_xlat6.x * _FresnelStr;
					    u_xlat6.x = exp2(u_xlat6.x);
					    u_xlat6.x = u_xlat6.x + u_xlat6.x;
					    vs_TEXCOORD4 = min(u_xlat6.x, 1.0);
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat5 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat5;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlat10.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati3].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati3].xy + u_xlat10.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendAlpha" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    u_xlat2 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat2;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec2 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					float u_xlat3;
					int u_xlati6;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    u_xlat3 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat3;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlati6 = unity_StereoEyeIndex;
					    u_xlat1.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati6].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati6].xy + u_xlat1.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendAlpha" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    u_xlat2 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat2;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec2 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					float u_xlat3;
					int u_xlati6;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    u_xlat3 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat3;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlati6 = unity_StereoEyeIndex;
					    u_xlat1.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati6].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati6].xy + u_xlat1.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendAlpha" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat2 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat2;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec2 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					float u_xlat3;
					int u_xlati6;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat3 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat3;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlati6 = unity_StereoEyeIndex;
					    u_xlat1.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati6].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati6].xy + u_xlat1.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat2 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat2;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec2 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					float u_xlat3;
					int u_xlati6;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat3 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat3;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlati6 = unity_StereoEyeIndex;
					    u_xlat1.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati6].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati6].xy + u_xlat1.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendAlpha" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat2 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat2;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec2 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					float u_xlat3;
					int u_xlati6;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat3 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat3;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlati6 = unity_StereoEyeIndex;
					    u_xlat1.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati6].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati6].xy + u_xlat1.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat2 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat2;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec2 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					float u_xlat3;
					int u_xlati6;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat3 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat3;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlati6 = unity_StereoEyeIndex;
					    u_xlat1.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati6].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati6].xy + u_xlat1.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendAlpha" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat2 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat2;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec2 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					float u_xlat3;
					int u_xlati6;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat3 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat3;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlati6 = unity_StereoEyeIndex;
					    u_xlat1.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati6].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati6].xy + u_xlat1.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat2 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat2;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec2 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					float u_xlat3;
					int u_xlati6;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat3 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat3;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlati6 = unity_StereoEyeIndex;
					    u_xlat1.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati6].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati6].xy + u_xlat1.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendAlpha" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    u_xlat2 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat2;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec2 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					float u_xlat3;
					int u_xlati6;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    u_xlat3 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat3;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlati6 = unity_StereoEyeIndex;
					    u_xlat1.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati6].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati6].xy + u_xlat1.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendAlpha" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    u_xlat2 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat2;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec2 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					float u_xlat3;
					int u_xlati6;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    u_xlat3 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat3;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlati6 = unity_StereoEyeIndex;
					    u_xlat1.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati6].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati6].xy + u_xlat1.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendAlpha" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat2 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat2;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec2 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					float u_xlat3;
					int u_xlati6;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat3 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat3;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlati6 = unity_StereoEyeIndex;
					    u_xlat1.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati6].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati6].xy + u_xlat1.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat2 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat2;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec2 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					float u_xlat3;
					int u_xlati6;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat3 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat3;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlati6 = unity_StereoEyeIndex;
					    u_xlat1.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati6].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati6].xy + u_xlat1.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendAlpha" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat2 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat2;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec2 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					float u_xlat3;
					int u_xlati6;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat3 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat3;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlati6 = unity_StereoEyeIndex;
					    u_xlat1.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati6].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati6].xy + u_xlat1.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat2 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat2;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec2 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					float u_xlat3;
					int u_xlati6;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat3 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat3;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlati6 = unity_StereoEyeIndex;
					    u_xlat1.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati6].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati6].xy + u_xlat1.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendAlpha" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat2 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat2;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec2 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					float u_xlat3;
					int u_xlati6;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat3 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat3;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlati6 = unity_StereoEyeIndex;
					    u_xlat1.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati6].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati6].xy + u_xlat1.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat2 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat2;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec2 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					float u_xlat3;
					int u_xlati6;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat3 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat3;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlati6 = unity_StereoEyeIndex;
					    u_xlat1.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati6].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati6].xy + u_xlat1.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendAlpha" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					float u_xlat9;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat9 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat9 = inversesqrt(u_xlat9);
					    u_xlat2.xyz = vec3(u_xlat9) * u_xlat2.xyz;
					    u_xlat9 = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat9 = inversesqrt(u_xlat9);
					    u_xlat3.xyz = vec3(u_xlat9) * in_NORMAL0.xyz;
					    u_xlat9 = dot(u_xlat3.xyz, u_xlat2.xyz);
					    u_xlat9 = log2(abs(u_xlat9));
					    u_xlat9 = u_xlat9 * _FresnelStr;
					    u_xlat9 = exp2(u_xlat9);
					    u_xlat9 = u_xlat9 + u_xlat9;
					    vs_TEXCOORD4 = min(u_xlat9, 1.0);
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    u_xlat4 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_3_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					vec3 u_xlat5;
					vec2 u_xlat8;
					int u_xlati10;
					float u_xlat15;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat5.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat5.x = inversesqrt(u_xlat5.x);
					    u_xlat5.xyz = u_xlat5.xxx * in_NORMAL0.xyz;
					    u_xlati10 = unity_StereoEyeIndex;
					    u_xlat3.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati10].yyy;
					    u_xlat3.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati10].xxx + u_xlat3.xyz;
					    u_xlat3.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati10].zzz + u_xlat3.xyz;
					    u_xlat3.xyz = u_xlat3.xyz + unity_WorldToObject[3].xyz;
					    u_xlat3.xyz = u_xlat3.xyz + (-in_POSITION0.xyz);
					    u_xlat15 = dot(u_xlat3.xyz, u_xlat3.xyz);
					    u_xlat15 = inversesqrt(u_xlat15);
					    u_xlat3.xyz = vec3(u_xlat15) * u_xlat3.xyz;
					    u_xlat5.x = dot(u_xlat5.xyz, u_xlat3.xyz);
					    u_xlat5.x = log2(abs(u_xlat5.x));
					    u_xlat5.x = u_xlat5.x * _FresnelStr;
					    u_xlat5.x = exp2(u_xlat5.x);
					    u_xlat5.x = u_xlat5.x + u_xlat5.x;
					    vs_TEXCOORD4 = min(u_xlat5.x, 1.0);
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    u_xlat4 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlat8.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati10].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati10].xy + u_xlat8.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendAlpha" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					float u_xlat9;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat9 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat9 = inversesqrt(u_xlat9);
					    u_xlat2.xyz = vec3(u_xlat9) * u_xlat2.xyz;
					    u_xlat9 = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat9 = inversesqrt(u_xlat9);
					    u_xlat3.xyz = vec3(u_xlat9) * in_NORMAL0.xyz;
					    u_xlat9 = dot(u_xlat3.xyz, u_xlat2.xyz);
					    u_xlat9 = log2(abs(u_xlat9));
					    u_xlat9 = u_xlat9 * _FresnelStr;
					    u_xlat9 = exp2(u_xlat9);
					    u_xlat9 = u_xlat9 + u_xlat9;
					    vs_TEXCOORD4 = min(u_xlat9, 1.0);
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    u_xlat4 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_3_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					vec3 u_xlat5;
					vec2 u_xlat8;
					int u_xlati10;
					float u_xlat15;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat5.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat5.x = inversesqrt(u_xlat5.x);
					    u_xlat5.xyz = u_xlat5.xxx * in_NORMAL0.xyz;
					    u_xlati10 = unity_StereoEyeIndex;
					    u_xlat3.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati10].yyy;
					    u_xlat3.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati10].xxx + u_xlat3.xyz;
					    u_xlat3.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati10].zzz + u_xlat3.xyz;
					    u_xlat3.xyz = u_xlat3.xyz + unity_WorldToObject[3].xyz;
					    u_xlat3.xyz = u_xlat3.xyz + (-in_POSITION0.xyz);
					    u_xlat15 = dot(u_xlat3.xyz, u_xlat3.xyz);
					    u_xlat15 = inversesqrt(u_xlat15);
					    u_xlat3.xyz = vec3(u_xlat15) * u_xlat3.xyz;
					    u_xlat5.x = dot(u_xlat5.xyz, u_xlat3.xyz);
					    u_xlat5.x = log2(abs(u_xlat5.x));
					    u_xlat5.x = u_xlat5.x * _FresnelStr;
					    u_xlat5.x = exp2(u_xlat5.x);
					    u_xlat5.x = u_xlat5.x + u_xlat5.x;
					    vs_TEXCOORD4 = min(u_xlat5.x, 1.0);
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    u_xlat4 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlat8.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati10].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati10].xy + u_xlat8.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendAlpha" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					float u_xlat14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat14 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat2.xyz = vec3(u_xlat14) * u_xlat2.xyz;
					    u_xlat14 = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat3.xyz = vec3(u_xlat14) * in_NORMAL0.xyz;
					    u_xlat2.x = dot(u_xlat3.xyz, u_xlat2.xyz);
					    u_xlat2.x = log2(abs(u_xlat2.x));
					    u_xlat2.x = u_xlat2.x * _FresnelStr;
					    u_xlat2.x = exp2(u_xlat2.x);
					    u_xlat2.x = u_xlat2.x + u_xlat2.x;
					    vs_TEXCOORD4 = min(u_xlat2.x, 1.0);
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat4 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_3_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati1;
					vec4 u_xlat2;
					int u_xlati3;
					float u_xlat4;
					float u_xlat5;
					vec3 u_xlat6;
					vec3 u_xlat8;
					vec2 u_xlat10;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat6.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat6.x = inversesqrt(u_xlat6.x);
					    u_xlat6.xyz = u_xlat6.xxx * in_NORMAL0.xyz;
					    u_xlati3 = unity_StereoEyeIndex;
					    u_xlat8.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].yyy;
					    u_xlat8.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].xxx + u_xlat8.xyz;
					    u_xlat8.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].zzz + u_xlat8.xyz;
					    u_xlat8.xyz = u_xlat8.xyz + unity_WorldToObject[3].xyz;
					    u_xlat8.xyz = u_xlat8.xyz + (-in_POSITION0.xyz);
					    u_xlat4 = dot(u_xlat8.xyz, u_xlat8.xyz);
					    u_xlat4 = inversesqrt(u_xlat4);
					    u_xlat8.xyz = u_xlat8.xyz * vec3(u_xlat4);
					    u_xlat6.x = dot(u_xlat6.xyz, u_xlat8.xyz);
					    u_xlat6.x = log2(abs(u_xlat6.x));
					    u_xlat6.x = u_xlat6.x * _FresnelStr;
					    u_xlat6.x = exp2(u_xlat6.x);
					    u_xlat6.x = u_xlat6.x + u_xlat6.x;
					    vs_TEXCOORD4 = min(u_xlat6.x, 1.0);
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat5 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat5;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlat10.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati3].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati3].xy + u_xlat10.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					float u_xlat14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat14 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat2.xyz = vec3(u_xlat14) * u_xlat2.xyz;
					    u_xlat14 = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat3.xyz = vec3(u_xlat14) * in_NORMAL0.xyz;
					    u_xlat2.x = dot(u_xlat3.xyz, u_xlat2.xyz);
					    u_xlat2.x = log2(abs(u_xlat2.x));
					    u_xlat2.x = u_xlat2.x * _FresnelStr;
					    u_xlat2.x = exp2(u_xlat2.x);
					    u_xlat2.x = u_xlat2.x + u_xlat2.x;
					    vs_TEXCOORD4 = min(u_xlat2.x, 1.0);
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat4 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_3_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati1;
					vec4 u_xlat2;
					int u_xlati3;
					float u_xlat4;
					float u_xlat5;
					vec3 u_xlat6;
					vec3 u_xlat8;
					vec2 u_xlat10;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat6.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat6.x = inversesqrt(u_xlat6.x);
					    u_xlat6.xyz = u_xlat6.xxx * in_NORMAL0.xyz;
					    u_xlati3 = unity_StereoEyeIndex;
					    u_xlat8.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].yyy;
					    u_xlat8.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].xxx + u_xlat8.xyz;
					    u_xlat8.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].zzz + u_xlat8.xyz;
					    u_xlat8.xyz = u_xlat8.xyz + unity_WorldToObject[3].xyz;
					    u_xlat8.xyz = u_xlat8.xyz + (-in_POSITION0.xyz);
					    u_xlat4 = dot(u_xlat8.xyz, u_xlat8.xyz);
					    u_xlat4 = inversesqrt(u_xlat4);
					    u_xlat8.xyz = u_xlat8.xyz * vec3(u_xlat4);
					    u_xlat6.x = dot(u_xlat6.xyz, u_xlat8.xyz);
					    u_xlat6.x = log2(abs(u_xlat6.x));
					    u_xlat6.x = u_xlat6.x * _FresnelStr;
					    u_xlat6.x = exp2(u_xlat6.x);
					    u_xlat6.x = u_xlat6.x + u_xlat6.x;
					    vs_TEXCOORD4 = min(u_xlat6.x, 1.0);
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat5 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat5;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlat10.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati3].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati3].xy + u_xlat10.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendAlpha" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					float u_xlat14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat14 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat2.xyz = vec3(u_xlat14) * u_xlat2.xyz;
					    u_xlat14 = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat3.xyz = vec3(u_xlat14) * in_NORMAL0.xyz;
					    u_xlat2.x = dot(u_xlat3.xyz, u_xlat2.xyz);
					    u_xlat2.x = log2(abs(u_xlat2.x));
					    u_xlat2.x = u_xlat2.x * _FresnelStr;
					    u_xlat2.x = exp2(u_xlat2.x);
					    u_xlat2.x = u_xlat2.x + u_xlat2.x;
					    vs_TEXCOORD4 = min(u_xlat2.x, 1.0);
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat4 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_3_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati1;
					vec4 u_xlat2;
					int u_xlati3;
					float u_xlat4;
					float u_xlat5;
					vec3 u_xlat6;
					vec3 u_xlat8;
					vec2 u_xlat10;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat6.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat6.x = inversesqrt(u_xlat6.x);
					    u_xlat6.xyz = u_xlat6.xxx * in_NORMAL0.xyz;
					    u_xlati3 = unity_StereoEyeIndex;
					    u_xlat8.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].yyy;
					    u_xlat8.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].xxx + u_xlat8.xyz;
					    u_xlat8.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].zzz + u_xlat8.xyz;
					    u_xlat8.xyz = u_xlat8.xyz + unity_WorldToObject[3].xyz;
					    u_xlat8.xyz = u_xlat8.xyz + (-in_POSITION0.xyz);
					    u_xlat4 = dot(u_xlat8.xyz, u_xlat8.xyz);
					    u_xlat4 = inversesqrt(u_xlat4);
					    u_xlat8.xyz = u_xlat8.xyz * vec3(u_xlat4);
					    u_xlat6.x = dot(u_xlat6.xyz, u_xlat8.xyz);
					    u_xlat6.x = log2(abs(u_xlat6.x));
					    u_xlat6.x = u_xlat6.x * _FresnelStr;
					    u_xlat6.x = exp2(u_xlat6.x);
					    u_xlat6.x = u_xlat6.x + u_xlat6.x;
					    vs_TEXCOORD4 = min(u_xlat6.x, 1.0);
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat5 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat5;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlat10.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati3].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati3].xy + u_xlat10.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					float u_xlat14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat14 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat2.xyz = vec3(u_xlat14) * u_xlat2.xyz;
					    u_xlat14 = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat3.xyz = vec3(u_xlat14) * in_NORMAL0.xyz;
					    u_xlat2.x = dot(u_xlat3.xyz, u_xlat2.xyz);
					    u_xlat2.x = log2(abs(u_xlat2.x));
					    u_xlat2.x = u_xlat2.x * _FresnelStr;
					    u_xlat2.x = exp2(u_xlat2.x);
					    u_xlat2.x = u_xlat2.x + u_xlat2.x;
					    vs_TEXCOORD4 = min(u_xlat2.x, 1.0);
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat4 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_3_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati1;
					vec4 u_xlat2;
					int u_xlati3;
					float u_xlat4;
					float u_xlat5;
					vec3 u_xlat6;
					vec3 u_xlat8;
					vec2 u_xlat10;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat6.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat6.x = inversesqrt(u_xlat6.x);
					    u_xlat6.xyz = u_xlat6.xxx * in_NORMAL0.xyz;
					    u_xlati3 = unity_StereoEyeIndex;
					    u_xlat8.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].yyy;
					    u_xlat8.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].xxx + u_xlat8.xyz;
					    u_xlat8.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].zzz + u_xlat8.xyz;
					    u_xlat8.xyz = u_xlat8.xyz + unity_WorldToObject[3].xyz;
					    u_xlat8.xyz = u_xlat8.xyz + (-in_POSITION0.xyz);
					    u_xlat4 = dot(u_xlat8.xyz, u_xlat8.xyz);
					    u_xlat4 = inversesqrt(u_xlat4);
					    u_xlat8.xyz = u_xlat8.xyz * vec3(u_xlat4);
					    u_xlat6.x = dot(u_xlat6.xyz, u_xlat8.xyz);
					    u_xlat6.x = log2(abs(u_xlat6.x));
					    u_xlat6.x = u_xlat6.x * _FresnelStr;
					    u_xlat6.x = exp2(u_xlat6.x);
					    u_xlat6.x = u_xlat6.x + u_xlat6.x;
					    vs_TEXCOORD4 = min(u_xlat6.x, 1.0);
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat5 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat5;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlat10.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati3].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati3].xy + u_xlat10.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendAlpha" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					float u_xlat14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat14 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat2.xyz = vec3(u_xlat14) * u_xlat2.xyz;
					    u_xlat14 = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat3.xyz = vec3(u_xlat14) * in_NORMAL0.xyz;
					    u_xlat2.x = dot(u_xlat3.xyz, u_xlat2.xyz);
					    u_xlat2.x = log2(abs(u_xlat2.x));
					    u_xlat2.x = u_xlat2.x * _FresnelStr;
					    u_xlat2.x = exp2(u_xlat2.x);
					    u_xlat2.x = u_xlat2.x + u_xlat2.x;
					    vs_TEXCOORD4 = min(u_xlat2.x, 1.0);
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat4 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_3_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati1;
					vec4 u_xlat2;
					int u_xlati3;
					float u_xlat4;
					float u_xlat5;
					vec3 u_xlat6;
					vec3 u_xlat8;
					vec2 u_xlat10;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat6.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat6.x = inversesqrt(u_xlat6.x);
					    u_xlat6.xyz = u_xlat6.xxx * in_NORMAL0.xyz;
					    u_xlati3 = unity_StereoEyeIndex;
					    u_xlat8.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].yyy;
					    u_xlat8.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].xxx + u_xlat8.xyz;
					    u_xlat8.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].zzz + u_xlat8.xyz;
					    u_xlat8.xyz = u_xlat8.xyz + unity_WorldToObject[3].xyz;
					    u_xlat8.xyz = u_xlat8.xyz + (-in_POSITION0.xyz);
					    u_xlat4 = dot(u_xlat8.xyz, u_xlat8.xyz);
					    u_xlat4 = inversesqrt(u_xlat4);
					    u_xlat8.xyz = u_xlat8.xyz * vec3(u_xlat4);
					    u_xlat6.x = dot(u_xlat6.xyz, u_xlat8.xyz);
					    u_xlat6.x = log2(abs(u_xlat6.x));
					    u_xlat6.x = u_xlat6.x * _FresnelStr;
					    u_xlat6.x = exp2(u_xlat6.x);
					    u_xlat6.x = u_xlat6.x + u_xlat6.x;
					    vs_TEXCOORD4 = min(u_xlat6.x, 1.0);
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat5 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat5;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlat10.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati3].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati3].xy + u_xlat10.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					float u_xlat14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat14 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat2.xyz = vec3(u_xlat14) * u_xlat2.xyz;
					    u_xlat14 = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat3.xyz = vec3(u_xlat14) * in_NORMAL0.xyz;
					    u_xlat2.x = dot(u_xlat3.xyz, u_xlat2.xyz);
					    u_xlat2.x = log2(abs(u_xlat2.x));
					    u_xlat2.x = u_xlat2.x * _FresnelStr;
					    u_xlat2.x = exp2(u_xlat2.x);
					    u_xlat2.x = u_xlat2.x + u_xlat2.x;
					    vs_TEXCOORD4 = min(u_xlat2.x, 1.0);
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat4 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_3_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati1;
					vec4 u_xlat2;
					int u_xlati3;
					float u_xlat4;
					float u_xlat5;
					vec3 u_xlat6;
					vec3 u_xlat8;
					vec2 u_xlat10;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat6.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat6.x = inversesqrt(u_xlat6.x);
					    u_xlat6.xyz = u_xlat6.xxx * in_NORMAL0.xyz;
					    u_xlati3 = unity_StereoEyeIndex;
					    u_xlat8.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].yyy;
					    u_xlat8.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].xxx + u_xlat8.xyz;
					    u_xlat8.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].zzz + u_xlat8.xyz;
					    u_xlat8.xyz = u_xlat8.xyz + unity_WorldToObject[3].xyz;
					    u_xlat8.xyz = u_xlat8.xyz + (-in_POSITION0.xyz);
					    u_xlat4 = dot(u_xlat8.xyz, u_xlat8.xyz);
					    u_xlat4 = inversesqrt(u_xlat4);
					    u_xlat8.xyz = u_xlat8.xyz * vec3(u_xlat4);
					    u_xlat6.x = dot(u_xlat6.xyz, u_xlat8.xyz);
					    u_xlat6.x = log2(abs(u_xlat6.x));
					    u_xlat6.x = u_xlat6.x * _FresnelStr;
					    u_xlat6.x = exp2(u_xlat6.x);
					    u_xlat6.x = u_xlat6.x + u_xlat6.x;
					    vs_TEXCOORD4 = min(u_xlat6.x, 1.0);
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat5 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat5;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlat10.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati3].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati3].xy + u_xlat10.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendAlpha" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					float u_xlat9;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat9 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat9 = inversesqrt(u_xlat9);
					    u_xlat2.xyz = vec3(u_xlat9) * u_xlat2.xyz;
					    u_xlat9 = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat9 = inversesqrt(u_xlat9);
					    u_xlat3.xyz = vec3(u_xlat9) * in_NORMAL0.xyz;
					    u_xlat9 = dot(u_xlat3.xyz, u_xlat2.xyz);
					    u_xlat9 = log2(abs(u_xlat9));
					    u_xlat9 = u_xlat9 * _FresnelStr;
					    u_xlat9 = exp2(u_xlat9);
					    u_xlat9 = u_xlat9 + u_xlat9;
					    vs_TEXCOORD4 = min(u_xlat9, 1.0);
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    u_xlat4 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_3_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					vec3 u_xlat5;
					vec2 u_xlat8;
					int u_xlati10;
					float u_xlat15;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat5.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat5.x = inversesqrt(u_xlat5.x);
					    u_xlat5.xyz = u_xlat5.xxx * in_NORMAL0.xyz;
					    u_xlati10 = unity_StereoEyeIndex;
					    u_xlat3.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati10].yyy;
					    u_xlat3.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati10].xxx + u_xlat3.xyz;
					    u_xlat3.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati10].zzz + u_xlat3.xyz;
					    u_xlat3.xyz = u_xlat3.xyz + unity_WorldToObject[3].xyz;
					    u_xlat3.xyz = u_xlat3.xyz + (-in_POSITION0.xyz);
					    u_xlat15 = dot(u_xlat3.xyz, u_xlat3.xyz);
					    u_xlat15 = inversesqrt(u_xlat15);
					    u_xlat3.xyz = vec3(u_xlat15) * u_xlat3.xyz;
					    u_xlat5.x = dot(u_xlat5.xyz, u_xlat3.xyz);
					    u_xlat5.x = log2(abs(u_xlat5.x));
					    u_xlat5.x = u_xlat5.x * _FresnelStr;
					    u_xlat5.x = exp2(u_xlat5.x);
					    u_xlat5.x = u_xlat5.x + u_xlat5.x;
					    vs_TEXCOORD4 = min(u_xlat5.x, 1.0);
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    u_xlat4 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlat8.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati10].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati10].xy + u_xlat8.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendAlpha" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					float u_xlat9;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat9 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat9 = inversesqrt(u_xlat9);
					    u_xlat2.xyz = vec3(u_xlat9) * u_xlat2.xyz;
					    u_xlat9 = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat9 = inversesqrt(u_xlat9);
					    u_xlat3.xyz = vec3(u_xlat9) * in_NORMAL0.xyz;
					    u_xlat9 = dot(u_xlat3.xyz, u_xlat2.xyz);
					    u_xlat9 = log2(abs(u_xlat9));
					    u_xlat9 = u_xlat9 * _FresnelStr;
					    u_xlat9 = exp2(u_xlat9);
					    u_xlat9 = u_xlat9 + u_xlat9;
					    vs_TEXCOORD4 = min(u_xlat9, 1.0);
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    u_xlat4 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_3_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					vec3 u_xlat5;
					vec2 u_xlat8;
					int u_xlati10;
					float u_xlat15;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat5.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat5.x = inversesqrt(u_xlat5.x);
					    u_xlat5.xyz = u_xlat5.xxx * in_NORMAL0.xyz;
					    u_xlati10 = unity_StereoEyeIndex;
					    u_xlat3.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati10].yyy;
					    u_xlat3.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati10].xxx + u_xlat3.xyz;
					    u_xlat3.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati10].zzz + u_xlat3.xyz;
					    u_xlat3.xyz = u_xlat3.xyz + unity_WorldToObject[3].xyz;
					    u_xlat3.xyz = u_xlat3.xyz + (-in_POSITION0.xyz);
					    u_xlat15 = dot(u_xlat3.xyz, u_xlat3.xyz);
					    u_xlat15 = inversesqrt(u_xlat15);
					    u_xlat3.xyz = vec3(u_xlat15) * u_xlat3.xyz;
					    u_xlat5.x = dot(u_xlat5.xyz, u_xlat3.xyz);
					    u_xlat5.x = log2(abs(u_xlat5.x));
					    u_xlat5.x = u_xlat5.x * _FresnelStr;
					    u_xlat5.x = exp2(u_xlat5.x);
					    u_xlat5.x = u_xlat5.x + u_xlat5.x;
					    vs_TEXCOORD4 = min(u_xlat5.x, 1.0);
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    u_xlat4 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlat8.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati10].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati10].xy + u_xlat8.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendAlpha" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					float u_xlat14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat14 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat2.xyz = vec3(u_xlat14) * u_xlat2.xyz;
					    u_xlat14 = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat3.xyz = vec3(u_xlat14) * in_NORMAL0.xyz;
					    u_xlat2.x = dot(u_xlat3.xyz, u_xlat2.xyz);
					    u_xlat2.x = log2(abs(u_xlat2.x));
					    u_xlat2.x = u_xlat2.x * _FresnelStr;
					    u_xlat2.x = exp2(u_xlat2.x);
					    u_xlat2.x = u_xlat2.x + u_xlat2.x;
					    vs_TEXCOORD4 = min(u_xlat2.x, 1.0);
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat4 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_3_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati1;
					vec4 u_xlat2;
					int u_xlati3;
					float u_xlat4;
					float u_xlat5;
					vec3 u_xlat6;
					vec3 u_xlat8;
					vec2 u_xlat10;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat6.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat6.x = inversesqrt(u_xlat6.x);
					    u_xlat6.xyz = u_xlat6.xxx * in_NORMAL0.xyz;
					    u_xlati3 = unity_StereoEyeIndex;
					    u_xlat8.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].yyy;
					    u_xlat8.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].xxx + u_xlat8.xyz;
					    u_xlat8.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].zzz + u_xlat8.xyz;
					    u_xlat8.xyz = u_xlat8.xyz + unity_WorldToObject[3].xyz;
					    u_xlat8.xyz = u_xlat8.xyz + (-in_POSITION0.xyz);
					    u_xlat4 = dot(u_xlat8.xyz, u_xlat8.xyz);
					    u_xlat4 = inversesqrt(u_xlat4);
					    u_xlat8.xyz = u_xlat8.xyz * vec3(u_xlat4);
					    u_xlat6.x = dot(u_xlat6.xyz, u_xlat8.xyz);
					    u_xlat6.x = log2(abs(u_xlat6.x));
					    u_xlat6.x = u_xlat6.x * _FresnelStr;
					    u_xlat6.x = exp2(u_xlat6.x);
					    u_xlat6.x = u_xlat6.x + u_xlat6.x;
					    vs_TEXCOORD4 = min(u_xlat6.x, 1.0);
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat5 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat5;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlat10.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati3].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati3].xy + u_xlat10.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					float u_xlat14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat14 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat2.xyz = vec3(u_xlat14) * u_xlat2.xyz;
					    u_xlat14 = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat3.xyz = vec3(u_xlat14) * in_NORMAL0.xyz;
					    u_xlat2.x = dot(u_xlat3.xyz, u_xlat2.xyz);
					    u_xlat2.x = log2(abs(u_xlat2.x));
					    u_xlat2.x = u_xlat2.x * _FresnelStr;
					    u_xlat2.x = exp2(u_xlat2.x);
					    u_xlat2.x = u_xlat2.x + u_xlat2.x;
					    vs_TEXCOORD4 = min(u_xlat2.x, 1.0);
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat4 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_3_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati1;
					vec4 u_xlat2;
					int u_xlati3;
					float u_xlat4;
					float u_xlat5;
					vec3 u_xlat6;
					vec3 u_xlat8;
					vec2 u_xlat10;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat6.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat6.x = inversesqrt(u_xlat6.x);
					    u_xlat6.xyz = u_xlat6.xxx * in_NORMAL0.xyz;
					    u_xlati3 = unity_StereoEyeIndex;
					    u_xlat8.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].yyy;
					    u_xlat8.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].xxx + u_xlat8.xyz;
					    u_xlat8.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].zzz + u_xlat8.xyz;
					    u_xlat8.xyz = u_xlat8.xyz + unity_WorldToObject[3].xyz;
					    u_xlat8.xyz = u_xlat8.xyz + (-in_POSITION0.xyz);
					    u_xlat4 = dot(u_xlat8.xyz, u_xlat8.xyz);
					    u_xlat4 = inversesqrt(u_xlat4);
					    u_xlat8.xyz = u_xlat8.xyz * vec3(u_xlat4);
					    u_xlat6.x = dot(u_xlat6.xyz, u_xlat8.xyz);
					    u_xlat6.x = log2(abs(u_xlat6.x));
					    u_xlat6.x = u_xlat6.x * _FresnelStr;
					    u_xlat6.x = exp2(u_xlat6.x);
					    u_xlat6.x = u_xlat6.x + u_xlat6.x;
					    vs_TEXCOORD4 = min(u_xlat6.x, 1.0);
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat5 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat5;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlat10.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati3].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati3].xy + u_xlat10.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendAlpha" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					float u_xlat14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat14 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat2.xyz = vec3(u_xlat14) * u_xlat2.xyz;
					    u_xlat14 = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat3.xyz = vec3(u_xlat14) * in_NORMAL0.xyz;
					    u_xlat2.x = dot(u_xlat3.xyz, u_xlat2.xyz);
					    u_xlat2.x = log2(abs(u_xlat2.x));
					    u_xlat2.x = u_xlat2.x * _FresnelStr;
					    u_xlat2.x = exp2(u_xlat2.x);
					    u_xlat2.x = u_xlat2.x + u_xlat2.x;
					    vs_TEXCOORD4 = min(u_xlat2.x, 1.0);
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat4 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_3_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati1;
					vec4 u_xlat2;
					int u_xlati3;
					float u_xlat4;
					float u_xlat5;
					vec3 u_xlat6;
					vec3 u_xlat8;
					vec2 u_xlat10;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat6.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat6.x = inversesqrt(u_xlat6.x);
					    u_xlat6.xyz = u_xlat6.xxx * in_NORMAL0.xyz;
					    u_xlati3 = unity_StereoEyeIndex;
					    u_xlat8.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].yyy;
					    u_xlat8.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].xxx + u_xlat8.xyz;
					    u_xlat8.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].zzz + u_xlat8.xyz;
					    u_xlat8.xyz = u_xlat8.xyz + unity_WorldToObject[3].xyz;
					    u_xlat8.xyz = u_xlat8.xyz + (-in_POSITION0.xyz);
					    u_xlat4 = dot(u_xlat8.xyz, u_xlat8.xyz);
					    u_xlat4 = inversesqrt(u_xlat4);
					    u_xlat8.xyz = u_xlat8.xyz * vec3(u_xlat4);
					    u_xlat6.x = dot(u_xlat6.xyz, u_xlat8.xyz);
					    u_xlat6.x = log2(abs(u_xlat6.x));
					    u_xlat6.x = u_xlat6.x * _FresnelStr;
					    u_xlat6.x = exp2(u_xlat6.x);
					    u_xlat6.x = u_xlat6.x + u_xlat6.x;
					    vs_TEXCOORD4 = min(u_xlat6.x, 1.0);
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat5 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat5;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlat10.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati3].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati3].xy + u_xlat10.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					float u_xlat14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat14 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat2.xyz = vec3(u_xlat14) * u_xlat2.xyz;
					    u_xlat14 = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat3.xyz = vec3(u_xlat14) * in_NORMAL0.xyz;
					    u_xlat2.x = dot(u_xlat3.xyz, u_xlat2.xyz);
					    u_xlat2.x = log2(abs(u_xlat2.x));
					    u_xlat2.x = u_xlat2.x * _FresnelStr;
					    u_xlat2.x = exp2(u_xlat2.x);
					    u_xlat2.x = u_xlat2.x + u_xlat2.x;
					    vs_TEXCOORD4 = min(u_xlat2.x, 1.0);
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat4 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_3_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati1;
					vec4 u_xlat2;
					int u_xlati3;
					float u_xlat4;
					float u_xlat5;
					vec3 u_xlat6;
					vec3 u_xlat8;
					vec2 u_xlat10;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat6.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat6.x = inversesqrt(u_xlat6.x);
					    u_xlat6.xyz = u_xlat6.xxx * in_NORMAL0.xyz;
					    u_xlati3 = unity_StereoEyeIndex;
					    u_xlat8.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].yyy;
					    u_xlat8.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].xxx + u_xlat8.xyz;
					    u_xlat8.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].zzz + u_xlat8.xyz;
					    u_xlat8.xyz = u_xlat8.xyz + unity_WorldToObject[3].xyz;
					    u_xlat8.xyz = u_xlat8.xyz + (-in_POSITION0.xyz);
					    u_xlat4 = dot(u_xlat8.xyz, u_xlat8.xyz);
					    u_xlat4 = inversesqrt(u_xlat4);
					    u_xlat8.xyz = u_xlat8.xyz * vec3(u_xlat4);
					    u_xlat6.x = dot(u_xlat6.xyz, u_xlat8.xyz);
					    u_xlat6.x = log2(abs(u_xlat6.x));
					    u_xlat6.x = u_xlat6.x * _FresnelStr;
					    u_xlat6.x = exp2(u_xlat6.x);
					    u_xlat6.x = u_xlat6.x + u_xlat6.x;
					    vs_TEXCOORD4 = min(u_xlat6.x, 1.0);
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat5 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat5;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlat10.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati3].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati3].xy + u_xlat10.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendAlpha" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					float u_xlat14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat14 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat2.xyz = vec3(u_xlat14) * u_xlat2.xyz;
					    u_xlat14 = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat3.xyz = vec3(u_xlat14) * in_NORMAL0.xyz;
					    u_xlat2.x = dot(u_xlat3.xyz, u_xlat2.xyz);
					    u_xlat2.x = log2(abs(u_xlat2.x));
					    u_xlat2.x = u_xlat2.x * _FresnelStr;
					    u_xlat2.x = exp2(u_xlat2.x);
					    u_xlat2.x = u_xlat2.x + u_xlat2.x;
					    vs_TEXCOORD4 = min(u_xlat2.x, 1.0);
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat4 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_3_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati1;
					vec4 u_xlat2;
					int u_xlati3;
					float u_xlat4;
					float u_xlat5;
					vec3 u_xlat6;
					vec3 u_xlat8;
					vec2 u_xlat10;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat6.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat6.x = inversesqrt(u_xlat6.x);
					    u_xlat6.xyz = u_xlat6.xxx * in_NORMAL0.xyz;
					    u_xlati3 = unity_StereoEyeIndex;
					    u_xlat8.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].yyy;
					    u_xlat8.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].xxx + u_xlat8.xyz;
					    u_xlat8.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].zzz + u_xlat8.xyz;
					    u_xlat8.xyz = u_xlat8.xyz + unity_WorldToObject[3].xyz;
					    u_xlat8.xyz = u_xlat8.xyz + (-in_POSITION0.xyz);
					    u_xlat4 = dot(u_xlat8.xyz, u_xlat8.xyz);
					    u_xlat4 = inversesqrt(u_xlat4);
					    u_xlat8.xyz = u_xlat8.xyz * vec3(u_xlat4);
					    u_xlat6.x = dot(u_xlat6.xyz, u_xlat8.xyz);
					    u_xlat6.x = log2(abs(u_xlat6.x));
					    u_xlat6.x = u_xlat6.x * _FresnelStr;
					    u_xlat6.x = exp2(u_xlat6.x);
					    u_xlat6.x = u_xlat6.x + u_xlat6.x;
					    vs_TEXCOORD4 = min(u_xlat6.x, 1.0);
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat5 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat5;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlat10.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati3].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati3].xy + u_xlat10.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					float u_xlat14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat14 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat2.xyz = vec3(u_xlat14) * u_xlat2.xyz;
					    u_xlat14 = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat3.xyz = vec3(u_xlat14) * in_NORMAL0.xyz;
					    u_xlat2.x = dot(u_xlat3.xyz, u_xlat2.xyz);
					    u_xlat2.x = log2(abs(u_xlat2.x));
					    u_xlat2.x = u_xlat2.x * _FresnelStr;
					    u_xlat2.x = exp2(u_xlat2.x);
					    u_xlat2.x = u_xlat2.x + u_xlat2.x;
					    vs_TEXCOORD4 = min(u_xlat2.x, 1.0);
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat4 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_3_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati1;
					vec4 u_xlat2;
					int u_xlati3;
					float u_xlat4;
					float u_xlat5;
					vec3 u_xlat6;
					vec3 u_xlat8;
					vec2 u_xlat10;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat6.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat6.x = inversesqrt(u_xlat6.x);
					    u_xlat6.xyz = u_xlat6.xxx * in_NORMAL0.xyz;
					    u_xlati3 = unity_StereoEyeIndex;
					    u_xlat8.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].yyy;
					    u_xlat8.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].xxx + u_xlat8.xyz;
					    u_xlat8.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].zzz + u_xlat8.xyz;
					    u_xlat8.xyz = u_xlat8.xyz + unity_WorldToObject[3].xyz;
					    u_xlat8.xyz = u_xlat8.xyz + (-in_POSITION0.xyz);
					    u_xlat4 = dot(u_xlat8.xyz, u_xlat8.xyz);
					    u_xlat4 = inversesqrt(u_xlat4);
					    u_xlat8.xyz = u_xlat8.xyz * vec3(u_xlat4);
					    u_xlat6.x = dot(u_xlat6.xyz, u_xlat8.xyz);
					    u_xlat6.x = log2(abs(u_xlat6.x));
					    u_xlat6.x = u_xlat6.x * _FresnelStr;
					    u_xlat6.x = exp2(u_xlat6.x);
					    u_xlat6.x = u_xlat6.x + u_xlat6.x;
					    vs_TEXCOORD4 = min(u_xlat6.x, 1.0);
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat5 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat5;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlat10.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati3].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati3].xy + u_xlat10.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendAlpha" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    u_xlat2 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat2;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec2 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					float u_xlat3;
					int u_xlati6;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    u_xlat3 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat3;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlati6 = unity_StereoEyeIndex;
					    u_xlat1.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati6].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati6].xy + u_xlat1.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendAlpha" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    u_xlat2 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat2;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec2 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					float u_xlat3;
					int u_xlati6;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    u_xlat3 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat3;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlati6 = unity_StereoEyeIndex;
					    u_xlat1.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati6].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati6].xy + u_xlat1.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendAlpha" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat2 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat2;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec2 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					float u_xlat3;
					int u_xlati6;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat3 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat3;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlati6 = unity_StereoEyeIndex;
					    u_xlat1.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati6].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati6].xy + u_xlat1.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat2 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat2;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec2 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					float u_xlat3;
					int u_xlati6;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat3 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat3;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlati6 = unity_StereoEyeIndex;
					    u_xlat1.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati6].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati6].xy + u_xlat1.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendAlpha" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat2 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat2;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec2 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					float u_xlat3;
					int u_xlati6;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat3 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat3;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlati6 = unity_StereoEyeIndex;
					    u_xlat1.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati6].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati6].xy + u_xlat1.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat2 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat2;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec2 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					float u_xlat3;
					int u_xlati6;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat3 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat3;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlati6 = unity_StereoEyeIndex;
					    u_xlat1.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati6].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati6].xy + u_xlat1.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendAlpha" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat2 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat2;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec2 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					float u_xlat3;
					int u_xlati6;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat3 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat3;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlati6 = unity_StereoEyeIndex;
					    u_xlat1.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati6].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati6].xy + u_xlat1.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat2 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat2;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec2 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					float u_xlat3;
					int u_xlati6;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat3 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat3;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlati6 = unity_StereoEyeIndex;
					    u_xlat1.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati6].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati6].xy + u_xlat1.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendAlpha" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    u_xlat2 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat2;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec2 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					float u_xlat3;
					int u_xlati6;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    u_xlat3 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat3;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlati6 = unity_StereoEyeIndex;
					    u_xlat1.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati6].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati6].xy + u_xlat1.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendAlpha" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    u_xlat2 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat2;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec2 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					float u_xlat3;
					int u_xlati6;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    u_xlat3 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat3;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlati6 = unity_StereoEyeIndex;
					    u_xlat1.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati6].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati6].xy + u_xlat1.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendAlpha" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat2 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat2;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec2 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					float u_xlat3;
					int u_xlati6;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat3 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat3;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlati6 = unity_StereoEyeIndex;
					    u_xlat1.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati6].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati6].xy + u_xlat1.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat2 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat2;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec2 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					float u_xlat3;
					int u_xlati6;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat3 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat3;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlati6 = unity_StereoEyeIndex;
					    u_xlat1.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati6].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati6].xy + u_xlat1.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendAlpha" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat2 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat2;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec2 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					float u_xlat3;
					int u_xlati6;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat3 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat3;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlati6 = unity_StereoEyeIndex;
					    u_xlat1.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati6].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati6].xy + u_xlat1.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat2 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat2;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec2 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					float u_xlat3;
					int u_xlati6;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat3 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat3;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlati6 = unity_StereoEyeIndex;
					    u_xlat1.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati6].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati6].xy + u_xlat1.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendAlpha" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat2 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat2;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec2 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					float u_xlat3;
					int u_xlati6;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat3 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat3;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlati6 = unity_StereoEyeIndex;
					    u_xlat1.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati6].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati6].xy + u_xlat1.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat2 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat2;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec2 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					float u_xlat3;
					int u_xlati6;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat3 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat3;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlati6 = unity_StereoEyeIndex;
					    u_xlat1.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati6].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati6].xy + u_xlat1.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendAlpha" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					float u_xlat9;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat9 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat9 = inversesqrt(u_xlat9);
					    u_xlat2.xyz = vec3(u_xlat9) * u_xlat2.xyz;
					    u_xlat9 = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat9 = inversesqrt(u_xlat9);
					    u_xlat3.xyz = vec3(u_xlat9) * in_NORMAL0.xyz;
					    u_xlat9 = dot(u_xlat3.xyz, u_xlat2.xyz);
					    u_xlat9 = log2(abs(u_xlat9));
					    u_xlat9 = u_xlat9 * _FresnelStr;
					    u_xlat9 = exp2(u_xlat9);
					    u_xlat9 = u_xlat9 + u_xlat9;
					    vs_TEXCOORD4 = min(u_xlat9, 1.0);
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    u_xlat4 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_3_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					vec3 u_xlat5;
					vec2 u_xlat8;
					int u_xlati10;
					float u_xlat15;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat5.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat5.x = inversesqrt(u_xlat5.x);
					    u_xlat5.xyz = u_xlat5.xxx * in_NORMAL0.xyz;
					    u_xlati10 = unity_StereoEyeIndex;
					    u_xlat3.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati10].yyy;
					    u_xlat3.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati10].xxx + u_xlat3.xyz;
					    u_xlat3.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati10].zzz + u_xlat3.xyz;
					    u_xlat3.xyz = u_xlat3.xyz + unity_WorldToObject[3].xyz;
					    u_xlat3.xyz = u_xlat3.xyz + (-in_POSITION0.xyz);
					    u_xlat15 = dot(u_xlat3.xyz, u_xlat3.xyz);
					    u_xlat15 = inversesqrt(u_xlat15);
					    u_xlat3.xyz = vec3(u_xlat15) * u_xlat3.xyz;
					    u_xlat5.x = dot(u_xlat5.xyz, u_xlat3.xyz);
					    u_xlat5.x = log2(abs(u_xlat5.x));
					    u_xlat5.x = u_xlat5.x * _FresnelStr;
					    u_xlat5.x = exp2(u_xlat5.x);
					    u_xlat5.x = u_xlat5.x + u_xlat5.x;
					    vs_TEXCOORD4 = min(u_xlat5.x, 1.0);
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    u_xlat4 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlat8.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati10].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati10].xy + u_xlat8.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendAlpha" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					float u_xlat9;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat9 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat9 = inversesqrt(u_xlat9);
					    u_xlat2.xyz = vec3(u_xlat9) * u_xlat2.xyz;
					    u_xlat9 = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat9 = inversesqrt(u_xlat9);
					    u_xlat3.xyz = vec3(u_xlat9) * in_NORMAL0.xyz;
					    u_xlat9 = dot(u_xlat3.xyz, u_xlat2.xyz);
					    u_xlat9 = log2(abs(u_xlat9));
					    u_xlat9 = u_xlat9 * _FresnelStr;
					    u_xlat9 = exp2(u_xlat9);
					    u_xlat9 = u_xlat9 + u_xlat9;
					    vs_TEXCOORD4 = min(u_xlat9, 1.0);
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    u_xlat4 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_3_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					vec3 u_xlat5;
					vec2 u_xlat8;
					int u_xlati10;
					float u_xlat15;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat5.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat5.x = inversesqrt(u_xlat5.x);
					    u_xlat5.xyz = u_xlat5.xxx * in_NORMAL0.xyz;
					    u_xlati10 = unity_StereoEyeIndex;
					    u_xlat3.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati10].yyy;
					    u_xlat3.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati10].xxx + u_xlat3.xyz;
					    u_xlat3.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati10].zzz + u_xlat3.xyz;
					    u_xlat3.xyz = u_xlat3.xyz + unity_WorldToObject[3].xyz;
					    u_xlat3.xyz = u_xlat3.xyz + (-in_POSITION0.xyz);
					    u_xlat15 = dot(u_xlat3.xyz, u_xlat3.xyz);
					    u_xlat15 = inversesqrt(u_xlat15);
					    u_xlat3.xyz = vec3(u_xlat15) * u_xlat3.xyz;
					    u_xlat5.x = dot(u_xlat5.xyz, u_xlat3.xyz);
					    u_xlat5.x = log2(abs(u_xlat5.x));
					    u_xlat5.x = u_xlat5.x * _FresnelStr;
					    u_xlat5.x = exp2(u_xlat5.x);
					    u_xlat5.x = u_xlat5.x + u_xlat5.x;
					    vs_TEXCOORD4 = min(u_xlat5.x, 1.0);
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    u_xlat4 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlat8.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati10].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati10].xy + u_xlat8.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendAlpha" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					float u_xlat14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat14 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat2.xyz = vec3(u_xlat14) * u_xlat2.xyz;
					    u_xlat14 = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat3.xyz = vec3(u_xlat14) * in_NORMAL0.xyz;
					    u_xlat2.x = dot(u_xlat3.xyz, u_xlat2.xyz);
					    u_xlat2.x = log2(abs(u_xlat2.x));
					    u_xlat2.x = u_xlat2.x * _FresnelStr;
					    u_xlat2.x = exp2(u_xlat2.x);
					    u_xlat2.x = u_xlat2.x + u_xlat2.x;
					    vs_TEXCOORD4 = min(u_xlat2.x, 1.0);
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat4 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_3_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati1;
					vec4 u_xlat2;
					int u_xlati3;
					float u_xlat4;
					float u_xlat5;
					vec3 u_xlat6;
					vec3 u_xlat8;
					vec2 u_xlat10;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat6.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat6.x = inversesqrt(u_xlat6.x);
					    u_xlat6.xyz = u_xlat6.xxx * in_NORMAL0.xyz;
					    u_xlati3 = unity_StereoEyeIndex;
					    u_xlat8.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].yyy;
					    u_xlat8.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].xxx + u_xlat8.xyz;
					    u_xlat8.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].zzz + u_xlat8.xyz;
					    u_xlat8.xyz = u_xlat8.xyz + unity_WorldToObject[3].xyz;
					    u_xlat8.xyz = u_xlat8.xyz + (-in_POSITION0.xyz);
					    u_xlat4 = dot(u_xlat8.xyz, u_xlat8.xyz);
					    u_xlat4 = inversesqrt(u_xlat4);
					    u_xlat8.xyz = u_xlat8.xyz * vec3(u_xlat4);
					    u_xlat6.x = dot(u_xlat6.xyz, u_xlat8.xyz);
					    u_xlat6.x = log2(abs(u_xlat6.x));
					    u_xlat6.x = u_xlat6.x * _FresnelStr;
					    u_xlat6.x = exp2(u_xlat6.x);
					    u_xlat6.x = u_xlat6.x + u_xlat6.x;
					    vs_TEXCOORD4 = min(u_xlat6.x, 1.0);
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat5 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat5;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlat10.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati3].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati3].xy + u_xlat10.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					float u_xlat14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat14 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat2.xyz = vec3(u_xlat14) * u_xlat2.xyz;
					    u_xlat14 = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat3.xyz = vec3(u_xlat14) * in_NORMAL0.xyz;
					    u_xlat2.x = dot(u_xlat3.xyz, u_xlat2.xyz);
					    u_xlat2.x = log2(abs(u_xlat2.x));
					    u_xlat2.x = u_xlat2.x * _FresnelStr;
					    u_xlat2.x = exp2(u_xlat2.x);
					    u_xlat2.x = u_xlat2.x + u_xlat2.x;
					    vs_TEXCOORD4 = min(u_xlat2.x, 1.0);
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat4 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_3_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati1;
					vec4 u_xlat2;
					int u_xlati3;
					float u_xlat4;
					float u_xlat5;
					vec3 u_xlat6;
					vec3 u_xlat8;
					vec2 u_xlat10;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat6.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat6.x = inversesqrt(u_xlat6.x);
					    u_xlat6.xyz = u_xlat6.xxx * in_NORMAL0.xyz;
					    u_xlati3 = unity_StereoEyeIndex;
					    u_xlat8.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].yyy;
					    u_xlat8.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].xxx + u_xlat8.xyz;
					    u_xlat8.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].zzz + u_xlat8.xyz;
					    u_xlat8.xyz = u_xlat8.xyz + unity_WorldToObject[3].xyz;
					    u_xlat8.xyz = u_xlat8.xyz + (-in_POSITION0.xyz);
					    u_xlat4 = dot(u_xlat8.xyz, u_xlat8.xyz);
					    u_xlat4 = inversesqrt(u_xlat4);
					    u_xlat8.xyz = u_xlat8.xyz * vec3(u_xlat4);
					    u_xlat6.x = dot(u_xlat6.xyz, u_xlat8.xyz);
					    u_xlat6.x = log2(abs(u_xlat6.x));
					    u_xlat6.x = u_xlat6.x * _FresnelStr;
					    u_xlat6.x = exp2(u_xlat6.x);
					    u_xlat6.x = u_xlat6.x + u_xlat6.x;
					    vs_TEXCOORD4 = min(u_xlat6.x, 1.0);
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat5 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat5;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlat10.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati3].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati3].xy + u_xlat10.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendAlpha" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					float u_xlat14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat14 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat2.xyz = vec3(u_xlat14) * u_xlat2.xyz;
					    u_xlat14 = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat3.xyz = vec3(u_xlat14) * in_NORMAL0.xyz;
					    u_xlat2.x = dot(u_xlat3.xyz, u_xlat2.xyz);
					    u_xlat2.x = log2(abs(u_xlat2.x));
					    u_xlat2.x = u_xlat2.x * _FresnelStr;
					    u_xlat2.x = exp2(u_xlat2.x);
					    u_xlat2.x = u_xlat2.x + u_xlat2.x;
					    vs_TEXCOORD4 = min(u_xlat2.x, 1.0);
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat4 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_3_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati1;
					vec4 u_xlat2;
					int u_xlati3;
					float u_xlat4;
					float u_xlat5;
					vec3 u_xlat6;
					vec3 u_xlat8;
					vec2 u_xlat10;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat6.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat6.x = inversesqrt(u_xlat6.x);
					    u_xlat6.xyz = u_xlat6.xxx * in_NORMAL0.xyz;
					    u_xlati3 = unity_StereoEyeIndex;
					    u_xlat8.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].yyy;
					    u_xlat8.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].xxx + u_xlat8.xyz;
					    u_xlat8.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].zzz + u_xlat8.xyz;
					    u_xlat8.xyz = u_xlat8.xyz + unity_WorldToObject[3].xyz;
					    u_xlat8.xyz = u_xlat8.xyz + (-in_POSITION0.xyz);
					    u_xlat4 = dot(u_xlat8.xyz, u_xlat8.xyz);
					    u_xlat4 = inversesqrt(u_xlat4);
					    u_xlat8.xyz = u_xlat8.xyz * vec3(u_xlat4);
					    u_xlat6.x = dot(u_xlat6.xyz, u_xlat8.xyz);
					    u_xlat6.x = log2(abs(u_xlat6.x));
					    u_xlat6.x = u_xlat6.x * _FresnelStr;
					    u_xlat6.x = exp2(u_xlat6.x);
					    u_xlat6.x = u_xlat6.x + u_xlat6.x;
					    vs_TEXCOORD4 = min(u_xlat6.x, 1.0);
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat5 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat5;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlat10.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati3].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati3].xy + u_xlat10.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					float u_xlat14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat14 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat2.xyz = vec3(u_xlat14) * u_xlat2.xyz;
					    u_xlat14 = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat3.xyz = vec3(u_xlat14) * in_NORMAL0.xyz;
					    u_xlat2.x = dot(u_xlat3.xyz, u_xlat2.xyz);
					    u_xlat2.x = log2(abs(u_xlat2.x));
					    u_xlat2.x = u_xlat2.x * _FresnelStr;
					    u_xlat2.x = exp2(u_xlat2.x);
					    u_xlat2.x = u_xlat2.x + u_xlat2.x;
					    vs_TEXCOORD4 = min(u_xlat2.x, 1.0);
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat4 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_3_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati1;
					vec4 u_xlat2;
					int u_xlati3;
					float u_xlat4;
					float u_xlat5;
					vec3 u_xlat6;
					vec3 u_xlat8;
					vec2 u_xlat10;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat6.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat6.x = inversesqrt(u_xlat6.x);
					    u_xlat6.xyz = u_xlat6.xxx * in_NORMAL0.xyz;
					    u_xlati3 = unity_StereoEyeIndex;
					    u_xlat8.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].yyy;
					    u_xlat8.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].xxx + u_xlat8.xyz;
					    u_xlat8.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].zzz + u_xlat8.xyz;
					    u_xlat8.xyz = u_xlat8.xyz + unity_WorldToObject[3].xyz;
					    u_xlat8.xyz = u_xlat8.xyz + (-in_POSITION0.xyz);
					    u_xlat4 = dot(u_xlat8.xyz, u_xlat8.xyz);
					    u_xlat4 = inversesqrt(u_xlat4);
					    u_xlat8.xyz = u_xlat8.xyz * vec3(u_xlat4);
					    u_xlat6.x = dot(u_xlat6.xyz, u_xlat8.xyz);
					    u_xlat6.x = log2(abs(u_xlat6.x));
					    u_xlat6.x = u_xlat6.x * _FresnelStr;
					    u_xlat6.x = exp2(u_xlat6.x);
					    u_xlat6.x = u_xlat6.x + u_xlat6.x;
					    vs_TEXCOORD4 = min(u_xlat6.x, 1.0);
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat5 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat5;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlat10.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati3].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati3].xy + u_xlat10.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendAlpha" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					float u_xlat14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat14 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat2.xyz = vec3(u_xlat14) * u_xlat2.xyz;
					    u_xlat14 = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat3.xyz = vec3(u_xlat14) * in_NORMAL0.xyz;
					    u_xlat2.x = dot(u_xlat3.xyz, u_xlat2.xyz);
					    u_xlat2.x = log2(abs(u_xlat2.x));
					    u_xlat2.x = u_xlat2.x * _FresnelStr;
					    u_xlat2.x = exp2(u_xlat2.x);
					    u_xlat2.x = u_xlat2.x + u_xlat2.x;
					    vs_TEXCOORD4 = min(u_xlat2.x, 1.0);
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat4 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_3_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati1;
					vec4 u_xlat2;
					int u_xlati3;
					float u_xlat4;
					float u_xlat5;
					vec3 u_xlat6;
					vec3 u_xlat8;
					vec2 u_xlat10;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat6.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat6.x = inversesqrt(u_xlat6.x);
					    u_xlat6.xyz = u_xlat6.xxx * in_NORMAL0.xyz;
					    u_xlati3 = unity_StereoEyeIndex;
					    u_xlat8.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].yyy;
					    u_xlat8.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].xxx + u_xlat8.xyz;
					    u_xlat8.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].zzz + u_xlat8.xyz;
					    u_xlat8.xyz = u_xlat8.xyz + unity_WorldToObject[3].xyz;
					    u_xlat8.xyz = u_xlat8.xyz + (-in_POSITION0.xyz);
					    u_xlat4 = dot(u_xlat8.xyz, u_xlat8.xyz);
					    u_xlat4 = inversesqrt(u_xlat4);
					    u_xlat8.xyz = u_xlat8.xyz * vec3(u_xlat4);
					    u_xlat6.x = dot(u_xlat6.xyz, u_xlat8.xyz);
					    u_xlat6.x = log2(abs(u_xlat6.x));
					    u_xlat6.x = u_xlat6.x * _FresnelStr;
					    u_xlat6.x = exp2(u_xlat6.x);
					    u_xlat6.x = u_xlat6.x + u_xlat6.x;
					    vs_TEXCOORD4 = min(u_xlat6.x, 1.0);
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat5 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat5;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlat10.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati3].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati3].xy + u_xlat10.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					float u_xlat14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat14 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat2.xyz = vec3(u_xlat14) * u_xlat2.xyz;
					    u_xlat14 = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat3.xyz = vec3(u_xlat14) * in_NORMAL0.xyz;
					    u_xlat2.x = dot(u_xlat3.xyz, u_xlat2.xyz);
					    u_xlat2.x = log2(abs(u_xlat2.x));
					    u_xlat2.x = u_xlat2.x * _FresnelStr;
					    u_xlat2.x = exp2(u_xlat2.x);
					    u_xlat2.x = u_xlat2.x + u_xlat2.x;
					    vs_TEXCOORD4 = min(u_xlat2.x, 1.0);
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat4 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_3_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati1;
					vec4 u_xlat2;
					int u_xlati3;
					float u_xlat4;
					float u_xlat5;
					vec3 u_xlat6;
					vec3 u_xlat8;
					vec2 u_xlat10;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat6.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat6.x = inversesqrt(u_xlat6.x);
					    u_xlat6.xyz = u_xlat6.xxx * in_NORMAL0.xyz;
					    u_xlati3 = unity_StereoEyeIndex;
					    u_xlat8.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].yyy;
					    u_xlat8.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].xxx + u_xlat8.xyz;
					    u_xlat8.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].zzz + u_xlat8.xyz;
					    u_xlat8.xyz = u_xlat8.xyz + unity_WorldToObject[3].xyz;
					    u_xlat8.xyz = u_xlat8.xyz + (-in_POSITION0.xyz);
					    u_xlat4 = dot(u_xlat8.xyz, u_xlat8.xyz);
					    u_xlat4 = inversesqrt(u_xlat4);
					    u_xlat8.xyz = u_xlat8.xyz * vec3(u_xlat4);
					    u_xlat6.x = dot(u_xlat6.xyz, u_xlat8.xyz);
					    u_xlat6.x = log2(abs(u_xlat6.x));
					    u_xlat6.x = u_xlat6.x * _FresnelStr;
					    u_xlat6.x = exp2(u_xlat6.x);
					    u_xlat6.x = u_xlat6.x + u_xlat6.x;
					    vs_TEXCOORD4 = min(u_xlat6.x, 1.0);
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat5 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat5;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlat10.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati3].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati3].xy + u_xlat10.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendAlpha" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					float u_xlat9;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat9 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat9 = inversesqrt(u_xlat9);
					    u_xlat2.xyz = vec3(u_xlat9) * u_xlat2.xyz;
					    u_xlat9 = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat9 = inversesqrt(u_xlat9);
					    u_xlat3.xyz = vec3(u_xlat9) * in_NORMAL0.xyz;
					    u_xlat9 = dot(u_xlat3.xyz, u_xlat2.xyz);
					    u_xlat9 = log2(abs(u_xlat9));
					    u_xlat9 = u_xlat9 * _FresnelStr;
					    u_xlat9 = exp2(u_xlat9);
					    u_xlat9 = u_xlat9 + u_xlat9;
					    vs_TEXCOORD4 = min(u_xlat9, 1.0);
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    u_xlat4 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_3_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					vec3 u_xlat5;
					vec2 u_xlat8;
					int u_xlati10;
					float u_xlat15;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat5.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat5.x = inversesqrt(u_xlat5.x);
					    u_xlat5.xyz = u_xlat5.xxx * in_NORMAL0.xyz;
					    u_xlati10 = unity_StereoEyeIndex;
					    u_xlat3.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati10].yyy;
					    u_xlat3.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati10].xxx + u_xlat3.xyz;
					    u_xlat3.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati10].zzz + u_xlat3.xyz;
					    u_xlat3.xyz = u_xlat3.xyz + unity_WorldToObject[3].xyz;
					    u_xlat3.xyz = u_xlat3.xyz + (-in_POSITION0.xyz);
					    u_xlat15 = dot(u_xlat3.xyz, u_xlat3.xyz);
					    u_xlat15 = inversesqrt(u_xlat15);
					    u_xlat3.xyz = vec3(u_xlat15) * u_xlat3.xyz;
					    u_xlat5.x = dot(u_xlat5.xyz, u_xlat3.xyz);
					    u_xlat5.x = log2(abs(u_xlat5.x));
					    u_xlat5.x = u_xlat5.x * _FresnelStr;
					    u_xlat5.x = exp2(u_xlat5.x);
					    u_xlat5.x = u_xlat5.x + u_xlat5.x;
					    vs_TEXCOORD4 = min(u_xlat5.x, 1.0);
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    u_xlat4 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlat8.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati10].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati10].xy + u_xlat8.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendAlpha" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					float u_xlat9;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat9 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat9 = inversesqrt(u_xlat9);
					    u_xlat2.xyz = vec3(u_xlat9) * u_xlat2.xyz;
					    u_xlat9 = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat9 = inversesqrt(u_xlat9);
					    u_xlat3.xyz = vec3(u_xlat9) * in_NORMAL0.xyz;
					    u_xlat9 = dot(u_xlat3.xyz, u_xlat2.xyz);
					    u_xlat9 = log2(abs(u_xlat9));
					    u_xlat9 = u_xlat9 * _FresnelStr;
					    u_xlat9 = exp2(u_xlat9);
					    u_xlat9 = u_xlat9 + u_xlat9;
					    vs_TEXCOORD4 = min(u_xlat9, 1.0);
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    u_xlat4 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_3_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					vec3 u_xlat5;
					vec2 u_xlat8;
					int u_xlati10;
					float u_xlat15;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat5.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat5.x = inversesqrt(u_xlat5.x);
					    u_xlat5.xyz = u_xlat5.xxx * in_NORMAL0.xyz;
					    u_xlati10 = unity_StereoEyeIndex;
					    u_xlat3.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati10].yyy;
					    u_xlat3.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati10].xxx + u_xlat3.xyz;
					    u_xlat3.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati10].zzz + u_xlat3.xyz;
					    u_xlat3.xyz = u_xlat3.xyz + unity_WorldToObject[3].xyz;
					    u_xlat3.xyz = u_xlat3.xyz + (-in_POSITION0.xyz);
					    u_xlat15 = dot(u_xlat3.xyz, u_xlat3.xyz);
					    u_xlat15 = inversesqrt(u_xlat15);
					    u_xlat3.xyz = vec3(u_xlat15) * u_xlat3.xyz;
					    u_xlat5.x = dot(u_xlat5.xyz, u_xlat3.xyz);
					    u_xlat5.x = log2(abs(u_xlat5.x));
					    u_xlat5.x = u_xlat5.x * _FresnelStr;
					    u_xlat5.x = exp2(u_xlat5.x);
					    u_xlat5.x = u_xlat5.x + u_xlat5.x;
					    vs_TEXCOORD4 = min(u_xlat5.x, 1.0);
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    u_xlat4 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlat8.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati10].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati10].xy + u_xlat8.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendAlpha" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					float u_xlat14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat14 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat2.xyz = vec3(u_xlat14) * u_xlat2.xyz;
					    u_xlat14 = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat3.xyz = vec3(u_xlat14) * in_NORMAL0.xyz;
					    u_xlat2.x = dot(u_xlat3.xyz, u_xlat2.xyz);
					    u_xlat2.x = log2(abs(u_xlat2.x));
					    u_xlat2.x = u_xlat2.x * _FresnelStr;
					    u_xlat2.x = exp2(u_xlat2.x);
					    u_xlat2.x = u_xlat2.x + u_xlat2.x;
					    vs_TEXCOORD4 = min(u_xlat2.x, 1.0);
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat4 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_3_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati1;
					vec4 u_xlat2;
					int u_xlati3;
					float u_xlat4;
					float u_xlat5;
					vec3 u_xlat6;
					vec3 u_xlat8;
					vec2 u_xlat10;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat6.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat6.x = inversesqrt(u_xlat6.x);
					    u_xlat6.xyz = u_xlat6.xxx * in_NORMAL0.xyz;
					    u_xlati3 = unity_StereoEyeIndex;
					    u_xlat8.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].yyy;
					    u_xlat8.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].xxx + u_xlat8.xyz;
					    u_xlat8.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].zzz + u_xlat8.xyz;
					    u_xlat8.xyz = u_xlat8.xyz + unity_WorldToObject[3].xyz;
					    u_xlat8.xyz = u_xlat8.xyz + (-in_POSITION0.xyz);
					    u_xlat4 = dot(u_xlat8.xyz, u_xlat8.xyz);
					    u_xlat4 = inversesqrt(u_xlat4);
					    u_xlat8.xyz = u_xlat8.xyz * vec3(u_xlat4);
					    u_xlat6.x = dot(u_xlat6.xyz, u_xlat8.xyz);
					    u_xlat6.x = log2(abs(u_xlat6.x));
					    u_xlat6.x = u_xlat6.x * _FresnelStr;
					    u_xlat6.x = exp2(u_xlat6.x);
					    u_xlat6.x = u_xlat6.x + u_xlat6.x;
					    vs_TEXCOORD4 = min(u_xlat6.x, 1.0);
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat5 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat5;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlat10.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati3].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati3].xy + u_xlat10.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					float u_xlat14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat14 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat2.xyz = vec3(u_xlat14) * u_xlat2.xyz;
					    u_xlat14 = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat3.xyz = vec3(u_xlat14) * in_NORMAL0.xyz;
					    u_xlat2.x = dot(u_xlat3.xyz, u_xlat2.xyz);
					    u_xlat2.x = log2(abs(u_xlat2.x));
					    u_xlat2.x = u_xlat2.x * _FresnelStr;
					    u_xlat2.x = exp2(u_xlat2.x);
					    u_xlat2.x = u_xlat2.x + u_xlat2.x;
					    vs_TEXCOORD4 = min(u_xlat2.x, 1.0);
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat4 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_3_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati1;
					vec4 u_xlat2;
					int u_xlati3;
					float u_xlat4;
					float u_xlat5;
					vec3 u_xlat6;
					vec3 u_xlat8;
					vec2 u_xlat10;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat6.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat6.x = inversesqrt(u_xlat6.x);
					    u_xlat6.xyz = u_xlat6.xxx * in_NORMAL0.xyz;
					    u_xlati3 = unity_StereoEyeIndex;
					    u_xlat8.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].yyy;
					    u_xlat8.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].xxx + u_xlat8.xyz;
					    u_xlat8.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].zzz + u_xlat8.xyz;
					    u_xlat8.xyz = u_xlat8.xyz + unity_WorldToObject[3].xyz;
					    u_xlat8.xyz = u_xlat8.xyz + (-in_POSITION0.xyz);
					    u_xlat4 = dot(u_xlat8.xyz, u_xlat8.xyz);
					    u_xlat4 = inversesqrt(u_xlat4);
					    u_xlat8.xyz = u_xlat8.xyz * vec3(u_xlat4);
					    u_xlat6.x = dot(u_xlat6.xyz, u_xlat8.xyz);
					    u_xlat6.x = log2(abs(u_xlat6.x));
					    u_xlat6.x = u_xlat6.x * _FresnelStr;
					    u_xlat6.x = exp2(u_xlat6.x);
					    u_xlat6.x = u_xlat6.x + u_xlat6.x;
					    vs_TEXCOORD4 = min(u_xlat6.x, 1.0);
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat5 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat5;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlat10.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati3].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati3].xy + u_xlat10.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendAlpha" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					float u_xlat14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat14 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat2.xyz = vec3(u_xlat14) * u_xlat2.xyz;
					    u_xlat14 = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat3.xyz = vec3(u_xlat14) * in_NORMAL0.xyz;
					    u_xlat2.x = dot(u_xlat3.xyz, u_xlat2.xyz);
					    u_xlat2.x = log2(abs(u_xlat2.x));
					    u_xlat2.x = u_xlat2.x * _FresnelStr;
					    u_xlat2.x = exp2(u_xlat2.x);
					    u_xlat2.x = u_xlat2.x + u_xlat2.x;
					    vs_TEXCOORD4 = min(u_xlat2.x, 1.0);
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat4 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_3_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati1;
					vec4 u_xlat2;
					int u_xlati3;
					float u_xlat4;
					float u_xlat5;
					vec3 u_xlat6;
					vec3 u_xlat8;
					vec2 u_xlat10;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat6.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat6.x = inversesqrt(u_xlat6.x);
					    u_xlat6.xyz = u_xlat6.xxx * in_NORMAL0.xyz;
					    u_xlati3 = unity_StereoEyeIndex;
					    u_xlat8.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].yyy;
					    u_xlat8.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].xxx + u_xlat8.xyz;
					    u_xlat8.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].zzz + u_xlat8.xyz;
					    u_xlat8.xyz = u_xlat8.xyz + unity_WorldToObject[3].xyz;
					    u_xlat8.xyz = u_xlat8.xyz + (-in_POSITION0.xyz);
					    u_xlat4 = dot(u_xlat8.xyz, u_xlat8.xyz);
					    u_xlat4 = inversesqrt(u_xlat4);
					    u_xlat8.xyz = u_xlat8.xyz * vec3(u_xlat4);
					    u_xlat6.x = dot(u_xlat6.xyz, u_xlat8.xyz);
					    u_xlat6.x = log2(abs(u_xlat6.x));
					    u_xlat6.x = u_xlat6.x * _FresnelStr;
					    u_xlat6.x = exp2(u_xlat6.x);
					    u_xlat6.x = u_xlat6.x + u_xlat6.x;
					    vs_TEXCOORD4 = min(u_xlat6.x, 1.0);
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat5 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat5;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlat10.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati3].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati3].xy + u_xlat10.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					float u_xlat14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat14 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat2.xyz = vec3(u_xlat14) * u_xlat2.xyz;
					    u_xlat14 = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat3.xyz = vec3(u_xlat14) * in_NORMAL0.xyz;
					    u_xlat2.x = dot(u_xlat3.xyz, u_xlat2.xyz);
					    u_xlat2.x = log2(abs(u_xlat2.x));
					    u_xlat2.x = u_xlat2.x * _FresnelStr;
					    u_xlat2.x = exp2(u_xlat2.x);
					    u_xlat2.x = u_xlat2.x + u_xlat2.x;
					    vs_TEXCOORD4 = min(u_xlat2.x, 1.0);
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat4 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_3_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati1;
					vec4 u_xlat2;
					int u_xlati3;
					float u_xlat4;
					float u_xlat5;
					vec3 u_xlat6;
					vec3 u_xlat8;
					vec2 u_xlat10;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat6.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat6.x = inversesqrt(u_xlat6.x);
					    u_xlat6.xyz = u_xlat6.xxx * in_NORMAL0.xyz;
					    u_xlati3 = unity_StereoEyeIndex;
					    u_xlat8.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].yyy;
					    u_xlat8.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].xxx + u_xlat8.xyz;
					    u_xlat8.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].zzz + u_xlat8.xyz;
					    u_xlat8.xyz = u_xlat8.xyz + unity_WorldToObject[3].xyz;
					    u_xlat8.xyz = u_xlat8.xyz + (-in_POSITION0.xyz);
					    u_xlat4 = dot(u_xlat8.xyz, u_xlat8.xyz);
					    u_xlat4 = inversesqrt(u_xlat4);
					    u_xlat8.xyz = u_xlat8.xyz * vec3(u_xlat4);
					    u_xlat6.x = dot(u_xlat6.xyz, u_xlat8.xyz);
					    u_xlat6.x = log2(abs(u_xlat6.x));
					    u_xlat6.x = u_xlat6.x * _FresnelStr;
					    u_xlat6.x = exp2(u_xlat6.x);
					    u_xlat6.x = u_xlat6.x + u_xlat6.x;
					    vs_TEXCOORD4 = min(u_xlat6.x, 1.0);
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat5 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat5;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlat10.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati3].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati3].xy + u_xlat10.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendAlpha" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					float u_xlat14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat14 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat2.xyz = vec3(u_xlat14) * u_xlat2.xyz;
					    u_xlat14 = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat3.xyz = vec3(u_xlat14) * in_NORMAL0.xyz;
					    u_xlat2.x = dot(u_xlat3.xyz, u_xlat2.xyz);
					    u_xlat2.x = log2(abs(u_xlat2.x));
					    u_xlat2.x = u_xlat2.x * _FresnelStr;
					    u_xlat2.x = exp2(u_xlat2.x);
					    u_xlat2.x = u_xlat2.x + u_xlat2.x;
					    vs_TEXCOORD4 = min(u_xlat2.x, 1.0);
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat4 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_3_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati1;
					vec4 u_xlat2;
					int u_xlati3;
					float u_xlat4;
					float u_xlat5;
					vec3 u_xlat6;
					vec3 u_xlat8;
					vec2 u_xlat10;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat6.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat6.x = inversesqrt(u_xlat6.x);
					    u_xlat6.xyz = u_xlat6.xxx * in_NORMAL0.xyz;
					    u_xlati3 = unity_StereoEyeIndex;
					    u_xlat8.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].yyy;
					    u_xlat8.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].xxx + u_xlat8.xyz;
					    u_xlat8.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].zzz + u_xlat8.xyz;
					    u_xlat8.xyz = u_xlat8.xyz + unity_WorldToObject[3].xyz;
					    u_xlat8.xyz = u_xlat8.xyz + (-in_POSITION0.xyz);
					    u_xlat4 = dot(u_xlat8.xyz, u_xlat8.xyz);
					    u_xlat4 = inversesqrt(u_xlat4);
					    u_xlat8.xyz = u_xlat8.xyz * vec3(u_xlat4);
					    u_xlat6.x = dot(u_xlat6.xyz, u_xlat8.xyz);
					    u_xlat6.x = log2(abs(u_xlat6.x));
					    u_xlat6.x = u_xlat6.x * _FresnelStr;
					    u_xlat6.x = exp2(u_xlat6.x);
					    u_xlat6.x = u_xlat6.x + u_xlat6.x;
					    vs_TEXCOORD4 = min(u_xlat6.x, 1.0);
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat5 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat5;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlat10.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati3].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati3].xy + u_xlat10.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					float u_xlat14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat14 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat2.xyz = vec3(u_xlat14) * u_xlat2.xyz;
					    u_xlat14 = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat3.xyz = vec3(u_xlat14) * in_NORMAL0.xyz;
					    u_xlat2.x = dot(u_xlat3.xyz, u_xlat2.xyz);
					    u_xlat2.x = log2(abs(u_xlat2.x));
					    u_xlat2.x = u_xlat2.x * _FresnelStr;
					    u_xlat2.x = exp2(u_xlat2.x);
					    u_xlat2.x = u_xlat2.x + u_xlat2.x;
					    vs_TEXCOORD4 = min(u_xlat2.x, 1.0);
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat4 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_3_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati1;
					vec4 u_xlat2;
					int u_xlati3;
					float u_xlat4;
					float u_xlat5;
					vec3 u_xlat6;
					vec3 u_xlat8;
					vec2 u_xlat10;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat6.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat6.x = inversesqrt(u_xlat6.x);
					    u_xlat6.xyz = u_xlat6.xxx * in_NORMAL0.xyz;
					    u_xlati3 = unity_StereoEyeIndex;
					    u_xlat8.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].yyy;
					    u_xlat8.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].xxx + u_xlat8.xyz;
					    u_xlat8.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].zzz + u_xlat8.xyz;
					    u_xlat8.xyz = u_xlat8.xyz + unity_WorldToObject[3].xyz;
					    u_xlat8.xyz = u_xlat8.xyz + (-in_POSITION0.xyz);
					    u_xlat4 = dot(u_xlat8.xyz, u_xlat8.xyz);
					    u_xlat4 = inversesqrt(u_xlat4);
					    u_xlat8.xyz = u_xlat8.xyz * vec3(u_xlat4);
					    u_xlat6.x = dot(u_xlat6.xyz, u_xlat8.xyz);
					    u_xlat6.x = log2(abs(u_xlat6.x));
					    u_xlat6.x = u_xlat6.x * _FresnelStr;
					    u_xlat6.x = exp2(u_xlat6.x);
					    u_xlat6.x = u_xlat6.x + u_xlat6.x;
					    vs_TEXCOORD4 = min(u_xlat6.x, 1.0);
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat5 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat5;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlat10.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati3].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati3].xy + u_xlat10.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendAlpha" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec2 u_xlat4;
					int u_xlati12;
					float u_xlat13;
					bool u_xlatb13;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat0 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat1.x = float(0.0);
					    u_xlat1.y = float(0.0);
					    u_xlat1.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat13 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat13 = u_xlat13 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat13 = float(1.0) / u_xlat13;
					        u_xlat1.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat13) + u_xlat1.xyz;
					    }
					    u_xlat0.xyz = u_xlat1.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendAlpha" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec2 u_xlat4;
					int u_xlati12;
					float u_xlat13;
					bool u_xlatb13;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat0 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat1.x = float(0.0);
					    u_xlat1.y = float(0.0);
					    u_xlat1.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat13 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat13 = u_xlat13 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat13 = float(1.0) / u_xlat13;
					        u_xlat1.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat13) + u_xlat1.xyz;
					    }
					    u_xlat0.xyz = u_xlat1.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendAlpha" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec2 u_xlat4;
					int u_xlati12;
					float u_xlat13;
					bool u_xlatb13;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat0 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat1.x = float(0.0);
					    u_xlat1.y = float(0.0);
					    u_xlat1.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat13 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat13 = u_xlat13 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat13 = float(1.0) / u_xlat13;
					        u_xlat1.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat13) + u_xlat1.xyz;
					    }
					    u_xlat0.xyz = u_xlat1.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec2 u_xlat4;
					int u_xlati12;
					float u_xlat13;
					bool u_xlatb13;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat0 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat1.x = float(0.0);
					    u_xlat1.y = float(0.0);
					    u_xlat1.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat13 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat13 = u_xlat13 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat13 = float(1.0) / u_xlat13;
					        u_xlat1.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat13) + u_xlat1.xyz;
					    }
					    u_xlat0.xyz = u_xlat1.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendAlpha" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec2 u_xlat4;
					int u_xlati12;
					float u_xlat13;
					bool u_xlatb13;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat0 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat1.x = float(0.0);
					    u_xlat1.y = float(0.0);
					    u_xlat1.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat13 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat13 = u_xlat13 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat13 = float(1.0) / u_xlat13;
					        u_xlat1.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat13) + u_xlat1.xyz;
					    }
					    u_xlat0.xyz = u_xlat1.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec2 u_xlat4;
					int u_xlati12;
					float u_xlat13;
					bool u_xlatb13;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat0 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat1.x = float(0.0);
					    u_xlat1.y = float(0.0);
					    u_xlat1.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat13 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat13 = u_xlat13 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat13 = float(1.0) / u_xlat13;
					        u_xlat1.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat13) + u_xlat1.xyz;
					    }
					    u_xlat0.xyz = u_xlat1.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendAlpha" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec2 u_xlat4;
					int u_xlati12;
					float u_xlat13;
					bool u_xlatb13;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat0 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat1.x = float(0.0);
					    u_xlat1.y = float(0.0);
					    u_xlat1.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat13 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat13 = u_xlat13 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat13 = float(1.0) / u_xlat13;
					        u_xlat1.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat13) + u_xlat1.xyz;
					    }
					    u_xlat0.xyz = u_xlat1.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec2 u_xlat4;
					int u_xlati12;
					float u_xlat13;
					bool u_xlatb13;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat0 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat1.x = float(0.0);
					    u_xlat1.y = float(0.0);
					    u_xlat1.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat13 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat13 = u_xlat13 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat13 = float(1.0) / u_xlat13;
					        u_xlat1.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat13) + u_xlat1.xyz;
					    }
					    u_xlat0.xyz = u_xlat1.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendAlpha" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec2 u_xlat4;
					int u_xlati12;
					float u_xlat13;
					bool u_xlatb13;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat0 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat1.x = float(0.0);
					    u_xlat1.y = float(0.0);
					    u_xlat1.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat13 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat13 = u_xlat13 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat13 = float(1.0) / u_xlat13;
					        u_xlat1.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat13) + u_xlat1.xyz;
					    }
					    u_xlat0.xyz = u_xlat1.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendAlpha" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec2 u_xlat4;
					int u_xlati12;
					float u_xlat13;
					bool u_xlatb13;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat0 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat1.x = float(0.0);
					    u_xlat1.y = float(0.0);
					    u_xlat1.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat13 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat13 = u_xlat13 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat13 = float(1.0) / u_xlat13;
					        u_xlat1.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat13) + u_xlat1.xyz;
					    }
					    u_xlat0.xyz = u_xlat1.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendAlpha" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec2 u_xlat4;
					int u_xlati12;
					float u_xlat13;
					bool u_xlatb13;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat0 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat1.x = float(0.0);
					    u_xlat1.y = float(0.0);
					    u_xlat1.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat13 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat13 = u_xlat13 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat13 = float(1.0) / u_xlat13;
					        u_xlat1.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat13) + u_xlat1.xyz;
					    }
					    u_xlat0.xyz = u_xlat1.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec2 u_xlat4;
					int u_xlati12;
					float u_xlat13;
					bool u_xlatb13;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat0 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat1.x = float(0.0);
					    u_xlat1.y = float(0.0);
					    u_xlat1.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat13 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat13 = u_xlat13 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat13 = float(1.0) / u_xlat13;
					        u_xlat1.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat13) + u_xlat1.xyz;
					    }
					    u_xlat0.xyz = u_xlat1.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendAlpha" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec2 u_xlat4;
					int u_xlati12;
					float u_xlat13;
					bool u_xlatb13;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat0 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat1.x = float(0.0);
					    u_xlat1.y = float(0.0);
					    u_xlat1.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat13 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat13 = u_xlat13 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat13 = float(1.0) / u_xlat13;
					        u_xlat1.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat13) + u_xlat1.xyz;
					    }
					    u_xlat0.xyz = u_xlat1.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec2 u_xlat4;
					int u_xlati12;
					float u_xlat13;
					bool u_xlatb13;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat0 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat1.x = float(0.0);
					    u_xlat1.y = float(0.0);
					    u_xlat1.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat13 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat13 = u_xlat13 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat13 = float(1.0) / u_xlat13;
					        u_xlat1.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat13) + u_xlat1.xyz;
					    }
					    u_xlat0.xyz = u_xlat1.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendAlpha" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec2 u_xlat4;
					int u_xlati12;
					float u_xlat13;
					bool u_xlatb13;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat0 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat1.x = float(0.0);
					    u_xlat1.y = float(0.0);
					    u_xlat1.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat13 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat13 = u_xlat13 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat13 = float(1.0) / u_xlat13;
					        u_xlat1.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat13) + u_xlat1.xyz;
					    }
					    u_xlat0.xyz = u_xlat1.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec2 u_xlat4;
					int u_xlati12;
					float u_xlat13;
					bool u_xlatb13;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat0 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat1.x = float(0.0);
					    u_xlat1.y = float(0.0);
					    u_xlat1.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat13 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat13 = u_xlat13 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat13 = float(1.0) / u_xlat13;
					        u_xlat1.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat13) + u_xlat1.xyz;
					    }
					    u_xlat0.xyz = u_xlat1.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendAlpha" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat12;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat2.xyz = vec3(u_xlat12) * u_xlat2.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat2.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					bool u_xlatb3;
					vec2 u_xlat4;
					float u_xlat12;
					int u_xlati12;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat1 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat1.x);
					    u_xlat0.x = float(0.0);
					    u_xlat0.y = float(0.0);
					    u_xlat0.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat1.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat3.x = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat3.x = u_xlat3.x * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat3.x = float(1.0) / u_xlat3.x;
					        u_xlat0.xyz = unity_LightColor[u_xlati_loop_1].xyz * u_xlat3.xxx + u_xlat0.xyz;
					    }
					    u_xlat0.xyz = u_xlat0.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat1.xyz = vec3(u_xlat12) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendAlpha" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat12;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat2.xyz = vec3(u_xlat12) * u_xlat2.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat2.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					bool u_xlatb3;
					vec2 u_xlat4;
					float u_xlat12;
					int u_xlati12;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat1 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat1.x);
					    u_xlat0.x = float(0.0);
					    u_xlat0.y = float(0.0);
					    u_xlat0.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat1.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat3.x = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat3.x = u_xlat3.x * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat3.x = float(1.0) / u_xlat3.x;
					        u_xlat0.xyz = unity_LightColor[u_xlati_loop_1].xyz * u_xlat3.xxx + u_xlat0.xyz;
					    }
					    u_xlat0.xyz = u_xlat0.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat1.xyz = vec3(u_xlat12) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendAlpha" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat12;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat2.xyz = vec3(u_xlat12) * u_xlat2.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat2.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat1.z;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					bool u_xlatb3;
					vec2 u_xlat4;
					float u_xlat12;
					int u_xlati12;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat1 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat1.x);
					    u_xlat0.x = float(0.0);
					    u_xlat0.y = float(0.0);
					    u_xlat0.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat1.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat3.x = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat3.x = u_xlat3.x * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat3.x = float(1.0) / u_xlat3.x;
					        u_xlat0.xyz = unity_LightColor[u_xlati_loop_1].xyz * u_xlat3.xxx + u_xlat0.xyz;
					    }
					    u_xlat0.xyz = u_xlat0.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat1.xyz = vec3(u_xlat12) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat2.z;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat12;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat2.xyz = vec3(u_xlat12) * u_xlat2.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat2.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat1.z;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					bool u_xlatb3;
					vec2 u_xlat4;
					float u_xlat12;
					int u_xlati12;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat1 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat1.x);
					    u_xlat0.x = float(0.0);
					    u_xlat0.y = float(0.0);
					    u_xlat0.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat1.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat3.x = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat3.x = u_xlat3.x * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat3.x = float(1.0) / u_xlat3.x;
					        u_xlat0.xyz = unity_LightColor[u_xlati_loop_1].xyz * u_xlat3.xxx + u_xlat0.xyz;
					    }
					    u_xlat0.xyz = u_xlat0.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat1.xyz = vec3(u_xlat12) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat2.z;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendAlpha" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat12;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat2.xyz = vec3(u_xlat12) * u_xlat2.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat2.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat1.z;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					bool u_xlatb3;
					vec2 u_xlat4;
					float u_xlat12;
					int u_xlati12;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat1 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat1.x);
					    u_xlat0.x = float(0.0);
					    u_xlat0.y = float(0.0);
					    u_xlat0.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat1.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat3.x = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat3.x = u_xlat3.x * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat3.x = float(1.0) / u_xlat3.x;
					        u_xlat0.xyz = unity_LightColor[u_xlati_loop_1].xyz * u_xlat3.xxx + u_xlat0.xyz;
					    }
					    u_xlat0.xyz = u_xlat0.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat1.xyz = vec3(u_xlat12) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat2.z;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat12;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat2.xyz = vec3(u_xlat12) * u_xlat2.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat2.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat1.z;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					bool u_xlatb3;
					vec2 u_xlat4;
					float u_xlat12;
					int u_xlati12;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat1 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat1.x);
					    u_xlat0.x = float(0.0);
					    u_xlat0.y = float(0.0);
					    u_xlat0.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat1.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat3.x = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat3.x = u_xlat3.x * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat3.x = float(1.0) / u_xlat3.x;
					        u_xlat0.xyz = unity_LightColor[u_xlati_loop_1].xyz * u_xlat3.xxx + u_xlat0.xyz;
					    }
					    u_xlat0.xyz = u_xlat0.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat1.xyz = vec3(u_xlat12) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat2.z;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendAlpha" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat12;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat2.xyz = vec3(u_xlat12) * u_xlat2.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat2.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat1.z;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					bool u_xlatb3;
					vec2 u_xlat4;
					float u_xlat12;
					int u_xlati12;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat1 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat1.x);
					    u_xlat0.x = float(0.0);
					    u_xlat0.y = float(0.0);
					    u_xlat0.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat1.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat3.x = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat3.x = u_xlat3.x * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat3.x = float(1.0) / u_xlat3.x;
					        u_xlat0.xyz = unity_LightColor[u_xlati_loop_1].xyz * u_xlat3.xxx + u_xlat0.xyz;
					    }
					    u_xlat0.xyz = u_xlat0.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat1.xyz = vec3(u_xlat12) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat2.z;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat12;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat2.xyz = vec3(u_xlat12) * u_xlat2.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat2.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat1.z;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					bool u_xlatb3;
					vec2 u_xlat4;
					float u_xlat12;
					int u_xlati12;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat1 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat1.x);
					    u_xlat0.x = float(0.0);
					    u_xlat0.y = float(0.0);
					    u_xlat0.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat1.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat3.x = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat3.x = u_xlat3.x * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat3.x = float(1.0) / u_xlat3.x;
					        u_xlat0.xyz = unity_LightColor[u_xlati_loop_1].xyz * u_xlat3.xxx + u_xlat0.xyz;
					    }
					    u_xlat0.xyz = u_xlat0.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat1.xyz = vec3(u_xlat12) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat2.z;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendAlpha" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat12;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat2.xyz = vec3(u_xlat12) * u_xlat2.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat2.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					bool u_xlatb3;
					vec2 u_xlat4;
					float u_xlat12;
					int u_xlati12;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat1 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat1.x);
					    u_xlat0.x = float(0.0);
					    u_xlat0.y = float(0.0);
					    u_xlat0.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat1.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat3.x = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat3.x = u_xlat3.x * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat3.x = float(1.0) / u_xlat3.x;
					        u_xlat0.xyz = unity_LightColor[u_xlati_loop_1].xyz * u_xlat3.xxx + u_xlat0.xyz;
					    }
					    u_xlat0.xyz = u_xlat0.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat1.xyz = vec3(u_xlat12) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendAlpha" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat12;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat2.xyz = vec3(u_xlat12) * u_xlat2.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat2.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					bool u_xlatb3;
					vec2 u_xlat4;
					float u_xlat12;
					int u_xlati12;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat1 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat1.x);
					    u_xlat0.x = float(0.0);
					    u_xlat0.y = float(0.0);
					    u_xlat0.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat1.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat3.x = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat3.x = u_xlat3.x * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat3.x = float(1.0) / u_xlat3.x;
					        u_xlat0.xyz = unity_LightColor[u_xlati_loop_1].xyz * u_xlat3.xxx + u_xlat0.xyz;
					    }
					    u_xlat0.xyz = u_xlat0.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat1.xyz = vec3(u_xlat12) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendAlpha" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat12;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat2.xyz = vec3(u_xlat12) * u_xlat2.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat2.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat1.z;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					bool u_xlatb3;
					vec2 u_xlat4;
					float u_xlat12;
					int u_xlati12;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat1 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat1.x);
					    u_xlat0.x = float(0.0);
					    u_xlat0.y = float(0.0);
					    u_xlat0.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat1.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat3.x = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat3.x = u_xlat3.x * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat3.x = float(1.0) / u_xlat3.x;
					        u_xlat0.xyz = unity_LightColor[u_xlati_loop_1].xyz * u_xlat3.xxx + u_xlat0.xyz;
					    }
					    u_xlat0.xyz = u_xlat0.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat1.xyz = vec3(u_xlat12) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat2.z;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat12;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat2.xyz = vec3(u_xlat12) * u_xlat2.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat2.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat1.z;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					bool u_xlatb3;
					vec2 u_xlat4;
					float u_xlat12;
					int u_xlati12;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat1 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat1.x);
					    u_xlat0.x = float(0.0);
					    u_xlat0.y = float(0.0);
					    u_xlat0.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat1.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat3.x = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat3.x = u_xlat3.x * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat3.x = float(1.0) / u_xlat3.x;
					        u_xlat0.xyz = unity_LightColor[u_xlati_loop_1].xyz * u_xlat3.xxx + u_xlat0.xyz;
					    }
					    u_xlat0.xyz = u_xlat0.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat1.xyz = vec3(u_xlat12) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat2.z;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendAlpha" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat12;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat2.xyz = vec3(u_xlat12) * u_xlat2.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat2.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat1.z;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					bool u_xlatb3;
					vec2 u_xlat4;
					float u_xlat12;
					int u_xlati12;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat1 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat1.x);
					    u_xlat0.x = float(0.0);
					    u_xlat0.y = float(0.0);
					    u_xlat0.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat1.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat3.x = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat3.x = u_xlat3.x * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat3.x = float(1.0) / u_xlat3.x;
					        u_xlat0.xyz = unity_LightColor[u_xlati_loop_1].xyz * u_xlat3.xxx + u_xlat0.xyz;
					    }
					    u_xlat0.xyz = u_xlat0.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat1.xyz = vec3(u_xlat12) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat2.z;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat12;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat2.xyz = vec3(u_xlat12) * u_xlat2.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat2.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat1.z;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					bool u_xlatb3;
					vec2 u_xlat4;
					float u_xlat12;
					int u_xlati12;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat1 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat1.x);
					    u_xlat0.x = float(0.0);
					    u_xlat0.y = float(0.0);
					    u_xlat0.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat1.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat3.x = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat3.x = u_xlat3.x * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat3.x = float(1.0) / u_xlat3.x;
					        u_xlat0.xyz = unity_LightColor[u_xlati_loop_1].xyz * u_xlat3.xxx + u_xlat0.xyz;
					    }
					    u_xlat0.xyz = u_xlat0.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat1.xyz = vec3(u_xlat12) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat2.z;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendAlpha" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat12;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat2.xyz = vec3(u_xlat12) * u_xlat2.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat2.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat1.z;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					bool u_xlatb3;
					vec2 u_xlat4;
					float u_xlat12;
					int u_xlati12;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat1 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat1.x);
					    u_xlat0.x = float(0.0);
					    u_xlat0.y = float(0.0);
					    u_xlat0.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat1.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat3.x = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat3.x = u_xlat3.x * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat3.x = float(1.0) / u_xlat3.x;
					        u_xlat0.xyz = unity_LightColor[u_xlati_loop_1].xyz * u_xlat3.xxx + u_xlat0.xyz;
					    }
					    u_xlat0.xyz = u_xlat0.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat1.xyz = vec3(u_xlat12) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat2.z;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat12;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat2.xyz = vec3(u_xlat12) * u_xlat2.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat2.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat1.z;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					bool u_xlatb3;
					vec2 u_xlat4;
					float u_xlat12;
					int u_xlati12;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat1 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat1.x);
					    u_xlat0.x = float(0.0);
					    u_xlat0.y = float(0.0);
					    u_xlat0.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat1.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat3.x = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat3.x = u_xlat3.x * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat3.x = float(1.0) / u_xlat3.x;
					        u_xlat0.xyz = unity_LightColor[u_xlati_loop_1].xyz * u_xlat3.xxx + u_xlat0.xyz;
					    }
					    u_xlat0.xyz = u_xlat0.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat1.xyz = vec3(u_xlat12) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat2.z;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendAlpha" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec2 u_xlat4;
					int u_xlati12;
					float u_xlat13;
					bool u_xlatb13;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat0 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat1.x = float(0.0);
					    u_xlat1.y = float(0.0);
					    u_xlat1.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat13 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat13 = u_xlat13 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat13 = float(1.0) / u_xlat13;
					        u_xlat1.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat13) + u_xlat1.xyz;
					    }
					    u_xlat0.xyz = u_xlat1.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendAlpha" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec2 u_xlat4;
					int u_xlati12;
					float u_xlat13;
					bool u_xlatb13;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat0 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat1.x = float(0.0);
					    u_xlat1.y = float(0.0);
					    u_xlat1.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat13 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat13 = u_xlat13 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat13 = float(1.0) / u_xlat13;
					        u_xlat1.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat13) + u_xlat1.xyz;
					    }
					    u_xlat0.xyz = u_xlat1.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendAlpha" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec2 u_xlat4;
					int u_xlati12;
					float u_xlat13;
					bool u_xlatb13;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat0 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat1.x = float(0.0);
					    u_xlat1.y = float(0.0);
					    u_xlat1.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat13 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat13 = u_xlat13 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat13 = float(1.0) / u_xlat13;
					        u_xlat1.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat13) + u_xlat1.xyz;
					    }
					    u_xlat0.xyz = u_xlat1.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec2 u_xlat4;
					int u_xlati12;
					float u_xlat13;
					bool u_xlatb13;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat0 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat1.x = float(0.0);
					    u_xlat1.y = float(0.0);
					    u_xlat1.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat13 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat13 = u_xlat13 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat13 = float(1.0) / u_xlat13;
					        u_xlat1.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat13) + u_xlat1.xyz;
					    }
					    u_xlat0.xyz = u_xlat1.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendAlpha" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec2 u_xlat4;
					int u_xlati12;
					float u_xlat13;
					bool u_xlatb13;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat0 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat1.x = float(0.0);
					    u_xlat1.y = float(0.0);
					    u_xlat1.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat13 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat13 = u_xlat13 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat13 = float(1.0) / u_xlat13;
					        u_xlat1.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat13) + u_xlat1.xyz;
					    }
					    u_xlat0.xyz = u_xlat1.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec2 u_xlat4;
					int u_xlati12;
					float u_xlat13;
					bool u_xlatb13;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat0 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat1.x = float(0.0);
					    u_xlat1.y = float(0.0);
					    u_xlat1.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat13 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat13 = u_xlat13 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat13 = float(1.0) / u_xlat13;
					        u_xlat1.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat13) + u_xlat1.xyz;
					    }
					    u_xlat0.xyz = u_xlat1.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendAlpha" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec2 u_xlat4;
					int u_xlati12;
					float u_xlat13;
					bool u_xlatb13;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat0 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat1.x = float(0.0);
					    u_xlat1.y = float(0.0);
					    u_xlat1.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat13 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat13 = u_xlat13 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat13 = float(1.0) / u_xlat13;
					        u_xlat1.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat13) + u_xlat1.xyz;
					    }
					    u_xlat0.xyz = u_xlat1.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec2 u_xlat4;
					int u_xlati12;
					float u_xlat13;
					bool u_xlatb13;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat0 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat1.x = float(0.0);
					    u_xlat1.y = float(0.0);
					    u_xlat1.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat13 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat13 = u_xlat13 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat13 = float(1.0) / u_xlat13;
					        u_xlat1.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat13) + u_xlat1.xyz;
					    }
					    u_xlat0.xyz = u_xlat1.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendAlpha" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec2 u_xlat4;
					int u_xlati12;
					float u_xlat13;
					bool u_xlatb13;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat0 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat1.x = float(0.0);
					    u_xlat1.y = float(0.0);
					    u_xlat1.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat13 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat13 = u_xlat13 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat13 = float(1.0) / u_xlat13;
					        u_xlat1.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat13) + u_xlat1.xyz;
					    }
					    u_xlat0.xyz = u_xlat1.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendAlpha" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec2 u_xlat4;
					int u_xlati12;
					float u_xlat13;
					bool u_xlatb13;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat0 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat1.x = float(0.0);
					    u_xlat1.y = float(0.0);
					    u_xlat1.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat13 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat13 = u_xlat13 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat13 = float(1.0) / u_xlat13;
					        u_xlat1.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat13) + u_xlat1.xyz;
					    }
					    u_xlat0.xyz = u_xlat1.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendAlpha" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec2 u_xlat4;
					int u_xlati12;
					float u_xlat13;
					bool u_xlatb13;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat0 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat1.x = float(0.0);
					    u_xlat1.y = float(0.0);
					    u_xlat1.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat13 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat13 = u_xlat13 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat13 = float(1.0) / u_xlat13;
					        u_xlat1.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat13) + u_xlat1.xyz;
					    }
					    u_xlat0.xyz = u_xlat1.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec2 u_xlat4;
					int u_xlati12;
					float u_xlat13;
					bool u_xlatb13;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat0 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat1.x = float(0.0);
					    u_xlat1.y = float(0.0);
					    u_xlat1.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat13 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat13 = u_xlat13 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat13 = float(1.0) / u_xlat13;
					        u_xlat1.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat13) + u_xlat1.xyz;
					    }
					    u_xlat0.xyz = u_xlat1.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendAlpha" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec2 u_xlat4;
					int u_xlati12;
					float u_xlat13;
					bool u_xlatb13;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat0 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat1.x = float(0.0);
					    u_xlat1.y = float(0.0);
					    u_xlat1.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat13 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat13 = u_xlat13 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat13 = float(1.0) / u_xlat13;
					        u_xlat1.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat13) + u_xlat1.xyz;
					    }
					    u_xlat0.xyz = u_xlat1.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec2 u_xlat4;
					int u_xlati12;
					float u_xlat13;
					bool u_xlatb13;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat0 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat1.x = float(0.0);
					    u_xlat1.y = float(0.0);
					    u_xlat1.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat13 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat13 = u_xlat13 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat13 = float(1.0) / u_xlat13;
					        u_xlat1.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat13) + u_xlat1.xyz;
					    }
					    u_xlat0.xyz = u_xlat1.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendAlpha" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec2 u_xlat4;
					int u_xlati12;
					float u_xlat13;
					bool u_xlatb13;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat0 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat1.x = float(0.0);
					    u_xlat1.y = float(0.0);
					    u_xlat1.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat13 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat13 = u_xlat13 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat13 = float(1.0) / u_xlat13;
					        u_xlat1.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat13) + u_xlat1.xyz;
					    }
					    u_xlat0.xyz = u_xlat1.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec2 u_xlat4;
					int u_xlati12;
					float u_xlat13;
					bool u_xlatb13;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat0 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat1.x = float(0.0);
					    u_xlat1.y = float(0.0);
					    u_xlat1.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat13 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat13 = u_xlat13 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat13 = float(1.0) / u_xlat13;
					        u_xlat1.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat13) + u_xlat1.xyz;
					    }
					    u_xlat0.xyz = u_xlat1.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendAlpha" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat12;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat2.xyz = vec3(u_xlat12) * u_xlat2.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat2.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					bool u_xlatb3;
					vec2 u_xlat4;
					float u_xlat12;
					int u_xlati12;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat1 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat1.x);
					    u_xlat0.x = float(0.0);
					    u_xlat0.y = float(0.0);
					    u_xlat0.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat1.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat3.x = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat3.x = u_xlat3.x * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat3.x = float(1.0) / u_xlat3.x;
					        u_xlat0.xyz = unity_LightColor[u_xlati_loop_1].xyz * u_xlat3.xxx + u_xlat0.xyz;
					    }
					    u_xlat0.xyz = u_xlat0.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat1.xyz = vec3(u_xlat12) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendAlpha" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat12;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat2.xyz = vec3(u_xlat12) * u_xlat2.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat2.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					bool u_xlatb3;
					vec2 u_xlat4;
					float u_xlat12;
					int u_xlati12;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat1 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat1.x);
					    u_xlat0.x = float(0.0);
					    u_xlat0.y = float(0.0);
					    u_xlat0.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat1.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat3.x = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat3.x = u_xlat3.x * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat3.x = float(1.0) / u_xlat3.x;
					        u_xlat0.xyz = unity_LightColor[u_xlati_loop_1].xyz * u_xlat3.xxx + u_xlat0.xyz;
					    }
					    u_xlat0.xyz = u_xlat0.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat1.xyz = vec3(u_xlat12) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendAlpha" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat12;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat2.xyz = vec3(u_xlat12) * u_xlat2.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat2.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat1.z;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					bool u_xlatb3;
					vec2 u_xlat4;
					float u_xlat12;
					int u_xlati12;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat1 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat1.x);
					    u_xlat0.x = float(0.0);
					    u_xlat0.y = float(0.0);
					    u_xlat0.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat1.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat3.x = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat3.x = u_xlat3.x * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat3.x = float(1.0) / u_xlat3.x;
					        u_xlat0.xyz = unity_LightColor[u_xlati_loop_1].xyz * u_xlat3.xxx + u_xlat0.xyz;
					    }
					    u_xlat0.xyz = u_xlat0.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat1.xyz = vec3(u_xlat12) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat2.z;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat12;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat2.xyz = vec3(u_xlat12) * u_xlat2.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat2.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat1.z;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					bool u_xlatb3;
					vec2 u_xlat4;
					float u_xlat12;
					int u_xlati12;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat1 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat1.x);
					    u_xlat0.x = float(0.0);
					    u_xlat0.y = float(0.0);
					    u_xlat0.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat1.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat3.x = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat3.x = u_xlat3.x * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat3.x = float(1.0) / u_xlat3.x;
					        u_xlat0.xyz = unity_LightColor[u_xlati_loop_1].xyz * u_xlat3.xxx + u_xlat0.xyz;
					    }
					    u_xlat0.xyz = u_xlat0.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat1.xyz = vec3(u_xlat12) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat2.z;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendAlpha" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat12;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat2.xyz = vec3(u_xlat12) * u_xlat2.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat2.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat1.z;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					bool u_xlatb3;
					vec2 u_xlat4;
					float u_xlat12;
					int u_xlati12;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat1 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat1.x);
					    u_xlat0.x = float(0.0);
					    u_xlat0.y = float(0.0);
					    u_xlat0.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat1.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat3.x = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat3.x = u_xlat3.x * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat3.x = float(1.0) / u_xlat3.x;
					        u_xlat0.xyz = unity_LightColor[u_xlati_loop_1].xyz * u_xlat3.xxx + u_xlat0.xyz;
					    }
					    u_xlat0.xyz = u_xlat0.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat1.xyz = vec3(u_xlat12) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat2.z;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat12;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat2.xyz = vec3(u_xlat12) * u_xlat2.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat2.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat1.z;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					bool u_xlatb3;
					vec2 u_xlat4;
					float u_xlat12;
					int u_xlati12;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat1 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat1.x);
					    u_xlat0.x = float(0.0);
					    u_xlat0.y = float(0.0);
					    u_xlat0.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat1.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat3.x = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat3.x = u_xlat3.x * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat3.x = float(1.0) / u_xlat3.x;
					        u_xlat0.xyz = unity_LightColor[u_xlati_loop_1].xyz * u_xlat3.xxx + u_xlat0.xyz;
					    }
					    u_xlat0.xyz = u_xlat0.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat1.xyz = vec3(u_xlat12) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat2.z;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendAlpha" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat12;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat2.xyz = vec3(u_xlat12) * u_xlat2.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat2.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat1.z;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					bool u_xlatb3;
					vec2 u_xlat4;
					float u_xlat12;
					int u_xlati12;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat1 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat1.x);
					    u_xlat0.x = float(0.0);
					    u_xlat0.y = float(0.0);
					    u_xlat0.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat1.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat3.x = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat3.x = u_xlat3.x * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat3.x = float(1.0) / u_xlat3.x;
					        u_xlat0.xyz = unity_LightColor[u_xlati_loop_1].xyz * u_xlat3.xxx + u_xlat0.xyz;
					    }
					    u_xlat0.xyz = u_xlat0.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat1.xyz = vec3(u_xlat12) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat2.z;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat12;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat2.xyz = vec3(u_xlat12) * u_xlat2.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat2.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat1.z;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					bool u_xlatb3;
					vec2 u_xlat4;
					float u_xlat12;
					int u_xlati12;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat1 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat1.x);
					    u_xlat0.x = float(0.0);
					    u_xlat0.y = float(0.0);
					    u_xlat0.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat1.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat3.x = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat3.x = u_xlat3.x * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat3.x = float(1.0) / u_xlat3.x;
					        u_xlat0.xyz = unity_LightColor[u_xlati_loop_1].xyz * u_xlat3.xxx + u_xlat0.xyz;
					    }
					    u_xlat0.xyz = u_xlat0.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat1.xyz = vec3(u_xlat12) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat2.z;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendAlpha" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat12;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat2.xyz = vec3(u_xlat12) * u_xlat2.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat2.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					bool u_xlatb3;
					vec2 u_xlat4;
					float u_xlat12;
					int u_xlati12;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat1 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat1.x);
					    u_xlat0.x = float(0.0);
					    u_xlat0.y = float(0.0);
					    u_xlat0.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat1.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat3.x = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat3.x = u_xlat3.x * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat3.x = float(1.0) / u_xlat3.x;
					        u_xlat0.xyz = unity_LightColor[u_xlati_loop_1].xyz * u_xlat3.xxx + u_xlat0.xyz;
					    }
					    u_xlat0.xyz = u_xlat0.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat1.xyz = vec3(u_xlat12) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendAlpha" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat12;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat2.xyz = vec3(u_xlat12) * u_xlat2.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat2.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					bool u_xlatb3;
					vec2 u_xlat4;
					float u_xlat12;
					int u_xlati12;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat1 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat1.x);
					    u_xlat0.x = float(0.0);
					    u_xlat0.y = float(0.0);
					    u_xlat0.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat1.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat3.x = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat3.x = u_xlat3.x * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat3.x = float(1.0) / u_xlat3.x;
					        u_xlat0.xyz = unity_LightColor[u_xlati_loop_1].xyz * u_xlat3.xxx + u_xlat0.xyz;
					    }
					    u_xlat0.xyz = u_xlat0.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat1.xyz = vec3(u_xlat12) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendAlpha" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat12;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat2.xyz = vec3(u_xlat12) * u_xlat2.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat2.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat1.z;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					bool u_xlatb3;
					vec2 u_xlat4;
					float u_xlat12;
					int u_xlati12;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat1 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat1.x);
					    u_xlat0.x = float(0.0);
					    u_xlat0.y = float(0.0);
					    u_xlat0.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat1.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat3.x = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat3.x = u_xlat3.x * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat3.x = float(1.0) / u_xlat3.x;
					        u_xlat0.xyz = unity_LightColor[u_xlati_loop_1].xyz * u_xlat3.xxx + u_xlat0.xyz;
					    }
					    u_xlat0.xyz = u_xlat0.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat1.xyz = vec3(u_xlat12) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat2.z;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat12;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat2.xyz = vec3(u_xlat12) * u_xlat2.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat2.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat1.z;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					bool u_xlatb3;
					vec2 u_xlat4;
					float u_xlat12;
					int u_xlati12;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat1 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat1.x);
					    u_xlat0.x = float(0.0);
					    u_xlat0.y = float(0.0);
					    u_xlat0.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat1.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat3.x = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat3.x = u_xlat3.x * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat3.x = float(1.0) / u_xlat3.x;
					        u_xlat0.xyz = unity_LightColor[u_xlati_loop_1].xyz * u_xlat3.xxx + u_xlat0.xyz;
					    }
					    u_xlat0.xyz = u_xlat0.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat1.xyz = vec3(u_xlat12) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat2.z;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendAlpha" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat12;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat2.xyz = vec3(u_xlat12) * u_xlat2.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat2.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat1.z;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					bool u_xlatb3;
					vec2 u_xlat4;
					float u_xlat12;
					int u_xlati12;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat1 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat1.x);
					    u_xlat0.x = float(0.0);
					    u_xlat0.y = float(0.0);
					    u_xlat0.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat1.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat3.x = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat3.x = u_xlat3.x * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat3.x = float(1.0) / u_xlat3.x;
					        u_xlat0.xyz = unity_LightColor[u_xlati_loop_1].xyz * u_xlat3.xxx + u_xlat0.xyz;
					    }
					    u_xlat0.xyz = u_xlat0.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat1.xyz = vec3(u_xlat12) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat2.z;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat12;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat2.xyz = vec3(u_xlat12) * u_xlat2.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat2.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat1.z;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					bool u_xlatb3;
					vec2 u_xlat4;
					float u_xlat12;
					int u_xlati12;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat1 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat1.x);
					    u_xlat0.x = float(0.0);
					    u_xlat0.y = float(0.0);
					    u_xlat0.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat1.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat3.x = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat3.x = u_xlat3.x * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat3.x = float(1.0) / u_xlat3.x;
					        u_xlat0.xyz = unity_LightColor[u_xlati_loop_1].xyz * u_xlat3.xxx + u_xlat0.xyz;
					    }
					    u_xlat0.xyz = u_xlat0.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat1.xyz = vec3(u_xlat12) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat2.z;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendAlpha" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat12;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat2.xyz = vec3(u_xlat12) * u_xlat2.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat2.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat1.z;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					bool u_xlatb3;
					vec2 u_xlat4;
					float u_xlat12;
					int u_xlati12;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat1 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat1.x);
					    u_xlat0.x = float(0.0);
					    u_xlat0.y = float(0.0);
					    u_xlat0.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat1.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat3.x = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat3.x = u_xlat3.x * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat3.x = float(1.0) / u_xlat3.x;
					        u_xlat0.xyz = unity_LightColor[u_xlati_loop_1].xyz * u_xlat3.xxx + u_xlat0.xyz;
					    }
					    u_xlat0.xyz = u_xlat0.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat1.xyz = vec3(u_xlat12) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat2.z;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat12;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat2.xyz = vec3(u_xlat12) * u_xlat2.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat2.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat1.z;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					bool u_xlatb3;
					vec2 u_xlat4;
					float u_xlat12;
					int u_xlati12;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat1 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat1.x);
					    u_xlat0.x = float(0.0);
					    u_xlat0.y = float(0.0);
					    u_xlat0.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat1.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat3.x = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat3.x = u_xlat3.x * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat3.x = float(1.0) / u_xlat3.x;
					        u_xlat0.xyz = unity_LightColor[u_xlati_loop_1].xyz * u_xlat3.xxx + u_xlat0.xyz;
					    }
					    u_xlat0.xyz = u_xlat0.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat1.xyz = vec3(u_xlat12) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat2.z;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendAlpha" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec2 u_xlat4;
					int u_xlati12;
					float u_xlat13;
					bool u_xlatb13;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat0 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat1.x = float(0.0);
					    u_xlat1.y = float(0.0);
					    u_xlat1.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat13 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat13 = u_xlat13 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat13 = float(1.0) / u_xlat13;
					        u_xlat1.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat13) + u_xlat1.xyz;
					    }
					    u_xlat0.xyz = u_xlat1.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendAlpha" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec2 u_xlat4;
					int u_xlati12;
					float u_xlat13;
					bool u_xlatb13;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat0 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat1.x = float(0.0);
					    u_xlat1.y = float(0.0);
					    u_xlat1.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat13 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat13 = u_xlat13 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat13 = float(1.0) / u_xlat13;
					        u_xlat1.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat13) + u_xlat1.xyz;
					    }
					    u_xlat0.xyz = u_xlat1.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendAlpha" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec2 u_xlat4;
					int u_xlati12;
					float u_xlat13;
					bool u_xlatb13;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat0 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat1.x = float(0.0);
					    u_xlat1.y = float(0.0);
					    u_xlat1.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat13 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat13 = u_xlat13 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat13 = float(1.0) / u_xlat13;
					        u_xlat1.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat13) + u_xlat1.xyz;
					    }
					    u_xlat0.xyz = u_xlat1.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec2 u_xlat4;
					int u_xlati12;
					float u_xlat13;
					bool u_xlatb13;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat0 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat1.x = float(0.0);
					    u_xlat1.y = float(0.0);
					    u_xlat1.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat13 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat13 = u_xlat13 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat13 = float(1.0) / u_xlat13;
					        u_xlat1.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat13) + u_xlat1.xyz;
					    }
					    u_xlat0.xyz = u_xlat1.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendAlpha" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec2 u_xlat4;
					int u_xlati12;
					float u_xlat13;
					bool u_xlatb13;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat0 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat1.x = float(0.0);
					    u_xlat1.y = float(0.0);
					    u_xlat1.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat13 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat13 = u_xlat13 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat13 = float(1.0) / u_xlat13;
					        u_xlat1.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat13) + u_xlat1.xyz;
					    }
					    u_xlat0.xyz = u_xlat1.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec2 u_xlat4;
					int u_xlati12;
					float u_xlat13;
					bool u_xlatb13;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat0 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat1.x = float(0.0);
					    u_xlat1.y = float(0.0);
					    u_xlat1.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat13 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat13 = u_xlat13 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat13 = float(1.0) / u_xlat13;
					        u_xlat1.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat13) + u_xlat1.xyz;
					    }
					    u_xlat0.xyz = u_xlat1.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendAlpha" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec2 u_xlat4;
					int u_xlati12;
					float u_xlat13;
					bool u_xlatb13;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat0 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat1.x = float(0.0);
					    u_xlat1.y = float(0.0);
					    u_xlat1.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat13 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat13 = u_xlat13 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat13 = float(1.0) / u_xlat13;
					        u_xlat1.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat13) + u_xlat1.xyz;
					    }
					    u_xlat0.xyz = u_xlat1.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec2 u_xlat4;
					int u_xlati12;
					float u_xlat13;
					bool u_xlatb13;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat0 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat1.x = float(0.0);
					    u_xlat1.y = float(0.0);
					    u_xlat1.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat13 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat13 = u_xlat13 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat13 = float(1.0) / u_xlat13;
					        u_xlat1.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat13) + u_xlat1.xyz;
					    }
					    u_xlat0.xyz = u_xlat1.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendAlpha" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec2 u_xlat4;
					int u_xlati12;
					float u_xlat13;
					bool u_xlatb13;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat0 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat1.x = float(0.0);
					    u_xlat1.y = float(0.0);
					    u_xlat1.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat13 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat13 = u_xlat13 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat13 = float(1.0) / u_xlat13;
					        u_xlat1.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat13) + u_xlat1.xyz;
					    }
					    u_xlat0.xyz = u_xlat1.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendAlpha" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec2 u_xlat4;
					int u_xlati12;
					float u_xlat13;
					bool u_xlatb13;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat0 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat1.x = float(0.0);
					    u_xlat1.y = float(0.0);
					    u_xlat1.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat13 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat13 = u_xlat13 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat13 = float(1.0) / u_xlat13;
					        u_xlat1.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat13) + u_xlat1.xyz;
					    }
					    u_xlat0.xyz = u_xlat1.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendAlpha" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec2 u_xlat4;
					int u_xlati12;
					float u_xlat13;
					bool u_xlatb13;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat0 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat1.x = float(0.0);
					    u_xlat1.y = float(0.0);
					    u_xlat1.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat13 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat13 = u_xlat13 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat13 = float(1.0) / u_xlat13;
					        u_xlat1.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat13) + u_xlat1.xyz;
					    }
					    u_xlat0.xyz = u_xlat1.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec2 u_xlat4;
					int u_xlati12;
					float u_xlat13;
					bool u_xlatb13;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat0 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat1.x = float(0.0);
					    u_xlat1.y = float(0.0);
					    u_xlat1.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat13 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat13 = u_xlat13 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat13 = float(1.0) / u_xlat13;
					        u_xlat1.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat13) + u_xlat1.xyz;
					    }
					    u_xlat0.xyz = u_xlat1.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendAlpha" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec2 u_xlat4;
					int u_xlati12;
					float u_xlat13;
					bool u_xlatb13;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat0 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat1.x = float(0.0);
					    u_xlat1.y = float(0.0);
					    u_xlat1.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat13 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat13 = u_xlat13 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat13 = float(1.0) / u_xlat13;
					        u_xlat1.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat13) + u_xlat1.xyz;
					    }
					    u_xlat0.xyz = u_xlat1.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec2 u_xlat4;
					int u_xlati12;
					float u_xlat13;
					bool u_xlatb13;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat0 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat1.x = float(0.0);
					    u_xlat1.y = float(0.0);
					    u_xlat1.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat13 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat13 = u_xlat13 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat13 = float(1.0) / u_xlat13;
					        u_xlat1.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat13) + u_xlat1.xyz;
					    }
					    u_xlat0.xyz = u_xlat1.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendAlpha" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec2 u_xlat4;
					int u_xlati12;
					float u_xlat13;
					bool u_xlatb13;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat0 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat1.x = float(0.0);
					    u_xlat1.y = float(0.0);
					    u_xlat1.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat13 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat13 = u_xlat13 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat13 = float(1.0) / u_xlat13;
					        u_xlat1.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat13) + u_xlat1.xyz;
					    }
					    u_xlat0.xyz = u_xlat1.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec2 u_xlat4;
					int u_xlati12;
					float u_xlat13;
					bool u_xlatb13;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat0 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat1.x = float(0.0);
					    u_xlat1.y = float(0.0);
					    u_xlat1.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat13 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat13 = u_xlat13 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat13 = float(1.0) / u_xlat13;
					        u_xlat1.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat13) + u_xlat1.xyz;
					    }
					    u_xlat0.xyz = u_xlat1.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendAlpha" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat12;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat2.xyz = vec3(u_xlat12) * u_xlat2.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat2.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					bool u_xlatb3;
					vec2 u_xlat4;
					float u_xlat12;
					int u_xlati12;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat1 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat1.x);
					    u_xlat0.x = float(0.0);
					    u_xlat0.y = float(0.0);
					    u_xlat0.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat1.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat3.x = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat3.x = u_xlat3.x * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat3.x = float(1.0) / u_xlat3.x;
					        u_xlat0.xyz = unity_LightColor[u_xlati_loop_1].xyz * u_xlat3.xxx + u_xlat0.xyz;
					    }
					    u_xlat0.xyz = u_xlat0.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat1.xyz = vec3(u_xlat12) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendAlpha" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat12;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat2.xyz = vec3(u_xlat12) * u_xlat2.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat2.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					bool u_xlatb3;
					vec2 u_xlat4;
					float u_xlat12;
					int u_xlati12;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat1 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat1.x);
					    u_xlat0.x = float(0.0);
					    u_xlat0.y = float(0.0);
					    u_xlat0.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat1.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat3.x = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat3.x = u_xlat3.x * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat3.x = float(1.0) / u_xlat3.x;
					        u_xlat0.xyz = unity_LightColor[u_xlati_loop_1].xyz * u_xlat3.xxx + u_xlat0.xyz;
					    }
					    u_xlat0.xyz = u_xlat0.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat1.xyz = vec3(u_xlat12) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendAlpha" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat12;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat2.xyz = vec3(u_xlat12) * u_xlat2.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat2.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat1.z;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					bool u_xlatb3;
					vec2 u_xlat4;
					float u_xlat12;
					int u_xlati12;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat1 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat1.x);
					    u_xlat0.x = float(0.0);
					    u_xlat0.y = float(0.0);
					    u_xlat0.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat1.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat3.x = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat3.x = u_xlat3.x * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat3.x = float(1.0) / u_xlat3.x;
					        u_xlat0.xyz = unity_LightColor[u_xlati_loop_1].xyz * u_xlat3.xxx + u_xlat0.xyz;
					    }
					    u_xlat0.xyz = u_xlat0.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat1.xyz = vec3(u_xlat12) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat2.z;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat12;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat2.xyz = vec3(u_xlat12) * u_xlat2.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat2.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat1.z;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					bool u_xlatb3;
					vec2 u_xlat4;
					float u_xlat12;
					int u_xlati12;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat1 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat1.x);
					    u_xlat0.x = float(0.0);
					    u_xlat0.y = float(0.0);
					    u_xlat0.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat1.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat3.x = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat3.x = u_xlat3.x * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat3.x = float(1.0) / u_xlat3.x;
					        u_xlat0.xyz = unity_LightColor[u_xlati_loop_1].xyz * u_xlat3.xxx + u_xlat0.xyz;
					    }
					    u_xlat0.xyz = u_xlat0.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat1.xyz = vec3(u_xlat12) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat2.z;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendAlpha" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat12;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat2.xyz = vec3(u_xlat12) * u_xlat2.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat2.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat1.z;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					bool u_xlatb3;
					vec2 u_xlat4;
					float u_xlat12;
					int u_xlati12;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat1 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat1.x);
					    u_xlat0.x = float(0.0);
					    u_xlat0.y = float(0.0);
					    u_xlat0.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat1.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat3.x = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat3.x = u_xlat3.x * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat3.x = float(1.0) / u_xlat3.x;
					        u_xlat0.xyz = unity_LightColor[u_xlati_loop_1].xyz * u_xlat3.xxx + u_xlat0.xyz;
					    }
					    u_xlat0.xyz = u_xlat0.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat1.xyz = vec3(u_xlat12) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat2.z;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat12;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat2.xyz = vec3(u_xlat12) * u_xlat2.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat2.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat1.z;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					bool u_xlatb3;
					vec2 u_xlat4;
					float u_xlat12;
					int u_xlati12;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat1 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat1.x);
					    u_xlat0.x = float(0.0);
					    u_xlat0.y = float(0.0);
					    u_xlat0.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat1.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat3.x = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat3.x = u_xlat3.x * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat3.x = float(1.0) / u_xlat3.x;
					        u_xlat0.xyz = unity_LightColor[u_xlati_loop_1].xyz * u_xlat3.xxx + u_xlat0.xyz;
					    }
					    u_xlat0.xyz = u_xlat0.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat1.xyz = vec3(u_xlat12) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat2.z;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendAlpha" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat12;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat2.xyz = vec3(u_xlat12) * u_xlat2.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat2.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat1.z;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					bool u_xlatb3;
					vec2 u_xlat4;
					float u_xlat12;
					int u_xlati12;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat1 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat1.x);
					    u_xlat0.x = float(0.0);
					    u_xlat0.y = float(0.0);
					    u_xlat0.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat1.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat3.x = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat3.x = u_xlat3.x * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat3.x = float(1.0) / u_xlat3.x;
					        u_xlat0.xyz = unity_LightColor[u_xlati_loop_1].xyz * u_xlat3.xxx + u_xlat0.xyz;
					    }
					    u_xlat0.xyz = u_xlat0.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat1.xyz = vec3(u_xlat12) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat2.z;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat12;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat2.xyz = vec3(u_xlat12) * u_xlat2.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat2.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat1.z;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					bool u_xlatb3;
					vec2 u_xlat4;
					float u_xlat12;
					int u_xlati12;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat1 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat1.x);
					    u_xlat0.x = float(0.0);
					    u_xlat0.y = float(0.0);
					    u_xlat0.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat1.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat3.x = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat3.x = u_xlat3.x * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat3.x = float(1.0) / u_xlat3.x;
					        u_xlat0.xyz = unity_LightColor[u_xlati_loop_1].xyz * u_xlat3.xxx + u_xlat0.xyz;
					    }
					    u_xlat0.xyz = u_xlat0.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat1.xyz = vec3(u_xlat12) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat2.z;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendAlpha" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat12;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat2.xyz = vec3(u_xlat12) * u_xlat2.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat2.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					bool u_xlatb3;
					vec2 u_xlat4;
					float u_xlat12;
					int u_xlati12;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat1 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat1.x);
					    u_xlat0.x = float(0.0);
					    u_xlat0.y = float(0.0);
					    u_xlat0.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat1.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat3.x = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat3.x = u_xlat3.x * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat3.x = float(1.0) / u_xlat3.x;
					        u_xlat0.xyz = unity_LightColor[u_xlati_loop_1].xyz * u_xlat3.xxx + u_xlat0.xyz;
					    }
					    u_xlat0.xyz = u_xlat0.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat1.xyz = vec3(u_xlat12) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendAlpha" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat12;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat2.xyz = vec3(u_xlat12) * u_xlat2.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat2.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					bool u_xlatb3;
					vec2 u_xlat4;
					float u_xlat12;
					int u_xlati12;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat1 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat1.x);
					    u_xlat0.x = float(0.0);
					    u_xlat0.y = float(0.0);
					    u_xlat0.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat1.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat3.x = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat3.x = u_xlat3.x * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat3.x = float(1.0) / u_xlat3.x;
					        u_xlat0.xyz = unity_LightColor[u_xlati_loop_1].xyz * u_xlat3.xxx + u_xlat0.xyz;
					    }
					    u_xlat0.xyz = u_xlat0.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat1.xyz = vec3(u_xlat12) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendAlpha" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat12;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat2.xyz = vec3(u_xlat12) * u_xlat2.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat2.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat1.z;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					bool u_xlatb3;
					vec2 u_xlat4;
					float u_xlat12;
					int u_xlati12;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat1 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat1.x);
					    u_xlat0.x = float(0.0);
					    u_xlat0.y = float(0.0);
					    u_xlat0.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat1.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat3.x = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat3.x = u_xlat3.x * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat3.x = float(1.0) / u_xlat3.x;
					        u_xlat0.xyz = unity_LightColor[u_xlati_loop_1].xyz * u_xlat3.xxx + u_xlat0.xyz;
					    }
					    u_xlat0.xyz = u_xlat0.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat1.xyz = vec3(u_xlat12) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat2.z;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat12;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat2.xyz = vec3(u_xlat12) * u_xlat2.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat2.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat1.z;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					bool u_xlatb3;
					vec2 u_xlat4;
					float u_xlat12;
					int u_xlati12;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat1 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat1.x);
					    u_xlat0.x = float(0.0);
					    u_xlat0.y = float(0.0);
					    u_xlat0.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat1.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat3.x = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat3.x = u_xlat3.x * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat3.x = float(1.0) / u_xlat3.x;
					        u_xlat0.xyz = unity_LightColor[u_xlati_loop_1].xyz * u_xlat3.xxx + u_xlat0.xyz;
					    }
					    u_xlat0.xyz = u_xlat0.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat1.xyz = vec3(u_xlat12) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat2.z;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendAlpha" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat12;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat2.xyz = vec3(u_xlat12) * u_xlat2.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat2.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat1.z;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					bool u_xlatb3;
					vec2 u_xlat4;
					float u_xlat12;
					int u_xlati12;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat1 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat1.x);
					    u_xlat0.x = float(0.0);
					    u_xlat0.y = float(0.0);
					    u_xlat0.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat1.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat3.x = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat3.x = u_xlat3.x * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat3.x = float(1.0) / u_xlat3.x;
					        u_xlat0.xyz = unity_LightColor[u_xlati_loop_1].xyz * u_xlat3.xxx + u_xlat0.xyz;
					    }
					    u_xlat0.xyz = u_xlat0.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat1.xyz = vec3(u_xlat12) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat2.z;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat12;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat2.xyz = vec3(u_xlat12) * u_xlat2.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat2.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat1.z;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					bool u_xlatb3;
					vec2 u_xlat4;
					float u_xlat12;
					int u_xlati12;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat1 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat1.x);
					    u_xlat0.x = float(0.0);
					    u_xlat0.y = float(0.0);
					    u_xlat0.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat1.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat3.x = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat3.x = u_xlat3.x * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat3.x = float(1.0) / u_xlat3.x;
					        u_xlat0.xyz = unity_LightColor[u_xlati_loop_1].xyz * u_xlat3.xxx + u_xlat0.xyz;
					    }
					    u_xlat0.xyz = u_xlat0.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat1.xyz = vec3(u_xlat12) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat2.z;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendAlpha" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat12;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat2.xyz = vec3(u_xlat12) * u_xlat2.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat2.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat1.z;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					bool u_xlatb3;
					vec2 u_xlat4;
					float u_xlat12;
					int u_xlati12;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat1 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat1.x);
					    u_xlat0.x = float(0.0);
					    u_xlat0.y = float(0.0);
					    u_xlat0.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat1.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat3.x = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat3.x = u_xlat3.x * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat3.x = float(1.0) / u_xlat3.x;
					        u_xlat0.xyz = unity_LightColor[u_xlati_loop_1].xyz * u_xlat3.xxx + u_xlat0.xyz;
					    }
					    u_xlat0.xyz = u_xlat0.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat1.xyz = vec3(u_xlat12) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat2.z;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat12;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat2.xyz = vec3(u_xlat12) * u_xlat2.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat2.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat1.z;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					bool u_xlatb3;
					vec2 u_xlat4;
					float u_xlat12;
					int u_xlati12;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat1 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat1.x);
					    u_xlat0.x = float(0.0);
					    u_xlat0.y = float(0.0);
					    u_xlat0.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat1.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat3.x = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat3.x = u_xlat3.x * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat3.x = float(1.0) / u_xlat3.x;
					        u_xlat0.xyz = unity_LightColor[u_xlati_loop_1].xyz * u_xlat3.xxx + u_xlat0.xyz;
					    }
					    u_xlat0.xyz = u_xlat0.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat1.xyz = vec3(u_xlat12) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat2.z;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendAlpha" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec2 u_xlat4;
					int u_xlati12;
					float u_xlat13;
					bool u_xlatb13;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat0 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat1.x = float(0.0);
					    u_xlat1.y = float(0.0);
					    u_xlat1.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat13 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat13 = u_xlat13 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat13 = float(1.0) / u_xlat13;
					        u_xlat1.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat13) + u_xlat1.xyz;
					    }
					    u_xlat0.xyz = u_xlat1.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendAlpha" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec2 u_xlat4;
					int u_xlati12;
					float u_xlat13;
					bool u_xlatb13;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat0 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat1.x = float(0.0);
					    u_xlat1.y = float(0.0);
					    u_xlat1.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat13 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat13 = u_xlat13 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat13 = float(1.0) / u_xlat13;
					        u_xlat1.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat13) + u_xlat1.xyz;
					    }
					    u_xlat0.xyz = u_xlat1.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendAlpha" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec2 u_xlat4;
					int u_xlati12;
					float u_xlat13;
					bool u_xlatb13;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat0 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat1.x = float(0.0);
					    u_xlat1.y = float(0.0);
					    u_xlat1.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat13 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat13 = u_xlat13 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat13 = float(1.0) / u_xlat13;
					        u_xlat1.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat13) + u_xlat1.xyz;
					    }
					    u_xlat0.xyz = u_xlat1.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec2 u_xlat4;
					int u_xlati12;
					float u_xlat13;
					bool u_xlatb13;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat0 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat1.x = float(0.0);
					    u_xlat1.y = float(0.0);
					    u_xlat1.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat13 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat13 = u_xlat13 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat13 = float(1.0) / u_xlat13;
					        u_xlat1.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat13) + u_xlat1.xyz;
					    }
					    u_xlat0.xyz = u_xlat1.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendAlpha" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec2 u_xlat4;
					int u_xlati12;
					float u_xlat13;
					bool u_xlatb13;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat0 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat1.x = float(0.0);
					    u_xlat1.y = float(0.0);
					    u_xlat1.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat13 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat13 = u_xlat13 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat13 = float(1.0) / u_xlat13;
					        u_xlat1.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat13) + u_xlat1.xyz;
					    }
					    u_xlat0.xyz = u_xlat1.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec2 u_xlat4;
					int u_xlati12;
					float u_xlat13;
					bool u_xlatb13;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat0 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat1.x = float(0.0);
					    u_xlat1.y = float(0.0);
					    u_xlat1.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat13 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat13 = u_xlat13 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat13 = float(1.0) / u_xlat13;
					        u_xlat1.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat13) + u_xlat1.xyz;
					    }
					    u_xlat0.xyz = u_xlat1.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendAlpha" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec2 u_xlat4;
					int u_xlati12;
					float u_xlat13;
					bool u_xlatb13;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat0 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat1.x = float(0.0);
					    u_xlat1.y = float(0.0);
					    u_xlat1.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat13 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat13 = u_xlat13 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat13 = float(1.0) / u_xlat13;
					        u_xlat1.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat13) + u_xlat1.xyz;
					    }
					    u_xlat0.xyz = u_xlat1.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec2 u_xlat4;
					int u_xlati12;
					float u_xlat13;
					bool u_xlatb13;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat0 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat1.x = float(0.0);
					    u_xlat1.y = float(0.0);
					    u_xlat1.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat13 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat13 = u_xlat13 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat13 = float(1.0) / u_xlat13;
					        u_xlat1.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat13) + u_xlat1.xyz;
					    }
					    u_xlat0.xyz = u_xlat1.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendAlpha" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec2 u_xlat4;
					int u_xlati12;
					float u_xlat13;
					bool u_xlatb13;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat0 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat1.x = float(0.0);
					    u_xlat1.y = float(0.0);
					    u_xlat1.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat13 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat13 = u_xlat13 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat13 = float(1.0) / u_xlat13;
					        u_xlat1.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat13) + u_xlat1.xyz;
					    }
					    u_xlat0.xyz = u_xlat1.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendAlpha" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec2 u_xlat4;
					int u_xlati12;
					float u_xlat13;
					bool u_xlatb13;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat0 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat1.x = float(0.0);
					    u_xlat1.y = float(0.0);
					    u_xlat1.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat13 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat13 = u_xlat13 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat13 = float(1.0) / u_xlat13;
					        u_xlat1.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat13) + u_xlat1.xyz;
					    }
					    u_xlat0.xyz = u_xlat1.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendAlpha" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec2 u_xlat4;
					int u_xlati12;
					float u_xlat13;
					bool u_xlatb13;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat0 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat1.x = float(0.0);
					    u_xlat1.y = float(0.0);
					    u_xlat1.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat13 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat13 = u_xlat13 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat13 = float(1.0) / u_xlat13;
					        u_xlat1.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat13) + u_xlat1.xyz;
					    }
					    u_xlat0.xyz = u_xlat1.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec2 u_xlat4;
					int u_xlati12;
					float u_xlat13;
					bool u_xlatb13;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat0 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat1.x = float(0.0);
					    u_xlat1.y = float(0.0);
					    u_xlat1.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat13 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat13 = u_xlat13 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat13 = float(1.0) / u_xlat13;
					        u_xlat1.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat13) + u_xlat1.xyz;
					    }
					    u_xlat0.xyz = u_xlat1.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendAlpha" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec2 u_xlat4;
					int u_xlati12;
					float u_xlat13;
					bool u_xlatb13;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat0 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat1.x = float(0.0);
					    u_xlat1.y = float(0.0);
					    u_xlat1.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat13 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat13 = u_xlat13 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat13 = float(1.0) / u_xlat13;
					        u_xlat1.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat13) + u_xlat1.xyz;
					    }
					    u_xlat0.xyz = u_xlat1.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec2 u_xlat4;
					int u_xlati12;
					float u_xlat13;
					bool u_xlatb13;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat0 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat1.x = float(0.0);
					    u_xlat1.y = float(0.0);
					    u_xlat1.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat13 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat13 = u_xlat13 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat13 = float(1.0) / u_xlat13;
					        u_xlat1.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat13) + u_xlat1.xyz;
					    }
					    u_xlat0.xyz = u_xlat1.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendAlpha" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec2 u_xlat4;
					int u_xlati12;
					float u_xlat13;
					bool u_xlatb13;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat0 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat1.x = float(0.0);
					    u_xlat1.y = float(0.0);
					    u_xlat1.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat13 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat13 = u_xlat13 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat13 = float(1.0) / u_xlat13;
					        u_xlat1.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat13) + u_xlat1.xyz;
					    }
					    u_xlat0.xyz = u_xlat1.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec2 u_xlat4;
					int u_xlati12;
					float u_xlat13;
					bool u_xlatb13;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat0 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat1.x = float(0.0);
					    u_xlat1.y = float(0.0);
					    u_xlat1.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat13 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat13 = u_xlat13 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat13 = float(1.0) / u_xlat13;
					        u_xlat1.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat13) + u_xlat1.xyz;
					    }
					    u_xlat0.xyz = u_xlat1.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendAlpha" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat12;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat2.xyz = vec3(u_xlat12) * u_xlat2.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat2.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					bool u_xlatb3;
					vec2 u_xlat4;
					float u_xlat12;
					int u_xlati12;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat1 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat1.x);
					    u_xlat0.x = float(0.0);
					    u_xlat0.y = float(0.0);
					    u_xlat0.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat1.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat3.x = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat3.x = u_xlat3.x * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat3.x = float(1.0) / u_xlat3.x;
					        u_xlat0.xyz = unity_LightColor[u_xlati_loop_1].xyz * u_xlat3.xxx + u_xlat0.xyz;
					    }
					    u_xlat0.xyz = u_xlat0.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat1.xyz = vec3(u_xlat12) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendAlpha" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat12;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat2.xyz = vec3(u_xlat12) * u_xlat2.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat2.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					bool u_xlatb3;
					vec2 u_xlat4;
					float u_xlat12;
					int u_xlati12;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat1 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat1.x);
					    u_xlat0.x = float(0.0);
					    u_xlat0.y = float(0.0);
					    u_xlat0.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat1.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat3.x = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat3.x = u_xlat3.x * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat3.x = float(1.0) / u_xlat3.x;
					        u_xlat0.xyz = unity_LightColor[u_xlati_loop_1].xyz * u_xlat3.xxx + u_xlat0.xyz;
					    }
					    u_xlat0.xyz = u_xlat0.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat1.xyz = vec3(u_xlat12) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendAlpha" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat12;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat2.xyz = vec3(u_xlat12) * u_xlat2.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat2.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat1.z;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					bool u_xlatb3;
					vec2 u_xlat4;
					float u_xlat12;
					int u_xlati12;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat1 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat1.x);
					    u_xlat0.x = float(0.0);
					    u_xlat0.y = float(0.0);
					    u_xlat0.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat1.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat3.x = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat3.x = u_xlat3.x * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat3.x = float(1.0) / u_xlat3.x;
					        u_xlat0.xyz = unity_LightColor[u_xlati_loop_1].xyz * u_xlat3.xxx + u_xlat0.xyz;
					    }
					    u_xlat0.xyz = u_xlat0.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat1.xyz = vec3(u_xlat12) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat2.z;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat12;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat2.xyz = vec3(u_xlat12) * u_xlat2.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat2.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat1.z;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					bool u_xlatb3;
					vec2 u_xlat4;
					float u_xlat12;
					int u_xlati12;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat1 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat1.x);
					    u_xlat0.x = float(0.0);
					    u_xlat0.y = float(0.0);
					    u_xlat0.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat1.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat3.x = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat3.x = u_xlat3.x * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat3.x = float(1.0) / u_xlat3.x;
					        u_xlat0.xyz = unity_LightColor[u_xlati_loop_1].xyz * u_xlat3.xxx + u_xlat0.xyz;
					    }
					    u_xlat0.xyz = u_xlat0.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat1.xyz = vec3(u_xlat12) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat2.z;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendAlpha" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat12;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat2.xyz = vec3(u_xlat12) * u_xlat2.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat2.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat1.z;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					bool u_xlatb3;
					vec2 u_xlat4;
					float u_xlat12;
					int u_xlati12;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat1 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat1.x);
					    u_xlat0.x = float(0.0);
					    u_xlat0.y = float(0.0);
					    u_xlat0.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat1.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat3.x = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat3.x = u_xlat3.x * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat3.x = float(1.0) / u_xlat3.x;
					        u_xlat0.xyz = unity_LightColor[u_xlati_loop_1].xyz * u_xlat3.xxx + u_xlat0.xyz;
					    }
					    u_xlat0.xyz = u_xlat0.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat1.xyz = vec3(u_xlat12) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat2.z;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat12;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat2.xyz = vec3(u_xlat12) * u_xlat2.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat2.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat1.z;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					bool u_xlatb3;
					vec2 u_xlat4;
					float u_xlat12;
					int u_xlati12;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat1 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat1.x);
					    u_xlat0.x = float(0.0);
					    u_xlat0.y = float(0.0);
					    u_xlat0.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat1.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat3.x = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat3.x = u_xlat3.x * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat3.x = float(1.0) / u_xlat3.x;
					        u_xlat0.xyz = unity_LightColor[u_xlati_loop_1].xyz * u_xlat3.xxx + u_xlat0.xyz;
					    }
					    u_xlat0.xyz = u_xlat0.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat1.xyz = vec3(u_xlat12) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat2.z;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendAlpha" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat12;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat2.xyz = vec3(u_xlat12) * u_xlat2.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat2.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat1.z;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					bool u_xlatb3;
					vec2 u_xlat4;
					float u_xlat12;
					int u_xlati12;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat1 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat1.x);
					    u_xlat0.x = float(0.0);
					    u_xlat0.y = float(0.0);
					    u_xlat0.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat1.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat3.x = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat3.x = u_xlat3.x * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat3.x = float(1.0) / u_xlat3.x;
					        u_xlat0.xyz = unity_LightColor[u_xlati_loop_1].xyz * u_xlat3.xxx + u_xlat0.xyz;
					    }
					    u_xlat0.xyz = u_xlat0.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat1.xyz = vec3(u_xlat12) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat2.z;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat12;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat2.xyz = vec3(u_xlat12) * u_xlat2.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat2.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat1.z;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					bool u_xlatb3;
					vec2 u_xlat4;
					float u_xlat12;
					int u_xlati12;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat1 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat1.x);
					    u_xlat0.x = float(0.0);
					    u_xlat0.y = float(0.0);
					    u_xlat0.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat1.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat3.x = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat3.x = u_xlat3.x * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat3.x = float(1.0) / u_xlat3.x;
					        u_xlat0.xyz = unity_LightColor[u_xlati_loop_1].xyz * u_xlat3.xxx + u_xlat0.xyz;
					    }
					    u_xlat0.xyz = u_xlat0.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat1.xyz = vec3(u_xlat12) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat2.z;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendAlpha" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat12;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat2.xyz = vec3(u_xlat12) * u_xlat2.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat2.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					bool u_xlatb3;
					vec2 u_xlat4;
					float u_xlat12;
					int u_xlati12;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat1 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat1.x);
					    u_xlat0.x = float(0.0);
					    u_xlat0.y = float(0.0);
					    u_xlat0.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat1.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat3.x = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat3.x = u_xlat3.x * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat3.x = float(1.0) / u_xlat3.x;
					        u_xlat0.xyz = unity_LightColor[u_xlati_loop_1].xyz * u_xlat3.xxx + u_xlat0.xyz;
					    }
					    u_xlat0.xyz = u_xlat0.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat1.xyz = vec3(u_xlat12) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendAlpha" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat12;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat2.xyz = vec3(u_xlat12) * u_xlat2.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat2.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					bool u_xlatb3;
					vec2 u_xlat4;
					float u_xlat12;
					int u_xlati12;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat1 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat1.x);
					    u_xlat0.x = float(0.0);
					    u_xlat0.y = float(0.0);
					    u_xlat0.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat1.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat3.x = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat3.x = u_xlat3.x * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat3.x = float(1.0) / u_xlat3.x;
					        u_xlat0.xyz = unity_LightColor[u_xlati_loop_1].xyz * u_xlat3.xxx + u_xlat0.xyz;
					    }
					    u_xlat0.xyz = u_xlat0.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat1.xyz = vec3(u_xlat12) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendAlpha" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat12;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat2.xyz = vec3(u_xlat12) * u_xlat2.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat2.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat1.z;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					bool u_xlatb3;
					vec2 u_xlat4;
					float u_xlat12;
					int u_xlati12;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat1 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat1.x);
					    u_xlat0.x = float(0.0);
					    u_xlat0.y = float(0.0);
					    u_xlat0.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat1.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat3.x = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat3.x = u_xlat3.x * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat3.x = float(1.0) / u_xlat3.x;
					        u_xlat0.xyz = unity_LightColor[u_xlati_loop_1].xyz * u_xlat3.xxx + u_xlat0.xyz;
					    }
					    u_xlat0.xyz = u_xlat0.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat1.xyz = vec3(u_xlat12) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat2.z;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat12;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat2.xyz = vec3(u_xlat12) * u_xlat2.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat2.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat1.z;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					bool u_xlatb3;
					vec2 u_xlat4;
					float u_xlat12;
					int u_xlati12;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat1 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat1.x);
					    u_xlat0.x = float(0.0);
					    u_xlat0.y = float(0.0);
					    u_xlat0.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat1.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat3.x = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat3.x = u_xlat3.x * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat3.x = float(1.0) / u_xlat3.x;
					        u_xlat0.xyz = unity_LightColor[u_xlati_loop_1].xyz * u_xlat3.xxx + u_xlat0.xyz;
					    }
					    u_xlat0.xyz = u_xlat0.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat1.xyz = vec3(u_xlat12) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat2.z;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendAlpha" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat12;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat2.xyz = vec3(u_xlat12) * u_xlat2.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat2.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat1.z;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					bool u_xlatb3;
					vec2 u_xlat4;
					float u_xlat12;
					int u_xlati12;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat1 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat1.x);
					    u_xlat0.x = float(0.0);
					    u_xlat0.y = float(0.0);
					    u_xlat0.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat1.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat3.x = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat3.x = u_xlat3.x * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat3.x = float(1.0) / u_xlat3.x;
					        u_xlat0.xyz = unity_LightColor[u_xlati_loop_1].xyz * u_xlat3.xxx + u_xlat0.xyz;
					    }
					    u_xlat0.xyz = u_xlat0.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat1.xyz = vec3(u_xlat12) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat2.z;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat12;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat2.xyz = vec3(u_xlat12) * u_xlat2.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat2.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat1.z;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					bool u_xlatb3;
					vec2 u_xlat4;
					float u_xlat12;
					int u_xlati12;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat1 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat1.x);
					    u_xlat0.x = float(0.0);
					    u_xlat0.y = float(0.0);
					    u_xlat0.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat1.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat3.x = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat3.x = u_xlat3.x * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat3.x = float(1.0) / u_xlat3.x;
					        u_xlat0.xyz = unity_LightColor[u_xlati_loop_1].xyz * u_xlat3.xxx + u_xlat0.xyz;
					    }
					    u_xlat0.xyz = u_xlat0.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat1.xyz = vec3(u_xlat12) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat2.z;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendAlpha" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat12;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat2.xyz = vec3(u_xlat12) * u_xlat2.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat2.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat1.z;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					bool u_xlatb3;
					vec2 u_xlat4;
					float u_xlat12;
					int u_xlati12;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat1 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat1.x);
					    u_xlat0.x = float(0.0);
					    u_xlat0.y = float(0.0);
					    u_xlat0.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat1.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat3.x = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat3.x = u_xlat3.x * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat3.x = float(1.0) / u_xlat3.x;
					        u_xlat0.xyz = unity_LightColor[u_xlati_loop_1].xyz * u_xlat3.xxx + u_xlat0.xyz;
					    }
					    u_xlat0.xyz = u_xlat0.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat1.xyz = vec3(u_xlat12) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat2.z;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat12;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat2.xyz = vec3(u_xlat12) * u_xlat2.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat2.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat1.z;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					bool u_xlatb3;
					vec2 u_xlat4;
					float u_xlat12;
					int u_xlati12;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat1 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat1.x);
					    u_xlat0.x = float(0.0);
					    u_xlat0.y = float(0.0);
					    u_xlat0.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat1.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat3.x = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat3.x = u_xlat3.x * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat3.x = float(1.0) / u_xlat3.x;
					        u_xlat0.xyz = unity_LightColor[u_xlati_loop_1].xyz * u_xlat3.xxx + u_xlat0.xyz;
					    }
					    u_xlat0.xyz = u_xlat0.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat1.xyz = vec3(u_xlat12) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat2.z;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendAlpha" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec2 u_xlat4;
					int u_xlati12;
					float u_xlat13;
					bool u_xlatb13;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat0 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat1.x = float(0.0);
					    u_xlat1.y = float(0.0);
					    u_xlat1.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat13 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat13 = u_xlat13 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat13 = float(1.0) / u_xlat13;
					        u_xlat1.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat13) + u_xlat1.xyz;
					    }
					    u_xlat0.xyz = u_xlat1.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendAlpha" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec2 u_xlat4;
					int u_xlati12;
					float u_xlat13;
					bool u_xlatb13;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat0 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat1.x = float(0.0);
					    u_xlat1.y = float(0.0);
					    u_xlat1.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat13 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat13 = u_xlat13 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat13 = float(1.0) / u_xlat13;
					        u_xlat1.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat13) + u_xlat1.xyz;
					    }
					    u_xlat0.xyz = u_xlat1.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendAlpha" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec2 u_xlat4;
					int u_xlati12;
					float u_xlat13;
					bool u_xlatb13;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat0 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat1.x = float(0.0);
					    u_xlat1.y = float(0.0);
					    u_xlat1.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat13 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat13 = u_xlat13 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat13 = float(1.0) / u_xlat13;
					        u_xlat1.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat13) + u_xlat1.xyz;
					    }
					    u_xlat0.xyz = u_xlat1.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec2 u_xlat4;
					int u_xlati12;
					float u_xlat13;
					bool u_xlatb13;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat0 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat1.x = float(0.0);
					    u_xlat1.y = float(0.0);
					    u_xlat1.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat13 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat13 = u_xlat13 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat13 = float(1.0) / u_xlat13;
					        u_xlat1.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat13) + u_xlat1.xyz;
					    }
					    u_xlat0.xyz = u_xlat1.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendAlpha" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec2 u_xlat4;
					int u_xlati12;
					float u_xlat13;
					bool u_xlatb13;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat0 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat1.x = float(0.0);
					    u_xlat1.y = float(0.0);
					    u_xlat1.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat13 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat13 = u_xlat13 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat13 = float(1.0) / u_xlat13;
					        u_xlat1.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat13) + u_xlat1.xyz;
					    }
					    u_xlat0.xyz = u_xlat1.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec2 u_xlat4;
					int u_xlati12;
					float u_xlat13;
					bool u_xlatb13;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat0 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat1.x = float(0.0);
					    u_xlat1.y = float(0.0);
					    u_xlat1.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat13 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat13 = u_xlat13 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat13 = float(1.0) / u_xlat13;
					        u_xlat1.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat13) + u_xlat1.xyz;
					    }
					    u_xlat0.xyz = u_xlat1.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendAlpha" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec2 u_xlat4;
					int u_xlati12;
					float u_xlat13;
					bool u_xlatb13;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat0 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat1.x = float(0.0);
					    u_xlat1.y = float(0.0);
					    u_xlat1.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat13 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat13 = u_xlat13 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat13 = float(1.0) / u_xlat13;
					        u_xlat1.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat13) + u_xlat1.xyz;
					    }
					    u_xlat0.xyz = u_xlat1.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec2 u_xlat4;
					int u_xlati12;
					float u_xlat13;
					bool u_xlatb13;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat0 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat1.x = float(0.0);
					    u_xlat1.y = float(0.0);
					    u_xlat1.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat13 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat13 = u_xlat13 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat13 = float(1.0) / u_xlat13;
					        u_xlat1.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat13) + u_xlat1.xyz;
					    }
					    u_xlat0.xyz = u_xlat1.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendAlpha" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec2 u_xlat4;
					int u_xlati12;
					float u_xlat13;
					bool u_xlatb13;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat0 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat1.x = float(0.0);
					    u_xlat1.y = float(0.0);
					    u_xlat1.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat13 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat13 = u_xlat13 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat13 = float(1.0) / u_xlat13;
					        u_xlat1.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat13) + u_xlat1.xyz;
					    }
					    u_xlat0.xyz = u_xlat1.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendAlpha" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec2 u_xlat4;
					int u_xlati12;
					float u_xlat13;
					bool u_xlatb13;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat0 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat1.x = float(0.0);
					    u_xlat1.y = float(0.0);
					    u_xlat1.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat13 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat13 = u_xlat13 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat13 = float(1.0) / u_xlat13;
					        u_xlat1.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat13) + u_xlat1.xyz;
					    }
					    u_xlat0.xyz = u_xlat1.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendAlpha" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec2 u_xlat4;
					int u_xlati12;
					float u_xlat13;
					bool u_xlatb13;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat0 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat1.x = float(0.0);
					    u_xlat1.y = float(0.0);
					    u_xlat1.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat13 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat13 = u_xlat13 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat13 = float(1.0) / u_xlat13;
					        u_xlat1.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat13) + u_xlat1.xyz;
					    }
					    u_xlat0.xyz = u_xlat1.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec2 u_xlat4;
					int u_xlati12;
					float u_xlat13;
					bool u_xlatb13;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat0 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat1.x = float(0.0);
					    u_xlat1.y = float(0.0);
					    u_xlat1.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat13 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat13 = u_xlat13 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat13 = float(1.0) / u_xlat13;
					        u_xlat1.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat13) + u_xlat1.xyz;
					    }
					    u_xlat0.xyz = u_xlat1.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendAlpha" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec2 u_xlat4;
					int u_xlati12;
					float u_xlat13;
					bool u_xlatb13;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat0 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat1.x = float(0.0);
					    u_xlat1.y = float(0.0);
					    u_xlat1.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat13 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat13 = u_xlat13 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat13 = float(1.0) / u_xlat13;
					        u_xlat1.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat13) + u_xlat1.xyz;
					    }
					    u_xlat0.xyz = u_xlat1.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec2 u_xlat4;
					int u_xlati12;
					float u_xlat13;
					bool u_xlatb13;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat0 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat1.x = float(0.0);
					    u_xlat1.y = float(0.0);
					    u_xlat1.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat13 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat13 = u_xlat13 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat13 = float(1.0) / u_xlat13;
					        u_xlat1.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat13) + u_xlat1.xyz;
					    }
					    u_xlat0.xyz = u_xlat1.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendAlpha" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec2 u_xlat4;
					int u_xlati12;
					float u_xlat13;
					bool u_xlatb13;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat0 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat1.x = float(0.0);
					    u_xlat1.y = float(0.0);
					    u_xlat1.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat13 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat13 = u_xlat13 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat13 = float(1.0) / u_xlat13;
					        u_xlat1.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat13) + u_xlat1.xyz;
					    }
					    u_xlat0.xyz = u_xlat1.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec2 u_xlat4;
					int u_xlati12;
					float u_xlat13;
					bool u_xlatb13;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat0 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat1.x = float(0.0);
					    u_xlat1.y = float(0.0);
					    u_xlat1.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat13 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat13 = u_xlat13 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat13 = float(1.0) / u_xlat13;
					        u_xlat1.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat13) + u_xlat1.xyz;
					    }
					    u_xlat0.xyz = u_xlat1.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendAlpha" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat12;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat2.xyz = vec3(u_xlat12) * u_xlat2.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat2.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					bool u_xlatb3;
					vec2 u_xlat4;
					float u_xlat12;
					int u_xlati12;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat1 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat1.x);
					    u_xlat0.x = float(0.0);
					    u_xlat0.y = float(0.0);
					    u_xlat0.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat1.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat3.x = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat3.x = u_xlat3.x * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat3.x = float(1.0) / u_xlat3.x;
					        u_xlat0.xyz = unity_LightColor[u_xlati_loop_1].xyz * u_xlat3.xxx + u_xlat0.xyz;
					    }
					    u_xlat0.xyz = u_xlat0.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat1.xyz = vec3(u_xlat12) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendAlpha" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat12;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat2.xyz = vec3(u_xlat12) * u_xlat2.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat2.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					bool u_xlatb3;
					vec2 u_xlat4;
					float u_xlat12;
					int u_xlati12;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat1 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat1.x);
					    u_xlat0.x = float(0.0);
					    u_xlat0.y = float(0.0);
					    u_xlat0.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat1.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat3.x = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat3.x = u_xlat3.x * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat3.x = float(1.0) / u_xlat3.x;
					        u_xlat0.xyz = unity_LightColor[u_xlati_loop_1].xyz * u_xlat3.xxx + u_xlat0.xyz;
					    }
					    u_xlat0.xyz = u_xlat0.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat1.xyz = vec3(u_xlat12) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendAlpha" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat12;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat2.xyz = vec3(u_xlat12) * u_xlat2.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat2.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat1.z;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					bool u_xlatb3;
					vec2 u_xlat4;
					float u_xlat12;
					int u_xlati12;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat1 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat1.x);
					    u_xlat0.x = float(0.0);
					    u_xlat0.y = float(0.0);
					    u_xlat0.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat1.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat3.x = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat3.x = u_xlat3.x * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat3.x = float(1.0) / u_xlat3.x;
					        u_xlat0.xyz = unity_LightColor[u_xlati_loop_1].xyz * u_xlat3.xxx + u_xlat0.xyz;
					    }
					    u_xlat0.xyz = u_xlat0.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat1.xyz = vec3(u_xlat12) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat2.z;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat12;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat2.xyz = vec3(u_xlat12) * u_xlat2.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat2.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat1.z;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					bool u_xlatb3;
					vec2 u_xlat4;
					float u_xlat12;
					int u_xlati12;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat1 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat1.x);
					    u_xlat0.x = float(0.0);
					    u_xlat0.y = float(0.0);
					    u_xlat0.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat1.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat3.x = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat3.x = u_xlat3.x * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat3.x = float(1.0) / u_xlat3.x;
					        u_xlat0.xyz = unity_LightColor[u_xlati_loop_1].xyz * u_xlat3.xxx + u_xlat0.xyz;
					    }
					    u_xlat0.xyz = u_xlat0.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat1.xyz = vec3(u_xlat12) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat2.z;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendAlpha" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat12;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat2.xyz = vec3(u_xlat12) * u_xlat2.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat2.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat1.z;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					bool u_xlatb3;
					vec2 u_xlat4;
					float u_xlat12;
					int u_xlati12;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat1 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat1.x);
					    u_xlat0.x = float(0.0);
					    u_xlat0.y = float(0.0);
					    u_xlat0.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat1.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat3.x = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat3.x = u_xlat3.x * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat3.x = float(1.0) / u_xlat3.x;
					        u_xlat0.xyz = unity_LightColor[u_xlati_loop_1].xyz * u_xlat3.xxx + u_xlat0.xyz;
					    }
					    u_xlat0.xyz = u_xlat0.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat1.xyz = vec3(u_xlat12) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat2.z;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat12;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat2.xyz = vec3(u_xlat12) * u_xlat2.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat2.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat1.z;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					bool u_xlatb3;
					vec2 u_xlat4;
					float u_xlat12;
					int u_xlati12;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat1 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat1.x);
					    u_xlat0.x = float(0.0);
					    u_xlat0.y = float(0.0);
					    u_xlat0.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat1.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat3.x = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat3.x = u_xlat3.x * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat3.x = float(1.0) / u_xlat3.x;
					        u_xlat0.xyz = unity_LightColor[u_xlati_loop_1].xyz * u_xlat3.xxx + u_xlat0.xyz;
					    }
					    u_xlat0.xyz = u_xlat0.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat1.xyz = vec3(u_xlat12) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat2.z;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendAlpha" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat12;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat2.xyz = vec3(u_xlat12) * u_xlat2.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat2.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat1.z;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					bool u_xlatb3;
					vec2 u_xlat4;
					float u_xlat12;
					int u_xlati12;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat1 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat1.x);
					    u_xlat0.x = float(0.0);
					    u_xlat0.y = float(0.0);
					    u_xlat0.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat1.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat3.x = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat3.x = u_xlat3.x * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat3.x = float(1.0) / u_xlat3.x;
					        u_xlat0.xyz = unity_LightColor[u_xlati_loop_1].xyz * u_xlat3.xxx + u_xlat0.xyz;
					    }
					    u_xlat0.xyz = u_xlat0.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat1.xyz = vec3(u_xlat12) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat2.z;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat12;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat2.xyz = vec3(u_xlat12) * u_xlat2.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat2.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat1.z;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					bool u_xlatb3;
					vec2 u_xlat4;
					float u_xlat12;
					int u_xlati12;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat1 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat1.x);
					    u_xlat0.x = float(0.0);
					    u_xlat0.y = float(0.0);
					    u_xlat0.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat1.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat3.x = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat3.x = u_xlat3.x * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat3.x = float(1.0) / u_xlat3.x;
					        u_xlat0.xyz = unity_LightColor[u_xlati_loop_1].xyz * u_xlat3.xxx + u_xlat0.xyz;
					    }
					    u_xlat0.xyz = u_xlat0.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat1.xyz = vec3(u_xlat12) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat2.z;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendAlpha" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat12;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat2.xyz = vec3(u_xlat12) * u_xlat2.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat2.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					bool u_xlatb3;
					vec2 u_xlat4;
					float u_xlat12;
					int u_xlati12;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat1 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat1.x);
					    u_xlat0.x = float(0.0);
					    u_xlat0.y = float(0.0);
					    u_xlat0.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat1.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat3.x = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat3.x = u_xlat3.x * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat3.x = float(1.0) / u_xlat3.x;
					        u_xlat0.xyz = unity_LightColor[u_xlati_loop_1].xyz * u_xlat3.xxx + u_xlat0.xyz;
					    }
					    u_xlat0.xyz = u_xlat0.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat1.xyz = vec3(u_xlat12) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendAlpha" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat12;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat2.xyz = vec3(u_xlat12) * u_xlat2.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat2.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					bool u_xlatb3;
					vec2 u_xlat4;
					float u_xlat12;
					int u_xlati12;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat1 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat1.x);
					    u_xlat0.x = float(0.0);
					    u_xlat0.y = float(0.0);
					    u_xlat0.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat1.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat3.x = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat3.x = u_xlat3.x * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat3.x = float(1.0) / u_xlat3.x;
					        u_xlat0.xyz = unity_LightColor[u_xlati_loop_1].xyz * u_xlat3.xxx + u_xlat0.xyz;
					    }
					    u_xlat0.xyz = u_xlat0.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat1.xyz = vec3(u_xlat12) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendAlpha" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat12;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat2.xyz = vec3(u_xlat12) * u_xlat2.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat2.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat1.z;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					bool u_xlatb3;
					vec2 u_xlat4;
					float u_xlat12;
					int u_xlati12;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat1 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat1.x);
					    u_xlat0.x = float(0.0);
					    u_xlat0.y = float(0.0);
					    u_xlat0.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat1.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat3.x = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat3.x = u_xlat3.x * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat3.x = float(1.0) / u_xlat3.x;
					        u_xlat0.xyz = unity_LightColor[u_xlati_loop_1].xyz * u_xlat3.xxx + u_xlat0.xyz;
					    }
					    u_xlat0.xyz = u_xlat0.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat1.xyz = vec3(u_xlat12) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat2.z;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat12;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat2.xyz = vec3(u_xlat12) * u_xlat2.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat2.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat1.z;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					bool u_xlatb3;
					vec2 u_xlat4;
					float u_xlat12;
					int u_xlati12;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat1 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat1.x);
					    u_xlat0.x = float(0.0);
					    u_xlat0.y = float(0.0);
					    u_xlat0.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat1.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat3.x = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat3.x = u_xlat3.x * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat3.x = float(1.0) / u_xlat3.x;
					        u_xlat0.xyz = unity_LightColor[u_xlati_loop_1].xyz * u_xlat3.xxx + u_xlat0.xyz;
					    }
					    u_xlat0.xyz = u_xlat0.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat1.xyz = vec3(u_xlat12) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat2.z;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendAlpha" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat12;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat2.xyz = vec3(u_xlat12) * u_xlat2.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat2.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat1.z;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					bool u_xlatb3;
					vec2 u_xlat4;
					float u_xlat12;
					int u_xlati12;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat1 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat1.x);
					    u_xlat0.x = float(0.0);
					    u_xlat0.y = float(0.0);
					    u_xlat0.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat1.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat3.x = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat3.x = u_xlat3.x * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat3.x = float(1.0) / u_xlat3.x;
					        u_xlat0.xyz = unity_LightColor[u_xlati_loop_1].xyz * u_xlat3.xxx + u_xlat0.xyz;
					    }
					    u_xlat0.xyz = u_xlat0.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat1.xyz = vec3(u_xlat12) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat2.z;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat12;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat2.xyz = vec3(u_xlat12) * u_xlat2.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat2.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat1.z;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					bool u_xlatb3;
					vec2 u_xlat4;
					float u_xlat12;
					int u_xlati12;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat1 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat1.x);
					    u_xlat0.x = float(0.0);
					    u_xlat0.y = float(0.0);
					    u_xlat0.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat1.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat3.x = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat3.x = u_xlat3.x * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat3.x = float(1.0) / u_xlat3.x;
					        u_xlat0.xyz = unity_LightColor[u_xlati_loop_1].xyz * u_xlat3.xxx + u_xlat0.xyz;
					    }
					    u_xlat0.xyz = u_xlat0.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat1.xyz = vec3(u_xlat12) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat2.z;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendAlpha" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat12;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat2.xyz = vec3(u_xlat12) * u_xlat2.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat2.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat1.z;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					bool u_xlatb3;
					vec2 u_xlat4;
					float u_xlat12;
					int u_xlati12;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat1 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat1.x);
					    u_xlat0.x = float(0.0);
					    u_xlat0.y = float(0.0);
					    u_xlat0.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat1.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat3.x = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat3.x = u_xlat3.x * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat3.x = float(1.0) / u_xlat3.x;
					        u_xlat0.xyz = unity_LightColor[u_xlati_loop_1].xyz * u_xlat3.xxx + u_xlat0.xyz;
					    }
					    u_xlat0.xyz = u_xlat0.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat1.xyz = vec3(u_xlat12) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat2.z;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat12;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat2.xyz = vec3(u_xlat12) * u_xlat2.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat2.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat1.z;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					bool u_xlatb3;
					vec2 u_xlat4;
					float u_xlat12;
					int u_xlati12;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat1 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat1.x);
					    u_xlat0.x = float(0.0);
					    u_xlat0.y = float(0.0);
					    u_xlat0.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat1.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat3.x = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat3.x = u_xlat3.x * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat3.x = float(1.0) / u_xlat3.x;
					        u_xlat0.xyz = unity_LightColor[u_xlati_loop_1].xyz * u_xlat3.xxx + u_xlat0.xyz;
					    }
					    u_xlat0.xyz = u_xlat0.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat1.xyz = vec3(u_xlat12) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat2.z;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendAlpha" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec2 u_xlat4;
					int u_xlati12;
					float u_xlat13;
					bool u_xlatb13;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat0 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat1.x = float(0.0);
					    u_xlat1.y = float(0.0);
					    u_xlat1.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat13 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat13 = u_xlat13 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat13 = float(1.0) / u_xlat13;
					        u_xlat1.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat13) + u_xlat1.xyz;
					    }
					    u_xlat0.xyz = u_xlat1.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendAlpha" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec2 u_xlat4;
					int u_xlati12;
					float u_xlat13;
					bool u_xlatb13;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat0 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat1.x = float(0.0);
					    u_xlat1.y = float(0.0);
					    u_xlat1.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat13 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat13 = u_xlat13 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat13 = float(1.0) / u_xlat13;
					        u_xlat1.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat13) + u_xlat1.xyz;
					    }
					    u_xlat0.xyz = u_xlat1.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendAlpha" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec2 u_xlat4;
					int u_xlati12;
					float u_xlat13;
					bool u_xlatb13;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat0 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat1.x = float(0.0);
					    u_xlat1.y = float(0.0);
					    u_xlat1.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat13 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat13 = u_xlat13 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat13 = float(1.0) / u_xlat13;
					        u_xlat1.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat13) + u_xlat1.xyz;
					    }
					    u_xlat0.xyz = u_xlat1.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec2 u_xlat4;
					int u_xlati12;
					float u_xlat13;
					bool u_xlatb13;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat0 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat1.x = float(0.0);
					    u_xlat1.y = float(0.0);
					    u_xlat1.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat13 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat13 = u_xlat13 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat13 = float(1.0) / u_xlat13;
					        u_xlat1.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat13) + u_xlat1.xyz;
					    }
					    u_xlat0.xyz = u_xlat1.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendAlpha" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec2 u_xlat4;
					int u_xlati12;
					float u_xlat13;
					bool u_xlatb13;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat0 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat1.x = float(0.0);
					    u_xlat1.y = float(0.0);
					    u_xlat1.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat13 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat13 = u_xlat13 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat13 = float(1.0) / u_xlat13;
					        u_xlat1.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat13) + u_xlat1.xyz;
					    }
					    u_xlat0.xyz = u_xlat1.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec2 u_xlat4;
					int u_xlati12;
					float u_xlat13;
					bool u_xlatb13;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat0 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat1.x = float(0.0);
					    u_xlat1.y = float(0.0);
					    u_xlat1.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat13 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat13 = u_xlat13 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat13 = float(1.0) / u_xlat13;
					        u_xlat1.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat13) + u_xlat1.xyz;
					    }
					    u_xlat0.xyz = u_xlat1.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendAlpha" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec2 u_xlat4;
					int u_xlati12;
					float u_xlat13;
					bool u_xlatb13;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat0 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat1.x = float(0.0);
					    u_xlat1.y = float(0.0);
					    u_xlat1.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat13 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat13 = u_xlat13 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat13 = float(1.0) / u_xlat13;
					        u_xlat1.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat13) + u_xlat1.xyz;
					    }
					    u_xlat0.xyz = u_xlat1.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec2 u_xlat4;
					int u_xlati12;
					float u_xlat13;
					bool u_xlatb13;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat0 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat1.x = float(0.0);
					    u_xlat1.y = float(0.0);
					    u_xlat1.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat13 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat13 = u_xlat13 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat13 = float(1.0) / u_xlat13;
					        u_xlat1.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat13) + u_xlat1.xyz;
					    }
					    u_xlat0.xyz = u_xlat1.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendAlpha" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec2 u_xlat4;
					int u_xlati12;
					float u_xlat13;
					bool u_xlatb13;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat0 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat1.x = float(0.0);
					    u_xlat1.y = float(0.0);
					    u_xlat1.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat13 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat13 = u_xlat13 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat13 = float(1.0) / u_xlat13;
					        u_xlat1.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat13) + u_xlat1.xyz;
					    }
					    u_xlat0.xyz = u_xlat1.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendAlpha" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec2 u_xlat4;
					int u_xlati12;
					float u_xlat13;
					bool u_xlatb13;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat0 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat1.x = float(0.0);
					    u_xlat1.y = float(0.0);
					    u_xlat1.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat13 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat13 = u_xlat13 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat13 = float(1.0) / u_xlat13;
					        u_xlat1.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat13) + u_xlat1.xyz;
					    }
					    u_xlat0.xyz = u_xlat1.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendAlpha" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec2 u_xlat4;
					int u_xlati12;
					float u_xlat13;
					bool u_xlatb13;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat0 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat1.x = float(0.0);
					    u_xlat1.y = float(0.0);
					    u_xlat1.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat13 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat13 = u_xlat13 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat13 = float(1.0) / u_xlat13;
					        u_xlat1.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat13) + u_xlat1.xyz;
					    }
					    u_xlat0.xyz = u_xlat1.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec2 u_xlat4;
					int u_xlati12;
					float u_xlat13;
					bool u_xlatb13;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat0 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat1.x = float(0.0);
					    u_xlat1.y = float(0.0);
					    u_xlat1.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat13 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat13 = u_xlat13 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat13 = float(1.0) / u_xlat13;
					        u_xlat1.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat13) + u_xlat1.xyz;
					    }
					    u_xlat0.xyz = u_xlat1.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendAlpha" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec2 u_xlat4;
					int u_xlati12;
					float u_xlat13;
					bool u_xlatb13;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat0 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat1.x = float(0.0);
					    u_xlat1.y = float(0.0);
					    u_xlat1.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat13 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat13 = u_xlat13 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat13 = float(1.0) / u_xlat13;
					        u_xlat1.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat13) + u_xlat1.xyz;
					    }
					    u_xlat0.xyz = u_xlat1.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec2 u_xlat4;
					int u_xlati12;
					float u_xlat13;
					bool u_xlatb13;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat0 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat1.x = float(0.0);
					    u_xlat1.y = float(0.0);
					    u_xlat1.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat13 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat13 = u_xlat13 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat13 = float(1.0) / u_xlat13;
					        u_xlat1.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat13) + u_xlat1.xyz;
					    }
					    u_xlat0.xyz = u_xlat1.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendAlpha" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec2 u_xlat4;
					int u_xlati12;
					float u_xlat13;
					bool u_xlatb13;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat0 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat1.x = float(0.0);
					    u_xlat1.y = float(0.0);
					    u_xlat1.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat13 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat13 = u_xlat13 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat13 = float(1.0) / u_xlat13;
					        u_xlat1.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat13) + u_xlat1.xyz;
					    }
					    u_xlat0.xyz = u_xlat1.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec2 u_xlat4;
					int u_xlati12;
					float u_xlat13;
					bool u_xlatb13;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat0 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat1.x = float(0.0);
					    u_xlat1.y = float(0.0);
					    u_xlat1.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat13 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat13 = u_xlat13 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat13 = float(1.0) / u_xlat13;
					        u_xlat1.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat13) + u_xlat1.xyz;
					    }
					    u_xlat0.xyz = u_xlat1.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendAlpha" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat12;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat2.xyz = vec3(u_xlat12) * u_xlat2.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat2.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					bool u_xlatb3;
					vec2 u_xlat4;
					float u_xlat12;
					int u_xlati12;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat1 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat1.x);
					    u_xlat0.x = float(0.0);
					    u_xlat0.y = float(0.0);
					    u_xlat0.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat1.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat3.x = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat3.x = u_xlat3.x * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat3.x = float(1.0) / u_xlat3.x;
					        u_xlat0.xyz = unity_LightColor[u_xlati_loop_1].xyz * u_xlat3.xxx + u_xlat0.xyz;
					    }
					    u_xlat0.xyz = u_xlat0.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat1.xyz = vec3(u_xlat12) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendAlpha" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat12;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat2.xyz = vec3(u_xlat12) * u_xlat2.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat2.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					bool u_xlatb3;
					vec2 u_xlat4;
					float u_xlat12;
					int u_xlati12;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat1 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat1.x);
					    u_xlat0.x = float(0.0);
					    u_xlat0.y = float(0.0);
					    u_xlat0.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat1.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat3.x = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat3.x = u_xlat3.x * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat3.x = float(1.0) / u_xlat3.x;
					        u_xlat0.xyz = unity_LightColor[u_xlati_loop_1].xyz * u_xlat3.xxx + u_xlat0.xyz;
					    }
					    u_xlat0.xyz = u_xlat0.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat1.xyz = vec3(u_xlat12) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendAlpha" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat12;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat2.xyz = vec3(u_xlat12) * u_xlat2.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat2.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat1.z;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					bool u_xlatb3;
					vec2 u_xlat4;
					float u_xlat12;
					int u_xlati12;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat1 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat1.x);
					    u_xlat0.x = float(0.0);
					    u_xlat0.y = float(0.0);
					    u_xlat0.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat1.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat3.x = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat3.x = u_xlat3.x * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat3.x = float(1.0) / u_xlat3.x;
					        u_xlat0.xyz = unity_LightColor[u_xlati_loop_1].xyz * u_xlat3.xxx + u_xlat0.xyz;
					    }
					    u_xlat0.xyz = u_xlat0.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat1.xyz = vec3(u_xlat12) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat2.z;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat12;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat2.xyz = vec3(u_xlat12) * u_xlat2.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat2.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat1.z;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					bool u_xlatb3;
					vec2 u_xlat4;
					float u_xlat12;
					int u_xlati12;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat1 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat1.x);
					    u_xlat0.x = float(0.0);
					    u_xlat0.y = float(0.0);
					    u_xlat0.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat1.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat3.x = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat3.x = u_xlat3.x * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat3.x = float(1.0) / u_xlat3.x;
					        u_xlat0.xyz = unity_LightColor[u_xlati_loop_1].xyz * u_xlat3.xxx + u_xlat0.xyz;
					    }
					    u_xlat0.xyz = u_xlat0.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat1.xyz = vec3(u_xlat12) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat2.z;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendAlpha" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat12;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat2.xyz = vec3(u_xlat12) * u_xlat2.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat2.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat1.z;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					bool u_xlatb3;
					vec2 u_xlat4;
					float u_xlat12;
					int u_xlati12;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat1 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat1.x);
					    u_xlat0.x = float(0.0);
					    u_xlat0.y = float(0.0);
					    u_xlat0.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat1.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat3.x = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat3.x = u_xlat3.x * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat3.x = float(1.0) / u_xlat3.x;
					        u_xlat0.xyz = unity_LightColor[u_xlati_loop_1].xyz * u_xlat3.xxx + u_xlat0.xyz;
					    }
					    u_xlat0.xyz = u_xlat0.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat1.xyz = vec3(u_xlat12) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat2.z;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat12;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat2.xyz = vec3(u_xlat12) * u_xlat2.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat2.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat1.z;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					bool u_xlatb3;
					vec2 u_xlat4;
					float u_xlat12;
					int u_xlati12;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat1 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat1.x);
					    u_xlat0.x = float(0.0);
					    u_xlat0.y = float(0.0);
					    u_xlat0.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat1.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat3.x = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat3.x = u_xlat3.x * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat3.x = float(1.0) / u_xlat3.x;
					        u_xlat0.xyz = unity_LightColor[u_xlati_loop_1].xyz * u_xlat3.xxx + u_xlat0.xyz;
					    }
					    u_xlat0.xyz = u_xlat0.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat1.xyz = vec3(u_xlat12) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat2.z;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendAlpha" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat12;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat2.xyz = vec3(u_xlat12) * u_xlat2.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat2.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat1.z;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					bool u_xlatb3;
					vec2 u_xlat4;
					float u_xlat12;
					int u_xlati12;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat1 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat1.x);
					    u_xlat0.x = float(0.0);
					    u_xlat0.y = float(0.0);
					    u_xlat0.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat1.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat3.x = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat3.x = u_xlat3.x * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat3.x = float(1.0) / u_xlat3.x;
					        u_xlat0.xyz = unity_LightColor[u_xlati_loop_1].xyz * u_xlat3.xxx + u_xlat0.xyz;
					    }
					    u_xlat0.xyz = u_xlat0.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat1.xyz = vec3(u_xlat12) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat2.z;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat12;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat2.xyz = vec3(u_xlat12) * u_xlat2.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat2.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat1.z;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					bool u_xlatb3;
					vec2 u_xlat4;
					float u_xlat12;
					int u_xlati12;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat1 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat1.x);
					    u_xlat0.x = float(0.0);
					    u_xlat0.y = float(0.0);
					    u_xlat0.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat1.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat3.x = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat3.x = u_xlat3.x * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat3.x = float(1.0) / u_xlat3.x;
					        u_xlat0.xyz = unity_LightColor[u_xlati_loop_1].xyz * u_xlat3.xxx + u_xlat0.xyz;
					    }
					    u_xlat0.xyz = u_xlat0.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat1.xyz = vec3(u_xlat12) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat2.z;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendAlpha" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat12;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat2.xyz = vec3(u_xlat12) * u_xlat2.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat2.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					bool u_xlatb3;
					vec2 u_xlat4;
					float u_xlat12;
					int u_xlati12;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat1 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat1.x);
					    u_xlat0.x = float(0.0);
					    u_xlat0.y = float(0.0);
					    u_xlat0.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat1.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat3.x = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat3.x = u_xlat3.x * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat3.x = float(1.0) / u_xlat3.x;
					        u_xlat0.xyz = unity_LightColor[u_xlati_loop_1].xyz * u_xlat3.xxx + u_xlat0.xyz;
					    }
					    u_xlat0.xyz = u_xlat0.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat1.xyz = vec3(u_xlat12) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendAlpha" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat12;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat2.xyz = vec3(u_xlat12) * u_xlat2.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat2.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					bool u_xlatb3;
					vec2 u_xlat4;
					float u_xlat12;
					int u_xlati12;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat1 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat1.x);
					    u_xlat0.x = float(0.0);
					    u_xlat0.y = float(0.0);
					    u_xlat0.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat1.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat3.x = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat3.x = u_xlat3.x * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat3.x = float(1.0) / u_xlat3.x;
					        u_xlat0.xyz = unity_LightColor[u_xlati_loop_1].xyz * u_xlat3.xxx + u_xlat0.xyz;
					    }
					    u_xlat0.xyz = u_xlat0.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat1.xyz = vec3(u_xlat12) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendAlpha" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat12;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat2.xyz = vec3(u_xlat12) * u_xlat2.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat2.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat1.z;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					bool u_xlatb3;
					vec2 u_xlat4;
					float u_xlat12;
					int u_xlati12;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat1 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat1.x);
					    u_xlat0.x = float(0.0);
					    u_xlat0.y = float(0.0);
					    u_xlat0.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat1.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat3.x = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat3.x = u_xlat3.x * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat3.x = float(1.0) / u_xlat3.x;
					        u_xlat0.xyz = unity_LightColor[u_xlati_loop_1].xyz * u_xlat3.xxx + u_xlat0.xyz;
					    }
					    u_xlat0.xyz = u_xlat0.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat1.xyz = vec3(u_xlat12) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat2.z;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat12;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat2.xyz = vec3(u_xlat12) * u_xlat2.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat2.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat1.z;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					bool u_xlatb3;
					vec2 u_xlat4;
					float u_xlat12;
					int u_xlati12;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat1 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat1.x);
					    u_xlat0.x = float(0.0);
					    u_xlat0.y = float(0.0);
					    u_xlat0.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat1.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat3.x = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat3.x = u_xlat3.x * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat3.x = float(1.0) / u_xlat3.x;
					        u_xlat0.xyz = unity_LightColor[u_xlati_loop_1].xyz * u_xlat3.xxx + u_xlat0.xyz;
					    }
					    u_xlat0.xyz = u_xlat0.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat1.xyz = vec3(u_xlat12) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat2.z;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendAlpha" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat12;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat2.xyz = vec3(u_xlat12) * u_xlat2.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat2.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat1.z;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					bool u_xlatb3;
					vec2 u_xlat4;
					float u_xlat12;
					int u_xlati12;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat1 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat1.x);
					    u_xlat0.x = float(0.0);
					    u_xlat0.y = float(0.0);
					    u_xlat0.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat1.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat3.x = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat3.x = u_xlat3.x * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat3.x = float(1.0) / u_xlat3.x;
					        u_xlat0.xyz = unity_LightColor[u_xlati_loop_1].xyz * u_xlat3.xxx + u_xlat0.xyz;
					    }
					    u_xlat0.xyz = u_xlat0.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat1.xyz = vec3(u_xlat12) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat2.z;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat12;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat2.xyz = vec3(u_xlat12) * u_xlat2.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat2.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat1.z;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					bool u_xlatb3;
					vec2 u_xlat4;
					float u_xlat12;
					int u_xlati12;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat1 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat1.x);
					    u_xlat0.x = float(0.0);
					    u_xlat0.y = float(0.0);
					    u_xlat0.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat1.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat3.x = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat3.x = u_xlat3.x * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat3.x = float(1.0) / u_xlat3.x;
					        u_xlat0.xyz = unity_LightColor[u_xlati_loop_1].xyz * u_xlat3.xxx + u_xlat0.xyz;
					    }
					    u_xlat0.xyz = u_xlat0.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat1.xyz = vec3(u_xlat12) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat2.z;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendAlpha" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat12;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat2.xyz = vec3(u_xlat12) * u_xlat2.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat2.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat1.z;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					bool u_xlatb3;
					vec2 u_xlat4;
					float u_xlat12;
					int u_xlati12;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat1 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat1.x);
					    u_xlat0.x = float(0.0);
					    u_xlat0.y = float(0.0);
					    u_xlat0.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat1.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat3.x = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat3.x = u_xlat3.x * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat3.x = float(1.0) / u_xlat3.x;
					        u_xlat0.xyz = unity_LightColor[u_xlati_loop_1].xyz * u_xlat3.xxx + u_xlat0.xyz;
					    }
					    u_xlat0.xyz = u_xlat0.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat1.xyz = vec3(u_xlat12) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat2.z;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat12;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat2.xyz = vec3(u_xlat12) * u_xlat2.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat2.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat1.z;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					bool u_xlatb3;
					vec2 u_xlat4;
					float u_xlat12;
					int u_xlati12;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat1 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat1.x);
					    u_xlat0.x = float(0.0);
					    u_xlat0.y = float(0.0);
					    u_xlat0.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat1.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat3.x = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat3.x = u_xlat3.x * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat3.x = float(1.0) / u_xlat3.x;
					        u_xlat0.xyz = unity_LightColor[u_xlati_loop_1].xyz * u_xlat3.xxx + u_xlat0.xyz;
					    }
					    u_xlat0.xyz = u_xlat0.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat1.xyz = vec3(u_xlat12) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat2.z;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendAlpha" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec2 u_xlat4;
					int u_xlati12;
					float u_xlat13;
					bool u_xlatb13;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat0 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat1.x = float(0.0);
					    u_xlat1.y = float(0.0);
					    u_xlat1.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat13 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat13 = u_xlat13 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat13 = float(1.0) / u_xlat13;
					        u_xlat1.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat13) + u_xlat1.xyz;
					    }
					    u_xlat0.xyz = u_xlat1.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendAlpha" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec2 u_xlat4;
					int u_xlati12;
					float u_xlat13;
					bool u_xlatb13;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat0 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat1.x = float(0.0);
					    u_xlat1.y = float(0.0);
					    u_xlat1.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat13 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat13 = u_xlat13 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat13 = float(1.0) / u_xlat13;
					        u_xlat1.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat13) + u_xlat1.xyz;
					    }
					    u_xlat0.xyz = u_xlat1.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendAlpha" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec2 u_xlat4;
					int u_xlati12;
					float u_xlat13;
					bool u_xlatb13;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat0 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat1.x = float(0.0);
					    u_xlat1.y = float(0.0);
					    u_xlat1.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat13 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat13 = u_xlat13 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat13 = float(1.0) / u_xlat13;
					        u_xlat1.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat13) + u_xlat1.xyz;
					    }
					    u_xlat0.xyz = u_xlat1.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec2 u_xlat4;
					int u_xlati12;
					float u_xlat13;
					bool u_xlatb13;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat0 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat1.x = float(0.0);
					    u_xlat1.y = float(0.0);
					    u_xlat1.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat13 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat13 = u_xlat13 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat13 = float(1.0) / u_xlat13;
					        u_xlat1.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat13) + u_xlat1.xyz;
					    }
					    u_xlat0.xyz = u_xlat1.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendAlpha" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec2 u_xlat4;
					int u_xlati12;
					float u_xlat13;
					bool u_xlatb13;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat0 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat1.x = float(0.0);
					    u_xlat1.y = float(0.0);
					    u_xlat1.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat13 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat13 = u_xlat13 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat13 = float(1.0) / u_xlat13;
					        u_xlat1.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat13) + u_xlat1.xyz;
					    }
					    u_xlat0.xyz = u_xlat1.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec2 u_xlat4;
					int u_xlati12;
					float u_xlat13;
					bool u_xlatb13;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat0 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat1.x = float(0.0);
					    u_xlat1.y = float(0.0);
					    u_xlat1.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat13 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat13 = u_xlat13 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat13 = float(1.0) / u_xlat13;
					        u_xlat1.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat13) + u_xlat1.xyz;
					    }
					    u_xlat0.xyz = u_xlat1.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendAlpha" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec2 u_xlat4;
					int u_xlati12;
					float u_xlat13;
					bool u_xlatb13;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat0 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat1.x = float(0.0);
					    u_xlat1.y = float(0.0);
					    u_xlat1.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat13 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat13 = u_xlat13 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat13 = float(1.0) / u_xlat13;
					        u_xlat1.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat13) + u_xlat1.xyz;
					    }
					    u_xlat0.xyz = u_xlat1.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec2 u_xlat4;
					int u_xlati12;
					float u_xlat13;
					bool u_xlatb13;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat0 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat1.x = float(0.0);
					    u_xlat1.y = float(0.0);
					    u_xlat1.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat13 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat13 = u_xlat13 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat13 = float(1.0) / u_xlat13;
					        u_xlat1.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat13) + u_xlat1.xyz;
					    }
					    u_xlat0.xyz = u_xlat1.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendAlpha" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec2 u_xlat4;
					int u_xlati12;
					float u_xlat13;
					bool u_xlatb13;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat0 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat1.x = float(0.0);
					    u_xlat1.y = float(0.0);
					    u_xlat1.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat13 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat13 = u_xlat13 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat13 = float(1.0) / u_xlat13;
					        u_xlat1.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat13) + u_xlat1.xyz;
					    }
					    u_xlat0.xyz = u_xlat1.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendAlpha" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec2 u_xlat4;
					int u_xlati12;
					float u_xlat13;
					bool u_xlatb13;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat0 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat1.x = float(0.0);
					    u_xlat1.y = float(0.0);
					    u_xlat1.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat13 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat13 = u_xlat13 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat13 = float(1.0) / u_xlat13;
					        u_xlat1.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat13) + u_xlat1.xyz;
					    }
					    u_xlat0.xyz = u_xlat1.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendAlpha" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec2 u_xlat4;
					int u_xlati12;
					float u_xlat13;
					bool u_xlatb13;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat0 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat1.x = float(0.0);
					    u_xlat1.y = float(0.0);
					    u_xlat1.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat13 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat13 = u_xlat13 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat13 = float(1.0) / u_xlat13;
					        u_xlat1.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat13) + u_xlat1.xyz;
					    }
					    u_xlat0.xyz = u_xlat1.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec2 u_xlat4;
					int u_xlati12;
					float u_xlat13;
					bool u_xlatb13;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat0 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat1.x = float(0.0);
					    u_xlat1.y = float(0.0);
					    u_xlat1.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat13 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat13 = u_xlat13 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat13 = float(1.0) / u_xlat13;
					        u_xlat1.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat13) + u_xlat1.xyz;
					    }
					    u_xlat0.xyz = u_xlat1.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendAlpha" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec2 u_xlat4;
					int u_xlati12;
					float u_xlat13;
					bool u_xlatb13;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat0 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat1.x = float(0.0);
					    u_xlat1.y = float(0.0);
					    u_xlat1.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat13 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat13 = u_xlat13 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat13 = float(1.0) / u_xlat13;
					        u_xlat1.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat13) + u_xlat1.xyz;
					    }
					    u_xlat0.xyz = u_xlat1.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec2 u_xlat4;
					int u_xlati12;
					float u_xlat13;
					bool u_xlatb13;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat0 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat1.x = float(0.0);
					    u_xlat1.y = float(0.0);
					    u_xlat1.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat13 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat13 = u_xlat13 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat13 = float(1.0) / u_xlat13;
					        u_xlat1.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat13) + u_xlat1.xyz;
					    }
					    u_xlat0.xyz = u_xlat1.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendAlpha" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec2 u_xlat4;
					int u_xlati12;
					float u_xlat13;
					bool u_xlatb13;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat0 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat1.x = float(0.0);
					    u_xlat1.y = float(0.0);
					    u_xlat1.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat13 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat13 = u_xlat13 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat13 = float(1.0) / u_xlat13;
					        u_xlat1.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat13) + u_xlat1.xyz;
					    }
					    u_xlat0.xyz = u_xlat1.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec2 u_xlat4;
					int u_xlati12;
					float u_xlat13;
					bool u_xlatb13;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat0 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat1.x = float(0.0);
					    u_xlat1.y = float(0.0);
					    u_xlat1.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat13 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat13 = u_xlat13 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat13 = float(1.0) / u_xlat13;
					        u_xlat1.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat13) + u_xlat1.xyz;
					    }
					    u_xlat0.xyz = u_xlat1.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendAlpha" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat12;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat2.xyz = vec3(u_xlat12) * u_xlat2.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat2.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					bool u_xlatb3;
					vec2 u_xlat4;
					float u_xlat12;
					int u_xlati12;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat1 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat1.x);
					    u_xlat0.x = float(0.0);
					    u_xlat0.y = float(0.0);
					    u_xlat0.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat1.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat3.x = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat3.x = u_xlat3.x * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat3.x = float(1.0) / u_xlat3.x;
					        u_xlat0.xyz = unity_LightColor[u_xlati_loop_1].xyz * u_xlat3.xxx + u_xlat0.xyz;
					    }
					    u_xlat0.xyz = u_xlat0.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat1.xyz = vec3(u_xlat12) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendAlpha" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat12;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat2.xyz = vec3(u_xlat12) * u_xlat2.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat2.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					bool u_xlatb3;
					vec2 u_xlat4;
					float u_xlat12;
					int u_xlati12;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat1 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat1.x);
					    u_xlat0.x = float(0.0);
					    u_xlat0.y = float(0.0);
					    u_xlat0.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat1.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat3.x = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat3.x = u_xlat3.x * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat3.x = float(1.0) / u_xlat3.x;
					        u_xlat0.xyz = unity_LightColor[u_xlati_loop_1].xyz * u_xlat3.xxx + u_xlat0.xyz;
					    }
					    u_xlat0.xyz = u_xlat0.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat1.xyz = vec3(u_xlat12) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendAlpha" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat12;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat2.xyz = vec3(u_xlat12) * u_xlat2.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat2.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					bool u_xlatb3;
					vec2 u_xlat4;
					float u_xlat12;
					int u_xlati12;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat1 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat1.x);
					    u_xlat0.x = float(0.0);
					    u_xlat0.y = float(0.0);
					    u_xlat0.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat1.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat3.x = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat3.x = u_xlat3.x * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat3.x = float(1.0) / u_xlat3.x;
					        u_xlat0.xyz = unity_LightColor[u_xlati_loop_1].xyz * u_xlat3.xxx + u_xlat0.xyz;
					    }
					    u_xlat0.xyz = u_xlat0.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat1.xyz = vec3(u_xlat12) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat12;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat2.xyz = vec3(u_xlat12) * u_xlat2.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat2.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					bool u_xlatb3;
					vec2 u_xlat4;
					float u_xlat12;
					int u_xlati12;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat1 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat1.x);
					    u_xlat0.x = float(0.0);
					    u_xlat0.y = float(0.0);
					    u_xlat0.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat1.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat3.x = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat3.x = u_xlat3.x * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat3.x = float(1.0) / u_xlat3.x;
					        u_xlat0.xyz = unity_LightColor[u_xlati_loop_1].xyz * u_xlat3.xxx + u_xlat0.xyz;
					    }
					    u_xlat0.xyz = u_xlat0.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat1.xyz = vec3(u_xlat12) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendAlpha" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat12;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat2.xyz = vec3(u_xlat12) * u_xlat2.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat2.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					bool u_xlatb3;
					vec2 u_xlat4;
					float u_xlat12;
					int u_xlati12;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat1 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat1.x);
					    u_xlat0.x = float(0.0);
					    u_xlat0.y = float(0.0);
					    u_xlat0.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat1.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat3.x = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat3.x = u_xlat3.x * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat3.x = float(1.0) / u_xlat3.x;
					        u_xlat0.xyz = unity_LightColor[u_xlati_loop_1].xyz * u_xlat3.xxx + u_xlat0.xyz;
					    }
					    u_xlat0.xyz = u_xlat0.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat1.xyz = vec3(u_xlat12) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat12;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat2.xyz = vec3(u_xlat12) * u_xlat2.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat2.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					bool u_xlatb3;
					vec2 u_xlat4;
					float u_xlat12;
					int u_xlati12;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat1 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat1.x);
					    u_xlat0.x = float(0.0);
					    u_xlat0.y = float(0.0);
					    u_xlat0.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat1.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat3.x = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat3.x = u_xlat3.x * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat3.x = float(1.0) / u_xlat3.x;
					        u_xlat0.xyz = unity_LightColor[u_xlati_loop_1].xyz * u_xlat3.xxx + u_xlat0.xyz;
					    }
					    u_xlat0.xyz = u_xlat0.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat1.xyz = vec3(u_xlat12) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendAlpha" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat12;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat2.xyz = vec3(u_xlat12) * u_xlat2.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat2.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					bool u_xlatb3;
					vec2 u_xlat4;
					float u_xlat12;
					int u_xlati12;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat1 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat1.x);
					    u_xlat0.x = float(0.0);
					    u_xlat0.y = float(0.0);
					    u_xlat0.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat1.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat3.x = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat3.x = u_xlat3.x * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat3.x = float(1.0) / u_xlat3.x;
					        u_xlat0.xyz = unity_LightColor[u_xlati_loop_1].xyz * u_xlat3.xxx + u_xlat0.xyz;
					    }
					    u_xlat0.xyz = u_xlat0.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat1.xyz = vec3(u_xlat12) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat12;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat2.xyz = vec3(u_xlat12) * u_xlat2.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat2.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					bool u_xlatb3;
					vec2 u_xlat4;
					float u_xlat12;
					int u_xlati12;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat1 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat1.x);
					    u_xlat0.x = float(0.0);
					    u_xlat0.y = float(0.0);
					    u_xlat0.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat1.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat3.x = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat3.x = u_xlat3.x * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat3.x = float(1.0) / u_xlat3.x;
					        u_xlat0.xyz = unity_LightColor[u_xlati_loop_1].xyz * u_xlat3.xxx + u_xlat0.xyz;
					    }
					    u_xlat0.xyz = u_xlat0.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat1.xyz = vec3(u_xlat12) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendAlpha" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat12;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat2.xyz = vec3(u_xlat12) * u_xlat2.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat2.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					bool u_xlatb3;
					vec2 u_xlat4;
					float u_xlat12;
					int u_xlati12;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat1 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat1.x);
					    u_xlat0.x = float(0.0);
					    u_xlat0.y = float(0.0);
					    u_xlat0.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat1.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat3.x = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat3.x = u_xlat3.x * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat3.x = float(1.0) / u_xlat3.x;
					        u_xlat0.xyz = unity_LightColor[u_xlati_loop_1].xyz * u_xlat3.xxx + u_xlat0.xyz;
					    }
					    u_xlat0.xyz = u_xlat0.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat1.xyz = vec3(u_xlat12) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendAlpha" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat12;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat2.xyz = vec3(u_xlat12) * u_xlat2.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat2.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					bool u_xlatb3;
					vec2 u_xlat4;
					float u_xlat12;
					int u_xlati12;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat1 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat1.x);
					    u_xlat0.x = float(0.0);
					    u_xlat0.y = float(0.0);
					    u_xlat0.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat1.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat3.x = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat3.x = u_xlat3.x * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat3.x = float(1.0) / u_xlat3.x;
					        u_xlat0.xyz = unity_LightColor[u_xlati_loop_1].xyz * u_xlat3.xxx + u_xlat0.xyz;
					    }
					    u_xlat0.xyz = u_xlat0.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat1.xyz = vec3(u_xlat12) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendAlpha" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat12;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat2.xyz = vec3(u_xlat12) * u_xlat2.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat2.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					bool u_xlatb3;
					vec2 u_xlat4;
					float u_xlat12;
					int u_xlati12;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat1 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat1.x);
					    u_xlat0.x = float(0.0);
					    u_xlat0.y = float(0.0);
					    u_xlat0.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat1.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat3.x = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat3.x = u_xlat3.x * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat3.x = float(1.0) / u_xlat3.x;
					        u_xlat0.xyz = unity_LightColor[u_xlati_loop_1].xyz * u_xlat3.xxx + u_xlat0.xyz;
					    }
					    u_xlat0.xyz = u_xlat0.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat1.xyz = vec3(u_xlat12) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat12;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat2.xyz = vec3(u_xlat12) * u_xlat2.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat2.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					bool u_xlatb3;
					vec2 u_xlat4;
					float u_xlat12;
					int u_xlati12;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat1 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat1.x);
					    u_xlat0.x = float(0.0);
					    u_xlat0.y = float(0.0);
					    u_xlat0.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat1.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat3.x = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat3.x = u_xlat3.x * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat3.x = float(1.0) / u_xlat3.x;
					        u_xlat0.xyz = unity_LightColor[u_xlati_loop_1].xyz * u_xlat3.xxx + u_xlat0.xyz;
					    }
					    u_xlat0.xyz = u_xlat0.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat1.xyz = vec3(u_xlat12) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendAlpha" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat12;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat2.xyz = vec3(u_xlat12) * u_xlat2.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat2.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					bool u_xlatb3;
					vec2 u_xlat4;
					float u_xlat12;
					int u_xlati12;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat1 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat1.x);
					    u_xlat0.x = float(0.0);
					    u_xlat0.y = float(0.0);
					    u_xlat0.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat1.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat3.x = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat3.x = u_xlat3.x * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat3.x = float(1.0) / u_xlat3.x;
					        u_xlat0.xyz = unity_LightColor[u_xlati_loop_1].xyz * u_xlat3.xxx + u_xlat0.xyz;
					    }
					    u_xlat0.xyz = u_xlat0.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat1.xyz = vec3(u_xlat12) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat12;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat2.xyz = vec3(u_xlat12) * u_xlat2.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat2.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					bool u_xlatb3;
					vec2 u_xlat4;
					float u_xlat12;
					int u_xlati12;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat1 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat1.x);
					    u_xlat0.x = float(0.0);
					    u_xlat0.y = float(0.0);
					    u_xlat0.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat1.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat3.x = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat3.x = u_xlat3.x * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat3.x = float(1.0) / u_xlat3.x;
					        u_xlat0.xyz = unity_LightColor[u_xlati_loop_1].xyz * u_xlat3.xxx + u_xlat0.xyz;
					    }
					    u_xlat0.xyz = u_xlat0.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat1.xyz = vec3(u_xlat12) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendAlpha" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat12;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat2.xyz = vec3(u_xlat12) * u_xlat2.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat2.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					bool u_xlatb3;
					vec2 u_xlat4;
					float u_xlat12;
					int u_xlati12;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat1 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat1.x);
					    u_xlat0.x = float(0.0);
					    u_xlat0.y = float(0.0);
					    u_xlat0.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat1.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat3.x = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat3.x = u_xlat3.x * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat3.x = float(1.0) / u_xlat3.x;
					        u_xlat0.xyz = unity_LightColor[u_xlati_loop_1].xyz * u_xlat3.xxx + u_xlat0.xyz;
					    }
					    u_xlat0.xyz = u_xlat0.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat1.xyz = vec3(u_xlat12) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat12;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat2.xyz = vec3(u_xlat12) * u_xlat2.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat2.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					bool u_xlatb3;
					vec2 u_xlat4;
					float u_xlat12;
					int u_xlati12;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat1 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat1.x);
					    u_xlat0.x = float(0.0);
					    u_xlat0.y = float(0.0);
					    u_xlat0.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat1.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat3.x = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat3.x = u_xlat3.x * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat3.x = float(1.0) / u_xlat3.x;
					        u_xlat0.xyz = unity_LightColor[u_xlati_loop_1].xyz * u_xlat3.xxx + u_xlat0.xyz;
					    }
					    u_xlat0.xyz = u_xlat0.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat1.xyz = vec3(u_xlat12) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendAlpha" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec2 u_xlat4;
					int u_xlati12;
					float u_xlat13;
					bool u_xlatb13;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat0 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat1.x = float(0.0);
					    u_xlat1.y = float(0.0);
					    u_xlat1.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat13 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat13 = u_xlat13 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat13 = float(1.0) / u_xlat13;
					        u_xlat1.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat13) + u_xlat1.xyz;
					    }
					    u_xlat0.xyz = u_xlat1.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendAlpha" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec2 u_xlat4;
					int u_xlati12;
					float u_xlat13;
					bool u_xlatb13;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat0 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat1.x = float(0.0);
					    u_xlat1.y = float(0.0);
					    u_xlat1.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat13 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat13 = u_xlat13 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat13 = float(1.0) / u_xlat13;
					        u_xlat1.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat13) + u_xlat1.xyz;
					    }
					    u_xlat0.xyz = u_xlat1.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendAlpha" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec2 u_xlat4;
					int u_xlati12;
					float u_xlat13;
					bool u_xlatb13;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat0 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat1.x = float(0.0);
					    u_xlat1.y = float(0.0);
					    u_xlat1.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat13 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat13 = u_xlat13 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat13 = float(1.0) / u_xlat13;
					        u_xlat1.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat13) + u_xlat1.xyz;
					    }
					    u_xlat0.xyz = u_xlat1.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec2 u_xlat4;
					int u_xlati12;
					float u_xlat13;
					bool u_xlatb13;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat0 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat1.x = float(0.0);
					    u_xlat1.y = float(0.0);
					    u_xlat1.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat13 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat13 = u_xlat13 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat13 = float(1.0) / u_xlat13;
					        u_xlat1.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat13) + u_xlat1.xyz;
					    }
					    u_xlat0.xyz = u_xlat1.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendAlpha" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec2 u_xlat4;
					int u_xlati12;
					float u_xlat13;
					bool u_xlatb13;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat0 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat1.x = float(0.0);
					    u_xlat1.y = float(0.0);
					    u_xlat1.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat13 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat13 = u_xlat13 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat13 = float(1.0) / u_xlat13;
					        u_xlat1.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat13) + u_xlat1.xyz;
					    }
					    u_xlat0.xyz = u_xlat1.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec2 u_xlat4;
					int u_xlati12;
					float u_xlat13;
					bool u_xlatb13;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat0 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat1.x = float(0.0);
					    u_xlat1.y = float(0.0);
					    u_xlat1.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat13 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat13 = u_xlat13 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat13 = float(1.0) / u_xlat13;
					        u_xlat1.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat13) + u_xlat1.xyz;
					    }
					    u_xlat0.xyz = u_xlat1.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendAlpha" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec2 u_xlat4;
					int u_xlati12;
					float u_xlat13;
					bool u_xlatb13;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat0 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat1.x = float(0.0);
					    u_xlat1.y = float(0.0);
					    u_xlat1.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat13 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat13 = u_xlat13 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat13 = float(1.0) / u_xlat13;
					        u_xlat1.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat13) + u_xlat1.xyz;
					    }
					    u_xlat0.xyz = u_xlat1.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec2 u_xlat4;
					int u_xlati12;
					float u_xlat13;
					bool u_xlatb13;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat0 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat1.x = float(0.0);
					    u_xlat1.y = float(0.0);
					    u_xlat1.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat13 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat13 = u_xlat13 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat13 = float(1.0) / u_xlat13;
					        u_xlat1.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat13) + u_xlat1.xyz;
					    }
					    u_xlat0.xyz = u_xlat1.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendAlpha" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec2 u_xlat4;
					int u_xlati12;
					float u_xlat13;
					bool u_xlatb13;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat0 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat1.x = float(0.0);
					    u_xlat1.y = float(0.0);
					    u_xlat1.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat13 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat13 = u_xlat13 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat13 = float(1.0) / u_xlat13;
					        u_xlat1.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat13) + u_xlat1.xyz;
					    }
					    u_xlat0.xyz = u_xlat1.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendAlpha" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec2 u_xlat4;
					int u_xlati12;
					float u_xlat13;
					bool u_xlatb13;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat0 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat1.x = float(0.0);
					    u_xlat1.y = float(0.0);
					    u_xlat1.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat13 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat13 = u_xlat13 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat13 = float(1.0) / u_xlat13;
					        u_xlat1.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat13) + u_xlat1.xyz;
					    }
					    u_xlat0.xyz = u_xlat1.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendAlpha" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec2 u_xlat4;
					int u_xlati12;
					float u_xlat13;
					bool u_xlatb13;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat0 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat1.x = float(0.0);
					    u_xlat1.y = float(0.0);
					    u_xlat1.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat13 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat13 = u_xlat13 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat13 = float(1.0) / u_xlat13;
					        u_xlat1.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat13) + u_xlat1.xyz;
					    }
					    u_xlat0.xyz = u_xlat1.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec2 u_xlat4;
					int u_xlati12;
					float u_xlat13;
					bool u_xlatb13;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat0 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat1.x = float(0.0);
					    u_xlat1.y = float(0.0);
					    u_xlat1.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat13 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat13 = u_xlat13 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat13 = float(1.0) / u_xlat13;
					        u_xlat1.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat13) + u_xlat1.xyz;
					    }
					    u_xlat0.xyz = u_xlat1.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendAlpha" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec2 u_xlat4;
					int u_xlati12;
					float u_xlat13;
					bool u_xlatb13;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat0 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat1.x = float(0.0);
					    u_xlat1.y = float(0.0);
					    u_xlat1.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat13 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat13 = u_xlat13 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat13 = float(1.0) / u_xlat13;
					        u_xlat1.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat13) + u_xlat1.xyz;
					    }
					    u_xlat0.xyz = u_xlat1.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec2 u_xlat4;
					int u_xlati12;
					float u_xlat13;
					bool u_xlatb13;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat0 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat1.x = float(0.0);
					    u_xlat1.y = float(0.0);
					    u_xlat1.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat13 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat13 = u_xlat13 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat13 = float(1.0) / u_xlat13;
					        u_xlat1.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat13) + u_xlat1.xyz;
					    }
					    u_xlat0.xyz = u_xlat1.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendAlpha" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec2 u_xlat4;
					int u_xlati12;
					float u_xlat13;
					bool u_xlatb13;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat0 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat1.x = float(0.0);
					    u_xlat1.y = float(0.0);
					    u_xlat1.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat13 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat13 = u_xlat13 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat13 = float(1.0) / u_xlat13;
					        u_xlat1.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat13) + u_xlat1.xyz;
					    }
					    u_xlat0.xyz = u_xlat1.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec2 u_xlat4;
					int u_xlati12;
					float u_xlat13;
					bool u_xlatb13;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat0 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat1.x = float(0.0);
					    u_xlat1.y = float(0.0);
					    u_xlat1.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat13 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat13 = u_xlat13 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat13 = float(1.0) / u_xlat13;
					        u_xlat1.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat13) + u_xlat1.xyz;
					    }
					    u_xlat0.xyz = u_xlat1.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendAlpha" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat12;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat2.xyz = vec3(u_xlat12) * u_xlat2.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat2.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					bool u_xlatb3;
					vec2 u_xlat4;
					float u_xlat12;
					int u_xlati12;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat1 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat1.x);
					    u_xlat0.x = float(0.0);
					    u_xlat0.y = float(0.0);
					    u_xlat0.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat1.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat3.x = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat3.x = u_xlat3.x * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat3.x = float(1.0) / u_xlat3.x;
					        u_xlat0.xyz = unity_LightColor[u_xlati_loop_1].xyz * u_xlat3.xxx + u_xlat0.xyz;
					    }
					    u_xlat0.xyz = u_xlat0.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat1.xyz = vec3(u_xlat12) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendAlpha" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat12;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat2.xyz = vec3(u_xlat12) * u_xlat2.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat2.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					bool u_xlatb3;
					vec2 u_xlat4;
					float u_xlat12;
					int u_xlati12;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat1 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat1.x);
					    u_xlat0.x = float(0.0);
					    u_xlat0.y = float(0.0);
					    u_xlat0.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat1.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat3.x = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat3.x = u_xlat3.x * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat3.x = float(1.0) / u_xlat3.x;
					        u_xlat0.xyz = unity_LightColor[u_xlati_loop_1].xyz * u_xlat3.xxx + u_xlat0.xyz;
					    }
					    u_xlat0.xyz = u_xlat0.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat1.xyz = vec3(u_xlat12) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendAlpha" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat12;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat2.xyz = vec3(u_xlat12) * u_xlat2.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat2.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					bool u_xlatb3;
					vec2 u_xlat4;
					float u_xlat12;
					int u_xlati12;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat1 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat1.x);
					    u_xlat0.x = float(0.0);
					    u_xlat0.y = float(0.0);
					    u_xlat0.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat1.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat3.x = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat3.x = u_xlat3.x * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat3.x = float(1.0) / u_xlat3.x;
					        u_xlat0.xyz = unity_LightColor[u_xlati_loop_1].xyz * u_xlat3.xxx + u_xlat0.xyz;
					    }
					    u_xlat0.xyz = u_xlat0.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat1.xyz = vec3(u_xlat12) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat12;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat2.xyz = vec3(u_xlat12) * u_xlat2.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat2.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					bool u_xlatb3;
					vec2 u_xlat4;
					float u_xlat12;
					int u_xlati12;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat1 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat1.x);
					    u_xlat0.x = float(0.0);
					    u_xlat0.y = float(0.0);
					    u_xlat0.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat1.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat3.x = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat3.x = u_xlat3.x * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat3.x = float(1.0) / u_xlat3.x;
					        u_xlat0.xyz = unity_LightColor[u_xlati_loop_1].xyz * u_xlat3.xxx + u_xlat0.xyz;
					    }
					    u_xlat0.xyz = u_xlat0.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat1.xyz = vec3(u_xlat12) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendAlpha" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat12;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat2.xyz = vec3(u_xlat12) * u_xlat2.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat2.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					bool u_xlatb3;
					vec2 u_xlat4;
					float u_xlat12;
					int u_xlati12;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat1 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat1.x);
					    u_xlat0.x = float(0.0);
					    u_xlat0.y = float(0.0);
					    u_xlat0.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat1.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat3.x = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat3.x = u_xlat3.x * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat3.x = float(1.0) / u_xlat3.x;
					        u_xlat0.xyz = unity_LightColor[u_xlati_loop_1].xyz * u_xlat3.xxx + u_xlat0.xyz;
					    }
					    u_xlat0.xyz = u_xlat0.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat1.xyz = vec3(u_xlat12) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat12;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat2.xyz = vec3(u_xlat12) * u_xlat2.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat2.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					bool u_xlatb3;
					vec2 u_xlat4;
					float u_xlat12;
					int u_xlati12;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat1 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat1.x);
					    u_xlat0.x = float(0.0);
					    u_xlat0.y = float(0.0);
					    u_xlat0.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat1.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat3.x = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat3.x = u_xlat3.x * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat3.x = float(1.0) / u_xlat3.x;
					        u_xlat0.xyz = unity_LightColor[u_xlati_loop_1].xyz * u_xlat3.xxx + u_xlat0.xyz;
					    }
					    u_xlat0.xyz = u_xlat0.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat1.xyz = vec3(u_xlat12) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendAlpha" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat12;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat2.xyz = vec3(u_xlat12) * u_xlat2.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat2.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					bool u_xlatb3;
					vec2 u_xlat4;
					float u_xlat12;
					int u_xlati12;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat1 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat1.x);
					    u_xlat0.x = float(0.0);
					    u_xlat0.y = float(0.0);
					    u_xlat0.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat1.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat3.x = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat3.x = u_xlat3.x * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat3.x = float(1.0) / u_xlat3.x;
					        u_xlat0.xyz = unity_LightColor[u_xlati_loop_1].xyz * u_xlat3.xxx + u_xlat0.xyz;
					    }
					    u_xlat0.xyz = u_xlat0.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat1.xyz = vec3(u_xlat12) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat12;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat2.xyz = vec3(u_xlat12) * u_xlat2.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat2.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					bool u_xlatb3;
					vec2 u_xlat4;
					float u_xlat12;
					int u_xlati12;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat1 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat1.x);
					    u_xlat0.x = float(0.0);
					    u_xlat0.y = float(0.0);
					    u_xlat0.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat1.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat3.x = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat3.x = u_xlat3.x * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat3.x = float(1.0) / u_xlat3.x;
					        u_xlat0.xyz = unity_LightColor[u_xlati_loop_1].xyz * u_xlat3.xxx + u_xlat0.xyz;
					    }
					    u_xlat0.xyz = u_xlat0.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat1.xyz = vec3(u_xlat12) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendAlpha" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat12;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat2.xyz = vec3(u_xlat12) * u_xlat2.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat2.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					bool u_xlatb3;
					vec2 u_xlat4;
					float u_xlat12;
					int u_xlati12;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat1 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat1.x);
					    u_xlat0.x = float(0.0);
					    u_xlat0.y = float(0.0);
					    u_xlat0.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat1.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat3.x = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat3.x = u_xlat3.x * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat3.x = float(1.0) / u_xlat3.x;
					        u_xlat0.xyz = unity_LightColor[u_xlati_loop_1].xyz * u_xlat3.xxx + u_xlat0.xyz;
					    }
					    u_xlat0.xyz = u_xlat0.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat1.xyz = vec3(u_xlat12) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendAlpha" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat12;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat2.xyz = vec3(u_xlat12) * u_xlat2.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat2.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					bool u_xlatb3;
					vec2 u_xlat4;
					float u_xlat12;
					int u_xlati12;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat1 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat1.x);
					    u_xlat0.x = float(0.0);
					    u_xlat0.y = float(0.0);
					    u_xlat0.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat1.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat3.x = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat3.x = u_xlat3.x * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat3.x = float(1.0) / u_xlat3.x;
					        u_xlat0.xyz = unity_LightColor[u_xlati_loop_1].xyz * u_xlat3.xxx + u_xlat0.xyz;
					    }
					    u_xlat0.xyz = u_xlat0.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat1.xyz = vec3(u_xlat12) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendAlpha" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat12;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat2.xyz = vec3(u_xlat12) * u_xlat2.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat2.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					bool u_xlatb3;
					vec2 u_xlat4;
					float u_xlat12;
					int u_xlati12;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat1 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat1.x);
					    u_xlat0.x = float(0.0);
					    u_xlat0.y = float(0.0);
					    u_xlat0.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat1.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat3.x = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat3.x = u_xlat3.x * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat3.x = float(1.0) / u_xlat3.x;
					        u_xlat0.xyz = unity_LightColor[u_xlati_loop_1].xyz * u_xlat3.xxx + u_xlat0.xyz;
					    }
					    u_xlat0.xyz = u_xlat0.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat1.xyz = vec3(u_xlat12) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat12;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat2.xyz = vec3(u_xlat12) * u_xlat2.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat2.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					bool u_xlatb3;
					vec2 u_xlat4;
					float u_xlat12;
					int u_xlati12;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat1 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat1.x);
					    u_xlat0.x = float(0.0);
					    u_xlat0.y = float(0.0);
					    u_xlat0.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat1.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat3.x = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat3.x = u_xlat3.x * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat3.x = float(1.0) / u_xlat3.x;
					        u_xlat0.xyz = unity_LightColor[u_xlati_loop_1].xyz * u_xlat3.xxx + u_xlat0.xyz;
					    }
					    u_xlat0.xyz = u_xlat0.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat1.xyz = vec3(u_xlat12) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendAlpha" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat12;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat2.xyz = vec3(u_xlat12) * u_xlat2.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat2.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					bool u_xlatb3;
					vec2 u_xlat4;
					float u_xlat12;
					int u_xlati12;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat1 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat1.x);
					    u_xlat0.x = float(0.0);
					    u_xlat0.y = float(0.0);
					    u_xlat0.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat1.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat3.x = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat3.x = u_xlat3.x * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat3.x = float(1.0) / u_xlat3.x;
					        u_xlat0.xyz = unity_LightColor[u_xlati_loop_1].xyz * u_xlat3.xxx + u_xlat0.xyz;
					    }
					    u_xlat0.xyz = u_xlat0.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat1.xyz = vec3(u_xlat12) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat12;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat2.xyz = vec3(u_xlat12) * u_xlat2.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat2.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					bool u_xlatb3;
					vec2 u_xlat4;
					float u_xlat12;
					int u_xlati12;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat1 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat1.x);
					    u_xlat0.x = float(0.0);
					    u_xlat0.y = float(0.0);
					    u_xlat0.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat1.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat3.x = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat3.x = u_xlat3.x * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat3.x = float(1.0) / u_xlat3.x;
					        u_xlat0.xyz = unity_LightColor[u_xlati_loop_1].xyz * u_xlat3.xxx + u_xlat0.xyz;
					    }
					    u_xlat0.xyz = u_xlat0.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat1.xyz = vec3(u_xlat12) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendAlpha" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat12;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat2.xyz = vec3(u_xlat12) * u_xlat2.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat2.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					bool u_xlatb3;
					vec2 u_xlat4;
					float u_xlat12;
					int u_xlati12;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat1 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat1.x);
					    u_xlat0.x = float(0.0);
					    u_xlat0.y = float(0.0);
					    u_xlat0.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat1.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat3.x = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat3.x = u_xlat3.x * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat3.x = float(1.0) / u_xlat3.x;
					        u_xlat0.xyz = unity_LightColor[u_xlati_loop_1].xyz * u_xlat3.xxx + u_xlat0.xyz;
					    }
					    u_xlat0.xyz = u_xlat0.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat1.xyz = vec3(u_xlat12) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat12;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat2.xyz = vec3(u_xlat12) * u_xlat2.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat2.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					bool u_xlatb3;
					vec2 u_xlat4;
					float u_xlat12;
					int u_xlati12;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat1 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat1.x);
					    u_xlat0.x = float(0.0);
					    u_xlat0.y = float(0.0);
					    u_xlat0.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat1.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat3.x = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat3.x = u_xlat3.x * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat3.x = float(1.0) / u_xlat3.x;
					        u_xlat0.xyz = unity_LightColor[u_xlati_loop_1].xyz * u_xlat3.xxx + u_xlat0.xyz;
					    }
					    u_xlat0.xyz = u_xlat0.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat1.xyz = vec3(u_xlat12) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendAlpha" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec2 u_xlat4;
					int u_xlati12;
					float u_xlat13;
					bool u_xlatb13;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat0 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat1.x = float(0.0);
					    u_xlat1.y = float(0.0);
					    u_xlat1.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat13 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat13 = u_xlat13 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat13 = float(1.0) / u_xlat13;
					        u_xlat1.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat13) + u_xlat1.xyz;
					    }
					    u_xlat0.xyz = u_xlat1.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendAlpha" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec2 u_xlat4;
					int u_xlati12;
					float u_xlat13;
					bool u_xlatb13;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat0 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat1.x = float(0.0);
					    u_xlat1.y = float(0.0);
					    u_xlat1.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat13 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat13 = u_xlat13 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat13 = float(1.0) / u_xlat13;
					        u_xlat1.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat13) + u_xlat1.xyz;
					    }
					    u_xlat0.xyz = u_xlat1.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendAlpha" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec2 u_xlat4;
					int u_xlati12;
					float u_xlat13;
					bool u_xlatb13;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat0 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat1.x = float(0.0);
					    u_xlat1.y = float(0.0);
					    u_xlat1.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat13 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat13 = u_xlat13 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat13 = float(1.0) / u_xlat13;
					        u_xlat1.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat13) + u_xlat1.xyz;
					    }
					    u_xlat0.xyz = u_xlat1.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec2 u_xlat4;
					int u_xlati12;
					float u_xlat13;
					bool u_xlatb13;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat0 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat1.x = float(0.0);
					    u_xlat1.y = float(0.0);
					    u_xlat1.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat13 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat13 = u_xlat13 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat13 = float(1.0) / u_xlat13;
					        u_xlat1.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat13) + u_xlat1.xyz;
					    }
					    u_xlat0.xyz = u_xlat1.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendAlpha" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec2 u_xlat4;
					int u_xlati12;
					float u_xlat13;
					bool u_xlatb13;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat0 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat1.x = float(0.0);
					    u_xlat1.y = float(0.0);
					    u_xlat1.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat13 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat13 = u_xlat13 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat13 = float(1.0) / u_xlat13;
					        u_xlat1.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat13) + u_xlat1.xyz;
					    }
					    u_xlat0.xyz = u_xlat1.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec2 u_xlat4;
					int u_xlati12;
					float u_xlat13;
					bool u_xlatb13;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat0 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat1.x = float(0.0);
					    u_xlat1.y = float(0.0);
					    u_xlat1.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat13 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat13 = u_xlat13 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat13 = float(1.0) / u_xlat13;
					        u_xlat1.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat13) + u_xlat1.xyz;
					    }
					    u_xlat0.xyz = u_xlat1.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendAlpha" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec2 u_xlat4;
					int u_xlati12;
					float u_xlat13;
					bool u_xlatb13;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat0 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat1.x = float(0.0);
					    u_xlat1.y = float(0.0);
					    u_xlat1.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat13 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat13 = u_xlat13 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat13 = float(1.0) / u_xlat13;
					        u_xlat1.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat13) + u_xlat1.xyz;
					    }
					    u_xlat0.xyz = u_xlat1.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec2 u_xlat4;
					int u_xlati12;
					float u_xlat13;
					bool u_xlatb13;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat0 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat1.x = float(0.0);
					    u_xlat1.y = float(0.0);
					    u_xlat1.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat13 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat13 = u_xlat13 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat13 = float(1.0) / u_xlat13;
					        u_xlat1.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat13) + u_xlat1.xyz;
					    }
					    u_xlat0.xyz = u_xlat1.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendAlpha" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec2 u_xlat4;
					int u_xlati12;
					float u_xlat13;
					bool u_xlatb13;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat0 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat1.x = float(0.0);
					    u_xlat1.y = float(0.0);
					    u_xlat1.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat13 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat13 = u_xlat13 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat13 = float(1.0) / u_xlat13;
					        u_xlat1.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat13) + u_xlat1.xyz;
					    }
					    u_xlat0.xyz = u_xlat1.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendAlpha" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec2 u_xlat4;
					int u_xlati12;
					float u_xlat13;
					bool u_xlatb13;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat0 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat1.x = float(0.0);
					    u_xlat1.y = float(0.0);
					    u_xlat1.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat13 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat13 = u_xlat13 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat13 = float(1.0) / u_xlat13;
					        u_xlat1.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat13) + u_xlat1.xyz;
					    }
					    u_xlat0.xyz = u_xlat1.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendAlpha" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec2 u_xlat4;
					int u_xlati12;
					float u_xlat13;
					bool u_xlatb13;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat0 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat1.x = float(0.0);
					    u_xlat1.y = float(0.0);
					    u_xlat1.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat13 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat13 = u_xlat13 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat13 = float(1.0) / u_xlat13;
					        u_xlat1.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat13) + u_xlat1.xyz;
					    }
					    u_xlat0.xyz = u_xlat1.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec2 u_xlat4;
					int u_xlati12;
					float u_xlat13;
					bool u_xlatb13;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat0 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat1.x = float(0.0);
					    u_xlat1.y = float(0.0);
					    u_xlat1.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat13 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat13 = u_xlat13 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat13 = float(1.0) / u_xlat13;
					        u_xlat1.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat13) + u_xlat1.xyz;
					    }
					    u_xlat0.xyz = u_xlat1.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendAlpha" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec2 u_xlat4;
					int u_xlati12;
					float u_xlat13;
					bool u_xlatb13;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat0 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat1.x = float(0.0);
					    u_xlat1.y = float(0.0);
					    u_xlat1.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat13 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat13 = u_xlat13 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat13 = float(1.0) / u_xlat13;
					        u_xlat1.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat13) + u_xlat1.xyz;
					    }
					    u_xlat0.xyz = u_xlat1.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec2 u_xlat4;
					int u_xlati12;
					float u_xlat13;
					bool u_xlatb13;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat0 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat1.x = float(0.0);
					    u_xlat1.y = float(0.0);
					    u_xlat1.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat13 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat13 = u_xlat13 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat13 = float(1.0) / u_xlat13;
					        u_xlat1.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat13) + u_xlat1.xyz;
					    }
					    u_xlat0.xyz = u_xlat1.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendAlpha" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec2 u_xlat4;
					int u_xlati12;
					float u_xlat13;
					bool u_xlatb13;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat0 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat1.x = float(0.0);
					    u_xlat1.y = float(0.0);
					    u_xlat1.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat13 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat13 = u_xlat13 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat13 = float(1.0) / u_xlat13;
					        u_xlat1.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat13) + u_xlat1.xyz;
					    }
					    u_xlat0.xyz = u_xlat1.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec2 u_xlat4;
					int u_xlati12;
					float u_xlat13;
					bool u_xlatb13;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat0 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat1.x = float(0.0);
					    u_xlat1.y = float(0.0);
					    u_xlat1.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat13 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat13 = u_xlat13 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat13 = float(1.0) / u_xlat13;
					        u_xlat1.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat13) + u_xlat1.xyz;
					    }
					    u_xlat0.xyz = u_xlat1.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendAlpha" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat12;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat2.xyz = vec3(u_xlat12) * u_xlat2.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat2.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					bool u_xlatb3;
					vec2 u_xlat4;
					float u_xlat12;
					int u_xlati12;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat1 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat1.x);
					    u_xlat0.x = float(0.0);
					    u_xlat0.y = float(0.0);
					    u_xlat0.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat1.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat3.x = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat3.x = u_xlat3.x * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat3.x = float(1.0) / u_xlat3.x;
					        u_xlat0.xyz = unity_LightColor[u_xlati_loop_1].xyz * u_xlat3.xxx + u_xlat0.xyz;
					    }
					    u_xlat0.xyz = u_xlat0.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat1.xyz = vec3(u_xlat12) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendAlpha" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat12;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat2.xyz = vec3(u_xlat12) * u_xlat2.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat2.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					bool u_xlatb3;
					vec2 u_xlat4;
					float u_xlat12;
					int u_xlati12;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat1 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat1.x);
					    u_xlat0.x = float(0.0);
					    u_xlat0.y = float(0.0);
					    u_xlat0.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat1.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat3.x = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat3.x = u_xlat3.x * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat3.x = float(1.0) / u_xlat3.x;
					        u_xlat0.xyz = unity_LightColor[u_xlati_loop_1].xyz * u_xlat3.xxx + u_xlat0.xyz;
					    }
					    u_xlat0.xyz = u_xlat0.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat1.xyz = vec3(u_xlat12) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendAlpha" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat12;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat2.xyz = vec3(u_xlat12) * u_xlat2.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat2.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					bool u_xlatb3;
					vec2 u_xlat4;
					float u_xlat12;
					int u_xlati12;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat1 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat1.x);
					    u_xlat0.x = float(0.0);
					    u_xlat0.y = float(0.0);
					    u_xlat0.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat1.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat3.x = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat3.x = u_xlat3.x * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat3.x = float(1.0) / u_xlat3.x;
					        u_xlat0.xyz = unity_LightColor[u_xlati_loop_1].xyz * u_xlat3.xxx + u_xlat0.xyz;
					    }
					    u_xlat0.xyz = u_xlat0.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat1.xyz = vec3(u_xlat12) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat12;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat2.xyz = vec3(u_xlat12) * u_xlat2.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat2.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					bool u_xlatb3;
					vec2 u_xlat4;
					float u_xlat12;
					int u_xlati12;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat1 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat1.x);
					    u_xlat0.x = float(0.0);
					    u_xlat0.y = float(0.0);
					    u_xlat0.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat1.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat3.x = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat3.x = u_xlat3.x * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat3.x = float(1.0) / u_xlat3.x;
					        u_xlat0.xyz = unity_LightColor[u_xlati_loop_1].xyz * u_xlat3.xxx + u_xlat0.xyz;
					    }
					    u_xlat0.xyz = u_xlat0.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat1.xyz = vec3(u_xlat12) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendAlpha" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat12;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat2.xyz = vec3(u_xlat12) * u_xlat2.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat2.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					bool u_xlatb3;
					vec2 u_xlat4;
					float u_xlat12;
					int u_xlati12;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat1 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat1.x);
					    u_xlat0.x = float(0.0);
					    u_xlat0.y = float(0.0);
					    u_xlat0.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat1.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat3.x = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat3.x = u_xlat3.x * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat3.x = float(1.0) / u_xlat3.x;
					        u_xlat0.xyz = unity_LightColor[u_xlati_loop_1].xyz * u_xlat3.xxx + u_xlat0.xyz;
					    }
					    u_xlat0.xyz = u_xlat0.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat1.xyz = vec3(u_xlat12) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat12;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat2.xyz = vec3(u_xlat12) * u_xlat2.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat2.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					bool u_xlatb3;
					vec2 u_xlat4;
					float u_xlat12;
					int u_xlati12;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat1 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat1.x);
					    u_xlat0.x = float(0.0);
					    u_xlat0.y = float(0.0);
					    u_xlat0.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat1.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat3.x = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat3.x = u_xlat3.x * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat3.x = float(1.0) / u_xlat3.x;
					        u_xlat0.xyz = unity_LightColor[u_xlati_loop_1].xyz * u_xlat3.xxx + u_xlat0.xyz;
					    }
					    u_xlat0.xyz = u_xlat0.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat1.xyz = vec3(u_xlat12) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendAlpha" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat12;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat2.xyz = vec3(u_xlat12) * u_xlat2.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat2.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					bool u_xlatb3;
					vec2 u_xlat4;
					float u_xlat12;
					int u_xlati12;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat1 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat1.x);
					    u_xlat0.x = float(0.0);
					    u_xlat0.y = float(0.0);
					    u_xlat0.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat1.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat3.x = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat3.x = u_xlat3.x * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat3.x = float(1.0) / u_xlat3.x;
					        u_xlat0.xyz = unity_LightColor[u_xlati_loop_1].xyz * u_xlat3.xxx + u_xlat0.xyz;
					    }
					    u_xlat0.xyz = u_xlat0.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat1.xyz = vec3(u_xlat12) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat12;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat2.xyz = vec3(u_xlat12) * u_xlat2.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat2.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					bool u_xlatb3;
					vec2 u_xlat4;
					float u_xlat12;
					int u_xlati12;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat1 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat1.x);
					    u_xlat0.x = float(0.0);
					    u_xlat0.y = float(0.0);
					    u_xlat0.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat1.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat3.x = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat3.x = u_xlat3.x * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat3.x = float(1.0) / u_xlat3.x;
					        u_xlat0.xyz = unity_LightColor[u_xlati_loop_1].xyz * u_xlat3.xxx + u_xlat0.xyz;
					    }
					    u_xlat0.xyz = u_xlat0.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat1.xyz = vec3(u_xlat12) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendAlpha" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat12;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat2.xyz = vec3(u_xlat12) * u_xlat2.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat2.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					bool u_xlatb3;
					vec2 u_xlat4;
					float u_xlat12;
					int u_xlati12;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat1 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat1.x);
					    u_xlat0.x = float(0.0);
					    u_xlat0.y = float(0.0);
					    u_xlat0.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat1.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat3.x = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat3.x = u_xlat3.x * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat3.x = float(1.0) / u_xlat3.x;
					        u_xlat0.xyz = unity_LightColor[u_xlati_loop_1].xyz * u_xlat3.xxx + u_xlat0.xyz;
					    }
					    u_xlat0.xyz = u_xlat0.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat1.xyz = vec3(u_xlat12) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendAlpha" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat12;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat2.xyz = vec3(u_xlat12) * u_xlat2.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat2.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					bool u_xlatb3;
					vec2 u_xlat4;
					float u_xlat12;
					int u_xlati12;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat1 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat1.x);
					    u_xlat0.x = float(0.0);
					    u_xlat0.y = float(0.0);
					    u_xlat0.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat1.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat3.x = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat3.x = u_xlat3.x * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat3.x = float(1.0) / u_xlat3.x;
					        u_xlat0.xyz = unity_LightColor[u_xlati_loop_1].xyz * u_xlat3.xxx + u_xlat0.xyz;
					    }
					    u_xlat0.xyz = u_xlat0.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat1.xyz = vec3(u_xlat12) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendAlpha" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat12;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat2.xyz = vec3(u_xlat12) * u_xlat2.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat2.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					bool u_xlatb3;
					vec2 u_xlat4;
					float u_xlat12;
					int u_xlati12;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat1 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat1.x);
					    u_xlat0.x = float(0.0);
					    u_xlat0.y = float(0.0);
					    u_xlat0.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat1.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat3.x = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat3.x = u_xlat3.x * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat3.x = float(1.0) / u_xlat3.x;
					        u_xlat0.xyz = unity_LightColor[u_xlati_loop_1].xyz * u_xlat3.xxx + u_xlat0.xyz;
					    }
					    u_xlat0.xyz = u_xlat0.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat1.xyz = vec3(u_xlat12) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat12;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat2.xyz = vec3(u_xlat12) * u_xlat2.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat2.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					bool u_xlatb3;
					vec2 u_xlat4;
					float u_xlat12;
					int u_xlati12;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat1 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat1.x);
					    u_xlat0.x = float(0.0);
					    u_xlat0.y = float(0.0);
					    u_xlat0.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat1.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat3.x = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat3.x = u_xlat3.x * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat3.x = float(1.0) / u_xlat3.x;
					        u_xlat0.xyz = unity_LightColor[u_xlati_loop_1].xyz * u_xlat3.xxx + u_xlat0.xyz;
					    }
					    u_xlat0.xyz = u_xlat0.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat1.xyz = vec3(u_xlat12) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendAlpha" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat12;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat2.xyz = vec3(u_xlat12) * u_xlat2.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat2.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					bool u_xlatb3;
					vec2 u_xlat4;
					float u_xlat12;
					int u_xlati12;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat1 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat1.x);
					    u_xlat0.x = float(0.0);
					    u_xlat0.y = float(0.0);
					    u_xlat0.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat1.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat3.x = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat3.x = u_xlat3.x * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat3.x = float(1.0) / u_xlat3.x;
					        u_xlat0.xyz = unity_LightColor[u_xlati_loop_1].xyz * u_xlat3.xxx + u_xlat0.xyz;
					    }
					    u_xlat0.xyz = u_xlat0.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat1.xyz = vec3(u_xlat12) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat12;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat2.xyz = vec3(u_xlat12) * u_xlat2.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat2.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					bool u_xlatb3;
					vec2 u_xlat4;
					float u_xlat12;
					int u_xlati12;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat1 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat1.x);
					    u_xlat0.x = float(0.0);
					    u_xlat0.y = float(0.0);
					    u_xlat0.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat1.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat3.x = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat3.x = u_xlat3.x * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat3.x = float(1.0) / u_xlat3.x;
					        u_xlat0.xyz = unity_LightColor[u_xlati_loop_1].xyz * u_xlat3.xxx + u_xlat0.xyz;
					    }
					    u_xlat0.xyz = u_xlat0.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat1.xyz = vec3(u_xlat12) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendAlpha" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat12;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat2.xyz = vec3(u_xlat12) * u_xlat2.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat2.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					bool u_xlatb3;
					vec2 u_xlat4;
					float u_xlat12;
					int u_xlati12;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat1 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat1.x);
					    u_xlat0.x = float(0.0);
					    u_xlat0.y = float(0.0);
					    u_xlat0.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat1.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat3.x = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat3.x = u_xlat3.x * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat3.x = float(1.0) / u_xlat3.x;
					        u_xlat0.xyz = unity_LightColor[u_xlati_loop_1].xyz * u_xlat3.xxx + u_xlat0.xyz;
					    }
					    u_xlat0.xyz = u_xlat0.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat1.xyz = vec3(u_xlat12) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat12;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat2.xyz = vec3(u_xlat12) * u_xlat2.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat2.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					bool u_xlatb3;
					vec2 u_xlat4;
					float u_xlat12;
					int u_xlati12;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat1 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat1.x);
					    u_xlat0.x = float(0.0);
					    u_xlat0.y = float(0.0);
					    u_xlat0.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat1.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat3.x = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat3.x = u_xlat3.x * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat3.x = float(1.0) / u_xlat3.x;
					        u_xlat0.xyz = unity_LightColor[u_xlati_loop_1].xyz * u_xlat3.xxx + u_xlat0.xyz;
					    }
					    u_xlat0.xyz = u_xlat0.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat1.xyz = vec3(u_xlat12) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendAlpha" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec2 u_xlat4;
					int u_xlati12;
					float u_xlat13;
					bool u_xlatb13;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat0 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat1.x = float(0.0);
					    u_xlat1.y = float(0.0);
					    u_xlat1.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat13 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat13 = u_xlat13 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat13 = float(1.0) / u_xlat13;
					        u_xlat1.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat13) + u_xlat1.xyz;
					    }
					    u_xlat0.xyz = u_xlat1.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendAlpha" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec2 u_xlat4;
					int u_xlati12;
					float u_xlat13;
					bool u_xlatb13;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat0 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat1.x = float(0.0);
					    u_xlat1.y = float(0.0);
					    u_xlat1.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat13 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat13 = u_xlat13 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat13 = float(1.0) / u_xlat13;
					        u_xlat1.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat13) + u_xlat1.xyz;
					    }
					    u_xlat0.xyz = u_xlat1.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendAlpha" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec2 u_xlat4;
					int u_xlati12;
					float u_xlat13;
					bool u_xlatb13;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat0 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat1.x = float(0.0);
					    u_xlat1.y = float(0.0);
					    u_xlat1.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat13 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat13 = u_xlat13 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat13 = float(1.0) / u_xlat13;
					        u_xlat1.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat13) + u_xlat1.xyz;
					    }
					    u_xlat0.xyz = u_xlat1.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec2 u_xlat4;
					int u_xlati12;
					float u_xlat13;
					bool u_xlatb13;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat0 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat1.x = float(0.0);
					    u_xlat1.y = float(0.0);
					    u_xlat1.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat13 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat13 = u_xlat13 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat13 = float(1.0) / u_xlat13;
					        u_xlat1.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat13) + u_xlat1.xyz;
					    }
					    u_xlat0.xyz = u_xlat1.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendAlpha" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec2 u_xlat4;
					int u_xlati12;
					float u_xlat13;
					bool u_xlatb13;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat0 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat1.x = float(0.0);
					    u_xlat1.y = float(0.0);
					    u_xlat1.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat13 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat13 = u_xlat13 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat13 = float(1.0) / u_xlat13;
					        u_xlat1.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat13) + u_xlat1.xyz;
					    }
					    u_xlat0.xyz = u_xlat1.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec2 u_xlat4;
					int u_xlati12;
					float u_xlat13;
					bool u_xlatb13;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat0 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat1.x = float(0.0);
					    u_xlat1.y = float(0.0);
					    u_xlat1.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat13 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat13 = u_xlat13 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat13 = float(1.0) / u_xlat13;
					        u_xlat1.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat13) + u_xlat1.xyz;
					    }
					    u_xlat0.xyz = u_xlat1.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendAlpha" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec2 u_xlat4;
					int u_xlati12;
					float u_xlat13;
					bool u_xlatb13;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat0 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat1.x = float(0.0);
					    u_xlat1.y = float(0.0);
					    u_xlat1.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat13 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat13 = u_xlat13 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat13 = float(1.0) / u_xlat13;
					        u_xlat1.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat13) + u_xlat1.xyz;
					    }
					    u_xlat0.xyz = u_xlat1.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec2 u_xlat4;
					int u_xlati12;
					float u_xlat13;
					bool u_xlatb13;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat0 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat1.x = float(0.0);
					    u_xlat1.y = float(0.0);
					    u_xlat1.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat13 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat13 = u_xlat13 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat13 = float(1.0) / u_xlat13;
					        u_xlat1.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat13) + u_xlat1.xyz;
					    }
					    u_xlat0.xyz = u_xlat1.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendAlpha" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec2 u_xlat4;
					int u_xlati12;
					float u_xlat13;
					bool u_xlatb13;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat0 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat1.x = float(0.0);
					    u_xlat1.y = float(0.0);
					    u_xlat1.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat13 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat13 = u_xlat13 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat13 = float(1.0) / u_xlat13;
					        u_xlat1.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat13) + u_xlat1.xyz;
					    }
					    u_xlat0.xyz = u_xlat1.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendAlpha" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec2 u_xlat4;
					int u_xlati12;
					float u_xlat13;
					bool u_xlatb13;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat0 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat1.x = float(0.0);
					    u_xlat1.y = float(0.0);
					    u_xlat1.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat13 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat13 = u_xlat13 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat13 = float(1.0) / u_xlat13;
					        u_xlat1.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat13) + u_xlat1.xyz;
					    }
					    u_xlat0.xyz = u_xlat1.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendAlpha" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec2 u_xlat4;
					int u_xlati12;
					float u_xlat13;
					bool u_xlatb13;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat0 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat1.x = float(0.0);
					    u_xlat1.y = float(0.0);
					    u_xlat1.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat13 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat13 = u_xlat13 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat13 = float(1.0) / u_xlat13;
					        u_xlat1.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat13) + u_xlat1.xyz;
					    }
					    u_xlat0.xyz = u_xlat1.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec2 u_xlat4;
					int u_xlati12;
					float u_xlat13;
					bool u_xlatb13;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat0 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat1.x = float(0.0);
					    u_xlat1.y = float(0.0);
					    u_xlat1.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat13 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat13 = u_xlat13 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat13 = float(1.0) / u_xlat13;
					        u_xlat1.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat13) + u_xlat1.xyz;
					    }
					    u_xlat0.xyz = u_xlat1.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendAlpha" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec2 u_xlat4;
					int u_xlati12;
					float u_xlat13;
					bool u_xlatb13;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat0 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat1.x = float(0.0);
					    u_xlat1.y = float(0.0);
					    u_xlat1.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat13 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat13 = u_xlat13 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat13 = float(1.0) / u_xlat13;
					        u_xlat1.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat13) + u_xlat1.xyz;
					    }
					    u_xlat0.xyz = u_xlat1.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec2 u_xlat4;
					int u_xlati12;
					float u_xlat13;
					bool u_xlatb13;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat0 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat1.x = float(0.0);
					    u_xlat1.y = float(0.0);
					    u_xlat1.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat13 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat13 = u_xlat13 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat13 = float(1.0) / u_xlat13;
					        u_xlat1.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat13) + u_xlat1.xyz;
					    }
					    u_xlat0.xyz = u_xlat1.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendAlpha" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec2 u_xlat4;
					int u_xlati12;
					float u_xlat13;
					bool u_xlatb13;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat0 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat1.x = float(0.0);
					    u_xlat1.y = float(0.0);
					    u_xlat1.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat13 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat13 = u_xlat13 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat13 = float(1.0) / u_xlat13;
					        u_xlat1.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat13) + u_xlat1.xyz;
					    }
					    u_xlat0.xyz = u_xlat1.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec2 u_xlat4;
					int u_xlati12;
					float u_xlat13;
					bool u_xlatb13;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat0 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat1.x = float(0.0);
					    u_xlat1.y = float(0.0);
					    u_xlat1.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat13 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat13 = u_xlat13 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat13 = float(1.0) / u_xlat13;
					        u_xlat1.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat13) + u_xlat1.xyz;
					    }
					    u_xlat0.xyz = u_xlat1.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendAlpha" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat12;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat2.xyz = vec3(u_xlat12) * u_xlat2.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat2.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					bool u_xlatb3;
					vec2 u_xlat4;
					float u_xlat12;
					int u_xlati12;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat1 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat1.x);
					    u_xlat0.x = float(0.0);
					    u_xlat0.y = float(0.0);
					    u_xlat0.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat1.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat3.x = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat3.x = u_xlat3.x * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat3.x = float(1.0) / u_xlat3.x;
					        u_xlat0.xyz = unity_LightColor[u_xlati_loop_1].xyz * u_xlat3.xxx + u_xlat0.xyz;
					    }
					    u_xlat0.xyz = u_xlat0.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat1.xyz = vec3(u_xlat12) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendAlpha" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat12;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat2.xyz = vec3(u_xlat12) * u_xlat2.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat2.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					bool u_xlatb3;
					vec2 u_xlat4;
					float u_xlat12;
					int u_xlati12;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat1 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat1.x);
					    u_xlat0.x = float(0.0);
					    u_xlat0.y = float(0.0);
					    u_xlat0.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat1.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat3.x = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat3.x = u_xlat3.x * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat3.x = float(1.0) / u_xlat3.x;
					        u_xlat0.xyz = unity_LightColor[u_xlati_loop_1].xyz * u_xlat3.xxx + u_xlat0.xyz;
					    }
					    u_xlat0.xyz = u_xlat0.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat1.xyz = vec3(u_xlat12) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendAlpha" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat12;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat2.xyz = vec3(u_xlat12) * u_xlat2.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat2.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					bool u_xlatb3;
					vec2 u_xlat4;
					float u_xlat12;
					int u_xlati12;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat1 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat1.x);
					    u_xlat0.x = float(0.0);
					    u_xlat0.y = float(0.0);
					    u_xlat0.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat1.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat3.x = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat3.x = u_xlat3.x * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat3.x = float(1.0) / u_xlat3.x;
					        u_xlat0.xyz = unity_LightColor[u_xlati_loop_1].xyz * u_xlat3.xxx + u_xlat0.xyz;
					    }
					    u_xlat0.xyz = u_xlat0.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat1.xyz = vec3(u_xlat12) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat12;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat2.xyz = vec3(u_xlat12) * u_xlat2.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat2.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					bool u_xlatb3;
					vec2 u_xlat4;
					float u_xlat12;
					int u_xlati12;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat1 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat1.x);
					    u_xlat0.x = float(0.0);
					    u_xlat0.y = float(0.0);
					    u_xlat0.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat1.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat3.x = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat3.x = u_xlat3.x * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat3.x = float(1.0) / u_xlat3.x;
					        u_xlat0.xyz = unity_LightColor[u_xlati_loop_1].xyz * u_xlat3.xxx + u_xlat0.xyz;
					    }
					    u_xlat0.xyz = u_xlat0.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat1.xyz = vec3(u_xlat12) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendAlpha" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat12;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat2.xyz = vec3(u_xlat12) * u_xlat2.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat2.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					bool u_xlatb3;
					vec2 u_xlat4;
					float u_xlat12;
					int u_xlati12;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat1 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat1.x);
					    u_xlat0.x = float(0.0);
					    u_xlat0.y = float(0.0);
					    u_xlat0.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat1.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat3.x = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat3.x = u_xlat3.x * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat3.x = float(1.0) / u_xlat3.x;
					        u_xlat0.xyz = unity_LightColor[u_xlati_loop_1].xyz * u_xlat3.xxx + u_xlat0.xyz;
					    }
					    u_xlat0.xyz = u_xlat0.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat1.xyz = vec3(u_xlat12) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat12;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat2.xyz = vec3(u_xlat12) * u_xlat2.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat2.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					bool u_xlatb3;
					vec2 u_xlat4;
					float u_xlat12;
					int u_xlati12;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat1 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat1.x);
					    u_xlat0.x = float(0.0);
					    u_xlat0.y = float(0.0);
					    u_xlat0.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat1.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat3.x = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat3.x = u_xlat3.x * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat3.x = float(1.0) / u_xlat3.x;
					        u_xlat0.xyz = unity_LightColor[u_xlati_loop_1].xyz * u_xlat3.xxx + u_xlat0.xyz;
					    }
					    u_xlat0.xyz = u_xlat0.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat1.xyz = vec3(u_xlat12) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendAlpha" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat12;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat2.xyz = vec3(u_xlat12) * u_xlat2.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat2.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					bool u_xlatb3;
					vec2 u_xlat4;
					float u_xlat12;
					int u_xlati12;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat1 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat1.x);
					    u_xlat0.x = float(0.0);
					    u_xlat0.y = float(0.0);
					    u_xlat0.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat1.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat3.x = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat3.x = u_xlat3.x * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat3.x = float(1.0) / u_xlat3.x;
					        u_xlat0.xyz = unity_LightColor[u_xlati_loop_1].xyz * u_xlat3.xxx + u_xlat0.xyz;
					    }
					    u_xlat0.xyz = u_xlat0.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat1.xyz = vec3(u_xlat12) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat12;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat2.xyz = vec3(u_xlat12) * u_xlat2.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat2.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					bool u_xlatb3;
					vec2 u_xlat4;
					float u_xlat12;
					int u_xlati12;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat1 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat1.x);
					    u_xlat0.x = float(0.0);
					    u_xlat0.y = float(0.0);
					    u_xlat0.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat1.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat3.x = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat3.x = u_xlat3.x * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat3.x = float(1.0) / u_xlat3.x;
					        u_xlat0.xyz = unity_LightColor[u_xlati_loop_1].xyz * u_xlat3.xxx + u_xlat0.xyz;
					    }
					    u_xlat0.xyz = u_xlat0.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat1.xyz = vec3(u_xlat12) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendAlpha" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat12;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat2.xyz = vec3(u_xlat12) * u_xlat2.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat2.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					bool u_xlatb3;
					vec2 u_xlat4;
					float u_xlat12;
					int u_xlati12;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat1 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat1.x);
					    u_xlat0.x = float(0.0);
					    u_xlat0.y = float(0.0);
					    u_xlat0.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat1.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat3.x = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat3.x = u_xlat3.x * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat3.x = float(1.0) / u_xlat3.x;
					        u_xlat0.xyz = unity_LightColor[u_xlati_loop_1].xyz * u_xlat3.xxx + u_xlat0.xyz;
					    }
					    u_xlat0.xyz = u_xlat0.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat1.xyz = vec3(u_xlat12) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendAlpha" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat12;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat2.xyz = vec3(u_xlat12) * u_xlat2.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat2.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					bool u_xlatb3;
					vec2 u_xlat4;
					float u_xlat12;
					int u_xlati12;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat1 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat1.x);
					    u_xlat0.x = float(0.0);
					    u_xlat0.y = float(0.0);
					    u_xlat0.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat1.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat3.x = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat3.x = u_xlat3.x * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat3.x = float(1.0) / u_xlat3.x;
					        u_xlat0.xyz = unity_LightColor[u_xlati_loop_1].xyz * u_xlat3.xxx + u_xlat0.xyz;
					    }
					    u_xlat0.xyz = u_xlat0.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat1.xyz = vec3(u_xlat12) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendAlpha" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat12;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat2.xyz = vec3(u_xlat12) * u_xlat2.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat2.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					bool u_xlatb3;
					vec2 u_xlat4;
					float u_xlat12;
					int u_xlati12;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat1 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat1.x);
					    u_xlat0.x = float(0.0);
					    u_xlat0.y = float(0.0);
					    u_xlat0.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat1.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat3.x = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat3.x = u_xlat3.x * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat3.x = float(1.0) / u_xlat3.x;
					        u_xlat0.xyz = unity_LightColor[u_xlati_loop_1].xyz * u_xlat3.xxx + u_xlat0.xyz;
					    }
					    u_xlat0.xyz = u_xlat0.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat1.xyz = vec3(u_xlat12) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat12;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat2.xyz = vec3(u_xlat12) * u_xlat2.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat2.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					bool u_xlatb3;
					vec2 u_xlat4;
					float u_xlat12;
					int u_xlati12;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat1 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat1.x);
					    u_xlat0.x = float(0.0);
					    u_xlat0.y = float(0.0);
					    u_xlat0.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat1.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat3.x = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat3.x = u_xlat3.x * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat3.x = float(1.0) / u_xlat3.x;
					        u_xlat0.xyz = unity_LightColor[u_xlati_loop_1].xyz * u_xlat3.xxx + u_xlat0.xyz;
					    }
					    u_xlat0.xyz = u_xlat0.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat1.xyz = vec3(u_xlat12) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendAlpha" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat12;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat2.xyz = vec3(u_xlat12) * u_xlat2.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat2.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					bool u_xlatb3;
					vec2 u_xlat4;
					float u_xlat12;
					int u_xlati12;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat1 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat1.x);
					    u_xlat0.x = float(0.0);
					    u_xlat0.y = float(0.0);
					    u_xlat0.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat1.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat3.x = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat3.x = u_xlat3.x * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat3.x = float(1.0) / u_xlat3.x;
					        u_xlat0.xyz = unity_LightColor[u_xlati_loop_1].xyz * u_xlat3.xxx + u_xlat0.xyz;
					    }
					    u_xlat0.xyz = u_xlat0.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat1.xyz = vec3(u_xlat12) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat12;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat2.xyz = vec3(u_xlat12) * u_xlat2.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat2.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					bool u_xlatb3;
					vec2 u_xlat4;
					float u_xlat12;
					int u_xlati12;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat1 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat1.x);
					    u_xlat0.x = float(0.0);
					    u_xlat0.y = float(0.0);
					    u_xlat0.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat1.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat3.x = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat3.x = u_xlat3.x * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat3.x = float(1.0) / u_xlat3.x;
					        u_xlat0.xyz = unity_LightColor[u_xlati_loop_1].xyz * u_xlat3.xxx + u_xlat0.xyz;
					    }
					    u_xlat0.xyz = u_xlat0.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat1.xyz = vec3(u_xlat12) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendAlpha" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat12;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat2.xyz = vec3(u_xlat12) * u_xlat2.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat2.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					bool u_xlatb3;
					vec2 u_xlat4;
					float u_xlat12;
					int u_xlati12;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat1 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat1.x);
					    u_xlat0.x = float(0.0);
					    u_xlat0.y = float(0.0);
					    u_xlat0.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat1.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat3.x = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat3.x = u_xlat3.x * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat3.x = float(1.0) / u_xlat3.x;
					        u_xlat0.xyz = unity_LightColor[u_xlati_loop_1].xyz * u_xlat3.xxx + u_xlat0.xyz;
					    }
					    u_xlat0.xyz = u_xlat0.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat1.xyz = vec3(u_xlat12) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat12;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat2.xyz = vec3(u_xlat12) * u_xlat2.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat2.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					bool u_xlatb3;
					vec2 u_xlat4;
					float u_xlat12;
					int u_xlati12;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat1 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat1.x);
					    u_xlat0.x = float(0.0);
					    u_xlat0.y = float(0.0);
					    u_xlat0.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat1.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat3.x = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat3.x = u_xlat3.x * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat3.x = float(1.0) / u_xlat3.x;
					        u_xlat0.xyz = unity_LightColor[u_xlati_loop_1].xyz * u_xlat3.xxx + u_xlat0.xyz;
					    }
					    u_xlat0.xyz = u_xlat0.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat1.xyz = vec3(u_xlat12) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendAlpha" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec2 u_xlat4;
					int u_xlati12;
					float u_xlat13;
					bool u_xlatb13;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat0 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat1.x = float(0.0);
					    u_xlat1.y = float(0.0);
					    u_xlat1.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat13 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat13 = u_xlat13 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat13 = float(1.0) / u_xlat13;
					        u_xlat1.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat13) + u_xlat1.xyz;
					    }
					    u_xlat0.xyz = u_xlat1.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendAlpha" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec2 u_xlat4;
					int u_xlati12;
					float u_xlat13;
					bool u_xlatb13;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat0 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat1.x = float(0.0);
					    u_xlat1.y = float(0.0);
					    u_xlat1.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat13 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat13 = u_xlat13 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat13 = float(1.0) / u_xlat13;
					        u_xlat1.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat13) + u_xlat1.xyz;
					    }
					    u_xlat0.xyz = u_xlat1.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendAlpha" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec2 u_xlat4;
					int u_xlati12;
					float u_xlat13;
					bool u_xlatb13;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat0 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat1.x = float(0.0);
					    u_xlat1.y = float(0.0);
					    u_xlat1.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat13 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat13 = u_xlat13 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat13 = float(1.0) / u_xlat13;
					        u_xlat1.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat13) + u_xlat1.xyz;
					    }
					    u_xlat0.xyz = u_xlat1.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec2 u_xlat4;
					int u_xlati12;
					float u_xlat13;
					bool u_xlatb13;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat0 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat1.x = float(0.0);
					    u_xlat1.y = float(0.0);
					    u_xlat1.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat13 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat13 = u_xlat13 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat13 = float(1.0) / u_xlat13;
					        u_xlat1.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat13) + u_xlat1.xyz;
					    }
					    u_xlat0.xyz = u_xlat1.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendAlpha" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec2 u_xlat4;
					int u_xlati12;
					float u_xlat13;
					bool u_xlatb13;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat0 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat1.x = float(0.0);
					    u_xlat1.y = float(0.0);
					    u_xlat1.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat13 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat13 = u_xlat13 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat13 = float(1.0) / u_xlat13;
					        u_xlat1.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat13) + u_xlat1.xyz;
					    }
					    u_xlat0.xyz = u_xlat1.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec2 u_xlat4;
					int u_xlati12;
					float u_xlat13;
					bool u_xlatb13;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat0 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat1.x = float(0.0);
					    u_xlat1.y = float(0.0);
					    u_xlat1.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat13 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat13 = u_xlat13 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat13 = float(1.0) / u_xlat13;
					        u_xlat1.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat13) + u_xlat1.xyz;
					    }
					    u_xlat0.xyz = u_xlat1.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendAlpha" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec2 u_xlat4;
					int u_xlati12;
					float u_xlat13;
					bool u_xlatb13;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat0 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat1.x = float(0.0);
					    u_xlat1.y = float(0.0);
					    u_xlat1.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat13 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat13 = u_xlat13 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat13 = float(1.0) / u_xlat13;
					        u_xlat1.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat13) + u_xlat1.xyz;
					    }
					    u_xlat0.xyz = u_xlat1.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec2 u_xlat4;
					int u_xlati12;
					float u_xlat13;
					bool u_xlatb13;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat0 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat1.x = float(0.0);
					    u_xlat1.y = float(0.0);
					    u_xlat1.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat13 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat13 = u_xlat13 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat13 = float(1.0) / u_xlat13;
					        u_xlat1.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat13) + u_xlat1.xyz;
					    }
					    u_xlat0.xyz = u_xlat1.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendAlpha" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec2 u_xlat4;
					int u_xlati12;
					float u_xlat13;
					bool u_xlatb13;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat0 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat1.x = float(0.0);
					    u_xlat1.y = float(0.0);
					    u_xlat1.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat13 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat13 = u_xlat13 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat13 = float(1.0) / u_xlat13;
					        u_xlat1.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat13) + u_xlat1.xyz;
					    }
					    u_xlat0.xyz = u_xlat1.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendAlpha" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec2 u_xlat4;
					int u_xlati12;
					float u_xlat13;
					bool u_xlatb13;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat0 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat1.x = float(0.0);
					    u_xlat1.y = float(0.0);
					    u_xlat1.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat13 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat13 = u_xlat13 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat13 = float(1.0) / u_xlat13;
					        u_xlat1.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat13) + u_xlat1.xyz;
					    }
					    u_xlat0.xyz = u_xlat1.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendAlpha" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec2 u_xlat4;
					int u_xlati12;
					float u_xlat13;
					bool u_xlatb13;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat0 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat1.x = float(0.0);
					    u_xlat1.y = float(0.0);
					    u_xlat1.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat13 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat13 = u_xlat13 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat13 = float(1.0) / u_xlat13;
					        u_xlat1.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat13) + u_xlat1.xyz;
					    }
					    u_xlat0.xyz = u_xlat1.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec2 u_xlat4;
					int u_xlati12;
					float u_xlat13;
					bool u_xlatb13;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat0 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat1.x = float(0.0);
					    u_xlat1.y = float(0.0);
					    u_xlat1.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat13 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat13 = u_xlat13 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat13 = float(1.0) / u_xlat13;
					        u_xlat1.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat13) + u_xlat1.xyz;
					    }
					    u_xlat0.xyz = u_xlat1.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendAlpha" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec2 u_xlat4;
					int u_xlati12;
					float u_xlat13;
					bool u_xlatb13;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat0 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat1.x = float(0.0);
					    u_xlat1.y = float(0.0);
					    u_xlat1.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat13 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat13 = u_xlat13 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat13 = float(1.0) / u_xlat13;
					        u_xlat1.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat13) + u_xlat1.xyz;
					    }
					    u_xlat0.xyz = u_xlat1.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec2 u_xlat4;
					int u_xlati12;
					float u_xlat13;
					bool u_xlatb13;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat0 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat1.x = float(0.0);
					    u_xlat1.y = float(0.0);
					    u_xlat1.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat13 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat13 = u_xlat13 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat13 = float(1.0) / u_xlat13;
					        u_xlat1.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat13) + u_xlat1.xyz;
					    }
					    u_xlat0.xyz = u_xlat1.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendAlpha" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec2 u_xlat4;
					int u_xlati12;
					float u_xlat13;
					bool u_xlatb13;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat0 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat1.x = float(0.0);
					    u_xlat1.y = float(0.0);
					    u_xlat1.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat13 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat13 = u_xlat13 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat13 = float(1.0) / u_xlat13;
					        u_xlat1.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat13) + u_xlat1.xyz;
					    }
					    u_xlat0.xyz = u_xlat1.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec2 u_xlat4;
					int u_xlati12;
					float u_xlat13;
					bool u_xlatb13;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat0 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat1.x = float(0.0);
					    u_xlat1.y = float(0.0);
					    u_xlat1.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat13 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat13 = u_xlat13 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat13 = float(1.0) / u_xlat13;
					        u_xlat1.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat13) + u_xlat1.xyz;
					    }
					    u_xlat0.xyz = u_xlat1.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendAlpha" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat12;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat2.xyz = vec3(u_xlat12) * u_xlat2.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat2.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					bool u_xlatb3;
					vec2 u_xlat4;
					float u_xlat12;
					int u_xlati12;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat1 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat1.x);
					    u_xlat0.x = float(0.0);
					    u_xlat0.y = float(0.0);
					    u_xlat0.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat1.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat3.x = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat3.x = u_xlat3.x * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat3.x = float(1.0) / u_xlat3.x;
					        u_xlat0.xyz = unity_LightColor[u_xlati_loop_1].xyz * u_xlat3.xxx + u_xlat0.xyz;
					    }
					    u_xlat0.xyz = u_xlat0.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat1.xyz = vec3(u_xlat12) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendAlpha" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat12;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat2.xyz = vec3(u_xlat12) * u_xlat2.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat2.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					bool u_xlatb3;
					vec2 u_xlat4;
					float u_xlat12;
					int u_xlati12;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat1 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat1.x);
					    u_xlat0.x = float(0.0);
					    u_xlat0.y = float(0.0);
					    u_xlat0.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat1.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat3.x = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat3.x = u_xlat3.x * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat3.x = float(1.0) / u_xlat3.x;
					        u_xlat0.xyz = unity_LightColor[u_xlati_loop_1].xyz * u_xlat3.xxx + u_xlat0.xyz;
					    }
					    u_xlat0.xyz = u_xlat0.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat1.xyz = vec3(u_xlat12) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendAlpha" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat12;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat2.xyz = vec3(u_xlat12) * u_xlat2.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat2.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					bool u_xlatb3;
					vec2 u_xlat4;
					float u_xlat12;
					int u_xlati12;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat1 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat1.x);
					    u_xlat0.x = float(0.0);
					    u_xlat0.y = float(0.0);
					    u_xlat0.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat1.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat3.x = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat3.x = u_xlat3.x * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat3.x = float(1.0) / u_xlat3.x;
					        u_xlat0.xyz = unity_LightColor[u_xlati_loop_1].xyz * u_xlat3.xxx + u_xlat0.xyz;
					    }
					    u_xlat0.xyz = u_xlat0.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat1.xyz = vec3(u_xlat12) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat12;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat2.xyz = vec3(u_xlat12) * u_xlat2.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat2.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					bool u_xlatb3;
					vec2 u_xlat4;
					float u_xlat12;
					int u_xlati12;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat1 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat1.x);
					    u_xlat0.x = float(0.0);
					    u_xlat0.y = float(0.0);
					    u_xlat0.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat1.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat3.x = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat3.x = u_xlat3.x * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat3.x = float(1.0) / u_xlat3.x;
					        u_xlat0.xyz = unity_LightColor[u_xlati_loop_1].xyz * u_xlat3.xxx + u_xlat0.xyz;
					    }
					    u_xlat0.xyz = u_xlat0.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat1.xyz = vec3(u_xlat12) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendAlpha" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat12;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat2.xyz = vec3(u_xlat12) * u_xlat2.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat2.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					bool u_xlatb3;
					vec2 u_xlat4;
					float u_xlat12;
					int u_xlati12;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat1 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat1.x);
					    u_xlat0.x = float(0.0);
					    u_xlat0.y = float(0.0);
					    u_xlat0.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat1.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat3.x = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat3.x = u_xlat3.x * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat3.x = float(1.0) / u_xlat3.x;
					        u_xlat0.xyz = unity_LightColor[u_xlati_loop_1].xyz * u_xlat3.xxx + u_xlat0.xyz;
					    }
					    u_xlat0.xyz = u_xlat0.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat1.xyz = vec3(u_xlat12) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat12;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat2.xyz = vec3(u_xlat12) * u_xlat2.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat2.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					bool u_xlatb3;
					vec2 u_xlat4;
					float u_xlat12;
					int u_xlati12;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat1 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat1.x);
					    u_xlat0.x = float(0.0);
					    u_xlat0.y = float(0.0);
					    u_xlat0.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat1.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat3.x = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat3.x = u_xlat3.x * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat3.x = float(1.0) / u_xlat3.x;
					        u_xlat0.xyz = unity_LightColor[u_xlati_loop_1].xyz * u_xlat3.xxx + u_xlat0.xyz;
					    }
					    u_xlat0.xyz = u_xlat0.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat1.xyz = vec3(u_xlat12) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendAlpha" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat12;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat2.xyz = vec3(u_xlat12) * u_xlat2.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat2.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					bool u_xlatb3;
					vec2 u_xlat4;
					float u_xlat12;
					int u_xlati12;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat1 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat1.x);
					    u_xlat0.x = float(0.0);
					    u_xlat0.y = float(0.0);
					    u_xlat0.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat1.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat3.x = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat3.x = u_xlat3.x * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat3.x = float(1.0) / u_xlat3.x;
					        u_xlat0.xyz = unity_LightColor[u_xlati_loop_1].xyz * u_xlat3.xxx + u_xlat0.xyz;
					    }
					    u_xlat0.xyz = u_xlat0.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat1.xyz = vec3(u_xlat12) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat12;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat2.xyz = vec3(u_xlat12) * u_xlat2.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat2.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					bool u_xlatb3;
					vec2 u_xlat4;
					float u_xlat12;
					int u_xlati12;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat1 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat1.x);
					    u_xlat0.x = float(0.0);
					    u_xlat0.y = float(0.0);
					    u_xlat0.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat1.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat3.x = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat3.x = u_xlat3.x * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat3.x = float(1.0) / u_xlat3.x;
					        u_xlat0.xyz = unity_LightColor[u_xlati_loop_1].xyz * u_xlat3.xxx + u_xlat0.xyz;
					    }
					    u_xlat0.xyz = u_xlat0.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat1.xyz = vec3(u_xlat12) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendAlpha" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat12;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat2.xyz = vec3(u_xlat12) * u_xlat2.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat2.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					bool u_xlatb3;
					vec2 u_xlat4;
					float u_xlat12;
					int u_xlati12;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat1 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat1.x);
					    u_xlat0.x = float(0.0);
					    u_xlat0.y = float(0.0);
					    u_xlat0.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat1.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat3.x = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat3.x = u_xlat3.x * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat3.x = float(1.0) / u_xlat3.x;
					        u_xlat0.xyz = unity_LightColor[u_xlati_loop_1].xyz * u_xlat3.xxx + u_xlat0.xyz;
					    }
					    u_xlat0.xyz = u_xlat0.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat1.xyz = vec3(u_xlat12) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendAlpha" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat12;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat2.xyz = vec3(u_xlat12) * u_xlat2.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat2.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					bool u_xlatb3;
					vec2 u_xlat4;
					float u_xlat12;
					int u_xlati12;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat1 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat1.x);
					    u_xlat0.x = float(0.0);
					    u_xlat0.y = float(0.0);
					    u_xlat0.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat1.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat3.x = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat3.x = u_xlat3.x * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat3.x = float(1.0) / u_xlat3.x;
					        u_xlat0.xyz = unity_LightColor[u_xlati_loop_1].xyz * u_xlat3.xxx + u_xlat0.xyz;
					    }
					    u_xlat0.xyz = u_xlat0.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat1.xyz = vec3(u_xlat12) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendAlpha" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat12;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat2.xyz = vec3(u_xlat12) * u_xlat2.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat2.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					bool u_xlatb3;
					vec2 u_xlat4;
					float u_xlat12;
					int u_xlati12;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat1 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat1.x);
					    u_xlat0.x = float(0.0);
					    u_xlat0.y = float(0.0);
					    u_xlat0.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat1.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat3.x = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat3.x = u_xlat3.x * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat3.x = float(1.0) / u_xlat3.x;
					        u_xlat0.xyz = unity_LightColor[u_xlati_loop_1].xyz * u_xlat3.xxx + u_xlat0.xyz;
					    }
					    u_xlat0.xyz = u_xlat0.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat1.xyz = vec3(u_xlat12) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat12;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat2.xyz = vec3(u_xlat12) * u_xlat2.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat2.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					bool u_xlatb3;
					vec2 u_xlat4;
					float u_xlat12;
					int u_xlati12;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat1 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat1.x);
					    u_xlat0.x = float(0.0);
					    u_xlat0.y = float(0.0);
					    u_xlat0.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat1.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat3.x = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat3.x = u_xlat3.x * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat3.x = float(1.0) / u_xlat3.x;
					        u_xlat0.xyz = unity_LightColor[u_xlati_loop_1].xyz * u_xlat3.xxx + u_xlat0.xyz;
					    }
					    u_xlat0.xyz = u_xlat0.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat1.xyz = vec3(u_xlat12) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendAlpha" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat12;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat2.xyz = vec3(u_xlat12) * u_xlat2.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat2.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					bool u_xlatb3;
					vec2 u_xlat4;
					float u_xlat12;
					int u_xlati12;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat1 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat1.x);
					    u_xlat0.x = float(0.0);
					    u_xlat0.y = float(0.0);
					    u_xlat0.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat1.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat3.x = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat3.x = u_xlat3.x * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat3.x = float(1.0) / u_xlat3.x;
					        u_xlat0.xyz = unity_LightColor[u_xlati_loop_1].xyz * u_xlat3.xxx + u_xlat0.xyz;
					    }
					    u_xlat0.xyz = u_xlat0.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat1.xyz = vec3(u_xlat12) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat12;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat2.xyz = vec3(u_xlat12) * u_xlat2.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat2.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					bool u_xlatb3;
					vec2 u_xlat4;
					float u_xlat12;
					int u_xlati12;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat1 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat1.x);
					    u_xlat0.x = float(0.0);
					    u_xlat0.y = float(0.0);
					    u_xlat0.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat1.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat3.x = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat3.x = u_xlat3.x * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat3.x = float(1.0) / u_xlat3.x;
					        u_xlat0.xyz = unity_LightColor[u_xlati_loop_1].xyz * u_xlat3.xxx + u_xlat0.xyz;
					    }
					    u_xlat0.xyz = u_xlat0.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat1.xyz = vec3(u_xlat12) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendAlpha" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat12;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat2.xyz = vec3(u_xlat12) * u_xlat2.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat2.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					bool u_xlatb3;
					vec2 u_xlat4;
					float u_xlat12;
					int u_xlati12;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat1 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat1.x);
					    u_xlat0.x = float(0.0);
					    u_xlat0.y = float(0.0);
					    u_xlat0.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat1.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat3.x = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat3.x = u_xlat3.x * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat3.x = float(1.0) / u_xlat3.x;
					        u_xlat0.xyz = unity_LightColor[u_xlati_loop_1].xyz * u_xlat3.xxx + u_xlat0.xyz;
					    }
					    u_xlat0.xyz = u_xlat0.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat1.xyz = vec3(u_xlat12) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat12;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat2.xyz = vec3(u_xlat12) * u_xlat2.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat2.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					bool u_xlatb3;
					vec2 u_xlat4;
					float u_xlat12;
					int u_xlati12;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat1 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat1.x);
					    u_xlat0.x = float(0.0);
					    u_xlat0.y = float(0.0);
					    u_xlat0.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat1.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat3.x = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat3.x = u_xlat3.x * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat3.x = float(1.0) / u_xlat3.x;
					        u_xlat0.xyz = unity_LightColor[u_xlati_loop_1].xyz * u_xlat3.xxx + u_xlat0.xyz;
					    }
					    u_xlat0.xyz = u_xlat0.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat1.xyz = vec3(u_xlat12) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendAlpha" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec2 u_xlat4;
					int u_xlati12;
					float u_xlat13;
					bool u_xlatb13;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat0 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat1.x = float(0.0);
					    u_xlat1.y = float(0.0);
					    u_xlat1.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat13 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat13 = u_xlat13 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat13 = float(1.0) / u_xlat13;
					        u_xlat1.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat13) + u_xlat1.xyz;
					    }
					    u_xlat0.xyz = u_xlat1.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendAlpha" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec2 u_xlat4;
					int u_xlati12;
					float u_xlat13;
					bool u_xlatb13;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat0 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat1.x = float(0.0);
					    u_xlat1.y = float(0.0);
					    u_xlat1.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat13 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat13 = u_xlat13 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat13 = float(1.0) / u_xlat13;
					        u_xlat1.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat13) + u_xlat1.xyz;
					    }
					    u_xlat0.xyz = u_xlat1.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendAlpha" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec2 u_xlat4;
					int u_xlati12;
					float u_xlat13;
					bool u_xlatb13;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat0 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat1.x = float(0.0);
					    u_xlat1.y = float(0.0);
					    u_xlat1.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat13 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat13 = u_xlat13 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat13 = float(1.0) / u_xlat13;
					        u_xlat1.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat13) + u_xlat1.xyz;
					    }
					    u_xlat0.xyz = u_xlat1.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec2 u_xlat4;
					int u_xlati12;
					float u_xlat13;
					bool u_xlatb13;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat0 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat1.x = float(0.0);
					    u_xlat1.y = float(0.0);
					    u_xlat1.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat13 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat13 = u_xlat13 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat13 = float(1.0) / u_xlat13;
					        u_xlat1.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat13) + u_xlat1.xyz;
					    }
					    u_xlat0.xyz = u_xlat1.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendAlpha" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec2 u_xlat4;
					int u_xlati12;
					float u_xlat13;
					bool u_xlatb13;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat0 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat1.x = float(0.0);
					    u_xlat1.y = float(0.0);
					    u_xlat1.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat13 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat13 = u_xlat13 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat13 = float(1.0) / u_xlat13;
					        u_xlat1.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat13) + u_xlat1.xyz;
					    }
					    u_xlat0.xyz = u_xlat1.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec2 u_xlat4;
					int u_xlati12;
					float u_xlat13;
					bool u_xlatb13;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat0 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat1.x = float(0.0);
					    u_xlat1.y = float(0.0);
					    u_xlat1.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat13 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat13 = u_xlat13 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat13 = float(1.0) / u_xlat13;
					        u_xlat1.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat13) + u_xlat1.xyz;
					    }
					    u_xlat0.xyz = u_xlat1.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendAlpha" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec2 u_xlat4;
					int u_xlati12;
					float u_xlat13;
					bool u_xlatb13;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat0 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat1.x = float(0.0);
					    u_xlat1.y = float(0.0);
					    u_xlat1.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat13 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat13 = u_xlat13 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat13 = float(1.0) / u_xlat13;
					        u_xlat1.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat13) + u_xlat1.xyz;
					    }
					    u_xlat0.xyz = u_xlat1.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec2 u_xlat4;
					int u_xlati12;
					float u_xlat13;
					bool u_xlatb13;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat0 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat1.x = float(0.0);
					    u_xlat1.y = float(0.0);
					    u_xlat1.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat13 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat13 = u_xlat13 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat13 = float(1.0) / u_xlat13;
					        u_xlat1.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat13) + u_xlat1.xyz;
					    }
					    u_xlat0.xyz = u_xlat1.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendAlpha" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec2 u_xlat4;
					int u_xlati12;
					float u_xlat13;
					bool u_xlatb13;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat0 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat1.x = float(0.0);
					    u_xlat1.y = float(0.0);
					    u_xlat1.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat13 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat13 = u_xlat13 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat13 = float(1.0) / u_xlat13;
					        u_xlat1.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat13) + u_xlat1.xyz;
					    }
					    u_xlat0.xyz = u_xlat1.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendAlpha" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec2 u_xlat4;
					int u_xlati12;
					float u_xlat13;
					bool u_xlatb13;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat0 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat1.x = float(0.0);
					    u_xlat1.y = float(0.0);
					    u_xlat1.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat13 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat13 = u_xlat13 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat13 = float(1.0) / u_xlat13;
					        u_xlat1.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat13) + u_xlat1.xyz;
					    }
					    u_xlat0.xyz = u_xlat1.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendAlpha" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec2 u_xlat4;
					int u_xlati12;
					float u_xlat13;
					bool u_xlatb13;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat0 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat1.x = float(0.0);
					    u_xlat1.y = float(0.0);
					    u_xlat1.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat13 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat13 = u_xlat13 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat13 = float(1.0) / u_xlat13;
					        u_xlat1.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat13) + u_xlat1.xyz;
					    }
					    u_xlat0.xyz = u_xlat1.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec2 u_xlat4;
					int u_xlati12;
					float u_xlat13;
					bool u_xlatb13;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat0 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat1.x = float(0.0);
					    u_xlat1.y = float(0.0);
					    u_xlat1.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat13 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat13 = u_xlat13 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat13 = float(1.0) / u_xlat13;
					        u_xlat1.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat13) + u_xlat1.xyz;
					    }
					    u_xlat0.xyz = u_xlat1.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendAlpha" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec2 u_xlat4;
					int u_xlati12;
					float u_xlat13;
					bool u_xlatb13;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat0 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat1.x = float(0.0);
					    u_xlat1.y = float(0.0);
					    u_xlat1.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat13 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat13 = u_xlat13 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat13 = float(1.0) / u_xlat13;
					        u_xlat1.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat13) + u_xlat1.xyz;
					    }
					    u_xlat0.xyz = u_xlat1.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec2 u_xlat4;
					int u_xlati12;
					float u_xlat13;
					bool u_xlatb13;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat0 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat1.x = float(0.0);
					    u_xlat1.y = float(0.0);
					    u_xlat1.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat13 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat13 = u_xlat13 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat13 = float(1.0) / u_xlat13;
					        u_xlat1.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat13) + u_xlat1.xyz;
					    }
					    u_xlat0.xyz = u_xlat1.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendAlpha" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec2 u_xlat4;
					int u_xlati12;
					float u_xlat13;
					bool u_xlatb13;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat0 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat1.x = float(0.0);
					    u_xlat1.y = float(0.0);
					    u_xlat1.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat13 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat13 = u_xlat13 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat13 = float(1.0) / u_xlat13;
					        u_xlat1.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat13) + u_xlat1.xyz;
					    }
					    u_xlat0.xyz = u_xlat1.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec2 u_xlat4;
					int u_xlati12;
					float u_xlat13;
					bool u_xlatb13;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat0 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat1.x = float(0.0);
					    u_xlat1.y = float(0.0);
					    u_xlat1.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat13 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat13 = u_xlat13 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat13 = float(1.0) / u_xlat13;
					        u_xlat1.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat13) + u_xlat1.xyz;
					    }
					    u_xlat0.xyz = u_xlat1.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendAlpha" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat12;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat2.xyz = vec3(u_xlat12) * u_xlat2.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat2.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					bool u_xlatb3;
					vec2 u_xlat4;
					float u_xlat12;
					int u_xlati12;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat1 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat1.x);
					    u_xlat0.x = float(0.0);
					    u_xlat0.y = float(0.0);
					    u_xlat0.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat1.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat3.x = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat3.x = u_xlat3.x * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat3.x = float(1.0) / u_xlat3.x;
					        u_xlat0.xyz = unity_LightColor[u_xlati_loop_1].xyz * u_xlat3.xxx + u_xlat0.xyz;
					    }
					    u_xlat0.xyz = u_xlat0.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat1.xyz = vec3(u_xlat12) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendAlpha" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat12;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat2.xyz = vec3(u_xlat12) * u_xlat2.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat2.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					bool u_xlatb3;
					vec2 u_xlat4;
					float u_xlat12;
					int u_xlati12;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat1 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat1.x);
					    u_xlat0.x = float(0.0);
					    u_xlat0.y = float(0.0);
					    u_xlat0.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat1.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat3.x = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat3.x = u_xlat3.x * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat3.x = float(1.0) / u_xlat3.x;
					        u_xlat0.xyz = unity_LightColor[u_xlati_loop_1].xyz * u_xlat3.xxx + u_xlat0.xyz;
					    }
					    u_xlat0.xyz = u_xlat0.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat1.xyz = vec3(u_xlat12) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendAlpha" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat12;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat2.xyz = vec3(u_xlat12) * u_xlat2.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat2.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					bool u_xlatb3;
					vec2 u_xlat4;
					float u_xlat12;
					int u_xlati12;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat1 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat1.x);
					    u_xlat0.x = float(0.0);
					    u_xlat0.y = float(0.0);
					    u_xlat0.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat1.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat3.x = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat3.x = u_xlat3.x * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat3.x = float(1.0) / u_xlat3.x;
					        u_xlat0.xyz = unity_LightColor[u_xlati_loop_1].xyz * u_xlat3.xxx + u_xlat0.xyz;
					    }
					    u_xlat0.xyz = u_xlat0.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat1.xyz = vec3(u_xlat12) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat12;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat2.xyz = vec3(u_xlat12) * u_xlat2.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat2.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					bool u_xlatb3;
					vec2 u_xlat4;
					float u_xlat12;
					int u_xlati12;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat1 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat1.x);
					    u_xlat0.x = float(0.0);
					    u_xlat0.y = float(0.0);
					    u_xlat0.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat1.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat3.x = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat3.x = u_xlat3.x * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat3.x = float(1.0) / u_xlat3.x;
					        u_xlat0.xyz = unity_LightColor[u_xlati_loop_1].xyz * u_xlat3.xxx + u_xlat0.xyz;
					    }
					    u_xlat0.xyz = u_xlat0.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat1.xyz = vec3(u_xlat12) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendAlpha" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat12;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat2.xyz = vec3(u_xlat12) * u_xlat2.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat2.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					bool u_xlatb3;
					vec2 u_xlat4;
					float u_xlat12;
					int u_xlati12;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat1 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat1.x);
					    u_xlat0.x = float(0.0);
					    u_xlat0.y = float(0.0);
					    u_xlat0.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat1.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat3.x = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat3.x = u_xlat3.x * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat3.x = float(1.0) / u_xlat3.x;
					        u_xlat0.xyz = unity_LightColor[u_xlati_loop_1].xyz * u_xlat3.xxx + u_xlat0.xyz;
					    }
					    u_xlat0.xyz = u_xlat0.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat1.xyz = vec3(u_xlat12) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat12;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat2.xyz = vec3(u_xlat12) * u_xlat2.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat2.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					bool u_xlatb3;
					vec2 u_xlat4;
					float u_xlat12;
					int u_xlati12;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat1 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat1.x);
					    u_xlat0.x = float(0.0);
					    u_xlat0.y = float(0.0);
					    u_xlat0.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat1.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat3.x = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat3.x = u_xlat3.x * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat3.x = float(1.0) / u_xlat3.x;
					        u_xlat0.xyz = unity_LightColor[u_xlati_loop_1].xyz * u_xlat3.xxx + u_xlat0.xyz;
					    }
					    u_xlat0.xyz = u_xlat0.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat1.xyz = vec3(u_xlat12) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendAlpha" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat12;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat2.xyz = vec3(u_xlat12) * u_xlat2.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat2.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					bool u_xlatb3;
					vec2 u_xlat4;
					float u_xlat12;
					int u_xlati12;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat1 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat1.x);
					    u_xlat0.x = float(0.0);
					    u_xlat0.y = float(0.0);
					    u_xlat0.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat1.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat3.x = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat3.x = u_xlat3.x * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat3.x = float(1.0) / u_xlat3.x;
					        u_xlat0.xyz = unity_LightColor[u_xlati_loop_1].xyz * u_xlat3.xxx + u_xlat0.xyz;
					    }
					    u_xlat0.xyz = u_xlat0.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat1.xyz = vec3(u_xlat12) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat12;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat2.xyz = vec3(u_xlat12) * u_xlat2.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat2.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					bool u_xlatb3;
					vec2 u_xlat4;
					float u_xlat12;
					int u_xlati12;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat1 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat1.x);
					    u_xlat0.x = float(0.0);
					    u_xlat0.y = float(0.0);
					    u_xlat0.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat1.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat3.x = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat3.x = u_xlat3.x * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat3.x = float(1.0) / u_xlat3.x;
					        u_xlat0.xyz = unity_LightColor[u_xlati_loop_1].xyz * u_xlat3.xxx + u_xlat0.xyz;
					    }
					    u_xlat0.xyz = u_xlat0.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat1.xyz = vec3(u_xlat12) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendAlpha" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat12;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat2.xyz = vec3(u_xlat12) * u_xlat2.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat2.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					bool u_xlatb3;
					vec2 u_xlat4;
					float u_xlat12;
					int u_xlati12;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat1 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat1.x);
					    u_xlat0.x = float(0.0);
					    u_xlat0.y = float(0.0);
					    u_xlat0.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat1.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat3.x = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat3.x = u_xlat3.x * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat3.x = float(1.0) / u_xlat3.x;
					        u_xlat0.xyz = unity_LightColor[u_xlati_loop_1].xyz * u_xlat3.xxx + u_xlat0.xyz;
					    }
					    u_xlat0.xyz = u_xlat0.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat1.xyz = vec3(u_xlat12) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendAlpha" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat12;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat2.xyz = vec3(u_xlat12) * u_xlat2.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat2.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					bool u_xlatb3;
					vec2 u_xlat4;
					float u_xlat12;
					int u_xlati12;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat1 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat1.x);
					    u_xlat0.x = float(0.0);
					    u_xlat0.y = float(0.0);
					    u_xlat0.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat1.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat3.x = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat3.x = u_xlat3.x * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat3.x = float(1.0) / u_xlat3.x;
					        u_xlat0.xyz = unity_LightColor[u_xlati_loop_1].xyz * u_xlat3.xxx + u_xlat0.xyz;
					    }
					    u_xlat0.xyz = u_xlat0.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat1.xyz = vec3(u_xlat12) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendAlpha" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat12;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat2.xyz = vec3(u_xlat12) * u_xlat2.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat2.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					bool u_xlatb3;
					vec2 u_xlat4;
					float u_xlat12;
					int u_xlati12;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat1 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat1.x);
					    u_xlat0.x = float(0.0);
					    u_xlat0.y = float(0.0);
					    u_xlat0.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat1.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat3.x = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat3.x = u_xlat3.x * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat3.x = float(1.0) / u_xlat3.x;
					        u_xlat0.xyz = unity_LightColor[u_xlati_loop_1].xyz * u_xlat3.xxx + u_xlat0.xyz;
					    }
					    u_xlat0.xyz = u_xlat0.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat1.xyz = vec3(u_xlat12) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat12;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat2.xyz = vec3(u_xlat12) * u_xlat2.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat2.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					bool u_xlatb3;
					vec2 u_xlat4;
					float u_xlat12;
					int u_xlati12;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat1 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat1.x);
					    u_xlat0.x = float(0.0);
					    u_xlat0.y = float(0.0);
					    u_xlat0.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat1.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat3.x = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat3.x = u_xlat3.x * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat3.x = float(1.0) / u_xlat3.x;
					        u_xlat0.xyz = unity_LightColor[u_xlati_loop_1].xyz * u_xlat3.xxx + u_xlat0.xyz;
					    }
					    u_xlat0.xyz = u_xlat0.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat1.xyz = vec3(u_xlat12) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendAlpha" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat12;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat2.xyz = vec3(u_xlat12) * u_xlat2.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat2.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					bool u_xlatb3;
					vec2 u_xlat4;
					float u_xlat12;
					int u_xlati12;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat1 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat1.x);
					    u_xlat0.x = float(0.0);
					    u_xlat0.y = float(0.0);
					    u_xlat0.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat1.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat3.x = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat3.x = u_xlat3.x * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat3.x = float(1.0) / u_xlat3.x;
					        u_xlat0.xyz = unity_LightColor[u_xlati_loop_1].xyz * u_xlat3.xxx + u_xlat0.xyz;
					    }
					    u_xlat0.xyz = u_xlat0.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat1.xyz = vec3(u_xlat12) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat12;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat2.xyz = vec3(u_xlat12) * u_xlat2.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat2.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					bool u_xlatb3;
					vec2 u_xlat4;
					float u_xlat12;
					int u_xlati12;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat1 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat1.x);
					    u_xlat0.x = float(0.0);
					    u_xlat0.y = float(0.0);
					    u_xlat0.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat1.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat3.x = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat3.x = u_xlat3.x * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat3.x = float(1.0) / u_xlat3.x;
					        u_xlat0.xyz = unity_LightColor[u_xlati_loop_1].xyz * u_xlat3.xxx + u_xlat0.xyz;
					    }
					    u_xlat0.xyz = u_xlat0.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat1.xyz = vec3(u_xlat12) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendAlpha" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat12;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat2.xyz = vec3(u_xlat12) * u_xlat2.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat2.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					bool u_xlatb3;
					vec2 u_xlat4;
					float u_xlat12;
					int u_xlati12;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat1 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat1.x);
					    u_xlat0.x = float(0.0);
					    u_xlat0.y = float(0.0);
					    u_xlat0.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat1.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat3.x = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat3.x = u_xlat3.x * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat3.x = float(1.0) / u_xlat3.x;
					        u_xlat0.xyz = unity_LightColor[u_xlati_loop_1].xyz * u_xlat3.xxx + u_xlat0.xyz;
					    }
					    u_xlat0.xyz = u_xlat0.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat1.xyz = vec3(u_xlat12) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat12;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat2.xyz = vec3(u_xlat12) * u_xlat2.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat2.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					bool u_xlatb3;
					vec2 u_xlat4;
					float u_xlat12;
					int u_xlati12;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat1 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat1.x);
					    u_xlat0.x = float(0.0);
					    u_xlat0.y = float(0.0);
					    u_xlat0.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat1.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat3.x = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat3.x = u_xlat3.x * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat3.x = float(1.0) / u_xlat3.x;
					        u_xlat0.xyz = unity_LightColor[u_xlati_loop_1].xyz * u_xlat3.xxx + u_xlat0.xyz;
					    }
					    u_xlat0.xyz = u_xlat0.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat1.xyz = vec3(u_xlat12) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_8;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_10;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					float u_xlat20;
					bool u_xlatb20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat20 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 9.99999997e-07);
					        u_xlat3.x = inversesqrt(u_xlat20);
					        u_xlat5.xyz = u_xlat3.xxx * u_xlat5.xyz;
					        u_xlat20 = u_xlat20 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat20 = float(1.0) / u_xlat20;
					        u_xlat3.x = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat3.x = max(u_xlat3.x, 0.0);
					        u_xlat20 = u_xlat20 * u_xlat3.x;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat20) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_8;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_10;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					float u_xlat20;
					bool u_xlatb20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat20 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 9.99999997e-07);
					        u_xlat3.x = inversesqrt(u_xlat20);
					        u_xlat5.xyz = u_xlat3.xxx * u_xlat5.xyz;
					        u_xlat20 = u_xlat20 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat20 = float(1.0) / u_xlat20;
					        u_xlat3.x = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat3.x = max(u_xlat3.x, 0.0);
					        u_xlat20 = u_xlat20 * u_xlat3.x;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat20) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_8;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_10;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					float u_xlat20;
					bool u_xlatb20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat20 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 9.99999997e-07);
					        u_xlat3.x = inversesqrt(u_xlat20);
					        u_xlat5.xyz = u_xlat3.xxx * u_xlat5.xyz;
					        u_xlat20 = u_xlat20 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat20 = float(1.0) / u_xlat20;
					        u_xlat3.x = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat3.x = max(u_xlat3.x, 0.0);
					        u_xlat20 = u_xlat20 * u_xlat3.x;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat20) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_8;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_10;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					float u_xlat20;
					bool u_xlatb20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat20 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 9.99999997e-07);
					        u_xlat3.x = inversesqrt(u_xlat20);
					        u_xlat5.xyz = u_xlat3.xxx * u_xlat5.xyz;
					        u_xlat20 = u_xlat20 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat20 = float(1.0) / u_xlat20;
					        u_xlat3.x = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat3.x = max(u_xlat3.x, 0.0);
					        u_xlat20 = u_xlat20 * u_xlat3.x;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat20) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_8;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_10;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					float u_xlat20;
					bool u_xlatb20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat20 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 9.99999997e-07);
					        u_xlat3.x = inversesqrt(u_xlat20);
					        u_xlat5.xyz = u_xlat3.xxx * u_xlat5.xyz;
					        u_xlat20 = u_xlat20 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat20 = float(1.0) / u_xlat20;
					        u_xlat3.x = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat3.x = max(u_xlat3.x, 0.0);
					        u_xlat20 = u_xlat20 * u_xlat3.x;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat20) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_8;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_10;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					float u_xlat20;
					bool u_xlatb20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat20 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 9.99999997e-07);
					        u_xlat3.x = inversesqrt(u_xlat20);
					        u_xlat5.xyz = u_xlat3.xxx * u_xlat5.xyz;
					        u_xlat20 = u_xlat20 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat20 = float(1.0) / u_xlat20;
					        u_xlat3.x = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat3.x = max(u_xlat3.x, 0.0);
					        u_xlat20 = u_xlat20 * u_xlat3.x;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat20) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_8;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_10;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					float u_xlat20;
					bool u_xlatb20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat20 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 9.99999997e-07);
					        u_xlat3.x = inversesqrt(u_xlat20);
					        u_xlat5.xyz = u_xlat3.xxx * u_xlat5.xyz;
					        u_xlat20 = u_xlat20 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat20 = float(1.0) / u_xlat20;
					        u_xlat3.x = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat3.x = max(u_xlat3.x, 0.0);
					        u_xlat20 = u_xlat20 * u_xlat3.x;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat20) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_8;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_10;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					float u_xlat20;
					bool u_xlatb20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat20 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 9.99999997e-07);
					        u_xlat3.x = inversesqrt(u_xlat20);
					        u_xlat5.xyz = u_xlat3.xxx * u_xlat5.xyz;
					        u_xlat20 = u_xlat20 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat20 = float(1.0) / u_xlat20;
					        u_xlat3.x = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat3.x = max(u_xlat3.x, 0.0);
					        u_xlat20 = u_xlat20 * u_xlat3.x;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat20) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_8;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_10;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					float u_xlat20;
					bool u_xlatb20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat20 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 9.99999997e-07);
					        u_xlat3.x = inversesqrt(u_xlat20);
					        u_xlat5.xyz = u_xlat3.xxx * u_xlat5.xyz;
					        u_xlat20 = u_xlat20 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat20 = float(1.0) / u_xlat20;
					        u_xlat3.x = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat3.x = max(u_xlat3.x, 0.0);
					        u_xlat20 = u_xlat20 * u_xlat3.x;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat20) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_8;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_10;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					float u_xlat20;
					bool u_xlatb20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat20 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 9.99999997e-07);
					        u_xlat3.x = inversesqrt(u_xlat20);
					        u_xlat5.xyz = u_xlat3.xxx * u_xlat5.xyz;
					        u_xlat20 = u_xlat20 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat20 = float(1.0) / u_xlat20;
					        u_xlat3.x = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat3.x = max(u_xlat3.x, 0.0);
					        u_xlat20 = u_xlat20 * u_xlat3.x;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat20) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_8;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_10;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					float u_xlat20;
					bool u_xlatb20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat20 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 9.99999997e-07);
					        u_xlat3.x = inversesqrt(u_xlat20);
					        u_xlat5.xyz = u_xlat3.xxx * u_xlat5.xyz;
					        u_xlat20 = u_xlat20 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat20 = float(1.0) / u_xlat20;
					        u_xlat3.x = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat3.x = max(u_xlat3.x, 0.0);
					        u_xlat20 = u_xlat20 * u_xlat3.x;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat20) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_8;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_10;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					float u_xlat20;
					bool u_xlatb20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat20 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 9.99999997e-07);
					        u_xlat3.x = inversesqrt(u_xlat20);
					        u_xlat5.xyz = u_xlat3.xxx * u_xlat5.xyz;
					        u_xlat20 = u_xlat20 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat20 = float(1.0) / u_xlat20;
					        u_xlat3.x = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat3.x = max(u_xlat3.x, 0.0);
					        u_xlat20 = u_xlat20 * u_xlat3.x;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat20) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_8;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_10;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					float u_xlat20;
					bool u_xlatb20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat20 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 9.99999997e-07);
					        u_xlat3.x = inversesqrt(u_xlat20);
					        u_xlat5.xyz = u_xlat3.xxx * u_xlat5.xyz;
					        u_xlat20 = u_xlat20 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat20 = float(1.0) / u_xlat20;
					        u_xlat3.x = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat3.x = max(u_xlat3.x, 0.0);
					        u_xlat20 = u_xlat20 * u_xlat3.x;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat20) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_8;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_10;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					float u_xlat20;
					bool u_xlatb20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat20 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 9.99999997e-07);
					        u_xlat3.x = inversesqrt(u_xlat20);
					        u_xlat5.xyz = u_xlat3.xxx * u_xlat5.xyz;
					        u_xlat20 = u_xlat20 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat20 = float(1.0) / u_xlat20;
					        u_xlat3.x = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat3.x = max(u_xlat3.x, 0.0);
					        u_xlat20 = u_xlat20 * u_xlat3.x;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat20) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_8;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_10;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					float u_xlat20;
					bool u_xlatb20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat20 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 9.99999997e-07);
					        u_xlat3.x = inversesqrt(u_xlat20);
					        u_xlat5.xyz = u_xlat3.xxx * u_xlat5.xyz;
					        u_xlat20 = u_xlat20 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat20 = float(1.0) / u_xlat20;
					        u_xlat3.x = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat3.x = max(u_xlat3.x, 0.0);
					        u_xlat20 = u_xlat20 * u_xlat3.x;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat20) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_8;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_10;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					float u_xlat20;
					bool u_xlatb20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat20 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 9.99999997e-07);
					        u_xlat3.x = inversesqrt(u_xlat20);
					        u_xlat5.xyz = u_xlat3.xxx * u_xlat5.xyz;
					        u_xlat20 = u_xlat20 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat20 = float(1.0) / u_xlat20;
					        u_xlat3.x = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat3.x = max(u_xlat3.x, 0.0);
					        u_xlat20 = u_xlat20 * u_xlat3.x;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat20) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_8;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_10;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					float u_xlat20;
					bool u_xlatb20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat20 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 9.99999997e-07);
					        u_xlat3.x = inversesqrt(u_xlat20);
					        u_xlat5.xyz = u_xlat3.xxx * u_xlat5.xyz;
					        u_xlat20 = u_xlat20 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat20 = float(1.0) / u_xlat20;
					        u_xlat3.x = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat3.x = max(u_xlat3.x, 0.0);
					        u_xlat20 = u_xlat20 * u_xlat3.x;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat20) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_8;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_10;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					float u_xlat20;
					bool u_xlatb20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat20 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 9.99999997e-07);
					        u_xlat3.x = inversesqrt(u_xlat20);
					        u_xlat5.xyz = u_xlat3.xxx * u_xlat5.xyz;
					        u_xlat20 = u_xlat20 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat20 = float(1.0) / u_xlat20;
					        u_xlat3.x = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat3.x = max(u_xlat3.x, 0.0);
					        u_xlat20 = u_xlat20 * u_xlat3.x;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat20) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_8;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_10;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					float u_xlat20;
					bool u_xlatb20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat20 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 9.99999997e-07);
					        u_xlat3.x = inversesqrt(u_xlat20);
					        u_xlat5.xyz = u_xlat3.xxx * u_xlat5.xyz;
					        u_xlat20 = u_xlat20 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat20 = float(1.0) / u_xlat20;
					        u_xlat3.x = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat3.x = max(u_xlat3.x, 0.0);
					        u_xlat20 = u_xlat20 * u_xlat3.x;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat20) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_8;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_10;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					float u_xlat20;
					bool u_xlatb20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat20 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 9.99999997e-07);
					        u_xlat3.x = inversesqrt(u_xlat20);
					        u_xlat5.xyz = u_xlat3.xxx * u_xlat5.xyz;
					        u_xlat20 = u_xlat20 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat20 = float(1.0) / u_xlat20;
					        u_xlat3.x = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat3.x = max(u_xlat3.x, 0.0);
					        u_xlat20 = u_xlat20 * u_xlat3.x;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat20) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_8;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_10;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					float u_xlat20;
					bool u_xlatb20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat20 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 9.99999997e-07);
					        u_xlat3.x = inversesqrt(u_xlat20);
					        u_xlat5.xyz = u_xlat3.xxx * u_xlat5.xyz;
					        u_xlat20 = u_xlat20 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat20 = float(1.0) / u_xlat20;
					        u_xlat3.x = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat3.x = max(u_xlat3.x, 0.0);
					        u_xlat20 = u_xlat20 * u_xlat3.x;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat20) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_8;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_10;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					float u_xlat20;
					bool u_xlatb20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat20 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 9.99999997e-07);
					        u_xlat3.x = inversesqrt(u_xlat20);
					        u_xlat5.xyz = u_xlat3.xxx * u_xlat5.xyz;
					        u_xlat20 = u_xlat20 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat20 = float(1.0) / u_xlat20;
					        u_xlat3.x = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat3.x = max(u_xlat3.x, 0.0);
					        u_xlat20 = u_xlat20 * u_xlat3.x;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat20) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_8;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_10;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					float u_xlat20;
					bool u_xlatb20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat20 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 9.99999997e-07);
					        u_xlat3.x = inversesqrt(u_xlat20);
					        u_xlat5.xyz = u_xlat3.xxx * u_xlat5.xyz;
					        u_xlat20 = u_xlat20 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat20 = float(1.0) / u_xlat20;
					        u_xlat3.x = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat3.x = max(u_xlat3.x, 0.0);
					        u_xlat20 = u_xlat20 * u_xlat3.x;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat20) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_8;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_10;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					float u_xlat20;
					bool u_xlatb20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat20 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 9.99999997e-07);
					        u_xlat3.x = inversesqrt(u_xlat20);
					        u_xlat5.xyz = u_xlat3.xxx * u_xlat5.xyz;
					        u_xlat20 = u_xlat20 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat20 = float(1.0) / u_xlat20;
					        u_xlat3.x = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat3.x = max(u_xlat3.x, 0.0);
					        u_xlat20 = u_xlat20 * u_xlat3.x;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat20) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_8;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_10;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					float u_xlat20;
					bool u_xlatb20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat20 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 9.99999997e-07);
					        u_xlat3.x = inversesqrt(u_xlat20);
					        u_xlat5.xyz = u_xlat3.xxx * u_xlat5.xyz;
					        u_xlat20 = u_xlat20 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat20 = float(1.0) / u_xlat20;
					        u_xlat3.x = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat3.x = max(u_xlat3.x, 0.0);
					        u_xlat20 = u_xlat20 * u_xlat3.x;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat20) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_8;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_10;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					float u_xlat20;
					bool u_xlatb20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat20 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 9.99999997e-07);
					        u_xlat3.x = inversesqrt(u_xlat20);
					        u_xlat5.xyz = u_xlat3.xxx * u_xlat5.xyz;
					        u_xlat20 = u_xlat20 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat20 = float(1.0) / u_xlat20;
					        u_xlat3.x = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat3.x = max(u_xlat3.x, 0.0);
					        u_xlat20 = u_xlat20 * u_xlat3.x;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat20) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_8;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_10;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					float u_xlat20;
					bool u_xlatb20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat20 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 9.99999997e-07);
					        u_xlat3.x = inversesqrt(u_xlat20);
					        u_xlat5.xyz = u_xlat3.xxx * u_xlat5.xyz;
					        u_xlat20 = u_xlat20 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat20 = float(1.0) / u_xlat20;
					        u_xlat3.x = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat3.x = max(u_xlat3.x, 0.0);
					        u_xlat20 = u_xlat20 * u_xlat3.x;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat20) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_8;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_10;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					float u_xlat20;
					bool u_xlatb20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat20 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 9.99999997e-07);
					        u_xlat3.x = inversesqrt(u_xlat20);
					        u_xlat5.xyz = u_xlat3.xxx * u_xlat5.xyz;
					        u_xlat20 = u_xlat20 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat20 = float(1.0) / u_xlat20;
					        u_xlat3.x = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat3.x = max(u_xlat3.x, 0.0);
					        u_xlat20 = u_xlat20 * u_xlat3.x;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat20) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_8;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_10;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					float u_xlat20;
					bool u_xlatb20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat20 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 9.99999997e-07);
					        u_xlat3.x = inversesqrt(u_xlat20);
					        u_xlat5.xyz = u_xlat3.xxx * u_xlat5.xyz;
					        u_xlat20 = u_xlat20 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat20 = float(1.0) / u_xlat20;
					        u_xlat3.x = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat3.x = max(u_xlat3.x, 0.0);
					        u_xlat20 = u_xlat20 * u_xlat3.x;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat20) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_8;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_10;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					float u_xlat20;
					bool u_xlatb20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat20 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 9.99999997e-07);
					        u_xlat3.x = inversesqrt(u_xlat20);
					        u_xlat5.xyz = u_xlat3.xxx * u_xlat5.xyz;
					        u_xlat20 = u_xlat20 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat20 = float(1.0) / u_xlat20;
					        u_xlat3.x = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat3.x = max(u_xlat3.x, 0.0);
					        u_xlat20 = u_xlat20 * u_xlat3.x;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat20) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_8;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_10;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					float u_xlat20;
					bool u_xlatb20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat20 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 9.99999997e-07);
					        u_xlat3.x = inversesqrt(u_xlat20);
					        u_xlat5.xyz = u_xlat3.xxx * u_xlat5.xyz;
					        u_xlat20 = u_xlat20 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat20 = float(1.0) / u_xlat20;
					        u_xlat3.x = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat3.x = max(u_xlat3.x, 0.0);
					        u_xlat20 = u_xlat20 * u_xlat3.x;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat20) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_8;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_10;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					float u_xlat20;
					bool u_xlatb20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat20 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 9.99999997e-07);
					        u_xlat3.x = inversesqrt(u_xlat20);
					        u_xlat5.xyz = u_xlat3.xxx * u_xlat5.xyz;
					        u_xlat20 = u_xlat20 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat20 = float(1.0) / u_xlat20;
					        u_xlat3.x = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat3.x = max(u_xlat3.x, 0.0);
					        u_xlat20 = u_xlat20 * u_xlat3.x;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat20) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_8;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_10;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					float u_xlat20;
					bool u_xlatb20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat20 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 9.99999997e-07);
					        u_xlat3.x = inversesqrt(u_xlat20);
					        u_xlat5.xyz = u_xlat3.xxx * u_xlat5.xyz;
					        u_xlat20 = u_xlat20 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat20 = float(1.0) / u_xlat20;
					        u_xlat3.x = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat3.x = max(u_xlat3.x, 0.0);
					        u_xlat20 = u_xlat20 * u_xlat3.x;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat20) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_8;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_10;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					float u_xlat20;
					bool u_xlatb20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat20 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 9.99999997e-07);
					        u_xlat3.x = inversesqrt(u_xlat20);
					        u_xlat5.xyz = u_xlat3.xxx * u_xlat5.xyz;
					        u_xlat20 = u_xlat20 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat20 = float(1.0) / u_xlat20;
					        u_xlat3.x = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat3.x = max(u_xlat3.x, 0.0);
					        u_xlat20 = u_xlat20 * u_xlat3.x;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat20) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_8;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_10;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					float u_xlat20;
					bool u_xlatb20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat20 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 9.99999997e-07);
					        u_xlat3.x = inversesqrt(u_xlat20);
					        u_xlat5.xyz = u_xlat3.xxx * u_xlat5.xyz;
					        u_xlat20 = u_xlat20 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat20 = float(1.0) / u_xlat20;
					        u_xlat3.x = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat3.x = max(u_xlat3.x, 0.0);
					        u_xlat20 = u_xlat20 * u_xlat3.x;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat20) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_8;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_10;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					float u_xlat20;
					bool u_xlatb20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat20 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 9.99999997e-07);
					        u_xlat3.x = inversesqrt(u_xlat20);
					        u_xlat5.xyz = u_xlat3.xxx * u_xlat5.xyz;
					        u_xlat20 = u_xlat20 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat20 = float(1.0) / u_xlat20;
					        u_xlat3.x = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat3.x = max(u_xlat3.x, 0.0);
					        u_xlat20 = u_xlat20 * u_xlat3.x;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat20) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_8;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_10;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					float u_xlat20;
					bool u_xlatb20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat20 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 9.99999997e-07);
					        u_xlat3.x = inversesqrt(u_xlat20);
					        u_xlat5.xyz = u_xlat3.xxx * u_xlat5.xyz;
					        u_xlat20 = u_xlat20 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat20 = float(1.0) / u_xlat20;
					        u_xlat3.x = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat3.x = max(u_xlat3.x, 0.0);
					        u_xlat20 = u_xlat20 * u_xlat3.x;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat20) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_8;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_10;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					float u_xlat20;
					bool u_xlatb20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat20 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 9.99999997e-07);
					        u_xlat3.x = inversesqrt(u_xlat20);
					        u_xlat5.xyz = u_xlat3.xxx * u_xlat5.xyz;
					        u_xlat20 = u_xlat20 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat20 = float(1.0) / u_xlat20;
					        u_xlat3.x = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat3.x = max(u_xlat3.x, 0.0);
					        u_xlat20 = u_xlat20 * u_xlat3.x;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat20) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_8;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_10;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					float u_xlat20;
					bool u_xlatb20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat20 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 9.99999997e-07);
					        u_xlat3.x = inversesqrt(u_xlat20);
					        u_xlat5.xyz = u_xlat3.xxx * u_xlat5.xyz;
					        u_xlat20 = u_xlat20 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat20 = float(1.0) / u_xlat20;
					        u_xlat3.x = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat3.x = max(u_xlat3.x, 0.0);
					        u_xlat20 = u_xlat20 * u_xlat3.x;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat20) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_8;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_10;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					float u_xlat20;
					bool u_xlatb20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat20 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 9.99999997e-07);
					        u_xlat3.x = inversesqrt(u_xlat20);
					        u_xlat5.xyz = u_xlat3.xxx * u_xlat5.xyz;
					        u_xlat20 = u_xlat20 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat20 = float(1.0) / u_xlat20;
					        u_xlat3.x = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat3.x = max(u_xlat3.x, 0.0);
					        u_xlat20 = u_xlat20 * u_xlat3.x;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat20) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_8;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_10;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					float u_xlat20;
					bool u_xlatb20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat20 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 9.99999997e-07);
					        u_xlat3.x = inversesqrt(u_xlat20);
					        u_xlat5.xyz = u_xlat3.xxx * u_xlat5.xyz;
					        u_xlat20 = u_xlat20 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat20 = float(1.0) / u_xlat20;
					        u_xlat3.x = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat3.x = max(u_xlat3.x, 0.0);
					        u_xlat20 = u_xlat20 * u_xlat3.x;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat20) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_8;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_10;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					float u_xlat20;
					bool u_xlatb20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat20 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 9.99999997e-07);
					        u_xlat3.x = inversesqrt(u_xlat20);
					        u_xlat5.xyz = u_xlat3.xxx * u_xlat5.xyz;
					        u_xlat20 = u_xlat20 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat20 = float(1.0) / u_xlat20;
					        u_xlat3.x = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat3.x = max(u_xlat3.x, 0.0);
					        u_xlat20 = u_xlat20 * u_xlat3.x;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat20) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_8;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_10;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					float u_xlat20;
					bool u_xlatb20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat20 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 9.99999997e-07);
					        u_xlat3.x = inversesqrt(u_xlat20);
					        u_xlat5.xyz = u_xlat3.xxx * u_xlat5.xyz;
					        u_xlat20 = u_xlat20 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat20 = float(1.0) / u_xlat20;
					        u_xlat3.x = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat3.x = max(u_xlat3.x, 0.0);
					        u_xlat20 = u_xlat20 * u_xlat3.x;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat20) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_8;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_10;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					float u_xlat20;
					bool u_xlatb20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat20 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 9.99999997e-07);
					        u_xlat3.x = inversesqrt(u_xlat20);
					        u_xlat5.xyz = u_xlat3.xxx * u_xlat5.xyz;
					        u_xlat20 = u_xlat20 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat20 = float(1.0) / u_xlat20;
					        u_xlat3.x = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat3.x = max(u_xlat3.x, 0.0);
					        u_xlat20 = u_xlat20 * u_xlat3.x;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat20) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_8;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_10;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					float u_xlat20;
					bool u_xlatb20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat20 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 9.99999997e-07);
					        u_xlat3.x = inversesqrt(u_xlat20);
					        u_xlat5.xyz = u_xlat3.xxx * u_xlat5.xyz;
					        u_xlat20 = u_xlat20 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat20 = float(1.0) / u_xlat20;
					        u_xlat3.x = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat3.x = max(u_xlat3.x, 0.0);
					        u_xlat20 = u_xlat20 * u_xlat3.x;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat20) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_8;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_10;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					float u_xlat20;
					bool u_xlatb20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat20 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 9.99999997e-07);
					        u_xlat3.x = inversesqrt(u_xlat20);
					        u_xlat5.xyz = u_xlat3.xxx * u_xlat5.xyz;
					        u_xlat20 = u_xlat20 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat20 = float(1.0) / u_xlat20;
					        u_xlat3.x = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat3.x = max(u_xlat3.x, 0.0);
					        u_xlat20 = u_xlat20 * u_xlat3.x;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat20) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_8;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_10;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					float u_xlat20;
					bool u_xlatb20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat20 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 9.99999997e-07);
					        u_xlat3.x = inversesqrt(u_xlat20);
					        u_xlat5.xyz = u_xlat3.xxx * u_xlat5.xyz;
					        u_xlat20 = u_xlat20 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat20 = float(1.0) / u_xlat20;
					        u_xlat3.x = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat3.x = max(u_xlat3.x, 0.0);
					        u_xlat20 = u_xlat20 * u_xlat3.x;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat20) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_8;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_10;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					float u_xlat20;
					bool u_xlatb20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat20 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 9.99999997e-07);
					        u_xlat3.x = inversesqrt(u_xlat20);
					        u_xlat5.xyz = u_xlat3.xxx * u_xlat5.xyz;
					        u_xlat20 = u_xlat20 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat20 = float(1.0) / u_xlat20;
					        u_xlat3.x = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat3.x = max(u_xlat3.x, 0.0);
					        u_xlat20 = u_xlat20 * u_xlat3.x;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat20) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_8;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_10;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					float u_xlat20;
					bool u_xlatb20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat20 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 9.99999997e-07);
					        u_xlat3.x = inversesqrt(u_xlat20);
					        u_xlat5.xyz = u_xlat3.xxx * u_xlat5.xyz;
					        u_xlat20 = u_xlat20 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat20 = float(1.0) / u_xlat20;
					        u_xlat3.x = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat3.x = max(u_xlat3.x, 0.0);
					        u_xlat20 = u_xlat20 * u_xlat3.x;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat20) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_8;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_10;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					float u_xlat20;
					bool u_xlatb20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat20 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 9.99999997e-07);
					        u_xlat3.x = inversesqrt(u_xlat20);
					        u_xlat5.xyz = u_xlat3.xxx * u_xlat5.xyz;
					        u_xlat20 = u_xlat20 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat20 = float(1.0) / u_xlat20;
					        u_xlat3.x = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat3.x = max(u_xlat3.x, 0.0);
					        u_xlat20 = u_xlat20 * u_xlat3.x;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat20) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_8;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_10;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					float u_xlat20;
					bool u_xlatb20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat20 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 9.99999997e-07);
					        u_xlat3.x = inversesqrt(u_xlat20);
					        u_xlat5.xyz = u_xlat3.xxx * u_xlat5.xyz;
					        u_xlat20 = u_xlat20 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat20 = float(1.0) / u_xlat20;
					        u_xlat3.x = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat3.x = max(u_xlat3.x, 0.0);
					        u_xlat20 = u_xlat20 * u_xlat3.x;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat20) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_8;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_10;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					float u_xlat20;
					bool u_xlatb20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat20 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 9.99999997e-07);
					        u_xlat3.x = inversesqrt(u_xlat20);
					        u_xlat5.xyz = u_xlat3.xxx * u_xlat5.xyz;
					        u_xlat20 = u_xlat20 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat20 = float(1.0) / u_xlat20;
					        u_xlat3.x = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat3.x = max(u_xlat3.x, 0.0);
					        u_xlat20 = u_xlat20 * u_xlat3.x;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat20) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_8;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_10;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					float u_xlat20;
					bool u_xlatb20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat20 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 9.99999997e-07);
					        u_xlat3.x = inversesqrt(u_xlat20);
					        u_xlat5.xyz = u_xlat3.xxx * u_xlat5.xyz;
					        u_xlat20 = u_xlat20 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat20 = float(1.0) / u_xlat20;
					        u_xlat3.x = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat3.x = max(u_xlat3.x, 0.0);
					        u_xlat20 = u_xlat20 * u_xlat3.x;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat20) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_8;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_10;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					float u_xlat20;
					bool u_xlatb20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat20 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 9.99999997e-07);
					        u_xlat3.x = inversesqrt(u_xlat20);
					        u_xlat5.xyz = u_xlat3.xxx * u_xlat5.xyz;
					        u_xlat20 = u_xlat20 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat20 = float(1.0) / u_xlat20;
					        u_xlat3.x = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat3.x = max(u_xlat3.x, 0.0);
					        u_xlat20 = u_xlat20 * u_xlat3.x;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat20) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_8;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_10;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					float u_xlat20;
					bool u_xlatb20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat20 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 9.99999997e-07);
					        u_xlat3.x = inversesqrt(u_xlat20);
					        u_xlat5.xyz = u_xlat3.xxx * u_xlat5.xyz;
					        u_xlat20 = u_xlat20 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat20 = float(1.0) / u_xlat20;
					        u_xlat3.x = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat3.x = max(u_xlat3.x, 0.0);
					        u_xlat20 = u_xlat20 * u_xlat3.x;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat20) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_8;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_10;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					float u_xlat20;
					bool u_xlatb20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat20 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 9.99999997e-07);
					        u_xlat3.x = inversesqrt(u_xlat20);
					        u_xlat5.xyz = u_xlat3.xxx * u_xlat5.xyz;
					        u_xlat20 = u_xlat20 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat20 = float(1.0) / u_xlat20;
					        u_xlat3.x = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat3.x = max(u_xlat3.x, 0.0);
					        u_xlat20 = u_xlat20 * u_xlat3.x;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat20) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_8;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_10;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					float u_xlat20;
					bool u_xlatb20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat20 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 9.99999997e-07);
					        u_xlat3.x = inversesqrt(u_xlat20);
					        u_xlat5.xyz = u_xlat3.xxx * u_xlat5.xyz;
					        u_xlat20 = u_xlat20 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat20 = float(1.0) / u_xlat20;
					        u_xlat3.x = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat3.x = max(u_xlat3.x, 0.0);
					        u_xlat20 = u_xlat20 * u_xlat3.x;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat20) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_8;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_10;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					float u_xlat20;
					bool u_xlatb20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat20 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 9.99999997e-07);
					        u_xlat3.x = inversesqrt(u_xlat20);
					        u_xlat5.xyz = u_xlat3.xxx * u_xlat5.xyz;
					        u_xlat20 = u_xlat20 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat20 = float(1.0) / u_xlat20;
					        u_xlat3.x = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat3.x = max(u_xlat3.x, 0.0);
					        u_xlat20 = u_xlat20 * u_xlat3.x;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat20) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_8;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_10;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					float u_xlat20;
					bool u_xlatb20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat20 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 9.99999997e-07);
					        u_xlat3.x = inversesqrt(u_xlat20);
					        u_xlat5.xyz = u_xlat3.xxx * u_xlat5.xyz;
					        u_xlat20 = u_xlat20 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat20 = float(1.0) / u_xlat20;
					        u_xlat3.x = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat3.x = max(u_xlat3.x, 0.0);
					        u_xlat20 = u_xlat20 * u_xlat3.x;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat20) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_8;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_10;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					float u_xlat20;
					bool u_xlatb20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat20 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 9.99999997e-07);
					        u_xlat3.x = inversesqrt(u_xlat20);
					        u_xlat5.xyz = u_xlat3.xxx * u_xlat5.xyz;
					        u_xlat20 = u_xlat20 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat20 = float(1.0) / u_xlat20;
					        u_xlat3.x = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat3.x = max(u_xlat3.x, 0.0);
					        u_xlat20 = u_xlat20 * u_xlat3.x;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat20) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_8;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_10;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					float u_xlat20;
					bool u_xlatb20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat20 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 9.99999997e-07);
					        u_xlat3.x = inversesqrt(u_xlat20);
					        u_xlat5.xyz = u_xlat3.xxx * u_xlat5.xyz;
					        u_xlat20 = u_xlat20 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat20 = float(1.0) / u_xlat20;
					        u_xlat3.x = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat3.x = max(u_xlat3.x, 0.0);
					        u_xlat20 = u_xlat20 * u_xlat3.x;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat20) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_8;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_10;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					float u_xlat20;
					bool u_xlatb20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat20 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 9.99999997e-07);
					        u_xlat3.x = inversesqrt(u_xlat20);
					        u_xlat5.xyz = u_xlat3.xxx * u_xlat5.xyz;
					        u_xlat20 = u_xlat20 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat20 = float(1.0) / u_xlat20;
					        u_xlat3.x = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat3.x = max(u_xlat3.x, 0.0);
					        u_xlat20 = u_xlat20 * u_xlat3.x;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat20) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_8;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_10;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					float u_xlat20;
					bool u_xlatb20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat20 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 9.99999997e-07);
					        u_xlat3.x = inversesqrt(u_xlat20);
					        u_xlat5.xyz = u_xlat3.xxx * u_xlat5.xyz;
					        u_xlat20 = u_xlat20 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat20 = float(1.0) / u_xlat20;
					        u_xlat3.x = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat3.x = max(u_xlat3.x, 0.0);
					        u_xlat20 = u_xlat20 * u_xlat3.x;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat20) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_8;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_10;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					float u_xlat20;
					bool u_xlatb20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat20 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 9.99999997e-07);
					        u_xlat3.x = inversesqrt(u_xlat20);
					        u_xlat5.xyz = u_xlat3.xxx * u_xlat5.xyz;
					        u_xlat20 = u_xlat20 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat20 = float(1.0) / u_xlat20;
					        u_xlat3.x = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat3.x = max(u_xlat3.x, 0.0);
					        u_xlat20 = u_xlat20 * u_xlat3.x;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat20) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_8;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_10;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					float u_xlat20;
					bool u_xlatb20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat20 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 9.99999997e-07);
					        u_xlat3.x = inversesqrt(u_xlat20);
					        u_xlat5.xyz = u_xlat3.xxx * u_xlat5.xyz;
					        u_xlat20 = u_xlat20 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat20 = float(1.0) / u_xlat20;
					        u_xlat3.x = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat3.x = max(u_xlat3.x, 0.0);
					        u_xlat20 = u_xlat20 * u_xlat3.x;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat20) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_8;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_10;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					float u_xlat20;
					bool u_xlatb20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat20 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 9.99999997e-07);
					        u_xlat3.x = inversesqrt(u_xlat20);
					        u_xlat5.xyz = u_xlat3.xxx * u_xlat5.xyz;
					        u_xlat20 = u_xlat20 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat20 = float(1.0) / u_xlat20;
					        u_xlat3.x = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat3.x = max(u_xlat3.x, 0.0);
					        u_xlat20 = u_xlat20 * u_xlat3.x;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat20) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_8;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_10;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					float u_xlat20;
					bool u_xlatb20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat20 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 9.99999997e-07);
					        u_xlat3.x = inversesqrt(u_xlat20);
					        u_xlat5.xyz = u_xlat3.xxx * u_xlat5.xyz;
					        u_xlat20 = u_xlat20 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat20 = float(1.0) / u_xlat20;
					        u_xlat3.x = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat3.x = max(u_xlat3.x, 0.0);
					        u_xlat20 = u_xlat20 * u_xlat3.x;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat20) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_8;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_10;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					float u_xlat20;
					bool u_xlatb20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat20 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 9.99999997e-07);
					        u_xlat3.x = inversesqrt(u_xlat20);
					        u_xlat5.xyz = u_xlat3.xxx * u_xlat5.xyz;
					        u_xlat20 = u_xlat20 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat20 = float(1.0) / u_xlat20;
					        u_xlat3.x = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat3.x = max(u_xlat3.x, 0.0);
					        u_xlat20 = u_xlat20 * u_xlat3.x;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat20) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_8;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_10;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					float u_xlat20;
					bool u_xlatb20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat20 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 9.99999997e-07);
					        u_xlat3.x = inversesqrt(u_xlat20);
					        u_xlat5.xyz = u_xlat3.xxx * u_xlat5.xyz;
					        u_xlat20 = u_xlat20 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat20 = float(1.0) / u_xlat20;
					        u_xlat3.x = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat3.x = max(u_xlat3.x, 0.0);
					        u_xlat20 = u_xlat20 * u_xlat3.x;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat20) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_8;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_10;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					float u_xlat20;
					bool u_xlatb20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat20 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 9.99999997e-07);
					        u_xlat3.x = inversesqrt(u_xlat20);
					        u_xlat5.xyz = u_xlat3.xxx * u_xlat5.xyz;
					        u_xlat20 = u_xlat20 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat20 = float(1.0) / u_xlat20;
					        u_xlat3.x = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat3.x = max(u_xlat3.x, 0.0);
					        u_xlat20 = u_xlat20 * u_xlat3.x;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat20) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_8;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_10;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					float u_xlat20;
					bool u_xlatb20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat20 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 9.99999997e-07);
					        u_xlat3.x = inversesqrt(u_xlat20);
					        u_xlat5.xyz = u_xlat3.xxx * u_xlat5.xyz;
					        u_xlat20 = u_xlat20 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat20 = float(1.0) / u_xlat20;
					        u_xlat3.x = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat3.x = max(u_xlat3.x, 0.0);
					        u_xlat20 = u_xlat20 * u_xlat3.x;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat20) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_8;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_10;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					float u_xlat20;
					bool u_xlatb20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat20 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 9.99999997e-07);
					        u_xlat3.x = inversesqrt(u_xlat20);
					        u_xlat5.xyz = u_xlat3.xxx * u_xlat5.xyz;
					        u_xlat20 = u_xlat20 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat20 = float(1.0) / u_xlat20;
					        u_xlat3.x = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat3.x = max(u_xlat3.x, 0.0);
					        u_xlat20 = u_xlat20 * u_xlat3.x;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat20) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_8;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_10;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					float u_xlat20;
					bool u_xlatb20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat20 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 9.99999997e-07);
					        u_xlat3.x = inversesqrt(u_xlat20);
					        u_xlat5.xyz = u_xlat3.xxx * u_xlat5.xyz;
					        u_xlat20 = u_xlat20 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat20 = float(1.0) / u_xlat20;
					        u_xlat3.x = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat3.x = max(u_xlat3.x, 0.0);
					        u_xlat20 = u_xlat20 * u_xlat3.x;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat20) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_8;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_10;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					float u_xlat20;
					bool u_xlatb20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat20 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 9.99999997e-07);
					        u_xlat3.x = inversesqrt(u_xlat20);
					        u_xlat5.xyz = u_xlat3.xxx * u_xlat5.xyz;
					        u_xlat20 = u_xlat20 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat20 = float(1.0) / u_xlat20;
					        u_xlat3.x = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat3.x = max(u_xlat3.x, 0.0);
					        u_xlat20 = u_xlat20 * u_xlat3.x;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat20) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_8;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_10;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					float u_xlat20;
					bool u_xlatb20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat20 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 9.99999997e-07);
					        u_xlat3.x = inversesqrt(u_xlat20);
					        u_xlat5.xyz = u_xlat3.xxx * u_xlat5.xyz;
					        u_xlat20 = u_xlat20 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat20 = float(1.0) / u_xlat20;
					        u_xlat3.x = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat3.x = max(u_xlat3.x, 0.0);
					        u_xlat20 = u_xlat20 * u_xlat3.x;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat20) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_8;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_10;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					float u_xlat20;
					bool u_xlatb20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat20 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 9.99999997e-07);
					        u_xlat3.x = inversesqrt(u_xlat20);
					        u_xlat5.xyz = u_xlat3.xxx * u_xlat5.xyz;
					        u_xlat20 = u_xlat20 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat20 = float(1.0) / u_xlat20;
					        u_xlat3.x = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat3.x = max(u_xlat3.x, 0.0);
					        u_xlat20 = u_xlat20 * u_xlat3.x;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat20) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_8;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_10;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					float u_xlat20;
					bool u_xlatb20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat20 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 9.99999997e-07);
					        u_xlat3.x = inversesqrt(u_xlat20);
					        u_xlat5.xyz = u_xlat3.xxx * u_xlat5.xyz;
					        u_xlat20 = u_xlat20 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat20 = float(1.0) / u_xlat20;
					        u_xlat3.x = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat3.x = max(u_xlat3.x, 0.0);
					        u_xlat20 = u_xlat20 * u_xlat3.x;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat20) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_8;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_10;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					float u_xlat20;
					bool u_xlatb20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat20 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 9.99999997e-07);
					        u_xlat3.x = inversesqrt(u_xlat20);
					        u_xlat5.xyz = u_xlat3.xxx * u_xlat5.xyz;
					        u_xlat20 = u_xlat20 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat20 = float(1.0) / u_xlat20;
					        u_xlat3.x = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat3.x = max(u_xlat3.x, 0.0);
					        u_xlat20 = u_xlat20 * u_xlat3.x;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat20) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_8;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_10;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					float u_xlat20;
					bool u_xlatb20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat20 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 9.99999997e-07);
					        u_xlat3.x = inversesqrt(u_xlat20);
					        u_xlat5.xyz = u_xlat3.xxx * u_xlat5.xyz;
					        u_xlat20 = u_xlat20 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat20 = float(1.0) / u_xlat20;
					        u_xlat3.x = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat3.x = max(u_xlat3.x, 0.0);
					        u_xlat20 = u_xlat20 * u_xlat3.x;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat20) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_8;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_10;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					float u_xlat20;
					bool u_xlatb20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat20 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 9.99999997e-07);
					        u_xlat3.x = inversesqrt(u_xlat20);
					        u_xlat5.xyz = u_xlat3.xxx * u_xlat5.xyz;
					        u_xlat20 = u_xlat20 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat20 = float(1.0) / u_xlat20;
					        u_xlat3.x = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat3.x = max(u_xlat3.x, 0.0);
					        u_xlat20 = u_xlat20 * u_xlat3.x;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat20) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_8;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_10;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					float u_xlat20;
					bool u_xlatb20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat20 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 9.99999997e-07);
					        u_xlat3.x = inversesqrt(u_xlat20);
					        u_xlat5.xyz = u_xlat3.xxx * u_xlat5.xyz;
					        u_xlat20 = u_xlat20 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat20 = float(1.0) / u_xlat20;
					        u_xlat3.x = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat3.x = max(u_xlat3.x, 0.0);
					        u_xlat20 = u_xlat20 * u_xlat3.x;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat20) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_8;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_10;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					float u_xlat20;
					bool u_xlatb20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat20 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 9.99999997e-07);
					        u_xlat3.x = inversesqrt(u_xlat20);
					        u_xlat5.xyz = u_xlat3.xxx * u_xlat5.xyz;
					        u_xlat20 = u_xlat20 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat20 = float(1.0) / u_xlat20;
					        u_xlat3.x = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat3.x = max(u_xlat3.x, 0.0);
					        u_xlat20 = u_xlat20 * u_xlat3.x;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat20) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_8;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_10;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					float u_xlat20;
					bool u_xlatb20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat20 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 9.99999997e-07);
					        u_xlat3.x = inversesqrt(u_xlat20);
					        u_xlat5.xyz = u_xlat3.xxx * u_xlat5.xyz;
					        u_xlat20 = u_xlat20 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat20 = float(1.0) / u_xlat20;
					        u_xlat3.x = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat3.x = max(u_xlat3.x, 0.0);
					        u_xlat20 = u_xlat20 * u_xlat3.x;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat20) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_8;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_10;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					float u_xlat20;
					bool u_xlatb20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat20 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 9.99999997e-07);
					        u_xlat3.x = inversesqrt(u_xlat20);
					        u_xlat5.xyz = u_xlat3.xxx * u_xlat5.xyz;
					        u_xlat20 = u_xlat20 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat20 = float(1.0) / u_xlat20;
					        u_xlat3.x = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat3.x = max(u_xlat3.x, 0.0);
					        u_xlat20 = u_xlat20 * u_xlat3.x;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat20) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_8;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_10;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					float u_xlat20;
					bool u_xlatb20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat20 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 9.99999997e-07);
					        u_xlat3.x = inversesqrt(u_xlat20);
					        u_xlat5.xyz = u_xlat3.xxx * u_xlat5.xyz;
					        u_xlat20 = u_xlat20 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat20 = float(1.0) / u_xlat20;
					        u_xlat3.x = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat3.x = max(u_xlat3.x, 0.0);
					        u_xlat20 = u_xlat20 * u_xlat3.x;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat20) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_8;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_10;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					float u_xlat20;
					bool u_xlatb20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat20 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 9.99999997e-07);
					        u_xlat3.x = inversesqrt(u_xlat20);
					        u_xlat5.xyz = u_xlat3.xxx * u_xlat5.xyz;
					        u_xlat20 = u_xlat20 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat20 = float(1.0) / u_xlat20;
					        u_xlat3.x = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat3.x = max(u_xlat3.x, 0.0);
					        u_xlat20 = u_xlat20 * u_xlat3.x;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat20) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_8;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_10;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					float u_xlat20;
					bool u_xlatb20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat20 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 9.99999997e-07);
					        u_xlat3.x = inversesqrt(u_xlat20);
					        u_xlat5.xyz = u_xlat3.xxx * u_xlat5.xyz;
					        u_xlat20 = u_xlat20 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat20 = float(1.0) / u_xlat20;
					        u_xlat3.x = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat3.x = max(u_xlat3.x, 0.0);
					        u_xlat20 = u_xlat20 * u_xlat3.x;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat20) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_8;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_10;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					float u_xlat20;
					bool u_xlatb20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat20 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 9.99999997e-07);
					        u_xlat3.x = inversesqrt(u_xlat20);
					        u_xlat5.xyz = u_xlat3.xxx * u_xlat5.xyz;
					        u_xlat20 = u_xlat20 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat20 = float(1.0) / u_xlat20;
					        u_xlat3.x = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat3.x = max(u_xlat3.x, 0.0);
					        u_xlat20 = u_xlat20 * u_xlat3.x;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat20) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_8;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_10;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					float u_xlat20;
					bool u_xlatb20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat20 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 9.99999997e-07);
					        u_xlat3.x = inversesqrt(u_xlat20);
					        u_xlat5.xyz = u_xlat3.xxx * u_xlat5.xyz;
					        u_xlat20 = u_xlat20 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat20 = float(1.0) / u_xlat20;
					        u_xlat3.x = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat3.x = max(u_xlat3.x, 0.0);
					        u_xlat20 = u_xlat20 * u_xlat3.x;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat20) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_8;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_10;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					float u_xlat20;
					bool u_xlatb20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat20 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 9.99999997e-07);
					        u_xlat3.x = inversesqrt(u_xlat20);
					        u_xlat5.xyz = u_xlat3.xxx * u_xlat5.xyz;
					        u_xlat20 = u_xlat20 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat20 = float(1.0) / u_xlat20;
					        u_xlat3.x = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat3.x = max(u_xlat3.x, 0.0);
					        u_xlat20 = u_xlat20 * u_xlat3.x;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat20) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_8;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_10;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					float u_xlat20;
					bool u_xlatb20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat20 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 9.99999997e-07);
					        u_xlat3.x = inversesqrt(u_xlat20);
					        u_xlat5.xyz = u_xlat3.xxx * u_xlat5.xyz;
					        u_xlat20 = u_xlat20 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat20 = float(1.0) / u_xlat20;
					        u_xlat3.x = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat3.x = max(u_xlat3.x, 0.0);
					        u_xlat20 = u_xlat20 * u_xlat3.x;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat20) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_8;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_10;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					float u_xlat20;
					bool u_xlatb20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat20 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 9.99999997e-07);
					        u_xlat3.x = inversesqrt(u_xlat20);
					        u_xlat5.xyz = u_xlat3.xxx * u_xlat5.xyz;
					        u_xlat20 = u_xlat20 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat20 = float(1.0) / u_xlat20;
					        u_xlat3.x = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat3.x = max(u_xlat3.x, 0.0);
					        u_xlat20 = u_xlat20 * u_xlat3.x;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat20) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_8;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_10;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					float u_xlat20;
					bool u_xlatb20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat20 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 9.99999997e-07);
					        u_xlat3.x = inversesqrt(u_xlat20);
					        u_xlat5.xyz = u_xlat3.xxx * u_xlat5.xyz;
					        u_xlat20 = u_xlat20 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat20 = float(1.0) / u_xlat20;
					        u_xlat3.x = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat3.x = max(u_xlat3.x, 0.0);
					        u_xlat20 = u_xlat20 * u_xlat3.x;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat20) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_8;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_10;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					float u_xlat20;
					bool u_xlatb20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat20 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 9.99999997e-07);
					        u_xlat3.x = inversesqrt(u_xlat20);
					        u_xlat5.xyz = u_xlat3.xxx * u_xlat5.xyz;
					        u_xlat20 = u_xlat20 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat20 = float(1.0) / u_xlat20;
					        u_xlat3.x = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat3.x = max(u_xlat3.x, 0.0);
					        u_xlat20 = u_xlat20 * u_xlat3.x;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat20) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_8;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_10;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					float u_xlat20;
					bool u_xlatb20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat20 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 9.99999997e-07);
					        u_xlat3.x = inversesqrt(u_xlat20);
					        u_xlat5.xyz = u_xlat3.xxx * u_xlat5.xyz;
					        u_xlat20 = u_xlat20 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat20 = float(1.0) / u_xlat20;
					        u_xlat3.x = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat3.x = max(u_xlat3.x, 0.0);
					        u_xlat20 = u_xlat20 * u_xlat3.x;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat20) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_8;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_10;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					float u_xlat20;
					bool u_xlatb20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat20 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 9.99999997e-07);
					        u_xlat3.x = inversesqrt(u_xlat20);
					        u_xlat5.xyz = u_xlat3.xxx * u_xlat5.xyz;
					        u_xlat20 = u_xlat20 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat20 = float(1.0) / u_xlat20;
					        u_xlat3.x = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat3.x = max(u_xlat3.x, 0.0);
					        u_xlat20 = u_xlat20 * u_xlat3.x;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat20) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_8;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_10;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					float u_xlat20;
					bool u_xlatb20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat20 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 9.99999997e-07);
					        u_xlat3.x = inversesqrt(u_xlat20);
					        u_xlat5.xyz = u_xlat3.xxx * u_xlat5.xyz;
					        u_xlat20 = u_xlat20 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat20 = float(1.0) / u_xlat20;
					        u_xlat3.x = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat3.x = max(u_xlat3.x, 0.0);
					        u_xlat20 = u_xlat20 * u_xlat3.x;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat20) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_8;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_10;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					float u_xlat20;
					bool u_xlatb20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat20 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 9.99999997e-07);
					        u_xlat3.x = inversesqrt(u_xlat20);
					        u_xlat5.xyz = u_xlat3.xxx * u_xlat5.xyz;
					        u_xlat20 = u_xlat20 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat20 = float(1.0) / u_xlat20;
					        u_xlat3.x = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat3.x = max(u_xlat3.x, 0.0);
					        u_xlat20 = u_xlat20 * u_xlat3.x;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat20) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_8;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_10;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					float u_xlat20;
					bool u_xlatb20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat20 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 9.99999997e-07);
					        u_xlat3.x = inversesqrt(u_xlat20);
					        u_xlat5.xyz = u_xlat3.xxx * u_xlat5.xyz;
					        u_xlat20 = u_xlat20 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat20 = float(1.0) / u_xlat20;
					        u_xlat3.x = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat3.x = max(u_xlat3.x, 0.0);
					        u_xlat20 = u_xlat20 * u_xlat3.x;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat20) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_8;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_10;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					float u_xlat20;
					bool u_xlatb20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat20 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 9.99999997e-07);
					        u_xlat3.x = inversesqrt(u_xlat20);
					        u_xlat5.xyz = u_xlat3.xxx * u_xlat5.xyz;
					        u_xlat20 = u_xlat20 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat20 = float(1.0) / u_xlat20;
					        u_xlat3.x = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat3.x = max(u_xlat3.x, 0.0);
					        u_xlat20 = u_xlat20 * u_xlat3.x;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat20) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_8;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_10;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					float u_xlat20;
					bool u_xlatb20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat20 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 9.99999997e-07);
					        u_xlat3.x = inversesqrt(u_xlat20);
					        u_xlat5.xyz = u_xlat3.xxx * u_xlat5.xyz;
					        u_xlat20 = u_xlat20 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat20 = float(1.0) / u_xlat20;
					        u_xlat3.x = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat3.x = max(u_xlat3.x, 0.0);
					        u_xlat20 = u_xlat20 * u_xlat3.x;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat20) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_8;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_10;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					float u_xlat20;
					bool u_xlatb20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat20 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 9.99999997e-07);
					        u_xlat3.x = inversesqrt(u_xlat20);
					        u_xlat5.xyz = u_xlat3.xxx * u_xlat5.xyz;
					        u_xlat20 = u_xlat20 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat20 = float(1.0) / u_xlat20;
					        u_xlat3.x = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat3.x = max(u_xlat3.x, 0.0);
					        u_xlat20 = u_xlat20 * u_xlat3.x;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat20) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_8;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_10;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					float u_xlat20;
					bool u_xlatb20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat20 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 9.99999997e-07);
					        u_xlat3.x = inversesqrt(u_xlat20);
					        u_xlat5.xyz = u_xlat3.xxx * u_xlat5.xyz;
					        u_xlat20 = u_xlat20 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat20 = float(1.0) / u_xlat20;
					        u_xlat3.x = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat3.x = max(u_xlat3.x, 0.0);
					        u_xlat20 = u_xlat20 * u_xlat3.x;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat20) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_8;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_10;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					float u_xlat20;
					bool u_xlatb20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat20 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 9.99999997e-07);
					        u_xlat3.x = inversesqrt(u_xlat20);
					        u_xlat5.xyz = u_xlat3.xxx * u_xlat5.xyz;
					        u_xlat20 = u_xlat20 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat20 = float(1.0) / u_xlat20;
					        u_xlat3.x = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat3.x = max(u_xlat3.x, 0.0);
					        u_xlat20 = u_xlat20 * u_xlat3.x;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat20) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_8;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_10;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					float u_xlat20;
					bool u_xlatb20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat20 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 9.99999997e-07);
					        u_xlat3.x = inversesqrt(u_xlat20);
					        u_xlat5.xyz = u_xlat3.xxx * u_xlat5.xyz;
					        u_xlat20 = u_xlat20 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat20 = float(1.0) / u_xlat20;
					        u_xlat3.x = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat3.x = max(u_xlat3.x, 0.0);
					        u_xlat20 = u_xlat20 * u_xlat3.x;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat20) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_8;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_10;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					float u_xlat20;
					bool u_xlatb20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat20 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 9.99999997e-07);
					        u_xlat3.x = inversesqrt(u_xlat20);
					        u_xlat5.xyz = u_xlat3.xxx * u_xlat5.xyz;
					        u_xlat20 = u_xlat20 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat20 = float(1.0) / u_xlat20;
					        u_xlat3.x = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat3.x = max(u_xlat3.x, 0.0);
					        u_xlat20 = u_xlat20 * u_xlat3.x;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat20) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_8;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_10;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					float u_xlat20;
					bool u_xlatb20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat20 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 9.99999997e-07);
					        u_xlat3.x = inversesqrt(u_xlat20);
					        u_xlat5.xyz = u_xlat3.xxx * u_xlat5.xyz;
					        u_xlat20 = u_xlat20 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat20 = float(1.0) / u_xlat20;
					        u_xlat3.x = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat3.x = max(u_xlat3.x, 0.0);
					        u_xlat20 = u_xlat20 * u_xlat3.x;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat20) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_8;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_10;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					float u_xlat20;
					bool u_xlatb20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat20 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 9.99999997e-07);
					        u_xlat3.x = inversesqrt(u_xlat20);
					        u_xlat5.xyz = u_xlat3.xxx * u_xlat5.xyz;
					        u_xlat20 = u_xlat20 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat20 = float(1.0) / u_xlat20;
					        u_xlat3.x = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat3.x = max(u_xlat3.x, 0.0);
					        u_xlat20 = u_xlat20 * u_xlat3.x;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat20) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_8;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_10;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					float u_xlat20;
					bool u_xlatb20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat20 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 9.99999997e-07);
					        u_xlat3.x = inversesqrt(u_xlat20);
					        u_xlat5.xyz = u_xlat3.xxx * u_xlat5.xyz;
					        u_xlat20 = u_xlat20 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat20 = float(1.0) / u_xlat20;
					        u_xlat3.x = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat3.x = max(u_xlat3.x, 0.0);
					        u_xlat20 = u_xlat20 * u_xlat3.x;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat20) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_8;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_10;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					float u_xlat20;
					bool u_xlatb20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat20 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 9.99999997e-07);
					        u_xlat3.x = inversesqrt(u_xlat20);
					        u_xlat5.xyz = u_xlat3.xxx * u_xlat5.xyz;
					        u_xlat20 = u_xlat20 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat20 = float(1.0) / u_xlat20;
					        u_xlat3.x = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat3.x = max(u_xlat3.x, 0.0);
					        u_xlat20 = u_xlat20 * u_xlat3.x;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat20) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_8;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_10;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					float u_xlat20;
					bool u_xlatb20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat20 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 9.99999997e-07);
					        u_xlat3.x = inversesqrt(u_xlat20);
					        u_xlat5.xyz = u_xlat3.xxx * u_xlat5.xyz;
					        u_xlat20 = u_xlat20 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat20 = float(1.0) / u_xlat20;
					        u_xlat3.x = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat3.x = max(u_xlat3.x, 0.0);
					        u_xlat20 = u_xlat20 * u_xlat3.x;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat20) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_8;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_10;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					float u_xlat20;
					bool u_xlatb20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat20 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 9.99999997e-07);
					        u_xlat3.x = inversesqrt(u_xlat20);
					        u_xlat5.xyz = u_xlat3.xxx * u_xlat5.xyz;
					        u_xlat20 = u_xlat20 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat20 = float(1.0) / u_xlat20;
					        u_xlat3.x = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat3.x = max(u_xlat3.x, 0.0);
					        u_xlat20 = u_xlat20 * u_xlat3.x;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat20) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_8;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_10;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					float u_xlat20;
					bool u_xlatb20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat20 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 9.99999997e-07);
					        u_xlat3.x = inversesqrt(u_xlat20);
					        u_xlat5.xyz = u_xlat3.xxx * u_xlat5.xyz;
					        u_xlat20 = u_xlat20 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat20 = float(1.0) / u_xlat20;
					        u_xlat3.x = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat3.x = max(u_xlat3.x, 0.0);
					        u_xlat20 = u_xlat20 * u_xlat3.x;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat20) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_8;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_10;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					float u_xlat20;
					bool u_xlatb20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat20 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 9.99999997e-07);
					        u_xlat3.x = inversesqrt(u_xlat20);
					        u_xlat5.xyz = u_xlat3.xxx * u_xlat5.xyz;
					        u_xlat20 = u_xlat20 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat20 = float(1.0) / u_xlat20;
					        u_xlat3.x = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat3.x = max(u_xlat3.x, 0.0);
					        u_xlat20 = u_xlat20 * u_xlat3.x;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat20) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_8;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_10;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					float u_xlat20;
					bool u_xlatb20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat20 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 9.99999997e-07);
					        u_xlat3.x = inversesqrt(u_xlat20);
					        u_xlat5.xyz = u_xlat3.xxx * u_xlat5.xyz;
					        u_xlat20 = u_xlat20 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat20 = float(1.0) / u_xlat20;
					        u_xlat3.x = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat3.x = max(u_xlat3.x, 0.0);
					        u_xlat20 = u_xlat20 * u_xlat3.x;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat20) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_8;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_10;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					float u_xlat20;
					bool u_xlatb20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat20 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 9.99999997e-07);
					        u_xlat3.x = inversesqrt(u_xlat20);
					        u_xlat5.xyz = u_xlat3.xxx * u_xlat5.xyz;
					        u_xlat20 = u_xlat20 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat20 = float(1.0) / u_xlat20;
					        u_xlat3.x = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat3.x = max(u_xlat3.x, 0.0);
					        u_xlat20 = u_xlat20 * u_xlat3.x;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat20) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_8;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_10;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					float u_xlat20;
					bool u_xlatb20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat20 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 9.99999997e-07);
					        u_xlat3.x = inversesqrt(u_xlat20);
					        u_xlat5.xyz = u_xlat3.xxx * u_xlat5.xyz;
					        u_xlat20 = u_xlat20 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat20 = float(1.0) / u_xlat20;
					        u_xlat3.x = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat3.x = max(u_xlat3.x, 0.0);
					        u_xlat20 = u_xlat20 * u_xlat3.x;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat20) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_8;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_10;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					float u_xlat20;
					bool u_xlatb20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat20 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 9.99999997e-07);
					        u_xlat3.x = inversesqrt(u_xlat20);
					        u_xlat5.xyz = u_xlat3.xxx * u_xlat5.xyz;
					        u_xlat20 = u_xlat20 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat20 = float(1.0) / u_xlat20;
					        u_xlat3.x = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat3.x = max(u_xlat3.x, 0.0);
					        u_xlat20 = u_xlat20 * u_xlat3.x;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat20) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_8;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_10;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					float u_xlat20;
					bool u_xlatb20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat20 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 9.99999997e-07);
					        u_xlat3.x = inversesqrt(u_xlat20);
					        u_xlat5.xyz = u_xlat3.xxx * u_xlat5.xyz;
					        u_xlat20 = u_xlat20 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat20 = float(1.0) / u_xlat20;
					        u_xlat3.x = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat3.x = max(u_xlat3.x, 0.0);
					        u_xlat20 = u_xlat20 * u_xlat3.x;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat20) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_8;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_10;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					float u_xlat20;
					bool u_xlatb20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat20 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 9.99999997e-07);
					        u_xlat3.x = inversesqrt(u_xlat20);
					        u_xlat5.xyz = u_xlat3.xxx * u_xlat5.xyz;
					        u_xlat20 = u_xlat20 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat20 = float(1.0) / u_xlat20;
					        u_xlat3.x = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat3.x = max(u_xlat3.x, 0.0);
					        u_xlat20 = u_xlat20 * u_xlat3.x;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat20) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_8;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_10;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					float u_xlat20;
					bool u_xlatb20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat20 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 9.99999997e-07);
					        u_xlat3.x = inversesqrt(u_xlat20);
					        u_xlat5.xyz = u_xlat3.xxx * u_xlat5.xyz;
					        u_xlat20 = u_xlat20 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat20 = float(1.0) / u_xlat20;
					        u_xlat3.x = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat3.x = max(u_xlat3.x, 0.0);
					        u_xlat20 = u_xlat20 * u_xlat3.x;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat20) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_8;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_10;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					float u_xlat20;
					bool u_xlatb20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat20 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 9.99999997e-07);
					        u_xlat3.x = inversesqrt(u_xlat20);
					        u_xlat5.xyz = u_xlat3.xxx * u_xlat5.xyz;
					        u_xlat20 = u_xlat20 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat20 = float(1.0) / u_xlat20;
					        u_xlat3.x = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat3.x = max(u_xlat3.x, 0.0);
					        u_xlat20 = u_xlat20 * u_xlat3.x;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat20) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_8;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_10;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					float u_xlat20;
					bool u_xlatb20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat20 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 9.99999997e-07);
					        u_xlat3.x = inversesqrt(u_xlat20);
					        u_xlat5.xyz = u_xlat3.xxx * u_xlat5.xyz;
					        u_xlat20 = u_xlat20 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat20 = float(1.0) / u_xlat20;
					        u_xlat3.x = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat3.x = max(u_xlat3.x, 0.0);
					        u_xlat20 = u_xlat20 * u_xlat3.x;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat20) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_8;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_10;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					float u_xlat20;
					bool u_xlatb20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat20 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 9.99999997e-07);
					        u_xlat3.x = inversesqrt(u_xlat20);
					        u_xlat5.xyz = u_xlat3.xxx * u_xlat5.xyz;
					        u_xlat20 = u_xlat20 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat20 = float(1.0) / u_xlat20;
					        u_xlat3.x = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat3.x = max(u_xlat3.x, 0.0);
					        u_xlat20 = u_xlat20 * u_xlat3.x;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat20) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_8;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_10;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					float u_xlat20;
					bool u_xlatb20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat20 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 9.99999997e-07);
					        u_xlat3.x = inversesqrt(u_xlat20);
					        u_xlat5.xyz = u_xlat3.xxx * u_xlat5.xyz;
					        u_xlat20 = u_xlat20 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat20 = float(1.0) / u_xlat20;
					        u_xlat3.x = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat3.x = max(u_xlat3.x, 0.0);
					        u_xlat20 = u_xlat20 * u_xlat3.x;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat20) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_8;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_10;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					float u_xlat20;
					bool u_xlatb20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat20 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 9.99999997e-07);
					        u_xlat3.x = inversesqrt(u_xlat20);
					        u_xlat5.xyz = u_xlat3.xxx * u_xlat5.xyz;
					        u_xlat20 = u_xlat20 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat20 = float(1.0) / u_xlat20;
					        u_xlat3.x = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat3.x = max(u_xlat3.x, 0.0);
					        u_xlat20 = u_xlat20 * u_xlat3.x;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat20) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_8;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_10;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					float u_xlat20;
					bool u_xlatb20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat20 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 9.99999997e-07);
					        u_xlat3.x = inversesqrt(u_xlat20);
					        u_xlat5.xyz = u_xlat3.xxx * u_xlat5.xyz;
					        u_xlat20 = u_xlat20 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat20 = float(1.0) / u_xlat20;
					        u_xlat3.x = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat3.x = max(u_xlat3.x, 0.0);
					        u_xlat20 = u_xlat20 * u_xlat3.x;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat20) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_8;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_10;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					float u_xlat20;
					bool u_xlatb20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat20 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 9.99999997e-07);
					        u_xlat3.x = inversesqrt(u_xlat20);
					        u_xlat5.xyz = u_xlat3.xxx * u_xlat5.xyz;
					        u_xlat20 = u_xlat20 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat20 = float(1.0) / u_xlat20;
					        u_xlat3.x = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat3.x = max(u_xlat3.x, 0.0);
					        u_xlat20 = u_xlat20 * u_xlat3.x;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat20) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_8;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_10;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					float u_xlat20;
					bool u_xlatb20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat20 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 9.99999997e-07);
					        u_xlat3.x = inversesqrt(u_xlat20);
					        u_xlat5.xyz = u_xlat3.xxx * u_xlat5.xyz;
					        u_xlat20 = u_xlat20 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat20 = float(1.0) / u_xlat20;
					        u_xlat3.x = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat3.x = max(u_xlat3.x, 0.0);
					        u_xlat20 = u_xlat20 * u_xlat3.x;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat20) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_8;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_10;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					float u_xlat20;
					bool u_xlatb20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat20 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 9.99999997e-07);
					        u_xlat3.x = inversesqrt(u_xlat20);
					        u_xlat5.xyz = u_xlat3.xxx * u_xlat5.xyz;
					        u_xlat20 = u_xlat20 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat20 = float(1.0) / u_xlat20;
					        u_xlat3.x = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat3.x = max(u_xlat3.x, 0.0);
					        u_xlat20 = u_xlat20 * u_xlat3.x;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat20) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_8;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_10;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					float u_xlat20;
					bool u_xlatb20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat20 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 9.99999997e-07);
					        u_xlat3.x = inversesqrt(u_xlat20);
					        u_xlat5.xyz = u_xlat3.xxx * u_xlat5.xyz;
					        u_xlat20 = u_xlat20 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat20 = float(1.0) / u_xlat20;
					        u_xlat3.x = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat3.x = max(u_xlat3.x, 0.0);
					        u_xlat20 = u_xlat20 * u_xlat3.x;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat20) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_8;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_10;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					float u_xlat20;
					bool u_xlatb20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat20 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 9.99999997e-07);
					        u_xlat3.x = inversesqrt(u_xlat20);
					        u_xlat5.xyz = u_xlat3.xxx * u_xlat5.xyz;
					        u_xlat20 = u_xlat20 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat20 = float(1.0) / u_xlat20;
					        u_xlat3.x = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat3.x = max(u_xlat3.x, 0.0);
					        u_xlat20 = u_xlat20 * u_xlat3.x;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat20) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_8;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_10;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					float u_xlat20;
					bool u_xlatb20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat20 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 9.99999997e-07);
					        u_xlat3.x = inversesqrt(u_xlat20);
					        u_xlat5.xyz = u_xlat3.xxx * u_xlat5.xyz;
					        u_xlat20 = u_xlat20 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat20 = float(1.0) / u_xlat20;
					        u_xlat3.x = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat3.x = max(u_xlat3.x, 0.0);
					        u_xlat20 = u_xlat20 * u_xlat3.x;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat20) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_8;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_10;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					float u_xlat20;
					bool u_xlatb20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat20 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 9.99999997e-07);
					        u_xlat3.x = inversesqrt(u_xlat20);
					        u_xlat5.xyz = u_xlat3.xxx * u_xlat5.xyz;
					        u_xlat20 = u_xlat20 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat20 = float(1.0) / u_xlat20;
					        u_xlat3.x = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat3.x = max(u_xlat3.x, 0.0);
					        u_xlat20 = u_xlat20 * u_xlat3.x;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat20) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_8;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_10;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					float u_xlat20;
					bool u_xlatb20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat20 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 9.99999997e-07);
					        u_xlat3.x = inversesqrt(u_xlat20);
					        u_xlat5.xyz = u_xlat3.xxx * u_xlat5.xyz;
					        u_xlat20 = u_xlat20 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat20 = float(1.0) / u_xlat20;
					        u_xlat3.x = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat3.x = max(u_xlat3.x, 0.0);
					        u_xlat20 = u_xlat20 * u_xlat3.x;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat20) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_8;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_10;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					float u_xlat20;
					bool u_xlatb20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat20 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 9.99999997e-07);
					        u_xlat3.x = inversesqrt(u_xlat20);
					        u_xlat5.xyz = u_xlat3.xxx * u_xlat5.xyz;
					        u_xlat20 = u_xlat20 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat20 = float(1.0) / u_xlat20;
					        u_xlat3.x = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat3.x = max(u_xlat3.x, 0.0);
					        u_xlat20 = u_xlat20 * u_xlat3.x;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat20) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_8;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_10;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					float u_xlat20;
					bool u_xlatb20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat20 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 9.99999997e-07);
					        u_xlat3.x = inversesqrt(u_xlat20);
					        u_xlat5.xyz = u_xlat3.xxx * u_xlat5.xyz;
					        u_xlat20 = u_xlat20 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat20 = float(1.0) / u_xlat20;
					        u_xlat3.x = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat3.x = max(u_xlat3.x, 0.0);
					        u_xlat20 = u_xlat20 * u_xlat3.x;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat20) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_8;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_10;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					float u_xlat20;
					bool u_xlatb20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat20 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 9.99999997e-07);
					        u_xlat3.x = inversesqrt(u_xlat20);
					        u_xlat5.xyz = u_xlat3.xxx * u_xlat5.xyz;
					        u_xlat20 = u_xlat20 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat20 = float(1.0) / u_xlat20;
					        u_xlat3.x = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat3.x = max(u_xlat3.x, 0.0);
					        u_xlat20 = u_xlat20 * u_xlat3.x;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat20) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_8;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_10;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					float u_xlat20;
					bool u_xlatb20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat20 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 9.99999997e-07);
					        u_xlat3.x = inversesqrt(u_xlat20);
					        u_xlat5.xyz = u_xlat3.xxx * u_xlat5.xyz;
					        u_xlat20 = u_xlat20 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat20 = float(1.0) / u_xlat20;
					        u_xlat3.x = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat3.x = max(u_xlat3.x, 0.0);
					        u_xlat20 = u_xlat20 * u_xlat3.x;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat20) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_8;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_10;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					float u_xlat20;
					bool u_xlatb20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat20 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 9.99999997e-07);
					        u_xlat3.x = inversesqrt(u_xlat20);
					        u_xlat5.xyz = u_xlat3.xxx * u_xlat5.xyz;
					        u_xlat20 = u_xlat20 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat20 = float(1.0) / u_xlat20;
					        u_xlat3.x = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat3.x = max(u_xlat3.x, 0.0);
					        u_xlat20 = u_xlat20 * u_xlat3.x;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat20) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_8;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_10;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					float u_xlat20;
					bool u_xlatb20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat20 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 9.99999997e-07);
					        u_xlat3.x = inversesqrt(u_xlat20);
					        u_xlat5.xyz = u_xlat3.xxx * u_xlat5.xyz;
					        u_xlat20 = u_xlat20 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat20 = float(1.0) / u_xlat20;
					        u_xlat3.x = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat3.x = max(u_xlat3.x, 0.0);
					        u_xlat20 = u_xlat20 * u_xlat3.x;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat20) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_8;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_10;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					float u_xlat20;
					bool u_xlatb20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat20 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 9.99999997e-07);
					        u_xlat3.x = inversesqrt(u_xlat20);
					        u_xlat5.xyz = u_xlat3.xxx * u_xlat5.xyz;
					        u_xlat20 = u_xlat20 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat20 = float(1.0) / u_xlat20;
					        u_xlat3.x = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat3.x = max(u_xlat3.x, 0.0);
					        u_xlat20 = u_xlat20 * u_xlat3.x;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat20) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_8;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_10;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					float u_xlat20;
					bool u_xlatb20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat20 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 9.99999997e-07);
					        u_xlat3.x = inversesqrt(u_xlat20);
					        u_xlat5.xyz = u_xlat3.xxx * u_xlat5.xyz;
					        u_xlat20 = u_xlat20 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat20 = float(1.0) / u_xlat20;
					        u_xlat3.x = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat3.x = max(u_xlat3.x, 0.0);
					        u_xlat20 = u_xlat20 * u_xlat3.x;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat20) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_8;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_10;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					float u_xlat20;
					bool u_xlatb20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat20 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 9.99999997e-07);
					        u_xlat3.x = inversesqrt(u_xlat20);
					        u_xlat5.xyz = u_xlat3.xxx * u_xlat5.xyz;
					        u_xlat20 = u_xlat20 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat20 = float(1.0) / u_xlat20;
					        u_xlat3.x = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat3.x = max(u_xlat3.x, 0.0);
					        u_xlat20 = u_xlat20 * u_xlat3.x;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat20) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_8;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_10;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					float u_xlat20;
					bool u_xlatb20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat20 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 9.99999997e-07);
					        u_xlat3.x = inversesqrt(u_xlat20);
					        u_xlat5.xyz = u_xlat3.xxx * u_xlat5.xyz;
					        u_xlat20 = u_xlat20 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat20 = float(1.0) / u_xlat20;
					        u_xlat3.x = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat3.x = max(u_xlat3.x, 0.0);
					        u_xlat20 = u_xlat20 * u_xlat3.x;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat20) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_8;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_10;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					float u_xlat20;
					bool u_xlatb20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat20 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 9.99999997e-07);
					        u_xlat3.x = inversesqrt(u_xlat20);
					        u_xlat5.xyz = u_xlat3.xxx * u_xlat5.xyz;
					        u_xlat20 = u_xlat20 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat20 = float(1.0) / u_xlat20;
					        u_xlat3.x = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat3.x = max(u_xlat3.x, 0.0);
					        u_xlat20 = u_xlat20 * u_xlat3.x;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat20) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_8;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_10;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					float u_xlat20;
					bool u_xlatb20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat20 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 9.99999997e-07);
					        u_xlat3.x = inversesqrt(u_xlat20);
					        u_xlat5.xyz = u_xlat3.xxx * u_xlat5.xyz;
					        u_xlat20 = u_xlat20 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat20 = float(1.0) / u_xlat20;
					        u_xlat3.x = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat3.x = max(u_xlat3.x, 0.0);
					        u_xlat20 = u_xlat20 * u_xlat3.x;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat20) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_8;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_10;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					float u_xlat20;
					bool u_xlatb20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat20 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 9.99999997e-07);
					        u_xlat3.x = inversesqrt(u_xlat20);
					        u_xlat5.xyz = u_xlat3.xxx * u_xlat5.xyz;
					        u_xlat20 = u_xlat20 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat20 = float(1.0) / u_xlat20;
					        u_xlat3.x = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat3.x = max(u_xlat3.x, 0.0);
					        u_xlat20 = u_xlat20 * u_xlat3.x;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat20) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_8;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_10;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					float u_xlat20;
					bool u_xlatb20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat20 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 9.99999997e-07);
					        u_xlat3.x = inversesqrt(u_xlat20);
					        u_xlat5.xyz = u_xlat3.xxx * u_xlat5.xyz;
					        u_xlat20 = u_xlat20 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat20 = float(1.0) / u_xlat20;
					        u_xlat3.x = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat3.x = max(u_xlat3.x, 0.0);
					        u_xlat20 = u_xlat20 * u_xlat3.x;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat20) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_8;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_10;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					float u_xlat20;
					bool u_xlatb20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat20 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 9.99999997e-07);
					        u_xlat3.x = inversesqrt(u_xlat20);
					        u_xlat5.xyz = u_xlat3.xxx * u_xlat5.xyz;
					        u_xlat20 = u_xlat20 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat20 = float(1.0) / u_xlat20;
					        u_xlat3.x = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat3.x = max(u_xlat3.x, 0.0);
					        u_xlat20 = u_xlat20 * u_xlat3.x;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat20) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_8;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_10;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					float u_xlat20;
					bool u_xlatb20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat20 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 9.99999997e-07);
					        u_xlat3.x = inversesqrt(u_xlat20);
					        u_xlat5.xyz = u_xlat3.xxx * u_xlat5.xyz;
					        u_xlat20 = u_xlat20 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat20 = float(1.0) / u_xlat20;
					        u_xlat3.x = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat3.x = max(u_xlat3.x, 0.0);
					        u_xlat20 = u_xlat20 * u_xlat3.x;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat20) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_8;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_10;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					float u_xlat20;
					bool u_xlatb20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat20 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 9.99999997e-07);
					        u_xlat3.x = inversesqrt(u_xlat20);
					        u_xlat5.xyz = u_xlat3.xxx * u_xlat5.xyz;
					        u_xlat20 = u_xlat20 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat20 = float(1.0) / u_xlat20;
					        u_xlat3.x = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat3.x = max(u_xlat3.x, 0.0);
					        u_xlat20 = u_xlat20 * u_xlat3.x;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat20) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_8;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_10;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					float u_xlat20;
					bool u_xlatb20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat20 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 9.99999997e-07);
					        u_xlat3.x = inversesqrt(u_xlat20);
					        u_xlat5.xyz = u_xlat3.xxx * u_xlat5.xyz;
					        u_xlat20 = u_xlat20 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat20 = float(1.0) / u_xlat20;
					        u_xlat3.x = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat3.x = max(u_xlat3.x, 0.0);
					        u_xlat20 = u_xlat20 * u_xlat3.x;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat20) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_8;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_10;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					float u_xlat20;
					bool u_xlatb20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat20 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 9.99999997e-07);
					        u_xlat3.x = inversesqrt(u_xlat20);
					        u_xlat5.xyz = u_xlat3.xxx * u_xlat5.xyz;
					        u_xlat20 = u_xlat20 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat20 = float(1.0) / u_xlat20;
					        u_xlat3.x = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat3.x = max(u_xlat3.x, 0.0);
					        u_xlat20 = u_xlat20 * u_xlat3.x;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat20) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_8;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_10;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					float u_xlat20;
					bool u_xlatb20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat20 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 9.99999997e-07);
					        u_xlat3.x = inversesqrt(u_xlat20);
					        u_xlat5.xyz = u_xlat3.xxx * u_xlat5.xyz;
					        u_xlat20 = u_xlat20 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat20 = float(1.0) / u_xlat20;
					        u_xlat3.x = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat3.x = max(u_xlat3.x, 0.0);
					        u_xlat20 = u_xlat20 * u_xlat3.x;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat20) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_8;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_10;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					float u_xlat20;
					bool u_xlatb20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat20 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 9.99999997e-07);
					        u_xlat3.x = inversesqrt(u_xlat20);
					        u_xlat5.xyz = u_xlat3.xxx * u_xlat5.xyz;
					        u_xlat20 = u_xlat20 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat20 = float(1.0) / u_xlat20;
					        u_xlat3.x = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat3.x = max(u_xlat3.x, 0.0);
					        u_xlat20 = u_xlat20 * u_xlat3.x;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat20) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_8;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_10;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					float u_xlat20;
					bool u_xlatb20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat20 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 9.99999997e-07);
					        u_xlat3.x = inversesqrt(u_xlat20);
					        u_xlat5.xyz = u_xlat3.xxx * u_xlat5.xyz;
					        u_xlat20 = u_xlat20 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat20 = float(1.0) / u_xlat20;
					        u_xlat3.x = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat3.x = max(u_xlat3.x, 0.0);
					        u_xlat20 = u_xlat20 * u_xlat3.x;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat20) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_8;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_10;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					float u_xlat20;
					bool u_xlatb20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat20 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 9.99999997e-07);
					        u_xlat3.x = inversesqrt(u_xlat20);
					        u_xlat5.xyz = u_xlat3.xxx * u_xlat5.xyz;
					        u_xlat20 = u_xlat20 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat20 = float(1.0) / u_xlat20;
					        u_xlat3.x = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat3.x = max(u_xlat3.x, 0.0);
					        u_xlat20 = u_xlat20 * u_xlat3.x;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat20) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_8;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_10;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					float u_xlat20;
					bool u_xlatb20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat20 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 9.99999997e-07);
					        u_xlat3.x = inversesqrt(u_xlat20);
					        u_xlat5.xyz = u_xlat3.xxx * u_xlat5.xyz;
					        u_xlat20 = u_xlat20 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat20 = float(1.0) / u_xlat20;
					        u_xlat3.x = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat3.x = max(u_xlat3.x, 0.0);
					        u_xlat20 = u_xlat20 * u_xlat3.x;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat20) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_8;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_10;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					float u_xlat20;
					bool u_xlatb20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat20 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 9.99999997e-07);
					        u_xlat3.x = inversesqrt(u_xlat20);
					        u_xlat5.xyz = u_xlat3.xxx * u_xlat5.xyz;
					        u_xlat20 = u_xlat20 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat20 = float(1.0) / u_xlat20;
					        u_xlat3.x = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat3.x = max(u_xlat3.x, 0.0);
					        u_xlat20 = u_xlat20 * u_xlat3.x;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat20) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_8;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_10;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					float u_xlat20;
					bool u_xlatb20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat20 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 9.99999997e-07);
					        u_xlat3.x = inversesqrt(u_xlat20);
					        u_xlat5.xyz = u_xlat3.xxx * u_xlat5.xyz;
					        u_xlat20 = u_xlat20 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat20 = float(1.0) / u_xlat20;
					        u_xlat3.x = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat3.x = max(u_xlat3.x, 0.0);
					        u_xlat20 = u_xlat20 * u_xlat3.x;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat20) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_8;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_10;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					float u_xlat20;
					bool u_xlatb20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat20 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 9.99999997e-07);
					        u_xlat3.x = inversesqrt(u_xlat20);
					        u_xlat5.xyz = u_xlat3.xxx * u_xlat5.xyz;
					        u_xlat20 = u_xlat20 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat20 = float(1.0) / u_xlat20;
					        u_xlat3.x = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat3.x = max(u_xlat3.x, 0.0);
					        u_xlat20 = u_xlat20 * u_xlat3.x;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat20) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_8;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_10;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					float u_xlat20;
					bool u_xlatb20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat20 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 9.99999997e-07);
					        u_xlat3.x = inversesqrt(u_xlat20);
					        u_xlat5.xyz = u_xlat3.xxx * u_xlat5.xyz;
					        u_xlat20 = u_xlat20 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat20 = float(1.0) / u_xlat20;
					        u_xlat3.x = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat3.x = max(u_xlat3.x, 0.0);
					        u_xlat20 = u_xlat20 * u_xlat3.x;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat20) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_8;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_10;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					float u_xlat20;
					bool u_xlatb20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat20 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 9.99999997e-07);
					        u_xlat3.x = inversesqrt(u_xlat20);
					        u_xlat5.xyz = u_xlat3.xxx * u_xlat5.xyz;
					        u_xlat20 = u_xlat20 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat20 = float(1.0) / u_xlat20;
					        u_xlat3.x = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat3.x = max(u_xlat3.x, 0.0);
					        u_xlat20 = u_xlat20 * u_xlat3.x;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat20) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_8;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_10;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					float u_xlat20;
					bool u_xlatb20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat20 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 9.99999997e-07);
					        u_xlat3.x = inversesqrt(u_xlat20);
					        u_xlat5.xyz = u_xlat3.xxx * u_xlat5.xyz;
					        u_xlat20 = u_xlat20 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat20 = float(1.0) / u_xlat20;
					        u_xlat3.x = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat3.x = max(u_xlat3.x, 0.0);
					        u_xlat20 = u_xlat20 * u_xlat3.x;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat20) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_8;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_10;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					float u_xlat20;
					bool u_xlatb20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat20 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 9.99999997e-07);
					        u_xlat3.x = inversesqrt(u_xlat20);
					        u_xlat5.xyz = u_xlat3.xxx * u_xlat5.xyz;
					        u_xlat20 = u_xlat20 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat20 = float(1.0) / u_xlat20;
					        u_xlat3.x = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat3.x = max(u_xlat3.x, 0.0);
					        u_xlat20 = u_xlat20 * u_xlat3.x;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat20) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_8;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_10;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					float u_xlat20;
					bool u_xlatb20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat20 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 9.99999997e-07);
					        u_xlat3.x = inversesqrt(u_xlat20);
					        u_xlat5.xyz = u_xlat3.xxx * u_xlat5.xyz;
					        u_xlat20 = u_xlat20 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat20 = float(1.0) / u_xlat20;
					        u_xlat3.x = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat3.x = max(u_xlat3.x, 0.0);
					        u_xlat20 = u_xlat20 * u_xlat3.x;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat20) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_8;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_10;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					float u_xlat20;
					bool u_xlatb20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat20 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 9.99999997e-07);
					        u_xlat3.x = inversesqrt(u_xlat20);
					        u_xlat5.xyz = u_xlat3.xxx * u_xlat5.xyz;
					        u_xlat20 = u_xlat20 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat20 = float(1.0) / u_xlat20;
					        u_xlat3.x = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat3.x = max(u_xlat3.x, 0.0);
					        u_xlat20 = u_xlat20 * u_xlat3.x;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat20) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_8;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_10;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					float u_xlat20;
					bool u_xlatb20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat20 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 9.99999997e-07);
					        u_xlat3.x = inversesqrt(u_xlat20);
					        u_xlat5.xyz = u_xlat3.xxx * u_xlat5.xyz;
					        u_xlat20 = u_xlat20 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat20 = float(1.0) / u_xlat20;
					        u_xlat3.x = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat3.x = max(u_xlat3.x, 0.0);
					        u_xlat20 = u_xlat20 * u_xlat3.x;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat20) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_8;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_10;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					float u_xlat20;
					bool u_xlatb20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat20 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 9.99999997e-07);
					        u_xlat3.x = inversesqrt(u_xlat20);
					        u_xlat5.xyz = u_xlat3.xxx * u_xlat5.xyz;
					        u_xlat20 = u_xlat20 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat20 = float(1.0) / u_xlat20;
					        u_xlat3.x = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat3.x = max(u_xlat3.x, 0.0);
					        u_xlat20 = u_xlat20 * u_xlat3.x;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat20) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_8;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_10;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					float u_xlat20;
					bool u_xlatb20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat20 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 9.99999997e-07);
					        u_xlat3.x = inversesqrt(u_xlat20);
					        u_xlat5.xyz = u_xlat3.xxx * u_xlat5.xyz;
					        u_xlat20 = u_xlat20 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat20 = float(1.0) / u_xlat20;
					        u_xlat3.x = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat3.x = max(u_xlat3.x, 0.0);
					        u_xlat20 = u_xlat20 * u_xlat3.x;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat20) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_8;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_10;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					float u_xlat20;
					bool u_xlatb20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat20 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 9.99999997e-07);
					        u_xlat3.x = inversesqrt(u_xlat20);
					        u_xlat5.xyz = u_xlat3.xxx * u_xlat5.xyz;
					        u_xlat20 = u_xlat20 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat20 = float(1.0) / u_xlat20;
					        u_xlat3.x = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat3.x = max(u_xlat3.x, 0.0);
					        u_xlat20 = u_xlat20 * u_xlat3.x;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat20) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_8;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_10;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					float u_xlat20;
					bool u_xlatb20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat20 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 9.99999997e-07);
					        u_xlat3.x = inversesqrt(u_xlat20);
					        u_xlat5.xyz = u_xlat3.xxx * u_xlat5.xyz;
					        u_xlat20 = u_xlat20 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat20 = float(1.0) / u_xlat20;
					        u_xlat3.x = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat3.x = max(u_xlat3.x, 0.0);
					        u_xlat20 = u_xlat20 * u_xlat3.x;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat20) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_8;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_10;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					float u_xlat20;
					bool u_xlatb20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat20 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 9.99999997e-07);
					        u_xlat3.x = inversesqrt(u_xlat20);
					        u_xlat5.xyz = u_xlat3.xxx * u_xlat5.xyz;
					        u_xlat20 = u_xlat20 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat20 = float(1.0) / u_xlat20;
					        u_xlat3.x = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat3.x = max(u_xlat3.x, 0.0);
					        u_xlat20 = u_xlat20 * u_xlat3.x;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat20) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_8;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_10;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					float u_xlat20;
					bool u_xlatb20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat20 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 9.99999997e-07);
					        u_xlat3.x = inversesqrt(u_xlat20);
					        u_xlat5.xyz = u_xlat3.xxx * u_xlat5.xyz;
					        u_xlat20 = u_xlat20 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat20 = float(1.0) / u_xlat20;
					        u_xlat3.x = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat3.x = max(u_xlat3.x, 0.0);
					        u_xlat20 = u_xlat20 * u_xlat3.x;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat20) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_8;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_10;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					float u_xlat20;
					bool u_xlatb20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat20 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 9.99999997e-07);
					        u_xlat3.x = inversesqrt(u_xlat20);
					        u_xlat5.xyz = u_xlat3.xxx * u_xlat5.xyz;
					        u_xlat20 = u_xlat20 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat20 = float(1.0) / u_xlat20;
					        u_xlat3.x = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat3.x = max(u_xlat3.x, 0.0);
					        u_xlat20 = u_xlat20 * u_xlat3.x;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat20) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_8;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_10;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					float u_xlat20;
					bool u_xlatb20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat20 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 9.99999997e-07);
					        u_xlat3.x = inversesqrt(u_xlat20);
					        u_xlat5.xyz = u_xlat3.xxx * u_xlat5.xyz;
					        u_xlat20 = u_xlat20 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat20 = float(1.0) / u_xlat20;
					        u_xlat3.x = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat3.x = max(u_xlat3.x, 0.0);
					        u_xlat20 = u_xlat20 * u_xlat3.x;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat20) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_8;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_10;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					float u_xlat20;
					bool u_xlatb20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat20 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 9.99999997e-07);
					        u_xlat3.x = inversesqrt(u_xlat20);
					        u_xlat5.xyz = u_xlat3.xxx * u_xlat5.xyz;
					        u_xlat20 = u_xlat20 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat20 = float(1.0) / u_xlat20;
					        u_xlat3.x = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat3.x = max(u_xlat3.x, 0.0);
					        u_xlat20 = u_xlat20 * u_xlat3.x;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat20) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_8;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_10;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					float u_xlat20;
					bool u_xlatb20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat20 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 9.99999997e-07);
					        u_xlat3.x = inversesqrt(u_xlat20);
					        u_xlat5.xyz = u_xlat3.xxx * u_xlat5.xyz;
					        u_xlat20 = u_xlat20 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat20 = float(1.0) / u_xlat20;
					        u_xlat3.x = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat3.x = max(u_xlat3.x, 0.0);
					        u_xlat20 = u_xlat20 * u_xlat3.x;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat20) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_8;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_10;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					float u_xlat20;
					bool u_xlatb20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat20 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 9.99999997e-07);
					        u_xlat3.x = inversesqrt(u_xlat20);
					        u_xlat5.xyz = u_xlat3.xxx * u_xlat5.xyz;
					        u_xlat20 = u_xlat20 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat20 = float(1.0) / u_xlat20;
					        u_xlat3.x = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat3.x = max(u_xlat3.x, 0.0);
					        u_xlat20 = u_xlat20 * u_xlat3.x;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat20) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_8;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_10;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					float u_xlat20;
					bool u_xlatb20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat20 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 9.99999997e-07);
					        u_xlat3.x = inversesqrt(u_xlat20);
					        u_xlat5.xyz = u_xlat3.xxx * u_xlat5.xyz;
					        u_xlat20 = u_xlat20 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat20 = float(1.0) / u_xlat20;
					        u_xlat3.x = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat3.x = max(u_xlat3.x, 0.0);
					        u_xlat20 = u_xlat20 * u_xlat3.x;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat20) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_8;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_10;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					float u_xlat20;
					bool u_xlatb20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat20 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 9.99999997e-07);
					        u_xlat3.x = inversesqrt(u_xlat20);
					        u_xlat5.xyz = u_xlat3.xxx * u_xlat5.xyz;
					        u_xlat20 = u_xlat20 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat20 = float(1.0) / u_xlat20;
					        u_xlat3.x = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat3.x = max(u_xlat3.x, 0.0);
					        u_xlat20 = u_xlat20 * u_xlat3.x;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat20) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_8;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_10;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					float u_xlat20;
					bool u_xlatb20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat20 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 9.99999997e-07);
					        u_xlat3.x = inversesqrt(u_xlat20);
					        u_xlat5.xyz = u_xlat3.xxx * u_xlat5.xyz;
					        u_xlat20 = u_xlat20 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat20 = float(1.0) / u_xlat20;
					        u_xlat3.x = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat3.x = max(u_xlat3.x, 0.0);
					        u_xlat20 = u_xlat20 * u_xlat3.x;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat20) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_8;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_10;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					float u_xlat20;
					bool u_xlatb20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat20 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 9.99999997e-07);
					        u_xlat3.x = inversesqrt(u_xlat20);
					        u_xlat5.xyz = u_xlat3.xxx * u_xlat5.xyz;
					        u_xlat20 = u_xlat20 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat20 = float(1.0) / u_xlat20;
					        u_xlat3.x = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat3.x = max(u_xlat3.x, 0.0);
					        u_xlat20 = u_xlat20 * u_xlat3.x;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat20) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_8;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_10;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					float u_xlat20;
					bool u_xlatb20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat20 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 9.99999997e-07);
					        u_xlat3.x = inversesqrt(u_xlat20);
					        u_xlat5.xyz = u_xlat3.xxx * u_xlat5.xyz;
					        u_xlat20 = u_xlat20 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat20 = float(1.0) / u_xlat20;
					        u_xlat3.x = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat3.x = max(u_xlat3.x, 0.0);
					        u_xlat20 = u_xlat20 * u_xlat3.x;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat20) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_8;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_10;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					float u_xlat20;
					bool u_xlatb20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat20 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 9.99999997e-07);
					        u_xlat3.x = inversesqrt(u_xlat20);
					        u_xlat5.xyz = u_xlat3.xxx * u_xlat5.xyz;
					        u_xlat20 = u_xlat20 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat20 = float(1.0) / u_xlat20;
					        u_xlat3.x = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat3.x = max(u_xlat3.x, 0.0);
					        u_xlat20 = u_xlat20 * u_xlat3.x;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat20) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_8;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_10;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					float u_xlat20;
					bool u_xlatb20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat20 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 9.99999997e-07);
					        u_xlat3.x = inversesqrt(u_xlat20);
					        u_xlat5.xyz = u_xlat3.xxx * u_xlat5.xyz;
					        u_xlat20 = u_xlat20 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat20 = float(1.0) / u_xlat20;
					        u_xlat3.x = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat3.x = max(u_xlat3.x, 0.0);
					        u_xlat20 = u_xlat20 * u_xlat3.x;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat20) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_8;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_10;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					float u_xlat20;
					bool u_xlatb20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat20 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 9.99999997e-07);
					        u_xlat3.x = inversesqrt(u_xlat20);
					        u_xlat5.xyz = u_xlat3.xxx * u_xlat5.xyz;
					        u_xlat20 = u_xlat20 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat20 = float(1.0) / u_xlat20;
					        u_xlat3.x = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat3.x = max(u_xlat3.x, 0.0);
					        u_xlat20 = u_xlat20 * u_xlat3.x;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat20) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_8;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_10;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					float u_xlat20;
					bool u_xlatb20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat20 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 9.99999997e-07);
					        u_xlat3.x = inversesqrt(u_xlat20);
					        u_xlat5.xyz = u_xlat3.xxx * u_xlat5.xyz;
					        u_xlat20 = u_xlat20 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat20 = float(1.0) / u_xlat20;
					        u_xlat3.x = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat3.x = max(u_xlat3.x, 0.0);
					        u_xlat20 = u_xlat20 * u_xlat3.x;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat20) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_8;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_10;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					float u_xlat20;
					bool u_xlatb20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat20 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 9.99999997e-07);
					        u_xlat3.x = inversesqrt(u_xlat20);
					        u_xlat5.xyz = u_xlat3.xxx * u_xlat5.xyz;
					        u_xlat20 = u_xlat20 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat20 = float(1.0) / u_xlat20;
					        u_xlat3.x = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat3.x = max(u_xlat3.x, 0.0);
					        u_xlat20 = u_xlat20 * u_xlat3.x;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat20) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_8;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_10;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					float u_xlat20;
					bool u_xlatb20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat20 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 9.99999997e-07);
					        u_xlat3.x = inversesqrt(u_xlat20);
					        u_xlat5.xyz = u_xlat3.xxx * u_xlat5.xyz;
					        u_xlat20 = u_xlat20 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat20 = float(1.0) / u_xlat20;
					        u_xlat3.x = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat3.x = max(u_xlat3.x, 0.0);
					        u_xlat20 = u_xlat20 * u_xlat3.x;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat20) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_8;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_10;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					float u_xlat20;
					bool u_xlatb20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat20 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 9.99999997e-07);
					        u_xlat3.x = inversesqrt(u_xlat20);
					        u_xlat5.xyz = u_xlat3.xxx * u_xlat5.xyz;
					        u_xlat20 = u_xlat20 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat20 = float(1.0) / u_xlat20;
					        u_xlat3.x = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat3.x = max(u_xlat3.x, 0.0);
					        u_xlat20 = u_xlat20 * u_xlat3.x;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat20) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendMul" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat2 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat2;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec2 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					float u_xlat3;
					int u_xlati6;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat3 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat3;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlati6 = unity_StereoEyeIndex;
					    u_xlat1.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati6].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati6].xy + u_xlat1.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendMul" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat2 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat2;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec2 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					float u_xlat3;
					int u_xlati6;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat3 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat3;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlati6 = unity_StereoEyeIndex;
					    u_xlat1.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati6].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati6].xy + u_xlat1.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendMul" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat2 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat2;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec2 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					float u_xlat3;
					int u_xlati6;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat3 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat3;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlati6 = unity_StereoEyeIndex;
					    u_xlat1.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati6].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati6].xy + u_xlat1.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendMul" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat2 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat2;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec2 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					float u_xlat3;
					int u_xlati6;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat3 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat3;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlati6 = unity_StereoEyeIndex;
					    u_xlat1.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati6].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati6].xy + u_xlat1.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendMul" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat2 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat2;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec2 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					float u_xlat3;
					int u_xlati6;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat3 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat3;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlati6 = unity_StereoEyeIndex;
					    u_xlat1.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati6].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati6].xy + u_xlat1.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendMul" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat2 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat2;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec2 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					float u_xlat3;
					int u_xlati6;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat3 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat3;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlati6 = unity_StereoEyeIndex;
					    u_xlat1.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati6].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati6].xy + u_xlat1.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendMul" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat2 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat2;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec2 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					float u_xlat3;
					int u_xlati6;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat3 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat3;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlati6 = unity_StereoEyeIndex;
					    u_xlat1.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati6].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati6].xy + u_xlat1.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendMul" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat2 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat2;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec2 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					float u_xlat3;
					int u_xlati6;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat3 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat3;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlati6 = unity_StereoEyeIndex;
					    u_xlat1.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati6].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati6].xy + u_xlat1.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendMul" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat2 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat2;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec2 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					float u_xlat3;
					int u_xlati6;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat3 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat3;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlati6 = unity_StereoEyeIndex;
					    u_xlat1.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati6].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati6].xy + u_xlat1.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendMul" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat2 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat2;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec2 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					float u_xlat3;
					int u_xlati6;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat3 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat3;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlati6 = unity_StereoEyeIndex;
					    u_xlat1.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati6].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati6].xy + u_xlat1.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendMul" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat2 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat2;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec2 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					float u_xlat3;
					int u_xlati6;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat3 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat3;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlati6 = unity_StereoEyeIndex;
					    u_xlat1.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati6].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati6].xy + u_xlat1.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendMul" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat2 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat2;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec2 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					float u_xlat3;
					int u_xlati6;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat3 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat3;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlati6 = unity_StereoEyeIndex;
					    u_xlat1.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati6].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati6].xy + u_xlat1.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendMul" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat2 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat2;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec2 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					float u_xlat3;
					int u_xlati6;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat3 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat3;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlati6 = unity_StereoEyeIndex;
					    u_xlat1.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati6].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati6].xy + u_xlat1.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendMul" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat2 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat2;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec2 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					float u_xlat3;
					int u_xlati6;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat3 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat3;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlati6 = unity_StereoEyeIndex;
					    u_xlat1.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati6].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati6].xy + u_xlat1.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendMul" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat2 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat2;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec2 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					float u_xlat3;
					int u_xlati6;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat3 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat3;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlati6 = unity_StereoEyeIndex;
					    u_xlat1.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati6].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati6].xy + u_xlat1.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendMul" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat2 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat2;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec2 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					float u_xlat3;
					int u_xlati6;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat3 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat3;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlati6 = unity_StereoEyeIndex;
					    u_xlat1.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati6].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati6].xy + u_xlat1.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendMul" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					float u_xlat9;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat9 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat9 = inversesqrt(u_xlat9);
					    u_xlat2.xyz = vec3(u_xlat9) * u_xlat2.xyz;
					    u_xlat9 = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat9 = inversesqrt(u_xlat9);
					    u_xlat3.xyz = vec3(u_xlat9) * in_NORMAL0.xyz;
					    u_xlat9 = dot(u_xlat3.xyz, u_xlat2.xyz);
					    u_xlat9 = log2(abs(u_xlat9));
					    u_xlat9 = u_xlat9 * _FresnelStr;
					    u_xlat9 = exp2(u_xlat9);
					    u_xlat9 = u_xlat9 + u_xlat9;
					    vs_TEXCOORD4 = min(u_xlat9, 1.0);
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat4 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_3_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					vec3 u_xlat5;
					vec2 u_xlat8;
					int u_xlati10;
					float u_xlat15;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    u_xlat5.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat5.x = inversesqrt(u_xlat5.x);
					    u_xlat5.xyz = u_xlat5.xxx * in_NORMAL0.xyz;
					    u_xlati10 = unity_StereoEyeIndex;
					    u_xlat3.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati10].yyy;
					    u_xlat3.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati10].xxx + u_xlat3.xyz;
					    u_xlat3.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati10].zzz + u_xlat3.xyz;
					    u_xlat3.xyz = u_xlat3.xyz + unity_WorldToObject[3].xyz;
					    u_xlat3.xyz = u_xlat3.xyz + (-in_POSITION0.xyz);
					    u_xlat15 = dot(u_xlat3.xyz, u_xlat3.xyz);
					    u_xlat15 = inversesqrt(u_xlat15);
					    u_xlat3.xyz = vec3(u_xlat15) * u_xlat3.xyz;
					    u_xlat5.x = dot(u_xlat5.xyz, u_xlat3.xyz);
					    u_xlat5.x = log2(abs(u_xlat5.x));
					    u_xlat5.x = u_xlat5.x * _FresnelStr;
					    u_xlat5.x = exp2(u_xlat5.x);
					    u_xlat5.x = u_xlat5.x + u_xlat5.x;
					    vs_TEXCOORD4 = min(u_xlat5.x, 1.0);
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat4 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlat8.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati10].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati10].xy + u_xlat8.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendMul" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					float u_xlat9;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat9 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat9 = inversesqrt(u_xlat9);
					    u_xlat2.xyz = vec3(u_xlat9) * u_xlat2.xyz;
					    u_xlat9 = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat9 = inversesqrt(u_xlat9);
					    u_xlat3.xyz = vec3(u_xlat9) * in_NORMAL0.xyz;
					    u_xlat9 = dot(u_xlat3.xyz, u_xlat2.xyz);
					    u_xlat9 = log2(abs(u_xlat9));
					    u_xlat9 = u_xlat9 * _FresnelStr;
					    u_xlat9 = exp2(u_xlat9);
					    u_xlat9 = u_xlat9 + u_xlat9;
					    vs_TEXCOORD4 = min(u_xlat9, 1.0);
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat4 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_3_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					vec3 u_xlat5;
					vec2 u_xlat8;
					int u_xlati10;
					float u_xlat15;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    u_xlat5.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat5.x = inversesqrt(u_xlat5.x);
					    u_xlat5.xyz = u_xlat5.xxx * in_NORMAL0.xyz;
					    u_xlati10 = unity_StereoEyeIndex;
					    u_xlat3.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati10].yyy;
					    u_xlat3.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati10].xxx + u_xlat3.xyz;
					    u_xlat3.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati10].zzz + u_xlat3.xyz;
					    u_xlat3.xyz = u_xlat3.xyz + unity_WorldToObject[3].xyz;
					    u_xlat3.xyz = u_xlat3.xyz + (-in_POSITION0.xyz);
					    u_xlat15 = dot(u_xlat3.xyz, u_xlat3.xyz);
					    u_xlat15 = inversesqrt(u_xlat15);
					    u_xlat3.xyz = vec3(u_xlat15) * u_xlat3.xyz;
					    u_xlat5.x = dot(u_xlat5.xyz, u_xlat3.xyz);
					    u_xlat5.x = log2(abs(u_xlat5.x));
					    u_xlat5.x = u_xlat5.x * _FresnelStr;
					    u_xlat5.x = exp2(u_xlat5.x);
					    u_xlat5.x = u_xlat5.x + u_xlat5.x;
					    vs_TEXCOORD4 = min(u_xlat5.x, 1.0);
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat4 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlat8.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati10].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati10].xy + u_xlat8.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendMul" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					float u_xlat14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat14 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat2.xyz = vec3(u_xlat14) * u_xlat2.xyz;
					    u_xlat14 = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat3.xyz = vec3(u_xlat14) * in_NORMAL0.xyz;
					    u_xlat2.x = dot(u_xlat3.xyz, u_xlat2.xyz);
					    u_xlat2.x = log2(abs(u_xlat2.x));
					    u_xlat2.x = u_xlat2.x * _FresnelStr;
					    u_xlat2.x = exp2(u_xlat2.x);
					    u_xlat2.x = u_xlat2.x + u_xlat2.x;
					    vs_TEXCOORD4 = min(u_xlat2.x, 1.0);
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat4 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_3_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati1;
					vec4 u_xlat2;
					int u_xlati3;
					float u_xlat4;
					float u_xlat5;
					vec3 u_xlat6;
					vec3 u_xlat8;
					vec2 u_xlat10;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    u_xlat6.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat6.x = inversesqrt(u_xlat6.x);
					    u_xlat6.xyz = u_xlat6.xxx * in_NORMAL0.xyz;
					    u_xlati3 = unity_StereoEyeIndex;
					    u_xlat8.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].yyy;
					    u_xlat8.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].xxx + u_xlat8.xyz;
					    u_xlat8.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].zzz + u_xlat8.xyz;
					    u_xlat8.xyz = u_xlat8.xyz + unity_WorldToObject[3].xyz;
					    u_xlat8.xyz = u_xlat8.xyz + (-in_POSITION0.xyz);
					    u_xlat4 = dot(u_xlat8.xyz, u_xlat8.xyz);
					    u_xlat4 = inversesqrt(u_xlat4);
					    u_xlat8.xyz = u_xlat8.xyz * vec3(u_xlat4);
					    u_xlat6.x = dot(u_xlat6.xyz, u_xlat8.xyz);
					    u_xlat6.x = log2(abs(u_xlat6.x));
					    u_xlat6.x = u_xlat6.x * _FresnelStr;
					    u_xlat6.x = exp2(u_xlat6.x);
					    u_xlat6.x = u_xlat6.x + u_xlat6.x;
					    vs_TEXCOORD4 = min(u_xlat6.x, 1.0);
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat5 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat5;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlat10.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati3].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati3].xy + u_xlat10.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendMul" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					float u_xlat14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat14 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat2.xyz = vec3(u_xlat14) * u_xlat2.xyz;
					    u_xlat14 = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat3.xyz = vec3(u_xlat14) * in_NORMAL0.xyz;
					    u_xlat2.x = dot(u_xlat3.xyz, u_xlat2.xyz);
					    u_xlat2.x = log2(abs(u_xlat2.x));
					    u_xlat2.x = u_xlat2.x * _FresnelStr;
					    u_xlat2.x = exp2(u_xlat2.x);
					    u_xlat2.x = u_xlat2.x + u_xlat2.x;
					    vs_TEXCOORD4 = min(u_xlat2.x, 1.0);
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat4 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_3_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati1;
					vec4 u_xlat2;
					int u_xlati3;
					float u_xlat4;
					float u_xlat5;
					vec3 u_xlat6;
					vec3 u_xlat8;
					vec2 u_xlat10;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    u_xlat6.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat6.x = inversesqrt(u_xlat6.x);
					    u_xlat6.xyz = u_xlat6.xxx * in_NORMAL0.xyz;
					    u_xlati3 = unity_StereoEyeIndex;
					    u_xlat8.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].yyy;
					    u_xlat8.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].xxx + u_xlat8.xyz;
					    u_xlat8.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].zzz + u_xlat8.xyz;
					    u_xlat8.xyz = u_xlat8.xyz + unity_WorldToObject[3].xyz;
					    u_xlat8.xyz = u_xlat8.xyz + (-in_POSITION0.xyz);
					    u_xlat4 = dot(u_xlat8.xyz, u_xlat8.xyz);
					    u_xlat4 = inversesqrt(u_xlat4);
					    u_xlat8.xyz = u_xlat8.xyz * vec3(u_xlat4);
					    u_xlat6.x = dot(u_xlat6.xyz, u_xlat8.xyz);
					    u_xlat6.x = log2(abs(u_xlat6.x));
					    u_xlat6.x = u_xlat6.x * _FresnelStr;
					    u_xlat6.x = exp2(u_xlat6.x);
					    u_xlat6.x = u_xlat6.x + u_xlat6.x;
					    vs_TEXCOORD4 = min(u_xlat6.x, 1.0);
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat5 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat5;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlat10.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati3].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati3].xy + u_xlat10.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendMul" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					float u_xlat14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat14 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat2.xyz = vec3(u_xlat14) * u_xlat2.xyz;
					    u_xlat14 = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat3.xyz = vec3(u_xlat14) * in_NORMAL0.xyz;
					    u_xlat2.x = dot(u_xlat3.xyz, u_xlat2.xyz);
					    u_xlat2.x = log2(abs(u_xlat2.x));
					    u_xlat2.x = u_xlat2.x * _FresnelStr;
					    u_xlat2.x = exp2(u_xlat2.x);
					    u_xlat2.x = u_xlat2.x + u_xlat2.x;
					    vs_TEXCOORD4 = min(u_xlat2.x, 1.0);
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat4 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_3_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati1;
					vec4 u_xlat2;
					int u_xlati3;
					float u_xlat4;
					float u_xlat5;
					vec3 u_xlat6;
					vec3 u_xlat8;
					vec2 u_xlat10;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    u_xlat6.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat6.x = inversesqrt(u_xlat6.x);
					    u_xlat6.xyz = u_xlat6.xxx * in_NORMAL0.xyz;
					    u_xlati3 = unity_StereoEyeIndex;
					    u_xlat8.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].yyy;
					    u_xlat8.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].xxx + u_xlat8.xyz;
					    u_xlat8.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].zzz + u_xlat8.xyz;
					    u_xlat8.xyz = u_xlat8.xyz + unity_WorldToObject[3].xyz;
					    u_xlat8.xyz = u_xlat8.xyz + (-in_POSITION0.xyz);
					    u_xlat4 = dot(u_xlat8.xyz, u_xlat8.xyz);
					    u_xlat4 = inversesqrt(u_xlat4);
					    u_xlat8.xyz = u_xlat8.xyz * vec3(u_xlat4);
					    u_xlat6.x = dot(u_xlat6.xyz, u_xlat8.xyz);
					    u_xlat6.x = log2(abs(u_xlat6.x));
					    u_xlat6.x = u_xlat6.x * _FresnelStr;
					    u_xlat6.x = exp2(u_xlat6.x);
					    u_xlat6.x = u_xlat6.x + u_xlat6.x;
					    vs_TEXCOORD4 = min(u_xlat6.x, 1.0);
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat5 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat5;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlat10.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati3].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati3].xy + u_xlat10.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendMul" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					float u_xlat14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat14 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat2.xyz = vec3(u_xlat14) * u_xlat2.xyz;
					    u_xlat14 = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat3.xyz = vec3(u_xlat14) * in_NORMAL0.xyz;
					    u_xlat2.x = dot(u_xlat3.xyz, u_xlat2.xyz);
					    u_xlat2.x = log2(abs(u_xlat2.x));
					    u_xlat2.x = u_xlat2.x * _FresnelStr;
					    u_xlat2.x = exp2(u_xlat2.x);
					    u_xlat2.x = u_xlat2.x + u_xlat2.x;
					    vs_TEXCOORD4 = min(u_xlat2.x, 1.0);
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat4 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_3_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati1;
					vec4 u_xlat2;
					int u_xlati3;
					float u_xlat4;
					float u_xlat5;
					vec3 u_xlat6;
					vec3 u_xlat8;
					vec2 u_xlat10;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    u_xlat6.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat6.x = inversesqrt(u_xlat6.x);
					    u_xlat6.xyz = u_xlat6.xxx * in_NORMAL0.xyz;
					    u_xlati3 = unity_StereoEyeIndex;
					    u_xlat8.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].yyy;
					    u_xlat8.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].xxx + u_xlat8.xyz;
					    u_xlat8.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].zzz + u_xlat8.xyz;
					    u_xlat8.xyz = u_xlat8.xyz + unity_WorldToObject[3].xyz;
					    u_xlat8.xyz = u_xlat8.xyz + (-in_POSITION0.xyz);
					    u_xlat4 = dot(u_xlat8.xyz, u_xlat8.xyz);
					    u_xlat4 = inversesqrt(u_xlat4);
					    u_xlat8.xyz = u_xlat8.xyz * vec3(u_xlat4);
					    u_xlat6.x = dot(u_xlat6.xyz, u_xlat8.xyz);
					    u_xlat6.x = log2(abs(u_xlat6.x));
					    u_xlat6.x = u_xlat6.x * _FresnelStr;
					    u_xlat6.x = exp2(u_xlat6.x);
					    u_xlat6.x = u_xlat6.x + u_xlat6.x;
					    vs_TEXCOORD4 = min(u_xlat6.x, 1.0);
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat5 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat5;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlat10.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati3].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati3].xy + u_xlat10.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendMul" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					float u_xlat14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat14 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat2.xyz = vec3(u_xlat14) * u_xlat2.xyz;
					    u_xlat14 = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat3.xyz = vec3(u_xlat14) * in_NORMAL0.xyz;
					    u_xlat2.x = dot(u_xlat3.xyz, u_xlat2.xyz);
					    u_xlat2.x = log2(abs(u_xlat2.x));
					    u_xlat2.x = u_xlat2.x * _FresnelStr;
					    u_xlat2.x = exp2(u_xlat2.x);
					    u_xlat2.x = u_xlat2.x + u_xlat2.x;
					    vs_TEXCOORD4 = min(u_xlat2.x, 1.0);
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat4 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_3_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati1;
					vec4 u_xlat2;
					int u_xlati3;
					float u_xlat4;
					float u_xlat5;
					vec3 u_xlat6;
					vec3 u_xlat8;
					vec2 u_xlat10;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    u_xlat6.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat6.x = inversesqrt(u_xlat6.x);
					    u_xlat6.xyz = u_xlat6.xxx * in_NORMAL0.xyz;
					    u_xlati3 = unity_StereoEyeIndex;
					    u_xlat8.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].yyy;
					    u_xlat8.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].xxx + u_xlat8.xyz;
					    u_xlat8.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].zzz + u_xlat8.xyz;
					    u_xlat8.xyz = u_xlat8.xyz + unity_WorldToObject[3].xyz;
					    u_xlat8.xyz = u_xlat8.xyz + (-in_POSITION0.xyz);
					    u_xlat4 = dot(u_xlat8.xyz, u_xlat8.xyz);
					    u_xlat4 = inversesqrt(u_xlat4);
					    u_xlat8.xyz = u_xlat8.xyz * vec3(u_xlat4);
					    u_xlat6.x = dot(u_xlat6.xyz, u_xlat8.xyz);
					    u_xlat6.x = log2(abs(u_xlat6.x));
					    u_xlat6.x = u_xlat6.x * _FresnelStr;
					    u_xlat6.x = exp2(u_xlat6.x);
					    u_xlat6.x = u_xlat6.x + u_xlat6.x;
					    vs_TEXCOORD4 = min(u_xlat6.x, 1.0);
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat5 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat5;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlat10.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati3].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati3].xy + u_xlat10.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendMul" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					float u_xlat14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat14 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat2.xyz = vec3(u_xlat14) * u_xlat2.xyz;
					    u_xlat14 = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat3.xyz = vec3(u_xlat14) * in_NORMAL0.xyz;
					    u_xlat2.x = dot(u_xlat3.xyz, u_xlat2.xyz);
					    u_xlat2.x = log2(abs(u_xlat2.x));
					    u_xlat2.x = u_xlat2.x * _FresnelStr;
					    u_xlat2.x = exp2(u_xlat2.x);
					    u_xlat2.x = u_xlat2.x + u_xlat2.x;
					    vs_TEXCOORD4 = min(u_xlat2.x, 1.0);
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat4 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_3_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati1;
					vec4 u_xlat2;
					int u_xlati3;
					float u_xlat4;
					float u_xlat5;
					vec3 u_xlat6;
					vec3 u_xlat8;
					vec2 u_xlat10;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    u_xlat6.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat6.x = inversesqrt(u_xlat6.x);
					    u_xlat6.xyz = u_xlat6.xxx * in_NORMAL0.xyz;
					    u_xlati3 = unity_StereoEyeIndex;
					    u_xlat8.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].yyy;
					    u_xlat8.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].xxx + u_xlat8.xyz;
					    u_xlat8.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].zzz + u_xlat8.xyz;
					    u_xlat8.xyz = u_xlat8.xyz + unity_WorldToObject[3].xyz;
					    u_xlat8.xyz = u_xlat8.xyz + (-in_POSITION0.xyz);
					    u_xlat4 = dot(u_xlat8.xyz, u_xlat8.xyz);
					    u_xlat4 = inversesqrt(u_xlat4);
					    u_xlat8.xyz = u_xlat8.xyz * vec3(u_xlat4);
					    u_xlat6.x = dot(u_xlat6.xyz, u_xlat8.xyz);
					    u_xlat6.x = log2(abs(u_xlat6.x));
					    u_xlat6.x = u_xlat6.x * _FresnelStr;
					    u_xlat6.x = exp2(u_xlat6.x);
					    u_xlat6.x = u_xlat6.x + u_xlat6.x;
					    vs_TEXCOORD4 = min(u_xlat6.x, 1.0);
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat5 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat5;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlat10.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati3].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati3].xy + u_xlat10.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendMul" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					float u_xlat9;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat9 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat9 = inversesqrt(u_xlat9);
					    u_xlat2.xyz = vec3(u_xlat9) * u_xlat2.xyz;
					    u_xlat9 = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat9 = inversesqrt(u_xlat9);
					    u_xlat3.xyz = vec3(u_xlat9) * in_NORMAL0.xyz;
					    u_xlat9 = dot(u_xlat3.xyz, u_xlat2.xyz);
					    u_xlat9 = log2(abs(u_xlat9));
					    u_xlat9 = u_xlat9 * _FresnelStr;
					    u_xlat9 = exp2(u_xlat9);
					    u_xlat9 = u_xlat9 + u_xlat9;
					    vs_TEXCOORD4 = min(u_xlat9, 1.0);
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat4 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_3_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					vec3 u_xlat5;
					vec2 u_xlat8;
					int u_xlati10;
					float u_xlat15;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    u_xlat5.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat5.x = inversesqrt(u_xlat5.x);
					    u_xlat5.xyz = u_xlat5.xxx * in_NORMAL0.xyz;
					    u_xlati10 = unity_StereoEyeIndex;
					    u_xlat3.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati10].yyy;
					    u_xlat3.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati10].xxx + u_xlat3.xyz;
					    u_xlat3.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati10].zzz + u_xlat3.xyz;
					    u_xlat3.xyz = u_xlat3.xyz + unity_WorldToObject[3].xyz;
					    u_xlat3.xyz = u_xlat3.xyz + (-in_POSITION0.xyz);
					    u_xlat15 = dot(u_xlat3.xyz, u_xlat3.xyz);
					    u_xlat15 = inversesqrt(u_xlat15);
					    u_xlat3.xyz = vec3(u_xlat15) * u_xlat3.xyz;
					    u_xlat5.x = dot(u_xlat5.xyz, u_xlat3.xyz);
					    u_xlat5.x = log2(abs(u_xlat5.x));
					    u_xlat5.x = u_xlat5.x * _FresnelStr;
					    u_xlat5.x = exp2(u_xlat5.x);
					    u_xlat5.x = u_xlat5.x + u_xlat5.x;
					    vs_TEXCOORD4 = min(u_xlat5.x, 1.0);
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat4 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlat8.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati10].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati10].xy + u_xlat8.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendMul" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					float u_xlat9;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat9 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat9 = inversesqrt(u_xlat9);
					    u_xlat2.xyz = vec3(u_xlat9) * u_xlat2.xyz;
					    u_xlat9 = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat9 = inversesqrt(u_xlat9);
					    u_xlat3.xyz = vec3(u_xlat9) * in_NORMAL0.xyz;
					    u_xlat9 = dot(u_xlat3.xyz, u_xlat2.xyz);
					    u_xlat9 = log2(abs(u_xlat9));
					    u_xlat9 = u_xlat9 * _FresnelStr;
					    u_xlat9 = exp2(u_xlat9);
					    u_xlat9 = u_xlat9 + u_xlat9;
					    vs_TEXCOORD4 = min(u_xlat9, 1.0);
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat4 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_3_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					vec3 u_xlat5;
					vec2 u_xlat8;
					int u_xlati10;
					float u_xlat15;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    u_xlat5.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat5.x = inversesqrt(u_xlat5.x);
					    u_xlat5.xyz = u_xlat5.xxx * in_NORMAL0.xyz;
					    u_xlati10 = unity_StereoEyeIndex;
					    u_xlat3.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati10].yyy;
					    u_xlat3.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati10].xxx + u_xlat3.xyz;
					    u_xlat3.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati10].zzz + u_xlat3.xyz;
					    u_xlat3.xyz = u_xlat3.xyz + unity_WorldToObject[3].xyz;
					    u_xlat3.xyz = u_xlat3.xyz + (-in_POSITION0.xyz);
					    u_xlat15 = dot(u_xlat3.xyz, u_xlat3.xyz);
					    u_xlat15 = inversesqrt(u_xlat15);
					    u_xlat3.xyz = vec3(u_xlat15) * u_xlat3.xyz;
					    u_xlat5.x = dot(u_xlat5.xyz, u_xlat3.xyz);
					    u_xlat5.x = log2(abs(u_xlat5.x));
					    u_xlat5.x = u_xlat5.x * _FresnelStr;
					    u_xlat5.x = exp2(u_xlat5.x);
					    u_xlat5.x = u_xlat5.x + u_xlat5.x;
					    vs_TEXCOORD4 = min(u_xlat5.x, 1.0);
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat4 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlat8.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati10].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati10].xy + u_xlat8.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendMul" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					float u_xlat14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat14 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat2.xyz = vec3(u_xlat14) * u_xlat2.xyz;
					    u_xlat14 = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat3.xyz = vec3(u_xlat14) * in_NORMAL0.xyz;
					    u_xlat2.x = dot(u_xlat3.xyz, u_xlat2.xyz);
					    u_xlat2.x = log2(abs(u_xlat2.x));
					    u_xlat2.x = u_xlat2.x * _FresnelStr;
					    u_xlat2.x = exp2(u_xlat2.x);
					    u_xlat2.x = u_xlat2.x + u_xlat2.x;
					    vs_TEXCOORD4 = min(u_xlat2.x, 1.0);
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat4 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_3_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati1;
					vec4 u_xlat2;
					int u_xlati3;
					float u_xlat4;
					float u_xlat5;
					vec3 u_xlat6;
					vec3 u_xlat8;
					vec2 u_xlat10;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    u_xlat6.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat6.x = inversesqrt(u_xlat6.x);
					    u_xlat6.xyz = u_xlat6.xxx * in_NORMAL0.xyz;
					    u_xlati3 = unity_StereoEyeIndex;
					    u_xlat8.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].yyy;
					    u_xlat8.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].xxx + u_xlat8.xyz;
					    u_xlat8.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].zzz + u_xlat8.xyz;
					    u_xlat8.xyz = u_xlat8.xyz + unity_WorldToObject[3].xyz;
					    u_xlat8.xyz = u_xlat8.xyz + (-in_POSITION0.xyz);
					    u_xlat4 = dot(u_xlat8.xyz, u_xlat8.xyz);
					    u_xlat4 = inversesqrt(u_xlat4);
					    u_xlat8.xyz = u_xlat8.xyz * vec3(u_xlat4);
					    u_xlat6.x = dot(u_xlat6.xyz, u_xlat8.xyz);
					    u_xlat6.x = log2(abs(u_xlat6.x));
					    u_xlat6.x = u_xlat6.x * _FresnelStr;
					    u_xlat6.x = exp2(u_xlat6.x);
					    u_xlat6.x = u_xlat6.x + u_xlat6.x;
					    vs_TEXCOORD4 = min(u_xlat6.x, 1.0);
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat5 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat5;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlat10.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati3].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati3].xy + u_xlat10.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendMul" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					float u_xlat14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat14 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat2.xyz = vec3(u_xlat14) * u_xlat2.xyz;
					    u_xlat14 = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat3.xyz = vec3(u_xlat14) * in_NORMAL0.xyz;
					    u_xlat2.x = dot(u_xlat3.xyz, u_xlat2.xyz);
					    u_xlat2.x = log2(abs(u_xlat2.x));
					    u_xlat2.x = u_xlat2.x * _FresnelStr;
					    u_xlat2.x = exp2(u_xlat2.x);
					    u_xlat2.x = u_xlat2.x + u_xlat2.x;
					    vs_TEXCOORD4 = min(u_xlat2.x, 1.0);
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat4 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_3_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati1;
					vec4 u_xlat2;
					int u_xlati3;
					float u_xlat4;
					float u_xlat5;
					vec3 u_xlat6;
					vec3 u_xlat8;
					vec2 u_xlat10;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    u_xlat6.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat6.x = inversesqrt(u_xlat6.x);
					    u_xlat6.xyz = u_xlat6.xxx * in_NORMAL0.xyz;
					    u_xlati3 = unity_StereoEyeIndex;
					    u_xlat8.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].yyy;
					    u_xlat8.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].xxx + u_xlat8.xyz;
					    u_xlat8.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].zzz + u_xlat8.xyz;
					    u_xlat8.xyz = u_xlat8.xyz + unity_WorldToObject[3].xyz;
					    u_xlat8.xyz = u_xlat8.xyz + (-in_POSITION0.xyz);
					    u_xlat4 = dot(u_xlat8.xyz, u_xlat8.xyz);
					    u_xlat4 = inversesqrt(u_xlat4);
					    u_xlat8.xyz = u_xlat8.xyz * vec3(u_xlat4);
					    u_xlat6.x = dot(u_xlat6.xyz, u_xlat8.xyz);
					    u_xlat6.x = log2(abs(u_xlat6.x));
					    u_xlat6.x = u_xlat6.x * _FresnelStr;
					    u_xlat6.x = exp2(u_xlat6.x);
					    u_xlat6.x = u_xlat6.x + u_xlat6.x;
					    vs_TEXCOORD4 = min(u_xlat6.x, 1.0);
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat5 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat5;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlat10.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati3].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati3].xy + u_xlat10.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendMul" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					float u_xlat14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat14 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat2.xyz = vec3(u_xlat14) * u_xlat2.xyz;
					    u_xlat14 = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat3.xyz = vec3(u_xlat14) * in_NORMAL0.xyz;
					    u_xlat2.x = dot(u_xlat3.xyz, u_xlat2.xyz);
					    u_xlat2.x = log2(abs(u_xlat2.x));
					    u_xlat2.x = u_xlat2.x * _FresnelStr;
					    u_xlat2.x = exp2(u_xlat2.x);
					    u_xlat2.x = u_xlat2.x + u_xlat2.x;
					    vs_TEXCOORD4 = min(u_xlat2.x, 1.0);
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat4 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_3_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati1;
					vec4 u_xlat2;
					int u_xlati3;
					float u_xlat4;
					float u_xlat5;
					vec3 u_xlat6;
					vec3 u_xlat8;
					vec2 u_xlat10;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    u_xlat6.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat6.x = inversesqrt(u_xlat6.x);
					    u_xlat6.xyz = u_xlat6.xxx * in_NORMAL0.xyz;
					    u_xlati3 = unity_StereoEyeIndex;
					    u_xlat8.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].yyy;
					    u_xlat8.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].xxx + u_xlat8.xyz;
					    u_xlat8.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].zzz + u_xlat8.xyz;
					    u_xlat8.xyz = u_xlat8.xyz + unity_WorldToObject[3].xyz;
					    u_xlat8.xyz = u_xlat8.xyz + (-in_POSITION0.xyz);
					    u_xlat4 = dot(u_xlat8.xyz, u_xlat8.xyz);
					    u_xlat4 = inversesqrt(u_xlat4);
					    u_xlat8.xyz = u_xlat8.xyz * vec3(u_xlat4);
					    u_xlat6.x = dot(u_xlat6.xyz, u_xlat8.xyz);
					    u_xlat6.x = log2(abs(u_xlat6.x));
					    u_xlat6.x = u_xlat6.x * _FresnelStr;
					    u_xlat6.x = exp2(u_xlat6.x);
					    u_xlat6.x = u_xlat6.x + u_xlat6.x;
					    vs_TEXCOORD4 = min(u_xlat6.x, 1.0);
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat5 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat5;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlat10.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati3].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati3].xy + u_xlat10.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendMul" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					float u_xlat14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat14 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat2.xyz = vec3(u_xlat14) * u_xlat2.xyz;
					    u_xlat14 = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat3.xyz = vec3(u_xlat14) * in_NORMAL0.xyz;
					    u_xlat2.x = dot(u_xlat3.xyz, u_xlat2.xyz);
					    u_xlat2.x = log2(abs(u_xlat2.x));
					    u_xlat2.x = u_xlat2.x * _FresnelStr;
					    u_xlat2.x = exp2(u_xlat2.x);
					    u_xlat2.x = u_xlat2.x + u_xlat2.x;
					    vs_TEXCOORD4 = min(u_xlat2.x, 1.0);
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat4 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_3_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati1;
					vec4 u_xlat2;
					int u_xlati3;
					float u_xlat4;
					float u_xlat5;
					vec3 u_xlat6;
					vec3 u_xlat8;
					vec2 u_xlat10;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    u_xlat6.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat6.x = inversesqrt(u_xlat6.x);
					    u_xlat6.xyz = u_xlat6.xxx * in_NORMAL0.xyz;
					    u_xlati3 = unity_StereoEyeIndex;
					    u_xlat8.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].yyy;
					    u_xlat8.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].xxx + u_xlat8.xyz;
					    u_xlat8.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].zzz + u_xlat8.xyz;
					    u_xlat8.xyz = u_xlat8.xyz + unity_WorldToObject[3].xyz;
					    u_xlat8.xyz = u_xlat8.xyz + (-in_POSITION0.xyz);
					    u_xlat4 = dot(u_xlat8.xyz, u_xlat8.xyz);
					    u_xlat4 = inversesqrt(u_xlat4);
					    u_xlat8.xyz = u_xlat8.xyz * vec3(u_xlat4);
					    u_xlat6.x = dot(u_xlat6.xyz, u_xlat8.xyz);
					    u_xlat6.x = log2(abs(u_xlat6.x));
					    u_xlat6.x = u_xlat6.x * _FresnelStr;
					    u_xlat6.x = exp2(u_xlat6.x);
					    u_xlat6.x = u_xlat6.x + u_xlat6.x;
					    vs_TEXCOORD4 = min(u_xlat6.x, 1.0);
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat5 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat5;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlat10.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati3].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati3].xy + u_xlat10.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendMul" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					float u_xlat14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat14 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat2.xyz = vec3(u_xlat14) * u_xlat2.xyz;
					    u_xlat14 = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat3.xyz = vec3(u_xlat14) * in_NORMAL0.xyz;
					    u_xlat2.x = dot(u_xlat3.xyz, u_xlat2.xyz);
					    u_xlat2.x = log2(abs(u_xlat2.x));
					    u_xlat2.x = u_xlat2.x * _FresnelStr;
					    u_xlat2.x = exp2(u_xlat2.x);
					    u_xlat2.x = u_xlat2.x + u_xlat2.x;
					    vs_TEXCOORD4 = min(u_xlat2.x, 1.0);
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat4 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_3_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati1;
					vec4 u_xlat2;
					int u_xlati3;
					float u_xlat4;
					float u_xlat5;
					vec3 u_xlat6;
					vec3 u_xlat8;
					vec2 u_xlat10;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    u_xlat6.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat6.x = inversesqrt(u_xlat6.x);
					    u_xlat6.xyz = u_xlat6.xxx * in_NORMAL0.xyz;
					    u_xlati3 = unity_StereoEyeIndex;
					    u_xlat8.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].yyy;
					    u_xlat8.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].xxx + u_xlat8.xyz;
					    u_xlat8.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].zzz + u_xlat8.xyz;
					    u_xlat8.xyz = u_xlat8.xyz + unity_WorldToObject[3].xyz;
					    u_xlat8.xyz = u_xlat8.xyz + (-in_POSITION0.xyz);
					    u_xlat4 = dot(u_xlat8.xyz, u_xlat8.xyz);
					    u_xlat4 = inversesqrt(u_xlat4);
					    u_xlat8.xyz = u_xlat8.xyz * vec3(u_xlat4);
					    u_xlat6.x = dot(u_xlat6.xyz, u_xlat8.xyz);
					    u_xlat6.x = log2(abs(u_xlat6.x));
					    u_xlat6.x = u_xlat6.x * _FresnelStr;
					    u_xlat6.x = exp2(u_xlat6.x);
					    u_xlat6.x = u_xlat6.x + u_xlat6.x;
					    vs_TEXCOORD4 = min(u_xlat6.x, 1.0);
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat5 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat5;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlat10.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati3].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati3].xy + u_xlat10.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendMul" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					float u_xlat14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat14 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat2.xyz = vec3(u_xlat14) * u_xlat2.xyz;
					    u_xlat14 = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat3.xyz = vec3(u_xlat14) * in_NORMAL0.xyz;
					    u_xlat2.x = dot(u_xlat3.xyz, u_xlat2.xyz);
					    u_xlat2.x = log2(abs(u_xlat2.x));
					    u_xlat2.x = u_xlat2.x * _FresnelStr;
					    u_xlat2.x = exp2(u_xlat2.x);
					    u_xlat2.x = u_xlat2.x + u_xlat2.x;
					    vs_TEXCOORD4 = min(u_xlat2.x, 1.0);
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat4 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_3_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati1;
					vec4 u_xlat2;
					int u_xlati3;
					float u_xlat4;
					float u_xlat5;
					vec3 u_xlat6;
					vec3 u_xlat8;
					vec2 u_xlat10;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    u_xlat6.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat6.x = inversesqrt(u_xlat6.x);
					    u_xlat6.xyz = u_xlat6.xxx * in_NORMAL0.xyz;
					    u_xlati3 = unity_StereoEyeIndex;
					    u_xlat8.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].yyy;
					    u_xlat8.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].xxx + u_xlat8.xyz;
					    u_xlat8.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].zzz + u_xlat8.xyz;
					    u_xlat8.xyz = u_xlat8.xyz + unity_WorldToObject[3].xyz;
					    u_xlat8.xyz = u_xlat8.xyz + (-in_POSITION0.xyz);
					    u_xlat4 = dot(u_xlat8.xyz, u_xlat8.xyz);
					    u_xlat4 = inversesqrt(u_xlat4);
					    u_xlat8.xyz = u_xlat8.xyz * vec3(u_xlat4);
					    u_xlat6.x = dot(u_xlat6.xyz, u_xlat8.xyz);
					    u_xlat6.x = log2(abs(u_xlat6.x));
					    u_xlat6.x = u_xlat6.x * _FresnelStr;
					    u_xlat6.x = exp2(u_xlat6.x);
					    u_xlat6.x = u_xlat6.x + u_xlat6.x;
					    vs_TEXCOORD4 = min(u_xlat6.x, 1.0);
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat5 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat5;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlat10.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati3].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati3].xy + u_xlat10.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendMul" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat2 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat2;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec2 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					float u_xlat3;
					int u_xlati6;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat3 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat3;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlati6 = unity_StereoEyeIndex;
					    u_xlat1.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati6].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati6].xy + u_xlat1.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendMul" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat2 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat2;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec2 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					float u_xlat3;
					int u_xlati6;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat3 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat3;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlati6 = unity_StereoEyeIndex;
					    u_xlat1.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati6].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati6].xy + u_xlat1.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendMul" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat2 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat2;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec2 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					float u_xlat3;
					int u_xlati6;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat3 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat3;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlati6 = unity_StereoEyeIndex;
					    u_xlat1.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati6].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati6].xy + u_xlat1.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendMul" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat2 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat2;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec2 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					float u_xlat3;
					int u_xlati6;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat3 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat3;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlati6 = unity_StereoEyeIndex;
					    u_xlat1.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati6].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati6].xy + u_xlat1.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendMul" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat2 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat2;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec2 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					float u_xlat3;
					int u_xlati6;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat3 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat3;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlati6 = unity_StereoEyeIndex;
					    u_xlat1.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati6].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati6].xy + u_xlat1.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendMul" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat2 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat2;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec2 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					float u_xlat3;
					int u_xlati6;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat3 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat3;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlati6 = unity_StereoEyeIndex;
					    u_xlat1.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati6].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati6].xy + u_xlat1.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendMul" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat2 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat2;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec2 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					float u_xlat3;
					int u_xlati6;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat3 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat3;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlati6 = unity_StereoEyeIndex;
					    u_xlat1.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati6].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati6].xy + u_xlat1.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendMul" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat2 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat2;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec2 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					float u_xlat3;
					int u_xlati6;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat3 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat3;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlati6 = unity_StereoEyeIndex;
					    u_xlat1.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati6].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati6].xy + u_xlat1.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendMul" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat2 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat2;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec2 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					float u_xlat3;
					int u_xlati6;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat3 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat3;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlati6 = unity_StereoEyeIndex;
					    u_xlat1.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati6].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati6].xy + u_xlat1.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendMul" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat2 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat2;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec2 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					float u_xlat3;
					int u_xlati6;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat3 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat3;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlati6 = unity_StereoEyeIndex;
					    u_xlat1.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati6].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati6].xy + u_xlat1.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendMul" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat2 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat2;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec2 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					float u_xlat3;
					int u_xlati6;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat3 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat3;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlati6 = unity_StereoEyeIndex;
					    u_xlat1.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati6].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati6].xy + u_xlat1.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendMul" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat2 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat2;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec2 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					float u_xlat3;
					int u_xlati6;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat3 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat3;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlati6 = unity_StereoEyeIndex;
					    u_xlat1.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati6].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati6].xy + u_xlat1.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendMul" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat2 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat2;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec2 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					float u_xlat3;
					int u_xlati6;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat3 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat3;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlati6 = unity_StereoEyeIndex;
					    u_xlat1.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati6].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati6].xy + u_xlat1.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendMul" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat2 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat2;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec2 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					float u_xlat3;
					int u_xlati6;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat3 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat3;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlati6 = unity_StereoEyeIndex;
					    u_xlat1.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati6].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati6].xy + u_xlat1.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendMul" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat2 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat2;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec2 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					float u_xlat3;
					int u_xlati6;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat3 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat3;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlati6 = unity_StereoEyeIndex;
					    u_xlat1.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati6].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati6].xy + u_xlat1.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendMul" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat2 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat2;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec2 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					float u_xlat3;
					int u_xlati6;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat3 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat3;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlati6 = unity_StereoEyeIndex;
					    u_xlat1.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati6].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati6].xy + u_xlat1.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendMul" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					float u_xlat9;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat9 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat9 = inversesqrt(u_xlat9);
					    u_xlat2.xyz = vec3(u_xlat9) * u_xlat2.xyz;
					    u_xlat9 = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat9 = inversesqrt(u_xlat9);
					    u_xlat3.xyz = vec3(u_xlat9) * in_NORMAL0.xyz;
					    u_xlat9 = dot(u_xlat3.xyz, u_xlat2.xyz);
					    u_xlat9 = log2(abs(u_xlat9));
					    u_xlat9 = u_xlat9 * _FresnelStr;
					    u_xlat9 = exp2(u_xlat9);
					    u_xlat9 = u_xlat9 + u_xlat9;
					    vs_TEXCOORD4 = min(u_xlat9, 1.0);
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat4 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_3_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					vec3 u_xlat5;
					vec2 u_xlat8;
					int u_xlati10;
					float u_xlat15;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    u_xlat5.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat5.x = inversesqrt(u_xlat5.x);
					    u_xlat5.xyz = u_xlat5.xxx * in_NORMAL0.xyz;
					    u_xlati10 = unity_StereoEyeIndex;
					    u_xlat3.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati10].yyy;
					    u_xlat3.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati10].xxx + u_xlat3.xyz;
					    u_xlat3.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati10].zzz + u_xlat3.xyz;
					    u_xlat3.xyz = u_xlat3.xyz + unity_WorldToObject[3].xyz;
					    u_xlat3.xyz = u_xlat3.xyz + (-in_POSITION0.xyz);
					    u_xlat15 = dot(u_xlat3.xyz, u_xlat3.xyz);
					    u_xlat15 = inversesqrt(u_xlat15);
					    u_xlat3.xyz = vec3(u_xlat15) * u_xlat3.xyz;
					    u_xlat5.x = dot(u_xlat5.xyz, u_xlat3.xyz);
					    u_xlat5.x = log2(abs(u_xlat5.x));
					    u_xlat5.x = u_xlat5.x * _FresnelStr;
					    u_xlat5.x = exp2(u_xlat5.x);
					    u_xlat5.x = u_xlat5.x + u_xlat5.x;
					    vs_TEXCOORD4 = min(u_xlat5.x, 1.0);
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat4 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlat8.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati10].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati10].xy + u_xlat8.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendMul" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					float u_xlat9;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat9 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat9 = inversesqrt(u_xlat9);
					    u_xlat2.xyz = vec3(u_xlat9) * u_xlat2.xyz;
					    u_xlat9 = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat9 = inversesqrt(u_xlat9);
					    u_xlat3.xyz = vec3(u_xlat9) * in_NORMAL0.xyz;
					    u_xlat9 = dot(u_xlat3.xyz, u_xlat2.xyz);
					    u_xlat9 = log2(abs(u_xlat9));
					    u_xlat9 = u_xlat9 * _FresnelStr;
					    u_xlat9 = exp2(u_xlat9);
					    u_xlat9 = u_xlat9 + u_xlat9;
					    vs_TEXCOORD4 = min(u_xlat9, 1.0);
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat4 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_3_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					vec3 u_xlat5;
					vec2 u_xlat8;
					int u_xlati10;
					float u_xlat15;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    u_xlat5.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat5.x = inversesqrt(u_xlat5.x);
					    u_xlat5.xyz = u_xlat5.xxx * in_NORMAL0.xyz;
					    u_xlati10 = unity_StereoEyeIndex;
					    u_xlat3.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati10].yyy;
					    u_xlat3.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati10].xxx + u_xlat3.xyz;
					    u_xlat3.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati10].zzz + u_xlat3.xyz;
					    u_xlat3.xyz = u_xlat3.xyz + unity_WorldToObject[3].xyz;
					    u_xlat3.xyz = u_xlat3.xyz + (-in_POSITION0.xyz);
					    u_xlat15 = dot(u_xlat3.xyz, u_xlat3.xyz);
					    u_xlat15 = inversesqrt(u_xlat15);
					    u_xlat3.xyz = vec3(u_xlat15) * u_xlat3.xyz;
					    u_xlat5.x = dot(u_xlat5.xyz, u_xlat3.xyz);
					    u_xlat5.x = log2(abs(u_xlat5.x));
					    u_xlat5.x = u_xlat5.x * _FresnelStr;
					    u_xlat5.x = exp2(u_xlat5.x);
					    u_xlat5.x = u_xlat5.x + u_xlat5.x;
					    vs_TEXCOORD4 = min(u_xlat5.x, 1.0);
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat4 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlat8.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati10].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati10].xy + u_xlat8.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendMul" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					float u_xlat14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat14 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat2.xyz = vec3(u_xlat14) * u_xlat2.xyz;
					    u_xlat14 = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat3.xyz = vec3(u_xlat14) * in_NORMAL0.xyz;
					    u_xlat2.x = dot(u_xlat3.xyz, u_xlat2.xyz);
					    u_xlat2.x = log2(abs(u_xlat2.x));
					    u_xlat2.x = u_xlat2.x * _FresnelStr;
					    u_xlat2.x = exp2(u_xlat2.x);
					    u_xlat2.x = u_xlat2.x + u_xlat2.x;
					    vs_TEXCOORD4 = min(u_xlat2.x, 1.0);
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat4 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_3_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati1;
					vec4 u_xlat2;
					int u_xlati3;
					float u_xlat4;
					float u_xlat5;
					vec3 u_xlat6;
					vec3 u_xlat8;
					vec2 u_xlat10;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    u_xlat6.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat6.x = inversesqrt(u_xlat6.x);
					    u_xlat6.xyz = u_xlat6.xxx * in_NORMAL0.xyz;
					    u_xlati3 = unity_StereoEyeIndex;
					    u_xlat8.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].yyy;
					    u_xlat8.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].xxx + u_xlat8.xyz;
					    u_xlat8.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].zzz + u_xlat8.xyz;
					    u_xlat8.xyz = u_xlat8.xyz + unity_WorldToObject[3].xyz;
					    u_xlat8.xyz = u_xlat8.xyz + (-in_POSITION0.xyz);
					    u_xlat4 = dot(u_xlat8.xyz, u_xlat8.xyz);
					    u_xlat4 = inversesqrt(u_xlat4);
					    u_xlat8.xyz = u_xlat8.xyz * vec3(u_xlat4);
					    u_xlat6.x = dot(u_xlat6.xyz, u_xlat8.xyz);
					    u_xlat6.x = log2(abs(u_xlat6.x));
					    u_xlat6.x = u_xlat6.x * _FresnelStr;
					    u_xlat6.x = exp2(u_xlat6.x);
					    u_xlat6.x = u_xlat6.x + u_xlat6.x;
					    vs_TEXCOORD4 = min(u_xlat6.x, 1.0);
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat5 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat5;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlat10.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati3].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati3].xy + u_xlat10.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendMul" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					float u_xlat14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat14 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat2.xyz = vec3(u_xlat14) * u_xlat2.xyz;
					    u_xlat14 = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat3.xyz = vec3(u_xlat14) * in_NORMAL0.xyz;
					    u_xlat2.x = dot(u_xlat3.xyz, u_xlat2.xyz);
					    u_xlat2.x = log2(abs(u_xlat2.x));
					    u_xlat2.x = u_xlat2.x * _FresnelStr;
					    u_xlat2.x = exp2(u_xlat2.x);
					    u_xlat2.x = u_xlat2.x + u_xlat2.x;
					    vs_TEXCOORD4 = min(u_xlat2.x, 1.0);
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat4 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_3_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati1;
					vec4 u_xlat2;
					int u_xlati3;
					float u_xlat4;
					float u_xlat5;
					vec3 u_xlat6;
					vec3 u_xlat8;
					vec2 u_xlat10;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    u_xlat6.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat6.x = inversesqrt(u_xlat6.x);
					    u_xlat6.xyz = u_xlat6.xxx * in_NORMAL0.xyz;
					    u_xlati3 = unity_StereoEyeIndex;
					    u_xlat8.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].yyy;
					    u_xlat8.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].xxx + u_xlat8.xyz;
					    u_xlat8.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].zzz + u_xlat8.xyz;
					    u_xlat8.xyz = u_xlat8.xyz + unity_WorldToObject[3].xyz;
					    u_xlat8.xyz = u_xlat8.xyz + (-in_POSITION0.xyz);
					    u_xlat4 = dot(u_xlat8.xyz, u_xlat8.xyz);
					    u_xlat4 = inversesqrt(u_xlat4);
					    u_xlat8.xyz = u_xlat8.xyz * vec3(u_xlat4);
					    u_xlat6.x = dot(u_xlat6.xyz, u_xlat8.xyz);
					    u_xlat6.x = log2(abs(u_xlat6.x));
					    u_xlat6.x = u_xlat6.x * _FresnelStr;
					    u_xlat6.x = exp2(u_xlat6.x);
					    u_xlat6.x = u_xlat6.x + u_xlat6.x;
					    vs_TEXCOORD4 = min(u_xlat6.x, 1.0);
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat5 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat5;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlat10.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati3].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati3].xy + u_xlat10.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendMul" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					float u_xlat14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat14 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat2.xyz = vec3(u_xlat14) * u_xlat2.xyz;
					    u_xlat14 = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat3.xyz = vec3(u_xlat14) * in_NORMAL0.xyz;
					    u_xlat2.x = dot(u_xlat3.xyz, u_xlat2.xyz);
					    u_xlat2.x = log2(abs(u_xlat2.x));
					    u_xlat2.x = u_xlat2.x * _FresnelStr;
					    u_xlat2.x = exp2(u_xlat2.x);
					    u_xlat2.x = u_xlat2.x + u_xlat2.x;
					    vs_TEXCOORD4 = min(u_xlat2.x, 1.0);
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat4 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_3_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati1;
					vec4 u_xlat2;
					int u_xlati3;
					float u_xlat4;
					float u_xlat5;
					vec3 u_xlat6;
					vec3 u_xlat8;
					vec2 u_xlat10;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    u_xlat6.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat6.x = inversesqrt(u_xlat6.x);
					    u_xlat6.xyz = u_xlat6.xxx * in_NORMAL0.xyz;
					    u_xlati3 = unity_StereoEyeIndex;
					    u_xlat8.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].yyy;
					    u_xlat8.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].xxx + u_xlat8.xyz;
					    u_xlat8.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].zzz + u_xlat8.xyz;
					    u_xlat8.xyz = u_xlat8.xyz + unity_WorldToObject[3].xyz;
					    u_xlat8.xyz = u_xlat8.xyz + (-in_POSITION0.xyz);
					    u_xlat4 = dot(u_xlat8.xyz, u_xlat8.xyz);
					    u_xlat4 = inversesqrt(u_xlat4);
					    u_xlat8.xyz = u_xlat8.xyz * vec3(u_xlat4);
					    u_xlat6.x = dot(u_xlat6.xyz, u_xlat8.xyz);
					    u_xlat6.x = log2(abs(u_xlat6.x));
					    u_xlat6.x = u_xlat6.x * _FresnelStr;
					    u_xlat6.x = exp2(u_xlat6.x);
					    u_xlat6.x = u_xlat6.x + u_xlat6.x;
					    vs_TEXCOORD4 = min(u_xlat6.x, 1.0);
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat5 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat5;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlat10.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati3].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati3].xy + u_xlat10.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendMul" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					float u_xlat14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat14 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat2.xyz = vec3(u_xlat14) * u_xlat2.xyz;
					    u_xlat14 = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat3.xyz = vec3(u_xlat14) * in_NORMAL0.xyz;
					    u_xlat2.x = dot(u_xlat3.xyz, u_xlat2.xyz);
					    u_xlat2.x = log2(abs(u_xlat2.x));
					    u_xlat2.x = u_xlat2.x * _FresnelStr;
					    u_xlat2.x = exp2(u_xlat2.x);
					    u_xlat2.x = u_xlat2.x + u_xlat2.x;
					    vs_TEXCOORD4 = min(u_xlat2.x, 1.0);
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat4 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_3_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati1;
					vec4 u_xlat2;
					int u_xlati3;
					float u_xlat4;
					float u_xlat5;
					vec3 u_xlat6;
					vec3 u_xlat8;
					vec2 u_xlat10;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    u_xlat6.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat6.x = inversesqrt(u_xlat6.x);
					    u_xlat6.xyz = u_xlat6.xxx * in_NORMAL0.xyz;
					    u_xlati3 = unity_StereoEyeIndex;
					    u_xlat8.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].yyy;
					    u_xlat8.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].xxx + u_xlat8.xyz;
					    u_xlat8.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].zzz + u_xlat8.xyz;
					    u_xlat8.xyz = u_xlat8.xyz + unity_WorldToObject[3].xyz;
					    u_xlat8.xyz = u_xlat8.xyz + (-in_POSITION0.xyz);
					    u_xlat4 = dot(u_xlat8.xyz, u_xlat8.xyz);
					    u_xlat4 = inversesqrt(u_xlat4);
					    u_xlat8.xyz = u_xlat8.xyz * vec3(u_xlat4);
					    u_xlat6.x = dot(u_xlat6.xyz, u_xlat8.xyz);
					    u_xlat6.x = log2(abs(u_xlat6.x));
					    u_xlat6.x = u_xlat6.x * _FresnelStr;
					    u_xlat6.x = exp2(u_xlat6.x);
					    u_xlat6.x = u_xlat6.x + u_xlat6.x;
					    vs_TEXCOORD4 = min(u_xlat6.x, 1.0);
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat5 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat5;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlat10.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati3].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati3].xy + u_xlat10.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendMul" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					float u_xlat14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat14 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat2.xyz = vec3(u_xlat14) * u_xlat2.xyz;
					    u_xlat14 = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat3.xyz = vec3(u_xlat14) * in_NORMAL0.xyz;
					    u_xlat2.x = dot(u_xlat3.xyz, u_xlat2.xyz);
					    u_xlat2.x = log2(abs(u_xlat2.x));
					    u_xlat2.x = u_xlat2.x * _FresnelStr;
					    u_xlat2.x = exp2(u_xlat2.x);
					    u_xlat2.x = u_xlat2.x + u_xlat2.x;
					    vs_TEXCOORD4 = min(u_xlat2.x, 1.0);
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat4 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_3_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati1;
					vec4 u_xlat2;
					int u_xlati3;
					float u_xlat4;
					float u_xlat5;
					vec3 u_xlat6;
					vec3 u_xlat8;
					vec2 u_xlat10;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    u_xlat6.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat6.x = inversesqrt(u_xlat6.x);
					    u_xlat6.xyz = u_xlat6.xxx * in_NORMAL0.xyz;
					    u_xlati3 = unity_StereoEyeIndex;
					    u_xlat8.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].yyy;
					    u_xlat8.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].xxx + u_xlat8.xyz;
					    u_xlat8.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].zzz + u_xlat8.xyz;
					    u_xlat8.xyz = u_xlat8.xyz + unity_WorldToObject[3].xyz;
					    u_xlat8.xyz = u_xlat8.xyz + (-in_POSITION0.xyz);
					    u_xlat4 = dot(u_xlat8.xyz, u_xlat8.xyz);
					    u_xlat4 = inversesqrt(u_xlat4);
					    u_xlat8.xyz = u_xlat8.xyz * vec3(u_xlat4);
					    u_xlat6.x = dot(u_xlat6.xyz, u_xlat8.xyz);
					    u_xlat6.x = log2(abs(u_xlat6.x));
					    u_xlat6.x = u_xlat6.x * _FresnelStr;
					    u_xlat6.x = exp2(u_xlat6.x);
					    u_xlat6.x = u_xlat6.x + u_xlat6.x;
					    vs_TEXCOORD4 = min(u_xlat6.x, 1.0);
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat5 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat5;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlat10.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati3].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati3].xy + u_xlat10.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendMul" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					float u_xlat14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat14 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat2.xyz = vec3(u_xlat14) * u_xlat2.xyz;
					    u_xlat14 = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat3.xyz = vec3(u_xlat14) * in_NORMAL0.xyz;
					    u_xlat2.x = dot(u_xlat3.xyz, u_xlat2.xyz);
					    u_xlat2.x = log2(abs(u_xlat2.x));
					    u_xlat2.x = u_xlat2.x * _FresnelStr;
					    u_xlat2.x = exp2(u_xlat2.x);
					    u_xlat2.x = u_xlat2.x + u_xlat2.x;
					    vs_TEXCOORD4 = min(u_xlat2.x, 1.0);
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat4 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_3_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati1;
					vec4 u_xlat2;
					int u_xlati3;
					float u_xlat4;
					float u_xlat5;
					vec3 u_xlat6;
					vec3 u_xlat8;
					vec2 u_xlat10;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    u_xlat6.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat6.x = inversesqrt(u_xlat6.x);
					    u_xlat6.xyz = u_xlat6.xxx * in_NORMAL0.xyz;
					    u_xlati3 = unity_StereoEyeIndex;
					    u_xlat8.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].yyy;
					    u_xlat8.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].xxx + u_xlat8.xyz;
					    u_xlat8.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].zzz + u_xlat8.xyz;
					    u_xlat8.xyz = u_xlat8.xyz + unity_WorldToObject[3].xyz;
					    u_xlat8.xyz = u_xlat8.xyz + (-in_POSITION0.xyz);
					    u_xlat4 = dot(u_xlat8.xyz, u_xlat8.xyz);
					    u_xlat4 = inversesqrt(u_xlat4);
					    u_xlat8.xyz = u_xlat8.xyz * vec3(u_xlat4);
					    u_xlat6.x = dot(u_xlat6.xyz, u_xlat8.xyz);
					    u_xlat6.x = log2(abs(u_xlat6.x));
					    u_xlat6.x = u_xlat6.x * _FresnelStr;
					    u_xlat6.x = exp2(u_xlat6.x);
					    u_xlat6.x = u_xlat6.x + u_xlat6.x;
					    vs_TEXCOORD4 = min(u_xlat6.x, 1.0);
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat5 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat5;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlat10.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati3].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati3].xy + u_xlat10.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendMul" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					float u_xlat9;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat9 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat9 = inversesqrt(u_xlat9);
					    u_xlat2.xyz = vec3(u_xlat9) * u_xlat2.xyz;
					    u_xlat9 = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat9 = inversesqrt(u_xlat9);
					    u_xlat3.xyz = vec3(u_xlat9) * in_NORMAL0.xyz;
					    u_xlat9 = dot(u_xlat3.xyz, u_xlat2.xyz);
					    u_xlat9 = log2(abs(u_xlat9));
					    u_xlat9 = u_xlat9 * _FresnelStr;
					    u_xlat9 = exp2(u_xlat9);
					    u_xlat9 = u_xlat9 + u_xlat9;
					    vs_TEXCOORD4 = min(u_xlat9, 1.0);
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat4 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_3_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					vec3 u_xlat5;
					vec2 u_xlat8;
					int u_xlati10;
					float u_xlat15;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    u_xlat5.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat5.x = inversesqrt(u_xlat5.x);
					    u_xlat5.xyz = u_xlat5.xxx * in_NORMAL0.xyz;
					    u_xlati10 = unity_StereoEyeIndex;
					    u_xlat3.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati10].yyy;
					    u_xlat3.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati10].xxx + u_xlat3.xyz;
					    u_xlat3.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati10].zzz + u_xlat3.xyz;
					    u_xlat3.xyz = u_xlat3.xyz + unity_WorldToObject[3].xyz;
					    u_xlat3.xyz = u_xlat3.xyz + (-in_POSITION0.xyz);
					    u_xlat15 = dot(u_xlat3.xyz, u_xlat3.xyz);
					    u_xlat15 = inversesqrt(u_xlat15);
					    u_xlat3.xyz = vec3(u_xlat15) * u_xlat3.xyz;
					    u_xlat5.x = dot(u_xlat5.xyz, u_xlat3.xyz);
					    u_xlat5.x = log2(abs(u_xlat5.x));
					    u_xlat5.x = u_xlat5.x * _FresnelStr;
					    u_xlat5.x = exp2(u_xlat5.x);
					    u_xlat5.x = u_xlat5.x + u_xlat5.x;
					    vs_TEXCOORD4 = min(u_xlat5.x, 1.0);
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat4 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlat8.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati10].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati10].xy + u_xlat8.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendMul" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					float u_xlat9;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat9 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat9 = inversesqrt(u_xlat9);
					    u_xlat2.xyz = vec3(u_xlat9) * u_xlat2.xyz;
					    u_xlat9 = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat9 = inversesqrt(u_xlat9);
					    u_xlat3.xyz = vec3(u_xlat9) * in_NORMAL0.xyz;
					    u_xlat9 = dot(u_xlat3.xyz, u_xlat2.xyz);
					    u_xlat9 = log2(abs(u_xlat9));
					    u_xlat9 = u_xlat9 * _FresnelStr;
					    u_xlat9 = exp2(u_xlat9);
					    u_xlat9 = u_xlat9 + u_xlat9;
					    vs_TEXCOORD4 = min(u_xlat9, 1.0);
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat4 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_3_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					vec3 u_xlat5;
					vec2 u_xlat8;
					int u_xlati10;
					float u_xlat15;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    u_xlat5.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat5.x = inversesqrt(u_xlat5.x);
					    u_xlat5.xyz = u_xlat5.xxx * in_NORMAL0.xyz;
					    u_xlati10 = unity_StereoEyeIndex;
					    u_xlat3.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati10].yyy;
					    u_xlat3.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati10].xxx + u_xlat3.xyz;
					    u_xlat3.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati10].zzz + u_xlat3.xyz;
					    u_xlat3.xyz = u_xlat3.xyz + unity_WorldToObject[3].xyz;
					    u_xlat3.xyz = u_xlat3.xyz + (-in_POSITION0.xyz);
					    u_xlat15 = dot(u_xlat3.xyz, u_xlat3.xyz);
					    u_xlat15 = inversesqrt(u_xlat15);
					    u_xlat3.xyz = vec3(u_xlat15) * u_xlat3.xyz;
					    u_xlat5.x = dot(u_xlat5.xyz, u_xlat3.xyz);
					    u_xlat5.x = log2(abs(u_xlat5.x));
					    u_xlat5.x = u_xlat5.x * _FresnelStr;
					    u_xlat5.x = exp2(u_xlat5.x);
					    u_xlat5.x = u_xlat5.x + u_xlat5.x;
					    vs_TEXCOORD4 = min(u_xlat5.x, 1.0);
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat4 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlat8.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati10].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati10].xy + u_xlat8.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendMul" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					float u_xlat14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat14 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat2.xyz = vec3(u_xlat14) * u_xlat2.xyz;
					    u_xlat14 = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat3.xyz = vec3(u_xlat14) * in_NORMAL0.xyz;
					    u_xlat2.x = dot(u_xlat3.xyz, u_xlat2.xyz);
					    u_xlat2.x = log2(abs(u_xlat2.x));
					    u_xlat2.x = u_xlat2.x * _FresnelStr;
					    u_xlat2.x = exp2(u_xlat2.x);
					    u_xlat2.x = u_xlat2.x + u_xlat2.x;
					    vs_TEXCOORD4 = min(u_xlat2.x, 1.0);
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat4 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_3_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati1;
					vec4 u_xlat2;
					int u_xlati3;
					float u_xlat4;
					float u_xlat5;
					vec3 u_xlat6;
					vec3 u_xlat8;
					vec2 u_xlat10;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    u_xlat6.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat6.x = inversesqrt(u_xlat6.x);
					    u_xlat6.xyz = u_xlat6.xxx * in_NORMAL0.xyz;
					    u_xlati3 = unity_StereoEyeIndex;
					    u_xlat8.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].yyy;
					    u_xlat8.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].xxx + u_xlat8.xyz;
					    u_xlat8.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].zzz + u_xlat8.xyz;
					    u_xlat8.xyz = u_xlat8.xyz + unity_WorldToObject[3].xyz;
					    u_xlat8.xyz = u_xlat8.xyz + (-in_POSITION0.xyz);
					    u_xlat4 = dot(u_xlat8.xyz, u_xlat8.xyz);
					    u_xlat4 = inversesqrt(u_xlat4);
					    u_xlat8.xyz = u_xlat8.xyz * vec3(u_xlat4);
					    u_xlat6.x = dot(u_xlat6.xyz, u_xlat8.xyz);
					    u_xlat6.x = log2(abs(u_xlat6.x));
					    u_xlat6.x = u_xlat6.x * _FresnelStr;
					    u_xlat6.x = exp2(u_xlat6.x);
					    u_xlat6.x = u_xlat6.x + u_xlat6.x;
					    vs_TEXCOORD4 = min(u_xlat6.x, 1.0);
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat5 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat5;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlat10.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati3].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati3].xy + u_xlat10.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendMul" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					float u_xlat14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat14 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat2.xyz = vec3(u_xlat14) * u_xlat2.xyz;
					    u_xlat14 = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat3.xyz = vec3(u_xlat14) * in_NORMAL0.xyz;
					    u_xlat2.x = dot(u_xlat3.xyz, u_xlat2.xyz);
					    u_xlat2.x = log2(abs(u_xlat2.x));
					    u_xlat2.x = u_xlat2.x * _FresnelStr;
					    u_xlat2.x = exp2(u_xlat2.x);
					    u_xlat2.x = u_xlat2.x + u_xlat2.x;
					    vs_TEXCOORD4 = min(u_xlat2.x, 1.0);
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat4 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_3_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati1;
					vec4 u_xlat2;
					int u_xlati3;
					float u_xlat4;
					float u_xlat5;
					vec3 u_xlat6;
					vec3 u_xlat8;
					vec2 u_xlat10;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    u_xlat6.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat6.x = inversesqrt(u_xlat6.x);
					    u_xlat6.xyz = u_xlat6.xxx * in_NORMAL0.xyz;
					    u_xlati3 = unity_StereoEyeIndex;
					    u_xlat8.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].yyy;
					    u_xlat8.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].xxx + u_xlat8.xyz;
					    u_xlat8.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].zzz + u_xlat8.xyz;
					    u_xlat8.xyz = u_xlat8.xyz + unity_WorldToObject[3].xyz;
					    u_xlat8.xyz = u_xlat8.xyz + (-in_POSITION0.xyz);
					    u_xlat4 = dot(u_xlat8.xyz, u_xlat8.xyz);
					    u_xlat4 = inversesqrt(u_xlat4);
					    u_xlat8.xyz = u_xlat8.xyz * vec3(u_xlat4);
					    u_xlat6.x = dot(u_xlat6.xyz, u_xlat8.xyz);
					    u_xlat6.x = log2(abs(u_xlat6.x));
					    u_xlat6.x = u_xlat6.x * _FresnelStr;
					    u_xlat6.x = exp2(u_xlat6.x);
					    u_xlat6.x = u_xlat6.x + u_xlat6.x;
					    vs_TEXCOORD4 = min(u_xlat6.x, 1.0);
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat5 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat5;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlat10.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati3].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati3].xy + u_xlat10.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendMul" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					float u_xlat14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat14 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat2.xyz = vec3(u_xlat14) * u_xlat2.xyz;
					    u_xlat14 = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat3.xyz = vec3(u_xlat14) * in_NORMAL0.xyz;
					    u_xlat2.x = dot(u_xlat3.xyz, u_xlat2.xyz);
					    u_xlat2.x = log2(abs(u_xlat2.x));
					    u_xlat2.x = u_xlat2.x * _FresnelStr;
					    u_xlat2.x = exp2(u_xlat2.x);
					    u_xlat2.x = u_xlat2.x + u_xlat2.x;
					    vs_TEXCOORD4 = min(u_xlat2.x, 1.0);
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat4 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_3_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati1;
					vec4 u_xlat2;
					int u_xlati3;
					float u_xlat4;
					float u_xlat5;
					vec3 u_xlat6;
					vec3 u_xlat8;
					vec2 u_xlat10;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    u_xlat6.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat6.x = inversesqrt(u_xlat6.x);
					    u_xlat6.xyz = u_xlat6.xxx * in_NORMAL0.xyz;
					    u_xlati3 = unity_StereoEyeIndex;
					    u_xlat8.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].yyy;
					    u_xlat8.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].xxx + u_xlat8.xyz;
					    u_xlat8.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].zzz + u_xlat8.xyz;
					    u_xlat8.xyz = u_xlat8.xyz + unity_WorldToObject[3].xyz;
					    u_xlat8.xyz = u_xlat8.xyz + (-in_POSITION0.xyz);
					    u_xlat4 = dot(u_xlat8.xyz, u_xlat8.xyz);
					    u_xlat4 = inversesqrt(u_xlat4);
					    u_xlat8.xyz = u_xlat8.xyz * vec3(u_xlat4);
					    u_xlat6.x = dot(u_xlat6.xyz, u_xlat8.xyz);
					    u_xlat6.x = log2(abs(u_xlat6.x));
					    u_xlat6.x = u_xlat6.x * _FresnelStr;
					    u_xlat6.x = exp2(u_xlat6.x);
					    u_xlat6.x = u_xlat6.x + u_xlat6.x;
					    vs_TEXCOORD4 = min(u_xlat6.x, 1.0);
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat5 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat5;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlat10.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati3].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati3].xy + u_xlat10.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendMul" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					float u_xlat14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat14 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat2.xyz = vec3(u_xlat14) * u_xlat2.xyz;
					    u_xlat14 = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat3.xyz = vec3(u_xlat14) * in_NORMAL0.xyz;
					    u_xlat2.x = dot(u_xlat3.xyz, u_xlat2.xyz);
					    u_xlat2.x = log2(abs(u_xlat2.x));
					    u_xlat2.x = u_xlat2.x * _FresnelStr;
					    u_xlat2.x = exp2(u_xlat2.x);
					    u_xlat2.x = u_xlat2.x + u_xlat2.x;
					    vs_TEXCOORD4 = min(u_xlat2.x, 1.0);
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat4 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_3_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati1;
					vec4 u_xlat2;
					int u_xlati3;
					float u_xlat4;
					float u_xlat5;
					vec3 u_xlat6;
					vec3 u_xlat8;
					vec2 u_xlat10;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    u_xlat6.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat6.x = inversesqrt(u_xlat6.x);
					    u_xlat6.xyz = u_xlat6.xxx * in_NORMAL0.xyz;
					    u_xlati3 = unity_StereoEyeIndex;
					    u_xlat8.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].yyy;
					    u_xlat8.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].xxx + u_xlat8.xyz;
					    u_xlat8.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].zzz + u_xlat8.xyz;
					    u_xlat8.xyz = u_xlat8.xyz + unity_WorldToObject[3].xyz;
					    u_xlat8.xyz = u_xlat8.xyz + (-in_POSITION0.xyz);
					    u_xlat4 = dot(u_xlat8.xyz, u_xlat8.xyz);
					    u_xlat4 = inversesqrt(u_xlat4);
					    u_xlat8.xyz = u_xlat8.xyz * vec3(u_xlat4);
					    u_xlat6.x = dot(u_xlat6.xyz, u_xlat8.xyz);
					    u_xlat6.x = log2(abs(u_xlat6.x));
					    u_xlat6.x = u_xlat6.x * _FresnelStr;
					    u_xlat6.x = exp2(u_xlat6.x);
					    u_xlat6.x = u_xlat6.x + u_xlat6.x;
					    vs_TEXCOORD4 = min(u_xlat6.x, 1.0);
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat5 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat5;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlat10.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati3].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati3].xy + u_xlat10.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendMul" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					float u_xlat14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat14 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat2.xyz = vec3(u_xlat14) * u_xlat2.xyz;
					    u_xlat14 = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat3.xyz = vec3(u_xlat14) * in_NORMAL0.xyz;
					    u_xlat2.x = dot(u_xlat3.xyz, u_xlat2.xyz);
					    u_xlat2.x = log2(abs(u_xlat2.x));
					    u_xlat2.x = u_xlat2.x * _FresnelStr;
					    u_xlat2.x = exp2(u_xlat2.x);
					    u_xlat2.x = u_xlat2.x + u_xlat2.x;
					    vs_TEXCOORD4 = min(u_xlat2.x, 1.0);
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat4 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_3_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati1;
					vec4 u_xlat2;
					int u_xlati3;
					float u_xlat4;
					float u_xlat5;
					vec3 u_xlat6;
					vec3 u_xlat8;
					vec2 u_xlat10;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    u_xlat6.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat6.x = inversesqrt(u_xlat6.x);
					    u_xlat6.xyz = u_xlat6.xxx * in_NORMAL0.xyz;
					    u_xlati3 = unity_StereoEyeIndex;
					    u_xlat8.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].yyy;
					    u_xlat8.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].xxx + u_xlat8.xyz;
					    u_xlat8.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].zzz + u_xlat8.xyz;
					    u_xlat8.xyz = u_xlat8.xyz + unity_WorldToObject[3].xyz;
					    u_xlat8.xyz = u_xlat8.xyz + (-in_POSITION0.xyz);
					    u_xlat4 = dot(u_xlat8.xyz, u_xlat8.xyz);
					    u_xlat4 = inversesqrt(u_xlat4);
					    u_xlat8.xyz = u_xlat8.xyz * vec3(u_xlat4);
					    u_xlat6.x = dot(u_xlat6.xyz, u_xlat8.xyz);
					    u_xlat6.x = log2(abs(u_xlat6.x));
					    u_xlat6.x = u_xlat6.x * _FresnelStr;
					    u_xlat6.x = exp2(u_xlat6.x);
					    u_xlat6.x = u_xlat6.x + u_xlat6.x;
					    vs_TEXCOORD4 = min(u_xlat6.x, 1.0);
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat5 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat5;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlat10.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati3].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati3].xy + u_xlat10.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendMul" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					float u_xlat14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat14 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat2.xyz = vec3(u_xlat14) * u_xlat2.xyz;
					    u_xlat14 = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat3.xyz = vec3(u_xlat14) * in_NORMAL0.xyz;
					    u_xlat2.x = dot(u_xlat3.xyz, u_xlat2.xyz);
					    u_xlat2.x = log2(abs(u_xlat2.x));
					    u_xlat2.x = u_xlat2.x * _FresnelStr;
					    u_xlat2.x = exp2(u_xlat2.x);
					    u_xlat2.x = u_xlat2.x + u_xlat2.x;
					    vs_TEXCOORD4 = min(u_xlat2.x, 1.0);
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat4 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_3_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati1;
					vec4 u_xlat2;
					int u_xlati3;
					float u_xlat4;
					float u_xlat5;
					vec3 u_xlat6;
					vec3 u_xlat8;
					vec2 u_xlat10;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    u_xlat6.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat6.x = inversesqrt(u_xlat6.x);
					    u_xlat6.xyz = u_xlat6.xxx * in_NORMAL0.xyz;
					    u_xlati3 = unity_StereoEyeIndex;
					    u_xlat8.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].yyy;
					    u_xlat8.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].xxx + u_xlat8.xyz;
					    u_xlat8.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].zzz + u_xlat8.xyz;
					    u_xlat8.xyz = u_xlat8.xyz + unity_WorldToObject[3].xyz;
					    u_xlat8.xyz = u_xlat8.xyz + (-in_POSITION0.xyz);
					    u_xlat4 = dot(u_xlat8.xyz, u_xlat8.xyz);
					    u_xlat4 = inversesqrt(u_xlat4);
					    u_xlat8.xyz = u_xlat8.xyz * vec3(u_xlat4);
					    u_xlat6.x = dot(u_xlat6.xyz, u_xlat8.xyz);
					    u_xlat6.x = log2(abs(u_xlat6.x));
					    u_xlat6.x = u_xlat6.x * _FresnelStr;
					    u_xlat6.x = exp2(u_xlat6.x);
					    u_xlat6.x = u_xlat6.x + u_xlat6.x;
					    vs_TEXCOORD4 = min(u_xlat6.x, 1.0);
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat5 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat5;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlat10.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati3].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati3].xy + u_xlat10.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendMul" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat2 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat2;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec2 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					float u_xlat3;
					int u_xlati6;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat3 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat3;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlati6 = unity_StereoEyeIndex;
					    u_xlat1.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati6].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati6].xy + u_xlat1.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendMul" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat2 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat2;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec2 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					float u_xlat3;
					int u_xlati6;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat3 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat3;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlati6 = unity_StereoEyeIndex;
					    u_xlat1.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati6].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati6].xy + u_xlat1.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendMul" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat2 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat2;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec2 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					float u_xlat3;
					int u_xlati6;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat3 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat3;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlati6 = unity_StereoEyeIndex;
					    u_xlat1.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati6].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati6].xy + u_xlat1.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendMul" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat2 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat2;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec2 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					float u_xlat3;
					int u_xlati6;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat3 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat3;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlati6 = unity_StereoEyeIndex;
					    u_xlat1.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati6].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati6].xy + u_xlat1.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendMul" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat2 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat2;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec2 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					float u_xlat3;
					int u_xlati6;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat3 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat3;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlati6 = unity_StereoEyeIndex;
					    u_xlat1.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati6].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati6].xy + u_xlat1.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendMul" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat2 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat2;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec2 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					float u_xlat3;
					int u_xlati6;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat3 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat3;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlati6 = unity_StereoEyeIndex;
					    u_xlat1.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati6].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati6].xy + u_xlat1.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendMul" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat2 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat2;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec2 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					float u_xlat3;
					int u_xlati6;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat3 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat3;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlati6 = unity_StereoEyeIndex;
					    u_xlat1.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati6].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati6].xy + u_xlat1.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendMul" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat2 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat2;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec2 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					float u_xlat3;
					int u_xlati6;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat3 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat3;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlati6 = unity_StereoEyeIndex;
					    u_xlat1.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati6].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati6].xy + u_xlat1.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendMul" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat2 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat2;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec2 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					float u_xlat3;
					int u_xlati6;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat3 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat3;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlati6 = unity_StereoEyeIndex;
					    u_xlat1.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati6].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati6].xy + u_xlat1.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendMul" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat2 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat2;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec2 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					float u_xlat3;
					int u_xlati6;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat3 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat3;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlati6 = unity_StereoEyeIndex;
					    u_xlat1.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati6].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati6].xy + u_xlat1.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendMul" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat2 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat2;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec2 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					float u_xlat3;
					int u_xlati6;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat3 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat3;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlati6 = unity_StereoEyeIndex;
					    u_xlat1.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati6].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati6].xy + u_xlat1.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendMul" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat2 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat2;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec2 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					float u_xlat3;
					int u_xlati6;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat3 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat3;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlati6 = unity_StereoEyeIndex;
					    u_xlat1.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati6].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati6].xy + u_xlat1.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendMul" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat2 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat2;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec2 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					float u_xlat3;
					int u_xlati6;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat3 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat3;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlati6 = unity_StereoEyeIndex;
					    u_xlat1.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati6].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati6].xy + u_xlat1.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendMul" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat2 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat2;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec2 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					float u_xlat3;
					int u_xlati6;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat3 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat3;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlati6 = unity_StereoEyeIndex;
					    u_xlat1.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati6].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati6].xy + u_xlat1.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendMul" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat2 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat2;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec2 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					float u_xlat3;
					int u_xlati6;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat3 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat3;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlati6 = unity_StereoEyeIndex;
					    u_xlat1.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati6].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati6].xy + u_xlat1.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendMul" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat2 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat2;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec2 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					float u_xlat3;
					int u_xlati6;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat3 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat3;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlati6 = unity_StereoEyeIndex;
					    u_xlat1.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati6].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati6].xy + u_xlat1.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendMul" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					float u_xlat9;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat9 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat9 = inversesqrt(u_xlat9);
					    u_xlat2.xyz = vec3(u_xlat9) * u_xlat2.xyz;
					    u_xlat9 = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat9 = inversesqrt(u_xlat9);
					    u_xlat3.xyz = vec3(u_xlat9) * in_NORMAL0.xyz;
					    u_xlat9 = dot(u_xlat3.xyz, u_xlat2.xyz);
					    u_xlat9 = log2(abs(u_xlat9));
					    u_xlat9 = u_xlat9 * _FresnelStr;
					    u_xlat9 = exp2(u_xlat9);
					    u_xlat9 = u_xlat9 + u_xlat9;
					    vs_TEXCOORD4 = min(u_xlat9, 1.0);
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat4 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_3_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					vec3 u_xlat5;
					vec2 u_xlat8;
					int u_xlati10;
					float u_xlat15;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    u_xlat5.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat5.x = inversesqrt(u_xlat5.x);
					    u_xlat5.xyz = u_xlat5.xxx * in_NORMAL0.xyz;
					    u_xlati10 = unity_StereoEyeIndex;
					    u_xlat3.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati10].yyy;
					    u_xlat3.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati10].xxx + u_xlat3.xyz;
					    u_xlat3.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati10].zzz + u_xlat3.xyz;
					    u_xlat3.xyz = u_xlat3.xyz + unity_WorldToObject[3].xyz;
					    u_xlat3.xyz = u_xlat3.xyz + (-in_POSITION0.xyz);
					    u_xlat15 = dot(u_xlat3.xyz, u_xlat3.xyz);
					    u_xlat15 = inversesqrt(u_xlat15);
					    u_xlat3.xyz = vec3(u_xlat15) * u_xlat3.xyz;
					    u_xlat5.x = dot(u_xlat5.xyz, u_xlat3.xyz);
					    u_xlat5.x = log2(abs(u_xlat5.x));
					    u_xlat5.x = u_xlat5.x * _FresnelStr;
					    u_xlat5.x = exp2(u_xlat5.x);
					    u_xlat5.x = u_xlat5.x + u_xlat5.x;
					    vs_TEXCOORD4 = min(u_xlat5.x, 1.0);
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat4 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlat8.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati10].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati10].xy + u_xlat8.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendMul" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					float u_xlat9;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat9 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat9 = inversesqrt(u_xlat9);
					    u_xlat2.xyz = vec3(u_xlat9) * u_xlat2.xyz;
					    u_xlat9 = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat9 = inversesqrt(u_xlat9);
					    u_xlat3.xyz = vec3(u_xlat9) * in_NORMAL0.xyz;
					    u_xlat9 = dot(u_xlat3.xyz, u_xlat2.xyz);
					    u_xlat9 = log2(abs(u_xlat9));
					    u_xlat9 = u_xlat9 * _FresnelStr;
					    u_xlat9 = exp2(u_xlat9);
					    u_xlat9 = u_xlat9 + u_xlat9;
					    vs_TEXCOORD4 = min(u_xlat9, 1.0);
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat4 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_3_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					vec3 u_xlat5;
					vec2 u_xlat8;
					int u_xlati10;
					float u_xlat15;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    u_xlat5.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat5.x = inversesqrt(u_xlat5.x);
					    u_xlat5.xyz = u_xlat5.xxx * in_NORMAL0.xyz;
					    u_xlati10 = unity_StereoEyeIndex;
					    u_xlat3.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati10].yyy;
					    u_xlat3.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati10].xxx + u_xlat3.xyz;
					    u_xlat3.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati10].zzz + u_xlat3.xyz;
					    u_xlat3.xyz = u_xlat3.xyz + unity_WorldToObject[3].xyz;
					    u_xlat3.xyz = u_xlat3.xyz + (-in_POSITION0.xyz);
					    u_xlat15 = dot(u_xlat3.xyz, u_xlat3.xyz);
					    u_xlat15 = inversesqrt(u_xlat15);
					    u_xlat3.xyz = vec3(u_xlat15) * u_xlat3.xyz;
					    u_xlat5.x = dot(u_xlat5.xyz, u_xlat3.xyz);
					    u_xlat5.x = log2(abs(u_xlat5.x));
					    u_xlat5.x = u_xlat5.x * _FresnelStr;
					    u_xlat5.x = exp2(u_xlat5.x);
					    u_xlat5.x = u_xlat5.x + u_xlat5.x;
					    vs_TEXCOORD4 = min(u_xlat5.x, 1.0);
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat4 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlat8.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati10].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati10].xy + u_xlat8.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendMul" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					float u_xlat14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat14 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat2.xyz = vec3(u_xlat14) * u_xlat2.xyz;
					    u_xlat14 = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat3.xyz = vec3(u_xlat14) * in_NORMAL0.xyz;
					    u_xlat2.x = dot(u_xlat3.xyz, u_xlat2.xyz);
					    u_xlat2.x = log2(abs(u_xlat2.x));
					    u_xlat2.x = u_xlat2.x * _FresnelStr;
					    u_xlat2.x = exp2(u_xlat2.x);
					    u_xlat2.x = u_xlat2.x + u_xlat2.x;
					    vs_TEXCOORD4 = min(u_xlat2.x, 1.0);
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat4 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_3_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati1;
					vec4 u_xlat2;
					int u_xlati3;
					float u_xlat4;
					float u_xlat5;
					vec3 u_xlat6;
					vec3 u_xlat8;
					vec2 u_xlat10;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    u_xlat6.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat6.x = inversesqrt(u_xlat6.x);
					    u_xlat6.xyz = u_xlat6.xxx * in_NORMAL0.xyz;
					    u_xlati3 = unity_StereoEyeIndex;
					    u_xlat8.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].yyy;
					    u_xlat8.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].xxx + u_xlat8.xyz;
					    u_xlat8.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].zzz + u_xlat8.xyz;
					    u_xlat8.xyz = u_xlat8.xyz + unity_WorldToObject[3].xyz;
					    u_xlat8.xyz = u_xlat8.xyz + (-in_POSITION0.xyz);
					    u_xlat4 = dot(u_xlat8.xyz, u_xlat8.xyz);
					    u_xlat4 = inversesqrt(u_xlat4);
					    u_xlat8.xyz = u_xlat8.xyz * vec3(u_xlat4);
					    u_xlat6.x = dot(u_xlat6.xyz, u_xlat8.xyz);
					    u_xlat6.x = log2(abs(u_xlat6.x));
					    u_xlat6.x = u_xlat6.x * _FresnelStr;
					    u_xlat6.x = exp2(u_xlat6.x);
					    u_xlat6.x = u_xlat6.x + u_xlat6.x;
					    vs_TEXCOORD4 = min(u_xlat6.x, 1.0);
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat5 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat5;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlat10.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati3].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati3].xy + u_xlat10.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendMul" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					float u_xlat14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat14 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat2.xyz = vec3(u_xlat14) * u_xlat2.xyz;
					    u_xlat14 = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat3.xyz = vec3(u_xlat14) * in_NORMAL0.xyz;
					    u_xlat2.x = dot(u_xlat3.xyz, u_xlat2.xyz);
					    u_xlat2.x = log2(abs(u_xlat2.x));
					    u_xlat2.x = u_xlat2.x * _FresnelStr;
					    u_xlat2.x = exp2(u_xlat2.x);
					    u_xlat2.x = u_xlat2.x + u_xlat2.x;
					    vs_TEXCOORD4 = min(u_xlat2.x, 1.0);
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat4 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_3_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati1;
					vec4 u_xlat2;
					int u_xlati3;
					float u_xlat4;
					float u_xlat5;
					vec3 u_xlat6;
					vec3 u_xlat8;
					vec2 u_xlat10;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    u_xlat6.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat6.x = inversesqrt(u_xlat6.x);
					    u_xlat6.xyz = u_xlat6.xxx * in_NORMAL0.xyz;
					    u_xlati3 = unity_StereoEyeIndex;
					    u_xlat8.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].yyy;
					    u_xlat8.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].xxx + u_xlat8.xyz;
					    u_xlat8.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].zzz + u_xlat8.xyz;
					    u_xlat8.xyz = u_xlat8.xyz + unity_WorldToObject[3].xyz;
					    u_xlat8.xyz = u_xlat8.xyz + (-in_POSITION0.xyz);
					    u_xlat4 = dot(u_xlat8.xyz, u_xlat8.xyz);
					    u_xlat4 = inversesqrt(u_xlat4);
					    u_xlat8.xyz = u_xlat8.xyz * vec3(u_xlat4);
					    u_xlat6.x = dot(u_xlat6.xyz, u_xlat8.xyz);
					    u_xlat6.x = log2(abs(u_xlat6.x));
					    u_xlat6.x = u_xlat6.x * _FresnelStr;
					    u_xlat6.x = exp2(u_xlat6.x);
					    u_xlat6.x = u_xlat6.x + u_xlat6.x;
					    vs_TEXCOORD4 = min(u_xlat6.x, 1.0);
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat5 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat5;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlat10.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati3].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati3].xy + u_xlat10.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendMul" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					float u_xlat14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat14 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat2.xyz = vec3(u_xlat14) * u_xlat2.xyz;
					    u_xlat14 = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat3.xyz = vec3(u_xlat14) * in_NORMAL0.xyz;
					    u_xlat2.x = dot(u_xlat3.xyz, u_xlat2.xyz);
					    u_xlat2.x = log2(abs(u_xlat2.x));
					    u_xlat2.x = u_xlat2.x * _FresnelStr;
					    u_xlat2.x = exp2(u_xlat2.x);
					    u_xlat2.x = u_xlat2.x + u_xlat2.x;
					    vs_TEXCOORD4 = min(u_xlat2.x, 1.0);
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat4 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_3_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati1;
					vec4 u_xlat2;
					int u_xlati3;
					float u_xlat4;
					float u_xlat5;
					vec3 u_xlat6;
					vec3 u_xlat8;
					vec2 u_xlat10;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    u_xlat6.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat6.x = inversesqrt(u_xlat6.x);
					    u_xlat6.xyz = u_xlat6.xxx * in_NORMAL0.xyz;
					    u_xlati3 = unity_StereoEyeIndex;
					    u_xlat8.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].yyy;
					    u_xlat8.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].xxx + u_xlat8.xyz;
					    u_xlat8.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].zzz + u_xlat8.xyz;
					    u_xlat8.xyz = u_xlat8.xyz + unity_WorldToObject[3].xyz;
					    u_xlat8.xyz = u_xlat8.xyz + (-in_POSITION0.xyz);
					    u_xlat4 = dot(u_xlat8.xyz, u_xlat8.xyz);
					    u_xlat4 = inversesqrt(u_xlat4);
					    u_xlat8.xyz = u_xlat8.xyz * vec3(u_xlat4);
					    u_xlat6.x = dot(u_xlat6.xyz, u_xlat8.xyz);
					    u_xlat6.x = log2(abs(u_xlat6.x));
					    u_xlat6.x = u_xlat6.x * _FresnelStr;
					    u_xlat6.x = exp2(u_xlat6.x);
					    u_xlat6.x = u_xlat6.x + u_xlat6.x;
					    vs_TEXCOORD4 = min(u_xlat6.x, 1.0);
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat5 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat5;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlat10.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati3].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati3].xy + u_xlat10.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendMul" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					float u_xlat14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat14 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat2.xyz = vec3(u_xlat14) * u_xlat2.xyz;
					    u_xlat14 = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat3.xyz = vec3(u_xlat14) * in_NORMAL0.xyz;
					    u_xlat2.x = dot(u_xlat3.xyz, u_xlat2.xyz);
					    u_xlat2.x = log2(abs(u_xlat2.x));
					    u_xlat2.x = u_xlat2.x * _FresnelStr;
					    u_xlat2.x = exp2(u_xlat2.x);
					    u_xlat2.x = u_xlat2.x + u_xlat2.x;
					    vs_TEXCOORD4 = min(u_xlat2.x, 1.0);
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat4 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_3_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati1;
					vec4 u_xlat2;
					int u_xlati3;
					float u_xlat4;
					float u_xlat5;
					vec3 u_xlat6;
					vec3 u_xlat8;
					vec2 u_xlat10;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    u_xlat6.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat6.x = inversesqrt(u_xlat6.x);
					    u_xlat6.xyz = u_xlat6.xxx * in_NORMAL0.xyz;
					    u_xlati3 = unity_StereoEyeIndex;
					    u_xlat8.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].yyy;
					    u_xlat8.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].xxx + u_xlat8.xyz;
					    u_xlat8.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].zzz + u_xlat8.xyz;
					    u_xlat8.xyz = u_xlat8.xyz + unity_WorldToObject[3].xyz;
					    u_xlat8.xyz = u_xlat8.xyz + (-in_POSITION0.xyz);
					    u_xlat4 = dot(u_xlat8.xyz, u_xlat8.xyz);
					    u_xlat4 = inversesqrt(u_xlat4);
					    u_xlat8.xyz = u_xlat8.xyz * vec3(u_xlat4);
					    u_xlat6.x = dot(u_xlat6.xyz, u_xlat8.xyz);
					    u_xlat6.x = log2(abs(u_xlat6.x));
					    u_xlat6.x = u_xlat6.x * _FresnelStr;
					    u_xlat6.x = exp2(u_xlat6.x);
					    u_xlat6.x = u_xlat6.x + u_xlat6.x;
					    vs_TEXCOORD4 = min(u_xlat6.x, 1.0);
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat5 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat5;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlat10.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati3].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati3].xy + u_xlat10.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendMul" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					float u_xlat14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat14 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat2.xyz = vec3(u_xlat14) * u_xlat2.xyz;
					    u_xlat14 = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat3.xyz = vec3(u_xlat14) * in_NORMAL0.xyz;
					    u_xlat2.x = dot(u_xlat3.xyz, u_xlat2.xyz);
					    u_xlat2.x = log2(abs(u_xlat2.x));
					    u_xlat2.x = u_xlat2.x * _FresnelStr;
					    u_xlat2.x = exp2(u_xlat2.x);
					    u_xlat2.x = u_xlat2.x + u_xlat2.x;
					    vs_TEXCOORD4 = min(u_xlat2.x, 1.0);
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat4 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_3_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati1;
					vec4 u_xlat2;
					int u_xlati3;
					float u_xlat4;
					float u_xlat5;
					vec3 u_xlat6;
					vec3 u_xlat8;
					vec2 u_xlat10;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    u_xlat6.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat6.x = inversesqrt(u_xlat6.x);
					    u_xlat6.xyz = u_xlat6.xxx * in_NORMAL0.xyz;
					    u_xlati3 = unity_StereoEyeIndex;
					    u_xlat8.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].yyy;
					    u_xlat8.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].xxx + u_xlat8.xyz;
					    u_xlat8.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].zzz + u_xlat8.xyz;
					    u_xlat8.xyz = u_xlat8.xyz + unity_WorldToObject[3].xyz;
					    u_xlat8.xyz = u_xlat8.xyz + (-in_POSITION0.xyz);
					    u_xlat4 = dot(u_xlat8.xyz, u_xlat8.xyz);
					    u_xlat4 = inversesqrt(u_xlat4);
					    u_xlat8.xyz = u_xlat8.xyz * vec3(u_xlat4);
					    u_xlat6.x = dot(u_xlat6.xyz, u_xlat8.xyz);
					    u_xlat6.x = log2(abs(u_xlat6.x));
					    u_xlat6.x = u_xlat6.x * _FresnelStr;
					    u_xlat6.x = exp2(u_xlat6.x);
					    u_xlat6.x = u_xlat6.x + u_xlat6.x;
					    vs_TEXCOORD4 = min(u_xlat6.x, 1.0);
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat5 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat5;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlat10.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati3].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati3].xy + u_xlat10.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendMul" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					float u_xlat14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat14 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat2.xyz = vec3(u_xlat14) * u_xlat2.xyz;
					    u_xlat14 = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat3.xyz = vec3(u_xlat14) * in_NORMAL0.xyz;
					    u_xlat2.x = dot(u_xlat3.xyz, u_xlat2.xyz);
					    u_xlat2.x = log2(abs(u_xlat2.x));
					    u_xlat2.x = u_xlat2.x * _FresnelStr;
					    u_xlat2.x = exp2(u_xlat2.x);
					    u_xlat2.x = u_xlat2.x + u_xlat2.x;
					    vs_TEXCOORD4 = min(u_xlat2.x, 1.0);
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat4 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_3_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati1;
					vec4 u_xlat2;
					int u_xlati3;
					float u_xlat4;
					float u_xlat5;
					vec3 u_xlat6;
					vec3 u_xlat8;
					vec2 u_xlat10;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    u_xlat6.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat6.x = inversesqrt(u_xlat6.x);
					    u_xlat6.xyz = u_xlat6.xxx * in_NORMAL0.xyz;
					    u_xlati3 = unity_StereoEyeIndex;
					    u_xlat8.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].yyy;
					    u_xlat8.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].xxx + u_xlat8.xyz;
					    u_xlat8.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].zzz + u_xlat8.xyz;
					    u_xlat8.xyz = u_xlat8.xyz + unity_WorldToObject[3].xyz;
					    u_xlat8.xyz = u_xlat8.xyz + (-in_POSITION0.xyz);
					    u_xlat4 = dot(u_xlat8.xyz, u_xlat8.xyz);
					    u_xlat4 = inversesqrt(u_xlat4);
					    u_xlat8.xyz = u_xlat8.xyz * vec3(u_xlat4);
					    u_xlat6.x = dot(u_xlat6.xyz, u_xlat8.xyz);
					    u_xlat6.x = log2(abs(u_xlat6.x));
					    u_xlat6.x = u_xlat6.x * _FresnelStr;
					    u_xlat6.x = exp2(u_xlat6.x);
					    u_xlat6.x = u_xlat6.x + u_xlat6.x;
					    vs_TEXCOORD4 = min(u_xlat6.x, 1.0);
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat5 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat5;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlat10.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati3].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati3].xy + u_xlat10.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendMul" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					float u_xlat9;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat9 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat9 = inversesqrt(u_xlat9);
					    u_xlat2.xyz = vec3(u_xlat9) * u_xlat2.xyz;
					    u_xlat9 = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat9 = inversesqrt(u_xlat9);
					    u_xlat3.xyz = vec3(u_xlat9) * in_NORMAL0.xyz;
					    u_xlat9 = dot(u_xlat3.xyz, u_xlat2.xyz);
					    u_xlat9 = log2(abs(u_xlat9));
					    u_xlat9 = u_xlat9 * _FresnelStr;
					    u_xlat9 = exp2(u_xlat9);
					    u_xlat9 = u_xlat9 + u_xlat9;
					    vs_TEXCOORD4 = min(u_xlat9, 1.0);
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat4 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_3_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					vec3 u_xlat5;
					vec2 u_xlat8;
					int u_xlati10;
					float u_xlat15;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    u_xlat5.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat5.x = inversesqrt(u_xlat5.x);
					    u_xlat5.xyz = u_xlat5.xxx * in_NORMAL0.xyz;
					    u_xlati10 = unity_StereoEyeIndex;
					    u_xlat3.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati10].yyy;
					    u_xlat3.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati10].xxx + u_xlat3.xyz;
					    u_xlat3.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati10].zzz + u_xlat3.xyz;
					    u_xlat3.xyz = u_xlat3.xyz + unity_WorldToObject[3].xyz;
					    u_xlat3.xyz = u_xlat3.xyz + (-in_POSITION0.xyz);
					    u_xlat15 = dot(u_xlat3.xyz, u_xlat3.xyz);
					    u_xlat15 = inversesqrt(u_xlat15);
					    u_xlat3.xyz = vec3(u_xlat15) * u_xlat3.xyz;
					    u_xlat5.x = dot(u_xlat5.xyz, u_xlat3.xyz);
					    u_xlat5.x = log2(abs(u_xlat5.x));
					    u_xlat5.x = u_xlat5.x * _FresnelStr;
					    u_xlat5.x = exp2(u_xlat5.x);
					    u_xlat5.x = u_xlat5.x + u_xlat5.x;
					    vs_TEXCOORD4 = min(u_xlat5.x, 1.0);
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat4 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlat8.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati10].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati10].xy + u_xlat8.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendMul" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					float u_xlat9;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat9 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat9 = inversesqrt(u_xlat9);
					    u_xlat2.xyz = vec3(u_xlat9) * u_xlat2.xyz;
					    u_xlat9 = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat9 = inversesqrt(u_xlat9);
					    u_xlat3.xyz = vec3(u_xlat9) * in_NORMAL0.xyz;
					    u_xlat9 = dot(u_xlat3.xyz, u_xlat2.xyz);
					    u_xlat9 = log2(abs(u_xlat9));
					    u_xlat9 = u_xlat9 * _FresnelStr;
					    u_xlat9 = exp2(u_xlat9);
					    u_xlat9 = u_xlat9 + u_xlat9;
					    vs_TEXCOORD4 = min(u_xlat9, 1.0);
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat4 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_3_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					vec3 u_xlat5;
					vec2 u_xlat8;
					int u_xlati10;
					float u_xlat15;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    u_xlat5.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat5.x = inversesqrt(u_xlat5.x);
					    u_xlat5.xyz = u_xlat5.xxx * in_NORMAL0.xyz;
					    u_xlati10 = unity_StereoEyeIndex;
					    u_xlat3.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati10].yyy;
					    u_xlat3.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati10].xxx + u_xlat3.xyz;
					    u_xlat3.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati10].zzz + u_xlat3.xyz;
					    u_xlat3.xyz = u_xlat3.xyz + unity_WorldToObject[3].xyz;
					    u_xlat3.xyz = u_xlat3.xyz + (-in_POSITION0.xyz);
					    u_xlat15 = dot(u_xlat3.xyz, u_xlat3.xyz);
					    u_xlat15 = inversesqrt(u_xlat15);
					    u_xlat3.xyz = vec3(u_xlat15) * u_xlat3.xyz;
					    u_xlat5.x = dot(u_xlat5.xyz, u_xlat3.xyz);
					    u_xlat5.x = log2(abs(u_xlat5.x));
					    u_xlat5.x = u_xlat5.x * _FresnelStr;
					    u_xlat5.x = exp2(u_xlat5.x);
					    u_xlat5.x = u_xlat5.x + u_xlat5.x;
					    vs_TEXCOORD4 = min(u_xlat5.x, 1.0);
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat4 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlat8.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati10].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati10].xy + u_xlat8.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendMul" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					float u_xlat14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat14 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat2.xyz = vec3(u_xlat14) * u_xlat2.xyz;
					    u_xlat14 = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat3.xyz = vec3(u_xlat14) * in_NORMAL0.xyz;
					    u_xlat2.x = dot(u_xlat3.xyz, u_xlat2.xyz);
					    u_xlat2.x = log2(abs(u_xlat2.x));
					    u_xlat2.x = u_xlat2.x * _FresnelStr;
					    u_xlat2.x = exp2(u_xlat2.x);
					    u_xlat2.x = u_xlat2.x + u_xlat2.x;
					    vs_TEXCOORD4 = min(u_xlat2.x, 1.0);
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat4 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_3_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati1;
					vec4 u_xlat2;
					int u_xlati3;
					float u_xlat4;
					float u_xlat5;
					vec3 u_xlat6;
					vec3 u_xlat8;
					vec2 u_xlat10;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    u_xlat6.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat6.x = inversesqrt(u_xlat6.x);
					    u_xlat6.xyz = u_xlat6.xxx * in_NORMAL0.xyz;
					    u_xlati3 = unity_StereoEyeIndex;
					    u_xlat8.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].yyy;
					    u_xlat8.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].xxx + u_xlat8.xyz;
					    u_xlat8.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].zzz + u_xlat8.xyz;
					    u_xlat8.xyz = u_xlat8.xyz + unity_WorldToObject[3].xyz;
					    u_xlat8.xyz = u_xlat8.xyz + (-in_POSITION0.xyz);
					    u_xlat4 = dot(u_xlat8.xyz, u_xlat8.xyz);
					    u_xlat4 = inversesqrt(u_xlat4);
					    u_xlat8.xyz = u_xlat8.xyz * vec3(u_xlat4);
					    u_xlat6.x = dot(u_xlat6.xyz, u_xlat8.xyz);
					    u_xlat6.x = log2(abs(u_xlat6.x));
					    u_xlat6.x = u_xlat6.x * _FresnelStr;
					    u_xlat6.x = exp2(u_xlat6.x);
					    u_xlat6.x = u_xlat6.x + u_xlat6.x;
					    vs_TEXCOORD4 = min(u_xlat6.x, 1.0);
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat5 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat5;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlat10.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati3].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati3].xy + u_xlat10.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendMul" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					float u_xlat14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat14 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat2.xyz = vec3(u_xlat14) * u_xlat2.xyz;
					    u_xlat14 = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat3.xyz = vec3(u_xlat14) * in_NORMAL0.xyz;
					    u_xlat2.x = dot(u_xlat3.xyz, u_xlat2.xyz);
					    u_xlat2.x = log2(abs(u_xlat2.x));
					    u_xlat2.x = u_xlat2.x * _FresnelStr;
					    u_xlat2.x = exp2(u_xlat2.x);
					    u_xlat2.x = u_xlat2.x + u_xlat2.x;
					    vs_TEXCOORD4 = min(u_xlat2.x, 1.0);
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat4 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_3_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati1;
					vec4 u_xlat2;
					int u_xlati3;
					float u_xlat4;
					float u_xlat5;
					vec3 u_xlat6;
					vec3 u_xlat8;
					vec2 u_xlat10;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    u_xlat6.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat6.x = inversesqrt(u_xlat6.x);
					    u_xlat6.xyz = u_xlat6.xxx * in_NORMAL0.xyz;
					    u_xlati3 = unity_StereoEyeIndex;
					    u_xlat8.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].yyy;
					    u_xlat8.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].xxx + u_xlat8.xyz;
					    u_xlat8.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].zzz + u_xlat8.xyz;
					    u_xlat8.xyz = u_xlat8.xyz + unity_WorldToObject[3].xyz;
					    u_xlat8.xyz = u_xlat8.xyz + (-in_POSITION0.xyz);
					    u_xlat4 = dot(u_xlat8.xyz, u_xlat8.xyz);
					    u_xlat4 = inversesqrt(u_xlat4);
					    u_xlat8.xyz = u_xlat8.xyz * vec3(u_xlat4);
					    u_xlat6.x = dot(u_xlat6.xyz, u_xlat8.xyz);
					    u_xlat6.x = log2(abs(u_xlat6.x));
					    u_xlat6.x = u_xlat6.x * _FresnelStr;
					    u_xlat6.x = exp2(u_xlat6.x);
					    u_xlat6.x = u_xlat6.x + u_xlat6.x;
					    vs_TEXCOORD4 = min(u_xlat6.x, 1.0);
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat5 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat5;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlat10.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati3].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati3].xy + u_xlat10.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendMul" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					float u_xlat14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat14 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat2.xyz = vec3(u_xlat14) * u_xlat2.xyz;
					    u_xlat14 = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat3.xyz = vec3(u_xlat14) * in_NORMAL0.xyz;
					    u_xlat2.x = dot(u_xlat3.xyz, u_xlat2.xyz);
					    u_xlat2.x = log2(abs(u_xlat2.x));
					    u_xlat2.x = u_xlat2.x * _FresnelStr;
					    u_xlat2.x = exp2(u_xlat2.x);
					    u_xlat2.x = u_xlat2.x + u_xlat2.x;
					    vs_TEXCOORD4 = min(u_xlat2.x, 1.0);
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat4 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_3_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati1;
					vec4 u_xlat2;
					int u_xlati3;
					float u_xlat4;
					float u_xlat5;
					vec3 u_xlat6;
					vec3 u_xlat8;
					vec2 u_xlat10;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    u_xlat6.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat6.x = inversesqrt(u_xlat6.x);
					    u_xlat6.xyz = u_xlat6.xxx * in_NORMAL0.xyz;
					    u_xlati3 = unity_StereoEyeIndex;
					    u_xlat8.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].yyy;
					    u_xlat8.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].xxx + u_xlat8.xyz;
					    u_xlat8.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].zzz + u_xlat8.xyz;
					    u_xlat8.xyz = u_xlat8.xyz + unity_WorldToObject[3].xyz;
					    u_xlat8.xyz = u_xlat8.xyz + (-in_POSITION0.xyz);
					    u_xlat4 = dot(u_xlat8.xyz, u_xlat8.xyz);
					    u_xlat4 = inversesqrt(u_xlat4);
					    u_xlat8.xyz = u_xlat8.xyz * vec3(u_xlat4);
					    u_xlat6.x = dot(u_xlat6.xyz, u_xlat8.xyz);
					    u_xlat6.x = log2(abs(u_xlat6.x));
					    u_xlat6.x = u_xlat6.x * _FresnelStr;
					    u_xlat6.x = exp2(u_xlat6.x);
					    u_xlat6.x = u_xlat6.x + u_xlat6.x;
					    vs_TEXCOORD4 = min(u_xlat6.x, 1.0);
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat5 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat5;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlat10.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati3].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati3].xy + u_xlat10.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendMul" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					float u_xlat14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat14 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat2.xyz = vec3(u_xlat14) * u_xlat2.xyz;
					    u_xlat14 = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat3.xyz = vec3(u_xlat14) * in_NORMAL0.xyz;
					    u_xlat2.x = dot(u_xlat3.xyz, u_xlat2.xyz);
					    u_xlat2.x = log2(abs(u_xlat2.x));
					    u_xlat2.x = u_xlat2.x * _FresnelStr;
					    u_xlat2.x = exp2(u_xlat2.x);
					    u_xlat2.x = u_xlat2.x + u_xlat2.x;
					    vs_TEXCOORD4 = min(u_xlat2.x, 1.0);
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat4 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_3_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati1;
					vec4 u_xlat2;
					int u_xlati3;
					float u_xlat4;
					float u_xlat5;
					vec3 u_xlat6;
					vec3 u_xlat8;
					vec2 u_xlat10;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    u_xlat6.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat6.x = inversesqrt(u_xlat6.x);
					    u_xlat6.xyz = u_xlat6.xxx * in_NORMAL0.xyz;
					    u_xlati3 = unity_StereoEyeIndex;
					    u_xlat8.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].yyy;
					    u_xlat8.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].xxx + u_xlat8.xyz;
					    u_xlat8.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].zzz + u_xlat8.xyz;
					    u_xlat8.xyz = u_xlat8.xyz + unity_WorldToObject[3].xyz;
					    u_xlat8.xyz = u_xlat8.xyz + (-in_POSITION0.xyz);
					    u_xlat4 = dot(u_xlat8.xyz, u_xlat8.xyz);
					    u_xlat4 = inversesqrt(u_xlat4);
					    u_xlat8.xyz = u_xlat8.xyz * vec3(u_xlat4);
					    u_xlat6.x = dot(u_xlat6.xyz, u_xlat8.xyz);
					    u_xlat6.x = log2(abs(u_xlat6.x));
					    u_xlat6.x = u_xlat6.x * _FresnelStr;
					    u_xlat6.x = exp2(u_xlat6.x);
					    u_xlat6.x = u_xlat6.x + u_xlat6.x;
					    vs_TEXCOORD4 = min(u_xlat6.x, 1.0);
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat5 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat5;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlat10.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati3].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati3].xy + u_xlat10.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendMul" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					float u_xlat14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat14 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat2.xyz = vec3(u_xlat14) * u_xlat2.xyz;
					    u_xlat14 = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat3.xyz = vec3(u_xlat14) * in_NORMAL0.xyz;
					    u_xlat2.x = dot(u_xlat3.xyz, u_xlat2.xyz);
					    u_xlat2.x = log2(abs(u_xlat2.x));
					    u_xlat2.x = u_xlat2.x * _FresnelStr;
					    u_xlat2.x = exp2(u_xlat2.x);
					    u_xlat2.x = u_xlat2.x + u_xlat2.x;
					    vs_TEXCOORD4 = min(u_xlat2.x, 1.0);
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat4 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_3_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati1;
					vec4 u_xlat2;
					int u_xlati3;
					float u_xlat4;
					float u_xlat5;
					vec3 u_xlat6;
					vec3 u_xlat8;
					vec2 u_xlat10;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    u_xlat6.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat6.x = inversesqrt(u_xlat6.x);
					    u_xlat6.xyz = u_xlat6.xxx * in_NORMAL0.xyz;
					    u_xlati3 = unity_StereoEyeIndex;
					    u_xlat8.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].yyy;
					    u_xlat8.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].xxx + u_xlat8.xyz;
					    u_xlat8.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].zzz + u_xlat8.xyz;
					    u_xlat8.xyz = u_xlat8.xyz + unity_WorldToObject[3].xyz;
					    u_xlat8.xyz = u_xlat8.xyz + (-in_POSITION0.xyz);
					    u_xlat4 = dot(u_xlat8.xyz, u_xlat8.xyz);
					    u_xlat4 = inversesqrt(u_xlat4);
					    u_xlat8.xyz = u_xlat8.xyz * vec3(u_xlat4);
					    u_xlat6.x = dot(u_xlat6.xyz, u_xlat8.xyz);
					    u_xlat6.x = log2(abs(u_xlat6.x));
					    u_xlat6.x = u_xlat6.x * _FresnelStr;
					    u_xlat6.x = exp2(u_xlat6.x);
					    u_xlat6.x = u_xlat6.x + u_xlat6.x;
					    vs_TEXCOORD4 = min(u_xlat6.x, 1.0);
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat5 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat5;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlat10.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati3].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati3].xy + u_xlat10.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendMul" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					float u_xlat14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat14 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat2.xyz = vec3(u_xlat14) * u_xlat2.xyz;
					    u_xlat14 = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat3.xyz = vec3(u_xlat14) * in_NORMAL0.xyz;
					    u_xlat2.x = dot(u_xlat3.xyz, u_xlat2.xyz);
					    u_xlat2.x = log2(abs(u_xlat2.x));
					    u_xlat2.x = u_xlat2.x * _FresnelStr;
					    u_xlat2.x = exp2(u_xlat2.x);
					    u_xlat2.x = u_xlat2.x + u_xlat2.x;
					    vs_TEXCOORD4 = min(u_xlat2.x, 1.0);
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat4 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_3_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati1;
					vec4 u_xlat2;
					int u_xlati3;
					float u_xlat4;
					float u_xlat5;
					vec3 u_xlat6;
					vec3 u_xlat8;
					vec2 u_xlat10;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    u_xlat6.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat6.x = inversesqrt(u_xlat6.x);
					    u_xlat6.xyz = u_xlat6.xxx * in_NORMAL0.xyz;
					    u_xlati3 = unity_StereoEyeIndex;
					    u_xlat8.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].yyy;
					    u_xlat8.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].xxx + u_xlat8.xyz;
					    u_xlat8.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].zzz + u_xlat8.xyz;
					    u_xlat8.xyz = u_xlat8.xyz + unity_WorldToObject[3].xyz;
					    u_xlat8.xyz = u_xlat8.xyz + (-in_POSITION0.xyz);
					    u_xlat4 = dot(u_xlat8.xyz, u_xlat8.xyz);
					    u_xlat4 = inversesqrt(u_xlat4);
					    u_xlat8.xyz = u_xlat8.xyz * vec3(u_xlat4);
					    u_xlat6.x = dot(u_xlat6.xyz, u_xlat8.xyz);
					    u_xlat6.x = log2(abs(u_xlat6.x));
					    u_xlat6.x = u_xlat6.x * _FresnelStr;
					    u_xlat6.x = exp2(u_xlat6.x);
					    u_xlat6.x = u_xlat6.x + u_xlat6.x;
					    vs_TEXCOORD4 = min(u_xlat6.x, 1.0);
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat5 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat5;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlat10.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati3].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati3].xy + u_xlat10.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendMul" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat2 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat2;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec2 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					float u_xlat3;
					int u_xlati6;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat3 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat3;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlati6 = unity_StereoEyeIndex;
					    u_xlat1.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati6].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati6].xy + u_xlat1.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendMul" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat2 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat2;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec2 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					float u_xlat3;
					int u_xlati6;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat3 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat3;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlati6 = unity_StereoEyeIndex;
					    u_xlat1.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati6].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati6].xy + u_xlat1.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendMul" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat2 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat2;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec2 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					float u_xlat3;
					int u_xlati6;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat3 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat3;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlati6 = unity_StereoEyeIndex;
					    u_xlat1.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati6].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati6].xy + u_xlat1.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendMul" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat2 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat2;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec2 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					float u_xlat3;
					int u_xlati6;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat3 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat3;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlati6 = unity_StereoEyeIndex;
					    u_xlat1.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati6].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati6].xy + u_xlat1.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendMul" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat2 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat2;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec2 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					float u_xlat3;
					int u_xlati6;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat3 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat3;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlati6 = unity_StereoEyeIndex;
					    u_xlat1.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati6].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati6].xy + u_xlat1.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendMul" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat2 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat2;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec2 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					float u_xlat3;
					int u_xlati6;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat3 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat3;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlati6 = unity_StereoEyeIndex;
					    u_xlat1.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati6].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati6].xy + u_xlat1.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendMul" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat2 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat2;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec2 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					float u_xlat3;
					int u_xlati6;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat3 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat3;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlati6 = unity_StereoEyeIndex;
					    u_xlat1.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati6].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati6].xy + u_xlat1.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendMul" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat2 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat2;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec2 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					float u_xlat3;
					int u_xlati6;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat3 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat3;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlati6 = unity_StereoEyeIndex;
					    u_xlat1.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati6].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati6].xy + u_xlat1.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendMul" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat2 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat2;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec2 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					float u_xlat3;
					int u_xlati6;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat3 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat3;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlati6 = unity_StereoEyeIndex;
					    u_xlat1.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati6].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati6].xy + u_xlat1.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendMul" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat2 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat2;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec2 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					float u_xlat3;
					int u_xlati6;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat3 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat3;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlati6 = unity_StereoEyeIndex;
					    u_xlat1.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati6].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati6].xy + u_xlat1.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendMul" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat2 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat2;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec2 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					float u_xlat3;
					int u_xlati6;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat3 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat3;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlati6 = unity_StereoEyeIndex;
					    u_xlat1.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati6].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati6].xy + u_xlat1.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendMul" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat2 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat2;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec2 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					float u_xlat3;
					int u_xlati6;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat3 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat3;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlati6 = unity_StereoEyeIndex;
					    u_xlat1.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati6].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati6].xy + u_xlat1.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendMul" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat2 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat2;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec2 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					float u_xlat3;
					int u_xlati6;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat3 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat3;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlati6 = unity_StereoEyeIndex;
					    u_xlat1.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati6].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati6].xy + u_xlat1.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendMul" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat2 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat2;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec2 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					float u_xlat3;
					int u_xlati6;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat3 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat3;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlati6 = unity_StereoEyeIndex;
					    u_xlat1.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati6].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati6].xy + u_xlat1.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendMul" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat2 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat2;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec2 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					float u_xlat3;
					int u_xlati6;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat3 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat3;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlati6 = unity_StereoEyeIndex;
					    u_xlat1.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati6].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati6].xy + u_xlat1.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendMul" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat2 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat2;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec2 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					float u_xlat3;
					int u_xlati6;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat3 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat3;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlati6 = unity_StereoEyeIndex;
					    u_xlat1.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati6].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati6].xy + u_xlat1.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendMul" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					float u_xlat9;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat9 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat9 = inversesqrt(u_xlat9);
					    u_xlat2.xyz = vec3(u_xlat9) * u_xlat2.xyz;
					    u_xlat9 = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat9 = inversesqrt(u_xlat9);
					    u_xlat3.xyz = vec3(u_xlat9) * in_NORMAL0.xyz;
					    u_xlat9 = dot(u_xlat3.xyz, u_xlat2.xyz);
					    u_xlat9 = log2(abs(u_xlat9));
					    u_xlat9 = u_xlat9 * _FresnelStr;
					    u_xlat9 = exp2(u_xlat9);
					    u_xlat9 = u_xlat9 + u_xlat9;
					    vs_TEXCOORD4 = min(u_xlat9, 1.0);
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat4 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_3_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					vec3 u_xlat5;
					vec2 u_xlat8;
					int u_xlati10;
					float u_xlat15;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    u_xlat5.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat5.x = inversesqrt(u_xlat5.x);
					    u_xlat5.xyz = u_xlat5.xxx * in_NORMAL0.xyz;
					    u_xlati10 = unity_StereoEyeIndex;
					    u_xlat3.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati10].yyy;
					    u_xlat3.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati10].xxx + u_xlat3.xyz;
					    u_xlat3.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati10].zzz + u_xlat3.xyz;
					    u_xlat3.xyz = u_xlat3.xyz + unity_WorldToObject[3].xyz;
					    u_xlat3.xyz = u_xlat3.xyz + (-in_POSITION0.xyz);
					    u_xlat15 = dot(u_xlat3.xyz, u_xlat3.xyz);
					    u_xlat15 = inversesqrt(u_xlat15);
					    u_xlat3.xyz = vec3(u_xlat15) * u_xlat3.xyz;
					    u_xlat5.x = dot(u_xlat5.xyz, u_xlat3.xyz);
					    u_xlat5.x = log2(abs(u_xlat5.x));
					    u_xlat5.x = u_xlat5.x * _FresnelStr;
					    u_xlat5.x = exp2(u_xlat5.x);
					    u_xlat5.x = u_xlat5.x + u_xlat5.x;
					    vs_TEXCOORD4 = min(u_xlat5.x, 1.0);
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat4 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlat8.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati10].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati10].xy + u_xlat8.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendMul" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					float u_xlat9;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat9 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat9 = inversesqrt(u_xlat9);
					    u_xlat2.xyz = vec3(u_xlat9) * u_xlat2.xyz;
					    u_xlat9 = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat9 = inversesqrt(u_xlat9);
					    u_xlat3.xyz = vec3(u_xlat9) * in_NORMAL0.xyz;
					    u_xlat9 = dot(u_xlat3.xyz, u_xlat2.xyz);
					    u_xlat9 = log2(abs(u_xlat9));
					    u_xlat9 = u_xlat9 * _FresnelStr;
					    u_xlat9 = exp2(u_xlat9);
					    u_xlat9 = u_xlat9 + u_xlat9;
					    vs_TEXCOORD4 = min(u_xlat9, 1.0);
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat4 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_3_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					vec3 u_xlat5;
					vec2 u_xlat8;
					int u_xlati10;
					float u_xlat15;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    u_xlat5.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat5.x = inversesqrt(u_xlat5.x);
					    u_xlat5.xyz = u_xlat5.xxx * in_NORMAL0.xyz;
					    u_xlati10 = unity_StereoEyeIndex;
					    u_xlat3.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati10].yyy;
					    u_xlat3.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati10].xxx + u_xlat3.xyz;
					    u_xlat3.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati10].zzz + u_xlat3.xyz;
					    u_xlat3.xyz = u_xlat3.xyz + unity_WorldToObject[3].xyz;
					    u_xlat3.xyz = u_xlat3.xyz + (-in_POSITION0.xyz);
					    u_xlat15 = dot(u_xlat3.xyz, u_xlat3.xyz);
					    u_xlat15 = inversesqrt(u_xlat15);
					    u_xlat3.xyz = vec3(u_xlat15) * u_xlat3.xyz;
					    u_xlat5.x = dot(u_xlat5.xyz, u_xlat3.xyz);
					    u_xlat5.x = log2(abs(u_xlat5.x));
					    u_xlat5.x = u_xlat5.x * _FresnelStr;
					    u_xlat5.x = exp2(u_xlat5.x);
					    u_xlat5.x = u_xlat5.x + u_xlat5.x;
					    vs_TEXCOORD4 = min(u_xlat5.x, 1.0);
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat4 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlat8.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati10].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati10].xy + u_xlat8.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendMul" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					float u_xlat14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat14 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat2.xyz = vec3(u_xlat14) * u_xlat2.xyz;
					    u_xlat14 = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat3.xyz = vec3(u_xlat14) * in_NORMAL0.xyz;
					    u_xlat2.x = dot(u_xlat3.xyz, u_xlat2.xyz);
					    u_xlat2.x = log2(abs(u_xlat2.x));
					    u_xlat2.x = u_xlat2.x * _FresnelStr;
					    u_xlat2.x = exp2(u_xlat2.x);
					    u_xlat2.x = u_xlat2.x + u_xlat2.x;
					    vs_TEXCOORD4 = min(u_xlat2.x, 1.0);
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat4 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_3_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati1;
					vec4 u_xlat2;
					int u_xlati3;
					float u_xlat4;
					float u_xlat5;
					vec3 u_xlat6;
					vec3 u_xlat8;
					vec2 u_xlat10;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    u_xlat6.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat6.x = inversesqrt(u_xlat6.x);
					    u_xlat6.xyz = u_xlat6.xxx * in_NORMAL0.xyz;
					    u_xlati3 = unity_StereoEyeIndex;
					    u_xlat8.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].yyy;
					    u_xlat8.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].xxx + u_xlat8.xyz;
					    u_xlat8.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].zzz + u_xlat8.xyz;
					    u_xlat8.xyz = u_xlat8.xyz + unity_WorldToObject[3].xyz;
					    u_xlat8.xyz = u_xlat8.xyz + (-in_POSITION0.xyz);
					    u_xlat4 = dot(u_xlat8.xyz, u_xlat8.xyz);
					    u_xlat4 = inversesqrt(u_xlat4);
					    u_xlat8.xyz = u_xlat8.xyz * vec3(u_xlat4);
					    u_xlat6.x = dot(u_xlat6.xyz, u_xlat8.xyz);
					    u_xlat6.x = log2(abs(u_xlat6.x));
					    u_xlat6.x = u_xlat6.x * _FresnelStr;
					    u_xlat6.x = exp2(u_xlat6.x);
					    u_xlat6.x = u_xlat6.x + u_xlat6.x;
					    vs_TEXCOORD4 = min(u_xlat6.x, 1.0);
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat5 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat5;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlat10.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati3].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati3].xy + u_xlat10.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendMul" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					float u_xlat14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat14 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat2.xyz = vec3(u_xlat14) * u_xlat2.xyz;
					    u_xlat14 = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat3.xyz = vec3(u_xlat14) * in_NORMAL0.xyz;
					    u_xlat2.x = dot(u_xlat3.xyz, u_xlat2.xyz);
					    u_xlat2.x = log2(abs(u_xlat2.x));
					    u_xlat2.x = u_xlat2.x * _FresnelStr;
					    u_xlat2.x = exp2(u_xlat2.x);
					    u_xlat2.x = u_xlat2.x + u_xlat2.x;
					    vs_TEXCOORD4 = min(u_xlat2.x, 1.0);
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat4 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_3_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati1;
					vec4 u_xlat2;
					int u_xlati3;
					float u_xlat4;
					float u_xlat5;
					vec3 u_xlat6;
					vec3 u_xlat8;
					vec2 u_xlat10;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    u_xlat6.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat6.x = inversesqrt(u_xlat6.x);
					    u_xlat6.xyz = u_xlat6.xxx * in_NORMAL0.xyz;
					    u_xlati3 = unity_StereoEyeIndex;
					    u_xlat8.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].yyy;
					    u_xlat8.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].xxx + u_xlat8.xyz;
					    u_xlat8.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].zzz + u_xlat8.xyz;
					    u_xlat8.xyz = u_xlat8.xyz + unity_WorldToObject[3].xyz;
					    u_xlat8.xyz = u_xlat8.xyz + (-in_POSITION0.xyz);
					    u_xlat4 = dot(u_xlat8.xyz, u_xlat8.xyz);
					    u_xlat4 = inversesqrt(u_xlat4);
					    u_xlat8.xyz = u_xlat8.xyz * vec3(u_xlat4);
					    u_xlat6.x = dot(u_xlat6.xyz, u_xlat8.xyz);
					    u_xlat6.x = log2(abs(u_xlat6.x));
					    u_xlat6.x = u_xlat6.x * _FresnelStr;
					    u_xlat6.x = exp2(u_xlat6.x);
					    u_xlat6.x = u_xlat6.x + u_xlat6.x;
					    vs_TEXCOORD4 = min(u_xlat6.x, 1.0);
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat5 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat5;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlat10.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati3].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati3].xy + u_xlat10.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendMul" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					float u_xlat14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat14 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat2.xyz = vec3(u_xlat14) * u_xlat2.xyz;
					    u_xlat14 = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat3.xyz = vec3(u_xlat14) * in_NORMAL0.xyz;
					    u_xlat2.x = dot(u_xlat3.xyz, u_xlat2.xyz);
					    u_xlat2.x = log2(abs(u_xlat2.x));
					    u_xlat2.x = u_xlat2.x * _FresnelStr;
					    u_xlat2.x = exp2(u_xlat2.x);
					    u_xlat2.x = u_xlat2.x + u_xlat2.x;
					    vs_TEXCOORD4 = min(u_xlat2.x, 1.0);
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat4 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_3_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati1;
					vec4 u_xlat2;
					int u_xlati3;
					float u_xlat4;
					float u_xlat5;
					vec3 u_xlat6;
					vec3 u_xlat8;
					vec2 u_xlat10;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    u_xlat6.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat6.x = inversesqrt(u_xlat6.x);
					    u_xlat6.xyz = u_xlat6.xxx * in_NORMAL0.xyz;
					    u_xlati3 = unity_StereoEyeIndex;
					    u_xlat8.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].yyy;
					    u_xlat8.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].xxx + u_xlat8.xyz;
					    u_xlat8.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].zzz + u_xlat8.xyz;
					    u_xlat8.xyz = u_xlat8.xyz + unity_WorldToObject[3].xyz;
					    u_xlat8.xyz = u_xlat8.xyz + (-in_POSITION0.xyz);
					    u_xlat4 = dot(u_xlat8.xyz, u_xlat8.xyz);
					    u_xlat4 = inversesqrt(u_xlat4);
					    u_xlat8.xyz = u_xlat8.xyz * vec3(u_xlat4);
					    u_xlat6.x = dot(u_xlat6.xyz, u_xlat8.xyz);
					    u_xlat6.x = log2(abs(u_xlat6.x));
					    u_xlat6.x = u_xlat6.x * _FresnelStr;
					    u_xlat6.x = exp2(u_xlat6.x);
					    u_xlat6.x = u_xlat6.x + u_xlat6.x;
					    vs_TEXCOORD4 = min(u_xlat6.x, 1.0);
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat5 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat5;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlat10.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati3].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati3].xy + u_xlat10.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendMul" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					float u_xlat14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat14 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat2.xyz = vec3(u_xlat14) * u_xlat2.xyz;
					    u_xlat14 = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat3.xyz = vec3(u_xlat14) * in_NORMAL0.xyz;
					    u_xlat2.x = dot(u_xlat3.xyz, u_xlat2.xyz);
					    u_xlat2.x = log2(abs(u_xlat2.x));
					    u_xlat2.x = u_xlat2.x * _FresnelStr;
					    u_xlat2.x = exp2(u_xlat2.x);
					    u_xlat2.x = u_xlat2.x + u_xlat2.x;
					    vs_TEXCOORD4 = min(u_xlat2.x, 1.0);
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat4 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_3_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati1;
					vec4 u_xlat2;
					int u_xlati3;
					float u_xlat4;
					float u_xlat5;
					vec3 u_xlat6;
					vec3 u_xlat8;
					vec2 u_xlat10;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    u_xlat6.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat6.x = inversesqrt(u_xlat6.x);
					    u_xlat6.xyz = u_xlat6.xxx * in_NORMAL0.xyz;
					    u_xlati3 = unity_StereoEyeIndex;
					    u_xlat8.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].yyy;
					    u_xlat8.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].xxx + u_xlat8.xyz;
					    u_xlat8.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].zzz + u_xlat8.xyz;
					    u_xlat8.xyz = u_xlat8.xyz + unity_WorldToObject[3].xyz;
					    u_xlat8.xyz = u_xlat8.xyz + (-in_POSITION0.xyz);
					    u_xlat4 = dot(u_xlat8.xyz, u_xlat8.xyz);
					    u_xlat4 = inversesqrt(u_xlat4);
					    u_xlat8.xyz = u_xlat8.xyz * vec3(u_xlat4);
					    u_xlat6.x = dot(u_xlat6.xyz, u_xlat8.xyz);
					    u_xlat6.x = log2(abs(u_xlat6.x));
					    u_xlat6.x = u_xlat6.x * _FresnelStr;
					    u_xlat6.x = exp2(u_xlat6.x);
					    u_xlat6.x = u_xlat6.x + u_xlat6.x;
					    vs_TEXCOORD4 = min(u_xlat6.x, 1.0);
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat5 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat5;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlat10.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati3].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati3].xy + u_xlat10.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendMul" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					float u_xlat14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat14 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat2.xyz = vec3(u_xlat14) * u_xlat2.xyz;
					    u_xlat14 = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat3.xyz = vec3(u_xlat14) * in_NORMAL0.xyz;
					    u_xlat2.x = dot(u_xlat3.xyz, u_xlat2.xyz);
					    u_xlat2.x = log2(abs(u_xlat2.x));
					    u_xlat2.x = u_xlat2.x * _FresnelStr;
					    u_xlat2.x = exp2(u_xlat2.x);
					    u_xlat2.x = u_xlat2.x + u_xlat2.x;
					    vs_TEXCOORD4 = min(u_xlat2.x, 1.0);
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat4 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_3_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati1;
					vec4 u_xlat2;
					int u_xlati3;
					float u_xlat4;
					float u_xlat5;
					vec3 u_xlat6;
					vec3 u_xlat8;
					vec2 u_xlat10;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    u_xlat6.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat6.x = inversesqrt(u_xlat6.x);
					    u_xlat6.xyz = u_xlat6.xxx * in_NORMAL0.xyz;
					    u_xlati3 = unity_StereoEyeIndex;
					    u_xlat8.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].yyy;
					    u_xlat8.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].xxx + u_xlat8.xyz;
					    u_xlat8.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].zzz + u_xlat8.xyz;
					    u_xlat8.xyz = u_xlat8.xyz + unity_WorldToObject[3].xyz;
					    u_xlat8.xyz = u_xlat8.xyz + (-in_POSITION0.xyz);
					    u_xlat4 = dot(u_xlat8.xyz, u_xlat8.xyz);
					    u_xlat4 = inversesqrt(u_xlat4);
					    u_xlat8.xyz = u_xlat8.xyz * vec3(u_xlat4);
					    u_xlat6.x = dot(u_xlat6.xyz, u_xlat8.xyz);
					    u_xlat6.x = log2(abs(u_xlat6.x));
					    u_xlat6.x = u_xlat6.x * _FresnelStr;
					    u_xlat6.x = exp2(u_xlat6.x);
					    u_xlat6.x = u_xlat6.x + u_xlat6.x;
					    vs_TEXCOORD4 = min(u_xlat6.x, 1.0);
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat5 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat5;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlat10.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati3].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati3].xy + u_xlat10.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendMul" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					float u_xlat14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat14 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat2.xyz = vec3(u_xlat14) * u_xlat2.xyz;
					    u_xlat14 = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat3.xyz = vec3(u_xlat14) * in_NORMAL0.xyz;
					    u_xlat2.x = dot(u_xlat3.xyz, u_xlat2.xyz);
					    u_xlat2.x = log2(abs(u_xlat2.x));
					    u_xlat2.x = u_xlat2.x * _FresnelStr;
					    u_xlat2.x = exp2(u_xlat2.x);
					    u_xlat2.x = u_xlat2.x + u_xlat2.x;
					    vs_TEXCOORD4 = min(u_xlat2.x, 1.0);
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat4 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_3_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati1;
					vec4 u_xlat2;
					int u_xlati3;
					float u_xlat4;
					float u_xlat5;
					vec3 u_xlat6;
					vec3 u_xlat8;
					vec2 u_xlat10;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    u_xlat6.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat6.x = inversesqrt(u_xlat6.x);
					    u_xlat6.xyz = u_xlat6.xxx * in_NORMAL0.xyz;
					    u_xlati3 = unity_StereoEyeIndex;
					    u_xlat8.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].yyy;
					    u_xlat8.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].xxx + u_xlat8.xyz;
					    u_xlat8.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].zzz + u_xlat8.xyz;
					    u_xlat8.xyz = u_xlat8.xyz + unity_WorldToObject[3].xyz;
					    u_xlat8.xyz = u_xlat8.xyz + (-in_POSITION0.xyz);
					    u_xlat4 = dot(u_xlat8.xyz, u_xlat8.xyz);
					    u_xlat4 = inversesqrt(u_xlat4);
					    u_xlat8.xyz = u_xlat8.xyz * vec3(u_xlat4);
					    u_xlat6.x = dot(u_xlat6.xyz, u_xlat8.xyz);
					    u_xlat6.x = log2(abs(u_xlat6.x));
					    u_xlat6.x = u_xlat6.x * _FresnelStr;
					    u_xlat6.x = exp2(u_xlat6.x);
					    u_xlat6.x = u_xlat6.x + u_xlat6.x;
					    vs_TEXCOORD4 = min(u_xlat6.x, 1.0);
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat5 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat5;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlat10.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati3].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati3].xy + u_xlat10.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendMul" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					float u_xlat9;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat9 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat9 = inversesqrt(u_xlat9);
					    u_xlat2.xyz = vec3(u_xlat9) * u_xlat2.xyz;
					    u_xlat9 = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat9 = inversesqrt(u_xlat9);
					    u_xlat3.xyz = vec3(u_xlat9) * in_NORMAL0.xyz;
					    u_xlat9 = dot(u_xlat3.xyz, u_xlat2.xyz);
					    u_xlat9 = log2(abs(u_xlat9));
					    u_xlat9 = u_xlat9 * _FresnelStr;
					    u_xlat9 = exp2(u_xlat9);
					    u_xlat9 = u_xlat9 + u_xlat9;
					    vs_TEXCOORD4 = min(u_xlat9, 1.0);
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat4 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_3_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					vec3 u_xlat5;
					vec2 u_xlat8;
					int u_xlati10;
					float u_xlat15;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    u_xlat5.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat5.x = inversesqrt(u_xlat5.x);
					    u_xlat5.xyz = u_xlat5.xxx * in_NORMAL0.xyz;
					    u_xlati10 = unity_StereoEyeIndex;
					    u_xlat3.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati10].yyy;
					    u_xlat3.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati10].xxx + u_xlat3.xyz;
					    u_xlat3.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati10].zzz + u_xlat3.xyz;
					    u_xlat3.xyz = u_xlat3.xyz + unity_WorldToObject[3].xyz;
					    u_xlat3.xyz = u_xlat3.xyz + (-in_POSITION0.xyz);
					    u_xlat15 = dot(u_xlat3.xyz, u_xlat3.xyz);
					    u_xlat15 = inversesqrt(u_xlat15);
					    u_xlat3.xyz = vec3(u_xlat15) * u_xlat3.xyz;
					    u_xlat5.x = dot(u_xlat5.xyz, u_xlat3.xyz);
					    u_xlat5.x = log2(abs(u_xlat5.x));
					    u_xlat5.x = u_xlat5.x * _FresnelStr;
					    u_xlat5.x = exp2(u_xlat5.x);
					    u_xlat5.x = u_xlat5.x + u_xlat5.x;
					    vs_TEXCOORD4 = min(u_xlat5.x, 1.0);
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat4 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlat8.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati10].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati10].xy + u_xlat8.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendMul" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					float u_xlat9;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat9 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat9 = inversesqrt(u_xlat9);
					    u_xlat2.xyz = vec3(u_xlat9) * u_xlat2.xyz;
					    u_xlat9 = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat9 = inversesqrt(u_xlat9);
					    u_xlat3.xyz = vec3(u_xlat9) * in_NORMAL0.xyz;
					    u_xlat9 = dot(u_xlat3.xyz, u_xlat2.xyz);
					    u_xlat9 = log2(abs(u_xlat9));
					    u_xlat9 = u_xlat9 * _FresnelStr;
					    u_xlat9 = exp2(u_xlat9);
					    u_xlat9 = u_xlat9 + u_xlat9;
					    vs_TEXCOORD4 = min(u_xlat9, 1.0);
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat4 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_3_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					vec3 u_xlat5;
					vec2 u_xlat8;
					int u_xlati10;
					float u_xlat15;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    u_xlat5.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat5.x = inversesqrt(u_xlat5.x);
					    u_xlat5.xyz = u_xlat5.xxx * in_NORMAL0.xyz;
					    u_xlati10 = unity_StereoEyeIndex;
					    u_xlat3.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati10].yyy;
					    u_xlat3.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati10].xxx + u_xlat3.xyz;
					    u_xlat3.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati10].zzz + u_xlat3.xyz;
					    u_xlat3.xyz = u_xlat3.xyz + unity_WorldToObject[3].xyz;
					    u_xlat3.xyz = u_xlat3.xyz + (-in_POSITION0.xyz);
					    u_xlat15 = dot(u_xlat3.xyz, u_xlat3.xyz);
					    u_xlat15 = inversesqrt(u_xlat15);
					    u_xlat3.xyz = vec3(u_xlat15) * u_xlat3.xyz;
					    u_xlat5.x = dot(u_xlat5.xyz, u_xlat3.xyz);
					    u_xlat5.x = log2(abs(u_xlat5.x));
					    u_xlat5.x = u_xlat5.x * _FresnelStr;
					    u_xlat5.x = exp2(u_xlat5.x);
					    u_xlat5.x = u_xlat5.x + u_xlat5.x;
					    vs_TEXCOORD4 = min(u_xlat5.x, 1.0);
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat4 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlat8.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati10].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati10].xy + u_xlat8.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendMul" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					float u_xlat14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat14 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat2.xyz = vec3(u_xlat14) * u_xlat2.xyz;
					    u_xlat14 = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat3.xyz = vec3(u_xlat14) * in_NORMAL0.xyz;
					    u_xlat2.x = dot(u_xlat3.xyz, u_xlat2.xyz);
					    u_xlat2.x = log2(abs(u_xlat2.x));
					    u_xlat2.x = u_xlat2.x * _FresnelStr;
					    u_xlat2.x = exp2(u_xlat2.x);
					    u_xlat2.x = u_xlat2.x + u_xlat2.x;
					    vs_TEXCOORD4 = min(u_xlat2.x, 1.0);
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat4 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_3_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati1;
					vec4 u_xlat2;
					int u_xlati3;
					float u_xlat4;
					float u_xlat5;
					vec3 u_xlat6;
					vec3 u_xlat8;
					vec2 u_xlat10;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    u_xlat6.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat6.x = inversesqrt(u_xlat6.x);
					    u_xlat6.xyz = u_xlat6.xxx * in_NORMAL0.xyz;
					    u_xlati3 = unity_StereoEyeIndex;
					    u_xlat8.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].yyy;
					    u_xlat8.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].xxx + u_xlat8.xyz;
					    u_xlat8.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].zzz + u_xlat8.xyz;
					    u_xlat8.xyz = u_xlat8.xyz + unity_WorldToObject[3].xyz;
					    u_xlat8.xyz = u_xlat8.xyz + (-in_POSITION0.xyz);
					    u_xlat4 = dot(u_xlat8.xyz, u_xlat8.xyz);
					    u_xlat4 = inversesqrt(u_xlat4);
					    u_xlat8.xyz = u_xlat8.xyz * vec3(u_xlat4);
					    u_xlat6.x = dot(u_xlat6.xyz, u_xlat8.xyz);
					    u_xlat6.x = log2(abs(u_xlat6.x));
					    u_xlat6.x = u_xlat6.x * _FresnelStr;
					    u_xlat6.x = exp2(u_xlat6.x);
					    u_xlat6.x = u_xlat6.x + u_xlat6.x;
					    vs_TEXCOORD4 = min(u_xlat6.x, 1.0);
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat5 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat5;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlat10.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati3].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati3].xy + u_xlat10.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendMul" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					float u_xlat14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat14 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat2.xyz = vec3(u_xlat14) * u_xlat2.xyz;
					    u_xlat14 = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat3.xyz = vec3(u_xlat14) * in_NORMAL0.xyz;
					    u_xlat2.x = dot(u_xlat3.xyz, u_xlat2.xyz);
					    u_xlat2.x = log2(abs(u_xlat2.x));
					    u_xlat2.x = u_xlat2.x * _FresnelStr;
					    u_xlat2.x = exp2(u_xlat2.x);
					    u_xlat2.x = u_xlat2.x + u_xlat2.x;
					    vs_TEXCOORD4 = min(u_xlat2.x, 1.0);
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat4 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_3_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati1;
					vec4 u_xlat2;
					int u_xlati3;
					float u_xlat4;
					float u_xlat5;
					vec3 u_xlat6;
					vec3 u_xlat8;
					vec2 u_xlat10;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    u_xlat6.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat6.x = inversesqrt(u_xlat6.x);
					    u_xlat6.xyz = u_xlat6.xxx * in_NORMAL0.xyz;
					    u_xlati3 = unity_StereoEyeIndex;
					    u_xlat8.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].yyy;
					    u_xlat8.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].xxx + u_xlat8.xyz;
					    u_xlat8.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].zzz + u_xlat8.xyz;
					    u_xlat8.xyz = u_xlat8.xyz + unity_WorldToObject[3].xyz;
					    u_xlat8.xyz = u_xlat8.xyz + (-in_POSITION0.xyz);
					    u_xlat4 = dot(u_xlat8.xyz, u_xlat8.xyz);
					    u_xlat4 = inversesqrt(u_xlat4);
					    u_xlat8.xyz = u_xlat8.xyz * vec3(u_xlat4);
					    u_xlat6.x = dot(u_xlat6.xyz, u_xlat8.xyz);
					    u_xlat6.x = log2(abs(u_xlat6.x));
					    u_xlat6.x = u_xlat6.x * _FresnelStr;
					    u_xlat6.x = exp2(u_xlat6.x);
					    u_xlat6.x = u_xlat6.x + u_xlat6.x;
					    vs_TEXCOORD4 = min(u_xlat6.x, 1.0);
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat5 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat5;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlat10.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati3].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati3].xy + u_xlat10.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendMul" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					float u_xlat14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat14 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat2.xyz = vec3(u_xlat14) * u_xlat2.xyz;
					    u_xlat14 = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat3.xyz = vec3(u_xlat14) * in_NORMAL0.xyz;
					    u_xlat2.x = dot(u_xlat3.xyz, u_xlat2.xyz);
					    u_xlat2.x = log2(abs(u_xlat2.x));
					    u_xlat2.x = u_xlat2.x * _FresnelStr;
					    u_xlat2.x = exp2(u_xlat2.x);
					    u_xlat2.x = u_xlat2.x + u_xlat2.x;
					    vs_TEXCOORD4 = min(u_xlat2.x, 1.0);
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat4 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_3_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati1;
					vec4 u_xlat2;
					int u_xlati3;
					float u_xlat4;
					float u_xlat5;
					vec3 u_xlat6;
					vec3 u_xlat8;
					vec2 u_xlat10;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    u_xlat6.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat6.x = inversesqrt(u_xlat6.x);
					    u_xlat6.xyz = u_xlat6.xxx * in_NORMAL0.xyz;
					    u_xlati3 = unity_StereoEyeIndex;
					    u_xlat8.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].yyy;
					    u_xlat8.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].xxx + u_xlat8.xyz;
					    u_xlat8.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].zzz + u_xlat8.xyz;
					    u_xlat8.xyz = u_xlat8.xyz + unity_WorldToObject[3].xyz;
					    u_xlat8.xyz = u_xlat8.xyz + (-in_POSITION0.xyz);
					    u_xlat4 = dot(u_xlat8.xyz, u_xlat8.xyz);
					    u_xlat4 = inversesqrt(u_xlat4);
					    u_xlat8.xyz = u_xlat8.xyz * vec3(u_xlat4);
					    u_xlat6.x = dot(u_xlat6.xyz, u_xlat8.xyz);
					    u_xlat6.x = log2(abs(u_xlat6.x));
					    u_xlat6.x = u_xlat6.x * _FresnelStr;
					    u_xlat6.x = exp2(u_xlat6.x);
					    u_xlat6.x = u_xlat6.x + u_xlat6.x;
					    vs_TEXCOORD4 = min(u_xlat6.x, 1.0);
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat5 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat5;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlat10.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati3].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati3].xy + u_xlat10.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendMul" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					float u_xlat14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat14 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat2.xyz = vec3(u_xlat14) * u_xlat2.xyz;
					    u_xlat14 = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat3.xyz = vec3(u_xlat14) * in_NORMAL0.xyz;
					    u_xlat2.x = dot(u_xlat3.xyz, u_xlat2.xyz);
					    u_xlat2.x = log2(abs(u_xlat2.x));
					    u_xlat2.x = u_xlat2.x * _FresnelStr;
					    u_xlat2.x = exp2(u_xlat2.x);
					    u_xlat2.x = u_xlat2.x + u_xlat2.x;
					    vs_TEXCOORD4 = min(u_xlat2.x, 1.0);
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat4 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_3_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati1;
					vec4 u_xlat2;
					int u_xlati3;
					float u_xlat4;
					float u_xlat5;
					vec3 u_xlat6;
					vec3 u_xlat8;
					vec2 u_xlat10;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    u_xlat6.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat6.x = inversesqrt(u_xlat6.x);
					    u_xlat6.xyz = u_xlat6.xxx * in_NORMAL0.xyz;
					    u_xlati3 = unity_StereoEyeIndex;
					    u_xlat8.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].yyy;
					    u_xlat8.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].xxx + u_xlat8.xyz;
					    u_xlat8.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].zzz + u_xlat8.xyz;
					    u_xlat8.xyz = u_xlat8.xyz + unity_WorldToObject[3].xyz;
					    u_xlat8.xyz = u_xlat8.xyz + (-in_POSITION0.xyz);
					    u_xlat4 = dot(u_xlat8.xyz, u_xlat8.xyz);
					    u_xlat4 = inversesqrt(u_xlat4);
					    u_xlat8.xyz = u_xlat8.xyz * vec3(u_xlat4);
					    u_xlat6.x = dot(u_xlat6.xyz, u_xlat8.xyz);
					    u_xlat6.x = log2(abs(u_xlat6.x));
					    u_xlat6.x = u_xlat6.x * _FresnelStr;
					    u_xlat6.x = exp2(u_xlat6.x);
					    u_xlat6.x = u_xlat6.x + u_xlat6.x;
					    vs_TEXCOORD4 = min(u_xlat6.x, 1.0);
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat5 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat5;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlat10.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati3].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati3].xy + u_xlat10.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendMul" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					float u_xlat14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat14 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat2.xyz = vec3(u_xlat14) * u_xlat2.xyz;
					    u_xlat14 = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat3.xyz = vec3(u_xlat14) * in_NORMAL0.xyz;
					    u_xlat2.x = dot(u_xlat3.xyz, u_xlat2.xyz);
					    u_xlat2.x = log2(abs(u_xlat2.x));
					    u_xlat2.x = u_xlat2.x * _FresnelStr;
					    u_xlat2.x = exp2(u_xlat2.x);
					    u_xlat2.x = u_xlat2.x + u_xlat2.x;
					    vs_TEXCOORD4 = min(u_xlat2.x, 1.0);
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat4 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_3_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati1;
					vec4 u_xlat2;
					int u_xlati3;
					float u_xlat4;
					float u_xlat5;
					vec3 u_xlat6;
					vec3 u_xlat8;
					vec2 u_xlat10;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    u_xlat6.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat6.x = inversesqrt(u_xlat6.x);
					    u_xlat6.xyz = u_xlat6.xxx * in_NORMAL0.xyz;
					    u_xlati3 = unity_StereoEyeIndex;
					    u_xlat8.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].yyy;
					    u_xlat8.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].xxx + u_xlat8.xyz;
					    u_xlat8.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].zzz + u_xlat8.xyz;
					    u_xlat8.xyz = u_xlat8.xyz + unity_WorldToObject[3].xyz;
					    u_xlat8.xyz = u_xlat8.xyz + (-in_POSITION0.xyz);
					    u_xlat4 = dot(u_xlat8.xyz, u_xlat8.xyz);
					    u_xlat4 = inversesqrt(u_xlat4);
					    u_xlat8.xyz = u_xlat8.xyz * vec3(u_xlat4);
					    u_xlat6.x = dot(u_xlat6.xyz, u_xlat8.xyz);
					    u_xlat6.x = log2(abs(u_xlat6.x));
					    u_xlat6.x = u_xlat6.x * _FresnelStr;
					    u_xlat6.x = exp2(u_xlat6.x);
					    u_xlat6.x = u_xlat6.x + u_xlat6.x;
					    vs_TEXCOORD4 = min(u_xlat6.x, 1.0);
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat5 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat5;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlat10.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati3].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati3].xy + u_xlat10.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendMul" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					float u_xlat14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat14 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat2.xyz = vec3(u_xlat14) * u_xlat2.xyz;
					    u_xlat14 = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat3.xyz = vec3(u_xlat14) * in_NORMAL0.xyz;
					    u_xlat2.x = dot(u_xlat3.xyz, u_xlat2.xyz);
					    u_xlat2.x = log2(abs(u_xlat2.x));
					    u_xlat2.x = u_xlat2.x * _FresnelStr;
					    u_xlat2.x = exp2(u_xlat2.x);
					    u_xlat2.x = u_xlat2.x + u_xlat2.x;
					    vs_TEXCOORD4 = min(u_xlat2.x, 1.0);
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat4 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_3_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati1;
					vec4 u_xlat2;
					int u_xlati3;
					float u_xlat4;
					float u_xlat5;
					vec3 u_xlat6;
					vec3 u_xlat8;
					vec2 u_xlat10;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    u_xlat6.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat6.x = inversesqrt(u_xlat6.x);
					    u_xlat6.xyz = u_xlat6.xxx * in_NORMAL0.xyz;
					    u_xlati3 = unity_StereoEyeIndex;
					    u_xlat8.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].yyy;
					    u_xlat8.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].xxx + u_xlat8.xyz;
					    u_xlat8.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].zzz + u_xlat8.xyz;
					    u_xlat8.xyz = u_xlat8.xyz + unity_WorldToObject[3].xyz;
					    u_xlat8.xyz = u_xlat8.xyz + (-in_POSITION0.xyz);
					    u_xlat4 = dot(u_xlat8.xyz, u_xlat8.xyz);
					    u_xlat4 = inversesqrt(u_xlat4);
					    u_xlat8.xyz = u_xlat8.xyz * vec3(u_xlat4);
					    u_xlat6.x = dot(u_xlat6.xyz, u_xlat8.xyz);
					    u_xlat6.x = log2(abs(u_xlat6.x));
					    u_xlat6.x = u_xlat6.x * _FresnelStr;
					    u_xlat6.x = exp2(u_xlat6.x);
					    u_xlat6.x = u_xlat6.x + u_xlat6.x;
					    vs_TEXCOORD4 = min(u_xlat6.x, 1.0);
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat5 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat5;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlat10.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati3].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati3].xy + u_xlat10.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendMul" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat2 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat2;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec2 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					float u_xlat3;
					int u_xlati6;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat3 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat3;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlati6 = unity_StereoEyeIndex;
					    u_xlat1.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati6].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati6].xy + u_xlat1.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendMul" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat2 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat2;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec2 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					float u_xlat3;
					int u_xlati6;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat3 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat3;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlati6 = unity_StereoEyeIndex;
					    u_xlat1.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati6].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati6].xy + u_xlat1.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendMul" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat2 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat2;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec2 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					float u_xlat3;
					int u_xlati6;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat3 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat3;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlati6 = unity_StereoEyeIndex;
					    u_xlat1.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati6].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati6].xy + u_xlat1.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendMul" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat2 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat2;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec2 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					float u_xlat3;
					int u_xlati6;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat3 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat3;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlati6 = unity_StereoEyeIndex;
					    u_xlat1.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati6].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati6].xy + u_xlat1.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendMul" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat2 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat2;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec2 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					float u_xlat3;
					int u_xlati6;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat3 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat3;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlati6 = unity_StereoEyeIndex;
					    u_xlat1.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati6].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati6].xy + u_xlat1.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendMul" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat2 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat2;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec2 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					float u_xlat3;
					int u_xlati6;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat3 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat3;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlati6 = unity_StereoEyeIndex;
					    u_xlat1.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati6].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati6].xy + u_xlat1.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendMul" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat2 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat2;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec2 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					float u_xlat3;
					int u_xlati6;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat3 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat3;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlati6 = unity_StereoEyeIndex;
					    u_xlat1.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati6].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati6].xy + u_xlat1.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendMul" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat2 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat2;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec2 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					float u_xlat3;
					int u_xlati6;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat3 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat3;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlati6 = unity_StereoEyeIndex;
					    u_xlat1.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati6].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati6].xy + u_xlat1.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendMul" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat2 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat2;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec2 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					float u_xlat3;
					int u_xlati6;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat3 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat3;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlati6 = unity_StereoEyeIndex;
					    u_xlat1.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati6].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati6].xy + u_xlat1.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendMul" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat2 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat2;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec2 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					float u_xlat3;
					int u_xlati6;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat3 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat3;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlati6 = unity_StereoEyeIndex;
					    u_xlat1.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati6].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati6].xy + u_xlat1.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendMul" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat2 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat2;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec2 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					float u_xlat3;
					int u_xlati6;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat3 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat3;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlati6 = unity_StereoEyeIndex;
					    u_xlat1.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati6].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati6].xy + u_xlat1.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendMul" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat2 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat2;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec2 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					float u_xlat3;
					int u_xlati6;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat3 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat3;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlati6 = unity_StereoEyeIndex;
					    u_xlat1.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati6].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati6].xy + u_xlat1.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendMul" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat2 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat2;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec2 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					float u_xlat3;
					int u_xlati6;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat3 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat3;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlati6 = unity_StereoEyeIndex;
					    u_xlat1.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati6].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati6].xy + u_xlat1.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendMul" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat2 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat2;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec2 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					float u_xlat3;
					int u_xlati6;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat3 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat3;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlati6 = unity_StereoEyeIndex;
					    u_xlat1.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati6].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati6].xy + u_xlat1.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendMul" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat2 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat2;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec2 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					float u_xlat3;
					int u_xlati6;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat3 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat3;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlati6 = unity_StereoEyeIndex;
					    u_xlat1.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati6].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati6].xy + u_xlat1.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendMul" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat2 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat2;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec2 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					float u_xlat3;
					int u_xlati6;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat3 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat3;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlati6 = unity_StereoEyeIndex;
					    u_xlat1.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati6].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati6].xy + u_xlat1.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendMul" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					float u_xlat9;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat9 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat9 = inversesqrt(u_xlat9);
					    u_xlat2.xyz = vec3(u_xlat9) * u_xlat2.xyz;
					    u_xlat9 = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat9 = inversesqrt(u_xlat9);
					    u_xlat3.xyz = vec3(u_xlat9) * in_NORMAL0.xyz;
					    u_xlat9 = dot(u_xlat3.xyz, u_xlat2.xyz);
					    u_xlat9 = log2(abs(u_xlat9));
					    u_xlat9 = u_xlat9 * _FresnelStr;
					    u_xlat9 = exp2(u_xlat9);
					    u_xlat9 = u_xlat9 + u_xlat9;
					    vs_TEXCOORD4 = min(u_xlat9, 1.0);
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat4 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_3_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					vec3 u_xlat5;
					vec2 u_xlat8;
					int u_xlati10;
					float u_xlat15;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    u_xlat5.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat5.x = inversesqrt(u_xlat5.x);
					    u_xlat5.xyz = u_xlat5.xxx * in_NORMAL0.xyz;
					    u_xlati10 = unity_StereoEyeIndex;
					    u_xlat3.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati10].yyy;
					    u_xlat3.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati10].xxx + u_xlat3.xyz;
					    u_xlat3.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati10].zzz + u_xlat3.xyz;
					    u_xlat3.xyz = u_xlat3.xyz + unity_WorldToObject[3].xyz;
					    u_xlat3.xyz = u_xlat3.xyz + (-in_POSITION0.xyz);
					    u_xlat15 = dot(u_xlat3.xyz, u_xlat3.xyz);
					    u_xlat15 = inversesqrt(u_xlat15);
					    u_xlat3.xyz = vec3(u_xlat15) * u_xlat3.xyz;
					    u_xlat5.x = dot(u_xlat5.xyz, u_xlat3.xyz);
					    u_xlat5.x = log2(abs(u_xlat5.x));
					    u_xlat5.x = u_xlat5.x * _FresnelStr;
					    u_xlat5.x = exp2(u_xlat5.x);
					    u_xlat5.x = u_xlat5.x + u_xlat5.x;
					    vs_TEXCOORD4 = min(u_xlat5.x, 1.0);
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat4 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlat8.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati10].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati10].xy + u_xlat8.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendMul" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					float u_xlat9;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat9 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat9 = inversesqrt(u_xlat9);
					    u_xlat2.xyz = vec3(u_xlat9) * u_xlat2.xyz;
					    u_xlat9 = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat9 = inversesqrt(u_xlat9);
					    u_xlat3.xyz = vec3(u_xlat9) * in_NORMAL0.xyz;
					    u_xlat9 = dot(u_xlat3.xyz, u_xlat2.xyz);
					    u_xlat9 = log2(abs(u_xlat9));
					    u_xlat9 = u_xlat9 * _FresnelStr;
					    u_xlat9 = exp2(u_xlat9);
					    u_xlat9 = u_xlat9 + u_xlat9;
					    vs_TEXCOORD4 = min(u_xlat9, 1.0);
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat4 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_3_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					vec3 u_xlat5;
					vec2 u_xlat8;
					int u_xlati10;
					float u_xlat15;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    u_xlat5.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat5.x = inversesqrt(u_xlat5.x);
					    u_xlat5.xyz = u_xlat5.xxx * in_NORMAL0.xyz;
					    u_xlati10 = unity_StereoEyeIndex;
					    u_xlat3.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati10].yyy;
					    u_xlat3.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati10].xxx + u_xlat3.xyz;
					    u_xlat3.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati10].zzz + u_xlat3.xyz;
					    u_xlat3.xyz = u_xlat3.xyz + unity_WorldToObject[3].xyz;
					    u_xlat3.xyz = u_xlat3.xyz + (-in_POSITION0.xyz);
					    u_xlat15 = dot(u_xlat3.xyz, u_xlat3.xyz);
					    u_xlat15 = inversesqrt(u_xlat15);
					    u_xlat3.xyz = vec3(u_xlat15) * u_xlat3.xyz;
					    u_xlat5.x = dot(u_xlat5.xyz, u_xlat3.xyz);
					    u_xlat5.x = log2(abs(u_xlat5.x));
					    u_xlat5.x = u_xlat5.x * _FresnelStr;
					    u_xlat5.x = exp2(u_xlat5.x);
					    u_xlat5.x = u_xlat5.x + u_xlat5.x;
					    vs_TEXCOORD4 = min(u_xlat5.x, 1.0);
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat4 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlat8.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati10].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati10].xy + u_xlat8.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendMul" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					float u_xlat14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat14 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat2.xyz = vec3(u_xlat14) * u_xlat2.xyz;
					    u_xlat14 = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat3.xyz = vec3(u_xlat14) * in_NORMAL0.xyz;
					    u_xlat2.x = dot(u_xlat3.xyz, u_xlat2.xyz);
					    u_xlat2.x = log2(abs(u_xlat2.x));
					    u_xlat2.x = u_xlat2.x * _FresnelStr;
					    u_xlat2.x = exp2(u_xlat2.x);
					    u_xlat2.x = u_xlat2.x + u_xlat2.x;
					    vs_TEXCOORD4 = min(u_xlat2.x, 1.0);
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat4 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_3_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati1;
					vec4 u_xlat2;
					int u_xlati3;
					float u_xlat4;
					float u_xlat5;
					vec3 u_xlat6;
					vec3 u_xlat8;
					vec2 u_xlat10;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    u_xlat6.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat6.x = inversesqrt(u_xlat6.x);
					    u_xlat6.xyz = u_xlat6.xxx * in_NORMAL0.xyz;
					    u_xlati3 = unity_StereoEyeIndex;
					    u_xlat8.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].yyy;
					    u_xlat8.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].xxx + u_xlat8.xyz;
					    u_xlat8.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].zzz + u_xlat8.xyz;
					    u_xlat8.xyz = u_xlat8.xyz + unity_WorldToObject[3].xyz;
					    u_xlat8.xyz = u_xlat8.xyz + (-in_POSITION0.xyz);
					    u_xlat4 = dot(u_xlat8.xyz, u_xlat8.xyz);
					    u_xlat4 = inversesqrt(u_xlat4);
					    u_xlat8.xyz = u_xlat8.xyz * vec3(u_xlat4);
					    u_xlat6.x = dot(u_xlat6.xyz, u_xlat8.xyz);
					    u_xlat6.x = log2(abs(u_xlat6.x));
					    u_xlat6.x = u_xlat6.x * _FresnelStr;
					    u_xlat6.x = exp2(u_xlat6.x);
					    u_xlat6.x = u_xlat6.x + u_xlat6.x;
					    vs_TEXCOORD4 = min(u_xlat6.x, 1.0);
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat5 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat5;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlat10.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati3].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati3].xy + u_xlat10.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendMul" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					float u_xlat14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat14 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat2.xyz = vec3(u_xlat14) * u_xlat2.xyz;
					    u_xlat14 = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat3.xyz = vec3(u_xlat14) * in_NORMAL0.xyz;
					    u_xlat2.x = dot(u_xlat3.xyz, u_xlat2.xyz);
					    u_xlat2.x = log2(abs(u_xlat2.x));
					    u_xlat2.x = u_xlat2.x * _FresnelStr;
					    u_xlat2.x = exp2(u_xlat2.x);
					    u_xlat2.x = u_xlat2.x + u_xlat2.x;
					    vs_TEXCOORD4 = min(u_xlat2.x, 1.0);
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat4 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_3_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati1;
					vec4 u_xlat2;
					int u_xlati3;
					float u_xlat4;
					float u_xlat5;
					vec3 u_xlat6;
					vec3 u_xlat8;
					vec2 u_xlat10;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    u_xlat6.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat6.x = inversesqrt(u_xlat6.x);
					    u_xlat6.xyz = u_xlat6.xxx * in_NORMAL0.xyz;
					    u_xlati3 = unity_StereoEyeIndex;
					    u_xlat8.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].yyy;
					    u_xlat8.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].xxx + u_xlat8.xyz;
					    u_xlat8.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].zzz + u_xlat8.xyz;
					    u_xlat8.xyz = u_xlat8.xyz + unity_WorldToObject[3].xyz;
					    u_xlat8.xyz = u_xlat8.xyz + (-in_POSITION0.xyz);
					    u_xlat4 = dot(u_xlat8.xyz, u_xlat8.xyz);
					    u_xlat4 = inversesqrt(u_xlat4);
					    u_xlat8.xyz = u_xlat8.xyz * vec3(u_xlat4);
					    u_xlat6.x = dot(u_xlat6.xyz, u_xlat8.xyz);
					    u_xlat6.x = log2(abs(u_xlat6.x));
					    u_xlat6.x = u_xlat6.x * _FresnelStr;
					    u_xlat6.x = exp2(u_xlat6.x);
					    u_xlat6.x = u_xlat6.x + u_xlat6.x;
					    vs_TEXCOORD4 = min(u_xlat6.x, 1.0);
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat5 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat5;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlat10.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati3].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati3].xy + u_xlat10.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendMul" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					float u_xlat14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat14 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat2.xyz = vec3(u_xlat14) * u_xlat2.xyz;
					    u_xlat14 = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat3.xyz = vec3(u_xlat14) * in_NORMAL0.xyz;
					    u_xlat2.x = dot(u_xlat3.xyz, u_xlat2.xyz);
					    u_xlat2.x = log2(abs(u_xlat2.x));
					    u_xlat2.x = u_xlat2.x * _FresnelStr;
					    u_xlat2.x = exp2(u_xlat2.x);
					    u_xlat2.x = u_xlat2.x + u_xlat2.x;
					    vs_TEXCOORD4 = min(u_xlat2.x, 1.0);
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat4 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_3_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati1;
					vec4 u_xlat2;
					int u_xlati3;
					float u_xlat4;
					float u_xlat5;
					vec3 u_xlat6;
					vec3 u_xlat8;
					vec2 u_xlat10;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    u_xlat6.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat6.x = inversesqrt(u_xlat6.x);
					    u_xlat6.xyz = u_xlat6.xxx * in_NORMAL0.xyz;
					    u_xlati3 = unity_StereoEyeIndex;
					    u_xlat8.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].yyy;
					    u_xlat8.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].xxx + u_xlat8.xyz;
					    u_xlat8.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].zzz + u_xlat8.xyz;
					    u_xlat8.xyz = u_xlat8.xyz + unity_WorldToObject[3].xyz;
					    u_xlat8.xyz = u_xlat8.xyz + (-in_POSITION0.xyz);
					    u_xlat4 = dot(u_xlat8.xyz, u_xlat8.xyz);
					    u_xlat4 = inversesqrt(u_xlat4);
					    u_xlat8.xyz = u_xlat8.xyz * vec3(u_xlat4);
					    u_xlat6.x = dot(u_xlat6.xyz, u_xlat8.xyz);
					    u_xlat6.x = log2(abs(u_xlat6.x));
					    u_xlat6.x = u_xlat6.x * _FresnelStr;
					    u_xlat6.x = exp2(u_xlat6.x);
					    u_xlat6.x = u_xlat6.x + u_xlat6.x;
					    vs_TEXCOORD4 = min(u_xlat6.x, 1.0);
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat5 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat5;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlat10.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati3].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati3].xy + u_xlat10.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendMul" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					float u_xlat14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat14 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat2.xyz = vec3(u_xlat14) * u_xlat2.xyz;
					    u_xlat14 = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat3.xyz = vec3(u_xlat14) * in_NORMAL0.xyz;
					    u_xlat2.x = dot(u_xlat3.xyz, u_xlat2.xyz);
					    u_xlat2.x = log2(abs(u_xlat2.x));
					    u_xlat2.x = u_xlat2.x * _FresnelStr;
					    u_xlat2.x = exp2(u_xlat2.x);
					    u_xlat2.x = u_xlat2.x + u_xlat2.x;
					    vs_TEXCOORD4 = min(u_xlat2.x, 1.0);
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat4 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_3_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati1;
					vec4 u_xlat2;
					int u_xlati3;
					float u_xlat4;
					float u_xlat5;
					vec3 u_xlat6;
					vec3 u_xlat8;
					vec2 u_xlat10;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    u_xlat6.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat6.x = inversesqrt(u_xlat6.x);
					    u_xlat6.xyz = u_xlat6.xxx * in_NORMAL0.xyz;
					    u_xlati3 = unity_StereoEyeIndex;
					    u_xlat8.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].yyy;
					    u_xlat8.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].xxx + u_xlat8.xyz;
					    u_xlat8.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].zzz + u_xlat8.xyz;
					    u_xlat8.xyz = u_xlat8.xyz + unity_WorldToObject[3].xyz;
					    u_xlat8.xyz = u_xlat8.xyz + (-in_POSITION0.xyz);
					    u_xlat4 = dot(u_xlat8.xyz, u_xlat8.xyz);
					    u_xlat4 = inversesqrt(u_xlat4);
					    u_xlat8.xyz = u_xlat8.xyz * vec3(u_xlat4);
					    u_xlat6.x = dot(u_xlat6.xyz, u_xlat8.xyz);
					    u_xlat6.x = log2(abs(u_xlat6.x));
					    u_xlat6.x = u_xlat6.x * _FresnelStr;
					    u_xlat6.x = exp2(u_xlat6.x);
					    u_xlat6.x = u_xlat6.x + u_xlat6.x;
					    vs_TEXCOORD4 = min(u_xlat6.x, 1.0);
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat5 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat5;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlat10.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati3].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati3].xy + u_xlat10.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendMul" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					float u_xlat14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat14 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat2.xyz = vec3(u_xlat14) * u_xlat2.xyz;
					    u_xlat14 = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat3.xyz = vec3(u_xlat14) * in_NORMAL0.xyz;
					    u_xlat2.x = dot(u_xlat3.xyz, u_xlat2.xyz);
					    u_xlat2.x = log2(abs(u_xlat2.x));
					    u_xlat2.x = u_xlat2.x * _FresnelStr;
					    u_xlat2.x = exp2(u_xlat2.x);
					    u_xlat2.x = u_xlat2.x + u_xlat2.x;
					    vs_TEXCOORD4 = min(u_xlat2.x, 1.0);
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat4 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_3_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati1;
					vec4 u_xlat2;
					int u_xlati3;
					float u_xlat4;
					float u_xlat5;
					vec3 u_xlat6;
					vec3 u_xlat8;
					vec2 u_xlat10;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    u_xlat6.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat6.x = inversesqrt(u_xlat6.x);
					    u_xlat6.xyz = u_xlat6.xxx * in_NORMAL0.xyz;
					    u_xlati3 = unity_StereoEyeIndex;
					    u_xlat8.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].yyy;
					    u_xlat8.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].xxx + u_xlat8.xyz;
					    u_xlat8.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].zzz + u_xlat8.xyz;
					    u_xlat8.xyz = u_xlat8.xyz + unity_WorldToObject[3].xyz;
					    u_xlat8.xyz = u_xlat8.xyz + (-in_POSITION0.xyz);
					    u_xlat4 = dot(u_xlat8.xyz, u_xlat8.xyz);
					    u_xlat4 = inversesqrt(u_xlat4);
					    u_xlat8.xyz = u_xlat8.xyz * vec3(u_xlat4);
					    u_xlat6.x = dot(u_xlat6.xyz, u_xlat8.xyz);
					    u_xlat6.x = log2(abs(u_xlat6.x));
					    u_xlat6.x = u_xlat6.x * _FresnelStr;
					    u_xlat6.x = exp2(u_xlat6.x);
					    u_xlat6.x = u_xlat6.x + u_xlat6.x;
					    vs_TEXCOORD4 = min(u_xlat6.x, 1.0);
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat5 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat5;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlat10.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati3].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati3].xy + u_xlat10.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendMul" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					float u_xlat14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat14 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat2.xyz = vec3(u_xlat14) * u_xlat2.xyz;
					    u_xlat14 = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat3.xyz = vec3(u_xlat14) * in_NORMAL0.xyz;
					    u_xlat2.x = dot(u_xlat3.xyz, u_xlat2.xyz);
					    u_xlat2.x = log2(abs(u_xlat2.x));
					    u_xlat2.x = u_xlat2.x * _FresnelStr;
					    u_xlat2.x = exp2(u_xlat2.x);
					    u_xlat2.x = u_xlat2.x + u_xlat2.x;
					    vs_TEXCOORD4 = min(u_xlat2.x, 1.0);
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat4 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_3_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati1;
					vec4 u_xlat2;
					int u_xlati3;
					float u_xlat4;
					float u_xlat5;
					vec3 u_xlat6;
					vec3 u_xlat8;
					vec2 u_xlat10;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    u_xlat6.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat6.x = inversesqrt(u_xlat6.x);
					    u_xlat6.xyz = u_xlat6.xxx * in_NORMAL0.xyz;
					    u_xlati3 = unity_StereoEyeIndex;
					    u_xlat8.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].yyy;
					    u_xlat8.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].xxx + u_xlat8.xyz;
					    u_xlat8.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].zzz + u_xlat8.xyz;
					    u_xlat8.xyz = u_xlat8.xyz + unity_WorldToObject[3].xyz;
					    u_xlat8.xyz = u_xlat8.xyz + (-in_POSITION0.xyz);
					    u_xlat4 = dot(u_xlat8.xyz, u_xlat8.xyz);
					    u_xlat4 = inversesqrt(u_xlat4);
					    u_xlat8.xyz = u_xlat8.xyz * vec3(u_xlat4);
					    u_xlat6.x = dot(u_xlat6.xyz, u_xlat8.xyz);
					    u_xlat6.x = log2(abs(u_xlat6.x));
					    u_xlat6.x = u_xlat6.x * _FresnelStr;
					    u_xlat6.x = exp2(u_xlat6.x);
					    u_xlat6.x = u_xlat6.x + u_xlat6.x;
					    vs_TEXCOORD4 = min(u_xlat6.x, 1.0);
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat5 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat5;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlat10.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati3].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati3].xy + u_xlat10.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendMul" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					float u_xlat9;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat9 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat9 = inversesqrt(u_xlat9);
					    u_xlat2.xyz = vec3(u_xlat9) * u_xlat2.xyz;
					    u_xlat9 = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat9 = inversesqrt(u_xlat9);
					    u_xlat3.xyz = vec3(u_xlat9) * in_NORMAL0.xyz;
					    u_xlat9 = dot(u_xlat3.xyz, u_xlat2.xyz);
					    u_xlat9 = log2(abs(u_xlat9));
					    u_xlat9 = u_xlat9 * _FresnelStr;
					    u_xlat9 = exp2(u_xlat9);
					    u_xlat9 = u_xlat9 + u_xlat9;
					    vs_TEXCOORD4 = min(u_xlat9, 1.0);
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat4 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_3_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					vec3 u_xlat5;
					vec2 u_xlat8;
					int u_xlati10;
					float u_xlat15;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    u_xlat5.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat5.x = inversesqrt(u_xlat5.x);
					    u_xlat5.xyz = u_xlat5.xxx * in_NORMAL0.xyz;
					    u_xlati10 = unity_StereoEyeIndex;
					    u_xlat3.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati10].yyy;
					    u_xlat3.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati10].xxx + u_xlat3.xyz;
					    u_xlat3.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati10].zzz + u_xlat3.xyz;
					    u_xlat3.xyz = u_xlat3.xyz + unity_WorldToObject[3].xyz;
					    u_xlat3.xyz = u_xlat3.xyz + (-in_POSITION0.xyz);
					    u_xlat15 = dot(u_xlat3.xyz, u_xlat3.xyz);
					    u_xlat15 = inversesqrt(u_xlat15);
					    u_xlat3.xyz = vec3(u_xlat15) * u_xlat3.xyz;
					    u_xlat5.x = dot(u_xlat5.xyz, u_xlat3.xyz);
					    u_xlat5.x = log2(abs(u_xlat5.x));
					    u_xlat5.x = u_xlat5.x * _FresnelStr;
					    u_xlat5.x = exp2(u_xlat5.x);
					    u_xlat5.x = u_xlat5.x + u_xlat5.x;
					    vs_TEXCOORD4 = min(u_xlat5.x, 1.0);
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat4 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlat8.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati10].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati10].xy + u_xlat8.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendMul" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					float u_xlat9;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat9 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat9 = inversesqrt(u_xlat9);
					    u_xlat2.xyz = vec3(u_xlat9) * u_xlat2.xyz;
					    u_xlat9 = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat9 = inversesqrt(u_xlat9);
					    u_xlat3.xyz = vec3(u_xlat9) * in_NORMAL0.xyz;
					    u_xlat9 = dot(u_xlat3.xyz, u_xlat2.xyz);
					    u_xlat9 = log2(abs(u_xlat9));
					    u_xlat9 = u_xlat9 * _FresnelStr;
					    u_xlat9 = exp2(u_xlat9);
					    u_xlat9 = u_xlat9 + u_xlat9;
					    vs_TEXCOORD4 = min(u_xlat9, 1.0);
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat4 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_3_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					vec3 u_xlat5;
					vec2 u_xlat8;
					int u_xlati10;
					float u_xlat15;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    u_xlat5.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat5.x = inversesqrt(u_xlat5.x);
					    u_xlat5.xyz = u_xlat5.xxx * in_NORMAL0.xyz;
					    u_xlati10 = unity_StereoEyeIndex;
					    u_xlat3.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati10].yyy;
					    u_xlat3.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati10].xxx + u_xlat3.xyz;
					    u_xlat3.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati10].zzz + u_xlat3.xyz;
					    u_xlat3.xyz = u_xlat3.xyz + unity_WorldToObject[3].xyz;
					    u_xlat3.xyz = u_xlat3.xyz + (-in_POSITION0.xyz);
					    u_xlat15 = dot(u_xlat3.xyz, u_xlat3.xyz);
					    u_xlat15 = inversesqrt(u_xlat15);
					    u_xlat3.xyz = vec3(u_xlat15) * u_xlat3.xyz;
					    u_xlat5.x = dot(u_xlat5.xyz, u_xlat3.xyz);
					    u_xlat5.x = log2(abs(u_xlat5.x));
					    u_xlat5.x = u_xlat5.x * _FresnelStr;
					    u_xlat5.x = exp2(u_xlat5.x);
					    u_xlat5.x = u_xlat5.x + u_xlat5.x;
					    vs_TEXCOORD4 = min(u_xlat5.x, 1.0);
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat4 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlat8.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati10].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati10].xy + u_xlat8.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendMul" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					float u_xlat14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat14 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat2.xyz = vec3(u_xlat14) * u_xlat2.xyz;
					    u_xlat14 = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat3.xyz = vec3(u_xlat14) * in_NORMAL0.xyz;
					    u_xlat2.x = dot(u_xlat3.xyz, u_xlat2.xyz);
					    u_xlat2.x = log2(abs(u_xlat2.x));
					    u_xlat2.x = u_xlat2.x * _FresnelStr;
					    u_xlat2.x = exp2(u_xlat2.x);
					    u_xlat2.x = u_xlat2.x + u_xlat2.x;
					    vs_TEXCOORD4 = min(u_xlat2.x, 1.0);
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat4 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_3_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati1;
					vec4 u_xlat2;
					int u_xlati3;
					float u_xlat4;
					float u_xlat5;
					vec3 u_xlat6;
					vec3 u_xlat8;
					vec2 u_xlat10;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    u_xlat6.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat6.x = inversesqrt(u_xlat6.x);
					    u_xlat6.xyz = u_xlat6.xxx * in_NORMAL0.xyz;
					    u_xlati3 = unity_StereoEyeIndex;
					    u_xlat8.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].yyy;
					    u_xlat8.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].xxx + u_xlat8.xyz;
					    u_xlat8.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].zzz + u_xlat8.xyz;
					    u_xlat8.xyz = u_xlat8.xyz + unity_WorldToObject[3].xyz;
					    u_xlat8.xyz = u_xlat8.xyz + (-in_POSITION0.xyz);
					    u_xlat4 = dot(u_xlat8.xyz, u_xlat8.xyz);
					    u_xlat4 = inversesqrt(u_xlat4);
					    u_xlat8.xyz = u_xlat8.xyz * vec3(u_xlat4);
					    u_xlat6.x = dot(u_xlat6.xyz, u_xlat8.xyz);
					    u_xlat6.x = log2(abs(u_xlat6.x));
					    u_xlat6.x = u_xlat6.x * _FresnelStr;
					    u_xlat6.x = exp2(u_xlat6.x);
					    u_xlat6.x = u_xlat6.x + u_xlat6.x;
					    vs_TEXCOORD4 = min(u_xlat6.x, 1.0);
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat5 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat5;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlat10.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati3].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati3].xy + u_xlat10.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendMul" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					float u_xlat14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat14 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat2.xyz = vec3(u_xlat14) * u_xlat2.xyz;
					    u_xlat14 = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat3.xyz = vec3(u_xlat14) * in_NORMAL0.xyz;
					    u_xlat2.x = dot(u_xlat3.xyz, u_xlat2.xyz);
					    u_xlat2.x = log2(abs(u_xlat2.x));
					    u_xlat2.x = u_xlat2.x * _FresnelStr;
					    u_xlat2.x = exp2(u_xlat2.x);
					    u_xlat2.x = u_xlat2.x + u_xlat2.x;
					    vs_TEXCOORD4 = min(u_xlat2.x, 1.0);
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat4 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_3_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati1;
					vec4 u_xlat2;
					int u_xlati3;
					float u_xlat4;
					float u_xlat5;
					vec3 u_xlat6;
					vec3 u_xlat8;
					vec2 u_xlat10;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    u_xlat6.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat6.x = inversesqrt(u_xlat6.x);
					    u_xlat6.xyz = u_xlat6.xxx * in_NORMAL0.xyz;
					    u_xlati3 = unity_StereoEyeIndex;
					    u_xlat8.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].yyy;
					    u_xlat8.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].xxx + u_xlat8.xyz;
					    u_xlat8.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].zzz + u_xlat8.xyz;
					    u_xlat8.xyz = u_xlat8.xyz + unity_WorldToObject[3].xyz;
					    u_xlat8.xyz = u_xlat8.xyz + (-in_POSITION0.xyz);
					    u_xlat4 = dot(u_xlat8.xyz, u_xlat8.xyz);
					    u_xlat4 = inversesqrt(u_xlat4);
					    u_xlat8.xyz = u_xlat8.xyz * vec3(u_xlat4);
					    u_xlat6.x = dot(u_xlat6.xyz, u_xlat8.xyz);
					    u_xlat6.x = log2(abs(u_xlat6.x));
					    u_xlat6.x = u_xlat6.x * _FresnelStr;
					    u_xlat6.x = exp2(u_xlat6.x);
					    u_xlat6.x = u_xlat6.x + u_xlat6.x;
					    vs_TEXCOORD4 = min(u_xlat6.x, 1.0);
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat5 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat5;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlat10.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati3].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati3].xy + u_xlat10.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendMul" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					float u_xlat14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat14 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat2.xyz = vec3(u_xlat14) * u_xlat2.xyz;
					    u_xlat14 = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat3.xyz = vec3(u_xlat14) * in_NORMAL0.xyz;
					    u_xlat2.x = dot(u_xlat3.xyz, u_xlat2.xyz);
					    u_xlat2.x = log2(abs(u_xlat2.x));
					    u_xlat2.x = u_xlat2.x * _FresnelStr;
					    u_xlat2.x = exp2(u_xlat2.x);
					    u_xlat2.x = u_xlat2.x + u_xlat2.x;
					    vs_TEXCOORD4 = min(u_xlat2.x, 1.0);
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat4 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_3_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati1;
					vec4 u_xlat2;
					int u_xlati3;
					float u_xlat4;
					float u_xlat5;
					vec3 u_xlat6;
					vec3 u_xlat8;
					vec2 u_xlat10;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    u_xlat6.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat6.x = inversesqrt(u_xlat6.x);
					    u_xlat6.xyz = u_xlat6.xxx * in_NORMAL0.xyz;
					    u_xlati3 = unity_StereoEyeIndex;
					    u_xlat8.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].yyy;
					    u_xlat8.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].xxx + u_xlat8.xyz;
					    u_xlat8.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].zzz + u_xlat8.xyz;
					    u_xlat8.xyz = u_xlat8.xyz + unity_WorldToObject[3].xyz;
					    u_xlat8.xyz = u_xlat8.xyz + (-in_POSITION0.xyz);
					    u_xlat4 = dot(u_xlat8.xyz, u_xlat8.xyz);
					    u_xlat4 = inversesqrt(u_xlat4);
					    u_xlat8.xyz = u_xlat8.xyz * vec3(u_xlat4);
					    u_xlat6.x = dot(u_xlat6.xyz, u_xlat8.xyz);
					    u_xlat6.x = log2(abs(u_xlat6.x));
					    u_xlat6.x = u_xlat6.x * _FresnelStr;
					    u_xlat6.x = exp2(u_xlat6.x);
					    u_xlat6.x = u_xlat6.x + u_xlat6.x;
					    vs_TEXCOORD4 = min(u_xlat6.x, 1.0);
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat5 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat5;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlat10.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati3].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati3].xy + u_xlat10.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendMul" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					float u_xlat14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat14 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat2.xyz = vec3(u_xlat14) * u_xlat2.xyz;
					    u_xlat14 = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat3.xyz = vec3(u_xlat14) * in_NORMAL0.xyz;
					    u_xlat2.x = dot(u_xlat3.xyz, u_xlat2.xyz);
					    u_xlat2.x = log2(abs(u_xlat2.x));
					    u_xlat2.x = u_xlat2.x * _FresnelStr;
					    u_xlat2.x = exp2(u_xlat2.x);
					    u_xlat2.x = u_xlat2.x + u_xlat2.x;
					    vs_TEXCOORD4 = min(u_xlat2.x, 1.0);
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat4 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_3_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati1;
					vec4 u_xlat2;
					int u_xlati3;
					float u_xlat4;
					float u_xlat5;
					vec3 u_xlat6;
					vec3 u_xlat8;
					vec2 u_xlat10;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    u_xlat6.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat6.x = inversesqrt(u_xlat6.x);
					    u_xlat6.xyz = u_xlat6.xxx * in_NORMAL0.xyz;
					    u_xlati3 = unity_StereoEyeIndex;
					    u_xlat8.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].yyy;
					    u_xlat8.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].xxx + u_xlat8.xyz;
					    u_xlat8.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].zzz + u_xlat8.xyz;
					    u_xlat8.xyz = u_xlat8.xyz + unity_WorldToObject[3].xyz;
					    u_xlat8.xyz = u_xlat8.xyz + (-in_POSITION0.xyz);
					    u_xlat4 = dot(u_xlat8.xyz, u_xlat8.xyz);
					    u_xlat4 = inversesqrt(u_xlat4);
					    u_xlat8.xyz = u_xlat8.xyz * vec3(u_xlat4);
					    u_xlat6.x = dot(u_xlat6.xyz, u_xlat8.xyz);
					    u_xlat6.x = log2(abs(u_xlat6.x));
					    u_xlat6.x = u_xlat6.x * _FresnelStr;
					    u_xlat6.x = exp2(u_xlat6.x);
					    u_xlat6.x = u_xlat6.x + u_xlat6.x;
					    vs_TEXCOORD4 = min(u_xlat6.x, 1.0);
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat5 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat5;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlat10.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati3].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati3].xy + u_xlat10.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendMul" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					float u_xlat14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat14 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat2.xyz = vec3(u_xlat14) * u_xlat2.xyz;
					    u_xlat14 = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat3.xyz = vec3(u_xlat14) * in_NORMAL0.xyz;
					    u_xlat2.x = dot(u_xlat3.xyz, u_xlat2.xyz);
					    u_xlat2.x = log2(abs(u_xlat2.x));
					    u_xlat2.x = u_xlat2.x * _FresnelStr;
					    u_xlat2.x = exp2(u_xlat2.x);
					    u_xlat2.x = u_xlat2.x + u_xlat2.x;
					    vs_TEXCOORD4 = min(u_xlat2.x, 1.0);
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat4 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_3_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati1;
					vec4 u_xlat2;
					int u_xlati3;
					float u_xlat4;
					float u_xlat5;
					vec3 u_xlat6;
					vec3 u_xlat8;
					vec2 u_xlat10;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    u_xlat6.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat6.x = inversesqrt(u_xlat6.x);
					    u_xlat6.xyz = u_xlat6.xxx * in_NORMAL0.xyz;
					    u_xlati3 = unity_StereoEyeIndex;
					    u_xlat8.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].yyy;
					    u_xlat8.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].xxx + u_xlat8.xyz;
					    u_xlat8.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].zzz + u_xlat8.xyz;
					    u_xlat8.xyz = u_xlat8.xyz + unity_WorldToObject[3].xyz;
					    u_xlat8.xyz = u_xlat8.xyz + (-in_POSITION0.xyz);
					    u_xlat4 = dot(u_xlat8.xyz, u_xlat8.xyz);
					    u_xlat4 = inversesqrt(u_xlat4);
					    u_xlat8.xyz = u_xlat8.xyz * vec3(u_xlat4);
					    u_xlat6.x = dot(u_xlat6.xyz, u_xlat8.xyz);
					    u_xlat6.x = log2(abs(u_xlat6.x));
					    u_xlat6.x = u_xlat6.x * _FresnelStr;
					    u_xlat6.x = exp2(u_xlat6.x);
					    u_xlat6.x = u_xlat6.x + u_xlat6.x;
					    vs_TEXCOORD4 = min(u_xlat6.x, 1.0);
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat5 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat5;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlat10.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati3].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati3].xy + u_xlat10.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendMul" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					float u_xlat14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat14 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat2.xyz = vec3(u_xlat14) * u_xlat2.xyz;
					    u_xlat14 = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat3.xyz = vec3(u_xlat14) * in_NORMAL0.xyz;
					    u_xlat2.x = dot(u_xlat3.xyz, u_xlat2.xyz);
					    u_xlat2.x = log2(abs(u_xlat2.x));
					    u_xlat2.x = u_xlat2.x * _FresnelStr;
					    u_xlat2.x = exp2(u_xlat2.x);
					    u_xlat2.x = u_xlat2.x + u_xlat2.x;
					    vs_TEXCOORD4 = min(u_xlat2.x, 1.0);
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat4 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_3_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati1;
					vec4 u_xlat2;
					int u_xlati3;
					float u_xlat4;
					float u_xlat5;
					vec3 u_xlat6;
					vec3 u_xlat8;
					vec2 u_xlat10;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    u_xlat6.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat6.x = inversesqrt(u_xlat6.x);
					    u_xlat6.xyz = u_xlat6.xxx * in_NORMAL0.xyz;
					    u_xlati3 = unity_StereoEyeIndex;
					    u_xlat8.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].yyy;
					    u_xlat8.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].xxx + u_xlat8.xyz;
					    u_xlat8.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].zzz + u_xlat8.xyz;
					    u_xlat8.xyz = u_xlat8.xyz + unity_WorldToObject[3].xyz;
					    u_xlat8.xyz = u_xlat8.xyz + (-in_POSITION0.xyz);
					    u_xlat4 = dot(u_xlat8.xyz, u_xlat8.xyz);
					    u_xlat4 = inversesqrt(u_xlat4);
					    u_xlat8.xyz = u_xlat8.xyz * vec3(u_xlat4);
					    u_xlat6.x = dot(u_xlat6.xyz, u_xlat8.xyz);
					    u_xlat6.x = log2(abs(u_xlat6.x));
					    u_xlat6.x = u_xlat6.x * _FresnelStr;
					    u_xlat6.x = exp2(u_xlat6.x);
					    u_xlat6.x = u_xlat6.x + u_xlat6.x;
					    vs_TEXCOORD4 = min(u_xlat6.x, 1.0);
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat5 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat5;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlat10.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati3].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati3].xy + u_xlat10.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendMul" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat2 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat2;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec2 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					float u_xlat3;
					int u_xlati6;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat3 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat3;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlati6 = unity_StereoEyeIndex;
					    u_xlat1.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati6].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati6].xy + u_xlat1.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendMul" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat2 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat2;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec2 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					float u_xlat3;
					int u_xlati6;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat3 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat3;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlati6 = unity_StereoEyeIndex;
					    u_xlat1.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati6].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati6].xy + u_xlat1.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendMul" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat2 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat2;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec2 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					float u_xlat3;
					int u_xlati6;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat3 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat3;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlati6 = unity_StereoEyeIndex;
					    u_xlat1.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati6].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati6].xy + u_xlat1.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendMul" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat2 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat2;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec2 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					float u_xlat3;
					int u_xlati6;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat3 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat3;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlati6 = unity_StereoEyeIndex;
					    u_xlat1.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati6].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati6].xy + u_xlat1.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendMul" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat2 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat2;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec2 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					float u_xlat3;
					int u_xlati6;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat3 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat3;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlati6 = unity_StereoEyeIndex;
					    u_xlat1.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati6].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati6].xy + u_xlat1.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendMul" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat2 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat2;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec2 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					float u_xlat3;
					int u_xlati6;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat3 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat3;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlati6 = unity_StereoEyeIndex;
					    u_xlat1.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati6].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati6].xy + u_xlat1.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendMul" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat2 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat2;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec2 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					float u_xlat3;
					int u_xlati6;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat3 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat3;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlati6 = unity_StereoEyeIndex;
					    u_xlat1.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati6].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati6].xy + u_xlat1.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendMul" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat2 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat2;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec2 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					float u_xlat3;
					int u_xlati6;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat3 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat3;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlati6 = unity_StereoEyeIndex;
					    u_xlat1.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati6].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati6].xy + u_xlat1.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendMul" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat2 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat2;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec2 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					float u_xlat3;
					int u_xlati6;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat3 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat3;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlati6 = unity_StereoEyeIndex;
					    u_xlat1.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati6].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati6].xy + u_xlat1.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendMul" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat2 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat2;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec2 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					float u_xlat3;
					int u_xlati6;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat3 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat3;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlati6 = unity_StereoEyeIndex;
					    u_xlat1.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati6].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati6].xy + u_xlat1.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendMul" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat2 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat2;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec2 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					float u_xlat3;
					int u_xlati6;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat3 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat3;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlati6 = unity_StereoEyeIndex;
					    u_xlat1.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati6].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati6].xy + u_xlat1.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendMul" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat2 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat2;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec2 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					float u_xlat3;
					int u_xlati6;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat3 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat3;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlati6 = unity_StereoEyeIndex;
					    u_xlat1.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati6].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati6].xy + u_xlat1.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendMul" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat2 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat2;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec2 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					float u_xlat3;
					int u_xlati6;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat3 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat3;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlati6 = unity_StereoEyeIndex;
					    u_xlat1.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati6].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati6].xy + u_xlat1.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendMul" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat2 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat2;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec2 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					float u_xlat3;
					int u_xlati6;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat3 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat3;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlati6 = unity_StereoEyeIndex;
					    u_xlat1.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati6].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati6].xy + u_xlat1.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendMul" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat2 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat2;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec2 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					float u_xlat3;
					int u_xlati6;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat3 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat3;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlati6 = unity_StereoEyeIndex;
					    u_xlat1.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati6].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati6].xy + u_xlat1.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendMul" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat2 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat2;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec2 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					float u_xlat3;
					int u_xlati6;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat3 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat3;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlati6 = unity_StereoEyeIndex;
					    u_xlat1.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati6].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati6].xy + u_xlat1.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendMul" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					float u_xlat9;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat9 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat9 = inversesqrt(u_xlat9);
					    u_xlat2.xyz = vec3(u_xlat9) * u_xlat2.xyz;
					    u_xlat9 = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat9 = inversesqrt(u_xlat9);
					    u_xlat3.xyz = vec3(u_xlat9) * in_NORMAL0.xyz;
					    u_xlat9 = dot(u_xlat3.xyz, u_xlat2.xyz);
					    u_xlat9 = log2(abs(u_xlat9));
					    u_xlat9 = u_xlat9 * _FresnelStr;
					    u_xlat9 = exp2(u_xlat9);
					    u_xlat9 = u_xlat9 + u_xlat9;
					    vs_TEXCOORD4 = min(u_xlat9, 1.0);
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat4 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_3_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					vec3 u_xlat5;
					vec2 u_xlat8;
					int u_xlati10;
					float u_xlat15;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    u_xlat5.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat5.x = inversesqrt(u_xlat5.x);
					    u_xlat5.xyz = u_xlat5.xxx * in_NORMAL0.xyz;
					    u_xlati10 = unity_StereoEyeIndex;
					    u_xlat3.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati10].yyy;
					    u_xlat3.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati10].xxx + u_xlat3.xyz;
					    u_xlat3.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati10].zzz + u_xlat3.xyz;
					    u_xlat3.xyz = u_xlat3.xyz + unity_WorldToObject[3].xyz;
					    u_xlat3.xyz = u_xlat3.xyz + (-in_POSITION0.xyz);
					    u_xlat15 = dot(u_xlat3.xyz, u_xlat3.xyz);
					    u_xlat15 = inversesqrt(u_xlat15);
					    u_xlat3.xyz = vec3(u_xlat15) * u_xlat3.xyz;
					    u_xlat5.x = dot(u_xlat5.xyz, u_xlat3.xyz);
					    u_xlat5.x = log2(abs(u_xlat5.x));
					    u_xlat5.x = u_xlat5.x * _FresnelStr;
					    u_xlat5.x = exp2(u_xlat5.x);
					    u_xlat5.x = u_xlat5.x + u_xlat5.x;
					    vs_TEXCOORD4 = min(u_xlat5.x, 1.0);
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat4 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlat8.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati10].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati10].xy + u_xlat8.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendMul" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					float u_xlat9;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat9 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat9 = inversesqrt(u_xlat9);
					    u_xlat2.xyz = vec3(u_xlat9) * u_xlat2.xyz;
					    u_xlat9 = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat9 = inversesqrt(u_xlat9);
					    u_xlat3.xyz = vec3(u_xlat9) * in_NORMAL0.xyz;
					    u_xlat9 = dot(u_xlat3.xyz, u_xlat2.xyz);
					    u_xlat9 = log2(abs(u_xlat9));
					    u_xlat9 = u_xlat9 * _FresnelStr;
					    u_xlat9 = exp2(u_xlat9);
					    u_xlat9 = u_xlat9 + u_xlat9;
					    vs_TEXCOORD4 = min(u_xlat9, 1.0);
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat4 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_3_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					vec3 u_xlat5;
					vec2 u_xlat8;
					int u_xlati10;
					float u_xlat15;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    u_xlat5.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat5.x = inversesqrt(u_xlat5.x);
					    u_xlat5.xyz = u_xlat5.xxx * in_NORMAL0.xyz;
					    u_xlati10 = unity_StereoEyeIndex;
					    u_xlat3.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati10].yyy;
					    u_xlat3.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati10].xxx + u_xlat3.xyz;
					    u_xlat3.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati10].zzz + u_xlat3.xyz;
					    u_xlat3.xyz = u_xlat3.xyz + unity_WorldToObject[3].xyz;
					    u_xlat3.xyz = u_xlat3.xyz + (-in_POSITION0.xyz);
					    u_xlat15 = dot(u_xlat3.xyz, u_xlat3.xyz);
					    u_xlat15 = inversesqrt(u_xlat15);
					    u_xlat3.xyz = vec3(u_xlat15) * u_xlat3.xyz;
					    u_xlat5.x = dot(u_xlat5.xyz, u_xlat3.xyz);
					    u_xlat5.x = log2(abs(u_xlat5.x));
					    u_xlat5.x = u_xlat5.x * _FresnelStr;
					    u_xlat5.x = exp2(u_xlat5.x);
					    u_xlat5.x = u_xlat5.x + u_xlat5.x;
					    vs_TEXCOORD4 = min(u_xlat5.x, 1.0);
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat4 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlat8.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati10].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati10].xy + u_xlat8.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendMul" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					float u_xlat14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat14 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat2.xyz = vec3(u_xlat14) * u_xlat2.xyz;
					    u_xlat14 = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat3.xyz = vec3(u_xlat14) * in_NORMAL0.xyz;
					    u_xlat2.x = dot(u_xlat3.xyz, u_xlat2.xyz);
					    u_xlat2.x = log2(abs(u_xlat2.x));
					    u_xlat2.x = u_xlat2.x * _FresnelStr;
					    u_xlat2.x = exp2(u_xlat2.x);
					    u_xlat2.x = u_xlat2.x + u_xlat2.x;
					    vs_TEXCOORD4 = min(u_xlat2.x, 1.0);
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat4 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_3_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati1;
					vec4 u_xlat2;
					int u_xlati3;
					float u_xlat4;
					float u_xlat5;
					vec3 u_xlat6;
					vec3 u_xlat8;
					vec2 u_xlat10;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    u_xlat6.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat6.x = inversesqrt(u_xlat6.x);
					    u_xlat6.xyz = u_xlat6.xxx * in_NORMAL0.xyz;
					    u_xlati3 = unity_StereoEyeIndex;
					    u_xlat8.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].yyy;
					    u_xlat8.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].xxx + u_xlat8.xyz;
					    u_xlat8.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].zzz + u_xlat8.xyz;
					    u_xlat8.xyz = u_xlat8.xyz + unity_WorldToObject[3].xyz;
					    u_xlat8.xyz = u_xlat8.xyz + (-in_POSITION0.xyz);
					    u_xlat4 = dot(u_xlat8.xyz, u_xlat8.xyz);
					    u_xlat4 = inversesqrt(u_xlat4);
					    u_xlat8.xyz = u_xlat8.xyz * vec3(u_xlat4);
					    u_xlat6.x = dot(u_xlat6.xyz, u_xlat8.xyz);
					    u_xlat6.x = log2(abs(u_xlat6.x));
					    u_xlat6.x = u_xlat6.x * _FresnelStr;
					    u_xlat6.x = exp2(u_xlat6.x);
					    u_xlat6.x = u_xlat6.x + u_xlat6.x;
					    vs_TEXCOORD4 = min(u_xlat6.x, 1.0);
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat5 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat5;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlat10.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati3].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati3].xy + u_xlat10.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendMul" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					float u_xlat14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat14 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat2.xyz = vec3(u_xlat14) * u_xlat2.xyz;
					    u_xlat14 = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat3.xyz = vec3(u_xlat14) * in_NORMAL0.xyz;
					    u_xlat2.x = dot(u_xlat3.xyz, u_xlat2.xyz);
					    u_xlat2.x = log2(abs(u_xlat2.x));
					    u_xlat2.x = u_xlat2.x * _FresnelStr;
					    u_xlat2.x = exp2(u_xlat2.x);
					    u_xlat2.x = u_xlat2.x + u_xlat2.x;
					    vs_TEXCOORD4 = min(u_xlat2.x, 1.0);
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat4 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_3_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati1;
					vec4 u_xlat2;
					int u_xlati3;
					float u_xlat4;
					float u_xlat5;
					vec3 u_xlat6;
					vec3 u_xlat8;
					vec2 u_xlat10;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    u_xlat6.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat6.x = inversesqrt(u_xlat6.x);
					    u_xlat6.xyz = u_xlat6.xxx * in_NORMAL0.xyz;
					    u_xlati3 = unity_StereoEyeIndex;
					    u_xlat8.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].yyy;
					    u_xlat8.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].xxx + u_xlat8.xyz;
					    u_xlat8.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].zzz + u_xlat8.xyz;
					    u_xlat8.xyz = u_xlat8.xyz + unity_WorldToObject[3].xyz;
					    u_xlat8.xyz = u_xlat8.xyz + (-in_POSITION0.xyz);
					    u_xlat4 = dot(u_xlat8.xyz, u_xlat8.xyz);
					    u_xlat4 = inversesqrt(u_xlat4);
					    u_xlat8.xyz = u_xlat8.xyz * vec3(u_xlat4);
					    u_xlat6.x = dot(u_xlat6.xyz, u_xlat8.xyz);
					    u_xlat6.x = log2(abs(u_xlat6.x));
					    u_xlat6.x = u_xlat6.x * _FresnelStr;
					    u_xlat6.x = exp2(u_xlat6.x);
					    u_xlat6.x = u_xlat6.x + u_xlat6.x;
					    vs_TEXCOORD4 = min(u_xlat6.x, 1.0);
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat5 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat5;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlat10.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati3].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati3].xy + u_xlat10.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendMul" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					float u_xlat14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat14 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat2.xyz = vec3(u_xlat14) * u_xlat2.xyz;
					    u_xlat14 = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat3.xyz = vec3(u_xlat14) * in_NORMAL0.xyz;
					    u_xlat2.x = dot(u_xlat3.xyz, u_xlat2.xyz);
					    u_xlat2.x = log2(abs(u_xlat2.x));
					    u_xlat2.x = u_xlat2.x * _FresnelStr;
					    u_xlat2.x = exp2(u_xlat2.x);
					    u_xlat2.x = u_xlat2.x + u_xlat2.x;
					    vs_TEXCOORD4 = min(u_xlat2.x, 1.0);
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat4 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_3_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati1;
					vec4 u_xlat2;
					int u_xlati3;
					float u_xlat4;
					float u_xlat5;
					vec3 u_xlat6;
					vec3 u_xlat8;
					vec2 u_xlat10;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    u_xlat6.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat6.x = inversesqrt(u_xlat6.x);
					    u_xlat6.xyz = u_xlat6.xxx * in_NORMAL0.xyz;
					    u_xlati3 = unity_StereoEyeIndex;
					    u_xlat8.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].yyy;
					    u_xlat8.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].xxx + u_xlat8.xyz;
					    u_xlat8.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].zzz + u_xlat8.xyz;
					    u_xlat8.xyz = u_xlat8.xyz + unity_WorldToObject[3].xyz;
					    u_xlat8.xyz = u_xlat8.xyz + (-in_POSITION0.xyz);
					    u_xlat4 = dot(u_xlat8.xyz, u_xlat8.xyz);
					    u_xlat4 = inversesqrt(u_xlat4);
					    u_xlat8.xyz = u_xlat8.xyz * vec3(u_xlat4);
					    u_xlat6.x = dot(u_xlat6.xyz, u_xlat8.xyz);
					    u_xlat6.x = log2(abs(u_xlat6.x));
					    u_xlat6.x = u_xlat6.x * _FresnelStr;
					    u_xlat6.x = exp2(u_xlat6.x);
					    u_xlat6.x = u_xlat6.x + u_xlat6.x;
					    vs_TEXCOORD4 = min(u_xlat6.x, 1.0);
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat5 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat5;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlat10.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati3].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati3].xy + u_xlat10.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendMul" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					float u_xlat14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat14 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat2.xyz = vec3(u_xlat14) * u_xlat2.xyz;
					    u_xlat14 = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat3.xyz = vec3(u_xlat14) * in_NORMAL0.xyz;
					    u_xlat2.x = dot(u_xlat3.xyz, u_xlat2.xyz);
					    u_xlat2.x = log2(abs(u_xlat2.x));
					    u_xlat2.x = u_xlat2.x * _FresnelStr;
					    u_xlat2.x = exp2(u_xlat2.x);
					    u_xlat2.x = u_xlat2.x + u_xlat2.x;
					    vs_TEXCOORD4 = min(u_xlat2.x, 1.0);
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat4 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_3_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati1;
					vec4 u_xlat2;
					int u_xlati3;
					float u_xlat4;
					float u_xlat5;
					vec3 u_xlat6;
					vec3 u_xlat8;
					vec2 u_xlat10;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    u_xlat6.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat6.x = inversesqrt(u_xlat6.x);
					    u_xlat6.xyz = u_xlat6.xxx * in_NORMAL0.xyz;
					    u_xlati3 = unity_StereoEyeIndex;
					    u_xlat8.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].yyy;
					    u_xlat8.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].xxx + u_xlat8.xyz;
					    u_xlat8.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].zzz + u_xlat8.xyz;
					    u_xlat8.xyz = u_xlat8.xyz + unity_WorldToObject[3].xyz;
					    u_xlat8.xyz = u_xlat8.xyz + (-in_POSITION0.xyz);
					    u_xlat4 = dot(u_xlat8.xyz, u_xlat8.xyz);
					    u_xlat4 = inversesqrt(u_xlat4);
					    u_xlat8.xyz = u_xlat8.xyz * vec3(u_xlat4);
					    u_xlat6.x = dot(u_xlat6.xyz, u_xlat8.xyz);
					    u_xlat6.x = log2(abs(u_xlat6.x));
					    u_xlat6.x = u_xlat6.x * _FresnelStr;
					    u_xlat6.x = exp2(u_xlat6.x);
					    u_xlat6.x = u_xlat6.x + u_xlat6.x;
					    vs_TEXCOORD4 = min(u_xlat6.x, 1.0);
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat5 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat5;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlat10.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati3].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati3].xy + u_xlat10.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendMul" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					float u_xlat14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat14 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat2.xyz = vec3(u_xlat14) * u_xlat2.xyz;
					    u_xlat14 = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat3.xyz = vec3(u_xlat14) * in_NORMAL0.xyz;
					    u_xlat2.x = dot(u_xlat3.xyz, u_xlat2.xyz);
					    u_xlat2.x = log2(abs(u_xlat2.x));
					    u_xlat2.x = u_xlat2.x * _FresnelStr;
					    u_xlat2.x = exp2(u_xlat2.x);
					    u_xlat2.x = u_xlat2.x + u_xlat2.x;
					    vs_TEXCOORD4 = min(u_xlat2.x, 1.0);
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat4 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_3_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati1;
					vec4 u_xlat2;
					int u_xlati3;
					float u_xlat4;
					float u_xlat5;
					vec3 u_xlat6;
					vec3 u_xlat8;
					vec2 u_xlat10;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    u_xlat6.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat6.x = inversesqrt(u_xlat6.x);
					    u_xlat6.xyz = u_xlat6.xxx * in_NORMAL0.xyz;
					    u_xlati3 = unity_StereoEyeIndex;
					    u_xlat8.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].yyy;
					    u_xlat8.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].xxx + u_xlat8.xyz;
					    u_xlat8.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].zzz + u_xlat8.xyz;
					    u_xlat8.xyz = u_xlat8.xyz + unity_WorldToObject[3].xyz;
					    u_xlat8.xyz = u_xlat8.xyz + (-in_POSITION0.xyz);
					    u_xlat4 = dot(u_xlat8.xyz, u_xlat8.xyz);
					    u_xlat4 = inversesqrt(u_xlat4);
					    u_xlat8.xyz = u_xlat8.xyz * vec3(u_xlat4);
					    u_xlat6.x = dot(u_xlat6.xyz, u_xlat8.xyz);
					    u_xlat6.x = log2(abs(u_xlat6.x));
					    u_xlat6.x = u_xlat6.x * _FresnelStr;
					    u_xlat6.x = exp2(u_xlat6.x);
					    u_xlat6.x = u_xlat6.x + u_xlat6.x;
					    vs_TEXCOORD4 = min(u_xlat6.x, 1.0);
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat5 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat5;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlat10.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati3].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati3].xy + u_xlat10.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendMul" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					float u_xlat14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat14 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat2.xyz = vec3(u_xlat14) * u_xlat2.xyz;
					    u_xlat14 = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat3.xyz = vec3(u_xlat14) * in_NORMAL0.xyz;
					    u_xlat2.x = dot(u_xlat3.xyz, u_xlat2.xyz);
					    u_xlat2.x = log2(abs(u_xlat2.x));
					    u_xlat2.x = u_xlat2.x * _FresnelStr;
					    u_xlat2.x = exp2(u_xlat2.x);
					    u_xlat2.x = u_xlat2.x + u_xlat2.x;
					    vs_TEXCOORD4 = min(u_xlat2.x, 1.0);
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat4 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_3_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati1;
					vec4 u_xlat2;
					int u_xlati3;
					float u_xlat4;
					float u_xlat5;
					vec3 u_xlat6;
					vec3 u_xlat8;
					vec2 u_xlat10;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    u_xlat6.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat6.x = inversesqrt(u_xlat6.x);
					    u_xlat6.xyz = u_xlat6.xxx * in_NORMAL0.xyz;
					    u_xlati3 = unity_StereoEyeIndex;
					    u_xlat8.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].yyy;
					    u_xlat8.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].xxx + u_xlat8.xyz;
					    u_xlat8.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].zzz + u_xlat8.xyz;
					    u_xlat8.xyz = u_xlat8.xyz + unity_WorldToObject[3].xyz;
					    u_xlat8.xyz = u_xlat8.xyz + (-in_POSITION0.xyz);
					    u_xlat4 = dot(u_xlat8.xyz, u_xlat8.xyz);
					    u_xlat4 = inversesqrt(u_xlat4);
					    u_xlat8.xyz = u_xlat8.xyz * vec3(u_xlat4);
					    u_xlat6.x = dot(u_xlat6.xyz, u_xlat8.xyz);
					    u_xlat6.x = log2(abs(u_xlat6.x));
					    u_xlat6.x = u_xlat6.x * _FresnelStr;
					    u_xlat6.x = exp2(u_xlat6.x);
					    u_xlat6.x = u_xlat6.x + u_xlat6.x;
					    vs_TEXCOORD4 = min(u_xlat6.x, 1.0);
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat5 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat5;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlat10.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati3].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati3].xy + u_xlat10.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendMul" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					float u_xlat9;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat9 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat9 = inversesqrt(u_xlat9);
					    u_xlat2.xyz = vec3(u_xlat9) * u_xlat2.xyz;
					    u_xlat9 = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat9 = inversesqrt(u_xlat9);
					    u_xlat3.xyz = vec3(u_xlat9) * in_NORMAL0.xyz;
					    u_xlat9 = dot(u_xlat3.xyz, u_xlat2.xyz);
					    u_xlat9 = log2(abs(u_xlat9));
					    u_xlat9 = u_xlat9 * _FresnelStr;
					    u_xlat9 = exp2(u_xlat9);
					    u_xlat9 = u_xlat9 + u_xlat9;
					    vs_TEXCOORD4 = min(u_xlat9, 1.0);
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat4 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_3_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					vec3 u_xlat5;
					vec2 u_xlat8;
					int u_xlati10;
					float u_xlat15;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    u_xlat5.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat5.x = inversesqrt(u_xlat5.x);
					    u_xlat5.xyz = u_xlat5.xxx * in_NORMAL0.xyz;
					    u_xlati10 = unity_StereoEyeIndex;
					    u_xlat3.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati10].yyy;
					    u_xlat3.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati10].xxx + u_xlat3.xyz;
					    u_xlat3.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati10].zzz + u_xlat3.xyz;
					    u_xlat3.xyz = u_xlat3.xyz + unity_WorldToObject[3].xyz;
					    u_xlat3.xyz = u_xlat3.xyz + (-in_POSITION0.xyz);
					    u_xlat15 = dot(u_xlat3.xyz, u_xlat3.xyz);
					    u_xlat15 = inversesqrt(u_xlat15);
					    u_xlat3.xyz = vec3(u_xlat15) * u_xlat3.xyz;
					    u_xlat5.x = dot(u_xlat5.xyz, u_xlat3.xyz);
					    u_xlat5.x = log2(abs(u_xlat5.x));
					    u_xlat5.x = u_xlat5.x * _FresnelStr;
					    u_xlat5.x = exp2(u_xlat5.x);
					    u_xlat5.x = u_xlat5.x + u_xlat5.x;
					    vs_TEXCOORD4 = min(u_xlat5.x, 1.0);
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat4 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlat8.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati10].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati10].xy + u_xlat8.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendMul" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					float u_xlat9;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat9 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat9 = inversesqrt(u_xlat9);
					    u_xlat2.xyz = vec3(u_xlat9) * u_xlat2.xyz;
					    u_xlat9 = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat9 = inversesqrt(u_xlat9);
					    u_xlat3.xyz = vec3(u_xlat9) * in_NORMAL0.xyz;
					    u_xlat9 = dot(u_xlat3.xyz, u_xlat2.xyz);
					    u_xlat9 = log2(abs(u_xlat9));
					    u_xlat9 = u_xlat9 * _FresnelStr;
					    u_xlat9 = exp2(u_xlat9);
					    u_xlat9 = u_xlat9 + u_xlat9;
					    vs_TEXCOORD4 = min(u_xlat9, 1.0);
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat4 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_3_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					vec3 u_xlat5;
					vec2 u_xlat8;
					int u_xlati10;
					float u_xlat15;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    u_xlat5.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat5.x = inversesqrt(u_xlat5.x);
					    u_xlat5.xyz = u_xlat5.xxx * in_NORMAL0.xyz;
					    u_xlati10 = unity_StereoEyeIndex;
					    u_xlat3.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati10].yyy;
					    u_xlat3.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati10].xxx + u_xlat3.xyz;
					    u_xlat3.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati10].zzz + u_xlat3.xyz;
					    u_xlat3.xyz = u_xlat3.xyz + unity_WorldToObject[3].xyz;
					    u_xlat3.xyz = u_xlat3.xyz + (-in_POSITION0.xyz);
					    u_xlat15 = dot(u_xlat3.xyz, u_xlat3.xyz);
					    u_xlat15 = inversesqrt(u_xlat15);
					    u_xlat3.xyz = vec3(u_xlat15) * u_xlat3.xyz;
					    u_xlat5.x = dot(u_xlat5.xyz, u_xlat3.xyz);
					    u_xlat5.x = log2(abs(u_xlat5.x));
					    u_xlat5.x = u_xlat5.x * _FresnelStr;
					    u_xlat5.x = exp2(u_xlat5.x);
					    u_xlat5.x = u_xlat5.x + u_xlat5.x;
					    vs_TEXCOORD4 = min(u_xlat5.x, 1.0);
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat4 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlat8.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati10].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati10].xy + u_xlat8.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendMul" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					float u_xlat14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat14 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat2.xyz = vec3(u_xlat14) * u_xlat2.xyz;
					    u_xlat14 = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat3.xyz = vec3(u_xlat14) * in_NORMAL0.xyz;
					    u_xlat2.x = dot(u_xlat3.xyz, u_xlat2.xyz);
					    u_xlat2.x = log2(abs(u_xlat2.x));
					    u_xlat2.x = u_xlat2.x * _FresnelStr;
					    u_xlat2.x = exp2(u_xlat2.x);
					    u_xlat2.x = u_xlat2.x + u_xlat2.x;
					    vs_TEXCOORD4 = min(u_xlat2.x, 1.0);
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat4 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_3_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati1;
					vec4 u_xlat2;
					int u_xlati3;
					float u_xlat4;
					float u_xlat5;
					vec3 u_xlat6;
					vec3 u_xlat8;
					vec2 u_xlat10;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    u_xlat6.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat6.x = inversesqrt(u_xlat6.x);
					    u_xlat6.xyz = u_xlat6.xxx * in_NORMAL0.xyz;
					    u_xlati3 = unity_StereoEyeIndex;
					    u_xlat8.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].yyy;
					    u_xlat8.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].xxx + u_xlat8.xyz;
					    u_xlat8.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].zzz + u_xlat8.xyz;
					    u_xlat8.xyz = u_xlat8.xyz + unity_WorldToObject[3].xyz;
					    u_xlat8.xyz = u_xlat8.xyz + (-in_POSITION0.xyz);
					    u_xlat4 = dot(u_xlat8.xyz, u_xlat8.xyz);
					    u_xlat4 = inversesqrt(u_xlat4);
					    u_xlat8.xyz = u_xlat8.xyz * vec3(u_xlat4);
					    u_xlat6.x = dot(u_xlat6.xyz, u_xlat8.xyz);
					    u_xlat6.x = log2(abs(u_xlat6.x));
					    u_xlat6.x = u_xlat6.x * _FresnelStr;
					    u_xlat6.x = exp2(u_xlat6.x);
					    u_xlat6.x = u_xlat6.x + u_xlat6.x;
					    vs_TEXCOORD4 = min(u_xlat6.x, 1.0);
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat5 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat5;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlat10.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati3].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati3].xy + u_xlat10.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendMul" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					float u_xlat14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat14 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat2.xyz = vec3(u_xlat14) * u_xlat2.xyz;
					    u_xlat14 = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat3.xyz = vec3(u_xlat14) * in_NORMAL0.xyz;
					    u_xlat2.x = dot(u_xlat3.xyz, u_xlat2.xyz);
					    u_xlat2.x = log2(abs(u_xlat2.x));
					    u_xlat2.x = u_xlat2.x * _FresnelStr;
					    u_xlat2.x = exp2(u_xlat2.x);
					    u_xlat2.x = u_xlat2.x + u_xlat2.x;
					    vs_TEXCOORD4 = min(u_xlat2.x, 1.0);
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat4 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_3_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati1;
					vec4 u_xlat2;
					int u_xlati3;
					float u_xlat4;
					float u_xlat5;
					vec3 u_xlat6;
					vec3 u_xlat8;
					vec2 u_xlat10;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    u_xlat6.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat6.x = inversesqrt(u_xlat6.x);
					    u_xlat6.xyz = u_xlat6.xxx * in_NORMAL0.xyz;
					    u_xlati3 = unity_StereoEyeIndex;
					    u_xlat8.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].yyy;
					    u_xlat8.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].xxx + u_xlat8.xyz;
					    u_xlat8.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].zzz + u_xlat8.xyz;
					    u_xlat8.xyz = u_xlat8.xyz + unity_WorldToObject[3].xyz;
					    u_xlat8.xyz = u_xlat8.xyz + (-in_POSITION0.xyz);
					    u_xlat4 = dot(u_xlat8.xyz, u_xlat8.xyz);
					    u_xlat4 = inversesqrt(u_xlat4);
					    u_xlat8.xyz = u_xlat8.xyz * vec3(u_xlat4);
					    u_xlat6.x = dot(u_xlat6.xyz, u_xlat8.xyz);
					    u_xlat6.x = log2(abs(u_xlat6.x));
					    u_xlat6.x = u_xlat6.x * _FresnelStr;
					    u_xlat6.x = exp2(u_xlat6.x);
					    u_xlat6.x = u_xlat6.x + u_xlat6.x;
					    vs_TEXCOORD4 = min(u_xlat6.x, 1.0);
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat5 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat5;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlat10.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati3].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati3].xy + u_xlat10.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendMul" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					float u_xlat14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat14 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat2.xyz = vec3(u_xlat14) * u_xlat2.xyz;
					    u_xlat14 = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat3.xyz = vec3(u_xlat14) * in_NORMAL0.xyz;
					    u_xlat2.x = dot(u_xlat3.xyz, u_xlat2.xyz);
					    u_xlat2.x = log2(abs(u_xlat2.x));
					    u_xlat2.x = u_xlat2.x * _FresnelStr;
					    u_xlat2.x = exp2(u_xlat2.x);
					    u_xlat2.x = u_xlat2.x + u_xlat2.x;
					    vs_TEXCOORD4 = min(u_xlat2.x, 1.0);
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat4 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_3_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati1;
					vec4 u_xlat2;
					int u_xlati3;
					float u_xlat4;
					float u_xlat5;
					vec3 u_xlat6;
					vec3 u_xlat8;
					vec2 u_xlat10;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    u_xlat6.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat6.x = inversesqrt(u_xlat6.x);
					    u_xlat6.xyz = u_xlat6.xxx * in_NORMAL0.xyz;
					    u_xlati3 = unity_StereoEyeIndex;
					    u_xlat8.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].yyy;
					    u_xlat8.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].xxx + u_xlat8.xyz;
					    u_xlat8.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].zzz + u_xlat8.xyz;
					    u_xlat8.xyz = u_xlat8.xyz + unity_WorldToObject[3].xyz;
					    u_xlat8.xyz = u_xlat8.xyz + (-in_POSITION0.xyz);
					    u_xlat4 = dot(u_xlat8.xyz, u_xlat8.xyz);
					    u_xlat4 = inversesqrt(u_xlat4);
					    u_xlat8.xyz = u_xlat8.xyz * vec3(u_xlat4);
					    u_xlat6.x = dot(u_xlat6.xyz, u_xlat8.xyz);
					    u_xlat6.x = log2(abs(u_xlat6.x));
					    u_xlat6.x = u_xlat6.x * _FresnelStr;
					    u_xlat6.x = exp2(u_xlat6.x);
					    u_xlat6.x = u_xlat6.x + u_xlat6.x;
					    vs_TEXCOORD4 = min(u_xlat6.x, 1.0);
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat5 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat5;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlat10.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati3].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati3].xy + u_xlat10.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendMul" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					float u_xlat14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat14 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat2.xyz = vec3(u_xlat14) * u_xlat2.xyz;
					    u_xlat14 = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat3.xyz = vec3(u_xlat14) * in_NORMAL0.xyz;
					    u_xlat2.x = dot(u_xlat3.xyz, u_xlat2.xyz);
					    u_xlat2.x = log2(abs(u_xlat2.x));
					    u_xlat2.x = u_xlat2.x * _FresnelStr;
					    u_xlat2.x = exp2(u_xlat2.x);
					    u_xlat2.x = u_xlat2.x + u_xlat2.x;
					    vs_TEXCOORD4 = min(u_xlat2.x, 1.0);
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat4 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_3_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati1;
					vec4 u_xlat2;
					int u_xlati3;
					float u_xlat4;
					float u_xlat5;
					vec3 u_xlat6;
					vec3 u_xlat8;
					vec2 u_xlat10;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    u_xlat6.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat6.x = inversesqrt(u_xlat6.x);
					    u_xlat6.xyz = u_xlat6.xxx * in_NORMAL0.xyz;
					    u_xlati3 = unity_StereoEyeIndex;
					    u_xlat8.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].yyy;
					    u_xlat8.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].xxx + u_xlat8.xyz;
					    u_xlat8.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].zzz + u_xlat8.xyz;
					    u_xlat8.xyz = u_xlat8.xyz + unity_WorldToObject[3].xyz;
					    u_xlat8.xyz = u_xlat8.xyz + (-in_POSITION0.xyz);
					    u_xlat4 = dot(u_xlat8.xyz, u_xlat8.xyz);
					    u_xlat4 = inversesqrt(u_xlat4);
					    u_xlat8.xyz = u_xlat8.xyz * vec3(u_xlat4);
					    u_xlat6.x = dot(u_xlat6.xyz, u_xlat8.xyz);
					    u_xlat6.x = log2(abs(u_xlat6.x));
					    u_xlat6.x = u_xlat6.x * _FresnelStr;
					    u_xlat6.x = exp2(u_xlat6.x);
					    u_xlat6.x = u_xlat6.x + u_xlat6.x;
					    vs_TEXCOORD4 = min(u_xlat6.x, 1.0);
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat5 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat5;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlat10.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati3].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati3].xy + u_xlat10.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendMul" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					float u_xlat14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat14 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat2.xyz = vec3(u_xlat14) * u_xlat2.xyz;
					    u_xlat14 = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat3.xyz = vec3(u_xlat14) * in_NORMAL0.xyz;
					    u_xlat2.x = dot(u_xlat3.xyz, u_xlat2.xyz);
					    u_xlat2.x = log2(abs(u_xlat2.x));
					    u_xlat2.x = u_xlat2.x * _FresnelStr;
					    u_xlat2.x = exp2(u_xlat2.x);
					    u_xlat2.x = u_xlat2.x + u_xlat2.x;
					    vs_TEXCOORD4 = min(u_xlat2.x, 1.0);
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat4 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_3_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati1;
					vec4 u_xlat2;
					int u_xlati3;
					float u_xlat4;
					float u_xlat5;
					vec3 u_xlat6;
					vec3 u_xlat8;
					vec2 u_xlat10;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    u_xlat6.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat6.x = inversesqrt(u_xlat6.x);
					    u_xlat6.xyz = u_xlat6.xxx * in_NORMAL0.xyz;
					    u_xlati3 = unity_StereoEyeIndex;
					    u_xlat8.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].yyy;
					    u_xlat8.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].xxx + u_xlat8.xyz;
					    u_xlat8.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].zzz + u_xlat8.xyz;
					    u_xlat8.xyz = u_xlat8.xyz + unity_WorldToObject[3].xyz;
					    u_xlat8.xyz = u_xlat8.xyz + (-in_POSITION0.xyz);
					    u_xlat4 = dot(u_xlat8.xyz, u_xlat8.xyz);
					    u_xlat4 = inversesqrt(u_xlat4);
					    u_xlat8.xyz = u_xlat8.xyz * vec3(u_xlat4);
					    u_xlat6.x = dot(u_xlat6.xyz, u_xlat8.xyz);
					    u_xlat6.x = log2(abs(u_xlat6.x));
					    u_xlat6.x = u_xlat6.x * _FresnelStr;
					    u_xlat6.x = exp2(u_xlat6.x);
					    u_xlat6.x = u_xlat6.x + u_xlat6.x;
					    vs_TEXCOORD4 = min(u_xlat6.x, 1.0);
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat5 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat5;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlat10.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati3].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati3].xy + u_xlat10.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendMul" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					float u_xlat14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat14 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat2.xyz = vec3(u_xlat14) * u_xlat2.xyz;
					    u_xlat14 = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat3.xyz = vec3(u_xlat14) * in_NORMAL0.xyz;
					    u_xlat2.x = dot(u_xlat3.xyz, u_xlat2.xyz);
					    u_xlat2.x = log2(abs(u_xlat2.x));
					    u_xlat2.x = u_xlat2.x * _FresnelStr;
					    u_xlat2.x = exp2(u_xlat2.x);
					    u_xlat2.x = u_xlat2.x + u_xlat2.x;
					    vs_TEXCOORD4 = min(u_xlat2.x, 1.0);
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat4 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_3_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati1;
					vec4 u_xlat2;
					int u_xlati3;
					float u_xlat4;
					float u_xlat5;
					vec3 u_xlat6;
					vec3 u_xlat8;
					vec2 u_xlat10;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    u_xlat6.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat6.x = inversesqrt(u_xlat6.x);
					    u_xlat6.xyz = u_xlat6.xxx * in_NORMAL0.xyz;
					    u_xlati3 = unity_StereoEyeIndex;
					    u_xlat8.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].yyy;
					    u_xlat8.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].xxx + u_xlat8.xyz;
					    u_xlat8.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].zzz + u_xlat8.xyz;
					    u_xlat8.xyz = u_xlat8.xyz + unity_WorldToObject[3].xyz;
					    u_xlat8.xyz = u_xlat8.xyz + (-in_POSITION0.xyz);
					    u_xlat4 = dot(u_xlat8.xyz, u_xlat8.xyz);
					    u_xlat4 = inversesqrt(u_xlat4);
					    u_xlat8.xyz = u_xlat8.xyz * vec3(u_xlat4);
					    u_xlat6.x = dot(u_xlat6.xyz, u_xlat8.xyz);
					    u_xlat6.x = log2(abs(u_xlat6.x));
					    u_xlat6.x = u_xlat6.x * _FresnelStr;
					    u_xlat6.x = exp2(u_xlat6.x);
					    u_xlat6.x = u_xlat6.x + u_xlat6.x;
					    vs_TEXCOORD4 = min(u_xlat6.x, 1.0);
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat5 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat5;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlat10.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati3].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati3].xy + u_xlat10.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendMul" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    u_xlat2 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat2;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec2 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					float u_xlat3;
					int u_xlati6;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    u_xlat3 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat3;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlati6 = unity_StereoEyeIndex;
					    u_xlat1.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati6].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati6].xy + u_xlat1.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendMul" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    u_xlat2 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat2;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec2 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					float u_xlat3;
					int u_xlati6;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    u_xlat3 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat3;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlati6 = unity_StereoEyeIndex;
					    u_xlat1.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati6].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati6].xy + u_xlat1.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendMul" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat2 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat2;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec2 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					float u_xlat3;
					int u_xlati6;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat3 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat3;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlati6 = unity_StereoEyeIndex;
					    u_xlat1.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati6].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati6].xy + u_xlat1.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendMul" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat2 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat2;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec2 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					float u_xlat3;
					int u_xlati6;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat3 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat3;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlati6 = unity_StereoEyeIndex;
					    u_xlat1.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati6].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati6].xy + u_xlat1.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendMul" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat2 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat2;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec2 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					float u_xlat3;
					int u_xlati6;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat3 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat3;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlati6 = unity_StereoEyeIndex;
					    u_xlat1.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati6].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati6].xy + u_xlat1.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendMul" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat2 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat2;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec2 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					float u_xlat3;
					int u_xlati6;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat3 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat3;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlati6 = unity_StereoEyeIndex;
					    u_xlat1.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati6].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati6].xy + u_xlat1.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendMul" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat2 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat2;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec2 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					float u_xlat3;
					int u_xlati6;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat3 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat3;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlati6 = unity_StereoEyeIndex;
					    u_xlat1.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati6].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati6].xy + u_xlat1.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendMul" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat2 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat2;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec2 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					float u_xlat3;
					int u_xlati6;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat3 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat3;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlati6 = unity_StereoEyeIndex;
					    u_xlat1.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati6].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati6].xy + u_xlat1.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendMul" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    u_xlat2 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat2;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec2 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					float u_xlat3;
					int u_xlati6;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    u_xlat3 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat3;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlati6 = unity_StereoEyeIndex;
					    u_xlat1.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati6].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati6].xy + u_xlat1.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendMul" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    u_xlat2 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat2;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec2 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					float u_xlat3;
					int u_xlati6;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    u_xlat3 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat3;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlati6 = unity_StereoEyeIndex;
					    u_xlat1.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati6].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati6].xy + u_xlat1.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendMul" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat2 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat2;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec2 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					float u_xlat3;
					int u_xlati6;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat3 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat3;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlati6 = unity_StereoEyeIndex;
					    u_xlat1.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati6].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati6].xy + u_xlat1.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendMul" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat2 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat2;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec2 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					float u_xlat3;
					int u_xlati6;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat3 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat3;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlati6 = unity_StereoEyeIndex;
					    u_xlat1.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati6].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati6].xy + u_xlat1.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendMul" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat2 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat2;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec2 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					float u_xlat3;
					int u_xlati6;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat3 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat3;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlati6 = unity_StereoEyeIndex;
					    u_xlat1.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati6].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati6].xy + u_xlat1.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendMul" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat2 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat2;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec2 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					float u_xlat3;
					int u_xlati6;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat3 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat3;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlati6 = unity_StereoEyeIndex;
					    u_xlat1.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati6].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati6].xy + u_xlat1.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendMul" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat2 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat2;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec2 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					float u_xlat3;
					int u_xlati6;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat3 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat3;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlati6 = unity_StereoEyeIndex;
					    u_xlat1.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati6].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati6].xy + u_xlat1.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendMul" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat2 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat2;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec2 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					float u_xlat3;
					int u_xlati6;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat3 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat3;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlati6 = unity_StereoEyeIndex;
					    u_xlat1.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati6].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati6].xy + u_xlat1.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendMul" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					float u_xlat9;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat9 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat9 = inversesqrt(u_xlat9);
					    u_xlat2.xyz = vec3(u_xlat9) * u_xlat2.xyz;
					    u_xlat9 = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat9 = inversesqrt(u_xlat9);
					    u_xlat3.xyz = vec3(u_xlat9) * in_NORMAL0.xyz;
					    u_xlat9 = dot(u_xlat3.xyz, u_xlat2.xyz);
					    u_xlat9 = log2(abs(u_xlat9));
					    u_xlat9 = u_xlat9 * _FresnelStr;
					    u_xlat9 = exp2(u_xlat9);
					    u_xlat9 = u_xlat9 + u_xlat9;
					    vs_TEXCOORD4 = min(u_xlat9, 1.0);
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    u_xlat4 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_3_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					vec3 u_xlat5;
					vec2 u_xlat8;
					int u_xlati10;
					float u_xlat15;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat5.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat5.x = inversesqrt(u_xlat5.x);
					    u_xlat5.xyz = u_xlat5.xxx * in_NORMAL0.xyz;
					    u_xlati10 = unity_StereoEyeIndex;
					    u_xlat3.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati10].yyy;
					    u_xlat3.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati10].xxx + u_xlat3.xyz;
					    u_xlat3.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati10].zzz + u_xlat3.xyz;
					    u_xlat3.xyz = u_xlat3.xyz + unity_WorldToObject[3].xyz;
					    u_xlat3.xyz = u_xlat3.xyz + (-in_POSITION0.xyz);
					    u_xlat15 = dot(u_xlat3.xyz, u_xlat3.xyz);
					    u_xlat15 = inversesqrt(u_xlat15);
					    u_xlat3.xyz = vec3(u_xlat15) * u_xlat3.xyz;
					    u_xlat5.x = dot(u_xlat5.xyz, u_xlat3.xyz);
					    u_xlat5.x = log2(abs(u_xlat5.x));
					    u_xlat5.x = u_xlat5.x * _FresnelStr;
					    u_xlat5.x = exp2(u_xlat5.x);
					    u_xlat5.x = u_xlat5.x + u_xlat5.x;
					    vs_TEXCOORD4 = min(u_xlat5.x, 1.0);
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    u_xlat4 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlat8.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati10].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati10].xy + u_xlat8.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendMul" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					float u_xlat9;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat9 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat9 = inversesqrt(u_xlat9);
					    u_xlat2.xyz = vec3(u_xlat9) * u_xlat2.xyz;
					    u_xlat9 = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat9 = inversesqrt(u_xlat9);
					    u_xlat3.xyz = vec3(u_xlat9) * in_NORMAL0.xyz;
					    u_xlat9 = dot(u_xlat3.xyz, u_xlat2.xyz);
					    u_xlat9 = log2(abs(u_xlat9));
					    u_xlat9 = u_xlat9 * _FresnelStr;
					    u_xlat9 = exp2(u_xlat9);
					    u_xlat9 = u_xlat9 + u_xlat9;
					    vs_TEXCOORD4 = min(u_xlat9, 1.0);
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    u_xlat4 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_3_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					vec3 u_xlat5;
					vec2 u_xlat8;
					int u_xlati10;
					float u_xlat15;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat5.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat5.x = inversesqrt(u_xlat5.x);
					    u_xlat5.xyz = u_xlat5.xxx * in_NORMAL0.xyz;
					    u_xlati10 = unity_StereoEyeIndex;
					    u_xlat3.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati10].yyy;
					    u_xlat3.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati10].xxx + u_xlat3.xyz;
					    u_xlat3.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati10].zzz + u_xlat3.xyz;
					    u_xlat3.xyz = u_xlat3.xyz + unity_WorldToObject[3].xyz;
					    u_xlat3.xyz = u_xlat3.xyz + (-in_POSITION0.xyz);
					    u_xlat15 = dot(u_xlat3.xyz, u_xlat3.xyz);
					    u_xlat15 = inversesqrt(u_xlat15);
					    u_xlat3.xyz = vec3(u_xlat15) * u_xlat3.xyz;
					    u_xlat5.x = dot(u_xlat5.xyz, u_xlat3.xyz);
					    u_xlat5.x = log2(abs(u_xlat5.x));
					    u_xlat5.x = u_xlat5.x * _FresnelStr;
					    u_xlat5.x = exp2(u_xlat5.x);
					    u_xlat5.x = u_xlat5.x + u_xlat5.x;
					    vs_TEXCOORD4 = min(u_xlat5.x, 1.0);
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    u_xlat4 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlat8.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati10].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati10].xy + u_xlat8.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendMul" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					float u_xlat14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat14 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat2.xyz = vec3(u_xlat14) * u_xlat2.xyz;
					    u_xlat14 = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat3.xyz = vec3(u_xlat14) * in_NORMAL0.xyz;
					    u_xlat2.x = dot(u_xlat3.xyz, u_xlat2.xyz);
					    u_xlat2.x = log2(abs(u_xlat2.x));
					    u_xlat2.x = u_xlat2.x * _FresnelStr;
					    u_xlat2.x = exp2(u_xlat2.x);
					    u_xlat2.x = u_xlat2.x + u_xlat2.x;
					    vs_TEXCOORD4 = min(u_xlat2.x, 1.0);
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat4 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_3_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati1;
					vec4 u_xlat2;
					int u_xlati3;
					float u_xlat4;
					float u_xlat5;
					vec3 u_xlat6;
					vec3 u_xlat8;
					vec2 u_xlat10;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat6.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat6.x = inversesqrt(u_xlat6.x);
					    u_xlat6.xyz = u_xlat6.xxx * in_NORMAL0.xyz;
					    u_xlati3 = unity_StereoEyeIndex;
					    u_xlat8.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].yyy;
					    u_xlat8.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].xxx + u_xlat8.xyz;
					    u_xlat8.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].zzz + u_xlat8.xyz;
					    u_xlat8.xyz = u_xlat8.xyz + unity_WorldToObject[3].xyz;
					    u_xlat8.xyz = u_xlat8.xyz + (-in_POSITION0.xyz);
					    u_xlat4 = dot(u_xlat8.xyz, u_xlat8.xyz);
					    u_xlat4 = inversesqrt(u_xlat4);
					    u_xlat8.xyz = u_xlat8.xyz * vec3(u_xlat4);
					    u_xlat6.x = dot(u_xlat6.xyz, u_xlat8.xyz);
					    u_xlat6.x = log2(abs(u_xlat6.x));
					    u_xlat6.x = u_xlat6.x * _FresnelStr;
					    u_xlat6.x = exp2(u_xlat6.x);
					    u_xlat6.x = u_xlat6.x + u_xlat6.x;
					    vs_TEXCOORD4 = min(u_xlat6.x, 1.0);
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat5 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat5;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlat10.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati3].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati3].xy + u_xlat10.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendMul" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					float u_xlat14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat14 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat2.xyz = vec3(u_xlat14) * u_xlat2.xyz;
					    u_xlat14 = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat3.xyz = vec3(u_xlat14) * in_NORMAL0.xyz;
					    u_xlat2.x = dot(u_xlat3.xyz, u_xlat2.xyz);
					    u_xlat2.x = log2(abs(u_xlat2.x));
					    u_xlat2.x = u_xlat2.x * _FresnelStr;
					    u_xlat2.x = exp2(u_xlat2.x);
					    u_xlat2.x = u_xlat2.x + u_xlat2.x;
					    vs_TEXCOORD4 = min(u_xlat2.x, 1.0);
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat4 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_3_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati1;
					vec4 u_xlat2;
					int u_xlati3;
					float u_xlat4;
					float u_xlat5;
					vec3 u_xlat6;
					vec3 u_xlat8;
					vec2 u_xlat10;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat6.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat6.x = inversesqrt(u_xlat6.x);
					    u_xlat6.xyz = u_xlat6.xxx * in_NORMAL0.xyz;
					    u_xlati3 = unity_StereoEyeIndex;
					    u_xlat8.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].yyy;
					    u_xlat8.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].xxx + u_xlat8.xyz;
					    u_xlat8.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].zzz + u_xlat8.xyz;
					    u_xlat8.xyz = u_xlat8.xyz + unity_WorldToObject[3].xyz;
					    u_xlat8.xyz = u_xlat8.xyz + (-in_POSITION0.xyz);
					    u_xlat4 = dot(u_xlat8.xyz, u_xlat8.xyz);
					    u_xlat4 = inversesqrt(u_xlat4);
					    u_xlat8.xyz = u_xlat8.xyz * vec3(u_xlat4);
					    u_xlat6.x = dot(u_xlat6.xyz, u_xlat8.xyz);
					    u_xlat6.x = log2(abs(u_xlat6.x));
					    u_xlat6.x = u_xlat6.x * _FresnelStr;
					    u_xlat6.x = exp2(u_xlat6.x);
					    u_xlat6.x = u_xlat6.x + u_xlat6.x;
					    vs_TEXCOORD4 = min(u_xlat6.x, 1.0);
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat5 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat5;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlat10.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati3].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati3].xy + u_xlat10.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendMul" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					float u_xlat14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat14 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat2.xyz = vec3(u_xlat14) * u_xlat2.xyz;
					    u_xlat14 = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat3.xyz = vec3(u_xlat14) * in_NORMAL0.xyz;
					    u_xlat2.x = dot(u_xlat3.xyz, u_xlat2.xyz);
					    u_xlat2.x = log2(abs(u_xlat2.x));
					    u_xlat2.x = u_xlat2.x * _FresnelStr;
					    u_xlat2.x = exp2(u_xlat2.x);
					    u_xlat2.x = u_xlat2.x + u_xlat2.x;
					    vs_TEXCOORD4 = min(u_xlat2.x, 1.0);
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat4 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_3_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati1;
					vec4 u_xlat2;
					int u_xlati3;
					float u_xlat4;
					float u_xlat5;
					vec3 u_xlat6;
					vec3 u_xlat8;
					vec2 u_xlat10;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat6.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat6.x = inversesqrt(u_xlat6.x);
					    u_xlat6.xyz = u_xlat6.xxx * in_NORMAL0.xyz;
					    u_xlati3 = unity_StereoEyeIndex;
					    u_xlat8.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].yyy;
					    u_xlat8.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].xxx + u_xlat8.xyz;
					    u_xlat8.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].zzz + u_xlat8.xyz;
					    u_xlat8.xyz = u_xlat8.xyz + unity_WorldToObject[3].xyz;
					    u_xlat8.xyz = u_xlat8.xyz + (-in_POSITION0.xyz);
					    u_xlat4 = dot(u_xlat8.xyz, u_xlat8.xyz);
					    u_xlat4 = inversesqrt(u_xlat4);
					    u_xlat8.xyz = u_xlat8.xyz * vec3(u_xlat4);
					    u_xlat6.x = dot(u_xlat6.xyz, u_xlat8.xyz);
					    u_xlat6.x = log2(abs(u_xlat6.x));
					    u_xlat6.x = u_xlat6.x * _FresnelStr;
					    u_xlat6.x = exp2(u_xlat6.x);
					    u_xlat6.x = u_xlat6.x + u_xlat6.x;
					    vs_TEXCOORD4 = min(u_xlat6.x, 1.0);
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat5 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat5;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlat10.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati3].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati3].xy + u_xlat10.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendMul" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					float u_xlat14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat14 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat2.xyz = vec3(u_xlat14) * u_xlat2.xyz;
					    u_xlat14 = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat3.xyz = vec3(u_xlat14) * in_NORMAL0.xyz;
					    u_xlat2.x = dot(u_xlat3.xyz, u_xlat2.xyz);
					    u_xlat2.x = log2(abs(u_xlat2.x));
					    u_xlat2.x = u_xlat2.x * _FresnelStr;
					    u_xlat2.x = exp2(u_xlat2.x);
					    u_xlat2.x = u_xlat2.x + u_xlat2.x;
					    vs_TEXCOORD4 = min(u_xlat2.x, 1.0);
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat4 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_3_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati1;
					vec4 u_xlat2;
					int u_xlati3;
					float u_xlat4;
					float u_xlat5;
					vec3 u_xlat6;
					vec3 u_xlat8;
					vec2 u_xlat10;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat6.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat6.x = inversesqrt(u_xlat6.x);
					    u_xlat6.xyz = u_xlat6.xxx * in_NORMAL0.xyz;
					    u_xlati3 = unity_StereoEyeIndex;
					    u_xlat8.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].yyy;
					    u_xlat8.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].xxx + u_xlat8.xyz;
					    u_xlat8.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].zzz + u_xlat8.xyz;
					    u_xlat8.xyz = u_xlat8.xyz + unity_WorldToObject[3].xyz;
					    u_xlat8.xyz = u_xlat8.xyz + (-in_POSITION0.xyz);
					    u_xlat4 = dot(u_xlat8.xyz, u_xlat8.xyz);
					    u_xlat4 = inversesqrt(u_xlat4);
					    u_xlat8.xyz = u_xlat8.xyz * vec3(u_xlat4);
					    u_xlat6.x = dot(u_xlat6.xyz, u_xlat8.xyz);
					    u_xlat6.x = log2(abs(u_xlat6.x));
					    u_xlat6.x = u_xlat6.x * _FresnelStr;
					    u_xlat6.x = exp2(u_xlat6.x);
					    u_xlat6.x = u_xlat6.x + u_xlat6.x;
					    vs_TEXCOORD4 = min(u_xlat6.x, 1.0);
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat5 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat5;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlat10.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati3].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati3].xy + u_xlat10.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendMul" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					float u_xlat14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat14 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat2.xyz = vec3(u_xlat14) * u_xlat2.xyz;
					    u_xlat14 = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat3.xyz = vec3(u_xlat14) * in_NORMAL0.xyz;
					    u_xlat2.x = dot(u_xlat3.xyz, u_xlat2.xyz);
					    u_xlat2.x = log2(abs(u_xlat2.x));
					    u_xlat2.x = u_xlat2.x * _FresnelStr;
					    u_xlat2.x = exp2(u_xlat2.x);
					    u_xlat2.x = u_xlat2.x + u_xlat2.x;
					    vs_TEXCOORD4 = min(u_xlat2.x, 1.0);
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat4 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_3_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati1;
					vec4 u_xlat2;
					int u_xlati3;
					float u_xlat4;
					float u_xlat5;
					vec3 u_xlat6;
					vec3 u_xlat8;
					vec2 u_xlat10;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat6.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat6.x = inversesqrt(u_xlat6.x);
					    u_xlat6.xyz = u_xlat6.xxx * in_NORMAL0.xyz;
					    u_xlati3 = unity_StereoEyeIndex;
					    u_xlat8.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].yyy;
					    u_xlat8.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].xxx + u_xlat8.xyz;
					    u_xlat8.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].zzz + u_xlat8.xyz;
					    u_xlat8.xyz = u_xlat8.xyz + unity_WorldToObject[3].xyz;
					    u_xlat8.xyz = u_xlat8.xyz + (-in_POSITION0.xyz);
					    u_xlat4 = dot(u_xlat8.xyz, u_xlat8.xyz);
					    u_xlat4 = inversesqrt(u_xlat4);
					    u_xlat8.xyz = u_xlat8.xyz * vec3(u_xlat4);
					    u_xlat6.x = dot(u_xlat6.xyz, u_xlat8.xyz);
					    u_xlat6.x = log2(abs(u_xlat6.x));
					    u_xlat6.x = u_xlat6.x * _FresnelStr;
					    u_xlat6.x = exp2(u_xlat6.x);
					    u_xlat6.x = u_xlat6.x + u_xlat6.x;
					    vs_TEXCOORD4 = min(u_xlat6.x, 1.0);
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat5 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat5;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlat10.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati3].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati3].xy + u_xlat10.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendMul" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					float u_xlat14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat14 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat2.xyz = vec3(u_xlat14) * u_xlat2.xyz;
					    u_xlat14 = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat3.xyz = vec3(u_xlat14) * in_NORMAL0.xyz;
					    u_xlat2.x = dot(u_xlat3.xyz, u_xlat2.xyz);
					    u_xlat2.x = log2(abs(u_xlat2.x));
					    u_xlat2.x = u_xlat2.x * _FresnelStr;
					    u_xlat2.x = exp2(u_xlat2.x);
					    u_xlat2.x = u_xlat2.x + u_xlat2.x;
					    vs_TEXCOORD4 = min(u_xlat2.x, 1.0);
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat4 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_3_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati1;
					vec4 u_xlat2;
					int u_xlati3;
					float u_xlat4;
					float u_xlat5;
					vec3 u_xlat6;
					vec3 u_xlat8;
					vec2 u_xlat10;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat6.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat6.x = inversesqrt(u_xlat6.x);
					    u_xlat6.xyz = u_xlat6.xxx * in_NORMAL0.xyz;
					    u_xlati3 = unity_StereoEyeIndex;
					    u_xlat8.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].yyy;
					    u_xlat8.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].xxx + u_xlat8.xyz;
					    u_xlat8.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].zzz + u_xlat8.xyz;
					    u_xlat8.xyz = u_xlat8.xyz + unity_WorldToObject[3].xyz;
					    u_xlat8.xyz = u_xlat8.xyz + (-in_POSITION0.xyz);
					    u_xlat4 = dot(u_xlat8.xyz, u_xlat8.xyz);
					    u_xlat4 = inversesqrt(u_xlat4);
					    u_xlat8.xyz = u_xlat8.xyz * vec3(u_xlat4);
					    u_xlat6.x = dot(u_xlat6.xyz, u_xlat8.xyz);
					    u_xlat6.x = log2(abs(u_xlat6.x));
					    u_xlat6.x = u_xlat6.x * _FresnelStr;
					    u_xlat6.x = exp2(u_xlat6.x);
					    u_xlat6.x = u_xlat6.x + u_xlat6.x;
					    vs_TEXCOORD4 = min(u_xlat6.x, 1.0);
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat5 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat5;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlat10.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati3].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati3].xy + u_xlat10.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendMul" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					float u_xlat9;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat9 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat9 = inversesqrt(u_xlat9);
					    u_xlat2.xyz = vec3(u_xlat9) * u_xlat2.xyz;
					    u_xlat9 = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat9 = inversesqrt(u_xlat9);
					    u_xlat3.xyz = vec3(u_xlat9) * in_NORMAL0.xyz;
					    u_xlat9 = dot(u_xlat3.xyz, u_xlat2.xyz);
					    u_xlat9 = log2(abs(u_xlat9));
					    u_xlat9 = u_xlat9 * _FresnelStr;
					    u_xlat9 = exp2(u_xlat9);
					    u_xlat9 = u_xlat9 + u_xlat9;
					    vs_TEXCOORD4 = min(u_xlat9, 1.0);
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    u_xlat4 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_3_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					vec3 u_xlat5;
					vec2 u_xlat8;
					int u_xlati10;
					float u_xlat15;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat5.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat5.x = inversesqrt(u_xlat5.x);
					    u_xlat5.xyz = u_xlat5.xxx * in_NORMAL0.xyz;
					    u_xlati10 = unity_StereoEyeIndex;
					    u_xlat3.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati10].yyy;
					    u_xlat3.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati10].xxx + u_xlat3.xyz;
					    u_xlat3.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati10].zzz + u_xlat3.xyz;
					    u_xlat3.xyz = u_xlat3.xyz + unity_WorldToObject[3].xyz;
					    u_xlat3.xyz = u_xlat3.xyz + (-in_POSITION0.xyz);
					    u_xlat15 = dot(u_xlat3.xyz, u_xlat3.xyz);
					    u_xlat15 = inversesqrt(u_xlat15);
					    u_xlat3.xyz = vec3(u_xlat15) * u_xlat3.xyz;
					    u_xlat5.x = dot(u_xlat5.xyz, u_xlat3.xyz);
					    u_xlat5.x = log2(abs(u_xlat5.x));
					    u_xlat5.x = u_xlat5.x * _FresnelStr;
					    u_xlat5.x = exp2(u_xlat5.x);
					    u_xlat5.x = u_xlat5.x + u_xlat5.x;
					    vs_TEXCOORD4 = min(u_xlat5.x, 1.0);
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    u_xlat4 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlat8.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati10].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati10].xy + u_xlat8.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendMul" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					float u_xlat9;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat9 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat9 = inversesqrt(u_xlat9);
					    u_xlat2.xyz = vec3(u_xlat9) * u_xlat2.xyz;
					    u_xlat9 = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat9 = inversesqrt(u_xlat9);
					    u_xlat3.xyz = vec3(u_xlat9) * in_NORMAL0.xyz;
					    u_xlat9 = dot(u_xlat3.xyz, u_xlat2.xyz);
					    u_xlat9 = log2(abs(u_xlat9));
					    u_xlat9 = u_xlat9 * _FresnelStr;
					    u_xlat9 = exp2(u_xlat9);
					    u_xlat9 = u_xlat9 + u_xlat9;
					    vs_TEXCOORD4 = min(u_xlat9, 1.0);
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    u_xlat4 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_3_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					vec3 u_xlat5;
					vec2 u_xlat8;
					int u_xlati10;
					float u_xlat15;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat5.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat5.x = inversesqrt(u_xlat5.x);
					    u_xlat5.xyz = u_xlat5.xxx * in_NORMAL0.xyz;
					    u_xlati10 = unity_StereoEyeIndex;
					    u_xlat3.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati10].yyy;
					    u_xlat3.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati10].xxx + u_xlat3.xyz;
					    u_xlat3.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati10].zzz + u_xlat3.xyz;
					    u_xlat3.xyz = u_xlat3.xyz + unity_WorldToObject[3].xyz;
					    u_xlat3.xyz = u_xlat3.xyz + (-in_POSITION0.xyz);
					    u_xlat15 = dot(u_xlat3.xyz, u_xlat3.xyz);
					    u_xlat15 = inversesqrt(u_xlat15);
					    u_xlat3.xyz = vec3(u_xlat15) * u_xlat3.xyz;
					    u_xlat5.x = dot(u_xlat5.xyz, u_xlat3.xyz);
					    u_xlat5.x = log2(abs(u_xlat5.x));
					    u_xlat5.x = u_xlat5.x * _FresnelStr;
					    u_xlat5.x = exp2(u_xlat5.x);
					    u_xlat5.x = u_xlat5.x + u_xlat5.x;
					    vs_TEXCOORD4 = min(u_xlat5.x, 1.0);
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    u_xlat4 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlat8.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati10].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati10].xy + u_xlat8.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendMul" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					float u_xlat14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat14 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat2.xyz = vec3(u_xlat14) * u_xlat2.xyz;
					    u_xlat14 = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat3.xyz = vec3(u_xlat14) * in_NORMAL0.xyz;
					    u_xlat2.x = dot(u_xlat3.xyz, u_xlat2.xyz);
					    u_xlat2.x = log2(abs(u_xlat2.x));
					    u_xlat2.x = u_xlat2.x * _FresnelStr;
					    u_xlat2.x = exp2(u_xlat2.x);
					    u_xlat2.x = u_xlat2.x + u_xlat2.x;
					    vs_TEXCOORD4 = min(u_xlat2.x, 1.0);
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat4 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_3_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati1;
					vec4 u_xlat2;
					int u_xlati3;
					float u_xlat4;
					float u_xlat5;
					vec3 u_xlat6;
					vec3 u_xlat8;
					vec2 u_xlat10;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat6.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat6.x = inversesqrt(u_xlat6.x);
					    u_xlat6.xyz = u_xlat6.xxx * in_NORMAL0.xyz;
					    u_xlati3 = unity_StereoEyeIndex;
					    u_xlat8.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].yyy;
					    u_xlat8.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].xxx + u_xlat8.xyz;
					    u_xlat8.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].zzz + u_xlat8.xyz;
					    u_xlat8.xyz = u_xlat8.xyz + unity_WorldToObject[3].xyz;
					    u_xlat8.xyz = u_xlat8.xyz + (-in_POSITION0.xyz);
					    u_xlat4 = dot(u_xlat8.xyz, u_xlat8.xyz);
					    u_xlat4 = inversesqrt(u_xlat4);
					    u_xlat8.xyz = u_xlat8.xyz * vec3(u_xlat4);
					    u_xlat6.x = dot(u_xlat6.xyz, u_xlat8.xyz);
					    u_xlat6.x = log2(abs(u_xlat6.x));
					    u_xlat6.x = u_xlat6.x * _FresnelStr;
					    u_xlat6.x = exp2(u_xlat6.x);
					    u_xlat6.x = u_xlat6.x + u_xlat6.x;
					    vs_TEXCOORD4 = min(u_xlat6.x, 1.0);
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat5 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat5;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlat10.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati3].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati3].xy + u_xlat10.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendMul" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					float u_xlat14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat14 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat2.xyz = vec3(u_xlat14) * u_xlat2.xyz;
					    u_xlat14 = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat3.xyz = vec3(u_xlat14) * in_NORMAL0.xyz;
					    u_xlat2.x = dot(u_xlat3.xyz, u_xlat2.xyz);
					    u_xlat2.x = log2(abs(u_xlat2.x));
					    u_xlat2.x = u_xlat2.x * _FresnelStr;
					    u_xlat2.x = exp2(u_xlat2.x);
					    u_xlat2.x = u_xlat2.x + u_xlat2.x;
					    vs_TEXCOORD4 = min(u_xlat2.x, 1.0);
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat4 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_3_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati1;
					vec4 u_xlat2;
					int u_xlati3;
					float u_xlat4;
					float u_xlat5;
					vec3 u_xlat6;
					vec3 u_xlat8;
					vec2 u_xlat10;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat6.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat6.x = inversesqrt(u_xlat6.x);
					    u_xlat6.xyz = u_xlat6.xxx * in_NORMAL0.xyz;
					    u_xlati3 = unity_StereoEyeIndex;
					    u_xlat8.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].yyy;
					    u_xlat8.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].xxx + u_xlat8.xyz;
					    u_xlat8.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].zzz + u_xlat8.xyz;
					    u_xlat8.xyz = u_xlat8.xyz + unity_WorldToObject[3].xyz;
					    u_xlat8.xyz = u_xlat8.xyz + (-in_POSITION0.xyz);
					    u_xlat4 = dot(u_xlat8.xyz, u_xlat8.xyz);
					    u_xlat4 = inversesqrt(u_xlat4);
					    u_xlat8.xyz = u_xlat8.xyz * vec3(u_xlat4);
					    u_xlat6.x = dot(u_xlat6.xyz, u_xlat8.xyz);
					    u_xlat6.x = log2(abs(u_xlat6.x));
					    u_xlat6.x = u_xlat6.x * _FresnelStr;
					    u_xlat6.x = exp2(u_xlat6.x);
					    u_xlat6.x = u_xlat6.x + u_xlat6.x;
					    vs_TEXCOORD4 = min(u_xlat6.x, 1.0);
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat5 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat5;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlat10.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati3].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati3].xy + u_xlat10.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendMul" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					float u_xlat14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat14 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat2.xyz = vec3(u_xlat14) * u_xlat2.xyz;
					    u_xlat14 = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat3.xyz = vec3(u_xlat14) * in_NORMAL0.xyz;
					    u_xlat2.x = dot(u_xlat3.xyz, u_xlat2.xyz);
					    u_xlat2.x = log2(abs(u_xlat2.x));
					    u_xlat2.x = u_xlat2.x * _FresnelStr;
					    u_xlat2.x = exp2(u_xlat2.x);
					    u_xlat2.x = u_xlat2.x + u_xlat2.x;
					    vs_TEXCOORD4 = min(u_xlat2.x, 1.0);
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat4 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_3_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati1;
					vec4 u_xlat2;
					int u_xlati3;
					float u_xlat4;
					float u_xlat5;
					vec3 u_xlat6;
					vec3 u_xlat8;
					vec2 u_xlat10;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat6.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat6.x = inversesqrt(u_xlat6.x);
					    u_xlat6.xyz = u_xlat6.xxx * in_NORMAL0.xyz;
					    u_xlati3 = unity_StereoEyeIndex;
					    u_xlat8.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].yyy;
					    u_xlat8.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].xxx + u_xlat8.xyz;
					    u_xlat8.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].zzz + u_xlat8.xyz;
					    u_xlat8.xyz = u_xlat8.xyz + unity_WorldToObject[3].xyz;
					    u_xlat8.xyz = u_xlat8.xyz + (-in_POSITION0.xyz);
					    u_xlat4 = dot(u_xlat8.xyz, u_xlat8.xyz);
					    u_xlat4 = inversesqrt(u_xlat4);
					    u_xlat8.xyz = u_xlat8.xyz * vec3(u_xlat4);
					    u_xlat6.x = dot(u_xlat6.xyz, u_xlat8.xyz);
					    u_xlat6.x = log2(abs(u_xlat6.x));
					    u_xlat6.x = u_xlat6.x * _FresnelStr;
					    u_xlat6.x = exp2(u_xlat6.x);
					    u_xlat6.x = u_xlat6.x + u_xlat6.x;
					    vs_TEXCOORD4 = min(u_xlat6.x, 1.0);
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat5 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat5;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlat10.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati3].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati3].xy + u_xlat10.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendMul" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					float u_xlat14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat14 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat2.xyz = vec3(u_xlat14) * u_xlat2.xyz;
					    u_xlat14 = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat3.xyz = vec3(u_xlat14) * in_NORMAL0.xyz;
					    u_xlat2.x = dot(u_xlat3.xyz, u_xlat2.xyz);
					    u_xlat2.x = log2(abs(u_xlat2.x));
					    u_xlat2.x = u_xlat2.x * _FresnelStr;
					    u_xlat2.x = exp2(u_xlat2.x);
					    u_xlat2.x = u_xlat2.x + u_xlat2.x;
					    vs_TEXCOORD4 = min(u_xlat2.x, 1.0);
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat4 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_3_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati1;
					vec4 u_xlat2;
					int u_xlati3;
					float u_xlat4;
					float u_xlat5;
					vec3 u_xlat6;
					vec3 u_xlat8;
					vec2 u_xlat10;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat6.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat6.x = inversesqrt(u_xlat6.x);
					    u_xlat6.xyz = u_xlat6.xxx * in_NORMAL0.xyz;
					    u_xlati3 = unity_StereoEyeIndex;
					    u_xlat8.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].yyy;
					    u_xlat8.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].xxx + u_xlat8.xyz;
					    u_xlat8.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].zzz + u_xlat8.xyz;
					    u_xlat8.xyz = u_xlat8.xyz + unity_WorldToObject[3].xyz;
					    u_xlat8.xyz = u_xlat8.xyz + (-in_POSITION0.xyz);
					    u_xlat4 = dot(u_xlat8.xyz, u_xlat8.xyz);
					    u_xlat4 = inversesqrt(u_xlat4);
					    u_xlat8.xyz = u_xlat8.xyz * vec3(u_xlat4);
					    u_xlat6.x = dot(u_xlat6.xyz, u_xlat8.xyz);
					    u_xlat6.x = log2(abs(u_xlat6.x));
					    u_xlat6.x = u_xlat6.x * _FresnelStr;
					    u_xlat6.x = exp2(u_xlat6.x);
					    u_xlat6.x = u_xlat6.x + u_xlat6.x;
					    vs_TEXCOORD4 = min(u_xlat6.x, 1.0);
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat5 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat5;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlat10.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati3].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati3].xy + u_xlat10.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendMul" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					float u_xlat14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat14 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat2.xyz = vec3(u_xlat14) * u_xlat2.xyz;
					    u_xlat14 = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat3.xyz = vec3(u_xlat14) * in_NORMAL0.xyz;
					    u_xlat2.x = dot(u_xlat3.xyz, u_xlat2.xyz);
					    u_xlat2.x = log2(abs(u_xlat2.x));
					    u_xlat2.x = u_xlat2.x * _FresnelStr;
					    u_xlat2.x = exp2(u_xlat2.x);
					    u_xlat2.x = u_xlat2.x + u_xlat2.x;
					    vs_TEXCOORD4 = min(u_xlat2.x, 1.0);
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat4 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_3_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati1;
					vec4 u_xlat2;
					int u_xlati3;
					float u_xlat4;
					float u_xlat5;
					vec3 u_xlat6;
					vec3 u_xlat8;
					vec2 u_xlat10;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat6.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat6.x = inversesqrt(u_xlat6.x);
					    u_xlat6.xyz = u_xlat6.xxx * in_NORMAL0.xyz;
					    u_xlati3 = unity_StereoEyeIndex;
					    u_xlat8.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].yyy;
					    u_xlat8.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].xxx + u_xlat8.xyz;
					    u_xlat8.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].zzz + u_xlat8.xyz;
					    u_xlat8.xyz = u_xlat8.xyz + unity_WorldToObject[3].xyz;
					    u_xlat8.xyz = u_xlat8.xyz + (-in_POSITION0.xyz);
					    u_xlat4 = dot(u_xlat8.xyz, u_xlat8.xyz);
					    u_xlat4 = inversesqrt(u_xlat4);
					    u_xlat8.xyz = u_xlat8.xyz * vec3(u_xlat4);
					    u_xlat6.x = dot(u_xlat6.xyz, u_xlat8.xyz);
					    u_xlat6.x = log2(abs(u_xlat6.x));
					    u_xlat6.x = u_xlat6.x * _FresnelStr;
					    u_xlat6.x = exp2(u_xlat6.x);
					    u_xlat6.x = u_xlat6.x + u_xlat6.x;
					    vs_TEXCOORD4 = min(u_xlat6.x, 1.0);
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat5 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat5;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlat10.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati3].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati3].xy + u_xlat10.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendMul" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					float u_xlat14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat14 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat2.xyz = vec3(u_xlat14) * u_xlat2.xyz;
					    u_xlat14 = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat3.xyz = vec3(u_xlat14) * in_NORMAL0.xyz;
					    u_xlat2.x = dot(u_xlat3.xyz, u_xlat2.xyz);
					    u_xlat2.x = log2(abs(u_xlat2.x));
					    u_xlat2.x = u_xlat2.x * _FresnelStr;
					    u_xlat2.x = exp2(u_xlat2.x);
					    u_xlat2.x = u_xlat2.x + u_xlat2.x;
					    vs_TEXCOORD4 = min(u_xlat2.x, 1.0);
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat4 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_3_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati1;
					vec4 u_xlat2;
					int u_xlati3;
					float u_xlat4;
					float u_xlat5;
					vec3 u_xlat6;
					vec3 u_xlat8;
					vec2 u_xlat10;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat6.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat6.x = inversesqrt(u_xlat6.x);
					    u_xlat6.xyz = u_xlat6.xxx * in_NORMAL0.xyz;
					    u_xlati3 = unity_StereoEyeIndex;
					    u_xlat8.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].yyy;
					    u_xlat8.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].xxx + u_xlat8.xyz;
					    u_xlat8.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].zzz + u_xlat8.xyz;
					    u_xlat8.xyz = u_xlat8.xyz + unity_WorldToObject[3].xyz;
					    u_xlat8.xyz = u_xlat8.xyz + (-in_POSITION0.xyz);
					    u_xlat4 = dot(u_xlat8.xyz, u_xlat8.xyz);
					    u_xlat4 = inversesqrt(u_xlat4);
					    u_xlat8.xyz = u_xlat8.xyz * vec3(u_xlat4);
					    u_xlat6.x = dot(u_xlat6.xyz, u_xlat8.xyz);
					    u_xlat6.x = log2(abs(u_xlat6.x));
					    u_xlat6.x = u_xlat6.x * _FresnelStr;
					    u_xlat6.x = exp2(u_xlat6.x);
					    u_xlat6.x = u_xlat6.x + u_xlat6.x;
					    vs_TEXCOORD4 = min(u_xlat6.x, 1.0);
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat5 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat5;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlat10.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati3].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati3].xy + u_xlat10.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendMul" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    u_xlat2 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat2;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec2 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					float u_xlat3;
					int u_xlati6;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    u_xlat3 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat3;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlati6 = unity_StereoEyeIndex;
					    u_xlat1.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati6].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati6].xy + u_xlat1.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendMul" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    u_xlat2 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat2;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec2 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					float u_xlat3;
					int u_xlati6;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    u_xlat3 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat3;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlati6 = unity_StereoEyeIndex;
					    u_xlat1.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati6].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati6].xy + u_xlat1.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendMul" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat2 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat2;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec2 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					float u_xlat3;
					int u_xlati6;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat3 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat3;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlati6 = unity_StereoEyeIndex;
					    u_xlat1.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati6].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati6].xy + u_xlat1.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendMul" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat2 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat2;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec2 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					float u_xlat3;
					int u_xlati6;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat3 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat3;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlati6 = unity_StereoEyeIndex;
					    u_xlat1.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati6].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati6].xy + u_xlat1.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendMul" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat2 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat2;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec2 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					float u_xlat3;
					int u_xlati6;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat3 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat3;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlati6 = unity_StereoEyeIndex;
					    u_xlat1.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati6].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati6].xy + u_xlat1.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendMul" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat2 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat2;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec2 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					float u_xlat3;
					int u_xlati6;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat3 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat3;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlati6 = unity_StereoEyeIndex;
					    u_xlat1.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati6].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati6].xy + u_xlat1.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendMul" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat2 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat2;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec2 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					float u_xlat3;
					int u_xlati6;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat3 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat3;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlati6 = unity_StereoEyeIndex;
					    u_xlat1.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati6].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati6].xy + u_xlat1.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendMul" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat2 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat2;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec2 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					float u_xlat3;
					int u_xlati6;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat3 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat3;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlati6 = unity_StereoEyeIndex;
					    u_xlat1.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati6].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati6].xy + u_xlat1.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendMul" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    u_xlat2 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat2;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec2 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					float u_xlat3;
					int u_xlati6;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    u_xlat3 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat3;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlati6 = unity_StereoEyeIndex;
					    u_xlat1.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati6].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati6].xy + u_xlat1.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendMul" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    u_xlat2 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat2;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec2 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					float u_xlat3;
					int u_xlati6;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    u_xlat3 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat3;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlati6 = unity_StereoEyeIndex;
					    u_xlat1.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati6].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati6].xy + u_xlat1.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendMul" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat2 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat2;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec2 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					float u_xlat3;
					int u_xlati6;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat3 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat3;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlati6 = unity_StereoEyeIndex;
					    u_xlat1.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati6].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati6].xy + u_xlat1.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendMul" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat2 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat2;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec2 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					float u_xlat3;
					int u_xlati6;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat3 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat3;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlati6 = unity_StereoEyeIndex;
					    u_xlat1.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati6].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati6].xy + u_xlat1.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendMul" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat2 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat2;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec2 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					float u_xlat3;
					int u_xlati6;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat3 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat3;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlati6 = unity_StereoEyeIndex;
					    u_xlat1.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati6].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati6].xy + u_xlat1.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendMul" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat2 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat2;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec2 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					float u_xlat3;
					int u_xlati6;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat3 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat3;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlati6 = unity_StereoEyeIndex;
					    u_xlat1.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati6].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati6].xy + u_xlat1.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendMul" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat2 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat2;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec2 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					float u_xlat3;
					int u_xlati6;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat3 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat3;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlati6 = unity_StereoEyeIndex;
					    u_xlat1.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati6].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati6].xy + u_xlat1.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendMul" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat2 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat2;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec2 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					float u_xlat3;
					int u_xlati6;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat3 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat3;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlati6 = unity_StereoEyeIndex;
					    u_xlat1.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati6].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati6].xy + u_xlat1.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendMul" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					float u_xlat9;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat9 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat9 = inversesqrt(u_xlat9);
					    u_xlat2.xyz = vec3(u_xlat9) * u_xlat2.xyz;
					    u_xlat9 = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat9 = inversesqrt(u_xlat9);
					    u_xlat3.xyz = vec3(u_xlat9) * in_NORMAL0.xyz;
					    u_xlat9 = dot(u_xlat3.xyz, u_xlat2.xyz);
					    u_xlat9 = log2(abs(u_xlat9));
					    u_xlat9 = u_xlat9 * _FresnelStr;
					    u_xlat9 = exp2(u_xlat9);
					    u_xlat9 = u_xlat9 + u_xlat9;
					    vs_TEXCOORD4 = min(u_xlat9, 1.0);
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    u_xlat4 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_3_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					vec3 u_xlat5;
					vec2 u_xlat8;
					int u_xlati10;
					float u_xlat15;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat5.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat5.x = inversesqrt(u_xlat5.x);
					    u_xlat5.xyz = u_xlat5.xxx * in_NORMAL0.xyz;
					    u_xlati10 = unity_StereoEyeIndex;
					    u_xlat3.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati10].yyy;
					    u_xlat3.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati10].xxx + u_xlat3.xyz;
					    u_xlat3.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati10].zzz + u_xlat3.xyz;
					    u_xlat3.xyz = u_xlat3.xyz + unity_WorldToObject[3].xyz;
					    u_xlat3.xyz = u_xlat3.xyz + (-in_POSITION0.xyz);
					    u_xlat15 = dot(u_xlat3.xyz, u_xlat3.xyz);
					    u_xlat15 = inversesqrt(u_xlat15);
					    u_xlat3.xyz = vec3(u_xlat15) * u_xlat3.xyz;
					    u_xlat5.x = dot(u_xlat5.xyz, u_xlat3.xyz);
					    u_xlat5.x = log2(abs(u_xlat5.x));
					    u_xlat5.x = u_xlat5.x * _FresnelStr;
					    u_xlat5.x = exp2(u_xlat5.x);
					    u_xlat5.x = u_xlat5.x + u_xlat5.x;
					    vs_TEXCOORD4 = min(u_xlat5.x, 1.0);
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    u_xlat4 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlat8.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati10].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati10].xy + u_xlat8.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendMul" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					float u_xlat9;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat9 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat9 = inversesqrt(u_xlat9);
					    u_xlat2.xyz = vec3(u_xlat9) * u_xlat2.xyz;
					    u_xlat9 = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat9 = inversesqrt(u_xlat9);
					    u_xlat3.xyz = vec3(u_xlat9) * in_NORMAL0.xyz;
					    u_xlat9 = dot(u_xlat3.xyz, u_xlat2.xyz);
					    u_xlat9 = log2(abs(u_xlat9));
					    u_xlat9 = u_xlat9 * _FresnelStr;
					    u_xlat9 = exp2(u_xlat9);
					    u_xlat9 = u_xlat9 + u_xlat9;
					    vs_TEXCOORD4 = min(u_xlat9, 1.0);
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    u_xlat4 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_3_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					vec3 u_xlat5;
					vec2 u_xlat8;
					int u_xlati10;
					float u_xlat15;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat5.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat5.x = inversesqrt(u_xlat5.x);
					    u_xlat5.xyz = u_xlat5.xxx * in_NORMAL0.xyz;
					    u_xlati10 = unity_StereoEyeIndex;
					    u_xlat3.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati10].yyy;
					    u_xlat3.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati10].xxx + u_xlat3.xyz;
					    u_xlat3.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati10].zzz + u_xlat3.xyz;
					    u_xlat3.xyz = u_xlat3.xyz + unity_WorldToObject[3].xyz;
					    u_xlat3.xyz = u_xlat3.xyz + (-in_POSITION0.xyz);
					    u_xlat15 = dot(u_xlat3.xyz, u_xlat3.xyz);
					    u_xlat15 = inversesqrt(u_xlat15);
					    u_xlat3.xyz = vec3(u_xlat15) * u_xlat3.xyz;
					    u_xlat5.x = dot(u_xlat5.xyz, u_xlat3.xyz);
					    u_xlat5.x = log2(abs(u_xlat5.x));
					    u_xlat5.x = u_xlat5.x * _FresnelStr;
					    u_xlat5.x = exp2(u_xlat5.x);
					    u_xlat5.x = u_xlat5.x + u_xlat5.x;
					    vs_TEXCOORD4 = min(u_xlat5.x, 1.0);
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    u_xlat4 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlat8.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati10].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati10].xy + u_xlat8.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendMul" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					float u_xlat14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat14 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat2.xyz = vec3(u_xlat14) * u_xlat2.xyz;
					    u_xlat14 = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat3.xyz = vec3(u_xlat14) * in_NORMAL0.xyz;
					    u_xlat2.x = dot(u_xlat3.xyz, u_xlat2.xyz);
					    u_xlat2.x = log2(abs(u_xlat2.x));
					    u_xlat2.x = u_xlat2.x * _FresnelStr;
					    u_xlat2.x = exp2(u_xlat2.x);
					    u_xlat2.x = u_xlat2.x + u_xlat2.x;
					    vs_TEXCOORD4 = min(u_xlat2.x, 1.0);
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat4 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_3_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati1;
					vec4 u_xlat2;
					int u_xlati3;
					float u_xlat4;
					float u_xlat5;
					vec3 u_xlat6;
					vec3 u_xlat8;
					vec2 u_xlat10;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat6.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat6.x = inversesqrt(u_xlat6.x);
					    u_xlat6.xyz = u_xlat6.xxx * in_NORMAL0.xyz;
					    u_xlati3 = unity_StereoEyeIndex;
					    u_xlat8.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].yyy;
					    u_xlat8.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].xxx + u_xlat8.xyz;
					    u_xlat8.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].zzz + u_xlat8.xyz;
					    u_xlat8.xyz = u_xlat8.xyz + unity_WorldToObject[3].xyz;
					    u_xlat8.xyz = u_xlat8.xyz + (-in_POSITION0.xyz);
					    u_xlat4 = dot(u_xlat8.xyz, u_xlat8.xyz);
					    u_xlat4 = inversesqrt(u_xlat4);
					    u_xlat8.xyz = u_xlat8.xyz * vec3(u_xlat4);
					    u_xlat6.x = dot(u_xlat6.xyz, u_xlat8.xyz);
					    u_xlat6.x = log2(abs(u_xlat6.x));
					    u_xlat6.x = u_xlat6.x * _FresnelStr;
					    u_xlat6.x = exp2(u_xlat6.x);
					    u_xlat6.x = u_xlat6.x + u_xlat6.x;
					    vs_TEXCOORD4 = min(u_xlat6.x, 1.0);
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat5 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat5;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlat10.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati3].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati3].xy + u_xlat10.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendMul" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					float u_xlat14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat14 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat2.xyz = vec3(u_xlat14) * u_xlat2.xyz;
					    u_xlat14 = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat3.xyz = vec3(u_xlat14) * in_NORMAL0.xyz;
					    u_xlat2.x = dot(u_xlat3.xyz, u_xlat2.xyz);
					    u_xlat2.x = log2(abs(u_xlat2.x));
					    u_xlat2.x = u_xlat2.x * _FresnelStr;
					    u_xlat2.x = exp2(u_xlat2.x);
					    u_xlat2.x = u_xlat2.x + u_xlat2.x;
					    vs_TEXCOORD4 = min(u_xlat2.x, 1.0);
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat4 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_3_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati1;
					vec4 u_xlat2;
					int u_xlati3;
					float u_xlat4;
					float u_xlat5;
					vec3 u_xlat6;
					vec3 u_xlat8;
					vec2 u_xlat10;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat6.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat6.x = inversesqrt(u_xlat6.x);
					    u_xlat6.xyz = u_xlat6.xxx * in_NORMAL0.xyz;
					    u_xlati3 = unity_StereoEyeIndex;
					    u_xlat8.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].yyy;
					    u_xlat8.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].xxx + u_xlat8.xyz;
					    u_xlat8.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].zzz + u_xlat8.xyz;
					    u_xlat8.xyz = u_xlat8.xyz + unity_WorldToObject[3].xyz;
					    u_xlat8.xyz = u_xlat8.xyz + (-in_POSITION0.xyz);
					    u_xlat4 = dot(u_xlat8.xyz, u_xlat8.xyz);
					    u_xlat4 = inversesqrt(u_xlat4);
					    u_xlat8.xyz = u_xlat8.xyz * vec3(u_xlat4);
					    u_xlat6.x = dot(u_xlat6.xyz, u_xlat8.xyz);
					    u_xlat6.x = log2(abs(u_xlat6.x));
					    u_xlat6.x = u_xlat6.x * _FresnelStr;
					    u_xlat6.x = exp2(u_xlat6.x);
					    u_xlat6.x = u_xlat6.x + u_xlat6.x;
					    vs_TEXCOORD4 = min(u_xlat6.x, 1.0);
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat5 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat5;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlat10.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati3].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati3].xy + u_xlat10.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendMul" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					float u_xlat14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat14 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat2.xyz = vec3(u_xlat14) * u_xlat2.xyz;
					    u_xlat14 = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat3.xyz = vec3(u_xlat14) * in_NORMAL0.xyz;
					    u_xlat2.x = dot(u_xlat3.xyz, u_xlat2.xyz);
					    u_xlat2.x = log2(abs(u_xlat2.x));
					    u_xlat2.x = u_xlat2.x * _FresnelStr;
					    u_xlat2.x = exp2(u_xlat2.x);
					    u_xlat2.x = u_xlat2.x + u_xlat2.x;
					    vs_TEXCOORD4 = min(u_xlat2.x, 1.0);
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat4 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_3_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati1;
					vec4 u_xlat2;
					int u_xlati3;
					float u_xlat4;
					float u_xlat5;
					vec3 u_xlat6;
					vec3 u_xlat8;
					vec2 u_xlat10;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat6.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat6.x = inversesqrt(u_xlat6.x);
					    u_xlat6.xyz = u_xlat6.xxx * in_NORMAL0.xyz;
					    u_xlati3 = unity_StereoEyeIndex;
					    u_xlat8.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].yyy;
					    u_xlat8.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].xxx + u_xlat8.xyz;
					    u_xlat8.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].zzz + u_xlat8.xyz;
					    u_xlat8.xyz = u_xlat8.xyz + unity_WorldToObject[3].xyz;
					    u_xlat8.xyz = u_xlat8.xyz + (-in_POSITION0.xyz);
					    u_xlat4 = dot(u_xlat8.xyz, u_xlat8.xyz);
					    u_xlat4 = inversesqrt(u_xlat4);
					    u_xlat8.xyz = u_xlat8.xyz * vec3(u_xlat4);
					    u_xlat6.x = dot(u_xlat6.xyz, u_xlat8.xyz);
					    u_xlat6.x = log2(abs(u_xlat6.x));
					    u_xlat6.x = u_xlat6.x * _FresnelStr;
					    u_xlat6.x = exp2(u_xlat6.x);
					    u_xlat6.x = u_xlat6.x + u_xlat6.x;
					    vs_TEXCOORD4 = min(u_xlat6.x, 1.0);
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat5 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat5;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlat10.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati3].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati3].xy + u_xlat10.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendMul" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					float u_xlat14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat14 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat2.xyz = vec3(u_xlat14) * u_xlat2.xyz;
					    u_xlat14 = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat3.xyz = vec3(u_xlat14) * in_NORMAL0.xyz;
					    u_xlat2.x = dot(u_xlat3.xyz, u_xlat2.xyz);
					    u_xlat2.x = log2(abs(u_xlat2.x));
					    u_xlat2.x = u_xlat2.x * _FresnelStr;
					    u_xlat2.x = exp2(u_xlat2.x);
					    u_xlat2.x = u_xlat2.x + u_xlat2.x;
					    vs_TEXCOORD4 = min(u_xlat2.x, 1.0);
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat4 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_3_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati1;
					vec4 u_xlat2;
					int u_xlati3;
					float u_xlat4;
					float u_xlat5;
					vec3 u_xlat6;
					vec3 u_xlat8;
					vec2 u_xlat10;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat6.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat6.x = inversesqrt(u_xlat6.x);
					    u_xlat6.xyz = u_xlat6.xxx * in_NORMAL0.xyz;
					    u_xlati3 = unity_StereoEyeIndex;
					    u_xlat8.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].yyy;
					    u_xlat8.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].xxx + u_xlat8.xyz;
					    u_xlat8.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].zzz + u_xlat8.xyz;
					    u_xlat8.xyz = u_xlat8.xyz + unity_WorldToObject[3].xyz;
					    u_xlat8.xyz = u_xlat8.xyz + (-in_POSITION0.xyz);
					    u_xlat4 = dot(u_xlat8.xyz, u_xlat8.xyz);
					    u_xlat4 = inversesqrt(u_xlat4);
					    u_xlat8.xyz = u_xlat8.xyz * vec3(u_xlat4);
					    u_xlat6.x = dot(u_xlat6.xyz, u_xlat8.xyz);
					    u_xlat6.x = log2(abs(u_xlat6.x));
					    u_xlat6.x = u_xlat6.x * _FresnelStr;
					    u_xlat6.x = exp2(u_xlat6.x);
					    u_xlat6.x = u_xlat6.x + u_xlat6.x;
					    vs_TEXCOORD4 = min(u_xlat6.x, 1.0);
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat5 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat5;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlat10.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati3].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati3].xy + u_xlat10.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendMul" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					float u_xlat14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat14 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat2.xyz = vec3(u_xlat14) * u_xlat2.xyz;
					    u_xlat14 = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat3.xyz = vec3(u_xlat14) * in_NORMAL0.xyz;
					    u_xlat2.x = dot(u_xlat3.xyz, u_xlat2.xyz);
					    u_xlat2.x = log2(abs(u_xlat2.x));
					    u_xlat2.x = u_xlat2.x * _FresnelStr;
					    u_xlat2.x = exp2(u_xlat2.x);
					    u_xlat2.x = u_xlat2.x + u_xlat2.x;
					    vs_TEXCOORD4 = min(u_xlat2.x, 1.0);
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat4 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_3_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati1;
					vec4 u_xlat2;
					int u_xlati3;
					float u_xlat4;
					float u_xlat5;
					vec3 u_xlat6;
					vec3 u_xlat8;
					vec2 u_xlat10;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat6.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat6.x = inversesqrt(u_xlat6.x);
					    u_xlat6.xyz = u_xlat6.xxx * in_NORMAL0.xyz;
					    u_xlati3 = unity_StereoEyeIndex;
					    u_xlat8.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].yyy;
					    u_xlat8.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].xxx + u_xlat8.xyz;
					    u_xlat8.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].zzz + u_xlat8.xyz;
					    u_xlat8.xyz = u_xlat8.xyz + unity_WorldToObject[3].xyz;
					    u_xlat8.xyz = u_xlat8.xyz + (-in_POSITION0.xyz);
					    u_xlat4 = dot(u_xlat8.xyz, u_xlat8.xyz);
					    u_xlat4 = inversesqrt(u_xlat4);
					    u_xlat8.xyz = u_xlat8.xyz * vec3(u_xlat4);
					    u_xlat6.x = dot(u_xlat6.xyz, u_xlat8.xyz);
					    u_xlat6.x = log2(abs(u_xlat6.x));
					    u_xlat6.x = u_xlat6.x * _FresnelStr;
					    u_xlat6.x = exp2(u_xlat6.x);
					    u_xlat6.x = u_xlat6.x + u_xlat6.x;
					    vs_TEXCOORD4 = min(u_xlat6.x, 1.0);
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat5 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat5;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlat10.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati3].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati3].xy + u_xlat10.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendMul" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					float u_xlat14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat14 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat2.xyz = vec3(u_xlat14) * u_xlat2.xyz;
					    u_xlat14 = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat3.xyz = vec3(u_xlat14) * in_NORMAL0.xyz;
					    u_xlat2.x = dot(u_xlat3.xyz, u_xlat2.xyz);
					    u_xlat2.x = log2(abs(u_xlat2.x));
					    u_xlat2.x = u_xlat2.x * _FresnelStr;
					    u_xlat2.x = exp2(u_xlat2.x);
					    u_xlat2.x = u_xlat2.x + u_xlat2.x;
					    vs_TEXCOORD4 = min(u_xlat2.x, 1.0);
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat4 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_3_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati1;
					vec4 u_xlat2;
					int u_xlati3;
					float u_xlat4;
					float u_xlat5;
					vec3 u_xlat6;
					vec3 u_xlat8;
					vec2 u_xlat10;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat6.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat6.x = inversesqrt(u_xlat6.x);
					    u_xlat6.xyz = u_xlat6.xxx * in_NORMAL0.xyz;
					    u_xlati3 = unity_StereoEyeIndex;
					    u_xlat8.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].yyy;
					    u_xlat8.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].xxx + u_xlat8.xyz;
					    u_xlat8.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].zzz + u_xlat8.xyz;
					    u_xlat8.xyz = u_xlat8.xyz + unity_WorldToObject[3].xyz;
					    u_xlat8.xyz = u_xlat8.xyz + (-in_POSITION0.xyz);
					    u_xlat4 = dot(u_xlat8.xyz, u_xlat8.xyz);
					    u_xlat4 = inversesqrt(u_xlat4);
					    u_xlat8.xyz = u_xlat8.xyz * vec3(u_xlat4);
					    u_xlat6.x = dot(u_xlat6.xyz, u_xlat8.xyz);
					    u_xlat6.x = log2(abs(u_xlat6.x));
					    u_xlat6.x = u_xlat6.x * _FresnelStr;
					    u_xlat6.x = exp2(u_xlat6.x);
					    u_xlat6.x = u_xlat6.x + u_xlat6.x;
					    vs_TEXCOORD4 = min(u_xlat6.x, 1.0);
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat5 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat5;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlat10.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati3].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati3].xy + u_xlat10.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendMul" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					float u_xlat9;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat9 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat9 = inversesqrt(u_xlat9);
					    u_xlat2.xyz = vec3(u_xlat9) * u_xlat2.xyz;
					    u_xlat9 = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat9 = inversesqrt(u_xlat9);
					    u_xlat3.xyz = vec3(u_xlat9) * in_NORMAL0.xyz;
					    u_xlat9 = dot(u_xlat3.xyz, u_xlat2.xyz);
					    u_xlat9 = log2(abs(u_xlat9));
					    u_xlat9 = u_xlat9 * _FresnelStr;
					    u_xlat9 = exp2(u_xlat9);
					    u_xlat9 = u_xlat9 + u_xlat9;
					    vs_TEXCOORD4 = min(u_xlat9, 1.0);
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    u_xlat4 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_3_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					vec3 u_xlat5;
					vec2 u_xlat8;
					int u_xlati10;
					float u_xlat15;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat5.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat5.x = inversesqrt(u_xlat5.x);
					    u_xlat5.xyz = u_xlat5.xxx * in_NORMAL0.xyz;
					    u_xlati10 = unity_StereoEyeIndex;
					    u_xlat3.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati10].yyy;
					    u_xlat3.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati10].xxx + u_xlat3.xyz;
					    u_xlat3.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati10].zzz + u_xlat3.xyz;
					    u_xlat3.xyz = u_xlat3.xyz + unity_WorldToObject[3].xyz;
					    u_xlat3.xyz = u_xlat3.xyz + (-in_POSITION0.xyz);
					    u_xlat15 = dot(u_xlat3.xyz, u_xlat3.xyz);
					    u_xlat15 = inversesqrt(u_xlat15);
					    u_xlat3.xyz = vec3(u_xlat15) * u_xlat3.xyz;
					    u_xlat5.x = dot(u_xlat5.xyz, u_xlat3.xyz);
					    u_xlat5.x = log2(abs(u_xlat5.x));
					    u_xlat5.x = u_xlat5.x * _FresnelStr;
					    u_xlat5.x = exp2(u_xlat5.x);
					    u_xlat5.x = u_xlat5.x + u_xlat5.x;
					    vs_TEXCOORD4 = min(u_xlat5.x, 1.0);
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    u_xlat4 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlat8.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati10].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati10].xy + u_xlat8.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendMul" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					float u_xlat9;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat9 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat9 = inversesqrt(u_xlat9);
					    u_xlat2.xyz = vec3(u_xlat9) * u_xlat2.xyz;
					    u_xlat9 = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat9 = inversesqrt(u_xlat9);
					    u_xlat3.xyz = vec3(u_xlat9) * in_NORMAL0.xyz;
					    u_xlat9 = dot(u_xlat3.xyz, u_xlat2.xyz);
					    u_xlat9 = log2(abs(u_xlat9));
					    u_xlat9 = u_xlat9 * _FresnelStr;
					    u_xlat9 = exp2(u_xlat9);
					    u_xlat9 = u_xlat9 + u_xlat9;
					    vs_TEXCOORD4 = min(u_xlat9, 1.0);
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    u_xlat4 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_3_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					vec3 u_xlat5;
					vec2 u_xlat8;
					int u_xlati10;
					float u_xlat15;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat5.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat5.x = inversesqrt(u_xlat5.x);
					    u_xlat5.xyz = u_xlat5.xxx * in_NORMAL0.xyz;
					    u_xlati10 = unity_StereoEyeIndex;
					    u_xlat3.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati10].yyy;
					    u_xlat3.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati10].xxx + u_xlat3.xyz;
					    u_xlat3.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati10].zzz + u_xlat3.xyz;
					    u_xlat3.xyz = u_xlat3.xyz + unity_WorldToObject[3].xyz;
					    u_xlat3.xyz = u_xlat3.xyz + (-in_POSITION0.xyz);
					    u_xlat15 = dot(u_xlat3.xyz, u_xlat3.xyz);
					    u_xlat15 = inversesqrt(u_xlat15);
					    u_xlat3.xyz = vec3(u_xlat15) * u_xlat3.xyz;
					    u_xlat5.x = dot(u_xlat5.xyz, u_xlat3.xyz);
					    u_xlat5.x = log2(abs(u_xlat5.x));
					    u_xlat5.x = u_xlat5.x * _FresnelStr;
					    u_xlat5.x = exp2(u_xlat5.x);
					    u_xlat5.x = u_xlat5.x + u_xlat5.x;
					    vs_TEXCOORD4 = min(u_xlat5.x, 1.0);
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    u_xlat4 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlat8.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati10].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati10].xy + u_xlat8.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendMul" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					float u_xlat14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat14 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat2.xyz = vec3(u_xlat14) * u_xlat2.xyz;
					    u_xlat14 = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat3.xyz = vec3(u_xlat14) * in_NORMAL0.xyz;
					    u_xlat2.x = dot(u_xlat3.xyz, u_xlat2.xyz);
					    u_xlat2.x = log2(abs(u_xlat2.x));
					    u_xlat2.x = u_xlat2.x * _FresnelStr;
					    u_xlat2.x = exp2(u_xlat2.x);
					    u_xlat2.x = u_xlat2.x + u_xlat2.x;
					    vs_TEXCOORD4 = min(u_xlat2.x, 1.0);
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat4 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_3_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati1;
					vec4 u_xlat2;
					int u_xlati3;
					float u_xlat4;
					float u_xlat5;
					vec3 u_xlat6;
					vec3 u_xlat8;
					vec2 u_xlat10;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat6.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat6.x = inversesqrt(u_xlat6.x);
					    u_xlat6.xyz = u_xlat6.xxx * in_NORMAL0.xyz;
					    u_xlati3 = unity_StereoEyeIndex;
					    u_xlat8.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].yyy;
					    u_xlat8.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].xxx + u_xlat8.xyz;
					    u_xlat8.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].zzz + u_xlat8.xyz;
					    u_xlat8.xyz = u_xlat8.xyz + unity_WorldToObject[3].xyz;
					    u_xlat8.xyz = u_xlat8.xyz + (-in_POSITION0.xyz);
					    u_xlat4 = dot(u_xlat8.xyz, u_xlat8.xyz);
					    u_xlat4 = inversesqrt(u_xlat4);
					    u_xlat8.xyz = u_xlat8.xyz * vec3(u_xlat4);
					    u_xlat6.x = dot(u_xlat6.xyz, u_xlat8.xyz);
					    u_xlat6.x = log2(abs(u_xlat6.x));
					    u_xlat6.x = u_xlat6.x * _FresnelStr;
					    u_xlat6.x = exp2(u_xlat6.x);
					    u_xlat6.x = u_xlat6.x + u_xlat6.x;
					    vs_TEXCOORD4 = min(u_xlat6.x, 1.0);
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat5 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat5;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlat10.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati3].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati3].xy + u_xlat10.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendMul" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					float u_xlat14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat14 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat2.xyz = vec3(u_xlat14) * u_xlat2.xyz;
					    u_xlat14 = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat3.xyz = vec3(u_xlat14) * in_NORMAL0.xyz;
					    u_xlat2.x = dot(u_xlat3.xyz, u_xlat2.xyz);
					    u_xlat2.x = log2(abs(u_xlat2.x));
					    u_xlat2.x = u_xlat2.x * _FresnelStr;
					    u_xlat2.x = exp2(u_xlat2.x);
					    u_xlat2.x = u_xlat2.x + u_xlat2.x;
					    vs_TEXCOORD4 = min(u_xlat2.x, 1.0);
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat4 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_3_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati1;
					vec4 u_xlat2;
					int u_xlati3;
					float u_xlat4;
					float u_xlat5;
					vec3 u_xlat6;
					vec3 u_xlat8;
					vec2 u_xlat10;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat6.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat6.x = inversesqrt(u_xlat6.x);
					    u_xlat6.xyz = u_xlat6.xxx * in_NORMAL0.xyz;
					    u_xlati3 = unity_StereoEyeIndex;
					    u_xlat8.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].yyy;
					    u_xlat8.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].xxx + u_xlat8.xyz;
					    u_xlat8.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].zzz + u_xlat8.xyz;
					    u_xlat8.xyz = u_xlat8.xyz + unity_WorldToObject[3].xyz;
					    u_xlat8.xyz = u_xlat8.xyz + (-in_POSITION0.xyz);
					    u_xlat4 = dot(u_xlat8.xyz, u_xlat8.xyz);
					    u_xlat4 = inversesqrt(u_xlat4);
					    u_xlat8.xyz = u_xlat8.xyz * vec3(u_xlat4);
					    u_xlat6.x = dot(u_xlat6.xyz, u_xlat8.xyz);
					    u_xlat6.x = log2(abs(u_xlat6.x));
					    u_xlat6.x = u_xlat6.x * _FresnelStr;
					    u_xlat6.x = exp2(u_xlat6.x);
					    u_xlat6.x = u_xlat6.x + u_xlat6.x;
					    vs_TEXCOORD4 = min(u_xlat6.x, 1.0);
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat5 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat5;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlat10.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati3].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati3].xy + u_xlat10.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendMul" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					float u_xlat14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat14 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat2.xyz = vec3(u_xlat14) * u_xlat2.xyz;
					    u_xlat14 = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat3.xyz = vec3(u_xlat14) * in_NORMAL0.xyz;
					    u_xlat2.x = dot(u_xlat3.xyz, u_xlat2.xyz);
					    u_xlat2.x = log2(abs(u_xlat2.x));
					    u_xlat2.x = u_xlat2.x * _FresnelStr;
					    u_xlat2.x = exp2(u_xlat2.x);
					    u_xlat2.x = u_xlat2.x + u_xlat2.x;
					    vs_TEXCOORD4 = min(u_xlat2.x, 1.0);
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat4 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_3_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati1;
					vec4 u_xlat2;
					int u_xlati3;
					float u_xlat4;
					float u_xlat5;
					vec3 u_xlat6;
					vec3 u_xlat8;
					vec2 u_xlat10;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat6.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat6.x = inversesqrt(u_xlat6.x);
					    u_xlat6.xyz = u_xlat6.xxx * in_NORMAL0.xyz;
					    u_xlati3 = unity_StereoEyeIndex;
					    u_xlat8.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].yyy;
					    u_xlat8.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].xxx + u_xlat8.xyz;
					    u_xlat8.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].zzz + u_xlat8.xyz;
					    u_xlat8.xyz = u_xlat8.xyz + unity_WorldToObject[3].xyz;
					    u_xlat8.xyz = u_xlat8.xyz + (-in_POSITION0.xyz);
					    u_xlat4 = dot(u_xlat8.xyz, u_xlat8.xyz);
					    u_xlat4 = inversesqrt(u_xlat4);
					    u_xlat8.xyz = u_xlat8.xyz * vec3(u_xlat4);
					    u_xlat6.x = dot(u_xlat6.xyz, u_xlat8.xyz);
					    u_xlat6.x = log2(abs(u_xlat6.x));
					    u_xlat6.x = u_xlat6.x * _FresnelStr;
					    u_xlat6.x = exp2(u_xlat6.x);
					    u_xlat6.x = u_xlat6.x + u_xlat6.x;
					    vs_TEXCOORD4 = min(u_xlat6.x, 1.0);
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat5 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat5;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlat10.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati3].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati3].xy + u_xlat10.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendMul" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					float u_xlat14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat14 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat2.xyz = vec3(u_xlat14) * u_xlat2.xyz;
					    u_xlat14 = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat3.xyz = vec3(u_xlat14) * in_NORMAL0.xyz;
					    u_xlat2.x = dot(u_xlat3.xyz, u_xlat2.xyz);
					    u_xlat2.x = log2(abs(u_xlat2.x));
					    u_xlat2.x = u_xlat2.x * _FresnelStr;
					    u_xlat2.x = exp2(u_xlat2.x);
					    u_xlat2.x = u_xlat2.x + u_xlat2.x;
					    vs_TEXCOORD4 = min(u_xlat2.x, 1.0);
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat4 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_3_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati1;
					vec4 u_xlat2;
					int u_xlati3;
					float u_xlat4;
					float u_xlat5;
					vec3 u_xlat6;
					vec3 u_xlat8;
					vec2 u_xlat10;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat6.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat6.x = inversesqrt(u_xlat6.x);
					    u_xlat6.xyz = u_xlat6.xxx * in_NORMAL0.xyz;
					    u_xlati3 = unity_StereoEyeIndex;
					    u_xlat8.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].yyy;
					    u_xlat8.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].xxx + u_xlat8.xyz;
					    u_xlat8.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].zzz + u_xlat8.xyz;
					    u_xlat8.xyz = u_xlat8.xyz + unity_WorldToObject[3].xyz;
					    u_xlat8.xyz = u_xlat8.xyz + (-in_POSITION0.xyz);
					    u_xlat4 = dot(u_xlat8.xyz, u_xlat8.xyz);
					    u_xlat4 = inversesqrt(u_xlat4);
					    u_xlat8.xyz = u_xlat8.xyz * vec3(u_xlat4);
					    u_xlat6.x = dot(u_xlat6.xyz, u_xlat8.xyz);
					    u_xlat6.x = log2(abs(u_xlat6.x));
					    u_xlat6.x = u_xlat6.x * _FresnelStr;
					    u_xlat6.x = exp2(u_xlat6.x);
					    u_xlat6.x = u_xlat6.x + u_xlat6.x;
					    vs_TEXCOORD4 = min(u_xlat6.x, 1.0);
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat5 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat5;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlat10.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati3].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati3].xy + u_xlat10.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendMul" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					float u_xlat14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat14 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat2.xyz = vec3(u_xlat14) * u_xlat2.xyz;
					    u_xlat14 = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat3.xyz = vec3(u_xlat14) * in_NORMAL0.xyz;
					    u_xlat2.x = dot(u_xlat3.xyz, u_xlat2.xyz);
					    u_xlat2.x = log2(abs(u_xlat2.x));
					    u_xlat2.x = u_xlat2.x * _FresnelStr;
					    u_xlat2.x = exp2(u_xlat2.x);
					    u_xlat2.x = u_xlat2.x + u_xlat2.x;
					    vs_TEXCOORD4 = min(u_xlat2.x, 1.0);
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat4 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_3_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati1;
					vec4 u_xlat2;
					int u_xlati3;
					float u_xlat4;
					float u_xlat5;
					vec3 u_xlat6;
					vec3 u_xlat8;
					vec2 u_xlat10;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat6.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat6.x = inversesqrt(u_xlat6.x);
					    u_xlat6.xyz = u_xlat6.xxx * in_NORMAL0.xyz;
					    u_xlati3 = unity_StereoEyeIndex;
					    u_xlat8.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].yyy;
					    u_xlat8.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].xxx + u_xlat8.xyz;
					    u_xlat8.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].zzz + u_xlat8.xyz;
					    u_xlat8.xyz = u_xlat8.xyz + unity_WorldToObject[3].xyz;
					    u_xlat8.xyz = u_xlat8.xyz + (-in_POSITION0.xyz);
					    u_xlat4 = dot(u_xlat8.xyz, u_xlat8.xyz);
					    u_xlat4 = inversesqrt(u_xlat4);
					    u_xlat8.xyz = u_xlat8.xyz * vec3(u_xlat4);
					    u_xlat6.x = dot(u_xlat6.xyz, u_xlat8.xyz);
					    u_xlat6.x = log2(abs(u_xlat6.x));
					    u_xlat6.x = u_xlat6.x * _FresnelStr;
					    u_xlat6.x = exp2(u_xlat6.x);
					    u_xlat6.x = u_xlat6.x + u_xlat6.x;
					    vs_TEXCOORD4 = min(u_xlat6.x, 1.0);
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat5 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat5;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlat10.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati3].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati3].xy + u_xlat10.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendMul" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					float u_xlat14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat14 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat2.xyz = vec3(u_xlat14) * u_xlat2.xyz;
					    u_xlat14 = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat3.xyz = vec3(u_xlat14) * in_NORMAL0.xyz;
					    u_xlat2.x = dot(u_xlat3.xyz, u_xlat2.xyz);
					    u_xlat2.x = log2(abs(u_xlat2.x));
					    u_xlat2.x = u_xlat2.x * _FresnelStr;
					    u_xlat2.x = exp2(u_xlat2.x);
					    u_xlat2.x = u_xlat2.x + u_xlat2.x;
					    vs_TEXCOORD4 = min(u_xlat2.x, 1.0);
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat4 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_3_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati1;
					vec4 u_xlat2;
					int u_xlati3;
					float u_xlat4;
					float u_xlat5;
					vec3 u_xlat6;
					vec3 u_xlat8;
					vec2 u_xlat10;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat6.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat6.x = inversesqrt(u_xlat6.x);
					    u_xlat6.xyz = u_xlat6.xxx * in_NORMAL0.xyz;
					    u_xlati3 = unity_StereoEyeIndex;
					    u_xlat8.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].yyy;
					    u_xlat8.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].xxx + u_xlat8.xyz;
					    u_xlat8.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].zzz + u_xlat8.xyz;
					    u_xlat8.xyz = u_xlat8.xyz + unity_WorldToObject[3].xyz;
					    u_xlat8.xyz = u_xlat8.xyz + (-in_POSITION0.xyz);
					    u_xlat4 = dot(u_xlat8.xyz, u_xlat8.xyz);
					    u_xlat4 = inversesqrt(u_xlat4);
					    u_xlat8.xyz = u_xlat8.xyz * vec3(u_xlat4);
					    u_xlat6.x = dot(u_xlat6.xyz, u_xlat8.xyz);
					    u_xlat6.x = log2(abs(u_xlat6.x));
					    u_xlat6.x = u_xlat6.x * _FresnelStr;
					    u_xlat6.x = exp2(u_xlat6.x);
					    u_xlat6.x = u_xlat6.x + u_xlat6.x;
					    vs_TEXCOORD4 = min(u_xlat6.x, 1.0);
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat5 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat5;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlat10.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati3].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati3].xy + u_xlat10.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendMul" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    u_xlat2 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat2;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec2 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					float u_xlat3;
					int u_xlati6;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    u_xlat3 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat3;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlati6 = unity_StereoEyeIndex;
					    u_xlat1.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati6].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati6].xy + u_xlat1.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendMul" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    u_xlat2 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat2;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec2 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					float u_xlat3;
					int u_xlati6;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    u_xlat3 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat3;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlati6 = unity_StereoEyeIndex;
					    u_xlat1.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati6].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati6].xy + u_xlat1.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendMul" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat2 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat2;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec2 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					float u_xlat3;
					int u_xlati6;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat3 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat3;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlati6 = unity_StereoEyeIndex;
					    u_xlat1.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati6].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati6].xy + u_xlat1.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendMul" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat2 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat2;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec2 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					float u_xlat3;
					int u_xlati6;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat3 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat3;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlati6 = unity_StereoEyeIndex;
					    u_xlat1.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati6].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati6].xy + u_xlat1.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendMul" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat2 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat2;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec2 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					float u_xlat3;
					int u_xlati6;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat3 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat3;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlati6 = unity_StereoEyeIndex;
					    u_xlat1.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati6].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati6].xy + u_xlat1.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendMul" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat2 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat2;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec2 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					float u_xlat3;
					int u_xlati6;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat3 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat3;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlati6 = unity_StereoEyeIndex;
					    u_xlat1.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati6].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati6].xy + u_xlat1.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendMul" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat2 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat2;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec2 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					float u_xlat3;
					int u_xlati6;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat3 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat3;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlati6 = unity_StereoEyeIndex;
					    u_xlat1.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati6].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati6].xy + u_xlat1.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendMul" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat2 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat2;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec2 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					float u_xlat3;
					int u_xlati6;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat3 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat3;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlati6 = unity_StereoEyeIndex;
					    u_xlat1.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati6].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati6].xy + u_xlat1.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendMul" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    u_xlat2 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat2;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec2 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					float u_xlat3;
					int u_xlati6;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    u_xlat3 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat3;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlati6 = unity_StereoEyeIndex;
					    u_xlat1.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati6].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati6].xy + u_xlat1.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendMul" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    u_xlat2 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat2;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec2 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					float u_xlat3;
					int u_xlati6;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    u_xlat3 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat3;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlati6 = unity_StereoEyeIndex;
					    u_xlat1.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati6].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati6].xy + u_xlat1.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendMul" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat2 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat2;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec2 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					float u_xlat3;
					int u_xlati6;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat3 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat3;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlati6 = unity_StereoEyeIndex;
					    u_xlat1.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati6].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati6].xy + u_xlat1.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendMul" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat2 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat2;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec2 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					float u_xlat3;
					int u_xlati6;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat3 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat3;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlati6 = unity_StereoEyeIndex;
					    u_xlat1.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati6].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati6].xy + u_xlat1.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendMul" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat2 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat2;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec2 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					float u_xlat3;
					int u_xlati6;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat3 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat3;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlati6 = unity_StereoEyeIndex;
					    u_xlat1.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati6].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati6].xy + u_xlat1.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendMul" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat2 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat2;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec2 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					float u_xlat3;
					int u_xlati6;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat3 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat3;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlati6 = unity_StereoEyeIndex;
					    u_xlat1.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati6].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati6].xy + u_xlat1.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendMul" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat2 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat2;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec2 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					float u_xlat3;
					int u_xlati6;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat3 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat3;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlati6 = unity_StereoEyeIndex;
					    u_xlat1.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati6].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati6].xy + u_xlat1.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendMul" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat2 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat2;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec2 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					float u_xlat3;
					int u_xlati6;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat3 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat3;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlati6 = unity_StereoEyeIndex;
					    u_xlat1.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati6].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati6].xy + u_xlat1.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendMul" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					float u_xlat9;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat9 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat9 = inversesqrt(u_xlat9);
					    u_xlat2.xyz = vec3(u_xlat9) * u_xlat2.xyz;
					    u_xlat9 = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat9 = inversesqrt(u_xlat9);
					    u_xlat3.xyz = vec3(u_xlat9) * in_NORMAL0.xyz;
					    u_xlat9 = dot(u_xlat3.xyz, u_xlat2.xyz);
					    u_xlat9 = log2(abs(u_xlat9));
					    u_xlat9 = u_xlat9 * _FresnelStr;
					    u_xlat9 = exp2(u_xlat9);
					    u_xlat9 = u_xlat9 + u_xlat9;
					    vs_TEXCOORD4 = min(u_xlat9, 1.0);
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    u_xlat4 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_3_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					vec3 u_xlat5;
					vec2 u_xlat8;
					int u_xlati10;
					float u_xlat15;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat5.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat5.x = inversesqrt(u_xlat5.x);
					    u_xlat5.xyz = u_xlat5.xxx * in_NORMAL0.xyz;
					    u_xlati10 = unity_StereoEyeIndex;
					    u_xlat3.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati10].yyy;
					    u_xlat3.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati10].xxx + u_xlat3.xyz;
					    u_xlat3.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati10].zzz + u_xlat3.xyz;
					    u_xlat3.xyz = u_xlat3.xyz + unity_WorldToObject[3].xyz;
					    u_xlat3.xyz = u_xlat3.xyz + (-in_POSITION0.xyz);
					    u_xlat15 = dot(u_xlat3.xyz, u_xlat3.xyz);
					    u_xlat15 = inversesqrt(u_xlat15);
					    u_xlat3.xyz = vec3(u_xlat15) * u_xlat3.xyz;
					    u_xlat5.x = dot(u_xlat5.xyz, u_xlat3.xyz);
					    u_xlat5.x = log2(abs(u_xlat5.x));
					    u_xlat5.x = u_xlat5.x * _FresnelStr;
					    u_xlat5.x = exp2(u_xlat5.x);
					    u_xlat5.x = u_xlat5.x + u_xlat5.x;
					    vs_TEXCOORD4 = min(u_xlat5.x, 1.0);
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    u_xlat4 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlat8.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati10].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati10].xy + u_xlat8.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendMul" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					float u_xlat9;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat9 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat9 = inversesqrt(u_xlat9);
					    u_xlat2.xyz = vec3(u_xlat9) * u_xlat2.xyz;
					    u_xlat9 = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat9 = inversesqrt(u_xlat9);
					    u_xlat3.xyz = vec3(u_xlat9) * in_NORMAL0.xyz;
					    u_xlat9 = dot(u_xlat3.xyz, u_xlat2.xyz);
					    u_xlat9 = log2(abs(u_xlat9));
					    u_xlat9 = u_xlat9 * _FresnelStr;
					    u_xlat9 = exp2(u_xlat9);
					    u_xlat9 = u_xlat9 + u_xlat9;
					    vs_TEXCOORD4 = min(u_xlat9, 1.0);
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    u_xlat4 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_3_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					vec3 u_xlat5;
					vec2 u_xlat8;
					int u_xlati10;
					float u_xlat15;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat5.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat5.x = inversesqrt(u_xlat5.x);
					    u_xlat5.xyz = u_xlat5.xxx * in_NORMAL0.xyz;
					    u_xlati10 = unity_StereoEyeIndex;
					    u_xlat3.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati10].yyy;
					    u_xlat3.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati10].xxx + u_xlat3.xyz;
					    u_xlat3.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati10].zzz + u_xlat3.xyz;
					    u_xlat3.xyz = u_xlat3.xyz + unity_WorldToObject[3].xyz;
					    u_xlat3.xyz = u_xlat3.xyz + (-in_POSITION0.xyz);
					    u_xlat15 = dot(u_xlat3.xyz, u_xlat3.xyz);
					    u_xlat15 = inversesqrt(u_xlat15);
					    u_xlat3.xyz = vec3(u_xlat15) * u_xlat3.xyz;
					    u_xlat5.x = dot(u_xlat5.xyz, u_xlat3.xyz);
					    u_xlat5.x = log2(abs(u_xlat5.x));
					    u_xlat5.x = u_xlat5.x * _FresnelStr;
					    u_xlat5.x = exp2(u_xlat5.x);
					    u_xlat5.x = u_xlat5.x + u_xlat5.x;
					    vs_TEXCOORD4 = min(u_xlat5.x, 1.0);
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    u_xlat4 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlat8.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati10].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati10].xy + u_xlat8.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendMul" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					float u_xlat14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat14 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat2.xyz = vec3(u_xlat14) * u_xlat2.xyz;
					    u_xlat14 = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat3.xyz = vec3(u_xlat14) * in_NORMAL0.xyz;
					    u_xlat2.x = dot(u_xlat3.xyz, u_xlat2.xyz);
					    u_xlat2.x = log2(abs(u_xlat2.x));
					    u_xlat2.x = u_xlat2.x * _FresnelStr;
					    u_xlat2.x = exp2(u_xlat2.x);
					    u_xlat2.x = u_xlat2.x + u_xlat2.x;
					    vs_TEXCOORD4 = min(u_xlat2.x, 1.0);
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat4 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_3_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati1;
					vec4 u_xlat2;
					int u_xlati3;
					float u_xlat4;
					float u_xlat5;
					vec3 u_xlat6;
					vec3 u_xlat8;
					vec2 u_xlat10;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat6.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat6.x = inversesqrt(u_xlat6.x);
					    u_xlat6.xyz = u_xlat6.xxx * in_NORMAL0.xyz;
					    u_xlati3 = unity_StereoEyeIndex;
					    u_xlat8.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].yyy;
					    u_xlat8.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].xxx + u_xlat8.xyz;
					    u_xlat8.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].zzz + u_xlat8.xyz;
					    u_xlat8.xyz = u_xlat8.xyz + unity_WorldToObject[3].xyz;
					    u_xlat8.xyz = u_xlat8.xyz + (-in_POSITION0.xyz);
					    u_xlat4 = dot(u_xlat8.xyz, u_xlat8.xyz);
					    u_xlat4 = inversesqrt(u_xlat4);
					    u_xlat8.xyz = u_xlat8.xyz * vec3(u_xlat4);
					    u_xlat6.x = dot(u_xlat6.xyz, u_xlat8.xyz);
					    u_xlat6.x = log2(abs(u_xlat6.x));
					    u_xlat6.x = u_xlat6.x * _FresnelStr;
					    u_xlat6.x = exp2(u_xlat6.x);
					    u_xlat6.x = u_xlat6.x + u_xlat6.x;
					    vs_TEXCOORD4 = min(u_xlat6.x, 1.0);
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat5 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat5;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlat10.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati3].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati3].xy + u_xlat10.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendMul" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					float u_xlat14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat14 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat2.xyz = vec3(u_xlat14) * u_xlat2.xyz;
					    u_xlat14 = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat3.xyz = vec3(u_xlat14) * in_NORMAL0.xyz;
					    u_xlat2.x = dot(u_xlat3.xyz, u_xlat2.xyz);
					    u_xlat2.x = log2(abs(u_xlat2.x));
					    u_xlat2.x = u_xlat2.x * _FresnelStr;
					    u_xlat2.x = exp2(u_xlat2.x);
					    u_xlat2.x = u_xlat2.x + u_xlat2.x;
					    vs_TEXCOORD4 = min(u_xlat2.x, 1.0);
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat4 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_3_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati1;
					vec4 u_xlat2;
					int u_xlati3;
					float u_xlat4;
					float u_xlat5;
					vec3 u_xlat6;
					vec3 u_xlat8;
					vec2 u_xlat10;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat6.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat6.x = inversesqrt(u_xlat6.x);
					    u_xlat6.xyz = u_xlat6.xxx * in_NORMAL0.xyz;
					    u_xlati3 = unity_StereoEyeIndex;
					    u_xlat8.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].yyy;
					    u_xlat8.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].xxx + u_xlat8.xyz;
					    u_xlat8.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].zzz + u_xlat8.xyz;
					    u_xlat8.xyz = u_xlat8.xyz + unity_WorldToObject[3].xyz;
					    u_xlat8.xyz = u_xlat8.xyz + (-in_POSITION0.xyz);
					    u_xlat4 = dot(u_xlat8.xyz, u_xlat8.xyz);
					    u_xlat4 = inversesqrt(u_xlat4);
					    u_xlat8.xyz = u_xlat8.xyz * vec3(u_xlat4);
					    u_xlat6.x = dot(u_xlat6.xyz, u_xlat8.xyz);
					    u_xlat6.x = log2(abs(u_xlat6.x));
					    u_xlat6.x = u_xlat6.x * _FresnelStr;
					    u_xlat6.x = exp2(u_xlat6.x);
					    u_xlat6.x = u_xlat6.x + u_xlat6.x;
					    vs_TEXCOORD4 = min(u_xlat6.x, 1.0);
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat5 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat5;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlat10.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati3].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati3].xy + u_xlat10.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendMul" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					float u_xlat14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat14 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat2.xyz = vec3(u_xlat14) * u_xlat2.xyz;
					    u_xlat14 = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat3.xyz = vec3(u_xlat14) * in_NORMAL0.xyz;
					    u_xlat2.x = dot(u_xlat3.xyz, u_xlat2.xyz);
					    u_xlat2.x = log2(abs(u_xlat2.x));
					    u_xlat2.x = u_xlat2.x * _FresnelStr;
					    u_xlat2.x = exp2(u_xlat2.x);
					    u_xlat2.x = u_xlat2.x + u_xlat2.x;
					    vs_TEXCOORD4 = min(u_xlat2.x, 1.0);
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat4 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_3_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati1;
					vec4 u_xlat2;
					int u_xlati3;
					float u_xlat4;
					float u_xlat5;
					vec3 u_xlat6;
					vec3 u_xlat8;
					vec2 u_xlat10;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat6.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat6.x = inversesqrt(u_xlat6.x);
					    u_xlat6.xyz = u_xlat6.xxx * in_NORMAL0.xyz;
					    u_xlati3 = unity_StereoEyeIndex;
					    u_xlat8.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].yyy;
					    u_xlat8.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].xxx + u_xlat8.xyz;
					    u_xlat8.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].zzz + u_xlat8.xyz;
					    u_xlat8.xyz = u_xlat8.xyz + unity_WorldToObject[3].xyz;
					    u_xlat8.xyz = u_xlat8.xyz + (-in_POSITION0.xyz);
					    u_xlat4 = dot(u_xlat8.xyz, u_xlat8.xyz);
					    u_xlat4 = inversesqrt(u_xlat4);
					    u_xlat8.xyz = u_xlat8.xyz * vec3(u_xlat4);
					    u_xlat6.x = dot(u_xlat6.xyz, u_xlat8.xyz);
					    u_xlat6.x = log2(abs(u_xlat6.x));
					    u_xlat6.x = u_xlat6.x * _FresnelStr;
					    u_xlat6.x = exp2(u_xlat6.x);
					    u_xlat6.x = u_xlat6.x + u_xlat6.x;
					    vs_TEXCOORD4 = min(u_xlat6.x, 1.0);
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat5 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat5;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlat10.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati3].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati3].xy + u_xlat10.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendMul" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					float u_xlat14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat14 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat2.xyz = vec3(u_xlat14) * u_xlat2.xyz;
					    u_xlat14 = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat3.xyz = vec3(u_xlat14) * in_NORMAL0.xyz;
					    u_xlat2.x = dot(u_xlat3.xyz, u_xlat2.xyz);
					    u_xlat2.x = log2(abs(u_xlat2.x));
					    u_xlat2.x = u_xlat2.x * _FresnelStr;
					    u_xlat2.x = exp2(u_xlat2.x);
					    u_xlat2.x = u_xlat2.x + u_xlat2.x;
					    vs_TEXCOORD4 = min(u_xlat2.x, 1.0);
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat4 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_3_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati1;
					vec4 u_xlat2;
					int u_xlati3;
					float u_xlat4;
					float u_xlat5;
					vec3 u_xlat6;
					vec3 u_xlat8;
					vec2 u_xlat10;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat6.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat6.x = inversesqrt(u_xlat6.x);
					    u_xlat6.xyz = u_xlat6.xxx * in_NORMAL0.xyz;
					    u_xlati3 = unity_StereoEyeIndex;
					    u_xlat8.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].yyy;
					    u_xlat8.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].xxx + u_xlat8.xyz;
					    u_xlat8.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].zzz + u_xlat8.xyz;
					    u_xlat8.xyz = u_xlat8.xyz + unity_WorldToObject[3].xyz;
					    u_xlat8.xyz = u_xlat8.xyz + (-in_POSITION0.xyz);
					    u_xlat4 = dot(u_xlat8.xyz, u_xlat8.xyz);
					    u_xlat4 = inversesqrt(u_xlat4);
					    u_xlat8.xyz = u_xlat8.xyz * vec3(u_xlat4);
					    u_xlat6.x = dot(u_xlat6.xyz, u_xlat8.xyz);
					    u_xlat6.x = log2(abs(u_xlat6.x));
					    u_xlat6.x = u_xlat6.x * _FresnelStr;
					    u_xlat6.x = exp2(u_xlat6.x);
					    u_xlat6.x = u_xlat6.x + u_xlat6.x;
					    vs_TEXCOORD4 = min(u_xlat6.x, 1.0);
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat5 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat5;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlat10.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati3].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati3].xy + u_xlat10.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendMul" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					float u_xlat14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat14 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat2.xyz = vec3(u_xlat14) * u_xlat2.xyz;
					    u_xlat14 = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat3.xyz = vec3(u_xlat14) * in_NORMAL0.xyz;
					    u_xlat2.x = dot(u_xlat3.xyz, u_xlat2.xyz);
					    u_xlat2.x = log2(abs(u_xlat2.x));
					    u_xlat2.x = u_xlat2.x * _FresnelStr;
					    u_xlat2.x = exp2(u_xlat2.x);
					    u_xlat2.x = u_xlat2.x + u_xlat2.x;
					    vs_TEXCOORD4 = min(u_xlat2.x, 1.0);
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat4 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_3_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati1;
					vec4 u_xlat2;
					int u_xlati3;
					float u_xlat4;
					float u_xlat5;
					vec3 u_xlat6;
					vec3 u_xlat8;
					vec2 u_xlat10;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat6.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat6.x = inversesqrt(u_xlat6.x);
					    u_xlat6.xyz = u_xlat6.xxx * in_NORMAL0.xyz;
					    u_xlati3 = unity_StereoEyeIndex;
					    u_xlat8.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].yyy;
					    u_xlat8.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].xxx + u_xlat8.xyz;
					    u_xlat8.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].zzz + u_xlat8.xyz;
					    u_xlat8.xyz = u_xlat8.xyz + unity_WorldToObject[3].xyz;
					    u_xlat8.xyz = u_xlat8.xyz + (-in_POSITION0.xyz);
					    u_xlat4 = dot(u_xlat8.xyz, u_xlat8.xyz);
					    u_xlat4 = inversesqrt(u_xlat4);
					    u_xlat8.xyz = u_xlat8.xyz * vec3(u_xlat4);
					    u_xlat6.x = dot(u_xlat6.xyz, u_xlat8.xyz);
					    u_xlat6.x = log2(abs(u_xlat6.x));
					    u_xlat6.x = u_xlat6.x * _FresnelStr;
					    u_xlat6.x = exp2(u_xlat6.x);
					    u_xlat6.x = u_xlat6.x + u_xlat6.x;
					    vs_TEXCOORD4 = min(u_xlat6.x, 1.0);
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat5 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat5;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlat10.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati3].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati3].xy + u_xlat10.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendMul" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					float u_xlat14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat14 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat2.xyz = vec3(u_xlat14) * u_xlat2.xyz;
					    u_xlat14 = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat3.xyz = vec3(u_xlat14) * in_NORMAL0.xyz;
					    u_xlat2.x = dot(u_xlat3.xyz, u_xlat2.xyz);
					    u_xlat2.x = log2(abs(u_xlat2.x));
					    u_xlat2.x = u_xlat2.x * _FresnelStr;
					    u_xlat2.x = exp2(u_xlat2.x);
					    u_xlat2.x = u_xlat2.x + u_xlat2.x;
					    vs_TEXCOORD4 = min(u_xlat2.x, 1.0);
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat4 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_3_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati1;
					vec4 u_xlat2;
					int u_xlati3;
					float u_xlat4;
					float u_xlat5;
					vec3 u_xlat6;
					vec3 u_xlat8;
					vec2 u_xlat10;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat6.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat6.x = inversesqrt(u_xlat6.x);
					    u_xlat6.xyz = u_xlat6.xxx * in_NORMAL0.xyz;
					    u_xlati3 = unity_StereoEyeIndex;
					    u_xlat8.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].yyy;
					    u_xlat8.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].xxx + u_xlat8.xyz;
					    u_xlat8.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].zzz + u_xlat8.xyz;
					    u_xlat8.xyz = u_xlat8.xyz + unity_WorldToObject[3].xyz;
					    u_xlat8.xyz = u_xlat8.xyz + (-in_POSITION0.xyz);
					    u_xlat4 = dot(u_xlat8.xyz, u_xlat8.xyz);
					    u_xlat4 = inversesqrt(u_xlat4);
					    u_xlat8.xyz = u_xlat8.xyz * vec3(u_xlat4);
					    u_xlat6.x = dot(u_xlat6.xyz, u_xlat8.xyz);
					    u_xlat6.x = log2(abs(u_xlat6.x));
					    u_xlat6.x = u_xlat6.x * _FresnelStr;
					    u_xlat6.x = exp2(u_xlat6.x);
					    u_xlat6.x = u_xlat6.x + u_xlat6.x;
					    vs_TEXCOORD4 = min(u_xlat6.x, 1.0);
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat5 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat5;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlat10.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati3].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati3].xy + u_xlat10.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendMul" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					float u_xlat9;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat9 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat9 = inversesqrt(u_xlat9);
					    u_xlat2.xyz = vec3(u_xlat9) * u_xlat2.xyz;
					    u_xlat9 = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat9 = inversesqrt(u_xlat9);
					    u_xlat3.xyz = vec3(u_xlat9) * in_NORMAL0.xyz;
					    u_xlat9 = dot(u_xlat3.xyz, u_xlat2.xyz);
					    u_xlat9 = log2(abs(u_xlat9));
					    u_xlat9 = u_xlat9 * _FresnelStr;
					    u_xlat9 = exp2(u_xlat9);
					    u_xlat9 = u_xlat9 + u_xlat9;
					    vs_TEXCOORD4 = min(u_xlat9, 1.0);
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    u_xlat4 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_3_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					vec3 u_xlat5;
					vec2 u_xlat8;
					int u_xlati10;
					float u_xlat15;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat5.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat5.x = inversesqrt(u_xlat5.x);
					    u_xlat5.xyz = u_xlat5.xxx * in_NORMAL0.xyz;
					    u_xlati10 = unity_StereoEyeIndex;
					    u_xlat3.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati10].yyy;
					    u_xlat3.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati10].xxx + u_xlat3.xyz;
					    u_xlat3.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati10].zzz + u_xlat3.xyz;
					    u_xlat3.xyz = u_xlat3.xyz + unity_WorldToObject[3].xyz;
					    u_xlat3.xyz = u_xlat3.xyz + (-in_POSITION0.xyz);
					    u_xlat15 = dot(u_xlat3.xyz, u_xlat3.xyz);
					    u_xlat15 = inversesqrt(u_xlat15);
					    u_xlat3.xyz = vec3(u_xlat15) * u_xlat3.xyz;
					    u_xlat5.x = dot(u_xlat5.xyz, u_xlat3.xyz);
					    u_xlat5.x = log2(abs(u_xlat5.x));
					    u_xlat5.x = u_xlat5.x * _FresnelStr;
					    u_xlat5.x = exp2(u_xlat5.x);
					    u_xlat5.x = u_xlat5.x + u_xlat5.x;
					    vs_TEXCOORD4 = min(u_xlat5.x, 1.0);
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    u_xlat4 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlat8.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati10].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati10].xy + u_xlat8.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendMul" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					float u_xlat9;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat9 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat9 = inversesqrt(u_xlat9);
					    u_xlat2.xyz = vec3(u_xlat9) * u_xlat2.xyz;
					    u_xlat9 = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat9 = inversesqrt(u_xlat9);
					    u_xlat3.xyz = vec3(u_xlat9) * in_NORMAL0.xyz;
					    u_xlat9 = dot(u_xlat3.xyz, u_xlat2.xyz);
					    u_xlat9 = log2(abs(u_xlat9));
					    u_xlat9 = u_xlat9 * _FresnelStr;
					    u_xlat9 = exp2(u_xlat9);
					    u_xlat9 = u_xlat9 + u_xlat9;
					    vs_TEXCOORD4 = min(u_xlat9, 1.0);
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    u_xlat4 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_3_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					vec3 u_xlat5;
					vec2 u_xlat8;
					int u_xlati10;
					float u_xlat15;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat5.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat5.x = inversesqrt(u_xlat5.x);
					    u_xlat5.xyz = u_xlat5.xxx * in_NORMAL0.xyz;
					    u_xlati10 = unity_StereoEyeIndex;
					    u_xlat3.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati10].yyy;
					    u_xlat3.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati10].xxx + u_xlat3.xyz;
					    u_xlat3.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati10].zzz + u_xlat3.xyz;
					    u_xlat3.xyz = u_xlat3.xyz + unity_WorldToObject[3].xyz;
					    u_xlat3.xyz = u_xlat3.xyz + (-in_POSITION0.xyz);
					    u_xlat15 = dot(u_xlat3.xyz, u_xlat3.xyz);
					    u_xlat15 = inversesqrt(u_xlat15);
					    u_xlat3.xyz = vec3(u_xlat15) * u_xlat3.xyz;
					    u_xlat5.x = dot(u_xlat5.xyz, u_xlat3.xyz);
					    u_xlat5.x = log2(abs(u_xlat5.x));
					    u_xlat5.x = u_xlat5.x * _FresnelStr;
					    u_xlat5.x = exp2(u_xlat5.x);
					    u_xlat5.x = u_xlat5.x + u_xlat5.x;
					    vs_TEXCOORD4 = min(u_xlat5.x, 1.0);
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    u_xlat4 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlat8.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati10].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati10].xy + u_xlat8.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendMul" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					float u_xlat14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat14 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat2.xyz = vec3(u_xlat14) * u_xlat2.xyz;
					    u_xlat14 = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat3.xyz = vec3(u_xlat14) * in_NORMAL0.xyz;
					    u_xlat2.x = dot(u_xlat3.xyz, u_xlat2.xyz);
					    u_xlat2.x = log2(abs(u_xlat2.x));
					    u_xlat2.x = u_xlat2.x * _FresnelStr;
					    u_xlat2.x = exp2(u_xlat2.x);
					    u_xlat2.x = u_xlat2.x + u_xlat2.x;
					    vs_TEXCOORD4 = min(u_xlat2.x, 1.0);
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat4 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_3_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati1;
					vec4 u_xlat2;
					int u_xlati3;
					float u_xlat4;
					float u_xlat5;
					vec3 u_xlat6;
					vec3 u_xlat8;
					vec2 u_xlat10;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat6.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat6.x = inversesqrt(u_xlat6.x);
					    u_xlat6.xyz = u_xlat6.xxx * in_NORMAL0.xyz;
					    u_xlati3 = unity_StereoEyeIndex;
					    u_xlat8.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].yyy;
					    u_xlat8.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].xxx + u_xlat8.xyz;
					    u_xlat8.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].zzz + u_xlat8.xyz;
					    u_xlat8.xyz = u_xlat8.xyz + unity_WorldToObject[3].xyz;
					    u_xlat8.xyz = u_xlat8.xyz + (-in_POSITION0.xyz);
					    u_xlat4 = dot(u_xlat8.xyz, u_xlat8.xyz);
					    u_xlat4 = inversesqrt(u_xlat4);
					    u_xlat8.xyz = u_xlat8.xyz * vec3(u_xlat4);
					    u_xlat6.x = dot(u_xlat6.xyz, u_xlat8.xyz);
					    u_xlat6.x = log2(abs(u_xlat6.x));
					    u_xlat6.x = u_xlat6.x * _FresnelStr;
					    u_xlat6.x = exp2(u_xlat6.x);
					    u_xlat6.x = u_xlat6.x + u_xlat6.x;
					    vs_TEXCOORD4 = min(u_xlat6.x, 1.0);
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat5 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat5;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlat10.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati3].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati3].xy + u_xlat10.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendMul" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					float u_xlat14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat14 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat2.xyz = vec3(u_xlat14) * u_xlat2.xyz;
					    u_xlat14 = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat3.xyz = vec3(u_xlat14) * in_NORMAL0.xyz;
					    u_xlat2.x = dot(u_xlat3.xyz, u_xlat2.xyz);
					    u_xlat2.x = log2(abs(u_xlat2.x));
					    u_xlat2.x = u_xlat2.x * _FresnelStr;
					    u_xlat2.x = exp2(u_xlat2.x);
					    u_xlat2.x = u_xlat2.x + u_xlat2.x;
					    vs_TEXCOORD4 = min(u_xlat2.x, 1.0);
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat4 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_3_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati1;
					vec4 u_xlat2;
					int u_xlati3;
					float u_xlat4;
					float u_xlat5;
					vec3 u_xlat6;
					vec3 u_xlat8;
					vec2 u_xlat10;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat6.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat6.x = inversesqrt(u_xlat6.x);
					    u_xlat6.xyz = u_xlat6.xxx * in_NORMAL0.xyz;
					    u_xlati3 = unity_StereoEyeIndex;
					    u_xlat8.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].yyy;
					    u_xlat8.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].xxx + u_xlat8.xyz;
					    u_xlat8.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].zzz + u_xlat8.xyz;
					    u_xlat8.xyz = u_xlat8.xyz + unity_WorldToObject[3].xyz;
					    u_xlat8.xyz = u_xlat8.xyz + (-in_POSITION0.xyz);
					    u_xlat4 = dot(u_xlat8.xyz, u_xlat8.xyz);
					    u_xlat4 = inversesqrt(u_xlat4);
					    u_xlat8.xyz = u_xlat8.xyz * vec3(u_xlat4);
					    u_xlat6.x = dot(u_xlat6.xyz, u_xlat8.xyz);
					    u_xlat6.x = log2(abs(u_xlat6.x));
					    u_xlat6.x = u_xlat6.x * _FresnelStr;
					    u_xlat6.x = exp2(u_xlat6.x);
					    u_xlat6.x = u_xlat6.x + u_xlat6.x;
					    vs_TEXCOORD4 = min(u_xlat6.x, 1.0);
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat5 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat5;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlat10.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati3].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati3].xy + u_xlat10.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendMul" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					float u_xlat14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat14 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat2.xyz = vec3(u_xlat14) * u_xlat2.xyz;
					    u_xlat14 = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat3.xyz = vec3(u_xlat14) * in_NORMAL0.xyz;
					    u_xlat2.x = dot(u_xlat3.xyz, u_xlat2.xyz);
					    u_xlat2.x = log2(abs(u_xlat2.x));
					    u_xlat2.x = u_xlat2.x * _FresnelStr;
					    u_xlat2.x = exp2(u_xlat2.x);
					    u_xlat2.x = u_xlat2.x + u_xlat2.x;
					    vs_TEXCOORD4 = min(u_xlat2.x, 1.0);
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat4 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_3_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati1;
					vec4 u_xlat2;
					int u_xlati3;
					float u_xlat4;
					float u_xlat5;
					vec3 u_xlat6;
					vec3 u_xlat8;
					vec2 u_xlat10;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat6.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat6.x = inversesqrt(u_xlat6.x);
					    u_xlat6.xyz = u_xlat6.xxx * in_NORMAL0.xyz;
					    u_xlati3 = unity_StereoEyeIndex;
					    u_xlat8.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].yyy;
					    u_xlat8.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].xxx + u_xlat8.xyz;
					    u_xlat8.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].zzz + u_xlat8.xyz;
					    u_xlat8.xyz = u_xlat8.xyz + unity_WorldToObject[3].xyz;
					    u_xlat8.xyz = u_xlat8.xyz + (-in_POSITION0.xyz);
					    u_xlat4 = dot(u_xlat8.xyz, u_xlat8.xyz);
					    u_xlat4 = inversesqrt(u_xlat4);
					    u_xlat8.xyz = u_xlat8.xyz * vec3(u_xlat4);
					    u_xlat6.x = dot(u_xlat6.xyz, u_xlat8.xyz);
					    u_xlat6.x = log2(abs(u_xlat6.x));
					    u_xlat6.x = u_xlat6.x * _FresnelStr;
					    u_xlat6.x = exp2(u_xlat6.x);
					    u_xlat6.x = u_xlat6.x + u_xlat6.x;
					    vs_TEXCOORD4 = min(u_xlat6.x, 1.0);
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat5 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat5;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlat10.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati3].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati3].xy + u_xlat10.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendMul" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					float u_xlat14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat14 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat2.xyz = vec3(u_xlat14) * u_xlat2.xyz;
					    u_xlat14 = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat3.xyz = vec3(u_xlat14) * in_NORMAL0.xyz;
					    u_xlat2.x = dot(u_xlat3.xyz, u_xlat2.xyz);
					    u_xlat2.x = log2(abs(u_xlat2.x));
					    u_xlat2.x = u_xlat2.x * _FresnelStr;
					    u_xlat2.x = exp2(u_xlat2.x);
					    u_xlat2.x = u_xlat2.x + u_xlat2.x;
					    vs_TEXCOORD4 = min(u_xlat2.x, 1.0);
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat4 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_3_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati1;
					vec4 u_xlat2;
					int u_xlati3;
					float u_xlat4;
					float u_xlat5;
					vec3 u_xlat6;
					vec3 u_xlat8;
					vec2 u_xlat10;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat6.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat6.x = inversesqrt(u_xlat6.x);
					    u_xlat6.xyz = u_xlat6.xxx * in_NORMAL0.xyz;
					    u_xlati3 = unity_StereoEyeIndex;
					    u_xlat8.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].yyy;
					    u_xlat8.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].xxx + u_xlat8.xyz;
					    u_xlat8.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].zzz + u_xlat8.xyz;
					    u_xlat8.xyz = u_xlat8.xyz + unity_WorldToObject[3].xyz;
					    u_xlat8.xyz = u_xlat8.xyz + (-in_POSITION0.xyz);
					    u_xlat4 = dot(u_xlat8.xyz, u_xlat8.xyz);
					    u_xlat4 = inversesqrt(u_xlat4);
					    u_xlat8.xyz = u_xlat8.xyz * vec3(u_xlat4);
					    u_xlat6.x = dot(u_xlat6.xyz, u_xlat8.xyz);
					    u_xlat6.x = log2(abs(u_xlat6.x));
					    u_xlat6.x = u_xlat6.x * _FresnelStr;
					    u_xlat6.x = exp2(u_xlat6.x);
					    u_xlat6.x = u_xlat6.x + u_xlat6.x;
					    vs_TEXCOORD4 = min(u_xlat6.x, 1.0);
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat5 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat5;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlat10.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati3].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati3].xy + u_xlat10.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendMul" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					float u_xlat14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat14 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat2.xyz = vec3(u_xlat14) * u_xlat2.xyz;
					    u_xlat14 = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat3.xyz = vec3(u_xlat14) * in_NORMAL0.xyz;
					    u_xlat2.x = dot(u_xlat3.xyz, u_xlat2.xyz);
					    u_xlat2.x = log2(abs(u_xlat2.x));
					    u_xlat2.x = u_xlat2.x * _FresnelStr;
					    u_xlat2.x = exp2(u_xlat2.x);
					    u_xlat2.x = u_xlat2.x + u_xlat2.x;
					    vs_TEXCOORD4 = min(u_xlat2.x, 1.0);
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat4 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_3_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati1;
					vec4 u_xlat2;
					int u_xlati3;
					float u_xlat4;
					float u_xlat5;
					vec3 u_xlat6;
					vec3 u_xlat8;
					vec2 u_xlat10;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat6.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat6.x = inversesqrt(u_xlat6.x);
					    u_xlat6.xyz = u_xlat6.xxx * in_NORMAL0.xyz;
					    u_xlati3 = unity_StereoEyeIndex;
					    u_xlat8.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].yyy;
					    u_xlat8.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].xxx + u_xlat8.xyz;
					    u_xlat8.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].zzz + u_xlat8.xyz;
					    u_xlat8.xyz = u_xlat8.xyz + unity_WorldToObject[3].xyz;
					    u_xlat8.xyz = u_xlat8.xyz + (-in_POSITION0.xyz);
					    u_xlat4 = dot(u_xlat8.xyz, u_xlat8.xyz);
					    u_xlat4 = inversesqrt(u_xlat4);
					    u_xlat8.xyz = u_xlat8.xyz * vec3(u_xlat4);
					    u_xlat6.x = dot(u_xlat6.xyz, u_xlat8.xyz);
					    u_xlat6.x = log2(abs(u_xlat6.x));
					    u_xlat6.x = u_xlat6.x * _FresnelStr;
					    u_xlat6.x = exp2(u_xlat6.x);
					    u_xlat6.x = u_xlat6.x + u_xlat6.x;
					    vs_TEXCOORD4 = min(u_xlat6.x, 1.0);
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat5 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat5;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlat10.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati3].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati3].xy + u_xlat10.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendMul" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					float u_xlat14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat14 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat2.xyz = vec3(u_xlat14) * u_xlat2.xyz;
					    u_xlat14 = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat3.xyz = vec3(u_xlat14) * in_NORMAL0.xyz;
					    u_xlat2.x = dot(u_xlat3.xyz, u_xlat2.xyz);
					    u_xlat2.x = log2(abs(u_xlat2.x));
					    u_xlat2.x = u_xlat2.x * _FresnelStr;
					    u_xlat2.x = exp2(u_xlat2.x);
					    u_xlat2.x = u_xlat2.x + u_xlat2.x;
					    vs_TEXCOORD4 = min(u_xlat2.x, 1.0);
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat4 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_3_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati1;
					vec4 u_xlat2;
					int u_xlati3;
					float u_xlat4;
					float u_xlat5;
					vec3 u_xlat6;
					vec3 u_xlat8;
					vec2 u_xlat10;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat6.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat6.x = inversesqrt(u_xlat6.x);
					    u_xlat6.xyz = u_xlat6.xxx * in_NORMAL0.xyz;
					    u_xlati3 = unity_StereoEyeIndex;
					    u_xlat8.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].yyy;
					    u_xlat8.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].xxx + u_xlat8.xyz;
					    u_xlat8.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].zzz + u_xlat8.xyz;
					    u_xlat8.xyz = u_xlat8.xyz + unity_WorldToObject[3].xyz;
					    u_xlat8.xyz = u_xlat8.xyz + (-in_POSITION0.xyz);
					    u_xlat4 = dot(u_xlat8.xyz, u_xlat8.xyz);
					    u_xlat4 = inversesqrt(u_xlat4);
					    u_xlat8.xyz = u_xlat8.xyz * vec3(u_xlat4);
					    u_xlat6.x = dot(u_xlat6.xyz, u_xlat8.xyz);
					    u_xlat6.x = log2(abs(u_xlat6.x));
					    u_xlat6.x = u_xlat6.x * _FresnelStr;
					    u_xlat6.x = exp2(u_xlat6.x);
					    u_xlat6.x = u_xlat6.x + u_xlat6.x;
					    vs_TEXCOORD4 = min(u_xlat6.x, 1.0);
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat5 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat5;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlat10.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati3].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati3].xy + u_xlat10.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendMul" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    u_xlat2 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat2;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec2 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					float u_xlat3;
					int u_xlati6;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    u_xlat3 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat3;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlati6 = unity_StereoEyeIndex;
					    u_xlat1.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati6].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati6].xy + u_xlat1.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendMul" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    u_xlat2 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat2;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec2 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					float u_xlat3;
					int u_xlati6;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    u_xlat3 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat3;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlati6 = unity_StereoEyeIndex;
					    u_xlat1.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati6].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati6].xy + u_xlat1.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendMul" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat2 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat2;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec2 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					float u_xlat3;
					int u_xlati6;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat3 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat3;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlati6 = unity_StereoEyeIndex;
					    u_xlat1.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati6].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati6].xy + u_xlat1.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendMul" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat2 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat2;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec2 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					float u_xlat3;
					int u_xlati6;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat3 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat3;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlati6 = unity_StereoEyeIndex;
					    u_xlat1.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati6].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati6].xy + u_xlat1.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendMul" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat2 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat2;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec2 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					float u_xlat3;
					int u_xlati6;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat3 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat3;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlati6 = unity_StereoEyeIndex;
					    u_xlat1.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati6].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati6].xy + u_xlat1.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendMul" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat2 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat2;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec2 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					float u_xlat3;
					int u_xlati6;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat3 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat3;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlati6 = unity_StereoEyeIndex;
					    u_xlat1.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati6].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati6].xy + u_xlat1.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendMul" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat2 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat2;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec2 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					float u_xlat3;
					int u_xlati6;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat3 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat3;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlati6 = unity_StereoEyeIndex;
					    u_xlat1.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati6].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati6].xy + u_xlat1.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendMul" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat2 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat2;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec2 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					float u_xlat3;
					int u_xlati6;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat3 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat3;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlati6 = unity_StereoEyeIndex;
					    u_xlat1.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati6].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati6].xy + u_xlat1.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendMul" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    u_xlat2 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat2;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec2 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					float u_xlat3;
					int u_xlati6;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    u_xlat3 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat3;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlati6 = unity_StereoEyeIndex;
					    u_xlat1.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati6].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati6].xy + u_xlat1.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendMul" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    u_xlat2 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat2;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec2 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					float u_xlat3;
					int u_xlati6;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    u_xlat3 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat3;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlati6 = unity_StereoEyeIndex;
					    u_xlat1.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati6].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati6].xy + u_xlat1.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendMul" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat2 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat2;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec2 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					float u_xlat3;
					int u_xlati6;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat3 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat3;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlati6 = unity_StereoEyeIndex;
					    u_xlat1.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati6].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati6].xy + u_xlat1.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendMul" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat2 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat2;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec2 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					float u_xlat3;
					int u_xlati6;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat3 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat3;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlati6 = unity_StereoEyeIndex;
					    u_xlat1.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati6].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati6].xy + u_xlat1.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendMul" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat2 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat2;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec2 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					float u_xlat3;
					int u_xlati6;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat3 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat3;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlati6 = unity_StereoEyeIndex;
					    u_xlat1.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati6].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati6].xy + u_xlat1.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendMul" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat2 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat2;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec2 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					float u_xlat3;
					int u_xlati6;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat3 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat3;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlati6 = unity_StereoEyeIndex;
					    u_xlat1.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati6].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati6].xy + u_xlat1.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendMul" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat2 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat2;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec2 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					float u_xlat3;
					int u_xlati6;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat3 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat3;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlati6 = unity_StereoEyeIndex;
					    u_xlat1.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati6].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati6].xy + u_xlat1.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendMul" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat2 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat2;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec2 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					float u_xlat3;
					int u_xlati6;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat3 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat3;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlati6 = unity_StereoEyeIndex;
					    u_xlat1.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati6].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati6].xy + u_xlat1.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendMul" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					float u_xlat9;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat9 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat9 = inversesqrt(u_xlat9);
					    u_xlat2.xyz = vec3(u_xlat9) * u_xlat2.xyz;
					    u_xlat9 = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat9 = inversesqrt(u_xlat9);
					    u_xlat3.xyz = vec3(u_xlat9) * in_NORMAL0.xyz;
					    u_xlat9 = dot(u_xlat3.xyz, u_xlat2.xyz);
					    u_xlat9 = log2(abs(u_xlat9));
					    u_xlat9 = u_xlat9 * _FresnelStr;
					    u_xlat9 = exp2(u_xlat9);
					    u_xlat9 = u_xlat9 + u_xlat9;
					    vs_TEXCOORD4 = min(u_xlat9, 1.0);
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    u_xlat4 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_3_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					vec3 u_xlat5;
					vec2 u_xlat8;
					int u_xlati10;
					float u_xlat15;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat5.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat5.x = inversesqrt(u_xlat5.x);
					    u_xlat5.xyz = u_xlat5.xxx * in_NORMAL0.xyz;
					    u_xlati10 = unity_StereoEyeIndex;
					    u_xlat3.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati10].yyy;
					    u_xlat3.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati10].xxx + u_xlat3.xyz;
					    u_xlat3.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati10].zzz + u_xlat3.xyz;
					    u_xlat3.xyz = u_xlat3.xyz + unity_WorldToObject[3].xyz;
					    u_xlat3.xyz = u_xlat3.xyz + (-in_POSITION0.xyz);
					    u_xlat15 = dot(u_xlat3.xyz, u_xlat3.xyz);
					    u_xlat15 = inversesqrt(u_xlat15);
					    u_xlat3.xyz = vec3(u_xlat15) * u_xlat3.xyz;
					    u_xlat5.x = dot(u_xlat5.xyz, u_xlat3.xyz);
					    u_xlat5.x = log2(abs(u_xlat5.x));
					    u_xlat5.x = u_xlat5.x * _FresnelStr;
					    u_xlat5.x = exp2(u_xlat5.x);
					    u_xlat5.x = u_xlat5.x + u_xlat5.x;
					    vs_TEXCOORD4 = min(u_xlat5.x, 1.0);
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    u_xlat4 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlat8.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati10].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati10].xy + u_xlat8.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendMul" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					float u_xlat9;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat9 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat9 = inversesqrt(u_xlat9);
					    u_xlat2.xyz = vec3(u_xlat9) * u_xlat2.xyz;
					    u_xlat9 = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat9 = inversesqrt(u_xlat9);
					    u_xlat3.xyz = vec3(u_xlat9) * in_NORMAL0.xyz;
					    u_xlat9 = dot(u_xlat3.xyz, u_xlat2.xyz);
					    u_xlat9 = log2(abs(u_xlat9));
					    u_xlat9 = u_xlat9 * _FresnelStr;
					    u_xlat9 = exp2(u_xlat9);
					    u_xlat9 = u_xlat9 + u_xlat9;
					    vs_TEXCOORD4 = min(u_xlat9, 1.0);
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    u_xlat4 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_3_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					vec3 u_xlat5;
					vec2 u_xlat8;
					int u_xlati10;
					float u_xlat15;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat5.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat5.x = inversesqrt(u_xlat5.x);
					    u_xlat5.xyz = u_xlat5.xxx * in_NORMAL0.xyz;
					    u_xlati10 = unity_StereoEyeIndex;
					    u_xlat3.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati10].yyy;
					    u_xlat3.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati10].xxx + u_xlat3.xyz;
					    u_xlat3.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati10].zzz + u_xlat3.xyz;
					    u_xlat3.xyz = u_xlat3.xyz + unity_WorldToObject[3].xyz;
					    u_xlat3.xyz = u_xlat3.xyz + (-in_POSITION0.xyz);
					    u_xlat15 = dot(u_xlat3.xyz, u_xlat3.xyz);
					    u_xlat15 = inversesqrt(u_xlat15);
					    u_xlat3.xyz = vec3(u_xlat15) * u_xlat3.xyz;
					    u_xlat5.x = dot(u_xlat5.xyz, u_xlat3.xyz);
					    u_xlat5.x = log2(abs(u_xlat5.x));
					    u_xlat5.x = u_xlat5.x * _FresnelStr;
					    u_xlat5.x = exp2(u_xlat5.x);
					    u_xlat5.x = u_xlat5.x + u_xlat5.x;
					    vs_TEXCOORD4 = min(u_xlat5.x, 1.0);
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    u_xlat4 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlat8.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati10].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati10].xy + u_xlat8.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendMul" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					float u_xlat14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat14 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat2.xyz = vec3(u_xlat14) * u_xlat2.xyz;
					    u_xlat14 = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat3.xyz = vec3(u_xlat14) * in_NORMAL0.xyz;
					    u_xlat2.x = dot(u_xlat3.xyz, u_xlat2.xyz);
					    u_xlat2.x = log2(abs(u_xlat2.x));
					    u_xlat2.x = u_xlat2.x * _FresnelStr;
					    u_xlat2.x = exp2(u_xlat2.x);
					    u_xlat2.x = u_xlat2.x + u_xlat2.x;
					    vs_TEXCOORD4 = min(u_xlat2.x, 1.0);
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat4 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_3_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati1;
					vec4 u_xlat2;
					int u_xlati3;
					float u_xlat4;
					float u_xlat5;
					vec3 u_xlat6;
					vec3 u_xlat8;
					vec2 u_xlat10;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat6.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat6.x = inversesqrt(u_xlat6.x);
					    u_xlat6.xyz = u_xlat6.xxx * in_NORMAL0.xyz;
					    u_xlati3 = unity_StereoEyeIndex;
					    u_xlat8.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].yyy;
					    u_xlat8.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].xxx + u_xlat8.xyz;
					    u_xlat8.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].zzz + u_xlat8.xyz;
					    u_xlat8.xyz = u_xlat8.xyz + unity_WorldToObject[3].xyz;
					    u_xlat8.xyz = u_xlat8.xyz + (-in_POSITION0.xyz);
					    u_xlat4 = dot(u_xlat8.xyz, u_xlat8.xyz);
					    u_xlat4 = inversesqrt(u_xlat4);
					    u_xlat8.xyz = u_xlat8.xyz * vec3(u_xlat4);
					    u_xlat6.x = dot(u_xlat6.xyz, u_xlat8.xyz);
					    u_xlat6.x = log2(abs(u_xlat6.x));
					    u_xlat6.x = u_xlat6.x * _FresnelStr;
					    u_xlat6.x = exp2(u_xlat6.x);
					    u_xlat6.x = u_xlat6.x + u_xlat6.x;
					    vs_TEXCOORD4 = min(u_xlat6.x, 1.0);
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat5 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat5;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlat10.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati3].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati3].xy + u_xlat10.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendMul" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					float u_xlat14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat14 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat2.xyz = vec3(u_xlat14) * u_xlat2.xyz;
					    u_xlat14 = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat3.xyz = vec3(u_xlat14) * in_NORMAL0.xyz;
					    u_xlat2.x = dot(u_xlat3.xyz, u_xlat2.xyz);
					    u_xlat2.x = log2(abs(u_xlat2.x));
					    u_xlat2.x = u_xlat2.x * _FresnelStr;
					    u_xlat2.x = exp2(u_xlat2.x);
					    u_xlat2.x = u_xlat2.x + u_xlat2.x;
					    vs_TEXCOORD4 = min(u_xlat2.x, 1.0);
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat4 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_3_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati1;
					vec4 u_xlat2;
					int u_xlati3;
					float u_xlat4;
					float u_xlat5;
					vec3 u_xlat6;
					vec3 u_xlat8;
					vec2 u_xlat10;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat6.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat6.x = inversesqrt(u_xlat6.x);
					    u_xlat6.xyz = u_xlat6.xxx * in_NORMAL0.xyz;
					    u_xlati3 = unity_StereoEyeIndex;
					    u_xlat8.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].yyy;
					    u_xlat8.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].xxx + u_xlat8.xyz;
					    u_xlat8.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].zzz + u_xlat8.xyz;
					    u_xlat8.xyz = u_xlat8.xyz + unity_WorldToObject[3].xyz;
					    u_xlat8.xyz = u_xlat8.xyz + (-in_POSITION0.xyz);
					    u_xlat4 = dot(u_xlat8.xyz, u_xlat8.xyz);
					    u_xlat4 = inversesqrt(u_xlat4);
					    u_xlat8.xyz = u_xlat8.xyz * vec3(u_xlat4);
					    u_xlat6.x = dot(u_xlat6.xyz, u_xlat8.xyz);
					    u_xlat6.x = log2(abs(u_xlat6.x));
					    u_xlat6.x = u_xlat6.x * _FresnelStr;
					    u_xlat6.x = exp2(u_xlat6.x);
					    u_xlat6.x = u_xlat6.x + u_xlat6.x;
					    vs_TEXCOORD4 = min(u_xlat6.x, 1.0);
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat5 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat5;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlat10.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati3].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati3].xy + u_xlat10.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendMul" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					float u_xlat14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat14 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat2.xyz = vec3(u_xlat14) * u_xlat2.xyz;
					    u_xlat14 = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat3.xyz = vec3(u_xlat14) * in_NORMAL0.xyz;
					    u_xlat2.x = dot(u_xlat3.xyz, u_xlat2.xyz);
					    u_xlat2.x = log2(abs(u_xlat2.x));
					    u_xlat2.x = u_xlat2.x * _FresnelStr;
					    u_xlat2.x = exp2(u_xlat2.x);
					    u_xlat2.x = u_xlat2.x + u_xlat2.x;
					    vs_TEXCOORD4 = min(u_xlat2.x, 1.0);
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat4 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_3_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati1;
					vec4 u_xlat2;
					int u_xlati3;
					float u_xlat4;
					float u_xlat5;
					vec3 u_xlat6;
					vec3 u_xlat8;
					vec2 u_xlat10;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat6.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat6.x = inversesqrt(u_xlat6.x);
					    u_xlat6.xyz = u_xlat6.xxx * in_NORMAL0.xyz;
					    u_xlati3 = unity_StereoEyeIndex;
					    u_xlat8.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].yyy;
					    u_xlat8.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].xxx + u_xlat8.xyz;
					    u_xlat8.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].zzz + u_xlat8.xyz;
					    u_xlat8.xyz = u_xlat8.xyz + unity_WorldToObject[3].xyz;
					    u_xlat8.xyz = u_xlat8.xyz + (-in_POSITION0.xyz);
					    u_xlat4 = dot(u_xlat8.xyz, u_xlat8.xyz);
					    u_xlat4 = inversesqrt(u_xlat4);
					    u_xlat8.xyz = u_xlat8.xyz * vec3(u_xlat4);
					    u_xlat6.x = dot(u_xlat6.xyz, u_xlat8.xyz);
					    u_xlat6.x = log2(abs(u_xlat6.x));
					    u_xlat6.x = u_xlat6.x * _FresnelStr;
					    u_xlat6.x = exp2(u_xlat6.x);
					    u_xlat6.x = u_xlat6.x + u_xlat6.x;
					    vs_TEXCOORD4 = min(u_xlat6.x, 1.0);
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat5 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat5;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlat10.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati3].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati3].xy + u_xlat10.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendMul" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					float u_xlat14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat14 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat2.xyz = vec3(u_xlat14) * u_xlat2.xyz;
					    u_xlat14 = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat3.xyz = vec3(u_xlat14) * in_NORMAL0.xyz;
					    u_xlat2.x = dot(u_xlat3.xyz, u_xlat2.xyz);
					    u_xlat2.x = log2(abs(u_xlat2.x));
					    u_xlat2.x = u_xlat2.x * _FresnelStr;
					    u_xlat2.x = exp2(u_xlat2.x);
					    u_xlat2.x = u_xlat2.x + u_xlat2.x;
					    vs_TEXCOORD4 = min(u_xlat2.x, 1.0);
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat4 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_3_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati1;
					vec4 u_xlat2;
					int u_xlati3;
					float u_xlat4;
					float u_xlat5;
					vec3 u_xlat6;
					vec3 u_xlat8;
					vec2 u_xlat10;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat6.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat6.x = inversesqrt(u_xlat6.x);
					    u_xlat6.xyz = u_xlat6.xxx * in_NORMAL0.xyz;
					    u_xlati3 = unity_StereoEyeIndex;
					    u_xlat8.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].yyy;
					    u_xlat8.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].xxx + u_xlat8.xyz;
					    u_xlat8.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].zzz + u_xlat8.xyz;
					    u_xlat8.xyz = u_xlat8.xyz + unity_WorldToObject[3].xyz;
					    u_xlat8.xyz = u_xlat8.xyz + (-in_POSITION0.xyz);
					    u_xlat4 = dot(u_xlat8.xyz, u_xlat8.xyz);
					    u_xlat4 = inversesqrt(u_xlat4);
					    u_xlat8.xyz = u_xlat8.xyz * vec3(u_xlat4);
					    u_xlat6.x = dot(u_xlat6.xyz, u_xlat8.xyz);
					    u_xlat6.x = log2(abs(u_xlat6.x));
					    u_xlat6.x = u_xlat6.x * _FresnelStr;
					    u_xlat6.x = exp2(u_xlat6.x);
					    u_xlat6.x = u_xlat6.x + u_xlat6.x;
					    vs_TEXCOORD4 = min(u_xlat6.x, 1.0);
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat5 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat5;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlat10.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati3].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati3].xy + u_xlat10.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendMul" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					float u_xlat14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat14 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat2.xyz = vec3(u_xlat14) * u_xlat2.xyz;
					    u_xlat14 = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat3.xyz = vec3(u_xlat14) * in_NORMAL0.xyz;
					    u_xlat2.x = dot(u_xlat3.xyz, u_xlat2.xyz);
					    u_xlat2.x = log2(abs(u_xlat2.x));
					    u_xlat2.x = u_xlat2.x * _FresnelStr;
					    u_xlat2.x = exp2(u_xlat2.x);
					    u_xlat2.x = u_xlat2.x + u_xlat2.x;
					    vs_TEXCOORD4 = min(u_xlat2.x, 1.0);
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat4 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_3_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati1;
					vec4 u_xlat2;
					int u_xlati3;
					float u_xlat4;
					float u_xlat5;
					vec3 u_xlat6;
					vec3 u_xlat8;
					vec2 u_xlat10;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat6.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat6.x = inversesqrt(u_xlat6.x);
					    u_xlat6.xyz = u_xlat6.xxx * in_NORMAL0.xyz;
					    u_xlati3 = unity_StereoEyeIndex;
					    u_xlat8.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].yyy;
					    u_xlat8.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].xxx + u_xlat8.xyz;
					    u_xlat8.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].zzz + u_xlat8.xyz;
					    u_xlat8.xyz = u_xlat8.xyz + unity_WorldToObject[3].xyz;
					    u_xlat8.xyz = u_xlat8.xyz + (-in_POSITION0.xyz);
					    u_xlat4 = dot(u_xlat8.xyz, u_xlat8.xyz);
					    u_xlat4 = inversesqrt(u_xlat4);
					    u_xlat8.xyz = u_xlat8.xyz * vec3(u_xlat4);
					    u_xlat6.x = dot(u_xlat6.xyz, u_xlat8.xyz);
					    u_xlat6.x = log2(abs(u_xlat6.x));
					    u_xlat6.x = u_xlat6.x * _FresnelStr;
					    u_xlat6.x = exp2(u_xlat6.x);
					    u_xlat6.x = u_xlat6.x + u_xlat6.x;
					    vs_TEXCOORD4 = min(u_xlat6.x, 1.0);
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat5 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat5;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlat10.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati3].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati3].xy + u_xlat10.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendMul" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					float u_xlat14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat14 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat2.xyz = vec3(u_xlat14) * u_xlat2.xyz;
					    u_xlat14 = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat3.xyz = vec3(u_xlat14) * in_NORMAL0.xyz;
					    u_xlat2.x = dot(u_xlat3.xyz, u_xlat2.xyz);
					    u_xlat2.x = log2(abs(u_xlat2.x));
					    u_xlat2.x = u_xlat2.x * _FresnelStr;
					    u_xlat2.x = exp2(u_xlat2.x);
					    u_xlat2.x = u_xlat2.x + u_xlat2.x;
					    vs_TEXCOORD4 = min(u_xlat2.x, 1.0);
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat4 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_3_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati1;
					vec4 u_xlat2;
					int u_xlati3;
					float u_xlat4;
					float u_xlat5;
					vec3 u_xlat6;
					vec3 u_xlat8;
					vec2 u_xlat10;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat6.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat6.x = inversesqrt(u_xlat6.x);
					    u_xlat6.xyz = u_xlat6.xxx * in_NORMAL0.xyz;
					    u_xlati3 = unity_StereoEyeIndex;
					    u_xlat8.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].yyy;
					    u_xlat8.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].xxx + u_xlat8.xyz;
					    u_xlat8.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].zzz + u_xlat8.xyz;
					    u_xlat8.xyz = u_xlat8.xyz + unity_WorldToObject[3].xyz;
					    u_xlat8.xyz = u_xlat8.xyz + (-in_POSITION0.xyz);
					    u_xlat4 = dot(u_xlat8.xyz, u_xlat8.xyz);
					    u_xlat4 = inversesqrt(u_xlat4);
					    u_xlat8.xyz = u_xlat8.xyz * vec3(u_xlat4);
					    u_xlat6.x = dot(u_xlat6.xyz, u_xlat8.xyz);
					    u_xlat6.x = log2(abs(u_xlat6.x));
					    u_xlat6.x = u_xlat6.x * _FresnelStr;
					    u_xlat6.x = exp2(u_xlat6.x);
					    u_xlat6.x = u_xlat6.x + u_xlat6.x;
					    vs_TEXCOORD4 = min(u_xlat6.x, 1.0);
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat5 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat5;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlat10.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati3].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati3].xy + u_xlat10.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendMul" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					float u_xlat9;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat9 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat9 = inversesqrt(u_xlat9);
					    u_xlat2.xyz = vec3(u_xlat9) * u_xlat2.xyz;
					    u_xlat9 = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat9 = inversesqrt(u_xlat9);
					    u_xlat3.xyz = vec3(u_xlat9) * in_NORMAL0.xyz;
					    u_xlat9 = dot(u_xlat3.xyz, u_xlat2.xyz);
					    u_xlat9 = log2(abs(u_xlat9));
					    u_xlat9 = u_xlat9 * _FresnelStr;
					    u_xlat9 = exp2(u_xlat9);
					    u_xlat9 = u_xlat9 + u_xlat9;
					    vs_TEXCOORD4 = min(u_xlat9, 1.0);
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    u_xlat4 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_3_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					vec3 u_xlat5;
					vec2 u_xlat8;
					int u_xlati10;
					float u_xlat15;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat5.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat5.x = inversesqrt(u_xlat5.x);
					    u_xlat5.xyz = u_xlat5.xxx * in_NORMAL0.xyz;
					    u_xlati10 = unity_StereoEyeIndex;
					    u_xlat3.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati10].yyy;
					    u_xlat3.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati10].xxx + u_xlat3.xyz;
					    u_xlat3.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati10].zzz + u_xlat3.xyz;
					    u_xlat3.xyz = u_xlat3.xyz + unity_WorldToObject[3].xyz;
					    u_xlat3.xyz = u_xlat3.xyz + (-in_POSITION0.xyz);
					    u_xlat15 = dot(u_xlat3.xyz, u_xlat3.xyz);
					    u_xlat15 = inversesqrt(u_xlat15);
					    u_xlat3.xyz = vec3(u_xlat15) * u_xlat3.xyz;
					    u_xlat5.x = dot(u_xlat5.xyz, u_xlat3.xyz);
					    u_xlat5.x = log2(abs(u_xlat5.x));
					    u_xlat5.x = u_xlat5.x * _FresnelStr;
					    u_xlat5.x = exp2(u_xlat5.x);
					    u_xlat5.x = u_xlat5.x + u_xlat5.x;
					    vs_TEXCOORD4 = min(u_xlat5.x, 1.0);
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    u_xlat4 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlat8.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati10].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati10].xy + u_xlat8.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendMul" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					float u_xlat9;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat9 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat9 = inversesqrt(u_xlat9);
					    u_xlat2.xyz = vec3(u_xlat9) * u_xlat2.xyz;
					    u_xlat9 = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat9 = inversesqrt(u_xlat9);
					    u_xlat3.xyz = vec3(u_xlat9) * in_NORMAL0.xyz;
					    u_xlat9 = dot(u_xlat3.xyz, u_xlat2.xyz);
					    u_xlat9 = log2(abs(u_xlat9));
					    u_xlat9 = u_xlat9 * _FresnelStr;
					    u_xlat9 = exp2(u_xlat9);
					    u_xlat9 = u_xlat9 + u_xlat9;
					    vs_TEXCOORD4 = min(u_xlat9, 1.0);
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    u_xlat4 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_3_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					vec3 u_xlat5;
					vec2 u_xlat8;
					int u_xlati10;
					float u_xlat15;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat5.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat5.x = inversesqrt(u_xlat5.x);
					    u_xlat5.xyz = u_xlat5.xxx * in_NORMAL0.xyz;
					    u_xlati10 = unity_StereoEyeIndex;
					    u_xlat3.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati10].yyy;
					    u_xlat3.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati10].xxx + u_xlat3.xyz;
					    u_xlat3.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati10].zzz + u_xlat3.xyz;
					    u_xlat3.xyz = u_xlat3.xyz + unity_WorldToObject[3].xyz;
					    u_xlat3.xyz = u_xlat3.xyz + (-in_POSITION0.xyz);
					    u_xlat15 = dot(u_xlat3.xyz, u_xlat3.xyz);
					    u_xlat15 = inversesqrt(u_xlat15);
					    u_xlat3.xyz = vec3(u_xlat15) * u_xlat3.xyz;
					    u_xlat5.x = dot(u_xlat5.xyz, u_xlat3.xyz);
					    u_xlat5.x = log2(abs(u_xlat5.x));
					    u_xlat5.x = u_xlat5.x * _FresnelStr;
					    u_xlat5.x = exp2(u_xlat5.x);
					    u_xlat5.x = u_xlat5.x + u_xlat5.x;
					    vs_TEXCOORD4 = min(u_xlat5.x, 1.0);
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    u_xlat4 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlat8.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati10].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati10].xy + u_xlat8.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendMul" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					float u_xlat14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat14 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat2.xyz = vec3(u_xlat14) * u_xlat2.xyz;
					    u_xlat14 = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat3.xyz = vec3(u_xlat14) * in_NORMAL0.xyz;
					    u_xlat2.x = dot(u_xlat3.xyz, u_xlat2.xyz);
					    u_xlat2.x = log2(abs(u_xlat2.x));
					    u_xlat2.x = u_xlat2.x * _FresnelStr;
					    u_xlat2.x = exp2(u_xlat2.x);
					    u_xlat2.x = u_xlat2.x + u_xlat2.x;
					    vs_TEXCOORD4 = min(u_xlat2.x, 1.0);
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat4 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_3_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati1;
					vec4 u_xlat2;
					int u_xlati3;
					float u_xlat4;
					float u_xlat5;
					vec3 u_xlat6;
					vec3 u_xlat8;
					vec2 u_xlat10;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat6.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat6.x = inversesqrt(u_xlat6.x);
					    u_xlat6.xyz = u_xlat6.xxx * in_NORMAL0.xyz;
					    u_xlati3 = unity_StereoEyeIndex;
					    u_xlat8.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].yyy;
					    u_xlat8.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].xxx + u_xlat8.xyz;
					    u_xlat8.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].zzz + u_xlat8.xyz;
					    u_xlat8.xyz = u_xlat8.xyz + unity_WorldToObject[3].xyz;
					    u_xlat8.xyz = u_xlat8.xyz + (-in_POSITION0.xyz);
					    u_xlat4 = dot(u_xlat8.xyz, u_xlat8.xyz);
					    u_xlat4 = inversesqrt(u_xlat4);
					    u_xlat8.xyz = u_xlat8.xyz * vec3(u_xlat4);
					    u_xlat6.x = dot(u_xlat6.xyz, u_xlat8.xyz);
					    u_xlat6.x = log2(abs(u_xlat6.x));
					    u_xlat6.x = u_xlat6.x * _FresnelStr;
					    u_xlat6.x = exp2(u_xlat6.x);
					    u_xlat6.x = u_xlat6.x + u_xlat6.x;
					    vs_TEXCOORD4 = min(u_xlat6.x, 1.0);
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat5 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat5;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlat10.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati3].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati3].xy + u_xlat10.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendMul" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					float u_xlat14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat14 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat2.xyz = vec3(u_xlat14) * u_xlat2.xyz;
					    u_xlat14 = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat3.xyz = vec3(u_xlat14) * in_NORMAL0.xyz;
					    u_xlat2.x = dot(u_xlat3.xyz, u_xlat2.xyz);
					    u_xlat2.x = log2(abs(u_xlat2.x));
					    u_xlat2.x = u_xlat2.x * _FresnelStr;
					    u_xlat2.x = exp2(u_xlat2.x);
					    u_xlat2.x = u_xlat2.x + u_xlat2.x;
					    vs_TEXCOORD4 = min(u_xlat2.x, 1.0);
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat4 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_3_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati1;
					vec4 u_xlat2;
					int u_xlati3;
					float u_xlat4;
					float u_xlat5;
					vec3 u_xlat6;
					vec3 u_xlat8;
					vec2 u_xlat10;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat6.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat6.x = inversesqrt(u_xlat6.x);
					    u_xlat6.xyz = u_xlat6.xxx * in_NORMAL0.xyz;
					    u_xlati3 = unity_StereoEyeIndex;
					    u_xlat8.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].yyy;
					    u_xlat8.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].xxx + u_xlat8.xyz;
					    u_xlat8.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].zzz + u_xlat8.xyz;
					    u_xlat8.xyz = u_xlat8.xyz + unity_WorldToObject[3].xyz;
					    u_xlat8.xyz = u_xlat8.xyz + (-in_POSITION0.xyz);
					    u_xlat4 = dot(u_xlat8.xyz, u_xlat8.xyz);
					    u_xlat4 = inversesqrt(u_xlat4);
					    u_xlat8.xyz = u_xlat8.xyz * vec3(u_xlat4);
					    u_xlat6.x = dot(u_xlat6.xyz, u_xlat8.xyz);
					    u_xlat6.x = log2(abs(u_xlat6.x));
					    u_xlat6.x = u_xlat6.x * _FresnelStr;
					    u_xlat6.x = exp2(u_xlat6.x);
					    u_xlat6.x = u_xlat6.x + u_xlat6.x;
					    vs_TEXCOORD4 = min(u_xlat6.x, 1.0);
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat5 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat5;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlat10.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati3].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati3].xy + u_xlat10.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendMul" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					float u_xlat14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat14 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat2.xyz = vec3(u_xlat14) * u_xlat2.xyz;
					    u_xlat14 = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat3.xyz = vec3(u_xlat14) * in_NORMAL0.xyz;
					    u_xlat2.x = dot(u_xlat3.xyz, u_xlat2.xyz);
					    u_xlat2.x = log2(abs(u_xlat2.x));
					    u_xlat2.x = u_xlat2.x * _FresnelStr;
					    u_xlat2.x = exp2(u_xlat2.x);
					    u_xlat2.x = u_xlat2.x + u_xlat2.x;
					    vs_TEXCOORD4 = min(u_xlat2.x, 1.0);
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat4 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_3_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati1;
					vec4 u_xlat2;
					int u_xlati3;
					float u_xlat4;
					float u_xlat5;
					vec3 u_xlat6;
					vec3 u_xlat8;
					vec2 u_xlat10;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat6.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat6.x = inversesqrt(u_xlat6.x);
					    u_xlat6.xyz = u_xlat6.xxx * in_NORMAL0.xyz;
					    u_xlati3 = unity_StereoEyeIndex;
					    u_xlat8.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].yyy;
					    u_xlat8.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].xxx + u_xlat8.xyz;
					    u_xlat8.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].zzz + u_xlat8.xyz;
					    u_xlat8.xyz = u_xlat8.xyz + unity_WorldToObject[3].xyz;
					    u_xlat8.xyz = u_xlat8.xyz + (-in_POSITION0.xyz);
					    u_xlat4 = dot(u_xlat8.xyz, u_xlat8.xyz);
					    u_xlat4 = inversesqrt(u_xlat4);
					    u_xlat8.xyz = u_xlat8.xyz * vec3(u_xlat4);
					    u_xlat6.x = dot(u_xlat6.xyz, u_xlat8.xyz);
					    u_xlat6.x = log2(abs(u_xlat6.x));
					    u_xlat6.x = u_xlat6.x * _FresnelStr;
					    u_xlat6.x = exp2(u_xlat6.x);
					    u_xlat6.x = u_xlat6.x + u_xlat6.x;
					    vs_TEXCOORD4 = min(u_xlat6.x, 1.0);
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat5 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat5;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlat10.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati3].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati3].xy + u_xlat10.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendMul" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					float u_xlat14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat14 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat2.xyz = vec3(u_xlat14) * u_xlat2.xyz;
					    u_xlat14 = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat3.xyz = vec3(u_xlat14) * in_NORMAL0.xyz;
					    u_xlat2.x = dot(u_xlat3.xyz, u_xlat2.xyz);
					    u_xlat2.x = log2(abs(u_xlat2.x));
					    u_xlat2.x = u_xlat2.x * _FresnelStr;
					    u_xlat2.x = exp2(u_xlat2.x);
					    u_xlat2.x = u_xlat2.x + u_xlat2.x;
					    vs_TEXCOORD4 = min(u_xlat2.x, 1.0);
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat4 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_3_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati1;
					vec4 u_xlat2;
					int u_xlati3;
					float u_xlat4;
					float u_xlat5;
					vec3 u_xlat6;
					vec3 u_xlat8;
					vec2 u_xlat10;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat6.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat6.x = inversesqrt(u_xlat6.x);
					    u_xlat6.xyz = u_xlat6.xxx * in_NORMAL0.xyz;
					    u_xlati3 = unity_StereoEyeIndex;
					    u_xlat8.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].yyy;
					    u_xlat8.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].xxx + u_xlat8.xyz;
					    u_xlat8.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].zzz + u_xlat8.xyz;
					    u_xlat8.xyz = u_xlat8.xyz + unity_WorldToObject[3].xyz;
					    u_xlat8.xyz = u_xlat8.xyz + (-in_POSITION0.xyz);
					    u_xlat4 = dot(u_xlat8.xyz, u_xlat8.xyz);
					    u_xlat4 = inversesqrt(u_xlat4);
					    u_xlat8.xyz = u_xlat8.xyz * vec3(u_xlat4);
					    u_xlat6.x = dot(u_xlat6.xyz, u_xlat8.xyz);
					    u_xlat6.x = log2(abs(u_xlat6.x));
					    u_xlat6.x = u_xlat6.x * _FresnelStr;
					    u_xlat6.x = exp2(u_xlat6.x);
					    u_xlat6.x = u_xlat6.x + u_xlat6.x;
					    vs_TEXCOORD4 = min(u_xlat6.x, 1.0);
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat5 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat5;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlat10.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati3].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati3].xy + u_xlat10.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendMul" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					float u_xlat14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat14 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat2.xyz = vec3(u_xlat14) * u_xlat2.xyz;
					    u_xlat14 = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat3.xyz = vec3(u_xlat14) * in_NORMAL0.xyz;
					    u_xlat2.x = dot(u_xlat3.xyz, u_xlat2.xyz);
					    u_xlat2.x = log2(abs(u_xlat2.x));
					    u_xlat2.x = u_xlat2.x * _FresnelStr;
					    u_xlat2.x = exp2(u_xlat2.x);
					    u_xlat2.x = u_xlat2.x + u_xlat2.x;
					    vs_TEXCOORD4 = min(u_xlat2.x, 1.0);
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat4 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_3_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati1;
					vec4 u_xlat2;
					int u_xlati3;
					float u_xlat4;
					float u_xlat5;
					vec3 u_xlat6;
					vec3 u_xlat8;
					vec2 u_xlat10;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat6.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat6.x = inversesqrt(u_xlat6.x);
					    u_xlat6.xyz = u_xlat6.xxx * in_NORMAL0.xyz;
					    u_xlati3 = unity_StereoEyeIndex;
					    u_xlat8.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].yyy;
					    u_xlat8.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].xxx + u_xlat8.xyz;
					    u_xlat8.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].zzz + u_xlat8.xyz;
					    u_xlat8.xyz = u_xlat8.xyz + unity_WorldToObject[3].xyz;
					    u_xlat8.xyz = u_xlat8.xyz + (-in_POSITION0.xyz);
					    u_xlat4 = dot(u_xlat8.xyz, u_xlat8.xyz);
					    u_xlat4 = inversesqrt(u_xlat4);
					    u_xlat8.xyz = u_xlat8.xyz * vec3(u_xlat4);
					    u_xlat6.x = dot(u_xlat6.xyz, u_xlat8.xyz);
					    u_xlat6.x = log2(abs(u_xlat6.x));
					    u_xlat6.x = u_xlat6.x * _FresnelStr;
					    u_xlat6.x = exp2(u_xlat6.x);
					    u_xlat6.x = u_xlat6.x + u_xlat6.x;
					    vs_TEXCOORD4 = min(u_xlat6.x, 1.0);
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat5 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat5;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlat10.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati3].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati3].xy + u_xlat10.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendMul" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					float u_xlat14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat14 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat2.xyz = vec3(u_xlat14) * u_xlat2.xyz;
					    u_xlat14 = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat3.xyz = vec3(u_xlat14) * in_NORMAL0.xyz;
					    u_xlat2.x = dot(u_xlat3.xyz, u_xlat2.xyz);
					    u_xlat2.x = log2(abs(u_xlat2.x));
					    u_xlat2.x = u_xlat2.x * _FresnelStr;
					    u_xlat2.x = exp2(u_xlat2.x);
					    u_xlat2.x = u_xlat2.x + u_xlat2.x;
					    vs_TEXCOORD4 = min(u_xlat2.x, 1.0);
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat4 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_3_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati1;
					vec4 u_xlat2;
					int u_xlati3;
					float u_xlat4;
					float u_xlat5;
					vec3 u_xlat6;
					vec3 u_xlat8;
					vec2 u_xlat10;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat6.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat6.x = inversesqrt(u_xlat6.x);
					    u_xlat6.xyz = u_xlat6.xxx * in_NORMAL0.xyz;
					    u_xlati3 = unity_StereoEyeIndex;
					    u_xlat8.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].yyy;
					    u_xlat8.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].xxx + u_xlat8.xyz;
					    u_xlat8.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].zzz + u_xlat8.xyz;
					    u_xlat8.xyz = u_xlat8.xyz + unity_WorldToObject[3].xyz;
					    u_xlat8.xyz = u_xlat8.xyz + (-in_POSITION0.xyz);
					    u_xlat4 = dot(u_xlat8.xyz, u_xlat8.xyz);
					    u_xlat4 = inversesqrt(u_xlat4);
					    u_xlat8.xyz = u_xlat8.xyz * vec3(u_xlat4);
					    u_xlat6.x = dot(u_xlat6.xyz, u_xlat8.xyz);
					    u_xlat6.x = log2(abs(u_xlat6.x));
					    u_xlat6.x = u_xlat6.x * _FresnelStr;
					    u_xlat6.x = exp2(u_xlat6.x);
					    u_xlat6.x = u_xlat6.x + u_xlat6.x;
					    vs_TEXCOORD4 = min(u_xlat6.x, 1.0);
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat5 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat5;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlat10.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati3].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati3].xy + u_xlat10.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendMul" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    u_xlat2 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat2;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec2 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					float u_xlat3;
					int u_xlati6;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    u_xlat3 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat3;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlati6 = unity_StereoEyeIndex;
					    u_xlat1.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati6].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati6].xy + u_xlat1.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendMul" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    u_xlat2 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat2;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec2 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					float u_xlat3;
					int u_xlati6;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    u_xlat3 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat3;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlati6 = unity_StereoEyeIndex;
					    u_xlat1.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati6].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati6].xy + u_xlat1.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendMul" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat2 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat2;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec2 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					float u_xlat3;
					int u_xlati6;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat3 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat3;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlati6 = unity_StereoEyeIndex;
					    u_xlat1.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati6].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati6].xy + u_xlat1.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendMul" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat2 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat2;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec2 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					float u_xlat3;
					int u_xlati6;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat3 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat3;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlati6 = unity_StereoEyeIndex;
					    u_xlat1.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati6].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati6].xy + u_xlat1.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendMul" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat2 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat2;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec2 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					float u_xlat3;
					int u_xlati6;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat3 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat3;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlati6 = unity_StereoEyeIndex;
					    u_xlat1.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati6].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati6].xy + u_xlat1.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendMul" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat2 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat2;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec2 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					float u_xlat3;
					int u_xlati6;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat3 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat3;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlati6 = unity_StereoEyeIndex;
					    u_xlat1.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati6].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati6].xy + u_xlat1.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendMul" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat2 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat2;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec2 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					float u_xlat3;
					int u_xlati6;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat3 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat3;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlati6 = unity_StereoEyeIndex;
					    u_xlat1.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati6].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati6].xy + u_xlat1.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendMul" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat2 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat2;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec2 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					float u_xlat3;
					int u_xlati6;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat3 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat3;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlati6 = unity_StereoEyeIndex;
					    u_xlat1.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati6].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati6].xy + u_xlat1.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendMul" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    u_xlat2 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat2;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec2 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					float u_xlat3;
					int u_xlati6;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    u_xlat3 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat3;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlati6 = unity_StereoEyeIndex;
					    u_xlat1.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati6].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati6].xy + u_xlat1.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendMul" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    u_xlat2 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat2;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec2 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					float u_xlat3;
					int u_xlati6;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    u_xlat3 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat3;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlati6 = unity_StereoEyeIndex;
					    u_xlat1.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati6].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati6].xy + u_xlat1.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendMul" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat2 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat2;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec2 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					float u_xlat3;
					int u_xlati6;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat3 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat3;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlati6 = unity_StereoEyeIndex;
					    u_xlat1.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati6].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati6].xy + u_xlat1.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendMul" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat2 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat2;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec2 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					float u_xlat3;
					int u_xlati6;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat3 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat3;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlati6 = unity_StereoEyeIndex;
					    u_xlat1.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati6].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati6].xy + u_xlat1.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendMul" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat2 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat2;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec2 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					float u_xlat3;
					int u_xlati6;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat3 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat3;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlati6 = unity_StereoEyeIndex;
					    u_xlat1.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati6].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati6].xy + u_xlat1.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendMul" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat2 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat2;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec2 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					float u_xlat3;
					int u_xlati6;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat3 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat3;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlati6 = unity_StereoEyeIndex;
					    u_xlat1.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati6].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati6].xy + u_xlat1.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendMul" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat2 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat2;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec2 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					float u_xlat3;
					int u_xlati6;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat3 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat3;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlati6 = unity_StereoEyeIndex;
					    u_xlat1.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati6].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati6].xy + u_xlat1.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendMul" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat2 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat2;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec2 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					float u_xlat3;
					int u_xlati6;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat3 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat3;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlati6 = unity_StereoEyeIndex;
					    u_xlat1.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati6].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati6].xy + u_xlat1.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendMul" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					float u_xlat9;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat9 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat9 = inversesqrt(u_xlat9);
					    u_xlat2.xyz = vec3(u_xlat9) * u_xlat2.xyz;
					    u_xlat9 = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat9 = inversesqrt(u_xlat9);
					    u_xlat3.xyz = vec3(u_xlat9) * in_NORMAL0.xyz;
					    u_xlat9 = dot(u_xlat3.xyz, u_xlat2.xyz);
					    u_xlat9 = log2(abs(u_xlat9));
					    u_xlat9 = u_xlat9 * _FresnelStr;
					    u_xlat9 = exp2(u_xlat9);
					    u_xlat9 = u_xlat9 + u_xlat9;
					    vs_TEXCOORD4 = min(u_xlat9, 1.0);
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    u_xlat4 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_3_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					vec3 u_xlat5;
					vec2 u_xlat8;
					int u_xlati10;
					float u_xlat15;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat5.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat5.x = inversesqrt(u_xlat5.x);
					    u_xlat5.xyz = u_xlat5.xxx * in_NORMAL0.xyz;
					    u_xlati10 = unity_StereoEyeIndex;
					    u_xlat3.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati10].yyy;
					    u_xlat3.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati10].xxx + u_xlat3.xyz;
					    u_xlat3.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati10].zzz + u_xlat3.xyz;
					    u_xlat3.xyz = u_xlat3.xyz + unity_WorldToObject[3].xyz;
					    u_xlat3.xyz = u_xlat3.xyz + (-in_POSITION0.xyz);
					    u_xlat15 = dot(u_xlat3.xyz, u_xlat3.xyz);
					    u_xlat15 = inversesqrt(u_xlat15);
					    u_xlat3.xyz = vec3(u_xlat15) * u_xlat3.xyz;
					    u_xlat5.x = dot(u_xlat5.xyz, u_xlat3.xyz);
					    u_xlat5.x = log2(abs(u_xlat5.x));
					    u_xlat5.x = u_xlat5.x * _FresnelStr;
					    u_xlat5.x = exp2(u_xlat5.x);
					    u_xlat5.x = u_xlat5.x + u_xlat5.x;
					    vs_TEXCOORD4 = min(u_xlat5.x, 1.0);
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    u_xlat4 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlat8.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati10].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati10].xy + u_xlat8.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendMul" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					float u_xlat9;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat9 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat9 = inversesqrt(u_xlat9);
					    u_xlat2.xyz = vec3(u_xlat9) * u_xlat2.xyz;
					    u_xlat9 = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat9 = inversesqrt(u_xlat9);
					    u_xlat3.xyz = vec3(u_xlat9) * in_NORMAL0.xyz;
					    u_xlat9 = dot(u_xlat3.xyz, u_xlat2.xyz);
					    u_xlat9 = log2(abs(u_xlat9));
					    u_xlat9 = u_xlat9 * _FresnelStr;
					    u_xlat9 = exp2(u_xlat9);
					    u_xlat9 = u_xlat9 + u_xlat9;
					    vs_TEXCOORD4 = min(u_xlat9, 1.0);
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    u_xlat4 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_3_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					vec3 u_xlat5;
					vec2 u_xlat8;
					int u_xlati10;
					float u_xlat15;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat5.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat5.x = inversesqrt(u_xlat5.x);
					    u_xlat5.xyz = u_xlat5.xxx * in_NORMAL0.xyz;
					    u_xlati10 = unity_StereoEyeIndex;
					    u_xlat3.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati10].yyy;
					    u_xlat3.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati10].xxx + u_xlat3.xyz;
					    u_xlat3.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati10].zzz + u_xlat3.xyz;
					    u_xlat3.xyz = u_xlat3.xyz + unity_WorldToObject[3].xyz;
					    u_xlat3.xyz = u_xlat3.xyz + (-in_POSITION0.xyz);
					    u_xlat15 = dot(u_xlat3.xyz, u_xlat3.xyz);
					    u_xlat15 = inversesqrt(u_xlat15);
					    u_xlat3.xyz = vec3(u_xlat15) * u_xlat3.xyz;
					    u_xlat5.x = dot(u_xlat5.xyz, u_xlat3.xyz);
					    u_xlat5.x = log2(abs(u_xlat5.x));
					    u_xlat5.x = u_xlat5.x * _FresnelStr;
					    u_xlat5.x = exp2(u_xlat5.x);
					    u_xlat5.x = u_xlat5.x + u_xlat5.x;
					    vs_TEXCOORD4 = min(u_xlat5.x, 1.0);
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    u_xlat4 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlat8.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati10].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati10].xy + u_xlat8.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendMul" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					float u_xlat14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat14 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat2.xyz = vec3(u_xlat14) * u_xlat2.xyz;
					    u_xlat14 = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat3.xyz = vec3(u_xlat14) * in_NORMAL0.xyz;
					    u_xlat2.x = dot(u_xlat3.xyz, u_xlat2.xyz);
					    u_xlat2.x = log2(abs(u_xlat2.x));
					    u_xlat2.x = u_xlat2.x * _FresnelStr;
					    u_xlat2.x = exp2(u_xlat2.x);
					    u_xlat2.x = u_xlat2.x + u_xlat2.x;
					    vs_TEXCOORD4 = min(u_xlat2.x, 1.0);
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat4 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_3_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati1;
					vec4 u_xlat2;
					int u_xlati3;
					float u_xlat4;
					float u_xlat5;
					vec3 u_xlat6;
					vec3 u_xlat8;
					vec2 u_xlat10;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat6.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat6.x = inversesqrt(u_xlat6.x);
					    u_xlat6.xyz = u_xlat6.xxx * in_NORMAL0.xyz;
					    u_xlati3 = unity_StereoEyeIndex;
					    u_xlat8.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].yyy;
					    u_xlat8.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].xxx + u_xlat8.xyz;
					    u_xlat8.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].zzz + u_xlat8.xyz;
					    u_xlat8.xyz = u_xlat8.xyz + unity_WorldToObject[3].xyz;
					    u_xlat8.xyz = u_xlat8.xyz + (-in_POSITION0.xyz);
					    u_xlat4 = dot(u_xlat8.xyz, u_xlat8.xyz);
					    u_xlat4 = inversesqrt(u_xlat4);
					    u_xlat8.xyz = u_xlat8.xyz * vec3(u_xlat4);
					    u_xlat6.x = dot(u_xlat6.xyz, u_xlat8.xyz);
					    u_xlat6.x = log2(abs(u_xlat6.x));
					    u_xlat6.x = u_xlat6.x * _FresnelStr;
					    u_xlat6.x = exp2(u_xlat6.x);
					    u_xlat6.x = u_xlat6.x + u_xlat6.x;
					    vs_TEXCOORD4 = min(u_xlat6.x, 1.0);
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat5 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat5;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlat10.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati3].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati3].xy + u_xlat10.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendMul" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					float u_xlat14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat14 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat2.xyz = vec3(u_xlat14) * u_xlat2.xyz;
					    u_xlat14 = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat3.xyz = vec3(u_xlat14) * in_NORMAL0.xyz;
					    u_xlat2.x = dot(u_xlat3.xyz, u_xlat2.xyz);
					    u_xlat2.x = log2(abs(u_xlat2.x));
					    u_xlat2.x = u_xlat2.x * _FresnelStr;
					    u_xlat2.x = exp2(u_xlat2.x);
					    u_xlat2.x = u_xlat2.x + u_xlat2.x;
					    vs_TEXCOORD4 = min(u_xlat2.x, 1.0);
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat4 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_3_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati1;
					vec4 u_xlat2;
					int u_xlati3;
					float u_xlat4;
					float u_xlat5;
					vec3 u_xlat6;
					vec3 u_xlat8;
					vec2 u_xlat10;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat6.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat6.x = inversesqrt(u_xlat6.x);
					    u_xlat6.xyz = u_xlat6.xxx * in_NORMAL0.xyz;
					    u_xlati3 = unity_StereoEyeIndex;
					    u_xlat8.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].yyy;
					    u_xlat8.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].xxx + u_xlat8.xyz;
					    u_xlat8.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].zzz + u_xlat8.xyz;
					    u_xlat8.xyz = u_xlat8.xyz + unity_WorldToObject[3].xyz;
					    u_xlat8.xyz = u_xlat8.xyz + (-in_POSITION0.xyz);
					    u_xlat4 = dot(u_xlat8.xyz, u_xlat8.xyz);
					    u_xlat4 = inversesqrt(u_xlat4);
					    u_xlat8.xyz = u_xlat8.xyz * vec3(u_xlat4);
					    u_xlat6.x = dot(u_xlat6.xyz, u_xlat8.xyz);
					    u_xlat6.x = log2(abs(u_xlat6.x));
					    u_xlat6.x = u_xlat6.x * _FresnelStr;
					    u_xlat6.x = exp2(u_xlat6.x);
					    u_xlat6.x = u_xlat6.x + u_xlat6.x;
					    vs_TEXCOORD4 = min(u_xlat6.x, 1.0);
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat5 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat5;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlat10.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati3].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati3].xy + u_xlat10.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendMul" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					float u_xlat14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat14 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat2.xyz = vec3(u_xlat14) * u_xlat2.xyz;
					    u_xlat14 = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat3.xyz = vec3(u_xlat14) * in_NORMAL0.xyz;
					    u_xlat2.x = dot(u_xlat3.xyz, u_xlat2.xyz);
					    u_xlat2.x = log2(abs(u_xlat2.x));
					    u_xlat2.x = u_xlat2.x * _FresnelStr;
					    u_xlat2.x = exp2(u_xlat2.x);
					    u_xlat2.x = u_xlat2.x + u_xlat2.x;
					    vs_TEXCOORD4 = min(u_xlat2.x, 1.0);
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat4 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_3_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati1;
					vec4 u_xlat2;
					int u_xlati3;
					float u_xlat4;
					float u_xlat5;
					vec3 u_xlat6;
					vec3 u_xlat8;
					vec2 u_xlat10;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat6.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat6.x = inversesqrt(u_xlat6.x);
					    u_xlat6.xyz = u_xlat6.xxx * in_NORMAL0.xyz;
					    u_xlati3 = unity_StereoEyeIndex;
					    u_xlat8.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].yyy;
					    u_xlat8.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].xxx + u_xlat8.xyz;
					    u_xlat8.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].zzz + u_xlat8.xyz;
					    u_xlat8.xyz = u_xlat8.xyz + unity_WorldToObject[3].xyz;
					    u_xlat8.xyz = u_xlat8.xyz + (-in_POSITION0.xyz);
					    u_xlat4 = dot(u_xlat8.xyz, u_xlat8.xyz);
					    u_xlat4 = inversesqrt(u_xlat4);
					    u_xlat8.xyz = u_xlat8.xyz * vec3(u_xlat4);
					    u_xlat6.x = dot(u_xlat6.xyz, u_xlat8.xyz);
					    u_xlat6.x = log2(abs(u_xlat6.x));
					    u_xlat6.x = u_xlat6.x * _FresnelStr;
					    u_xlat6.x = exp2(u_xlat6.x);
					    u_xlat6.x = u_xlat6.x + u_xlat6.x;
					    vs_TEXCOORD4 = min(u_xlat6.x, 1.0);
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat5 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat5;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlat10.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati3].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati3].xy + u_xlat10.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendMul" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					float u_xlat14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat14 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat2.xyz = vec3(u_xlat14) * u_xlat2.xyz;
					    u_xlat14 = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat3.xyz = vec3(u_xlat14) * in_NORMAL0.xyz;
					    u_xlat2.x = dot(u_xlat3.xyz, u_xlat2.xyz);
					    u_xlat2.x = log2(abs(u_xlat2.x));
					    u_xlat2.x = u_xlat2.x * _FresnelStr;
					    u_xlat2.x = exp2(u_xlat2.x);
					    u_xlat2.x = u_xlat2.x + u_xlat2.x;
					    vs_TEXCOORD4 = min(u_xlat2.x, 1.0);
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat4 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_3_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati1;
					vec4 u_xlat2;
					int u_xlati3;
					float u_xlat4;
					float u_xlat5;
					vec3 u_xlat6;
					vec3 u_xlat8;
					vec2 u_xlat10;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat6.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat6.x = inversesqrt(u_xlat6.x);
					    u_xlat6.xyz = u_xlat6.xxx * in_NORMAL0.xyz;
					    u_xlati3 = unity_StereoEyeIndex;
					    u_xlat8.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].yyy;
					    u_xlat8.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].xxx + u_xlat8.xyz;
					    u_xlat8.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].zzz + u_xlat8.xyz;
					    u_xlat8.xyz = u_xlat8.xyz + unity_WorldToObject[3].xyz;
					    u_xlat8.xyz = u_xlat8.xyz + (-in_POSITION0.xyz);
					    u_xlat4 = dot(u_xlat8.xyz, u_xlat8.xyz);
					    u_xlat4 = inversesqrt(u_xlat4);
					    u_xlat8.xyz = u_xlat8.xyz * vec3(u_xlat4);
					    u_xlat6.x = dot(u_xlat6.xyz, u_xlat8.xyz);
					    u_xlat6.x = log2(abs(u_xlat6.x));
					    u_xlat6.x = u_xlat6.x * _FresnelStr;
					    u_xlat6.x = exp2(u_xlat6.x);
					    u_xlat6.x = u_xlat6.x + u_xlat6.x;
					    vs_TEXCOORD4 = min(u_xlat6.x, 1.0);
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat5 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat5;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlat10.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati3].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati3].xy + u_xlat10.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendMul" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					float u_xlat14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat14 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat2.xyz = vec3(u_xlat14) * u_xlat2.xyz;
					    u_xlat14 = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat3.xyz = vec3(u_xlat14) * in_NORMAL0.xyz;
					    u_xlat2.x = dot(u_xlat3.xyz, u_xlat2.xyz);
					    u_xlat2.x = log2(abs(u_xlat2.x));
					    u_xlat2.x = u_xlat2.x * _FresnelStr;
					    u_xlat2.x = exp2(u_xlat2.x);
					    u_xlat2.x = u_xlat2.x + u_xlat2.x;
					    vs_TEXCOORD4 = min(u_xlat2.x, 1.0);
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat4 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_3_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati1;
					vec4 u_xlat2;
					int u_xlati3;
					float u_xlat4;
					float u_xlat5;
					vec3 u_xlat6;
					vec3 u_xlat8;
					vec2 u_xlat10;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat6.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat6.x = inversesqrt(u_xlat6.x);
					    u_xlat6.xyz = u_xlat6.xxx * in_NORMAL0.xyz;
					    u_xlati3 = unity_StereoEyeIndex;
					    u_xlat8.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].yyy;
					    u_xlat8.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].xxx + u_xlat8.xyz;
					    u_xlat8.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].zzz + u_xlat8.xyz;
					    u_xlat8.xyz = u_xlat8.xyz + unity_WorldToObject[3].xyz;
					    u_xlat8.xyz = u_xlat8.xyz + (-in_POSITION0.xyz);
					    u_xlat4 = dot(u_xlat8.xyz, u_xlat8.xyz);
					    u_xlat4 = inversesqrt(u_xlat4);
					    u_xlat8.xyz = u_xlat8.xyz * vec3(u_xlat4);
					    u_xlat6.x = dot(u_xlat6.xyz, u_xlat8.xyz);
					    u_xlat6.x = log2(abs(u_xlat6.x));
					    u_xlat6.x = u_xlat6.x * _FresnelStr;
					    u_xlat6.x = exp2(u_xlat6.x);
					    u_xlat6.x = u_xlat6.x + u_xlat6.x;
					    vs_TEXCOORD4 = min(u_xlat6.x, 1.0);
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat5 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat5;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlat10.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati3].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati3].xy + u_xlat10.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendMul" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					float u_xlat14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat14 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat2.xyz = vec3(u_xlat14) * u_xlat2.xyz;
					    u_xlat14 = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat3.xyz = vec3(u_xlat14) * in_NORMAL0.xyz;
					    u_xlat2.x = dot(u_xlat3.xyz, u_xlat2.xyz);
					    u_xlat2.x = log2(abs(u_xlat2.x));
					    u_xlat2.x = u_xlat2.x * _FresnelStr;
					    u_xlat2.x = exp2(u_xlat2.x);
					    u_xlat2.x = u_xlat2.x + u_xlat2.x;
					    vs_TEXCOORD4 = min(u_xlat2.x, 1.0);
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat4 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_3_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati1;
					vec4 u_xlat2;
					int u_xlati3;
					float u_xlat4;
					float u_xlat5;
					vec3 u_xlat6;
					vec3 u_xlat8;
					vec2 u_xlat10;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat6.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat6.x = inversesqrt(u_xlat6.x);
					    u_xlat6.xyz = u_xlat6.xxx * in_NORMAL0.xyz;
					    u_xlati3 = unity_StereoEyeIndex;
					    u_xlat8.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].yyy;
					    u_xlat8.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].xxx + u_xlat8.xyz;
					    u_xlat8.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].zzz + u_xlat8.xyz;
					    u_xlat8.xyz = u_xlat8.xyz + unity_WorldToObject[3].xyz;
					    u_xlat8.xyz = u_xlat8.xyz + (-in_POSITION0.xyz);
					    u_xlat4 = dot(u_xlat8.xyz, u_xlat8.xyz);
					    u_xlat4 = inversesqrt(u_xlat4);
					    u_xlat8.xyz = u_xlat8.xyz * vec3(u_xlat4);
					    u_xlat6.x = dot(u_xlat6.xyz, u_xlat8.xyz);
					    u_xlat6.x = log2(abs(u_xlat6.x));
					    u_xlat6.x = u_xlat6.x * _FresnelStr;
					    u_xlat6.x = exp2(u_xlat6.x);
					    u_xlat6.x = u_xlat6.x + u_xlat6.x;
					    vs_TEXCOORD4 = min(u_xlat6.x, 1.0);
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat5 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat5;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlat10.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati3].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati3].xy + u_xlat10.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendMul" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					float u_xlat9;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat9 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat9 = inversesqrt(u_xlat9);
					    u_xlat2.xyz = vec3(u_xlat9) * u_xlat2.xyz;
					    u_xlat9 = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat9 = inversesqrt(u_xlat9);
					    u_xlat3.xyz = vec3(u_xlat9) * in_NORMAL0.xyz;
					    u_xlat9 = dot(u_xlat3.xyz, u_xlat2.xyz);
					    u_xlat9 = log2(abs(u_xlat9));
					    u_xlat9 = u_xlat9 * _FresnelStr;
					    u_xlat9 = exp2(u_xlat9);
					    u_xlat9 = u_xlat9 + u_xlat9;
					    vs_TEXCOORD4 = min(u_xlat9, 1.0);
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    u_xlat4 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_3_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					vec3 u_xlat5;
					vec2 u_xlat8;
					int u_xlati10;
					float u_xlat15;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat5.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat5.x = inversesqrt(u_xlat5.x);
					    u_xlat5.xyz = u_xlat5.xxx * in_NORMAL0.xyz;
					    u_xlati10 = unity_StereoEyeIndex;
					    u_xlat3.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati10].yyy;
					    u_xlat3.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati10].xxx + u_xlat3.xyz;
					    u_xlat3.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati10].zzz + u_xlat3.xyz;
					    u_xlat3.xyz = u_xlat3.xyz + unity_WorldToObject[3].xyz;
					    u_xlat3.xyz = u_xlat3.xyz + (-in_POSITION0.xyz);
					    u_xlat15 = dot(u_xlat3.xyz, u_xlat3.xyz);
					    u_xlat15 = inversesqrt(u_xlat15);
					    u_xlat3.xyz = vec3(u_xlat15) * u_xlat3.xyz;
					    u_xlat5.x = dot(u_xlat5.xyz, u_xlat3.xyz);
					    u_xlat5.x = log2(abs(u_xlat5.x));
					    u_xlat5.x = u_xlat5.x * _FresnelStr;
					    u_xlat5.x = exp2(u_xlat5.x);
					    u_xlat5.x = u_xlat5.x + u_xlat5.x;
					    vs_TEXCOORD4 = min(u_xlat5.x, 1.0);
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    u_xlat4 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlat8.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati10].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati10].xy + u_xlat8.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendMul" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					float u_xlat9;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat9 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat9 = inversesqrt(u_xlat9);
					    u_xlat2.xyz = vec3(u_xlat9) * u_xlat2.xyz;
					    u_xlat9 = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat9 = inversesqrt(u_xlat9);
					    u_xlat3.xyz = vec3(u_xlat9) * in_NORMAL0.xyz;
					    u_xlat9 = dot(u_xlat3.xyz, u_xlat2.xyz);
					    u_xlat9 = log2(abs(u_xlat9));
					    u_xlat9 = u_xlat9 * _FresnelStr;
					    u_xlat9 = exp2(u_xlat9);
					    u_xlat9 = u_xlat9 + u_xlat9;
					    vs_TEXCOORD4 = min(u_xlat9, 1.0);
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    u_xlat4 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_3_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					vec3 u_xlat5;
					vec2 u_xlat8;
					int u_xlati10;
					float u_xlat15;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat5.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat5.x = inversesqrt(u_xlat5.x);
					    u_xlat5.xyz = u_xlat5.xxx * in_NORMAL0.xyz;
					    u_xlati10 = unity_StereoEyeIndex;
					    u_xlat3.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati10].yyy;
					    u_xlat3.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati10].xxx + u_xlat3.xyz;
					    u_xlat3.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati10].zzz + u_xlat3.xyz;
					    u_xlat3.xyz = u_xlat3.xyz + unity_WorldToObject[3].xyz;
					    u_xlat3.xyz = u_xlat3.xyz + (-in_POSITION0.xyz);
					    u_xlat15 = dot(u_xlat3.xyz, u_xlat3.xyz);
					    u_xlat15 = inversesqrt(u_xlat15);
					    u_xlat3.xyz = vec3(u_xlat15) * u_xlat3.xyz;
					    u_xlat5.x = dot(u_xlat5.xyz, u_xlat3.xyz);
					    u_xlat5.x = log2(abs(u_xlat5.x));
					    u_xlat5.x = u_xlat5.x * _FresnelStr;
					    u_xlat5.x = exp2(u_xlat5.x);
					    u_xlat5.x = u_xlat5.x + u_xlat5.x;
					    vs_TEXCOORD4 = min(u_xlat5.x, 1.0);
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    u_xlat4 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlat8.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati10].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati10].xy + u_xlat8.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendMul" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					float u_xlat14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat14 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat2.xyz = vec3(u_xlat14) * u_xlat2.xyz;
					    u_xlat14 = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat3.xyz = vec3(u_xlat14) * in_NORMAL0.xyz;
					    u_xlat2.x = dot(u_xlat3.xyz, u_xlat2.xyz);
					    u_xlat2.x = log2(abs(u_xlat2.x));
					    u_xlat2.x = u_xlat2.x * _FresnelStr;
					    u_xlat2.x = exp2(u_xlat2.x);
					    u_xlat2.x = u_xlat2.x + u_xlat2.x;
					    vs_TEXCOORD4 = min(u_xlat2.x, 1.0);
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat4 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_3_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati1;
					vec4 u_xlat2;
					int u_xlati3;
					float u_xlat4;
					float u_xlat5;
					vec3 u_xlat6;
					vec3 u_xlat8;
					vec2 u_xlat10;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat6.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat6.x = inversesqrt(u_xlat6.x);
					    u_xlat6.xyz = u_xlat6.xxx * in_NORMAL0.xyz;
					    u_xlati3 = unity_StereoEyeIndex;
					    u_xlat8.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].yyy;
					    u_xlat8.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].xxx + u_xlat8.xyz;
					    u_xlat8.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].zzz + u_xlat8.xyz;
					    u_xlat8.xyz = u_xlat8.xyz + unity_WorldToObject[3].xyz;
					    u_xlat8.xyz = u_xlat8.xyz + (-in_POSITION0.xyz);
					    u_xlat4 = dot(u_xlat8.xyz, u_xlat8.xyz);
					    u_xlat4 = inversesqrt(u_xlat4);
					    u_xlat8.xyz = u_xlat8.xyz * vec3(u_xlat4);
					    u_xlat6.x = dot(u_xlat6.xyz, u_xlat8.xyz);
					    u_xlat6.x = log2(abs(u_xlat6.x));
					    u_xlat6.x = u_xlat6.x * _FresnelStr;
					    u_xlat6.x = exp2(u_xlat6.x);
					    u_xlat6.x = u_xlat6.x + u_xlat6.x;
					    vs_TEXCOORD4 = min(u_xlat6.x, 1.0);
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat5 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat5;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlat10.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati3].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati3].xy + u_xlat10.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendMul" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					float u_xlat14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat14 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat2.xyz = vec3(u_xlat14) * u_xlat2.xyz;
					    u_xlat14 = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat3.xyz = vec3(u_xlat14) * in_NORMAL0.xyz;
					    u_xlat2.x = dot(u_xlat3.xyz, u_xlat2.xyz);
					    u_xlat2.x = log2(abs(u_xlat2.x));
					    u_xlat2.x = u_xlat2.x * _FresnelStr;
					    u_xlat2.x = exp2(u_xlat2.x);
					    u_xlat2.x = u_xlat2.x + u_xlat2.x;
					    vs_TEXCOORD4 = min(u_xlat2.x, 1.0);
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat4 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_3_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati1;
					vec4 u_xlat2;
					int u_xlati3;
					float u_xlat4;
					float u_xlat5;
					vec3 u_xlat6;
					vec3 u_xlat8;
					vec2 u_xlat10;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat6.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat6.x = inversesqrt(u_xlat6.x);
					    u_xlat6.xyz = u_xlat6.xxx * in_NORMAL0.xyz;
					    u_xlati3 = unity_StereoEyeIndex;
					    u_xlat8.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].yyy;
					    u_xlat8.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].xxx + u_xlat8.xyz;
					    u_xlat8.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].zzz + u_xlat8.xyz;
					    u_xlat8.xyz = u_xlat8.xyz + unity_WorldToObject[3].xyz;
					    u_xlat8.xyz = u_xlat8.xyz + (-in_POSITION0.xyz);
					    u_xlat4 = dot(u_xlat8.xyz, u_xlat8.xyz);
					    u_xlat4 = inversesqrt(u_xlat4);
					    u_xlat8.xyz = u_xlat8.xyz * vec3(u_xlat4);
					    u_xlat6.x = dot(u_xlat6.xyz, u_xlat8.xyz);
					    u_xlat6.x = log2(abs(u_xlat6.x));
					    u_xlat6.x = u_xlat6.x * _FresnelStr;
					    u_xlat6.x = exp2(u_xlat6.x);
					    u_xlat6.x = u_xlat6.x + u_xlat6.x;
					    vs_TEXCOORD4 = min(u_xlat6.x, 1.0);
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat5 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat5;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlat10.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati3].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati3].xy + u_xlat10.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendMul" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					float u_xlat14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat14 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat2.xyz = vec3(u_xlat14) * u_xlat2.xyz;
					    u_xlat14 = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat3.xyz = vec3(u_xlat14) * in_NORMAL0.xyz;
					    u_xlat2.x = dot(u_xlat3.xyz, u_xlat2.xyz);
					    u_xlat2.x = log2(abs(u_xlat2.x));
					    u_xlat2.x = u_xlat2.x * _FresnelStr;
					    u_xlat2.x = exp2(u_xlat2.x);
					    u_xlat2.x = u_xlat2.x + u_xlat2.x;
					    vs_TEXCOORD4 = min(u_xlat2.x, 1.0);
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat4 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_3_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati1;
					vec4 u_xlat2;
					int u_xlati3;
					float u_xlat4;
					float u_xlat5;
					vec3 u_xlat6;
					vec3 u_xlat8;
					vec2 u_xlat10;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat6.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat6.x = inversesqrt(u_xlat6.x);
					    u_xlat6.xyz = u_xlat6.xxx * in_NORMAL0.xyz;
					    u_xlati3 = unity_StereoEyeIndex;
					    u_xlat8.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].yyy;
					    u_xlat8.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].xxx + u_xlat8.xyz;
					    u_xlat8.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].zzz + u_xlat8.xyz;
					    u_xlat8.xyz = u_xlat8.xyz + unity_WorldToObject[3].xyz;
					    u_xlat8.xyz = u_xlat8.xyz + (-in_POSITION0.xyz);
					    u_xlat4 = dot(u_xlat8.xyz, u_xlat8.xyz);
					    u_xlat4 = inversesqrt(u_xlat4);
					    u_xlat8.xyz = u_xlat8.xyz * vec3(u_xlat4);
					    u_xlat6.x = dot(u_xlat6.xyz, u_xlat8.xyz);
					    u_xlat6.x = log2(abs(u_xlat6.x));
					    u_xlat6.x = u_xlat6.x * _FresnelStr;
					    u_xlat6.x = exp2(u_xlat6.x);
					    u_xlat6.x = u_xlat6.x + u_xlat6.x;
					    vs_TEXCOORD4 = min(u_xlat6.x, 1.0);
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat5 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat5;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlat10.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati3].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati3].xy + u_xlat10.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendMul" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					float u_xlat14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat14 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat2.xyz = vec3(u_xlat14) * u_xlat2.xyz;
					    u_xlat14 = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat3.xyz = vec3(u_xlat14) * in_NORMAL0.xyz;
					    u_xlat2.x = dot(u_xlat3.xyz, u_xlat2.xyz);
					    u_xlat2.x = log2(abs(u_xlat2.x));
					    u_xlat2.x = u_xlat2.x * _FresnelStr;
					    u_xlat2.x = exp2(u_xlat2.x);
					    u_xlat2.x = u_xlat2.x + u_xlat2.x;
					    vs_TEXCOORD4 = min(u_xlat2.x, 1.0);
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat4 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_3_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati1;
					vec4 u_xlat2;
					int u_xlati3;
					float u_xlat4;
					float u_xlat5;
					vec3 u_xlat6;
					vec3 u_xlat8;
					vec2 u_xlat10;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat6.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat6.x = inversesqrt(u_xlat6.x);
					    u_xlat6.xyz = u_xlat6.xxx * in_NORMAL0.xyz;
					    u_xlati3 = unity_StereoEyeIndex;
					    u_xlat8.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].yyy;
					    u_xlat8.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].xxx + u_xlat8.xyz;
					    u_xlat8.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].zzz + u_xlat8.xyz;
					    u_xlat8.xyz = u_xlat8.xyz + unity_WorldToObject[3].xyz;
					    u_xlat8.xyz = u_xlat8.xyz + (-in_POSITION0.xyz);
					    u_xlat4 = dot(u_xlat8.xyz, u_xlat8.xyz);
					    u_xlat4 = inversesqrt(u_xlat4);
					    u_xlat8.xyz = u_xlat8.xyz * vec3(u_xlat4);
					    u_xlat6.x = dot(u_xlat6.xyz, u_xlat8.xyz);
					    u_xlat6.x = log2(abs(u_xlat6.x));
					    u_xlat6.x = u_xlat6.x * _FresnelStr;
					    u_xlat6.x = exp2(u_xlat6.x);
					    u_xlat6.x = u_xlat6.x + u_xlat6.x;
					    vs_TEXCOORD4 = min(u_xlat6.x, 1.0);
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat5 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat5;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlat10.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati3].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati3].xy + u_xlat10.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendMul" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					float u_xlat14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat14 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat2.xyz = vec3(u_xlat14) * u_xlat2.xyz;
					    u_xlat14 = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat3.xyz = vec3(u_xlat14) * in_NORMAL0.xyz;
					    u_xlat2.x = dot(u_xlat3.xyz, u_xlat2.xyz);
					    u_xlat2.x = log2(abs(u_xlat2.x));
					    u_xlat2.x = u_xlat2.x * _FresnelStr;
					    u_xlat2.x = exp2(u_xlat2.x);
					    u_xlat2.x = u_xlat2.x + u_xlat2.x;
					    vs_TEXCOORD4 = min(u_xlat2.x, 1.0);
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat4 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_3_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati1;
					vec4 u_xlat2;
					int u_xlati3;
					float u_xlat4;
					float u_xlat5;
					vec3 u_xlat6;
					vec3 u_xlat8;
					vec2 u_xlat10;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat6.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat6.x = inversesqrt(u_xlat6.x);
					    u_xlat6.xyz = u_xlat6.xxx * in_NORMAL0.xyz;
					    u_xlati3 = unity_StereoEyeIndex;
					    u_xlat8.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].yyy;
					    u_xlat8.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].xxx + u_xlat8.xyz;
					    u_xlat8.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].zzz + u_xlat8.xyz;
					    u_xlat8.xyz = u_xlat8.xyz + unity_WorldToObject[3].xyz;
					    u_xlat8.xyz = u_xlat8.xyz + (-in_POSITION0.xyz);
					    u_xlat4 = dot(u_xlat8.xyz, u_xlat8.xyz);
					    u_xlat4 = inversesqrt(u_xlat4);
					    u_xlat8.xyz = u_xlat8.xyz * vec3(u_xlat4);
					    u_xlat6.x = dot(u_xlat6.xyz, u_xlat8.xyz);
					    u_xlat6.x = log2(abs(u_xlat6.x));
					    u_xlat6.x = u_xlat6.x * _FresnelStr;
					    u_xlat6.x = exp2(u_xlat6.x);
					    u_xlat6.x = u_xlat6.x + u_xlat6.x;
					    vs_TEXCOORD4 = min(u_xlat6.x, 1.0);
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat5 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat5;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlat10.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati3].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati3].xy + u_xlat10.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendMul" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					float u_xlat14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat14 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat2.xyz = vec3(u_xlat14) * u_xlat2.xyz;
					    u_xlat14 = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat3.xyz = vec3(u_xlat14) * in_NORMAL0.xyz;
					    u_xlat2.x = dot(u_xlat3.xyz, u_xlat2.xyz);
					    u_xlat2.x = log2(abs(u_xlat2.x));
					    u_xlat2.x = u_xlat2.x * _FresnelStr;
					    u_xlat2.x = exp2(u_xlat2.x);
					    u_xlat2.x = u_xlat2.x + u_xlat2.x;
					    vs_TEXCOORD4 = min(u_xlat2.x, 1.0);
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat4 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_3_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati1;
					vec4 u_xlat2;
					int u_xlati3;
					float u_xlat4;
					float u_xlat5;
					vec3 u_xlat6;
					vec3 u_xlat8;
					vec2 u_xlat10;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat6.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat6.x = inversesqrt(u_xlat6.x);
					    u_xlat6.xyz = u_xlat6.xxx * in_NORMAL0.xyz;
					    u_xlati3 = unity_StereoEyeIndex;
					    u_xlat8.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].yyy;
					    u_xlat8.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].xxx + u_xlat8.xyz;
					    u_xlat8.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].zzz + u_xlat8.xyz;
					    u_xlat8.xyz = u_xlat8.xyz + unity_WorldToObject[3].xyz;
					    u_xlat8.xyz = u_xlat8.xyz + (-in_POSITION0.xyz);
					    u_xlat4 = dot(u_xlat8.xyz, u_xlat8.xyz);
					    u_xlat4 = inversesqrt(u_xlat4);
					    u_xlat8.xyz = u_xlat8.xyz * vec3(u_xlat4);
					    u_xlat6.x = dot(u_xlat6.xyz, u_xlat8.xyz);
					    u_xlat6.x = log2(abs(u_xlat6.x));
					    u_xlat6.x = u_xlat6.x * _FresnelStr;
					    u_xlat6.x = exp2(u_xlat6.x);
					    u_xlat6.x = u_xlat6.x + u_xlat6.x;
					    vs_TEXCOORD4 = min(u_xlat6.x, 1.0);
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat5 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat5;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlat10.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati3].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati3].xy + u_xlat10.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendMul" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    u_xlat2 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat2;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec2 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					float u_xlat3;
					int u_xlati6;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    u_xlat3 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat3;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlati6 = unity_StereoEyeIndex;
					    u_xlat1.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati6].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati6].xy + u_xlat1.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendMul" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    u_xlat2 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat2;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec2 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					float u_xlat3;
					int u_xlati6;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    u_xlat3 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat3;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlati6 = unity_StereoEyeIndex;
					    u_xlat1.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati6].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati6].xy + u_xlat1.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendMul" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat2 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat2;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec2 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					float u_xlat3;
					int u_xlati6;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat3 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat3;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlati6 = unity_StereoEyeIndex;
					    u_xlat1.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati6].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati6].xy + u_xlat1.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendMul" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat2 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat2;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec2 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					float u_xlat3;
					int u_xlati6;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat3 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat3;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlati6 = unity_StereoEyeIndex;
					    u_xlat1.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati6].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati6].xy + u_xlat1.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendMul" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat2 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat2;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec2 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					float u_xlat3;
					int u_xlati6;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat3 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat3;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlati6 = unity_StereoEyeIndex;
					    u_xlat1.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati6].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati6].xy + u_xlat1.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendMul" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat2 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat2;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec2 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					float u_xlat3;
					int u_xlati6;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat3 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat3;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlati6 = unity_StereoEyeIndex;
					    u_xlat1.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati6].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati6].xy + u_xlat1.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendMul" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat2 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat2;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec2 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					float u_xlat3;
					int u_xlati6;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat3 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat3;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlati6 = unity_StereoEyeIndex;
					    u_xlat1.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati6].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati6].xy + u_xlat1.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendMul" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat2 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat2;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec2 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					float u_xlat3;
					int u_xlati6;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat3 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat3;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlati6 = unity_StereoEyeIndex;
					    u_xlat1.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati6].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati6].xy + u_xlat1.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendMul" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    u_xlat2 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat2;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec2 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					float u_xlat3;
					int u_xlati6;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    u_xlat3 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat3;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlati6 = unity_StereoEyeIndex;
					    u_xlat1.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati6].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati6].xy + u_xlat1.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendMul" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    u_xlat2 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat2;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec2 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					float u_xlat3;
					int u_xlati6;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    u_xlat3 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat3;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlati6 = unity_StereoEyeIndex;
					    u_xlat1.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati6].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati6].xy + u_xlat1.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendMul" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat2 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat2;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec2 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					float u_xlat3;
					int u_xlati6;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat3 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat3;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlati6 = unity_StereoEyeIndex;
					    u_xlat1.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati6].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati6].xy + u_xlat1.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendMul" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat2 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat2;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec2 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					float u_xlat3;
					int u_xlati6;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat3 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat3;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlati6 = unity_StereoEyeIndex;
					    u_xlat1.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati6].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati6].xy + u_xlat1.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendMul" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat2 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat2;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec2 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					float u_xlat3;
					int u_xlati6;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat3 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat3;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlati6 = unity_StereoEyeIndex;
					    u_xlat1.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati6].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati6].xy + u_xlat1.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendMul" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat2 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat2;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec2 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					float u_xlat3;
					int u_xlati6;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat3 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat3;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlati6 = unity_StereoEyeIndex;
					    u_xlat1.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati6].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati6].xy + u_xlat1.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendMul" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat2 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat2;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec2 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					float u_xlat3;
					int u_xlati6;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat3 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat3;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlati6 = unity_StereoEyeIndex;
					    u_xlat1.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati6].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati6].xy + u_xlat1.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendMul" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat2 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat2;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec2 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					float u_xlat3;
					int u_xlati6;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat3 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat3;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlati6 = unity_StereoEyeIndex;
					    u_xlat1.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati6].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati6].xy + u_xlat1.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendMul" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					float u_xlat9;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat9 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat9 = inversesqrt(u_xlat9);
					    u_xlat2.xyz = vec3(u_xlat9) * u_xlat2.xyz;
					    u_xlat9 = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat9 = inversesqrt(u_xlat9);
					    u_xlat3.xyz = vec3(u_xlat9) * in_NORMAL0.xyz;
					    u_xlat9 = dot(u_xlat3.xyz, u_xlat2.xyz);
					    u_xlat9 = log2(abs(u_xlat9));
					    u_xlat9 = u_xlat9 * _FresnelStr;
					    u_xlat9 = exp2(u_xlat9);
					    u_xlat9 = u_xlat9 + u_xlat9;
					    vs_TEXCOORD4 = min(u_xlat9, 1.0);
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    u_xlat4 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_3_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					vec3 u_xlat5;
					vec2 u_xlat8;
					int u_xlati10;
					float u_xlat15;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat5.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat5.x = inversesqrt(u_xlat5.x);
					    u_xlat5.xyz = u_xlat5.xxx * in_NORMAL0.xyz;
					    u_xlati10 = unity_StereoEyeIndex;
					    u_xlat3.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati10].yyy;
					    u_xlat3.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati10].xxx + u_xlat3.xyz;
					    u_xlat3.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati10].zzz + u_xlat3.xyz;
					    u_xlat3.xyz = u_xlat3.xyz + unity_WorldToObject[3].xyz;
					    u_xlat3.xyz = u_xlat3.xyz + (-in_POSITION0.xyz);
					    u_xlat15 = dot(u_xlat3.xyz, u_xlat3.xyz);
					    u_xlat15 = inversesqrt(u_xlat15);
					    u_xlat3.xyz = vec3(u_xlat15) * u_xlat3.xyz;
					    u_xlat5.x = dot(u_xlat5.xyz, u_xlat3.xyz);
					    u_xlat5.x = log2(abs(u_xlat5.x));
					    u_xlat5.x = u_xlat5.x * _FresnelStr;
					    u_xlat5.x = exp2(u_xlat5.x);
					    u_xlat5.x = u_xlat5.x + u_xlat5.x;
					    vs_TEXCOORD4 = min(u_xlat5.x, 1.0);
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    u_xlat4 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlat8.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati10].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati10].xy + u_xlat8.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendMul" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					float u_xlat9;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat9 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat9 = inversesqrt(u_xlat9);
					    u_xlat2.xyz = vec3(u_xlat9) * u_xlat2.xyz;
					    u_xlat9 = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat9 = inversesqrt(u_xlat9);
					    u_xlat3.xyz = vec3(u_xlat9) * in_NORMAL0.xyz;
					    u_xlat9 = dot(u_xlat3.xyz, u_xlat2.xyz);
					    u_xlat9 = log2(abs(u_xlat9));
					    u_xlat9 = u_xlat9 * _FresnelStr;
					    u_xlat9 = exp2(u_xlat9);
					    u_xlat9 = u_xlat9 + u_xlat9;
					    vs_TEXCOORD4 = min(u_xlat9, 1.0);
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    u_xlat4 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_3_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					vec3 u_xlat5;
					vec2 u_xlat8;
					int u_xlati10;
					float u_xlat15;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat5.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat5.x = inversesqrt(u_xlat5.x);
					    u_xlat5.xyz = u_xlat5.xxx * in_NORMAL0.xyz;
					    u_xlati10 = unity_StereoEyeIndex;
					    u_xlat3.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati10].yyy;
					    u_xlat3.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati10].xxx + u_xlat3.xyz;
					    u_xlat3.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati10].zzz + u_xlat3.xyz;
					    u_xlat3.xyz = u_xlat3.xyz + unity_WorldToObject[3].xyz;
					    u_xlat3.xyz = u_xlat3.xyz + (-in_POSITION0.xyz);
					    u_xlat15 = dot(u_xlat3.xyz, u_xlat3.xyz);
					    u_xlat15 = inversesqrt(u_xlat15);
					    u_xlat3.xyz = vec3(u_xlat15) * u_xlat3.xyz;
					    u_xlat5.x = dot(u_xlat5.xyz, u_xlat3.xyz);
					    u_xlat5.x = log2(abs(u_xlat5.x));
					    u_xlat5.x = u_xlat5.x * _FresnelStr;
					    u_xlat5.x = exp2(u_xlat5.x);
					    u_xlat5.x = u_xlat5.x + u_xlat5.x;
					    vs_TEXCOORD4 = min(u_xlat5.x, 1.0);
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    u_xlat4 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlat8.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati10].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati10].xy + u_xlat8.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendMul" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					float u_xlat14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat14 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat2.xyz = vec3(u_xlat14) * u_xlat2.xyz;
					    u_xlat14 = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat3.xyz = vec3(u_xlat14) * in_NORMAL0.xyz;
					    u_xlat2.x = dot(u_xlat3.xyz, u_xlat2.xyz);
					    u_xlat2.x = log2(abs(u_xlat2.x));
					    u_xlat2.x = u_xlat2.x * _FresnelStr;
					    u_xlat2.x = exp2(u_xlat2.x);
					    u_xlat2.x = u_xlat2.x + u_xlat2.x;
					    vs_TEXCOORD4 = min(u_xlat2.x, 1.0);
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat4 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_3_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati1;
					vec4 u_xlat2;
					int u_xlati3;
					float u_xlat4;
					float u_xlat5;
					vec3 u_xlat6;
					vec3 u_xlat8;
					vec2 u_xlat10;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat6.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat6.x = inversesqrt(u_xlat6.x);
					    u_xlat6.xyz = u_xlat6.xxx * in_NORMAL0.xyz;
					    u_xlati3 = unity_StereoEyeIndex;
					    u_xlat8.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].yyy;
					    u_xlat8.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].xxx + u_xlat8.xyz;
					    u_xlat8.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].zzz + u_xlat8.xyz;
					    u_xlat8.xyz = u_xlat8.xyz + unity_WorldToObject[3].xyz;
					    u_xlat8.xyz = u_xlat8.xyz + (-in_POSITION0.xyz);
					    u_xlat4 = dot(u_xlat8.xyz, u_xlat8.xyz);
					    u_xlat4 = inversesqrt(u_xlat4);
					    u_xlat8.xyz = u_xlat8.xyz * vec3(u_xlat4);
					    u_xlat6.x = dot(u_xlat6.xyz, u_xlat8.xyz);
					    u_xlat6.x = log2(abs(u_xlat6.x));
					    u_xlat6.x = u_xlat6.x * _FresnelStr;
					    u_xlat6.x = exp2(u_xlat6.x);
					    u_xlat6.x = u_xlat6.x + u_xlat6.x;
					    vs_TEXCOORD4 = min(u_xlat6.x, 1.0);
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat5 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat5;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlat10.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati3].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati3].xy + u_xlat10.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendMul" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					float u_xlat14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat14 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat2.xyz = vec3(u_xlat14) * u_xlat2.xyz;
					    u_xlat14 = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat3.xyz = vec3(u_xlat14) * in_NORMAL0.xyz;
					    u_xlat2.x = dot(u_xlat3.xyz, u_xlat2.xyz);
					    u_xlat2.x = log2(abs(u_xlat2.x));
					    u_xlat2.x = u_xlat2.x * _FresnelStr;
					    u_xlat2.x = exp2(u_xlat2.x);
					    u_xlat2.x = u_xlat2.x + u_xlat2.x;
					    vs_TEXCOORD4 = min(u_xlat2.x, 1.0);
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat4 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_3_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati1;
					vec4 u_xlat2;
					int u_xlati3;
					float u_xlat4;
					float u_xlat5;
					vec3 u_xlat6;
					vec3 u_xlat8;
					vec2 u_xlat10;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat6.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat6.x = inversesqrt(u_xlat6.x);
					    u_xlat6.xyz = u_xlat6.xxx * in_NORMAL0.xyz;
					    u_xlati3 = unity_StereoEyeIndex;
					    u_xlat8.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].yyy;
					    u_xlat8.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].xxx + u_xlat8.xyz;
					    u_xlat8.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].zzz + u_xlat8.xyz;
					    u_xlat8.xyz = u_xlat8.xyz + unity_WorldToObject[3].xyz;
					    u_xlat8.xyz = u_xlat8.xyz + (-in_POSITION0.xyz);
					    u_xlat4 = dot(u_xlat8.xyz, u_xlat8.xyz);
					    u_xlat4 = inversesqrt(u_xlat4);
					    u_xlat8.xyz = u_xlat8.xyz * vec3(u_xlat4);
					    u_xlat6.x = dot(u_xlat6.xyz, u_xlat8.xyz);
					    u_xlat6.x = log2(abs(u_xlat6.x));
					    u_xlat6.x = u_xlat6.x * _FresnelStr;
					    u_xlat6.x = exp2(u_xlat6.x);
					    u_xlat6.x = u_xlat6.x + u_xlat6.x;
					    vs_TEXCOORD4 = min(u_xlat6.x, 1.0);
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat5 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat5;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlat10.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati3].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati3].xy + u_xlat10.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendMul" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					float u_xlat14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat14 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat2.xyz = vec3(u_xlat14) * u_xlat2.xyz;
					    u_xlat14 = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat3.xyz = vec3(u_xlat14) * in_NORMAL0.xyz;
					    u_xlat2.x = dot(u_xlat3.xyz, u_xlat2.xyz);
					    u_xlat2.x = log2(abs(u_xlat2.x));
					    u_xlat2.x = u_xlat2.x * _FresnelStr;
					    u_xlat2.x = exp2(u_xlat2.x);
					    u_xlat2.x = u_xlat2.x + u_xlat2.x;
					    vs_TEXCOORD4 = min(u_xlat2.x, 1.0);
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat4 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_3_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati1;
					vec4 u_xlat2;
					int u_xlati3;
					float u_xlat4;
					float u_xlat5;
					vec3 u_xlat6;
					vec3 u_xlat8;
					vec2 u_xlat10;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat6.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat6.x = inversesqrt(u_xlat6.x);
					    u_xlat6.xyz = u_xlat6.xxx * in_NORMAL0.xyz;
					    u_xlati3 = unity_StereoEyeIndex;
					    u_xlat8.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].yyy;
					    u_xlat8.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].xxx + u_xlat8.xyz;
					    u_xlat8.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].zzz + u_xlat8.xyz;
					    u_xlat8.xyz = u_xlat8.xyz + unity_WorldToObject[3].xyz;
					    u_xlat8.xyz = u_xlat8.xyz + (-in_POSITION0.xyz);
					    u_xlat4 = dot(u_xlat8.xyz, u_xlat8.xyz);
					    u_xlat4 = inversesqrt(u_xlat4);
					    u_xlat8.xyz = u_xlat8.xyz * vec3(u_xlat4);
					    u_xlat6.x = dot(u_xlat6.xyz, u_xlat8.xyz);
					    u_xlat6.x = log2(abs(u_xlat6.x));
					    u_xlat6.x = u_xlat6.x * _FresnelStr;
					    u_xlat6.x = exp2(u_xlat6.x);
					    u_xlat6.x = u_xlat6.x + u_xlat6.x;
					    vs_TEXCOORD4 = min(u_xlat6.x, 1.0);
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat5 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat5;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlat10.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati3].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati3].xy + u_xlat10.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendMul" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					float u_xlat14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat14 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat2.xyz = vec3(u_xlat14) * u_xlat2.xyz;
					    u_xlat14 = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat3.xyz = vec3(u_xlat14) * in_NORMAL0.xyz;
					    u_xlat2.x = dot(u_xlat3.xyz, u_xlat2.xyz);
					    u_xlat2.x = log2(abs(u_xlat2.x));
					    u_xlat2.x = u_xlat2.x * _FresnelStr;
					    u_xlat2.x = exp2(u_xlat2.x);
					    u_xlat2.x = u_xlat2.x + u_xlat2.x;
					    vs_TEXCOORD4 = min(u_xlat2.x, 1.0);
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat4 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_3_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati1;
					vec4 u_xlat2;
					int u_xlati3;
					float u_xlat4;
					float u_xlat5;
					vec3 u_xlat6;
					vec3 u_xlat8;
					vec2 u_xlat10;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat6.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat6.x = inversesqrt(u_xlat6.x);
					    u_xlat6.xyz = u_xlat6.xxx * in_NORMAL0.xyz;
					    u_xlati3 = unity_StereoEyeIndex;
					    u_xlat8.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].yyy;
					    u_xlat8.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].xxx + u_xlat8.xyz;
					    u_xlat8.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].zzz + u_xlat8.xyz;
					    u_xlat8.xyz = u_xlat8.xyz + unity_WorldToObject[3].xyz;
					    u_xlat8.xyz = u_xlat8.xyz + (-in_POSITION0.xyz);
					    u_xlat4 = dot(u_xlat8.xyz, u_xlat8.xyz);
					    u_xlat4 = inversesqrt(u_xlat4);
					    u_xlat8.xyz = u_xlat8.xyz * vec3(u_xlat4);
					    u_xlat6.x = dot(u_xlat6.xyz, u_xlat8.xyz);
					    u_xlat6.x = log2(abs(u_xlat6.x));
					    u_xlat6.x = u_xlat6.x * _FresnelStr;
					    u_xlat6.x = exp2(u_xlat6.x);
					    u_xlat6.x = u_xlat6.x + u_xlat6.x;
					    vs_TEXCOORD4 = min(u_xlat6.x, 1.0);
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat5 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat5;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlat10.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati3].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati3].xy + u_xlat10.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendMul" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					float u_xlat14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat14 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat2.xyz = vec3(u_xlat14) * u_xlat2.xyz;
					    u_xlat14 = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat3.xyz = vec3(u_xlat14) * in_NORMAL0.xyz;
					    u_xlat2.x = dot(u_xlat3.xyz, u_xlat2.xyz);
					    u_xlat2.x = log2(abs(u_xlat2.x));
					    u_xlat2.x = u_xlat2.x * _FresnelStr;
					    u_xlat2.x = exp2(u_xlat2.x);
					    u_xlat2.x = u_xlat2.x + u_xlat2.x;
					    vs_TEXCOORD4 = min(u_xlat2.x, 1.0);
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat4 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_3_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati1;
					vec4 u_xlat2;
					int u_xlati3;
					float u_xlat4;
					float u_xlat5;
					vec3 u_xlat6;
					vec3 u_xlat8;
					vec2 u_xlat10;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat6.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat6.x = inversesqrt(u_xlat6.x);
					    u_xlat6.xyz = u_xlat6.xxx * in_NORMAL0.xyz;
					    u_xlati3 = unity_StereoEyeIndex;
					    u_xlat8.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].yyy;
					    u_xlat8.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].xxx + u_xlat8.xyz;
					    u_xlat8.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].zzz + u_xlat8.xyz;
					    u_xlat8.xyz = u_xlat8.xyz + unity_WorldToObject[3].xyz;
					    u_xlat8.xyz = u_xlat8.xyz + (-in_POSITION0.xyz);
					    u_xlat4 = dot(u_xlat8.xyz, u_xlat8.xyz);
					    u_xlat4 = inversesqrt(u_xlat4);
					    u_xlat8.xyz = u_xlat8.xyz * vec3(u_xlat4);
					    u_xlat6.x = dot(u_xlat6.xyz, u_xlat8.xyz);
					    u_xlat6.x = log2(abs(u_xlat6.x));
					    u_xlat6.x = u_xlat6.x * _FresnelStr;
					    u_xlat6.x = exp2(u_xlat6.x);
					    u_xlat6.x = u_xlat6.x + u_xlat6.x;
					    vs_TEXCOORD4 = min(u_xlat6.x, 1.0);
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat5 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat5;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlat10.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati3].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati3].xy + u_xlat10.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendMul" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					float u_xlat14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat14 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat2.xyz = vec3(u_xlat14) * u_xlat2.xyz;
					    u_xlat14 = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat3.xyz = vec3(u_xlat14) * in_NORMAL0.xyz;
					    u_xlat2.x = dot(u_xlat3.xyz, u_xlat2.xyz);
					    u_xlat2.x = log2(abs(u_xlat2.x));
					    u_xlat2.x = u_xlat2.x * _FresnelStr;
					    u_xlat2.x = exp2(u_xlat2.x);
					    u_xlat2.x = u_xlat2.x + u_xlat2.x;
					    vs_TEXCOORD4 = min(u_xlat2.x, 1.0);
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat4 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_3_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati1;
					vec4 u_xlat2;
					int u_xlati3;
					float u_xlat4;
					float u_xlat5;
					vec3 u_xlat6;
					vec3 u_xlat8;
					vec2 u_xlat10;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat6.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat6.x = inversesqrt(u_xlat6.x);
					    u_xlat6.xyz = u_xlat6.xxx * in_NORMAL0.xyz;
					    u_xlati3 = unity_StereoEyeIndex;
					    u_xlat8.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].yyy;
					    u_xlat8.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].xxx + u_xlat8.xyz;
					    u_xlat8.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].zzz + u_xlat8.xyz;
					    u_xlat8.xyz = u_xlat8.xyz + unity_WorldToObject[3].xyz;
					    u_xlat8.xyz = u_xlat8.xyz + (-in_POSITION0.xyz);
					    u_xlat4 = dot(u_xlat8.xyz, u_xlat8.xyz);
					    u_xlat4 = inversesqrt(u_xlat4);
					    u_xlat8.xyz = u_xlat8.xyz * vec3(u_xlat4);
					    u_xlat6.x = dot(u_xlat6.xyz, u_xlat8.xyz);
					    u_xlat6.x = log2(abs(u_xlat6.x));
					    u_xlat6.x = u_xlat6.x * _FresnelStr;
					    u_xlat6.x = exp2(u_xlat6.x);
					    u_xlat6.x = u_xlat6.x + u_xlat6.x;
					    vs_TEXCOORD4 = min(u_xlat6.x, 1.0);
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat5 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat5;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlat10.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati3].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati3].xy + u_xlat10.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendMul" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					float u_xlat9;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat9 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat9 = inversesqrt(u_xlat9);
					    u_xlat2.xyz = vec3(u_xlat9) * u_xlat2.xyz;
					    u_xlat9 = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat9 = inversesqrt(u_xlat9);
					    u_xlat3.xyz = vec3(u_xlat9) * in_NORMAL0.xyz;
					    u_xlat9 = dot(u_xlat3.xyz, u_xlat2.xyz);
					    u_xlat9 = log2(abs(u_xlat9));
					    u_xlat9 = u_xlat9 * _FresnelStr;
					    u_xlat9 = exp2(u_xlat9);
					    u_xlat9 = u_xlat9 + u_xlat9;
					    vs_TEXCOORD4 = min(u_xlat9, 1.0);
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    u_xlat4 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_3_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					vec3 u_xlat5;
					vec2 u_xlat8;
					int u_xlati10;
					float u_xlat15;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat5.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat5.x = inversesqrt(u_xlat5.x);
					    u_xlat5.xyz = u_xlat5.xxx * in_NORMAL0.xyz;
					    u_xlati10 = unity_StereoEyeIndex;
					    u_xlat3.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati10].yyy;
					    u_xlat3.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati10].xxx + u_xlat3.xyz;
					    u_xlat3.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati10].zzz + u_xlat3.xyz;
					    u_xlat3.xyz = u_xlat3.xyz + unity_WorldToObject[3].xyz;
					    u_xlat3.xyz = u_xlat3.xyz + (-in_POSITION0.xyz);
					    u_xlat15 = dot(u_xlat3.xyz, u_xlat3.xyz);
					    u_xlat15 = inversesqrt(u_xlat15);
					    u_xlat3.xyz = vec3(u_xlat15) * u_xlat3.xyz;
					    u_xlat5.x = dot(u_xlat5.xyz, u_xlat3.xyz);
					    u_xlat5.x = log2(abs(u_xlat5.x));
					    u_xlat5.x = u_xlat5.x * _FresnelStr;
					    u_xlat5.x = exp2(u_xlat5.x);
					    u_xlat5.x = u_xlat5.x + u_xlat5.x;
					    vs_TEXCOORD4 = min(u_xlat5.x, 1.0);
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    u_xlat4 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlat8.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati10].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati10].xy + u_xlat8.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendMul" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					float u_xlat9;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat9 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat9 = inversesqrt(u_xlat9);
					    u_xlat2.xyz = vec3(u_xlat9) * u_xlat2.xyz;
					    u_xlat9 = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat9 = inversesqrt(u_xlat9);
					    u_xlat3.xyz = vec3(u_xlat9) * in_NORMAL0.xyz;
					    u_xlat9 = dot(u_xlat3.xyz, u_xlat2.xyz);
					    u_xlat9 = log2(abs(u_xlat9));
					    u_xlat9 = u_xlat9 * _FresnelStr;
					    u_xlat9 = exp2(u_xlat9);
					    u_xlat9 = u_xlat9 + u_xlat9;
					    vs_TEXCOORD4 = min(u_xlat9, 1.0);
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    u_xlat4 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_3_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					vec3 u_xlat5;
					vec2 u_xlat8;
					int u_xlati10;
					float u_xlat15;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat5.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat5.x = inversesqrt(u_xlat5.x);
					    u_xlat5.xyz = u_xlat5.xxx * in_NORMAL0.xyz;
					    u_xlati10 = unity_StereoEyeIndex;
					    u_xlat3.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati10].yyy;
					    u_xlat3.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati10].xxx + u_xlat3.xyz;
					    u_xlat3.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati10].zzz + u_xlat3.xyz;
					    u_xlat3.xyz = u_xlat3.xyz + unity_WorldToObject[3].xyz;
					    u_xlat3.xyz = u_xlat3.xyz + (-in_POSITION0.xyz);
					    u_xlat15 = dot(u_xlat3.xyz, u_xlat3.xyz);
					    u_xlat15 = inversesqrt(u_xlat15);
					    u_xlat3.xyz = vec3(u_xlat15) * u_xlat3.xyz;
					    u_xlat5.x = dot(u_xlat5.xyz, u_xlat3.xyz);
					    u_xlat5.x = log2(abs(u_xlat5.x));
					    u_xlat5.x = u_xlat5.x * _FresnelStr;
					    u_xlat5.x = exp2(u_xlat5.x);
					    u_xlat5.x = u_xlat5.x + u_xlat5.x;
					    vs_TEXCOORD4 = min(u_xlat5.x, 1.0);
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    u_xlat4 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlat8.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati10].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati10].xy + u_xlat8.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendMul" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					float u_xlat14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat14 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat2.xyz = vec3(u_xlat14) * u_xlat2.xyz;
					    u_xlat14 = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat3.xyz = vec3(u_xlat14) * in_NORMAL0.xyz;
					    u_xlat2.x = dot(u_xlat3.xyz, u_xlat2.xyz);
					    u_xlat2.x = log2(abs(u_xlat2.x));
					    u_xlat2.x = u_xlat2.x * _FresnelStr;
					    u_xlat2.x = exp2(u_xlat2.x);
					    u_xlat2.x = u_xlat2.x + u_xlat2.x;
					    vs_TEXCOORD4 = min(u_xlat2.x, 1.0);
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat4 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_3_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati1;
					vec4 u_xlat2;
					int u_xlati3;
					float u_xlat4;
					float u_xlat5;
					vec3 u_xlat6;
					vec3 u_xlat8;
					vec2 u_xlat10;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat6.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat6.x = inversesqrt(u_xlat6.x);
					    u_xlat6.xyz = u_xlat6.xxx * in_NORMAL0.xyz;
					    u_xlati3 = unity_StereoEyeIndex;
					    u_xlat8.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].yyy;
					    u_xlat8.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].xxx + u_xlat8.xyz;
					    u_xlat8.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].zzz + u_xlat8.xyz;
					    u_xlat8.xyz = u_xlat8.xyz + unity_WorldToObject[3].xyz;
					    u_xlat8.xyz = u_xlat8.xyz + (-in_POSITION0.xyz);
					    u_xlat4 = dot(u_xlat8.xyz, u_xlat8.xyz);
					    u_xlat4 = inversesqrt(u_xlat4);
					    u_xlat8.xyz = u_xlat8.xyz * vec3(u_xlat4);
					    u_xlat6.x = dot(u_xlat6.xyz, u_xlat8.xyz);
					    u_xlat6.x = log2(abs(u_xlat6.x));
					    u_xlat6.x = u_xlat6.x * _FresnelStr;
					    u_xlat6.x = exp2(u_xlat6.x);
					    u_xlat6.x = u_xlat6.x + u_xlat6.x;
					    vs_TEXCOORD4 = min(u_xlat6.x, 1.0);
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat5 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat5;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlat10.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati3].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati3].xy + u_xlat10.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendMul" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					float u_xlat14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat14 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat2.xyz = vec3(u_xlat14) * u_xlat2.xyz;
					    u_xlat14 = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat3.xyz = vec3(u_xlat14) * in_NORMAL0.xyz;
					    u_xlat2.x = dot(u_xlat3.xyz, u_xlat2.xyz);
					    u_xlat2.x = log2(abs(u_xlat2.x));
					    u_xlat2.x = u_xlat2.x * _FresnelStr;
					    u_xlat2.x = exp2(u_xlat2.x);
					    u_xlat2.x = u_xlat2.x + u_xlat2.x;
					    vs_TEXCOORD4 = min(u_xlat2.x, 1.0);
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat4 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_3_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati1;
					vec4 u_xlat2;
					int u_xlati3;
					float u_xlat4;
					float u_xlat5;
					vec3 u_xlat6;
					vec3 u_xlat8;
					vec2 u_xlat10;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat6.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat6.x = inversesqrt(u_xlat6.x);
					    u_xlat6.xyz = u_xlat6.xxx * in_NORMAL0.xyz;
					    u_xlati3 = unity_StereoEyeIndex;
					    u_xlat8.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].yyy;
					    u_xlat8.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].xxx + u_xlat8.xyz;
					    u_xlat8.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].zzz + u_xlat8.xyz;
					    u_xlat8.xyz = u_xlat8.xyz + unity_WorldToObject[3].xyz;
					    u_xlat8.xyz = u_xlat8.xyz + (-in_POSITION0.xyz);
					    u_xlat4 = dot(u_xlat8.xyz, u_xlat8.xyz);
					    u_xlat4 = inversesqrt(u_xlat4);
					    u_xlat8.xyz = u_xlat8.xyz * vec3(u_xlat4);
					    u_xlat6.x = dot(u_xlat6.xyz, u_xlat8.xyz);
					    u_xlat6.x = log2(abs(u_xlat6.x));
					    u_xlat6.x = u_xlat6.x * _FresnelStr;
					    u_xlat6.x = exp2(u_xlat6.x);
					    u_xlat6.x = u_xlat6.x + u_xlat6.x;
					    vs_TEXCOORD4 = min(u_xlat6.x, 1.0);
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat5 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat5;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlat10.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati3].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati3].xy + u_xlat10.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendMul" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					float u_xlat14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat14 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat2.xyz = vec3(u_xlat14) * u_xlat2.xyz;
					    u_xlat14 = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat3.xyz = vec3(u_xlat14) * in_NORMAL0.xyz;
					    u_xlat2.x = dot(u_xlat3.xyz, u_xlat2.xyz);
					    u_xlat2.x = log2(abs(u_xlat2.x));
					    u_xlat2.x = u_xlat2.x * _FresnelStr;
					    u_xlat2.x = exp2(u_xlat2.x);
					    u_xlat2.x = u_xlat2.x + u_xlat2.x;
					    vs_TEXCOORD4 = min(u_xlat2.x, 1.0);
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat4 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_3_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati1;
					vec4 u_xlat2;
					int u_xlati3;
					float u_xlat4;
					float u_xlat5;
					vec3 u_xlat6;
					vec3 u_xlat8;
					vec2 u_xlat10;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat6.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat6.x = inversesqrt(u_xlat6.x);
					    u_xlat6.xyz = u_xlat6.xxx * in_NORMAL0.xyz;
					    u_xlati3 = unity_StereoEyeIndex;
					    u_xlat8.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].yyy;
					    u_xlat8.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].xxx + u_xlat8.xyz;
					    u_xlat8.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].zzz + u_xlat8.xyz;
					    u_xlat8.xyz = u_xlat8.xyz + unity_WorldToObject[3].xyz;
					    u_xlat8.xyz = u_xlat8.xyz + (-in_POSITION0.xyz);
					    u_xlat4 = dot(u_xlat8.xyz, u_xlat8.xyz);
					    u_xlat4 = inversesqrt(u_xlat4);
					    u_xlat8.xyz = u_xlat8.xyz * vec3(u_xlat4);
					    u_xlat6.x = dot(u_xlat6.xyz, u_xlat8.xyz);
					    u_xlat6.x = log2(abs(u_xlat6.x));
					    u_xlat6.x = u_xlat6.x * _FresnelStr;
					    u_xlat6.x = exp2(u_xlat6.x);
					    u_xlat6.x = u_xlat6.x + u_xlat6.x;
					    vs_TEXCOORD4 = min(u_xlat6.x, 1.0);
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat5 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat5;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlat10.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati3].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati3].xy + u_xlat10.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendMul" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					float u_xlat14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat14 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat2.xyz = vec3(u_xlat14) * u_xlat2.xyz;
					    u_xlat14 = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat3.xyz = vec3(u_xlat14) * in_NORMAL0.xyz;
					    u_xlat2.x = dot(u_xlat3.xyz, u_xlat2.xyz);
					    u_xlat2.x = log2(abs(u_xlat2.x));
					    u_xlat2.x = u_xlat2.x * _FresnelStr;
					    u_xlat2.x = exp2(u_xlat2.x);
					    u_xlat2.x = u_xlat2.x + u_xlat2.x;
					    vs_TEXCOORD4 = min(u_xlat2.x, 1.0);
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat4 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_3_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati1;
					vec4 u_xlat2;
					int u_xlati3;
					float u_xlat4;
					float u_xlat5;
					vec3 u_xlat6;
					vec3 u_xlat8;
					vec2 u_xlat10;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat6.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat6.x = inversesqrt(u_xlat6.x);
					    u_xlat6.xyz = u_xlat6.xxx * in_NORMAL0.xyz;
					    u_xlati3 = unity_StereoEyeIndex;
					    u_xlat8.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].yyy;
					    u_xlat8.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].xxx + u_xlat8.xyz;
					    u_xlat8.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].zzz + u_xlat8.xyz;
					    u_xlat8.xyz = u_xlat8.xyz + unity_WorldToObject[3].xyz;
					    u_xlat8.xyz = u_xlat8.xyz + (-in_POSITION0.xyz);
					    u_xlat4 = dot(u_xlat8.xyz, u_xlat8.xyz);
					    u_xlat4 = inversesqrt(u_xlat4);
					    u_xlat8.xyz = u_xlat8.xyz * vec3(u_xlat4);
					    u_xlat6.x = dot(u_xlat6.xyz, u_xlat8.xyz);
					    u_xlat6.x = log2(abs(u_xlat6.x));
					    u_xlat6.x = u_xlat6.x * _FresnelStr;
					    u_xlat6.x = exp2(u_xlat6.x);
					    u_xlat6.x = u_xlat6.x + u_xlat6.x;
					    vs_TEXCOORD4 = min(u_xlat6.x, 1.0);
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat5 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat5;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlat10.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati3].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati3].xy + u_xlat10.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendMul" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					float u_xlat14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat14 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat2.xyz = vec3(u_xlat14) * u_xlat2.xyz;
					    u_xlat14 = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat3.xyz = vec3(u_xlat14) * in_NORMAL0.xyz;
					    u_xlat2.x = dot(u_xlat3.xyz, u_xlat2.xyz);
					    u_xlat2.x = log2(abs(u_xlat2.x));
					    u_xlat2.x = u_xlat2.x * _FresnelStr;
					    u_xlat2.x = exp2(u_xlat2.x);
					    u_xlat2.x = u_xlat2.x + u_xlat2.x;
					    vs_TEXCOORD4 = min(u_xlat2.x, 1.0);
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat4 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_3_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati1;
					vec4 u_xlat2;
					int u_xlati3;
					float u_xlat4;
					float u_xlat5;
					vec3 u_xlat6;
					vec3 u_xlat8;
					vec2 u_xlat10;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat6.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat6.x = inversesqrt(u_xlat6.x);
					    u_xlat6.xyz = u_xlat6.xxx * in_NORMAL0.xyz;
					    u_xlati3 = unity_StereoEyeIndex;
					    u_xlat8.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].yyy;
					    u_xlat8.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].xxx + u_xlat8.xyz;
					    u_xlat8.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].zzz + u_xlat8.xyz;
					    u_xlat8.xyz = u_xlat8.xyz + unity_WorldToObject[3].xyz;
					    u_xlat8.xyz = u_xlat8.xyz + (-in_POSITION0.xyz);
					    u_xlat4 = dot(u_xlat8.xyz, u_xlat8.xyz);
					    u_xlat4 = inversesqrt(u_xlat4);
					    u_xlat8.xyz = u_xlat8.xyz * vec3(u_xlat4);
					    u_xlat6.x = dot(u_xlat6.xyz, u_xlat8.xyz);
					    u_xlat6.x = log2(abs(u_xlat6.x));
					    u_xlat6.x = u_xlat6.x * _FresnelStr;
					    u_xlat6.x = exp2(u_xlat6.x);
					    u_xlat6.x = u_xlat6.x + u_xlat6.x;
					    vs_TEXCOORD4 = min(u_xlat6.x, 1.0);
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat5 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat5;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlat10.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati3].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati3].xy + u_xlat10.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendMul" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					float u_xlat14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat14 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat2.xyz = vec3(u_xlat14) * u_xlat2.xyz;
					    u_xlat14 = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat3.xyz = vec3(u_xlat14) * in_NORMAL0.xyz;
					    u_xlat2.x = dot(u_xlat3.xyz, u_xlat2.xyz);
					    u_xlat2.x = log2(abs(u_xlat2.x));
					    u_xlat2.x = u_xlat2.x * _FresnelStr;
					    u_xlat2.x = exp2(u_xlat2.x);
					    u_xlat2.x = u_xlat2.x + u_xlat2.x;
					    vs_TEXCOORD4 = min(u_xlat2.x, 1.0);
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat4 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_3_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati1;
					vec4 u_xlat2;
					int u_xlati3;
					float u_xlat4;
					float u_xlat5;
					vec3 u_xlat6;
					vec3 u_xlat8;
					vec2 u_xlat10;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat6.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat6.x = inversesqrt(u_xlat6.x);
					    u_xlat6.xyz = u_xlat6.xxx * in_NORMAL0.xyz;
					    u_xlati3 = unity_StereoEyeIndex;
					    u_xlat8.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].yyy;
					    u_xlat8.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].xxx + u_xlat8.xyz;
					    u_xlat8.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].zzz + u_xlat8.xyz;
					    u_xlat8.xyz = u_xlat8.xyz + unity_WorldToObject[3].xyz;
					    u_xlat8.xyz = u_xlat8.xyz + (-in_POSITION0.xyz);
					    u_xlat4 = dot(u_xlat8.xyz, u_xlat8.xyz);
					    u_xlat4 = inversesqrt(u_xlat4);
					    u_xlat8.xyz = u_xlat8.xyz * vec3(u_xlat4);
					    u_xlat6.x = dot(u_xlat6.xyz, u_xlat8.xyz);
					    u_xlat6.x = log2(abs(u_xlat6.x));
					    u_xlat6.x = u_xlat6.x * _FresnelStr;
					    u_xlat6.x = exp2(u_xlat6.x);
					    u_xlat6.x = u_xlat6.x + u_xlat6.x;
					    vs_TEXCOORD4 = min(u_xlat6.x, 1.0);
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat5 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat5;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlat10.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati3].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati3].xy + u_xlat10.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendMul" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec2 u_xlat4;
					int u_xlati12;
					float u_xlat13;
					bool u_xlatb13;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat0 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat1.x = float(0.0);
					    u_xlat1.y = float(0.0);
					    u_xlat1.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat13 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat13 = u_xlat13 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat13 = float(1.0) / u_xlat13;
					        u_xlat1.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat13) + u_xlat1.xyz;
					    }
					    u_xlat0.xyz = u_xlat1.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendMul" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec2 u_xlat4;
					int u_xlati12;
					float u_xlat13;
					bool u_xlatb13;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat0 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat1.x = float(0.0);
					    u_xlat1.y = float(0.0);
					    u_xlat1.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat13 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat13 = u_xlat13 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat13 = float(1.0) / u_xlat13;
					        u_xlat1.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat13) + u_xlat1.xyz;
					    }
					    u_xlat0.xyz = u_xlat1.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendMul" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec2 u_xlat4;
					int u_xlati12;
					float u_xlat13;
					bool u_xlatb13;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat0 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat1.x = float(0.0);
					    u_xlat1.y = float(0.0);
					    u_xlat1.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat13 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat13 = u_xlat13 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat13 = float(1.0) / u_xlat13;
					        u_xlat1.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat13) + u_xlat1.xyz;
					    }
					    u_xlat0.xyz = u_xlat1.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendMul" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec2 u_xlat4;
					int u_xlati12;
					float u_xlat13;
					bool u_xlatb13;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat0 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat1.x = float(0.0);
					    u_xlat1.y = float(0.0);
					    u_xlat1.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat13 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat13 = u_xlat13 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat13 = float(1.0) / u_xlat13;
					        u_xlat1.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat13) + u_xlat1.xyz;
					    }
					    u_xlat0.xyz = u_xlat1.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendMul" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec2 u_xlat4;
					int u_xlati12;
					float u_xlat13;
					bool u_xlatb13;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat0 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat1.x = float(0.0);
					    u_xlat1.y = float(0.0);
					    u_xlat1.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat13 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat13 = u_xlat13 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat13 = float(1.0) / u_xlat13;
					        u_xlat1.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat13) + u_xlat1.xyz;
					    }
					    u_xlat0.xyz = u_xlat1.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendMul" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec2 u_xlat4;
					int u_xlati12;
					float u_xlat13;
					bool u_xlatb13;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat0 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat1.x = float(0.0);
					    u_xlat1.y = float(0.0);
					    u_xlat1.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat13 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat13 = u_xlat13 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat13 = float(1.0) / u_xlat13;
					        u_xlat1.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat13) + u_xlat1.xyz;
					    }
					    u_xlat0.xyz = u_xlat1.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendMul" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec2 u_xlat4;
					int u_xlati12;
					float u_xlat13;
					bool u_xlatb13;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat0 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat1.x = float(0.0);
					    u_xlat1.y = float(0.0);
					    u_xlat1.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat13 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat13 = u_xlat13 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat13 = float(1.0) / u_xlat13;
					        u_xlat1.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat13) + u_xlat1.xyz;
					    }
					    u_xlat0.xyz = u_xlat1.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendMul" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec2 u_xlat4;
					int u_xlati12;
					float u_xlat13;
					bool u_xlatb13;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat0 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat1.x = float(0.0);
					    u_xlat1.y = float(0.0);
					    u_xlat1.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat13 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat13 = u_xlat13 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat13 = float(1.0) / u_xlat13;
					        u_xlat1.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat13) + u_xlat1.xyz;
					    }
					    u_xlat0.xyz = u_xlat1.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendMul" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec2 u_xlat4;
					int u_xlati12;
					float u_xlat13;
					bool u_xlatb13;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat0 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat1.x = float(0.0);
					    u_xlat1.y = float(0.0);
					    u_xlat1.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat13 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat13 = u_xlat13 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat13 = float(1.0) / u_xlat13;
					        u_xlat1.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat13) + u_xlat1.xyz;
					    }
					    u_xlat0.xyz = u_xlat1.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendMul" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec2 u_xlat4;
					int u_xlati12;
					float u_xlat13;
					bool u_xlatb13;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat0 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat1.x = float(0.0);
					    u_xlat1.y = float(0.0);
					    u_xlat1.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat13 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat13 = u_xlat13 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat13 = float(1.0) / u_xlat13;
					        u_xlat1.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat13) + u_xlat1.xyz;
					    }
					    u_xlat0.xyz = u_xlat1.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendMul" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec2 u_xlat4;
					int u_xlati12;
					float u_xlat13;
					bool u_xlatb13;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat0 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat1.x = float(0.0);
					    u_xlat1.y = float(0.0);
					    u_xlat1.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat13 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat13 = u_xlat13 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat13 = float(1.0) / u_xlat13;
					        u_xlat1.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat13) + u_xlat1.xyz;
					    }
					    u_xlat0.xyz = u_xlat1.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendMul" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec2 u_xlat4;
					int u_xlati12;
					float u_xlat13;
					bool u_xlatb13;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat0 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat1.x = float(0.0);
					    u_xlat1.y = float(0.0);
					    u_xlat1.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat13 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat13 = u_xlat13 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat13 = float(1.0) / u_xlat13;
					        u_xlat1.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat13) + u_xlat1.xyz;
					    }
					    u_xlat0.xyz = u_xlat1.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendMul" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec2 u_xlat4;
					int u_xlati12;
					float u_xlat13;
					bool u_xlatb13;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat0 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat1.x = float(0.0);
					    u_xlat1.y = float(0.0);
					    u_xlat1.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat13 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat13 = u_xlat13 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat13 = float(1.0) / u_xlat13;
					        u_xlat1.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat13) + u_xlat1.xyz;
					    }
					    u_xlat0.xyz = u_xlat1.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendMul" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec2 u_xlat4;
					int u_xlati12;
					float u_xlat13;
					bool u_xlatb13;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat0 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat1.x = float(0.0);
					    u_xlat1.y = float(0.0);
					    u_xlat1.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat13 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat13 = u_xlat13 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat13 = float(1.0) / u_xlat13;
					        u_xlat1.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat13) + u_xlat1.xyz;
					    }
					    u_xlat0.xyz = u_xlat1.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendMul" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec2 u_xlat4;
					int u_xlati12;
					float u_xlat13;
					bool u_xlatb13;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat0 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat1.x = float(0.0);
					    u_xlat1.y = float(0.0);
					    u_xlat1.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat13 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat13 = u_xlat13 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat13 = float(1.0) / u_xlat13;
					        u_xlat1.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat13) + u_xlat1.xyz;
					    }
					    u_xlat0.xyz = u_xlat1.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendMul" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec2 u_xlat4;
					int u_xlati12;
					float u_xlat13;
					bool u_xlatb13;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat0 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat1.x = float(0.0);
					    u_xlat1.y = float(0.0);
					    u_xlat1.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat13 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat13 = u_xlat13 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat13 = float(1.0) / u_xlat13;
					        u_xlat1.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat13) + u_xlat1.xyz;
					    }
					    u_xlat0.xyz = u_xlat1.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendMul" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat12;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat2.xyz = vec3(u_xlat12) * u_xlat2.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat2.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					bool u_xlatb3;
					vec2 u_xlat4;
					float u_xlat12;
					int u_xlati12;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat1 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat1.x);
					    u_xlat0.x = float(0.0);
					    u_xlat0.y = float(0.0);
					    u_xlat0.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat1.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat3.x = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat3.x = u_xlat3.x * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat3.x = float(1.0) / u_xlat3.x;
					        u_xlat0.xyz = unity_LightColor[u_xlati_loop_1].xyz * u_xlat3.xxx + u_xlat0.xyz;
					    }
					    u_xlat0.xyz = u_xlat0.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat1.xyz = vec3(u_xlat12) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendMul" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat12;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat2.xyz = vec3(u_xlat12) * u_xlat2.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat2.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					bool u_xlatb3;
					vec2 u_xlat4;
					float u_xlat12;
					int u_xlati12;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat1 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat1.x);
					    u_xlat0.x = float(0.0);
					    u_xlat0.y = float(0.0);
					    u_xlat0.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat1.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat3.x = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat3.x = u_xlat3.x * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat3.x = float(1.0) / u_xlat3.x;
					        u_xlat0.xyz = unity_LightColor[u_xlati_loop_1].xyz * u_xlat3.xxx + u_xlat0.xyz;
					    }
					    u_xlat0.xyz = u_xlat0.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat1.xyz = vec3(u_xlat12) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendMul" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat12;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat2.xyz = vec3(u_xlat12) * u_xlat2.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat2.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat1.z;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					bool u_xlatb3;
					vec2 u_xlat4;
					float u_xlat12;
					int u_xlati12;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat1 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat1.x);
					    u_xlat0.x = float(0.0);
					    u_xlat0.y = float(0.0);
					    u_xlat0.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat1.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat3.x = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat3.x = u_xlat3.x * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat3.x = float(1.0) / u_xlat3.x;
					        u_xlat0.xyz = unity_LightColor[u_xlati_loop_1].xyz * u_xlat3.xxx + u_xlat0.xyz;
					    }
					    u_xlat0.xyz = u_xlat0.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat1.xyz = vec3(u_xlat12) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat2.z;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendMul" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat12;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat2.xyz = vec3(u_xlat12) * u_xlat2.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat2.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat1.z;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					bool u_xlatb3;
					vec2 u_xlat4;
					float u_xlat12;
					int u_xlati12;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat1 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat1.x);
					    u_xlat0.x = float(0.0);
					    u_xlat0.y = float(0.0);
					    u_xlat0.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat1.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat3.x = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat3.x = u_xlat3.x * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat3.x = float(1.0) / u_xlat3.x;
					        u_xlat0.xyz = unity_LightColor[u_xlati_loop_1].xyz * u_xlat3.xxx + u_xlat0.xyz;
					    }
					    u_xlat0.xyz = u_xlat0.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat1.xyz = vec3(u_xlat12) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat2.z;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendMul" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat12;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat2.xyz = vec3(u_xlat12) * u_xlat2.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat2.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat1.z;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					bool u_xlatb3;
					vec2 u_xlat4;
					float u_xlat12;
					int u_xlati12;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat1 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat1.x);
					    u_xlat0.x = float(0.0);
					    u_xlat0.y = float(0.0);
					    u_xlat0.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat1.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat3.x = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat3.x = u_xlat3.x * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat3.x = float(1.0) / u_xlat3.x;
					        u_xlat0.xyz = unity_LightColor[u_xlati_loop_1].xyz * u_xlat3.xxx + u_xlat0.xyz;
					    }
					    u_xlat0.xyz = u_xlat0.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat1.xyz = vec3(u_xlat12) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat2.z;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendMul" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat12;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat2.xyz = vec3(u_xlat12) * u_xlat2.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat2.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat1.z;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					bool u_xlatb3;
					vec2 u_xlat4;
					float u_xlat12;
					int u_xlati12;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat1 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat1.x);
					    u_xlat0.x = float(0.0);
					    u_xlat0.y = float(0.0);
					    u_xlat0.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat1.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat3.x = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat3.x = u_xlat3.x * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat3.x = float(1.0) / u_xlat3.x;
					        u_xlat0.xyz = unity_LightColor[u_xlati_loop_1].xyz * u_xlat3.xxx + u_xlat0.xyz;
					    }
					    u_xlat0.xyz = u_xlat0.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat1.xyz = vec3(u_xlat12) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat2.z;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendMul" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat12;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat2.xyz = vec3(u_xlat12) * u_xlat2.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat2.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat1.z;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					bool u_xlatb3;
					vec2 u_xlat4;
					float u_xlat12;
					int u_xlati12;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat1 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat1.x);
					    u_xlat0.x = float(0.0);
					    u_xlat0.y = float(0.0);
					    u_xlat0.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat1.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat3.x = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat3.x = u_xlat3.x * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat3.x = float(1.0) / u_xlat3.x;
					        u_xlat0.xyz = unity_LightColor[u_xlati_loop_1].xyz * u_xlat3.xxx + u_xlat0.xyz;
					    }
					    u_xlat0.xyz = u_xlat0.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat1.xyz = vec3(u_xlat12) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat2.z;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendMul" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat12;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat2.xyz = vec3(u_xlat12) * u_xlat2.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat2.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat1.z;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					bool u_xlatb3;
					vec2 u_xlat4;
					float u_xlat12;
					int u_xlati12;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat1 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat1.x);
					    u_xlat0.x = float(0.0);
					    u_xlat0.y = float(0.0);
					    u_xlat0.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat1.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat3.x = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat3.x = u_xlat3.x * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat3.x = float(1.0) / u_xlat3.x;
					        u_xlat0.xyz = unity_LightColor[u_xlati_loop_1].xyz * u_xlat3.xxx + u_xlat0.xyz;
					    }
					    u_xlat0.xyz = u_xlat0.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat1.xyz = vec3(u_xlat12) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat2.z;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendMul" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat12;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat2.xyz = vec3(u_xlat12) * u_xlat2.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat2.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					bool u_xlatb3;
					vec2 u_xlat4;
					float u_xlat12;
					int u_xlati12;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat1 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat1.x);
					    u_xlat0.x = float(0.0);
					    u_xlat0.y = float(0.0);
					    u_xlat0.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat1.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat3.x = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat3.x = u_xlat3.x * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat3.x = float(1.0) / u_xlat3.x;
					        u_xlat0.xyz = unity_LightColor[u_xlati_loop_1].xyz * u_xlat3.xxx + u_xlat0.xyz;
					    }
					    u_xlat0.xyz = u_xlat0.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat1.xyz = vec3(u_xlat12) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendMul" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat12;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat2.xyz = vec3(u_xlat12) * u_xlat2.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat2.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					bool u_xlatb3;
					vec2 u_xlat4;
					float u_xlat12;
					int u_xlati12;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat1 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat1.x);
					    u_xlat0.x = float(0.0);
					    u_xlat0.y = float(0.0);
					    u_xlat0.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat1.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat3.x = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat3.x = u_xlat3.x * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat3.x = float(1.0) / u_xlat3.x;
					        u_xlat0.xyz = unity_LightColor[u_xlati_loop_1].xyz * u_xlat3.xxx + u_xlat0.xyz;
					    }
					    u_xlat0.xyz = u_xlat0.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat1.xyz = vec3(u_xlat12) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendMul" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat12;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat2.xyz = vec3(u_xlat12) * u_xlat2.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat2.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat1.z;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					bool u_xlatb3;
					vec2 u_xlat4;
					float u_xlat12;
					int u_xlati12;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat1 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat1.x);
					    u_xlat0.x = float(0.0);
					    u_xlat0.y = float(0.0);
					    u_xlat0.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat1.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat3.x = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat3.x = u_xlat3.x * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat3.x = float(1.0) / u_xlat3.x;
					        u_xlat0.xyz = unity_LightColor[u_xlati_loop_1].xyz * u_xlat3.xxx + u_xlat0.xyz;
					    }
					    u_xlat0.xyz = u_xlat0.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat1.xyz = vec3(u_xlat12) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat2.z;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendMul" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat12;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat2.xyz = vec3(u_xlat12) * u_xlat2.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat2.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat1.z;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					bool u_xlatb3;
					vec2 u_xlat4;
					float u_xlat12;
					int u_xlati12;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat1 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat1.x);
					    u_xlat0.x = float(0.0);
					    u_xlat0.y = float(0.0);
					    u_xlat0.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat1.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat3.x = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat3.x = u_xlat3.x * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat3.x = float(1.0) / u_xlat3.x;
					        u_xlat0.xyz = unity_LightColor[u_xlati_loop_1].xyz * u_xlat3.xxx + u_xlat0.xyz;
					    }
					    u_xlat0.xyz = u_xlat0.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat1.xyz = vec3(u_xlat12) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat2.z;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendMul" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat12;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat2.xyz = vec3(u_xlat12) * u_xlat2.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat2.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat1.z;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					bool u_xlatb3;
					vec2 u_xlat4;
					float u_xlat12;
					int u_xlati12;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat1 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat1.x);
					    u_xlat0.x = float(0.0);
					    u_xlat0.y = float(0.0);
					    u_xlat0.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat1.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat3.x = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat3.x = u_xlat3.x * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat3.x = float(1.0) / u_xlat3.x;
					        u_xlat0.xyz = unity_LightColor[u_xlati_loop_1].xyz * u_xlat3.xxx + u_xlat0.xyz;
					    }
					    u_xlat0.xyz = u_xlat0.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat1.xyz = vec3(u_xlat12) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat2.z;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendMul" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat12;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat2.xyz = vec3(u_xlat12) * u_xlat2.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat2.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat1.z;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					bool u_xlatb3;
					vec2 u_xlat4;
					float u_xlat12;
					int u_xlati12;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat1 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat1.x);
					    u_xlat0.x = float(0.0);
					    u_xlat0.y = float(0.0);
					    u_xlat0.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat1.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat3.x = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat3.x = u_xlat3.x * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat3.x = float(1.0) / u_xlat3.x;
					        u_xlat0.xyz = unity_LightColor[u_xlati_loop_1].xyz * u_xlat3.xxx + u_xlat0.xyz;
					    }
					    u_xlat0.xyz = u_xlat0.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat1.xyz = vec3(u_xlat12) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat2.z;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendMul" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat12;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat2.xyz = vec3(u_xlat12) * u_xlat2.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat2.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat1.z;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					bool u_xlatb3;
					vec2 u_xlat4;
					float u_xlat12;
					int u_xlati12;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat1 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat1.x);
					    u_xlat0.x = float(0.0);
					    u_xlat0.y = float(0.0);
					    u_xlat0.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat1.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat3.x = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat3.x = u_xlat3.x * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat3.x = float(1.0) / u_xlat3.x;
					        u_xlat0.xyz = unity_LightColor[u_xlati_loop_1].xyz * u_xlat3.xxx + u_xlat0.xyz;
					    }
					    u_xlat0.xyz = u_xlat0.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat1.xyz = vec3(u_xlat12) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat2.z;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendMul" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat12;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat2.xyz = vec3(u_xlat12) * u_xlat2.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat2.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat1.z;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					bool u_xlatb3;
					vec2 u_xlat4;
					float u_xlat12;
					int u_xlati12;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat1 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat1.x);
					    u_xlat0.x = float(0.0);
					    u_xlat0.y = float(0.0);
					    u_xlat0.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat1.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat3.x = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat3.x = u_xlat3.x * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat3.x = float(1.0) / u_xlat3.x;
					        u_xlat0.xyz = unity_LightColor[u_xlati_loop_1].xyz * u_xlat3.xxx + u_xlat0.xyz;
					    }
					    u_xlat0.xyz = u_xlat0.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat1.xyz = vec3(u_xlat12) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat2.z;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendMul" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec2 u_xlat4;
					int u_xlati12;
					float u_xlat13;
					bool u_xlatb13;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat0 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat1.x = float(0.0);
					    u_xlat1.y = float(0.0);
					    u_xlat1.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat13 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat13 = u_xlat13 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat13 = float(1.0) / u_xlat13;
					        u_xlat1.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat13) + u_xlat1.xyz;
					    }
					    u_xlat0.xyz = u_xlat1.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendMul" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec2 u_xlat4;
					int u_xlati12;
					float u_xlat13;
					bool u_xlatb13;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat0 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat1.x = float(0.0);
					    u_xlat1.y = float(0.0);
					    u_xlat1.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat13 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat13 = u_xlat13 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat13 = float(1.0) / u_xlat13;
					        u_xlat1.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat13) + u_xlat1.xyz;
					    }
					    u_xlat0.xyz = u_xlat1.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendMul" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec2 u_xlat4;
					int u_xlati12;
					float u_xlat13;
					bool u_xlatb13;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat0 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat1.x = float(0.0);
					    u_xlat1.y = float(0.0);
					    u_xlat1.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat13 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat13 = u_xlat13 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat13 = float(1.0) / u_xlat13;
					        u_xlat1.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat13) + u_xlat1.xyz;
					    }
					    u_xlat0.xyz = u_xlat1.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendMul" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec2 u_xlat4;
					int u_xlati12;
					float u_xlat13;
					bool u_xlatb13;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat0 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat1.x = float(0.0);
					    u_xlat1.y = float(0.0);
					    u_xlat1.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat13 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat13 = u_xlat13 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat13 = float(1.0) / u_xlat13;
					        u_xlat1.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat13) + u_xlat1.xyz;
					    }
					    u_xlat0.xyz = u_xlat1.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendMul" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec2 u_xlat4;
					int u_xlati12;
					float u_xlat13;
					bool u_xlatb13;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat0 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat1.x = float(0.0);
					    u_xlat1.y = float(0.0);
					    u_xlat1.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat13 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat13 = u_xlat13 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat13 = float(1.0) / u_xlat13;
					        u_xlat1.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat13) + u_xlat1.xyz;
					    }
					    u_xlat0.xyz = u_xlat1.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendMul" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec2 u_xlat4;
					int u_xlati12;
					float u_xlat13;
					bool u_xlatb13;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat0 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat1.x = float(0.0);
					    u_xlat1.y = float(0.0);
					    u_xlat1.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat13 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat13 = u_xlat13 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat13 = float(1.0) / u_xlat13;
					        u_xlat1.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat13) + u_xlat1.xyz;
					    }
					    u_xlat0.xyz = u_xlat1.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendMul" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec2 u_xlat4;
					int u_xlati12;
					float u_xlat13;
					bool u_xlatb13;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat0 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat1.x = float(0.0);
					    u_xlat1.y = float(0.0);
					    u_xlat1.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat13 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat13 = u_xlat13 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat13 = float(1.0) / u_xlat13;
					        u_xlat1.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat13) + u_xlat1.xyz;
					    }
					    u_xlat0.xyz = u_xlat1.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendMul" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec2 u_xlat4;
					int u_xlati12;
					float u_xlat13;
					bool u_xlatb13;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat0 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat1.x = float(0.0);
					    u_xlat1.y = float(0.0);
					    u_xlat1.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat13 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat13 = u_xlat13 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat13 = float(1.0) / u_xlat13;
					        u_xlat1.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat13) + u_xlat1.xyz;
					    }
					    u_xlat0.xyz = u_xlat1.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendMul" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec2 u_xlat4;
					int u_xlati12;
					float u_xlat13;
					bool u_xlatb13;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat0 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat1.x = float(0.0);
					    u_xlat1.y = float(0.0);
					    u_xlat1.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat13 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat13 = u_xlat13 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat13 = float(1.0) / u_xlat13;
					        u_xlat1.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat13) + u_xlat1.xyz;
					    }
					    u_xlat0.xyz = u_xlat1.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendMul" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec2 u_xlat4;
					int u_xlati12;
					float u_xlat13;
					bool u_xlatb13;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat0 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat1.x = float(0.0);
					    u_xlat1.y = float(0.0);
					    u_xlat1.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat13 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat13 = u_xlat13 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat13 = float(1.0) / u_xlat13;
					        u_xlat1.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat13) + u_xlat1.xyz;
					    }
					    u_xlat0.xyz = u_xlat1.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendMul" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec2 u_xlat4;
					int u_xlati12;
					float u_xlat13;
					bool u_xlatb13;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat0 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat1.x = float(0.0);
					    u_xlat1.y = float(0.0);
					    u_xlat1.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat13 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat13 = u_xlat13 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat13 = float(1.0) / u_xlat13;
					        u_xlat1.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat13) + u_xlat1.xyz;
					    }
					    u_xlat0.xyz = u_xlat1.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendMul" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec2 u_xlat4;
					int u_xlati12;
					float u_xlat13;
					bool u_xlatb13;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat0 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat1.x = float(0.0);
					    u_xlat1.y = float(0.0);
					    u_xlat1.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat13 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat13 = u_xlat13 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat13 = float(1.0) / u_xlat13;
					        u_xlat1.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat13) + u_xlat1.xyz;
					    }
					    u_xlat0.xyz = u_xlat1.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendMul" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec2 u_xlat4;
					int u_xlati12;
					float u_xlat13;
					bool u_xlatb13;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat0 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat1.x = float(0.0);
					    u_xlat1.y = float(0.0);
					    u_xlat1.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat13 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat13 = u_xlat13 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat13 = float(1.0) / u_xlat13;
					        u_xlat1.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat13) + u_xlat1.xyz;
					    }
					    u_xlat0.xyz = u_xlat1.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendMul" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec2 u_xlat4;
					int u_xlati12;
					float u_xlat13;
					bool u_xlatb13;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat0 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat1.x = float(0.0);
					    u_xlat1.y = float(0.0);
					    u_xlat1.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat13 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat13 = u_xlat13 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat13 = float(1.0) / u_xlat13;
					        u_xlat1.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat13) + u_xlat1.xyz;
					    }
					    u_xlat0.xyz = u_xlat1.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendMul" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec2 u_xlat4;
					int u_xlati12;
					float u_xlat13;
					bool u_xlatb13;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat0 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat1.x = float(0.0);
					    u_xlat1.y = float(0.0);
					    u_xlat1.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat13 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat13 = u_xlat13 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat13 = float(1.0) / u_xlat13;
					        u_xlat1.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat13) + u_xlat1.xyz;
					    }
					    u_xlat0.xyz = u_xlat1.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendMul" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec2 u_xlat4;
					int u_xlati12;
					float u_xlat13;
					bool u_xlatb13;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat0 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat1.x = float(0.0);
					    u_xlat1.y = float(0.0);
					    u_xlat1.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat13 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat13 = u_xlat13 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat13 = float(1.0) / u_xlat13;
					        u_xlat1.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat13) + u_xlat1.xyz;
					    }
					    u_xlat0.xyz = u_xlat1.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendMul" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat12;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat2.xyz = vec3(u_xlat12) * u_xlat2.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat2.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					bool u_xlatb3;
					vec2 u_xlat4;
					float u_xlat12;
					int u_xlati12;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat1 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat1.x);
					    u_xlat0.x = float(0.0);
					    u_xlat0.y = float(0.0);
					    u_xlat0.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat1.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat3.x = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat3.x = u_xlat3.x * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat3.x = float(1.0) / u_xlat3.x;
					        u_xlat0.xyz = unity_LightColor[u_xlati_loop_1].xyz * u_xlat3.xxx + u_xlat0.xyz;
					    }
					    u_xlat0.xyz = u_xlat0.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat1.xyz = vec3(u_xlat12) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendMul" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat12;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat2.xyz = vec3(u_xlat12) * u_xlat2.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat2.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					bool u_xlatb3;
					vec2 u_xlat4;
					float u_xlat12;
					int u_xlati12;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat1 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat1.x);
					    u_xlat0.x = float(0.0);
					    u_xlat0.y = float(0.0);
					    u_xlat0.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat1.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat3.x = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat3.x = u_xlat3.x * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat3.x = float(1.0) / u_xlat3.x;
					        u_xlat0.xyz = unity_LightColor[u_xlati_loop_1].xyz * u_xlat3.xxx + u_xlat0.xyz;
					    }
					    u_xlat0.xyz = u_xlat0.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat1.xyz = vec3(u_xlat12) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendMul" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat12;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat2.xyz = vec3(u_xlat12) * u_xlat2.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat2.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat1.z;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					bool u_xlatb3;
					vec2 u_xlat4;
					float u_xlat12;
					int u_xlati12;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat1 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat1.x);
					    u_xlat0.x = float(0.0);
					    u_xlat0.y = float(0.0);
					    u_xlat0.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat1.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat3.x = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat3.x = u_xlat3.x * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat3.x = float(1.0) / u_xlat3.x;
					        u_xlat0.xyz = unity_LightColor[u_xlati_loop_1].xyz * u_xlat3.xxx + u_xlat0.xyz;
					    }
					    u_xlat0.xyz = u_xlat0.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat1.xyz = vec3(u_xlat12) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat2.z;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendMul" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat12;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat2.xyz = vec3(u_xlat12) * u_xlat2.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat2.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat1.z;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					bool u_xlatb3;
					vec2 u_xlat4;
					float u_xlat12;
					int u_xlati12;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat1 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat1.x);
					    u_xlat0.x = float(0.0);
					    u_xlat0.y = float(0.0);
					    u_xlat0.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat1.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat3.x = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat3.x = u_xlat3.x * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat3.x = float(1.0) / u_xlat3.x;
					        u_xlat0.xyz = unity_LightColor[u_xlati_loop_1].xyz * u_xlat3.xxx + u_xlat0.xyz;
					    }
					    u_xlat0.xyz = u_xlat0.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat1.xyz = vec3(u_xlat12) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat2.z;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendMul" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat12;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat2.xyz = vec3(u_xlat12) * u_xlat2.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat2.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat1.z;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					bool u_xlatb3;
					vec2 u_xlat4;
					float u_xlat12;
					int u_xlati12;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat1 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat1.x);
					    u_xlat0.x = float(0.0);
					    u_xlat0.y = float(0.0);
					    u_xlat0.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat1.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat3.x = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat3.x = u_xlat3.x * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat3.x = float(1.0) / u_xlat3.x;
					        u_xlat0.xyz = unity_LightColor[u_xlati_loop_1].xyz * u_xlat3.xxx + u_xlat0.xyz;
					    }
					    u_xlat0.xyz = u_xlat0.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat1.xyz = vec3(u_xlat12) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat2.z;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendMul" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat12;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat2.xyz = vec3(u_xlat12) * u_xlat2.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat2.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat1.z;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					bool u_xlatb3;
					vec2 u_xlat4;
					float u_xlat12;
					int u_xlati12;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat1 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat1.x);
					    u_xlat0.x = float(0.0);
					    u_xlat0.y = float(0.0);
					    u_xlat0.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat1.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat3.x = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat3.x = u_xlat3.x * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat3.x = float(1.0) / u_xlat3.x;
					        u_xlat0.xyz = unity_LightColor[u_xlati_loop_1].xyz * u_xlat3.xxx + u_xlat0.xyz;
					    }
					    u_xlat0.xyz = u_xlat0.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat1.xyz = vec3(u_xlat12) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat2.z;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendMul" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat12;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat2.xyz = vec3(u_xlat12) * u_xlat2.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat2.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat1.z;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					bool u_xlatb3;
					vec2 u_xlat4;
					float u_xlat12;
					int u_xlati12;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat1 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat1.x);
					    u_xlat0.x = float(0.0);
					    u_xlat0.y = float(0.0);
					    u_xlat0.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat1.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat3.x = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat3.x = u_xlat3.x * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat3.x = float(1.0) / u_xlat3.x;
					        u_xlat0.xyz = unity_LightColor[u_xlati_loop_1].xyz * u_xlat3.xxx + u_xlat0.xyz;
					    }
					    u_xlat0.xyz = u_xlat0.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat1.xyz = vec3(u_xlat12) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat2.z;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendMul" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat12;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat2.xyz = vec3(u_xlat12) * u_xlat2.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat2.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat1.z;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					bool u_xlatb3;
					vec2 u_xlat4;
					float u_xlat12;
					int u_xlati12;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat1 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat1.x);
					    u_xlat0.x = float(0.0);
					    u_xlat0.y = float(0.0);
					    u_xlat0.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat1.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat3.x = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat3.x = u_xlat3.x * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat3.x = float(1.0) / u_xlat3.x;
					        u_xlat0.xyz = unity_LightColor[u_xlati_loop_1].xyz * u_xlat3.xxx + u_xlat0.xyz;
					    }
					    u_xlat0.xyz = u_xlat0.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat1.xyz = vec3(u_xlat12) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat2.z;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendMul" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat12;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat2.xyz = vec3(u_xlat12) * u_xlat2.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat2.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					bool u_xlatb3;
					vec2 u_xlat4;
					float u_xlat12;
					int u_xlati12;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat1 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat1.x);
					    u_xlat0.x = float(0.0);
					    u_xlat0.y = float(0.0);
					    u_xlat0.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat1.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat3.x = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat3.x = u_xlat3.x * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat3.x = float(1.0) / u_xlat3.x;
					        u_xlat0.xyz = unity_LightColor[u_xlati_loop_1].xyz * u_xlat3.xxx + u_xlat0.xyz;
					    }
					    u_xlat0.xyz = u_xlat0.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat1.xyz = vec3(u_xlat12) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendMul" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat12;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat2.xyz = vec3(u_xlat12) * u_xlat2.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat2.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					bool u_xlatb3;
					vec2 u_xlat4;
					float u_xlat12;
					int u_xlati12;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat1 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat1.x);
					    u_xlat0.x = float(0.0);
					    u_xlat0.y = float(0.0);
					    u_xlat0.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat1.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat3.x = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat3.x = u_xlat3.x * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat3.x = float(1.0) / u_xlat3.x;
					        u_xlat0.xyz = unity_LightColor[u_xlati_loop_1].xyz * u_xlat3.xxx + u_xlat0.xyz;
					    }
					    u_xlat0.xyz = u_xlat0.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat1.xyz = vec3(u_xlat12) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendMul" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat12;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat2.xyz = vec3(u_xlat12) * u_xlat2.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat2.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat1.z;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					bool u_xlatb3;
					vec2 u_xlat4;
					float u_xlat12;
					int u_xlati12;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat1 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat1.x);
					    u_xlat0.x = float(0.0);
					    u_xlat0.y = float(0.0);
					    u_xlat0.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat1.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat3.x = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat3.x = u_xlat3.x * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat3.x = float(1.0) / u_xlat3.x;
					        u_xlat0.xyz = unity_LightColor[u_xlati_loop_1].xyz * u_xlat3.xxx + u_xlat0.xyz;
					    }
					    u_xlat0.xyz = u_xlat0.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat1.xyz = vec3(u_xlat12) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat2.z;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendMul" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat12;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat2.xyz = vec3(u_xlat12) * u_xlat2.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat2.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat1.z;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					bool u_xlatb3;
					vec2 u_xlat4;
					float u_xlat12;
					int u_xlati12;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat1 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat1.x);
					    u_xlat0.x = float(0.0);
					    u_xlat0.y = float(0.0);
					    u_xlat0.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat1.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat3.x = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat3.x = u_xlat3.x * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat3.x = float(1.0) / u_xlat3.x;
					        u_xlat0.xyz = unity_LightColor[u_xlati_loop_1].xyz * u_xlat3.xxx + u_xlat0.xyz;
					    }
					    u_xlat0.xyz = u_xlat0.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat1.xyz = vec3(u_xlat12) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat2.z;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendMul" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat12;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat2.xyz = vec3(u_xlat12) * u_xlat2.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat2.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat1.z;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					bool u_xlatb3;
					vec2 u_xlat4;
					float u_xlat12;
					int u_xlati12;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat1 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat1.x);
					    u_xlat0.x = float(0.0);
					    u_xlat0.y = float(0.0);
					    u_xlat0.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat1.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat3.x = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat3.x = u_xlat3.x * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat3.x = float(1.0) / u_xlat3.x;
					        u_xlat0.xyz = unity_LightColor[u_xlati_loop_1].xyz * u_xlat3.xxx + u_xlat0.xyz;
					    }
					    u_xlat0.xyz = u_xlat0.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat1.xyz = vec3(u_xlat12) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat2.z;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendMul" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat12;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat2.xyz = vec3(u_xlat12) * u_xlat2.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat2.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat1.z;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					bool u_xlatb3;
					vec2 u_xlat4;
					float u_xlat12;
					int u_xlati12;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat1 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat1.x);
					    u_xlat0.x = float(0.0);
					    u_xlat0.y = float(0.0);
					    u_xlat0.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat1.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat3.x = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat3.x = u_xlat3.x * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat3.x = float(1.0) / u_xlat3.x;
					        u_xlat0.xyz = unity_LightColor[u_xlati_loop_1].xyz * u_xlat3.xxx + u_xlat0.xyz;
					    }
					    u_xlat0.xyz = u_xlat0.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat1.xyz = vec3(u_xlat12) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat2.z;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendMul" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat12;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat2.xyz = vec3(u_xlat12) * u_xlat2.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat2.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat1.z;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					bool u_xlatb3;
					vec2 u_xlat4;
					float u_xlat12;
					int u_xlati12;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat1 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat1.x);
					    u_xlat0.x = float(0.0);
					    u_xlat0.y = float(0.0);
					    u_xlat0.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat1.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat3.x = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat3.x = u_xlat3.x * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat3.x = float(1.0) / u_xlat3.x;
					        u_xlat0.xyz = unity_LightColor[u_xlati_loop_1].xyz * u_xlat3.xxx + u_xlat0.xyz;
					    }
					    u_xlat0.xyz = u_xlat0.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat1.xyz = vec3(u_xlat12) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat2.z;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendMul" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat12;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat2.xyz = vec3(u_xlat12) * u_xlat2.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat2.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat1.z;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					bool u_xlatb3;
					vec2 u_xlat4;
					float u_xlat12;
					int u_xlati12;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat1 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat1.x);
					    u_xlat0.x = float(0.0);
					    u_xlat0.y = float(0.0);
					    u_xlat0.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat1.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat3.x = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat3.x = u_xlat3.x * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat3.x = float(1.0) / u_xlat3.x;
					        u_xlat0.xyz = unity_LightColor[u_xlati_loop_1].xyz * u_xlat3.xxx + u_xlat0.xyz;
					    }
					    u_xlat0.xyz = u_xlat0.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat1.xyz = vec3(u_xlat12) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat2.z;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendMul" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec2 u_xlat4;
					int u_xlati12;
					float u_xlat13;
					bool u_xlatb13;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat0 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat1.x = float(0.0);
					    u_xlat1.y = float(0.0);
					    u_xlat1.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat13 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat13 = u_xlat13 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat13 = float(1.0) / u_xlat13;
					        u_xlat1.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat13) + u_xlat1.xyz;
					    }
					    u_xlat0.xyz = u_xlat1.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendMul" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec2 u_xlat4;
					int u_xlati12;
					float u_xlat13;
					bool u_xlatb13;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat0 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat1.x = float(0.0);
					    u_xlat1.y = float(0.0);
					    u_xlat1.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat13 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat13 = u_xlat13 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat13 = float(1.0) / u_xlat13;
					        u_xlat1.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat13) + u_xlat1.xyz;
					    }
					    u_xlat0.xyz = u_xlat1.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendMul" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec2 u_xlat4;
					int u_xlati12;
					float u_xlat13;
					bool u_xlatb13;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat0 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat1.x = float(0.0);
					    u_xlat1.y = float(0.0);
					    u_xlat1.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat13 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat13 = u_xlat13 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat13 = float(1.0) / u_xlat13;
					        u_xlat1.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat13) + u_xlat1.xyz;
					    }
					    u_xlat0.xyz = u_xlat1.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendMul" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec2 u_xlat4;
					int u_xlati12;
					float u_xlat13;
					bool u_xlatb13;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat0 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat1.x = float(0.0);
					    u_xlat1.y = float(0.0);
					    u_xlat1.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat13 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat13 = u_xlat13 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat13 = float(1.0) / u_xlat13;
					        u_xlat1.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat13) + u_xlat1.xyz;
					    }
					    u_xlat0.xyz = u_xlat1.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendMul" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec2 u_xlat4;
					int u_xlati12;
					float u_xlat13;
					bool u_xlatb13;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat0 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat1.x = float(0.0);
					    u_xlat1.y = float(0.0);
					    u_xlat1.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat13 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat13 = u_xlat13 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat13 = float(1.0) / u_xlat13;
					        u_xlat1.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat13) + u_xlat1.xyz;
					    }
					    u_xlat0.xyz = u_xlat1.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendMul" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec2 u_xlat4;
					int u_xlati12;
					float u_xlat13;
					bool u_xlatb13;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat0 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat1.x = float(0.0);
					    u_xlat1.y = float(0.0);
					    u_xlat1.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat13 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat13 = u_xlat13 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat13 = float(1.0) / u_xlat13;
					        u_xlat1.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat13) + u_xlat1.xyz;
					    }
					    u_xlat0.xyz = u_xlat1.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendMul" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec2 u_xlat4;
					int u_xlati12;
					float u_xlat13;
					bool u_xlatb13;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat0 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat1.x = float(0.0);
					    u_xlat1.y = float(0.0);
					    u_xlat1.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat13 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat13 = u_xlat13 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat13 = float(1.0) / u_xlat13;
					        u_xlat1.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat13) + u_xlat1.xyz;
					    }
					    u_xlat0.xyz = u_xlat1.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendMul" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec2 u_xlat4;
					int u_xlati12;
					float u_xlat13;
					bool u_xlatb13;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat0 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat1.x = float(0.0);
					    u_xlat1.y = float(0.0);
					    u_xlat1.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat13 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat13 = u_xlat13 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat13 = float(1.0) / u_xlat13;
					        u_xlat1.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat13) + u_xlat1.xyz;
					    }
					    u_xlat0.xyz = u_xlat1.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendMul" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec2 u_xlat4;
					int u_xlati12;
					float u_xlat13;
					bool u_xlatb13;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat0 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat1.x = float(0.0);
					    u_xlat1.y = float(0.0);
					    u_xlat1.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat13 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat13 = u_xlat13 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat13 = float(1.0) / u_xlat13;
					        u_xlat1.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat13) + u_xlat1.xyz;
					    }
					    u_xlat0.xyz = u_xlat1.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendMul" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec2 u_xlat4;
					int u_xlati12;
					float u_xlat13;
					bool u_xlatb13;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat0 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat1.x = float(0.0);
					    u_xlat1.y = float(0.0);
					    u_xlat1.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat13 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat13 = u_xlat13 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat13 = float(1.0) / u_xlat13;
					        u_xlat1.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat13) + u_xlat1.xyz;
					    }
					    u_xlat0.xyz = u_xlat1.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendMul" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec2 u_xlat4;
					int u_xlati12;
					float u_xlat13;
					bool u_xlatb13;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat0 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat1.x = float(0.0);
					    u_xlat1.y = float(0.0);
					    u_xlat1.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat13 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat13 = u_xlat13 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat13 = float(1.0) / u_xlat13;
					        u_xlat1.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat13) + u_xlat1.xyz;
					    }
					    u_xlat0.xyz = u_xlat1.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendMul" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec2 u_xlat4;
					int u_xlati12;
					float u_xlat13;
					bool u_xlatb13;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat0 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat1.x = float(0.0);
					    u_xlat1.y = float(0.0);
					    u_xlat1.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat13 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat13 = u_xlat13 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat13 = float(1.0) / u_xlat13;
					        u_xlat1.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat13) + u_xlat1.xyz;
					    }
					    u_xlat0.xyz = u_xlat1.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendMul" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec2 u_xlat4;
					int u_xlati12;
					float u_xlat13;
					bool u_xlatb13;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat0 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat1.x = float(0.0);
					    u_xlat1.y = float(0.0);
					    u_xlat1.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat13 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat13 = u_xlat13 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat13 = float(1.0) / u_xlat13;
					        u_xlat1.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat13) + u_xlat1.xyz;
					    }
					    u_xlat0.xyz = u_xlat1.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendMul" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec2 u_xlat4;
					int u_xlati12;
					float u_xlat13;
					bool u_xlatb13;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat0 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat1.x = float(0.0);
					    u_xlat1.y = float(0.0);
					    u_xlat1.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat13 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat13 = u_xlat13 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat13 = float(1.0) / u_xlat13;
					        u_xlat1.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat13) + u_xlat1.xyz;
					    }
					    u_xlat0.xyz = u_xlat1.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendMul" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec2 u_xlat4;
					int u_xlati12;
					float u_xlat13;
					bool u_xlatb13;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat0 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat1.x = float(0.0);
					    u_xlat1.y = float(0.0);
					    u_xlat1.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat13 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat13 = u_xlat13 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat13 = float(1.0) / u_xlat13;
					        u_xlat1.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat13) + u_xlat1.xyz;
					    }
					    u_xlat0.xyz = u_xlat1.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendMul" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec2 u_xlat4;
					int u_xlati12;
					float u_xlat13;
					bool u_xlatb13;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat0 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat1.x = float(0.0);
					    u_xlat1.y = float(0.0);
					    u_xlat1.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat13 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat13 = u_xlat13 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat13 = float(1.0) / u_xlat13;
					        u_xlat1.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat13) + u_xlat1.xyz;
					    }
					    u_xlat0.xyz = u_xlat1.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendMul" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat12;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat2.xyz = vec3(u_xlat12) * u_xlat2.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat2.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					bool u_xlatb3;
					vec2 u_xlat4;
					float u_xlat12;
					int u_xlati12;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat1 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat1.x);
					    u_xlat0.x = float(0.0);
					    u_xlat0.y = float(0.0);
					    u_xlat0.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat1.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat3.x = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat3.x = u_xlat3.x * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat3.x = float(1.0) / u_xlat3.x;
					        u_xlat0.xyz = unity_LightColor[u_xlati_loop_1].xyz * u_xlat3.xxx + u_xlat0.xyz;
					    }
					    u_xlat0.xyz = u_xlat0.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat1.xyz = vec3(u_xlat12) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendMul" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat12;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat2.xyz = vec3(u_xlat12) * u_xlat2.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat2.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					bool u_xlatb3;
					vec2 u_xlat4;
					float u_xlat12;
					int u_xlati12;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat1 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat1.x);
					    u_xlat0.x = float(0.0);
					    u_xlat0.y = float(0.0);
					    u_xlat0.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat1.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat3.x = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat3.x = u_xlat3.x * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat3.x = float(1.0) / u_xlat3.x;
					        u_xlat0.xyz = unity_LightColor[u_xlati_loop_1].xyz * u_xlat3.xxx + u_xlat0.xyz;
					    }
					    u_xlat0.xyz = u_xlat0.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat1.xyz = vec3(u_xlat12) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendMul" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat12;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat2.xyz = vec3(u_xlat12) * u_xlat2.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat2.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat1.z;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					bool u_xlatb3;
					vec2 u_xlat4;
					float u_xlat12;
					int u_xlati12;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat1 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat1.x);
					    u_xlat0.x = float(0.0);
					    u_xlat0.y = float(0.0);
					    u_xlat0.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat1.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat3.x = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat3.x = u_xlat3.x * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat3.x = float(1.0) / u_xlat3.x;
					        u_xlat0.xyz = unity_LightColor[u_xlati_loop_1].xyz * u_xlat3.xxx + u_xlat0.xyz;
					    }
					    u_xlat0.xyz = u_xlat0.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat1.xyz = vec3(u_xlat12) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat2.z;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendMul" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat12;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat2.xyz = vec3(u_xlat12) * u_xlat2.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat2.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat1.z;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					bool u_xlatb3;
					vec2 u_xlat4;
					float u_xlat12;
					int u_xlati12;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat1 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat1.x);
					    u_xlat0.x = float(0.0);
					    u_xlat0.y = float(0.0);
					    u_xlat0.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat1.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat3.x = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat3.x = u_xlat3.x * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat3.x = float(1.0) / u_xlat3.x;
					        u_xlat0.xyz = unity_LightColor[u_xlati_loop_1].xyz * u_xlat3.xxx + u_xlat0.xyz;
					    }
					    u_xlat0.xyz = u_xlat0.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat1.xyz = vec3(u_xlat12) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat2.z;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendMul" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat12;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat2.xyz = vec3(u_xlat12) * u_xlat2.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat2.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat1.z;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					bool u_xlatb3;
					vec2 u_xlat4;
					float u_xlat12;
					int u_xlati12;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat1 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat1.x);
					    u_xlat0.x = float(0.0);
					    u_xlat0.y = float(0.0);
					    u_xlat0.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat1.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat3.x = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat3.x = u_xlat3.x * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat3.x = float(1.0) / u_xlat3.x;
					        u_xlat0.xyz = unity_LightColor[u_xlati_loop_1].xyz * u_xlat3.xxx + u_xlat0.xyz;
					    }
					    u_xlat0.xyz = u_xlat0.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat1.xyz = vec3(u_xlat12) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat2.z;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendMul" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat12;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat2.xyz = vec3(u_xlat12) * u_xlat2.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat2.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat1.z;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					bool u_xlatb3;
					vec2 u_xlat4;
					float u_xlat12;
					int u_xlati12;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat1 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat1.x);
					    u_xlat0.x = float(0.0);
					    u_xlat0.y = float(0.0);
					    u_xlat0.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat1.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat3.x = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat3.x = u_xlat3.x * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat3.x = float(1.0) / u_xlat3.x;
					        u_xlat0.xyz = unity_LightColor[u_xlati_loop_1].xyz * u_xlat3.xxx + u_xlat0.xyz;
					    }
					    u_xlat0.xyz = u_xlat0.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat1.xyz = vec3(u_xlat12) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat2.z;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendMul" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat12;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat2.xyz = vec3(u_xlat12) * u_xlat2.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat2.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat1.z;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					bool u_xlatb3;
					vec2 u_xlat4;
					float u_xlat12;
					int u_xlati12;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat1 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat1.x);
					    u_xlat0.x = float(0.0);
					    u_xlat0.y = float(0.0);
					    u_xlat0.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat1.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat3.x = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat3.x = u_xlat3.x * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat3.x = float(1.0) / u_xlat3.x;
					        u_xlat0.xyz = unity_LightColor[u_xlati_loop_1].xyz * u_xlat3.xxx + u_xlat0.xyz;
					    }
					    u_xlat0.xyz = u_xlat0.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat1.xyz = vec3(u_xlat12) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat2.z;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendMul" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat12;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat2.xyz = vec3(u_xlat12) * u_xlat2.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat2.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat1.z;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					bool u_xlatb3;
					vec2 u_xlat4;
					float u_xlat12;
					int u_xlati12;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat1 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat1.x);
					    u_xlat0.x = float(0.0);
					    u_xlat0.y = float(0.0);
					    u_xlat0.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat1.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat3.x = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat3.x = u_xlat3.x * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat3.x = float(1.0) / u_xlat3.x;
					        u_xlat0.xyz = unity_LightColor[u_xlati_loop_1].xyz * u_xlat3.xxx + u_xlat0.xyz;
					    }
					    u_xlat0.xyz = u_xlat0.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat1.xyz = vec3(u_xlat12) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat2.z;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendMul" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat12;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat2.xyz = vec3(u_xlat12) * u_xlat2.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat2.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					bool u_xlatb3;
					vec2 u_xlat4;
					float u_xlat12;
					int u_xlati12;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat1 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat1.x);
					    u_xlat0.x = float(0.0);
					    u_xlat0.y = float(0.0);
					    u_xlat0.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat1.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat3.x = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat3.x = u_xlat3.x * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat3.x = float(1.0) / u_xlat3.x;
					        u_xlat0.xyz = unity_LightColor[u_xlati_loop_1].xyz * u_xlat3.xxx + u_xlat0.xyz;
					    }
					    u_xlat0.xyz = u_xlat0.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat1.xyz = vec3(u_xlat12) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendMul" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat12;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat2.xyz = vec3(u_xlat12) * u_xlat2.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat2.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					bool u_xlatb3;
					vec2 u_xlat4;
					float u_xlat12;
					int u_xlati12;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat1 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat1.x);
					    u_xlat0.x = float(0.0);
					    u_xlat0.y = float(0.0);
					    u_xlat0.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat1.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat3.x = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat3.x = u_xlat3.x * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat3.x = float(1.0) / u_xlat3.x;
					        u_xlat0.xyz = unity_LightColor[u_xlati_loop_1].xyz * u_xlat3.xxx + u_xlat0.xyz;
					    }
					    u_xlat0.xyz = u_xlat0.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat1.xyz = vec3(u_xlat12) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendMul" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat12;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat2.xyz = vec3(u_xlat12) * u_xlat2.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat2.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat1.z;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					bool u_xlatb3;
					vec2 u_xlat4;
					float u_xlat12;
					int u_xlati12;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat1 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat1.x);
					    u_xlat0.x = float(0.0);
					    u_xlat0.y = float(0.0);
					    u_xlat0.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat1.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat3.x = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat3.x = u_xlat3.x * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat3.x = float(1.0) / u_xlat3.x;
					        u_xlat0.xyz = unity_LightColor[u_xlati_loop_1].xyz * u_xlat3.xxx + u_xlat0.xyz;
					    }
					    u_xlat0.xyz = u_xlat0.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat1.xyz = vec3(u_xlat12) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat2.z;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendMul" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat12;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat2.xyz = vec3(u_xlat12) * u_xlat2.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat2.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat1.z;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					bool u_xlatb3;
					vec2 u_xlat4;
					float u_xlat12;
					int u_xlati12;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat1 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat1.x);
					    u_xlat0.x = float(0.0);
					    u_xlat0.y = float(0.0);
					    u_xlat0.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat1.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat3.x = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat3.x = u_xlat3.x * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat3.x = float(1.0) / u_xlat3.x;
					        u_xlat0.xyz = unity_LightColor[u_xlati_loop_1].xyz * u_xlat3.xxx + u_xlat0.xyz;
					    }
					    u_xlat0.xyz = u_xlat0.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat1.xyz = vec3(u_xlat12) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat2.z;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendMul" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat12;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat2.xyz = vec3(u_xlat12) * u_xlat2.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat2.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat1.z;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					bool u_xlatb3;
					vec2 u_xlat4;
					float u_xlat12;
					int u_xlati12;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat1 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat1.x);
					    u_xlat0.x = float(0.0);
					    u_xlat0.y = float(0.0);
					    u_xlat0.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat1.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat3.x = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat3.x = u_xlat3.x * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat3.x = float(1.0) / u_xlat3.x;
					        u_xlat0.xyz = unity_LightColor[u_xlati_loop_1].xyz * u_xlat3.xxx + u_xlat0.xyz;
					    }
					    u_xlat0.xyz = u_xlat0.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat1.xyz = vec3(u_xlat12) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat2.z;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendMul" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat12;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat2.xyz = vec3(u_xlat12) * u_xlat2.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat2.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat1.z;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					bool u_xlatb3;
					vec2 u_xlat4;
					float u_xlat12;
					int u_xlati12;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat1 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat1.x);
					    u_xlat0.x = float(0.0);
					    u_xlat0.y = float(0.0);
					    u_xlat0.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat1.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat3.x = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat3.x = u_xlat3.x * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat3.x = float(1.0) / u_xlat3.x;
					        u_xlat0.xyz = unity_LightColor[u_xlati_loop_1].xyz * u_xlat3.xxx + u_xlat0.xyz;
					    }
					    u_xlat0.xyz = u_xlat0.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat1.xyz = vec3(u_xlat12) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat2.z;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendMul" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat12;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat2.xyz = vec3(u_xlat12) * u_xlat2.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat2.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat1.z;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					bool u_xlatb3;
					vec2 u_xlat4;
					float u_xlat12;
					int u_xlati12;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat1 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat1.x);
					    u_xlat0.x = float(0.0);
					    u_xlat0.y = float(0.0);
					    u_xlat0.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat1.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat3.x = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat3.x = u_xlat3.x * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat3.x = float(1.0) / u_xlat3.x;
					        u_xlat0.xyz = unity_LightColor[u_xlati_loop_1].xyz * u_xlat3.xxx + u_xlat0.xyz;
					    }
					    u_xlat0.xyz = u_xlat0.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat1.xyz = vec3(u_xlat12) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat2.z;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendMul" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat12;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat2.xyz = vec3(u_xlat12) * u_xlat2.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat2.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat1.z;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					bool u_xlatb3;
					vec2 u_xlat4;
					float u_xlat12;
					int u_xlati12;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat1 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat1.x);
					    u_xlat0.x = float(0.0);
					    u_xlat0.y = float(0.0);
					    u_xlat0.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat1.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat3.x = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat3.x = u_xlat3.x * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat3.x = float(1.0) / u_xlat3.x;
					        u_xlat0.xyz = unity_LightColor[u_xlati_loop_1].xyz * u_xlat3.xxx + u_xlat0.xyz;
					    }
					    u_xlat0.xyz = u_xlat0.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat1.xyz = vec3(u_xlat12) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat2.z;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendMul" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec2 u_xlat4;
					int u_xlati12;
					float u_xlat13;
					bool u_xlatb13;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat0 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat1.x = float(0.0);
					    u_xlat1.y = float(0.0);
					    u_xlat1.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat13 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat13 = u_xlat13 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat13 = float(1.0) / u_xlat13;
					        u_xlat1.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat13) + u_xlat1.xyz;
					    }
					    u_xlat0.xyz = u_xlat1.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendMul" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec2 u_xlat4;
					int u_xlati12;
					float u_xlat13;
					bool u_xlatb13;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat0 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat1.x = float(0.0);
					    u_xlat1.y = float(0.0);
					    u_xlat1.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat13 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat13 = u_xlat13 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat13 = float(1.0) / u_xlat13;
					        u_xlat1.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat13) + u_xlat1.xyz;
					    }
					    u_xlat0.xyz = u_xlat1.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendMul" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec2 u_xlat4;
					int u_xlati12;
					float u_xlat13;
					bool u_xlatb13;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat0 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat1.x = float(0.0);
					    u_xlat1.y = float(0.0);
					    u_xlat1.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat13 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat13 = u_xlat13 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat13 = float(1.0) / u_xlat13;
					        u_xlat1.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat13) + u_xlat1.xyz;
					    }
					    u_xlat0.xyz = u_xlat1.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendMul" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec2 u_xlat4;
					int u_xlati12;
					float u_xlat13;
					bool u_xlatb13;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat0 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat1.x = float(0.0);
					    u_xlat1.y = float(0.0);
					    u_xlat1.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat13 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat13 = u_xlat13 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat13 = float(1.0) / u_xlat13;
					        u_xlat1.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat13) + u_xlat1.xyz;
					    }
					    u_xlat0.xyz = u_xlat1.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendMul" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec2 u_xlat4;
					int u_xlati12;
					float u_xlat13;
					bool u_xlatb13;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat0 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat1.x = float(0.0);
					    u_xlat1.y = float(0.0);
					    u_xlat1.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat13 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat13 = u_xlat13 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat13 = float(1.0) / u_xlat13;
					        u_xlat1.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat13) + u_xlat1.xyz;
					    }
					    u_xlat0.xyz = u_xlat1.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendMul" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec2 u_xlat4;
					int u_xlati12;
					float u_xlat13;
					bool u_xlatb13;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat0 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat1.x = float(0.0);
					    u_xlat1.y = float(0.0);
					    u_xlat1.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat13 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat13 = u_xlat13 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat13 = float(1.0) / u_xlat13;
					        u_xlat1.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat13) + u_xlat1.xyz;
					    }
					    u_xlat0.xyz = u_xlat1.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendMul" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec2 u_xlat4;
					int u_xlati12;
					float u_xlat13;
					bool u_xlatb13;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat0 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat1.x = float(0.0);
					    u_xlat1.y = float(0.0);
					    u_xlat1.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat13 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat13 = u_xlat13 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat13 = float(1.0) / u_xlat13;
					        u_xlat1.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat13) + u_xlat1.xyz;
					    }
					    u_xlat0.xyz = u_xlat1.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendMul" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec2 u_xlat4;
					int u_xlati12;
					float u_xlat13;
					bool u_xlatb13;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat0 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat1.x = float(0.0);
					    u_xlat1.y = float(0.0);
					    u_xlat1.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat13 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat13 = u_xlat13 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat13 = float(1.0) / u_xlat13;
					        u_xlat1.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat13) + u_xlat1.xyz;
					    }
					    u_xlat0.xyz = u_xlat1.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendMul" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec2 u_xlat4;
					int u_xlati12;
					float u_xlat13;
					bool u_xlatb13;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat0 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat1.x = float(0.0);
					    u_xlat1.y = float(0.0);
					    u_xlat1.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat13 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat13 = u_xlat13 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat13 = float(1.0) / u_xlat13;
					        u_xlat1.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat13) + u_xlat1.xyz;
					    }
					    u_xlat0.xyz = u_xlat1.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendMul" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec2 u_xlat4;
					int u_xlati12;
					float u_xlat13;
					bool u_xlatb13;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat0 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat1.x = float(0.0);
					    u_xlat1.y = float(0.0);
					    u_xlat1.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat13 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat13 = u_xlat13 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat13 = float(1.0) / u_xlat13;
					        u_xlat1.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat13) + u_xlat1.xyz;
					    }
					    u_xlat0.xyz = u_xlat1.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendMul" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec2 u_xlat4;
					int u_xlati12;
					float u_xlat13;
					bool u_xlatb13;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat0 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat1.x = float(0.0);
					    u_xlat1.y = float(0.0);
					    u_xlat1.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat13 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat13 = u_xlat13 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat13 = float(1.0) / u_xlat13;
					        u_xlat1.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat13) + u_xlat1.xyz;
					    }
					    u_xlat0.xyz = u_xlat1.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendMul" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec2 u_xlat4;
					int u_xlati12;
					float u_xlat13;
					bool u_xlatb13;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat0 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat1.x = float(0.0);
					    u_xlat1.y = float(0.0);
					    u_xlat1.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat13 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat13 = u_xlat13 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat13 = float(1.0) / u_xlat13;
					        u_xlat1.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat13) + u_xlat1.xyz;
					    }
					    u_xlat0.xyz = u_xlat1.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendMul" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec2 u_xlat4;
					int u_xlati12;
					float u_xlat13;
					bool u_xlatb13;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat0 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat1.x = float(0.0);
					    u_xlat1.y = float(0.0);
					    u_xlat1.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat13 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat13 = u_xlat13 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat13 = float(1.0) / u_xlat13;
					        u_xlat1.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat13) + u_xlat1.xyz;
					    }
					    u_xlat0.xyz = u_xlat1.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendMul" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec2 u_xlat4;
					int u_xlati12;
					float u_xlat13;
					bool u_xlatb13;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat0 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat1.x = float(0.0);
					    u_xlat1.y = float(0.0);
					    u_xlat1.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat13 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat13 = u_xlat13 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat13 = float(1.0) / u_xlat13;
					        u_xlat1.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat13) + u_xlat1.xyz;
					    }
					    u_xlat0.xyz = u_xlat1.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendMul" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec2 u_xlat4;
					int u_xlati12;
					float u_xlat13;
					bool u_xlatb13;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat0 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat1.x = float(0.0);
					    u_xlat1.y = float(0.0);
					    u_xlat1.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat13 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat13 = u_xlat13 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat13 = float(1.0) / u_xlat13;
					        u_xlat1.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat13) + u_xlat1.xyz;
					    }
					    u_xlat0.xyz = u_xlat1.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendMul" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec2 u_xlat4;
					int u_xlati12;
					float u_xlat13;
					bool u_xlatb13;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat0 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat1.x = float(0.0);
					    u_xlat1.y = float(0.0);
					    u_xlat1.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat13 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat13 = u_xlat13 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat13 = float(1.0) / u_xlat13;
					        u_xlat1.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat13) + u_xlat1.xyz;
					    }
					    u_xlat0.xyz = u_xlat1.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendMul" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat12;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat2.xyz = vec3(u_xlat12) * u_xlat2.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat2.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					bool u_xlatb3;
					vec2 u_xlat4;
					float u_xlat12;
					int u_xlati12;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat1 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat1.x);
					    u_xlat0.x = float(0.0);
					    u_xlat0.y = float(0.0);
					    u_xlat0.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat1.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat3.x = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat3.x = u_xlat3.x * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat3.x = float(1.0) / u_xlat3.x;
					        u_xlat0.xyz = unity_LightColor[u_xlati_loop_1].xyz * u_xlat3.xxx + u_xlat0.xyz;
					    }
					    u_xlat0.xyz = u_xlat0.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat1.xyz = vec3(u_xlat12) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendMul" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat12;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat2.xyz = vec3(u_xlat12) * u_xlat2.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat2.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					bool u_xlatb3;
					vec2 u_xlat4;
					float u_xlat12;
					int u_xlati12;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat1 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat1.x);
					    u_xlat0.x = float(0.0);
					    u_xlat0.y = float(0.0);
					    u_xlat0.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat1.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat3.x = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat3.x = u_xlat3.x * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat3.x = float(1.0) / u_xlat3.x;
					        u_xlat0.xyz = unity_LightColor[u_xlati_loop_1].xyz * u_xlat3.xxx + u_xlat0.xyz;
					    }
					    u_xlat0.xyz = u_xlat0.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat1.xyz = vec3(u_xlat12) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendMul" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat12;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat2.xyz = vec3(u_xlat12) * u_xlat2.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat2.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat1.z;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					bool u_xlatb3;
					vec2 u_xlat4;
					float u_xlat12;
					int u_xlati12;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat1 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat1.x);
					    u_xlat0.x = float(0.0);
					    u_xlat0.y = float(0.0);
					    u_xlat0.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat1.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat3.x = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat3.x = u_xlat3.x * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat3.x = float(1.0) / u_xlat3.x;
					        u_xlat0.xyz = unity_LightColor[u_xlati_loop_1].xyz * u_xlat3.xxx + u_xlat0.xyz;
					    }
					    u_xlat0.xyz = u_xlat0.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat1.xyz = vec3(u_xlat12) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat2.z;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendMul" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat12;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat2.xyz = vec3(u_xlat12) * u_xlat2.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat2.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat1.z;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					bool u_xlatb3;
					vec2 u_xlat4;
					float u_xlat12;
					int u_xlati12;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat1 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat1.x);
					    u_xlat0.x = float(0.0);
					    u_xlat0.y = float(0.0);
					    u_xlat0.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat1.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat3.x = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat3.x = u_xlat3.x * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat3.x = float(1.0) / u_xlat3.x;
					        u_xlat0.xyz = unity_LightColor[u_xlati_loop_1].xyz * u_xlat3.xxx + u_xlat0.xyz;
					    }
					    u_xlat0.xyz = u_xlat0.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat1.xyz = vec3(u_xlat12) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat2.z;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendMul" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat12;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat2.xyz = vec3(u_xlat12) * u_xlat2.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat2.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat1.z;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					bool u_xlatb3;
					vec2 u_xlat4;
					float u_xlat12;
					int u_xlati12;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat1 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat1.x);
					    u_xlat0.x = float(0.0);
					    u_xlat0.y = float(0.0);
					    u_xlat0.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat1.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat3.x = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat3.x = u_xlat3.x * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat3.x = float(1.0) / u_xlat3.x;
					        u_xlat0.xyz = unity_LightColor[u_xlati_loop_1].xyz * u_xlat3.xxx + u_xlat0.xyz;
					    }
					    u_xlat0.xyz = u_xlat0.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat1.xyz = vec3(u_xlat12) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat2.z;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendMul" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat12;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat2.xyz = vec3(u_xlat12) * u_xlat2.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat2.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat1.z;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					bool u_xlatb3;
					vec2 u_xlat4;
					float u_xlat12;
					int u_xlati12;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat1 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat1.x);
					    u_xlat0.x = float(0.0);
					    u_xlat0.y = float(0.0);
					    u_xlat0.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat1.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat3.x = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat3.x = u_xlat3.x * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat3.x = float(1.0) / u_xlat3.x;
					        u_xlat0.xyz = unity_LightColor[u_xlati_loop_1].xyz * u_xlat3.xxx + u_xlat0.xyz;
					    }
					    u_xlat0.xyz = u_xlat0.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat1.xyz = vec3(u_xlat12) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat2.z;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendMul" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat12;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat2.xyz = vec3(u_xlat12) * u_xlat2.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat2.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat1.z;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					bool u_xlatb3;
					vec2 u_xlat4;
					float u_xlat12;
					int u_xlati12;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat1 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat1.x);
					    u_xlat0.x = float(0.0);
					    u_xlat0.y = float(0.0);
					    u_xlat0.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat1.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat3.x = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat3.x = u_xlat3.x * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat3.x = float(1.0) / u_xlat3.x;
					        u_xlat0.xyz = unity_LightColor[u_xlati_loop_1].xyz * u_xlat3.xxx + u_xlat0.xyz;
					    }
					    u_xlat0.xyz = u_xlat0.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat1.xyz = vec3(u_xlat12) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat2.z;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendMul" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat12;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat2.xyz = vec3(u_xlat12) * u_xlat2.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat2.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat1.z;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					bool u_xlatb3;
					vec2 u_xlat4;
					float u_xlat12;
					int u_xlati12;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat1 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat1.x);
					    u_xlat0.x = float(0.0);
					    u_xlat0.y = float(0.0);
					    u_xlat0.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat1.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat3.x = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat3.x = u_xlat3.x * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat3.x = float(1.0) / u_xlat3.x;
					        u_xlat0.xyz = unity_LightColor[u_xlati_loop_1].xyz * u_xlat3.xxx + u_xlat0.xyz;
					    }
					    u_xlat0.xyz = u_xlat0.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat1.xyz = vec3(u_xlat12) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat2.z;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendMul" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat12;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat2.xyz = vec3(u_xlat12) * u_xlat2.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat2.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					bool u_xlatb3;
					vec2 u_xlat4;
					float u_xlat12;
					int u_xlati12;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat1 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat1.x);
					    u_xlat0.x = float(0.0);
					    u_xlat0.y = float(0.0);
					    u_xlat0.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat1.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat3.x = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat3.x = u_xlat3.x * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat3.x = float(1.0) / u_xlat3.x;
					        u_xlat0.xyz = unity_LightColor[u_xlati_loop_1].xyz * u_xlat3.xxx + u_xlat0.xyz;
					    }
					    u_xlat0.xyz = u_xlat0.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat1.xyz = vec3(u_xlat12) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendMul" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat12;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat2.xyz = vec3(u_xlat12) * u_xlat2.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat2.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					bool u_xlatb3;
					vec2 u_xlat4;
					float u_xlat12;
					int u_xlati12;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat1 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat1.x);
					    u_xlat0.x = float(0.0);
					    u_xlat0.y = float(0.0);
					    u_xlat0.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat1.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat3.x = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat3.x = u_xlat3.x * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat3.x = float(1.0) / u_xlat3.x;
					        u_xlat0.xyz = unity_LightColor[u_xlati_loop_1].xyz * u_xlat3.xxx + u_xlat0.xyz;
					    }
					    u_xlat0.xyz = u_xlat0.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat1.xyz = vec3(u_xlat12) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendMul" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat12;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat2.xyz = vec3(u_xlat12) * u_xlat2.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat2.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat1.z;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					bool u_xlatb3;
					vec2 u_xlat4;
					float u_xlat12;
					int u_xlati12;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat1 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat1.x);
					    u_xlat0.x = float(0.0);
					    u_xlat0.y = float(0.0);
					    u_xlat0.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat1.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat3.x = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat3.x = u_xlat3.x * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat3.x = float(1.0) / u_xlat3.x;
					        u_xlat0.xyz = unity_LightColor[u_xlati_loop_1].xyz * u_xlat3.xxx + u_xlat0.xyz;
					    }
					    u_xlat0.xyz = u_xlat0.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat1.xyz = vec3(u_xlat12) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat2.z;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendMul" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat12;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat2.xyz = vec3(u_xlat12) * u_xlat2.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat2.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat1.z;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					bool u_xlatb3;
					vec2 u_xlat4;
					float u_xlat12;
					int u_xlati12;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat1 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat1.x);
					    u_xlat0.x = float(0.0);
					    u_xlat0.y = float(0.0);
					    u_xlat0.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat1.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat3.x = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat3.x = u_xlat3.x * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat3.x = float(1.0) / u_xlat3.x;
					        u_xlat0.xyz = unity_LightColor[u_xlati_loop_1].xyz * u_xlat3.xxx + u_xlat0.xyz;
					    }
					    u_xlat0.xyz = u_xlat0.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat1.xyz = vec3(u_xlat12) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat2.z;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendMul" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat12;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat2.xyz = vec3(u_xlat12) * u_xlat2.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat2.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat1.z;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					bool u_xlatb3;
					vec2 u_xlat4;
					float u_xlat12;
					int u_xlati12;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat1 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat1.x);
					    u_xlat0.x = float(0.0);
					    u_xlat0.y = float(0.0);
					    u_xlat0.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat1.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat3.x = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat3.x = u_xlat3.x * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat3.x = float(1.0) / u_xlat3.x;
					        u_xlat0.xyz = unity_LightColor[u_xlati_loop_1].xyz * u_xlat3.xxx + u_xlat0.xyz;
					    }
					    u_xlat0.xyz = u_xlat0.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat1.xyz = vec3(u_xlat12) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat2.z;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendMul" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat12;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat2.xyz = vec3(u_xlat12) * u_xlat2.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat2.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat1.z;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					bool u_xlatb3;
					vec2 u_xlat4;
					float u_xlat12;
					int u_xlati12;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat1 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat1.x);
					    u_xlat0.x = float(0.0);
					    u_xlat0.y = float(0.0);
					    u_xlat0.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat1.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat3.x = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat3.x = u_xlat3.x * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat3.x = float(1.0) / u_xlat3.x;
					        u_xlat0.xyz = unity_LightColor[u_xlati_loop_1].xyz * u_xlat3.xxx + u_xlat0.xyz;
					    }
					    u_xlat0.xyz = u_xlat0.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat1.xyz = vec3(u_xlat12) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat2.z;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendMul" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat12;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat2.xyz = vec3(u_xlat12) * u_xlat2.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat2.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat1.z;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					bool u_xlatb3;
					vec2 u_xlat4;
					float u_xlat12;
					int u_xlati12;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat1 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat1.x);
					    u_xlat0.x = float(0.0);
					    u_xlat0.y = float(0.0);
					    u_xlat0.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat1.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat3.x = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat3.x = u_xlat3.x * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat3.x = float(1.0) / u_xlat3.x;
					        u_xlat0.xyz = unity_LightColor[u_xlati_loop_1].xyz * u_xlat3.xxx + u_xlat0.xyz;
					    }
					    u_xlat0.xyz = u_xlat0.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat1.xyz = vec3(u_xlat12) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat2.z;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendMul" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat12;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat2.xyz = vec3(u_xlat12) * u_xlat2.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat2.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat1.z;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					bool u_xlatb3;
					vec2 u_xlat4;
					float u_xlat12;
					int u_xlati12;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat1 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat1.x);
					    u_xlat0.x = float(0.0);
					    u_xlat0.y = float(0.0);
					    u_xlat0.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat1.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat3.x = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat3.x = u_xlat3.x * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat3.x = float(1.0) / u_xlat3.x;
					        u_xlat0.xyz = unity_LightColor[u_xlati_loop_1].xyz * u_xlat3.xxx + u_xlat0.xyz;
					    }
					    u_xlat0.xyz = u_xlat0.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat1.xyz = vec3(u_xlat12) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat2.z;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendMul" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec2 u_xlat4;
					int u_xlati12;
					float u_xlat13;
					bool u_xlatb13;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat0 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat1.x = float(0.0);
					    u_xlat1.y = float(0.0);
					    u_xlat1.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat13 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat13 = u_xlat13 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat13 = float(1.0) / u_xlat13;
					        u_xlat1.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat13) + u_xlat1.xyz;
					    }
					    u_xlat0.xyz = u_xlat1.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendMul" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec2 u_xlat4;
					int u_xlati12;
					float u_xlat13;
					bool u_xlatb13;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat0 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat1.x = float(0.0);
					    u_xlat1.y = float(0.0);
					    u_xlat1.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat13 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat13 = u_xlat13 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat13 = float(1.0) / u_xlat13;
					        u_xlat1.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat13) + u_xlat1.xyz;
					    }
					    u_xlat0.xyz = u_xlat1.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendMul" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec2 u_xlat4;
					int u_xlati12;
					float u_xlat13;
					bool u_xlatb13;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat0 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat1.x = float(0.0);
					    u_xlat1.y = float(0.0);
					    u_xlat1.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat13 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat13 = u_xlat13 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat13 = float(1.0) / u_xlat13;
					        u_xlat1.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat13) + u_xlat1.xyz;
					    }
					    u_xlat0.xyz = u_xlat1.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendMul" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec2 u_xlat4;
					int u_xlati12;
					float u_xlat13;
					bool u_xlatb13;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat0 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat1.x = float(0.0);
					    u_xlat1.y = float(0.0);
					    u_xlat1.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat13 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat13 = u_xlat13 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat13 = float(1.0) / u_xlat13;
					        u_xlat1.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat13) + u_xlat1.xyz;
					    }
					    u_xlat0.xyz = u_xlat1.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendMul" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec2 u_xlat4;
					int u_xlati12;
					float u_xlat13;
					bool u_xlatb13;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat0 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat1.x = float(0.0);
					    u_xlat1.y = float(0.0);
					    u_xlat1.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat13 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat13 = u_xlat13 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat13 = float(1.0) / u_xlat13;
					        u_xlat1.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat13) + u_xlat1.xyz;
					    }
					    u_xlat0.xyz = u_xlat1.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendMul" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec2 u_xlat4;
					int u_xlati12;
					float u_xlat13;
					bool u_xlatb13;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat0 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat1.x = float(0.0);
					    u_xlat1.y = float(0.0);
					    u_xlat1.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat13 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat13 = u_xlat13 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat13 = float(1.0) / u_xlat13;
					        u_xlat1.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat13) + u_xlat1.xyz;
					    }
					    u_xlat0.xyz = u_xlat1.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendMul" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec2 u_xlat4;
					int u_xlati12;
					float u_xlat13;
					bool u_xlatb13;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat0 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat1.x = float(0.0);
					    u_xlat1.y = float(0.0);
					    u_xlat1.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat13 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat13 = u_xlat13 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat13 = float(1.0) / u_xlat13;
					        u_xlat1.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat13) + u_xlat1.xyz;
					    }
					    u_xlat0.xyz = u_xlat1.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendMul" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec2 u_xlat4;
					int u_xlati12;
					float u_xlat13;
					bool u_xlatb13;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat0 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat1.x = float(0.0);
					    u_xlat1.y = float(0.0);
					    u_xlat1.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat13 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat13 = u_xlat13 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat13 = float(1.0) / u_xlat13;
					        u_xlat1.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat13) + u_xlat1.xyz;
					    }
					    u_xlat0.xyz = u_xlat1.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendMul" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec2 u_xlat4;
					int u_xlati12;
					float u_xlat13;
					bool u_xlatb13;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat0 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat1.x = float(0.0);
					    u_xlat1.y = float(0.0);
					    u_xlat1.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat13 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat13 = u_xlat13 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat13 = float(1.0) / u_xlat13;
					        u_xlat1.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat13) + u_xlat1.xyz;
					    }
					    u_xlat0.xyz = u_xlat1.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendMul" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec2 u_xlat4;
					int u_xlati12;
					float u_xlat13;
					bool u_xlatb13;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat0 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat1.x = float(0.0);
					    u_xlat1.y = float(0.0);
					    u_xlat1.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat13 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat13 = u_xlat13 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat13 = float(1.0) / u_xlat13;
					        u_xlat1.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat13) + u_xlat1.xyz;
					    }
					    u_xlat0.xyz = u_xlat1.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendMul" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec2 u_xlat4;
					int u_xlati12;
					float u_xlat13;
					bool u_xlatb13;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat0 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat1.x = float(0.0);
					    u_xlat1.y = float(0.0);
					    u_xlat1.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat13 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat13 = u_xlat13 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat13 = float(1.0) / u_xlat13;
					        u_xlat1.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat13) + u_xlat1.xyz;
					    }
					    u_xlat0.xyz = u_xlat1.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendMul" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec2 u_xlat4;
					int u_xlati12;
					float u_xlat13;
					bool u_xlatb13;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat0 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat1.x = float(0.0);
					    u_xlat1.y = float(0.0);
					    u_xlat1.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat13 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat13 = u_xlat13 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat13 = float(1.0) / u_xlat13;
					        u_xlat1.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat13) + u_xlat1.xyz;
					    }
					    u_xlat0.xyz = u_xlat1.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendMul" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec2 u_xlat4;
					int u_xlati12;
					float u_xlat13;
					bool u_xlatb13;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat0 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat1.x = float(0.0);
					    u_xlat1.y = float(0.0);
					    u_xlat1.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat13 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat13 = u_xlat13 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat13 = float(1.0) / u_xlat13;
					        u_xlat1.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat13) + u_xlat1.xyz;
					    }
					    u_xlat0.xyz = u_xlat1.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendMul" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec2 u_xlat4;
					int u_xlati12;
					float u_xlat13;
					bool u_xlatb13;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat0 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat1.x = float(0.0);
					    u_xlat1.y = float(0.0);
					    u_xlat1.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat13 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat13 = u_xlat13 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat13 = float(1.0) / u_xlat13;
					        u_xlat1.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat13) + u_xlat1.xyz;
					    }
					    u_xlat0.xyz = u_xlat1.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendMul" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec2 u_xlat4;
					int u_xlati12;
					float u_xlat13;
					bool u_xlatb13;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat0 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat1.x = float(0.0);
					    u_xlat1.y = float(0.0);
					    u_xlat1.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat13 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat13 = u_xlat13 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat13 = float(1.0) / u_xlat13;
					        u_xlat1.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat13) + u_xlat1.xyz;
					    }
					    u_xlat0.xyz = u_xlat1.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendMul" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec2 u_xlat4;
					int u_xlati12;
					float u_xlat13;
					bool u_xlatb13;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat0 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat1.x = float(0.0);
					    u_xlat1.y = float(0.0);
					    u_xlat1.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat13 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat13 = u_xlat13 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat13 = float(1.0) / u_xlat13;
					        u_xlat1.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat13) + u_xlat1.xyz;
					    }
					    u_xlat0.xyz = u_xlat1.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendMul" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat12;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat2.xyz = vec3(u_xlat12) * u_xlat2.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat2.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					bool u_xlatb3;
					vec2 u_xlat4;
					float u_xlat12;
					int u_xlati12;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat1 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat1.x);
					    u_xlat0.x = float(0.0);
					    u_xlat0.y = float(0.0);
					    u_xlat0.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat1.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat3.x = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat3.x = u_xlat3.x * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat3.x = float(1.0) / u_xlat3.x;
					        u_xlat0.xyz = unity_LightColor[u_xlati_loop_1].xyz * u_xlat3.xxx + u_xlat0.xyz;
					    }
					    u_xlat0.xyz = u_xlat0.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat1.xyz = vec3(u_xlat12) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendMul" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat12;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat2.xyz = vec3(u_xlat12) * u_xlat2.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat2.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					bool u_xlatb3;
					vec2 u_xlat4;
					float u_xlat12;
					int u_xlati12;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat1 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat1.x);
					    u_xlat0.x = float(0.0);
					    u_xlat0.y = float(0.0);
					    u_xlat0.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat1.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat3.x = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat3.x = u_xlat3.x * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat3.x = float(1.0) / u_xlat3.x;
					        u_xlat0.xyz = unity_LightColor[u_xlati_loop_1].xyz * u_xlat3.xxx + u_xlat0.xyz;
					    }
					    u_xlat0.xyz = u_xlat0.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat1.xyz = vec3(u_xlat12) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendMul" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat12;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat2.xyz = vec3(u_xlat12) * u_xlat2.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat2.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat1.z;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					bool u_xlatb3;
					vec2 u_xlat4;
					float u_xlat12;
					int u_xlati12;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat1 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat1.x);
					    u_xlat0.x = float(0.0);
					    u_xlat0.y = float(0.0);
					    u_xlat0.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat1.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat3.x = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat3.x = u_xlat3.x * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat3.x = float(1.0) / u_xlat3.x;
					        u_xlat0.xyz = unity_LightColor[u_xlati_loop_1].xyz * u_xlat3.xxx + u_xlat0.xyz;
					    }
					    u_xlat0.xyz = u_xlat0.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat1.xyz = vec3(u_xlat12) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat2.z;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendMul" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat12;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat2.xyz = vec3(u_xlat12) * u_xlat2.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat2.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat1.z;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					bool u_xlatb3;
					vec2 u_xlat4;
					float u_xlat12;
					int u_xlati12;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat1 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat1.x);
					    u_xlat0.x = float(0.0);
					    u_xlat0.y = float(0.0);
					    u_xlat0.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat1.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat3.x = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat3.x = u_xlat3.x * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat3.x = float(1.0) / u_xlat3.x;
					        u_xlat0.xyz = unity_LightColor[u_xlati_loop_1].xyz * u_xlat3.xxx + u_xlat0.xyz;
					    }
					    u_xlat0.xyz = u_xlat0.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat1.xyz = vec3(u_xlat12) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat2.z;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendMul" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat12;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat2.xyz = vec3(u_xlat12) * u_xlat2.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat2.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat1.z;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					bool u_xlatb3;
					vec2 u_xlat4;
					float u_xlat12;
					int u_xlati12;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat1 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat1.x);
					    u_xlat0.x = float(0.0);
					    u_xlat0.y = float(0.0);
					    u_xlat0.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat1.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat3.x = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat3.x = u_xlat3.x * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat3.x = float(1.0) / u_xlat3.x;
					        u_xlat0.xyz = unity_LightColor[u_xlati_loop_1].xyz * u_xlat3.xxx + u_xlat0.xyz;
					    }
					    u_xlat0.xyz = u_xlat0.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat1.xyz = vec3(u_xlat12) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat2.z;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendMul" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat12;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat2.xyz = vec3(u_xlat12) * u_xlat2.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat2.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat1.z;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					bool u_xlatb3;
					vec2 u_xlat4;
					float u_xlat12;
					int u_xlati12;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat1 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat1.x);
					    u_xlat0.x = float(0.0);
					    u_xlat0.y = float(0.0);
					    u_xlat0.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat1.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat3.x = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat3.x = u_xlat3.x * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat3.x = float(1.0) / u_xlat3.x;
					        u_xlat0.xyz = unity_LightColor[u_xlati_loop_1].xyz * u_xlat3.xxx + u_xlat0.xyz;
					    }
					    u_xlat0.xyz = u_xlat0.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat1.xyz = vec3(u_xlat12) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat2.z;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendMul" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat12;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat2.xyz = vec3(u_xlat12) * u_xlat2.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat2.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat1.z;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					bool u_xlatb3;
					vec2 u_xlat4;
					float u_xlat12;
					int u_xlati12;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat1 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat1.x);
					    u_xlat0.x = float(0.0);
					    u_xlat0.y = float(0.0);
					    u_xlat0.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat1.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat3.x = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat3.x = u_xlat3.x * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat3.x = float(1.0) / u_xlat3.x;
					        u_xlat0.xyz = unity_LightColor[u_xlati_loop_1].xyz * u_xlat3.xxx + u_xlat0.xyz;
					    }
					    u_xlat0.xyz = u_xlat0.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat1.xyz = vec3(u_xlat12) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat2.z;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendMul" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat12;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat2.xyz = vec3(u_xlat12) * u_xlat2.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat2.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat1.z;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					bool u_xlatb3;
					vec2 u_xlat4;
					float u_xlat12;
					int u_xlati12;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat1 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat1.x);
					    u_xlat0.x = float(0.0);
					    u_xlat0.y = float(0.0);
					    u_xlat0.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat1.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat3.x = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat3.x = u_xlat3.x * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat3.x = float(1.0) / u_xlat3.x;
					        u_xlat0.xyz = unity_LightColor[u_xlati_loop_1].xyz * u_xlat3.xxx + u_xlat0.xyz;
					    }
					    u_xlat0.xyz = u_xlat0.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat1.xyz = vec3(u_xlat12) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat2.z;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendMul" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat12;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat2.xyz = vec3(u_xlat12) * u_xlat2.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat2.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					bool u_xlatb3;
					vec2 u_xlat4;
					float u_xlat12;
					int u_xlati12;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat1 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat1.x);
					    u_xlat0.x = float(0.0);
					    u_xlat0.y = float(0.0);
					    u_xlat0.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat1.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat3.x = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat3.x = u_xlat3.x * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat3.x = float(1.0) / u_xlat3.x;
					        u_xlat0.xyz = unity_LightColor[u_xlati_loop_1].xyz * u_xlat3.xxx + u_xlat0.xyz;
					    }
					    u_xlat0.xyz = u_xlat0.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat1.xyz = vec3(u_xlat12) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendMul" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat12;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat2.xyz = vec3(u_xlat12) * u_xlat2.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat2.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					bool u_xlatb3;
					vec2 u_xlat4;
					float u_xlat12;
					int u_xlati12;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat1 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat1.x);
					    u_xlat0.x = float(0.0);
					    u_xlat0.y = float(0.0);
					    u_xlat0.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat1.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat3.x = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat3.x = u_xlat3.x * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat3.x = float(1.0) / u_xlat3.x;
					        u_xlat0.xyz = unity_LightColor[u_xlati_loop_1].xyz * u_xlat3.xxx + u_xlat0.xyz;
					    }
					    u_xlat0.xyz = u_xlat0.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat1.xyz = vec3(u_xlat12) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendMul" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat12;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat2.xyz = vec3(u_xlat12) * u_xlat2.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat2.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat1.z;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					bool u_xlatb3;
					vec2 u_xlat4;
					float u_xlat12;
					int u_xlati12;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat1 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat1.x);
					    u_xlat0.x = float(0.0);
					    u_xlat0.y = float(0.0);
					    u_xlat0.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat1.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat3.x = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat3.x = u_xlat3.x * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat3.x = float(1.0) / u_xlat3.x;
					        u_xlat0.xyz = unity_LightColor[u_xlati_loop_1].xyz * u_xlat3.xxx + u_xlat0.xyz;
					    }
					    u_xlat0.xyz = u_xlat0.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat1.xyz = vec3(u_xlat12) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat2.z;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendMul" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat12;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat2.xyz = vec3(u_xlat12) * u_xlat2.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat2.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat1.z;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					bool u_xlatb3;
					vec2 u_xlat4;
					float u_xlat12;
					int u_xlati12;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat1 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat1.x);
					    u_xlat0.x = float(0.0);
					    u_xlat0.y = float(0.0);
					    u_xlat0.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat1.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat3.x = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat3.x = u_xlat3.x * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat3.x = float(1.0) / u_xlat3.x;
					        u_xlat0.xyz = unity_LightColor[u_xlati_loop_1].xyz * u_xlat3.xxx + u_xlat0.xyz;
					    }
					    u_xlat0.xyz = u_xlat0.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat1.xyz = vec3(u_xlat12) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat2.z;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendMul" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat12;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat2.xyz = vec3(u_xlat12) * u_xlat2.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat2.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat1.z;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					bool u_xlatb3;
					vec2 u_xlat4;
					float u_xlat12;
					int u_xlati12;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat1 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat1.x);
					    u_xlat0.x = float(0.0);
					    u_xlat0.y = float(0.0);
					    u_xlat0.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat1.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat3.x = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat3.x = u_xlat3.x * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat3.x = float(1.0) / u_xlat3.x;
					        u_xlat0.xyz = unity_LightColor[u_xlati_loop_1].xyz * u_xlat3.xxx + u_xlat0.xyz;
					    }
					    u_xlat0.xyz = u_xlat0.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat1.xyz = vec3(u_xlat12) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat2.z;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendMul" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat12;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat2.xyz = vec3(u_xlat12) * u_xlat2.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat2.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat1.z;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					bool u_xlatb3;
					vec2 u_xlat4;
					float u_xlat12;
					int u_xlati12;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat1 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat1.x);
					    u_xlat0.x = float(0.0);
					    u_xlat0.y = float(0.0);
					    u_xlat0.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat1.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat3.x = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat3.x = u_xlat3.x * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat3.x = float(1.0) / u_xlat3.x;
					        u_xlat0.xyz = unity_LightColor[u_xlati_loop_1].xyz * u_xlat3.xxx + u_xlat0.xyz;
					    }
					    u_xlat0.xyz = u_xlat0.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat1.xyz = vec3(u_xlat12) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat2.z;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendMul" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat12;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat2.xyz = vec3(u_xlat12) * u_xlat2.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat2.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat1.z;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					bool u_xlatb3;
					vec2 u_xlat4;
					float u_xlat12;
					int u_xlati12;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat1 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat1.x);
					    u_xlat0.x = float(0.0);
					    u_xlat0.y = float(0.0);
					    u_xlat0.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat1.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat3.x = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat3.x = u_xlat3.x * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat3.x = float(1.0) / u_xlat3.x;
					        u_xlat0.xyz = unity_LightColor[u_xlati_loop_1].xyz * u_xlat3.xxx + u_xlat0.xyz;
					    }
					    u_xlat0.xyz = u_xlat0.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat1.xyz = vec3(u_xlat12) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat2.z;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendMul" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat12;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat2.xyz = vec3(u_xlat12) * u_xlat2.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat2.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat1.z;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					bool u_xlatb3;
					vec2 u_xlat4;
					float u_xlat12;
					int u_xlati12;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat1 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat1.x);
					    u_xlat0.x = float(0.0);
					    u_xlat0.y = float(0.0);
					    u_xlat0.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat1.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat3.x = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat3.x = u_xlat3.x * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat3.x = float(1.0) / u_xlat3.x;
					        u_xlat0.xyz = unity_LightColor[u_xlati_loop_1].xyz * u_xlat3.xxx + u_xlat0.xyz;
					    }
					    u_xlat0.xyz = u_xlat0.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat1.xyz = vec3(u_xlat12) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat2.z;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendMul" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec2 u_xlat4;
					int u_xlati12;
					float u_xlat13;
					bool u_xlatb13;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat0 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat1.x = float(0.0);
					    u_xlat1.y = float(0.0);
					    u_xlat1.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat13 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat13 = u_xlat13 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat13 = float(1.0) / u_xlat13;
					        u_xlat1.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat13) + u_xlat1.xyz;
					    }
					    u_xlat0.xyz = u_xlat1.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendMul" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec2 u_xlat4;
					int u_xlati12;
					float u_xlat13;
					bool u_xlatb13;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat0 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat1.x = float(0.0);
					    u_xlat1.y = float(0.0);
					    u_xlat1.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat13 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat13 = u_xlat13 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat13 = float(1.0) / u_xlat13;
					        u_xlat1.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat13) + u_xlat1.xyz;
					    }
					    u_xlat0.xyz = u_xlat1.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendMul" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec2 u_xlat4;
					int u_xlati12;
					float u_xlat13;
					bool u_xlatb13;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat0 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat1.x = float(0.0);
					    u_xlat1.y = float(0.0);
					    u_xlat1.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat13 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat13 = u_xlat13 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat13 = float(1.0) / u_xlat13;
					        u_xlat1.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat13) + u_xlat1.xyz;
					    }
					    u_xlat0.xyz = u_xlat1.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendMul" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec2 u_xlat4;
					int u_xlati12;
					float u_xlat13;
					bool u_xlatb13;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat0 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat1.x = float(0.0);
					    u_xlat1.y = float(0.0);
					    u_xlat1.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat13 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat13 = u_xlat13 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat13 = float(1.0) / u_xlat13;
					        u_xlat1.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat13) + u_xlat1.xyz;
					    }
					    u_xlat0.xyz = u_xlat1.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendMul" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec2 u_xlat4;
					int u_xlati12;
					float u_xlat13;
					bool u_xlatb13;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat0 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat1.x = float(0.0);
					    u_xlat1.y = float(0.0);
					    u_xlat1.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat13 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat13 = u_xlat13 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat13 = float(1.0) / u_xlat13;
					        u_xlat1.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat13) + u_xlat1.xyz;
					    }
					    u_xlat0.xyz = u_xlat1.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendMul" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec2 u_xlat4;
					int u_xlati12;
					float u_xlat13;
					bool u_xlatb13;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat0 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat1.x = float(0.0);
					    u_xlat1.y = float(0.0);
					    u_xlat1.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat13 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat13 = u_xlat13 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat13 = float(1.0) / u_xlat13;
					        u_xlat1.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat13) + u_xlat1.xyz;
					    }
					    u_xlat0.xyz = u_xlat1.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendMul" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec2 u_xlat4;
					int u_xlati12;
					float u_xlat13;
					bool u_xlatb13;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat0 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat1.x = float(0.0);
					    u_xlat1.y = float(0.0);
					    u_xlat1.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat13 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat13 = u_xlat13 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat13 = float(1.0) / u_xlat13;
					        u_xlat1.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat13) + u_xlat1.xyz;
					    }
					    u_xlat0.xyz = u_xlat1.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendMul" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec2 u_xlat4;
					int u_xlati12;
					float u_xlat13;
					bool u_xlatb13;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat0 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat1.x = float(0.0);
					    u_xlat1.y = float(0.0);
					    u_xlat1.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat13 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat13 = u_xlat13 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat13 = float(1.0) / u_xlat13;
					        u_xlat1.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat13) + u_xlat1.xyz;
					    }
					    u_xlat0.xyz = u_xlat1.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendMul" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec2 u_xlat4;
					int u_xlati12;
					float u_xlat13;
					bool u_xlatb13;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat0 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat1.x = float(0.0);
					    u_xlat1.y = float(0.0);
					    u_xlat1.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat13 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat13 = u_xlat13 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat13 = float(1.0) / u_xlat13;
					        u_xlat1.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat13) + u_xlat1.xyz;
					    }
					    u_xlat0.xyz = u_xlat1.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendMul" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec2 u_xlat4;
					int u_xlati12;
					float u_xlat13;
					bool u_xlatb13;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat0 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat1.x = float(0.0);
					    u_xlat1.y = float(0.0);
					    u_xlat1.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat13 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat13 = u_xlat13 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat13 = float(1.0) / u_xlat13;
					        u_xlat1.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat13) + u_xlat1.xyz;
					    }
					    u_xlat0.xyz = u_xlat1.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendMul" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec2 u_xlat4;
					int u_xlati12;
					float u_xlat13;
					bool u_xlatb13;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat0 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat1.x = float(0.0);
					    u_xlat1.y = float(0.0);
					    u_xlat1.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat13 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat13 = u_xlat13 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat13 = float(1.0) / u_xlat13;
					        u_xlat1.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat13) + u_xlat1.xyz;
					    }
					    u_xlat0.xyz = u_xlat1.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendMul" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec2 u_xlat4;
					int u_xlati12;
					float u_xlat13;
					bool u_xlatb13;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat0 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat1.x = float(0.0);
					    u_xlat1.y = float(0.0);
					    u_xlat1.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat13 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat13 = u_xlat13 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat13 = float(1.0) / u_xlat13;
					        u_xlat1.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat13) + u_xlat1.xyz;
					    }
					    u_xlat0.xyz = u_xlat1.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendMul" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec2 u_xlat4;
					int u_xlati12;
					float u_xlat13;
					bool u_xlatb13;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat0 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat1.x = float(0.0);
					    u_xlat1.y = float(0.0);
					    u_xlat1.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat13 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat13 = u_xlat13 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat13 = float(1.0) / u_xlat13;
					        u_xlat1.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat13) + u_xlat1.xyz;
					    }
					    u_xlat0.xyz = u_xlat1.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendMul" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec2 u_xlat4;
					int u_xlati12;
					float u_xlat13;
					bool u_xlatb13;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat0 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat1.x = float(0.0);
					    u_xlat1.y = float(0.0);
					    u_xlat1.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat13 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat13 = u_xlat13 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat13 = float(1.0) / u_xlat13;
					        u_xlat1.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat13) + u_xlat1.xyz;
					    }
					    u_xlat0.xyz = u_xlat1.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendMul" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec2 u_xlat4;
					int u_xlati12;
					float u_xlat13;
					bool u_xlatb13;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat0 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat1.x = float(0.0);
					    u_xlat1.y = float(0.0);
					    u_xlat1.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat13 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat13 = u_xlat13 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat13 = float(1.0) / u_xlat13;
					        u_xlat1.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat13) + u_xlat1.xyz;
					    }
					    u_xlat0.xyz = u_xlat1.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendMul" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec2 u_xlat4;
					int u_xlati12;
					float u_xlat13;
					bool u_xlatb13;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat0 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat1.x = float(0.0);
					    u_xlat1.y = float(0.0);
					    u_xlat1.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat13 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat13 = u_xlat13 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat13 = float(1.0) / u_xlat13;
					        u_xlat1.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat13) + u_xlat1.xyz;
					    }
					    u_xlat0.xyz = u_xlat1.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendMul" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat12;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat2.xyz = vec3(u_xlat12) * u_xlat2.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat2.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					bool u_xlatb3;
					vec2 u_xlat4;
					float u_xlat12;
					int u_xlati12;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat1 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat1.x);
					    u_xlat0.x = float(0.0);
					    u_xlat0.y = float(0.0);
					    u_xlat0.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat1.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat3.x = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat3.x = u_xlat3.x * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat3.x = float(1.0) / u_xlat3.x;
					        u_xlat0.xyz = unity_LightColor[u_xlati_loop_1].xyz * u_xlat3.xxx + u_xlat0.xyz;
					    }
					    u_xlat0.xyz = u_xlat0.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat1.xyz = vec3(u_xlat12) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendMul" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat12;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat2.xyz = vec3(u_xlat12) * u_xlat2.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat2.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					bool u_xlatb3;
					vec2 u_xlat4;
					float u_xlat12;
					int u_xlati12;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat1 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat1.x);
					    u_xlat0.x = float(0.0);
					    u_xlat0.y = float(0.0);
					    u_xlat0.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat1.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat3.x = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat3.x = u_xlat3.x * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat3.x = float(1.0) / u_xlat3.x;
					        u_xlat0.xyz = unity_LightColor[u_xlati_loop_1].xyz * u_xlat3.xxx + u_xlat0.xyz;
					    }
					    u_xlat0.xyz = u_xlat0.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat1.xyz = vec3(u_xlat12) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendMul" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat12;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat2.xyz = vec3(u_xlat12) * u_xlat2.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat2.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat1.z;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					bool u_xlatb3;
					vec2 u_xlat4;
					float u_xlat12;
					int u_xlati12;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat1 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat1.x);
					    u_xlat0.x = float(0.0);
					    u_xlat0.y = float(0.0);
					    u_xlat0.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat1.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat3.x = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat3.x = u_xlat3.x * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat3.x = float(1.0) / u_xlat3.x;
					        u_xlat0.xyz = unity_LightColor[u_xlati_loop_1].xyz * u_xlat3.xxx + u_xlat0.xyz;
					    }
					    u_xlat0.xyz = u_xlat0.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat1.xyz = vec3(u_xlat12) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat2.z;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendMul" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat12;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat2.xyz = vec3(u_xlat12) * u_xlat2.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat2.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat1.z;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					bool u_xlatb3;
					vec2 u_xlat4;
					float u_xlat12;
					int u_xlati12;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat1 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat1.x);
					    u_xlat0.x = float(0.0);
					    u_xlat0.y = float(0.0);
					    u_xlat0.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat1.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat3.x = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat3.x = u_xlat3.x * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat3.x = float(1.0) / u_xlat3.x;
					        u_xlat0.xyz = unity_LightColor[u_xlati_loop_1].xyz * u_xlat3.xxx + u_xlat0.xyz;
					    }
					    u_xlat0.xyz = u_xlat0.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat1.xyz = vec3(u_xlat12) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat2.z;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendMul" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat12;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat2.xyz = vec3(u_xlat12) * u_xlat2.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat2.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat1.z;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					bool u_xlatb3;
					vec2 u_xlat4;
					float u_xlat12;
					int u_xlati12;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat1 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat1.x);
					    u_xlat0.x = float(0.0);
					    u_xlat0.y = float(0.0);
					    u_xlat0.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat1.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat3.x = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat3.x = u_xlat3.x * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat3.x = float(1.0) / u_xlat3.x;
					        u_xlat0.xyz = unity_LightColor[u_xlati_loop_1].xyz * u_xlat3.xxx + u_xlat0.xyz;
					    }
					    u_xlat0.xyz = u_xlat0.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat1.xyz = vec3(u_xlat12) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat2.z;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendMul" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat12;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat2.xyz = vec3(u_xlat12) * u_xlat2.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat2.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat1.z;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					bool u_xlatb3;
					vec2 u_xlat4;
					float u_xlat12;
					int u_xlati12;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat1 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat1.x);
					    u_xlat0.x = float(0.0);
					    u_xlat0.y = float(0.0);
					    u_xlat0.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat1.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat3.x = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat3.x = u_xlat3.x * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat3.x = float(1.0) / u_xlat3.x;
					        u_xlat0.xyz = unity_LightColor[u_xlati_loop_1].xyz * u_xlat3.xxx + u_xlat0.xyz;
					    }
					    u_xlat0.xyz = u_xlat0.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat1.xyz = vec3(u_xlat12) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat2.z;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendMul" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat12;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat2.xyz = vec3(u_xlat12) * u_xlat2.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat2.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat1.z;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					bool u_xlatb3;
					vec2 u_xlat4;
					float u_xlat12;
					int u_xlati12;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat1 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat1.x);
					    u_xlat0.x = float(0.0);
					    u_xlat0.y = float(0.0);
					    u_xlat0.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat1.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat3.x = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat3.x = u_xlat3.x * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat3.x = float(1.0) / u_xlat3.x;
					        u_xlat0.xyz = unity_LightColor[u_xlati_loop_1].xyz * u_xlat3.xxx + u_xlat0.xyz;
					    }
					    u_xlat0.xyz = u_xlat0.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat1.xyz = vec3(u_xlat12) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat2.z;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendMul" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat12;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat2.xyz = vec3(u_xlat12) * u_xlat2.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat2.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat1.z;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					bool u_xlatb3;
					vec2 u_xlat4;
					float u_xlat12;
					int u_xlati12;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat1 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat1.x);
					    u_xlat0.x = float(0.0);
					    u_xlat0.y = float(0.0);
					    u_xlat0.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat1.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat3.x = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat3.x = u_xlat3.x * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat3.x = float(1.0) / u_xlat3.x;
					        u_xlat0.xyz = unity_LightColor[u_xlati_loop_1].xyz * u_xlat3.xxx + u_xlat0.xyz;
					    }
					    u_xlat0.xyz = u_xlat0.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat1.xyz = vec3(u_xlat12) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat2.z;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendMul" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat12;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat2.xyz = vec3(u_xlat12) * u_xlat2.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat2.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					bool u_xlatb3;
					vec2 u_xlat4;
					float u_xlat12;
					int u_xlati12;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat1 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat1.x);
					    u_xlat0.x = float(0.0);
					    u_xlat0.y = float(0.0);
					    u_xlat0.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat1.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat3.x = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat3.x = u_xlat3.x * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat3.x = float(1.0) / u_xlat3.x;
					        u_xlat0.xyz = unity_LightColor[u_xlati_loop_1].xyz * u_xlat3.xxx + u_xlat0.xyz;
					    }
					    u_xlat0.xyz = u_xlat0.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat1.xyz = vec3(u_xlat12) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendMul" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat12;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat2.xyz = vec3(u_xlat12) * u_xlat2.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat2.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					bool u_xlatb3;
					vec2 u_xlat4;
					float u_xlat12;
					int u_xlati12;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat1 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat1.x);
					    u_xlat0.x = float(0.0);
					    u_xlat0.y = float(0.0);
					    u_xlat0.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat1.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat3.x = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat3.x = u_xlat3.x * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat3.x = float(1.0) / u_xlat3.x;
					        u_xlat0.xyz = unity_LightColor[u_xlati_loop_1].xyz * u_xlat3.xxx + u_xlat0.xyz;
					    }
					    u_xlat0.xyz = u_xlat0.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat1.xyz = vec3(u_xlat12) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendMul" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat12;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat2.xyz = vec3(u_xlat12) * u_xlat2.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat2.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat1.z;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					bool u_xlatb3;
					vec2 u_xlat4;
					float u_xlat12;
					int u_xlati12;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat1 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat1.x);
					    u_xlat0.x = float(0.0);
					    u_xlat0.y = float(0.0);
					    u_xlat0.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat1.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat3.x = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat3.x = u_xlat3.x * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat3.x = float(1.0) / u_xlat3.x;
					        u_xlat0.xyz = unity_LightColor[u_xlati_loop_1].xyz * u_xlat3.xxx + u_xlat0.xyz;
					    }
					    u_xlat0.xyz = u_xlat0.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat1.xyz = vec3(u_xlat12) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat2.z;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendMul" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat12;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat2.xyz = vec3(u_xlat12) * u_xlat2.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat2.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat1.z;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					bool u_xlatb3;
					vec2 u_xlat4;
					float u_xlat12;
					int u_xlati12;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat1 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat1.x);
					    u_xlat0.x = float(0.0);
					    u_xlat0.y = float(0.0);
					    u_xlat0.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat1.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat3.x = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat3.x = u_xlat3.x * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat3.x = float(1.0) / u_xlat3.x;
					        u_xlat0.xyz = unity_LightColor[u_xlati_loop_1].xyz * u_xlat3.xxx + u_xlat0.xyz;
					    }
					    u_xlat0.xyz = u_xlat0.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat1.xyz = vec3(u_xlat12) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat2.z;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendMul" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat12;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat2.xyz = vec3(u_xlat12) * u_xlat2.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat2.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat1.z;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					bool u_xlatb3;
					vec2 u_xlat4;
					float u_xlat12;
					int u_xlati12;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat1 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat1.x);
					    u_xlat0.x = float(0.0);
					    u_xlat0.y = float(0.0);
					    u_xlat0.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat1.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat3.x = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat3.x = u_xlat3.x * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat3.x = float(1.0) / u_xlat3.x;
					        u_xlat0.xyz = unity_LightColor[u_xlati_loop_1].xyz * u_xlat3.xxx + u_xlat0.xyz;
					    }
					    u_xlat0.xyz = u_xlat0.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat1.xyz = vec3(u_xlat12) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat2.z;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendMul" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat12;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat2.xyz = vec3(u_xlat12) * u_xlat2.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat2.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat1.z;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					bool u_xlatb3;
					vec2 u_xlat4;
					float u_xlat12;
					int u_xlati12;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat1 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat1.x);
					    u_xlat0.x = float(0.0);
					    u_xlat0.y = float(0.0);
					    u_xlat0.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat1.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat3.x = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat3.x = u_xlat3.x * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat3.x = float(1.0) / u_xlat3.x;
					        u_xlat0.xyz = unity_LightColor[u_xlati_loop_1].xyz * u_xlat3.xxx + u_xlat0.xyz;
					    }
					    u_xlat0.xyz = u_xlat0.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat1.xyz = vec3(u_xlat12) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat2.z;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendMul" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat12;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat2.xyz = vec3(u_xlat12) * u_xlat2.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat2.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat1.z;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					bool u_xlatb3;
					vec2 u_xlat4;
					float u_xlat12;
					int u_xlati12;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat1 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat1.x);
					    u_xlat0.x = float(0.0);
					    u_xlat0.y = float(0.0);
					    u_xlat0.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat1.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat3.x = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat3.x = u_xlat3.x * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat3.x = float(1.0) / u_xlat3.x;
					        u_xlat0.xyz = unity_LightColor[u_xlati_loop_1].xyz * u_xlat3.xxx + u_xlat0.xyz;
					    }
					    u_xlat0.xyz = u_xlat0.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat1.xyz = vec3(u_xlat12) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat2.z;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendMul" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat12;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat2.xyz = vec3(u_xlat12) * u_xlat2.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat2.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat1.z;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					bool u_xlatb3;
					vec2 u_xlat4;
					float u_xlat12;
					int u_xlati12;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat1 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat1.x);
					    u_xlat0.x = float(0.0);
					    u_xlat0.y = float(0.0);
					    u_xlat0.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat1.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat3.x = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat3.x = u_xlat3.x * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat3.x = float(1.0) / u_xlat3.x;
					        u_xlat0.xyz = unity_LightColor[u_xlati_loop_1].xyz * u_xlat3.xxx + u_xlat0.xyz;
					    }
					    u_xlat0.xyz = u_xlat0.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat1.xyz = vec3(u_xlat12) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat2.z;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendMul" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec2 u_xlat4;
					int u_xlati12;
					float u_xlat13;
					bool u_xlatb13;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat0 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat1.x = float(0.0);
					    u_xlat1.y = float(0.0);
					    u_xlat1.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat13 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat13 = u_xlat13 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat13 = float(1.0) / u_xlat13;
					        u_xlat1.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat13) + u_xlat1.xyz;
					    }
					    u_xlat0.xyz = u_xlat1.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendMul" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec2 u_xlat4;
					int u_xlati12;
					float u_xlat13;
					bool u_xlatb13;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat0 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat1.x = float(0.0);
					    u_xlat1.y = float(0.0);
					    u_xlat1.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat13 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat13 = u_xlat13 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat13 = float(1.0) / u_xlat13;
					        u_xlat1.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat13) + u_xlat1.xyz;
					    }
					    u_xlat0.xyz = u_xlat1.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendMul" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec2 u_xlat4;
					int u_xlati12;
					float u_xlat13;
					bool u_xlatb13;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat0 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat1.x = float(0.0);
					    u_xlat1.y = float(0.0);
					    u_xlat1.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat13 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat13 = u_xlat13 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat13 = float(1.0) / u_xlat13;
					        u_xlat1.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat13) + u_xlat1.xyz;
					    }
					    u_xlat0.xyz = u_xlat1.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendMul" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec2 u_xlat4;
					int u_xlati12;
					float u_xlat13;
					bool u_xlatb13;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat0 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat1.x = float(0.0);
					    u_xlat1.y = float(0.0);
					    u_xlat1.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat13 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat13 = u_xlat13 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat13 = float(1.0) / u_xlat13;
					        u_xlat1.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat13) + u_xlat1.xyz;
					    }
					    u_xlat0.xyz = u_xlat1.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendMul" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec2 u_xlat4;
					int u_xlati12;
					float u_xlat13;
					bool u_xlatb13;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat0 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat1.x = float(0.0);
					    u_xlat1.y = float(0.0);
					    u_xlat1.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat13 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat13 = u_xlat13 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat13 = float(1.0) / u_xlat13;
					        u_xlat1.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat13) + u_xlat1.xyz;
					    }
					    u_xlat0.xyz = u_xlat1.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendMul" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec2 u_xlat4;
					int u_xlati12;
					float u_xlat13;
					bool u_xlatb13;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat0 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat1.x = float(0.0);
					    u_xlat1.y = float(0.0);
					    u_xlat1.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat13 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat13 = u_xlat13 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat13 = float(1.0) / u_xlat13;
					        u_xlat1.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat13) + u_xlat1.xyz;
					    }
					    u_xlat0.xyz = u_xlat1.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendMul" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec2 u_xlat4;
					int u_xlati12;
					float u_xlat13;
					bool u_xlatb13;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat0 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat1.x = float(0.0);
					    u_xlat1.y = float(0.0);
					    u_xlat1.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat13 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat13 = u_xlat13 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat13 = float(1.0) / u_xlat13;
					        u_xlat1.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat13) + u_xlat1.xyz;
					    }
					    u_xlat0.xyz = u_xlat1.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendMul" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec2 u_xlat4;
					int u_xlati12;
					float u_xlat13;
					bool u_xlatb13;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat0 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat1.x = float(0.0);
					    u_xlat1.y = float(0.0);
					    u_xlat1.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat13 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat13 = u_xlat13 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat13 = float(1.0) / u_xlat13;
					        u_xlat1.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat13) + u_xlat1.xyz;
					    }
					    u_xlat0.xyz = u_xlat1.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendMul" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec2 u_xlat4;
					int u_xlati12;
					float u_xlat13;
					bool u_xlatb13;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat0 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat1.x = float(0.0);
					    u_xlat1.y = float(0.0);
					    u_xlat1.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat13 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat13 = u_xlat13 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat13 = float(1.0) / u_xlat13;
					        u_xlat1.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat13) + u_xlat1.xyz;
					    }
					    u_xlat0.xyz = u_xlat1.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendMul" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec2 u_xlat4;
					int u_xlati12;
					float u_xlat13;
					bool u_xlatb13;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat0 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat1.x = float(0.0);
					    u_xlat1.y = float(0.0);
					    u_xlat1.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat13 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat13 = u_xlat13 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat13 = float(1.0) / u_xlat13;
					        u_xlat1.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat13) + u_xlat1.xyz;
					    }
					    u_xlat0.xyz = u_xlat1.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendMul" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec2 u_xlat4;
					int u_xlati12;
					float u_xlat13;
					bool u_xlatb13;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat0 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat1.x = float(0.0);
					    u_xlat1.y = float(0.0);
					    u_xlat1.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat13 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat13 = u_xlat13 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat13 = float(1.0) / u_xlat13;
					        u_xlat1.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat13) + u_xlat1.xyz;
					    }
					    u_xlat0.xyz = u_xlat1.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendMul" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec2 u_xlat4;
					int u_xlati12;
					float u_xlat13;
					bool u_xlatb13;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat0 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat1.x = float(0.0);
					    u_xlat1.y = float(0.0);
					    u_xlat1.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat13 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat13 = u_xlat13 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat13 = float(1.0) / u_xlat13;
					        u_xlat1.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat13) + u_xlat1.xyz;
					    }
					    u_xlat0.xyz = u_xlat1.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendMul" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec2 u_xlat4;
					int u_xlati12;
					float u_xlat13;
					bool u_xlatb13;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat0 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat1.x = float(0.0);
					    u_xlat1.y = float(0.0);
					    u_xlat1.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat13 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat13 = u_xlat13 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat13 = float(1.0) / u_xlat13;
					        u_xlat1.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat13) + u_xlat1.xyz;
					    }
					    u_xlat0.xyz = u_xlat1.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendMul" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec2 u_xlat4;
					int u_xlati12;
					float u_xlat13;
					bool u_xlatb13;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat0 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat1.x = float(0.0);
					    u_xlat1.y = float(0.0);
					    u_xlat1.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat13 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat13 = u_xlat13 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat13 = float(1.0) / u_xlat13;
					        u_xlat1.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat13) + u_xlat1.xyz;
					    }
					    u_xlat0.xyz = u_xlat1.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendMul" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec2 u_xlat4;
					int u_xlati12;
					float u_xlat13;
					bool u_xlatb13;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat0 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat1.x = float(0.0);
					    u_xlat1.y = float(0.0);
					    u_xlat1.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat13 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat13 = u_xlat13 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat13 = float(1.0) / u_xlat13;
					        u_xlat1.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat13) + u_xlat1.xyz;
					    }
					    u_xlat0.xyz = u_xlat1.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendMul" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec2 u_xlat4;
					int u_xlati12;
					float u_xlat13;
					bool u_xlatb13;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat0 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat1.x = float(0.0);
					    u_xlat1.y = float(0.0);
					    u_xlat1.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat13 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat13 = u_xlat13 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat13 = float(1.0) / u_xlat13;
					        u_xlat1.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat13) + u_xlat1.xyz;
					    }
					    u_xlat0.xyz = u_xlat1.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendMul" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat12;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat2.xyz = vec3(u_xlat12) * u_xlat2.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat2.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					bool u_xlatb3;
					vec2 u_xlat4;
					float u_xlat12;
					int u_xlati12;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat1 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat1.x);
					    u_xlat0.x = float(0.0);
					    u_xlat0.y = float(0.0);
					    u_xlat0.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat1.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat3.x = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat3.x = u_xlat3.x * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat3.x = float(1.0) / u_xlat3.x;
					        u_xlat0.xyz = unity_LightColor[u_xlati_loop_1].xyz * u_xlat3.xxx + u_xlat0.xyz;
					    }
					    u_xlat0.xyz = u_xlat0.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat1.xyz = vec3(u_xlat12) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendMul" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat12;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat2.xyz = vec3(u_xlat12) * u_xlat2.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat2.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					bool u_xlatb3;
					vec2 u_xlat4;
					float u_xlat12;
					int u_xlati12;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat1 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat1.x);
					    u_xlat0.x = float(0.0);
					    u_xlat0.y = float(0.0);
					    u_xlat0.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat1.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat3.x = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat3.x = u_xlat3.x * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat3.x = float(1.0) / u_xlat3.x;
					        u_xlat0.xyz = unity_LightColor[u_xlati_loop_1].xyz * u_xlat3.xxx + u_xlat0.xyz;
					    }
					    u_xlat0.xyz = u_xlat0.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat1.xyz = vec3(u_xlat12) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendMul" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat12;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat2.xyz = vec3(u_xlat12) * u_xlat2.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat2.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					bool u_xlatb3;
					vec2 u_xlat4;
					float u_xlat12;
					int u_xlati12;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat1 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat1.x);
					    u_xlat0.x = float(0.0);
					    u_xlat0.y = float(0.0);
					    u_xlat0.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat1.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat3.x = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat3.x = u_xlat3.x * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat3.x = float(1.0) / u_xlat3.x;
					        u_xlat0.xyz = unity_LightColor[u_xlati_loop_1].xyz * u_xlat3.xxx + u_xlat0.xyz;
					    }
					    u_xlat0.xyz = u_xlat0.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat1.xyz = vec3(u_xlat12) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendMul" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat12;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat2.xyz = vec3(u_xlat12) * u_xlat2.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat2.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					bool u_xlatb3;
					vec2 u_xlat4;
					float u_xlat12;
					int u_xlati12;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat1 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat1.x);
					    u_xlat0.x = float(0.0);
					    u_xlat0.y = float(0.0);
					    u_xlat0.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat1.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat3.x = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat3.x = u_xlat3.x * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat3.x = float(1.0) / u_xlat3.x;
					        u_xlat0.xyz = unity_LightColor[u_xlati_loop_1].xyz * u_xlat3.xxx + u_xlat0.xyz;
					    }
					    u_xlat0.xyz = u_xlat0.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat1.xyz = vec3(u_xlat12) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendMul" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat12;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat2.xyz = vec3(u_xlat12) * u_xlat2.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat2.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					bool u_xlatb3;
					vec2 u_xlat4;
					float u_xlat12;
					int u_xlati12;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat1 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat1.x);
					    u_xlat0.x = float(0.0);
					    u_xlat0.y = float(0.0);
					    u_xlat0.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat1.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat3.x = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat3.x = u_xlat3.x * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat3.x = float(1.0) / u_xlat3.x;
					        u_xlat0.xyz = unity_LightColor[u_xlati_loop_1].xyz * u_xlat3.xxx + u_xlat0.xyz;
					    }
					    u_xlat0.xyz = u_xlat0.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat1.xyz = vec3(u_xlat12) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendMul" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat12;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat2.xyz = vec3(u_xlat12) * u_xlat2.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat2.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					bool u_xlatb3;
					vec2 u_xlat4;
					float u_xlat12;
					int u_xlati12;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat1 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat1.x);
					    u_xlat0.x = float(0.0);
					    u_xlat0.y = float(0.0);
					    u_xlat0.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat1.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat3.x = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat3.x = u_xlat3.x * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat3.x = float(1.0) / u_xlat3.x;
					        u_xlat0.xyz = unity_LightColor[u_xlati_loop_1].xyz * u_xlat3.xxx + u_xlat0.xyz;
					    }
					    u_xlat0.xyz = u_xlat0.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat1.xyz = vec3(u_xlat12) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendMul" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat12;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat2.xyz = vec3(u_xlat12) * u_xlat2.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat2.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					bool u_xlatb3;
					vec2 u_xlat4;
					float u_xlat12;
					int u_xlati12;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat1 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat1.x);
					    u_xlat0.x = float(0.0);
					    u_xlat0.y = float(0.0);
					    u_xlat0.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat1.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat3.x = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat3.x = u_xlat3.x * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat3.x = float(1.0) / u_xlat3.x;
					        u_xlat0.xyz = unity_LightColor[u_xlati_loop_1].xyz * u_xlat3.xxx + u_xlat0.xyz;
					    }
					    u_xlat0.xyz = u_xlat0.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat1.xyz = vec3(u_xlat12) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendMul" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat12;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat2.xyz = vec3(u_xlat12) * u_xlat2.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat2.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					bool u_xlatb3;
					vec2 u_xlat4;
					float u_xlat12;
					int u_xlati12;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat1 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat1.x);
					    u_xlat0.x = float(0.0);
					    u_xlat0.y = float(0.0);
					    u_xlat0.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat1.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat3.x = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat3.x = u_xlat3.x * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat3.x = float(1.0) / u_xlat3.x;
					        u_xlat0.xyz = unity_LightColor[u_xlati_loop_1].xyz * u_xlat3.xxx + u_xlat0.xyz;
					    }
					    u_xlat0.xyz = u_xlat0.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat1.xyz = vec3(u_xlat12) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendMul" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat12;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat2.xyz = vec3(u_xlat12) * u_xlat2.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat2.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					bool u_xlatb3;
					vec2 u_xlat4;
					float u_xlat12;
					int u_xlati12;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat1 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat1.x);
					    u_xlat0.x = float(0.0);
					    u_xlat0.y = float(0.0);
					    u_xlat0.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat1.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat3.x = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat3.x = u_xlat3.x * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat3.x = float(1.0) / u_xlat3.x;
					        u_xlat0.xyz = unity_LightColor[u_xlati_loop_1].xyz * u_xlat3.xxx + u_xlat0.xyz;
					    }
					    u_xlat0.xyz = u_xlat0.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat1.xyz = vec3(u_xlat12) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendMul" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat12;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat2.xyz = vec3(u_xlat12) * u_xlat2.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat2.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					bool u_xlatb3;
					vec2 u_xlat4;
					float u_xlat12;
					int u_xlati12;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat1 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat1.x);
					    u_xlat0.x = float(0.0);
					    u_xlat0.y = float(0.0);
					    u_xlat0.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat1.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat3.x = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat3.x = u_xlat3.x * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat3.x = float(1.0) / u_xlat3.x;
					        u_xlat0.xyz = unity_LightColor[u_xlati_loop_1].xyz * u_xlat3.xxx + u_xlat0.xyz;
					    }
					    u_xlat0.xyz = u_xlat0.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat1.xyz = vec3(u_xlat12) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendMul" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat12;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat2.xyz = vec3(u_xlat12) * u_xlat2.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat2.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					bool u_xlatb3;
					vec2 u_xlat4;
					float u_xlat12;
					int u_xlati12;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat1 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat1.x);
					    u_xlat0.x = float(0.0);
					    u_xlat0.y = float(0.0);
					    u_xlat0.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat1.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat3.x = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat3.x = u_xlat3.x * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat3.x = float(1.0) / u_xlat3.x;
					        u_xlat0.xyz = unity_LightColor[u_xlati_loop_1].xyz * u_xlat3.xxx + u_xlat0.xyz;
					    }
					    u_xlat0.xyz = u_xlat0.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat1.xyz = vec3(u_xlat12) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendMul" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat12;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat2.xyz = vec3(u_xlat12) * u_xlat2.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat2.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					bool u_xlatb3;
					vec2 u_xlat4;
					float u_xlat12;
					int u_xlati12;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat1 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat1.x);
					    u_xlat0.x = float(0.0);
					    u_xlat0.y = float(0.0);
					    u_xlat0.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat1.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat3.x = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat3.x = u_xlat3.x * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat3.x = float(1.0) / u_xlat3.x;
					        u_xlat0.xyz = unity_LightColor[u_xlati_loop_1].xyz * u_xlat3.xxx + u_xlat0.xyz;
					    }
					    u_xlat0.xyz = u_xlat0.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat1.xyz = vec3(u_xlat12) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendMul" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat12;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat2.xyz = vec3(u_xlat12) * u_xlat2.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat2.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					bool u_xlatb3;
					vec2 u_xlat4;
					float u_xlat12;
					int u_xlati12;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat1 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat1.x);
					    u_xlat0.x = float(0.0);
					    u_xlat0.y = float(0.0);
					    u_xlat0.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat1.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat3.x = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat3.x = u_xlat3.x * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat3.x = float(1.0) / u_xlat3.x;
					        u_xlat0.xyz = unity_LightColor[u_xlati_loop_1].xyz * u_xlat3.xxx + u_xlat0.xyz;
					    }
					    u_xlat0.xyz = u_xlat0.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat1.xyz = vec3(u_xlat12) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendMul" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat12;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat2.xyz = vec3(u_xlat12) * u_xlat2.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat2.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					bool u_xlatb3;
					vec2 u_xlat4;
					float u_xlat12;
					int u_xlati12;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat1 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat1.x);
					    u_xlat0.x = float(0.0);
					    u_xlat0.y = float(0.0);
					    u_xlat0.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat1.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat3.x = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat3.x = u_xlat3.x * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat3.x = float(1.0) / u_xlat3.x;
					        u_xlat0.xyz = unity_LightColor[u_xlati_loop_1].xyz * u_xlat3.xxx + u_xlat0.xyz;
					    }
					    u_xlat0.xyz = u_xlat0.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat1.xyz = vec3(u_xlat12) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendMul" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat12;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat2.xyz = vec3(u_xlat12) * u_xlat2.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat2.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					bool u_xlatb3;
					vec2 u_xlat4;
					float u_xlat12;
					int u_xlati12;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat1 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat1.x);
					    u_xlat0.x = float(0.0);
					    u_xlat0.y = float(0.0);
					    u_xlat0.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat1.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat3.x = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat3.x = u_xlat3.x * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat3.x = float(1.0) / u_xlat3.x;
					        u_xlat0.xyz = unity_LightColor[u_xlati_loop_1].xyz * u_xlat3.xxx + u_xlat0.xyz;
					    }
					    u_xlat0.xyz = u_xlat0.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat1.xyz = vec3(u_xlat12) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendMul" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat12;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat2.xyz = vec3(u_xlat12) * u_xlat2.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat2.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					bool u_xlatb3;
					vec2 u_xlat4;
					float u_xlat12;
					int u_xlati12;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat1 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat1.x);
					    u_xlat0.x = float(0.0);
					    u_xlat0.y = float(0.0);
					    u_xlat0.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat1.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat3.x = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat3.x = u_xlat3.x * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat3.x = float(1.0) / u_xlat3.x;
					        u_xlat0.xyz = unity_LightColor[u_xlati_loop_1].xyz * u_xlat3.xxx + u_xlat0.xyz;
					    }
					    u_xlat0.xyz = u_xlat0.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat1.xyz = vec3(u_xlat12) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendMul" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec2 u_xlat4;
					int u_xlati12;
					float u_xlat13;
					bool u_xlatb13;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat0 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat1.x = float(0.0);
					    u_xlat1.y = float(0.0);
					    u_xlat1.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat13 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat13 = u_xlat13 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat13 = float(1.0) / u_xlat13;
					        u_xlat1.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat13) + u_xlat1.xyz;
					    }
					    u_xlat0.xyz = u_xlat1.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendMul" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec2 u_xlat4;
					int u_xlati12;
					float u_xlat13;
					bool u_xlatb13;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat0 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat1.x = float(0.0);
					    u_xlat1.y = float(0.0);
					    u_xlat1.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat13 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat13 = u_xlat13 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat13 = float(1.0) / u_xlat13;
					        u_xlat1.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat13) + u_xlat1.xyz;
					    }
					    u_xlat0.xyz = u_xlat1.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendMul" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec2 u_xlat4;
					int u_xlati12;
					float u_xlat13;
					bool u_xlatb13;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat0 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat1.x = float(0.0);
					    u_xlat1.y = float(0.0);
					    u_xlat1.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat13 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat13 = u_xlat13 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat13 = float(1.0) / u_xlat13;
					        u_xlat1.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat13) + u_xlat1.xyz;
					    }
					    u_xlat0.xyz = u_xlat1.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendMul" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec2 u_xlat4;
					int u_xlati12;
					float u_xlat13;
					bool u_xlatb13;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat0 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat1.x = float(0.0);
					    u_xlat1.y = float(0.0);
					    u_xlat1.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat13 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat13 = u_xlat13 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat13 = float(1.0) / u_xlat13;
					        u_xlat1.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat13) + u_xlat1.xyz;
					    }
					    u_xlat0.xyz = u_xlat1.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendMul" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec2 u_xlat4;
					int u_xlati12;
					float u_xlat13;
					bool u_xlatb13;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat0 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat1.x = float(0.0);
					    u_xlat1.y = float(0.0);
					    u_xlat1.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat13 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat13 = u_xlat13 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat13 = float(1.0) / u_xlat13;
					        u_xlat1.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat13) + u_xlat1.xyz;
					    }
					    u_xlat0.xyz = u_xlat1.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendMul" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec2 u_xlat4;
					int u_xlati12;
					float u_xlat13;
					bool u_xlatb13;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat0 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat1.x = float(0.0);
					    u_xlat1.y = float(0.0);
					    u_xlat1.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat13 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat13 = u_xlat13 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat13 = float(1.0) / u_xlat13;
					        u_xlat1.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat13) + u_xlat1.xyz;
					    }
					    u_xlat0.xyz = u_xlat1.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendMul" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec2 u_xlat4;
					int u_xlati12;
					float u_xlat13;
					bool u_xlatb13;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat0 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat1.x = float(0.0);
					    u_xlat1.y = float(0.0);
					    u_xlat1.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat13 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat13 = u_xlat13 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat13 = float(1.0) / u_xlat13;
					        u_xlat1.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat13) + u_xlat1.xyz;
					    }
					    u_xlat0.xyz = u_xlat1.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendMul" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec2 u_xlat4;
					int u_xlati12;
					float u_xlat13;
					bool u_xlatb13;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat0 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat1.x = float(0.0);
					    u_xlat1.y = float(0.0);
					    u_xlat1.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat13 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat13 = u_xlat13 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat13 = float(1.0) / u_xlat13;
					        u_xlat1.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat13) + u_xlat1.xyz;
					    }
					    u_xlat0.xyz = u_xlat1.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendMul" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec2 u_xlat4;
					int u_xlati12;
					float u_xlat13;
					bool u_xlatb13;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat0 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat1.x = float(0.0);
					    u_xlat1.y = float(0.0);
					    u_xlat1.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat13 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat13 = u_xlat13 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat13 = float(1.0) / u_xlat13;
					        u_xlat1.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat13) + u_xlat1.xyz;
					    }
					    u_xlat0.xyz = u_xlat1.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendMul" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec2 u_xlat4;
					int u_xlati12;
					float u_xlat13;
					bool u_xlatb13;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat0 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat1.x = float(0.0);
					    u_xlat1.y = float(0.0);
					    u_xlat1.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat13 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat13 = u_xlat13 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat13 = float(1.0) / u_xlat13;
					        u_xlat1.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat13) + u_xlat1.xyz;
					    }
					    u_xlat0.xyz = u_xlat1.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendMul" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec2 u_xlat4;
					int u_xlati12;
					float u_xlat13;
					bool u_xlatb13;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat0 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat1.x = float(0.0);
					    u_xlat1.y = float(0.0);
					    u_xlat1.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat13 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat13 = u_xlat13 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat13 = float(1.0) / u_xlat13;
					        u_xlat1.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat13) + u_xlat1.xyz;
					    }
					    u_xlat0.xyz = u_xlat1.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendMul" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec2 u_xlat4;
					int u_xlati12;
					float u_xlat13;
					bool u_xlatb13;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat0 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat1.x = float(0.0);
					    u_xlat1.y = float(0.0);
					    u_xlat1.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat13 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat13 = u_xlat13 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat13 = float(1.0) / u_xlat13;
					        u_xlat1.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat13) + u_xlat1.xyz;
					    }
					    u_xlat0.xyz = u_xlat1.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendMul" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec2 u_xlat4;
					int u_xlati12;
					float u_xlat13;
					bool u_xlatb13;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat0 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat1.x = float(0.0);
					    u_xlat1.y = float(0.0);
					    u_xlat1.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat13 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat13 = u_xlat13 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat13 = float(1.0) / u_xlat13;
					        u_xlat1.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat13) + u_xlat1.xyz;
					    }
					    u_xlat0.xyz = u_xlat1.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendMul" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec2 u_xlat4;
					int u_xlati12;
					float u_xlat13;
					bool u_xlatb13;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat0 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat1.x = float(0.0);
					    u_xlat1.y = float(0.0);
					    u_xlat1.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat13 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat13 = u_xlat13 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat13 = float(1.0) / u_xlat13;
					        u_xlat1.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat13) + u_xlat1.xyz;
					    }
					    u_xlat0.xyz = u_xlat1.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendMul" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec2 u_xlat4;
					int u_xlati12;
					float u_xlat13;
					bool u_xlatb13;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat0 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat1.x = float(0.0);
					    u_xlat1.y = float(0.0);
					    u_xlat1.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat13 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat13 = u_xlat13 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat13 = float(1.0) / u_xlat13;
					        u_xlat1.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat13) + u_xlat1.xyz;
					    }
					    u_xlat0.xyz = u_xlat1.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendMul" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec2 u_xlat4;
					int u_xlati12;
					float u_xlat13;
					bool u_xlatb13;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat0 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat1.x = float(0.0);
					    u_xlat1.y = float(0.0);
					    u_xlat1.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat13 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat13 = u_xlat13 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat13 = float(1.0) / u_xlat13;
					        u_xlat1.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat13) + u_xlat1.xyz;
					    }
					    u_xlat0.xyz = u_xlat1.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendMul" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat12;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat2.xyz = vec3(u_xlat12) * u_xlat2.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat2.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					bool u_xlatb3;
					vec2 u_xlat4;
					float u_xlat12;
					int u_xlati12;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat1 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat1.x);
					    u_xlat0.x = float(0.0);
					    u_xlat0.y = float(0.0);
					    u_xlat0.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat1.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat3.x = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat3.x = u_xlat3.x * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat3.x = float(1.0) / u_xlat3.x;
					        u_xlat0.xyz = unity_LightColor[u_xlati_loop_1].xyz * u_xlat3.xxx + u_xlat0.xyz;
					    }
					    u_xlat0.xyz = u_xlat0.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat1.xyz = vec3(u_xlat12) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendMul" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat12;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat2.xyz = vec3(u_xlat12) * u_xlat2.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat2.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					bool u_xlatb3;
					vec2 u_xlat4;
					float u_xlat12;
					int u_xlati12;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat1 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat1.x);
					    u_xlat0.x = float(0.0);
					    u_xlat0.y = float(0.0);
					    u_xlat0.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat1.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat3.x = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat3.x = u_xlat3.x * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat3.x = float(1.0) / u_xlat3.x;
					        u_xlat0.xyz = unity_LightColor[u_xlati_loop_1].xyz * u_xlat3.xxx + u_xlat0.xyz;
					    }
					    u_xlat0.xyz = u_xlat0.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat1.xyz = vec3(u_xlat12) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendMul" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat12;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat2.xyz = vec3(u_xlat12) * u_xlat2.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat2.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					bool u_xlatb3;
					vec2 u_xlat4;
					float u_xlat12;
					int u_xlati12;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat1 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat1.x);
					    u_xlat0.x = float(0.0);
					    u_xlat0.y = float(0.0);
					    u_xlat0.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat1.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat3.x = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat3.x = u_xlat3.x * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat3.x = float(1.0) / u_xlat3.x;
					        u_xlat0.xyz = unity_LightColor[u_xlati_loop_1].xyz * u_xlat3.xxx + u_xlat0.xyz;
					    }
					    u_xlat0.xyz = u_xlat0.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat1.xyz = vec3(u_xlat12) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendMul" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat12;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat2.xyz = vec3(u_xlat12) * u_xlat2.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat2.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					bool u_xlatb3;
					vec2 u_xlat4;
					float u_xlat12;
					int u_xlati12;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat1 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat1.x);
					    u_xlat0.x = float(0.0);
					    u_xlat0.y = float(0.0);
					    u_xlat0.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat1.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat3.x = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat3.x = u_xlat3.x * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat3.x = float(1.0) / u_xlat3.x;
					        u_xlat0.xyz = unity_LightColor[u_xlati_loop_1].xyz * u_xlat3.xxx + u_xlat0.xyz;
					    }
					    u_xlat0.xyz = u_xlat0.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat1.xyz = vec3(u_xlat12) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendMul" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat12;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat2.xyz = vec3(u_xlat12) * u_xlat2.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat2.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					bool u_xlatb3;
					vec2 u_xlat4;
					float u_xlat12;
					int u_xlati12;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat1 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat1.x);
					    u_xlat0.x = float(0.0);
					    u_xlat0.y = float(0.0);
					    u_xlat0.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat1.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat3.x = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat3.x = u_xlat3.x * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat3.x = float(1.0) / u_xlat3.x;
					        u_xlat0.xyz = unity_LightColor[u_xlati_loop_1].xyz * u_xlat3.xxx + u_xlat0.xyz;
					    }
					    u_xlat0.xyz = u_xlat0.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat1.xyz = vec3(u_xlat12) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendMul" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat12;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat2.xyz = vec3(u_xlat12) * u_xlat2.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat2.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					bool u_xlatb3;
					vec2 u_xlat4;
					float u_xlat12;
					int u_xlati12;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat1 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat1.x);
					    u_xlat0.x = float(0.0);
					    u_xlat0.y = float(0.0);
					    u_xlat0.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat1.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat3.x = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat3.x = u_xlat3.x * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat3.x = float(1.0) / u_xlat3.x;
					        u_xlat0.xyz = unity_LightColor[u_xlati_loop_1].xyz * u_xlat3.xxx + u_xlat0.xyz;
					    }
					    u_xlat0.xyz = u_xlat0.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat1.xyz = vec3(u_xlat12) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendMul" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat12;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat2.xyz = vec3(u_xlat12) * u_xlat2.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat2.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					bool u_xlatb3;
					vec2 u_xlat4;
					float u_xlat12;
					int u_xlati12;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat1 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat1.x);
					    u_xlat0.x = float(0.0);
					    u_xlat0.y = float(0.0);
					    u_xlat0.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat1.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat3.x = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat3.x = u_xlat3.x * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat3.x = float(1.0) / u_xlat3.x;
					        u_xlat0.xyz = unity_LightColor[u_xlati_loop_1].xyz * u_xlat3.xxx + u_xlat0.xyz;
					    }
					    u_xlat0.xyz = u_xlat0.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat1.xyz = vec3(u_xlat12) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendMul" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat12;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat2.xyz = vec3(u_xlat12) * u_xlat2.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat2.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					bool u_xlatb3;
					vec2 u_xlat4;
					float u_xlat12;
					int u_xlati12;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat1 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat1.x);
					    u_xlat0.x = float(0.0);
					    u_xlat0.y = float(0.0);
					    u_xlat0.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat1.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat3.x = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat3.x = u_xlat3.x * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat3.x = float(1.0) / u_xlat3.x;
					        u_xlat0.xyz = unity_LightColor[u_xlati_loop_1].xyz * u_xlat3.xxx + u_xlat0.xyz;
					    }
					    u_xlat0.xyz = u_xlat0.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat1.xyz = vec3(u_xlat12) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendMul" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat12;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat2.xyz = vec3(u_xlat12) * u_xlat2.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat2.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					bool u_xlatb3;
					vec2 u_xlat4;
					float u_xlat12;
					int u_xlati12;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat1 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat1.x);
					    u_xlat0.x = float(0.0);
					    u_xlat0.y = float(0.0);
					    u_xlat0.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat1.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat3.x = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat3.x = u_xlat3.x * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat3.x = float(1.0) / u_xlat3.x;
					        u_xlat0.xyz = unity_LightColor[u_xlati_loop_1].xyz * u_xlat3.xxx + u_xlat0.xyz;
					    }
					    u_xlat0.xyz = u_xlat0.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat1.xyz = vec3(u_xlat12) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendMul" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat12;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat2.xyz = vec3(u_xlat12) * u_xlat2.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat2.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					bool u_xlatb3;
					vec2 u_xlat4;
					float u_xlat12;
					int u_xlati12;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat1 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat1.x);
					    u_xlat0.x = float(0.0);
					    u_xlat0.y = float(0.0);
					    u_xlat0.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat1.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat3.x = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat3.x = u_xlat3.x * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat3.x = float(1.0) / u_xlat3.x;
					        u_xlat0.xyz = unity_LightColor[u_xlati_loop_1].xyz * u_xlat3.xxx + u_xlat0.xyz;
					    }
					    u_xlat0.xyz = u_xlat0.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat1.xyz = vec3(u_xlat12) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendMul" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat12;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat2.xyz = vec3(u_xlat12) * u_xlat2.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat2.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					bool u_xlatb3;
					vec2 u_xlat4;
					float u_xlat12;
					int u_xlati12;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat1 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat1.x);
					    u_xlat0.x = float(0.0);
					    u_xlat0.y = float(0.0);
					    u_xlat0.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat1.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat3.x = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat3.x = u_xlat3.x * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat3.x = float(1.0) / u_xlat3.x;
					        u_xlat0.xyz = unity_LightColor[u_xlati_loop_1].xyz * u_xlat3.xxx + u_xlat0.xyz;
					    }
					    u_xlat0.xyz = u_xlat0.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat1.xyz = vec3(u_xlat12) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendMul" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat12;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat2.xyz = vec3(u_xlat12) * u_xlat2.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat2.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					bool u_xlatb3;
					vec2 u_xlat4;
					float u_xlat12;
					int u_xlati12;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat1 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat1.x);
					    u_xlat0.x = float(0.0);
					    u_xlat0.y = float(0.0);
					    u_xlat0.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat1.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat3.x = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat3.x = u_xlat3.x * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat3.x = float(1.0) / u_xlat3.x;
					        u_xlat0.xyz = unity_LightColor[u_xlati_loop_1].xyz * u_xlat3.xxx + u_xlat0.xyz;
					    }
					    u_xlat0.xyz = u_xlat0.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat1.xyz = vec3(u_xlat12) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendMul" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat12;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat2.xyz = vec3(u_xlat12) * u_xlat2.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat2.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					bool u_xlatb3;
					vec2 u_xlat4;
					float u_xlat12;
					int u_xlati12;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat1 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat1.x);
					    u_xlat0.x = float(0.0);
					    u_xlat0.y = float(0.0);
					    u_xlat0.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat1.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat3.x = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat3.x = u_xlat3.x * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat3.x = float(1.0) / u_xlat3.x;
					        u_xlat0.xyz = unity_LightColor[u_xlati_loop_1].xyz * u_xlat3.xxx + u_xlat0.xyz;
					    }
					    u_xlat0.xyz = u_xlat0.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat1.xyz = vec3(u_xlat12) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendMul" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat12;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat2.xyz = vec3(u_xlat12) * u_xlat2.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat2.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					bool u_xlatb3;
					vec2 u_xlat4;
					float u_xlat12;
					int u_xlati12;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat1 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat1.x);
					    u_xlat0.x = float(0.0);
					    u_xlat0.y = float(0.0);
					    u_xlat0.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat1.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat3.x = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat3.x = u_xlat3.x * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat3.x = float(1.0) / u_xlat3.x;
					        u_xlat0.xyz = unity_LightColor[u_xlati_loop_1].xyz * u_xlat3.xxx + u_xlat0.xyz;
					    }
					    u_xlat0.xyz = u_xlat0.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat1.xyz = vec3(u_xlat12) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendMul" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat12;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat2.xyz = vec3(u_xlat12) * u_xlat2.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat2.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					bool u_xlatb3;
					vec2 u_xlat4;
					float u_xlat12;
					int u_xlati12;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat1 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat1.x);
					    u_xlat0.x = float(0.0);
					    u_xlat0.y = float(0.0);
					    u_xlat0.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat1.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat3.x = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat3.x = u_xlat3.x * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat3.x = float(1.0) / u_xlat3.x;
					        u_xlat0.xyz = unity_LightColor[u_xlati_loop_1].xyz * u_xlat3.xxx + u_xlat0.xyz;
					    }
					    u_xlat0.xyz = u_xlat0.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat1.xyz = vec3(u_xlat12) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendMul" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat12;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat2.xyz = vec3(u_xlat12) * u_xlat2.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat2.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					bool u_xlatb3;
					vec2 u_xlat4;
					float u_xlat12;
					int u_xlati12;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat1 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat1.x);
					    u_xlat0.x = float(0.0);
					    u_xlat0.y = float(0.0);
					    u_xlat0.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat1.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat3.x = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat3.x = u_xlat3.x * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat3.x = float(1.0) / u_xlat3.x;
					        u_xlat0.xyz = unity_LightColor[u_xlati_loop_1].xyz * u_xlat3.xxx + u_xlat0.xyz;
					    }
					    u_xlat0.xyz = u_xlat0.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat1.xyz = vec3(u_xlat12) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendMul" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec2 u_xlat4;
					int u_xlati12;
					float u_xlat13;
					bool u_xlatb13;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat0 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat1.x = float(0.0);
					    u_xlat1.y = float(0.0);
					    u_xlat1.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat13 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat13 = u_xlat13 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat13 = float(1.0) / u_xlat13;
					        u_xlat1.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat13) + u_xlat1.xyz;
					    }
					    u_xlat0.xyz = u_xlat1.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendMul" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec2 u_xlat4;
					int u_xlati12;
					float u_xlat13;
					bool u_xlatb13;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat0 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat1.x = float(0.0);
					    u_xlat1.y = float(0.0);
					    u_xlat1.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat13 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat13 = u_xlat13 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat13 = float(1.0) / u_xlat13;
					        u_xlat1.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat13) + u_xlat1.xyz;
					    }
					    u_xlat0.xyz = u_xlat1.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendMul" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec2 u_xlat4;
					int u_xlati12;
					float u_xlat13;
					bool u_xlatb13;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat0 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat1.x = float(0.0);
					    u_xlat1.y = float(0.0);
					    u_xlat1.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat13 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat13 = u_xlat13 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat13 = float(1.0) / u_xlat13;
					        u_xlat1.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat13) + u_xlat1.xyz;
					    }
					    u_xlat0.xyz = u_xlat1.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendMul" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec2 u_xlat4;
					int u_xlati12;
					float u_xlat13;
					bool u_xlatb13;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat0 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat1.x = float(0.0);
					    u_xlat1.y = float(0.0);
					    u_xlat1.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat13 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat13 = u_xlat13 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat13 = float(1.0) / u_xlat13;
					        u_xlat1.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat13) + u_xlat1.xyz;
					    }
					    u_xlat0.xyz = u_xlat1.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendMul" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec2 u_xlat4;
					int u_xlati12;
					float u_xlat13;
					bool u_xlatb13;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat0 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat1.x = float(0.0);
					    u_xlat1.y = float(0.0);
					    u_xlat1.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat13 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat13 = u_xlat13 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat13 = float(1.0) / u_xlat13;
					        u_xlat1.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat13) + u_xlat1.xyz;
					    }
					    u_xlat0.xyz = u_xlat1.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendMul" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec2 u_xlat4;
					int u_xlati12;
					float u_xlat13;
					bool u_xlatb13;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat0 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat1.x = float(0.0);
					    u_xlat1.y = float(0.0);
					    u_xlat1.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat13 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat13 = u_xlat13 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat13 = float(1.0) / u_xlat13;
					        u_xlat1.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat13) + u_xlat1.xyz;
					    }
					    u_xlat0.xyz = u_xlat1.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendMul" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec2 u_xlat4;
					int u_xlati12;
					float u_xlat13;
					bool u_xlatb13;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat0 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat1.x = float(0.0);
					    u_xlat1.y = float(0.0);
					    u_xlat1.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat13 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat13 = u_xlat13 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat13 = float(1.0) / u_xlat13;
					        u_xlat1.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat13) + u_xlat1.xyz;
					    }
					    u_xlat0.xyz = u_xlat1.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendMul" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec2 u_xlat4;
					int u_xlati12;
					float u_xlat13;
					bool u_xlatb13;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat0 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat1.x = float(0.0);
					    u_xlat1.y = float(0.0);
					    u_xlat1.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat13 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat13 = u_xlat13 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat13 = float(1.0) / u_xlat13;
					        u_xlat1.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat13) + u_xlat1.xyz;
					    }
					    u_xlat0.xyz = u_xlat1.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendMul" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec2 u_xlat4;
					int u_xlati12;
					float u_xlat13;
					bool u_xlatb13;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat0 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat1.x = float(0.0);
					    u_xlat1.y = float(0.0);
					    u_xlat1.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat13 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat13 = u_xlat13 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat13 = float(1.0) / u_xlat13;
					        u_xlat1.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat13) + u_xlat1.xyz;
					    }
					    u_xlat0.xyz = u_xlat1.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendMul" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec2 u_xlat4;
					int u_xlati12;
					float u_xlat13;
					bool u_xlatb13;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat0 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat1.x = float(0.0);
					    u_xlat1.y = float(0.0);
					    u_xlat1.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat13 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat13 = u_xlat13 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat13 = float(1.0) / u_xlat13;
					        u_xlat1.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat13) + u_xlat1.xyz;
					    }
					    u_xlat0.xyz = u_xlat1.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendMul" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec2 u_xlat4;
					int u_xlati12;
					float u_xlat13;
					bool u_xlatb13;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat0 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat1.x = float(0.0);
					    u_xlat1.y = float(0.0);
					    u_xlat1.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat13 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat13 = u_xlat13 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat13 = float(1.0) / u_xlat13;
					        u_xlat1.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat13) + u_xlat1.xyz;
					    }
					    u_xlat0.xyz = u_xlat1.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendMul" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec2 u_xlat4;
					int u_xlati12;
					float u_xlat13;
					bool u_xlatb13;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat0 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat1.x = float(0.0);
					    u_xlat1.y = float(0.0);
					    u_xlat1.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat13 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat13 = u_xlat13 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat13 = float(1.0) / u_xlat13;
					        u_xlat1.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat13) + u_xlat1.xyz;
					    }
					    u_xlat0.xyz = u_xlat1.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendMul" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec2 u_xlat4;
					int u_xlati12;
					float u_xlat13;
					bool u_xlatb13;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat0 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat1.x = float(0.0);
					    u_xlat1.y = float(0.0);
					    u_xlat1.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat13 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat13 = u_xlat13 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat13 = float(1.0) / u_xlat13;
					        u_xlat1.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat13) + u_xlat1.xyz;
					    }
					    u_xlat0.xyz = u_xlat1.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendMul" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec2 u_xlat4;
					int u_xlati12;
					float u_xlat13;
					bool u_xlatb13;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat0 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat1.x = float(0.0);
					    u_xlat1.y = float(0.0);
					    u_xlat1.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat13 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat13 = u_xlat13 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat13 = float(1.0) / u_xlat13;
					        u_xlat1.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat13) + u_xlat1.xyz;
					    }
					    u_xlat0.xyz = u_xlat1.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendMul" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec2 u_xlat4;
					int u_xlati12;
					float u_xlat13;
					bool u_xlatb13;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat0 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat1.x = float(0.0);
					    u_xlat1.y = float(0.0);
					    u_xlat1.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat13 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat13 = u_xlat13 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat13 = float(1.0) / u_xlat13;
					        u_xlat1.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat13) + u_xlat1.xyz;
					    }
					    u_xlat0.xyz = u_xlat1.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendMul" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec2 u_xlat4;
					int u_xlati12;
					float u_xlat13;
					bool u_xlatb13;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat0 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat1.x = float(0.0);
					    u_xlat1.y = float(0.0);
					    u_xlat1.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat13 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat13 = u_xlat13 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat13 = float(1.0) / u_xlat13;
					        u_xlat1.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat13) + u_xlat1.xyz;
					    }
					    u_xlat0.xyz = u_xlat1.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendMul" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat12;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat2.xyz = vec3(u_xlat12) * u_xlat2.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat2.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					bool u_xlatb3;
					vec2 u_xlat4;
					float u_xlat12;
					int u_xlati12;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat1 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat1.x);
					    u_xlat0.x = float(0.0);
					    u_xlat0.y = float(0.0);
					    u_xlat0.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat1.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat3.x = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat3.x = u_xlat3.x * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat3.x = float(1.0) / u_xlat3.x;
					        u_xlat0.xyz = unity_LightColor[u_xlati_loop_1].xyz * u_xlat3.xxx + u_xlat0.xyz;
					    }
					    u_xlat0.xyz = u_xlat0.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat1.xyz = vec3(u_xlat12) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendMul" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat12;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat2.xyz = vec3(u_xlat12) * u_xlat2.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat2.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					bool u_xlatb3;
					vec2 u_xlat4;
					float u_xlat12;
					int u_xlati12;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat1 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat1.x);
					    u_xlat0.x = float(0.0);
					    u_xlat0.y = float(0.0);
					    u_xlat0.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat1.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat3.x = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat3.x = u_xlat3.x * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat3.x = float(1.0) / u_xlat3.x;
					        u_xlat0.xyz = unity_LightColor[u_xlati_loop_1].xyz * u_xlat3.xxx + u_xlat0.xyz;
					    }
					    u_xlat0.xyz = u_xlat0.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat1.xyz = vec3(u_xlat12) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendMul" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat12;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat2.xyz = vec3(u_xlat12) * u_xlat2.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat2.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					bool u_xlatb3;
					vec2 u_xlat4;
					float u_xlat12;
					int u_xlati12;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat1 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat1.x);
					    u_xlat0.x = float(0.0);
					    u_xlat0.y = float(0.0);
					    u_xlat0.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat1.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat3.x = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat3.x = u_xlat3.x * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat3.x = float(1.0) / u_xlat3.x;
					        u_xlat0.xyz = unity_LightColor[u_xlati_loop_1].xyz * u_xlat3.xxx + u_xlat0.xyz;
					    }
					    u_xlat0.xyz = u_xlat0.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat1.xyz = vec3(u_xlat12) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendMul" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat12;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat2.xyz = vec3(u_xlat12) * u_xlat2.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat2.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					bool u_xlatb3;
					vec2 u_xlat4;
					float u_xlat12;
					int u_xlati12;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat1 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat1.x);
					    u_xlat0.x = float(0.0);
					    u_xlat0.y = float(0.0);
					    u_xlat0.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat1.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat3.x = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat3.x = u_xlat3.x * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat3.x = float(1.0) / u_xlat3.x;
					        u_xlat0.xyz = unity_LightColor[u_xlati_loop_1].xyz * u_xlat3.xxx + u_xlat0.xyz;
					    }
					    u_xlat0.xyz = u_xlat0.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat1.xyz = vec3(u_xlat12) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendMul" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat12;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat2.xyz = vec3(u_xlat12) * u_xlat2.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat2.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					bool u_xlatb3;
					vec2 u_xlat4;
					float u_xlat12;
					int u_xlati12;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat1 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat1.x);
					    u_xlat0.x = float(0.0);
					    u_xlat0.y = float(0.0);
					    u_xlat0.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat1.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat3.x = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat3.x = u_xlat3.x * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat3.x = float(1.0) / u_xlat3.x;
					        u_xlat0.xyz = unity_LightColor[u_xlati_loop_1].xyz * u_xlat3.xxx + u_xlat0.xyz;
					    }
					    u_xlat0.xyz = u_xlat0.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat1.xyz = vec3(u_xlat12) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendMul" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat12;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat2.xyz = vec3(u_xlat12) * u_xlat2.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat2.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					bool u_xlatb3;
					vec2 u_xlat4;
					float u_xlat12;
					int u_xlati12;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat1 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat1.x);
					    u_xlat0.x = float(0.0);
					    u_xlat0.y = float(0.0);
					    u_xlat0.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat1.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat3.x = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat3.x = u_xlat3.x * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat3.x = float(1.0) / u_xlat3.x;
					        u_xlat0.xyz = unity_LightColor[u_xlati_loop_1].xyz * u_xlat3.xxx + u_xlat0.xyz;
					    }
					    u_xlat0.xyz = u_xlat0.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat1.xyz = vec3(u_xlat12) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendMul" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat12;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat2.xyz = vec3(u_xlat12) * u_xlat2.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat2.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					bool u_xlatb3;
					vec2 u_xlat4;
					float u_xlat12;
					int u_xlati12;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat1 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat1.x);
					    u_xlat0.x = float(0.0);
					    u_xlat0.y = float(0.0);
					    u_xlat0.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat1.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat3.x = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat3.x = u_xlat3.x * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat3.x = float(1.0) / u_xlat3.x;
					        u_xlat0.xyz = unity_LightColor[u_xlati_loop_1].xyz * u_xlat3.xxx + u_xlat0.xyz;
					    }
					    u_xlat0.xyz = u_xlat0.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat1.xyz = vec3(u_xlat12) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendMul" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat12;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat2.xyz = vec3(u_xlat12) * u_xlat2.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat2.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					bool u_xlatb3;
					vec2 u_xlat4;
					float u_xlat12;
					int u_xlati12;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat1 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat1.x);
					    u_xlat0.x = float(0.0);
					    u_xlat0.y = float(0.0);
					    u_xlat0.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat1.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat3.x = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat3.x = u_xlat3.x * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat3.x = float(1.0) / u_xlat3.x;
					        u_xlat0.xyz = unity_LightColor[u_xlati_loop_1].xyz * u_xlat3.xxx + u_xlat0.xyz;
					    }
					    u_xlat0.xyz = u_xlat0.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat1.xyz = vec3(u_xlat12) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendMul" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat12;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat2.xyz = vec3(u_xlat12) * u_xlat2.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat2.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					bool u_xlatb3;
					vec2 u_xlat4;
					float u_xlat12;
					int u_xlati12;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat1 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat1.x);
					    u_xlat0.x = float(0.0);
					    u_xlat0.y = float(0.0);
					    u_xlat0.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat1.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat3.x = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat3.x = u_xlat3.x * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat3.x = float(1.0) / u_xlat3.x;
					        u_xlat0.xyz = unity_LightColor[u_xlati_loop_1].xyz * u_xlat3.xxx + u_xlat0.xyz;
					    }
					    u_xlat0.xyz = u_xlat0.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat1.xyz = vec3(u_xlat12) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendMul" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat12;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat2.xyz = vec3(u_xlat12) * u_xlat2.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat2.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					bool u_xlatb3;
					vec2 u_xlat4;
					float u_xlat12;
					int u_xlati12;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat1 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat1.x);
					    u_xlat0.x = float(0.0);
					    u_xlat0.y = float(0.0);
					    u_xlat0.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat1.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat3.x = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat3.x = u_xlat3.x * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat3.x = float(1.0) / u_xlat3.x;
					        u_xlat0.xyz = unity_LightColor[u_xlati_loop_1].xyz * u_xlat3.xxx + u_xlat0.xyz;
					    }
					    u_xlat0.xyz = u_xlat0.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat1.xyz = vec3(u_xlat12) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendMul" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat12;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat2.xyz = vec3(u_xlat12) * u_xlat2.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat2.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					bool u_xlatb3;
					vec2 u_xlat4;
					float u_xlat12;
					int u_xlati12;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat1 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat1.x);
					    u_xlat0.x = float(0.0);
					    u_xlat0.y = float(0.0);
					    u_xlat0.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat1.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat3.x = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat3.x = u_xlat3.x * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat3.x = float(1.0) / u_xlat3.x;
					        u_xlat0.xyz = unity_LightColor[u_xlati_loop_1].xyz * u_xlat3.xxx + u_xlat0.xyz;
					    }
					    u_xlat0.xyz = u_xlat0.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat1.xyz = vec3(u_xlat12) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendMul" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat12;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat2.xyz = vec3(u_xlat12) * u_xlat2.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat2.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					bool u_xlatb3;
					vec2 u_xlat4;
					float u_xlat12;
					int u_xlati12;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat1 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat1.x);
					    u_xlat0.x = float(0.0);
					    u_xlat0.y = float(0.0);
					    u_xlat0.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat1.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat3.x = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat3.x = u_xlat3.x * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat3.x = float(1.0) / u_xlat3.x;
					        u_xlat0.xyz = unity_LightColor[u_xlati_loop_1].xyz * u_xlat3.xxx + u_xlat0.xyz;
					    }
					    u_xlat0.xyz = u_xlat0.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat1.xyz = vec3(u_xlat12) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendMul" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat12;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat2.xyz = vec3(u_xlat12) * u_xlat2.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat2.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					bool u_xlatb3;
					vec2 u_xlat4;
					float u_xlat12;
					int u_xlati12;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat1 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat1.x);
					    u_xlat0.x = float(0.0);
					    u_xlat0.y = float(0.0);
					    u_xlat0.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat1.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat3.x = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat3.x = u_xlat3.x * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat3.x = float(1.0) / u_xlat3.x;
					        u_xlat0.xyz = unity_LightColor[u_xlati_loop_1].xyz * u_xlat3.xxx + u_xlat0.xyz;
					    }
					    u_xlat0.xyz = u_xlat0.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat1.xyz = vec3(u_xlat12) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendMul" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat12;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat2.xyz = vec3(u_xlat12) * u_xlat2.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat2.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					bool u_xlatb3;
					vec2 u_xlat4;
					float u_xlat12;
					int u_xlati12;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat1 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat1.x);
					    u_xlat0.x = float(0.0);
					    u_xlat0.y = float(0.0);
					    u_xlat0.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat1.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat3.x = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat3.x = u_xlat3.x * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat3.x = float(1.0) / u_xlat3.x;
					        u_xlat0.xyz = unity_LightColor[u_xlati_loop_1].xyz * u_xlat3.xxx + u_xlat0.xyz;
					    }
					    u_xlat0.xyz = u_xlat0.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat1.xyz = vec3(u_xlat12) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendMul" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat12;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat2.xyz = vec3(u_xlat12) * u_xlat2.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat2.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					bool u_xlatb3;
					vec2 u_xlat4;
					float u_xlat12;
					int u_xlati12;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat1 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat1.x);
					    u_xlat0.x = float(0.0);
					    u_xlat0.y = float(0.0);
					    u_xlat0.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat1.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat3.x = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat3.x = u_xlat3.x * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat3.x = float(1.0) / u_xlat3.x;
					        u_xlat0.xyz = unity_LightColor[u_xlati_loop_1].xyz * u_xlat3.xxx + u_xlat0.xyz;
					    }
					    u_xlat0.xyz = u_xlat0.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat1.xyz = vec3(u_xlat12) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendMul" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat12;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat2.xyz = vec3(u_xlat12) * u_xlat2.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat2.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					bool u_xlatb3;
					vec2 u_xlat4;
					float u_xlat12;
					int u_xlati12;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat1 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat1.x);
					    u_xlat0.x = float(0.0);
					    u_xlat0.y = float(0.0);
					    u_xlat0.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat1.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat3.x = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat3.x = u_xlat3.x * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat3.x = float(1.0) / u_xlat3.x;
					        u_xlat0.xyz = unity_LightColor[u_xlati_loop_1].xyz * u_xlat3.xxx + u_xlat0.xyz;
					    }
					    u_xlat0.xyz = u_xlat0.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat1.xyz = vec3(u_xlat12) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendMul" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec2 u_xlat4;
					int u_xlati12;
					float u_xlat13;
					bool u_xlatb13;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat0 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat1.x = float(0.0);
					    u_xlat1.y = float(0.0);
					    u_xlat1.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat13 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat13 = u_xlat13 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat13 = float(1.0) / u_xlat13;
					        u_xlat1.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat13) + u_xlat1.xyz;
					    }
					    u_xlat0.xyz = u_xlat1.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendMul" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec2 u_xlat4;
					int u_xlati12;
					float u_xlat13;
					bool u_xlatb13;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat0 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat1.x = float(0.0);
					    u_xlat1.y = float(0.0);
					    u_xlat1.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat13 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat13 = u_xlat13 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat13 = float(1.0) / u_xlat13;
					        u_xlat1.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat13) + u_xlat1.xyz;
					    }
					    u_xlat0.xyz = u_xlat1.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendMul" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec2 u_xlat4;
					int u_xlati12;
					float u_xlat13;
					bool u_xlatb13;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat0 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat1.x = float(0.0);
					    u_xlat1.y = float(0.0);
					    u_xlat1.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat13 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat13 = u_xlat13 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat13 = float(1.0) / u_xlat13;
					        u_xlat1.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat13) + u_xlat1.xyz;
					    }
					    u_xlat0.xyz = u_xlat1.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendMul" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec2 u_xlat4;
					int u_xlati12;
					float u_xlat13;
					bool u_xlatb13;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat0 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat1.x = float(0.0);
					    u_xlat1.y = float(0.0);
					    u_xlat1.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat13 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat13 = u_xlat13 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat13 = float(1.0) / u_xlat13;
					        u_xlat1.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat13) + u_xlat1.xyz;
					    }
					    u_xlat0.xyz = u_xlat1.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendMul" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec2 u_xlat4;
					int u_xlati12;
					float u_xlat13;
					bool u_xlatb13;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat0 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat1.x = float(0.0);
					    u_xlat1.y = float(0.0);
					    u_xlat1.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat13 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat13 = u_xlat13 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat13 = float(1.0) / u_xlat13;
					        u_xlat1.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat13) + u_xlat1.xyz;
					    }
					    u_xlat0.xyz = u_xlat1.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendMul" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec2 u_xlat4;
					int u_xlati12;
					float u_xlat13;
					bool u_xlatb13;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat0 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat1.x = float(0.0);
					    u_xlat1.y = float(0.0);
					    u_xlat1.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat13 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat13 = u_xlat13 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat13 = float(1.0) / u_xlat13;
					        u_xlat1.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat13) + u_xlat1.xyz;
					    }
					    u_xlat0.xyz = u_xlat1.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendMul" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec2 u_xlat4;
					int u_xlati12;
					float u_xlat13;
					bool u_xlatb13;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat0 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat1.x = float(0.0);
					    u_xlat1.y = float(0.0);
					    u_xlat1.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat13 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat13 = u_xlat13 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat13 = float(1.0) / u_xlat13;
					        u_xlat1.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat13) + u_xlat1.xyz;
					    }
					    u_xlat0.xyz = u_xlat1.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendMul" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec2 u_xlat4;
					int u_xlati12;
					float u_xlat13;
					bool u_xlatb13;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat0 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat1.x = float(0.0);
					    u_xlat1.y = float(0.0);
					    u_xlat1.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat13 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat13 = u_xlat13 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat13 = float(1.0) / u_xlat13;
					        u_xlat1.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat13) + u_xlat1.xyz;
					    }
					    u_xlat0.xyz = u_xlat1.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendMul" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec2 u_xlat4;
					int u_xlati12;
					float u_xlat13;
					bool u_xlatb13;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat0 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat1.x = float(0.0);
					    u_xlat1.y = float(0.0);
					    u_xlat1.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat13 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat13 = u_xlat13 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat13 = float(1.0) / u_xlat13;
					        u_xlat1.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat13) + u_xlat1.xyz;
					    }
					    u_xlat0.xyz = u_xlat1.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendMul" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec2 u_xlat4;
					int u_xlati12;
					float u_xlat13;
					bool u_xlatb13;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat0 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat1.x = float(0.0);
					    u_xlat1.y = float(0.0);
					    u_xlat1.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat13 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat13 = u_xlat13 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat13 = float(1.0) / u_xlat13;
					        u_xlat1.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat13) + u_xlat1.xyz;
					    }
					    u_xlat0.xyz = u_xlat1.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendMul" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec2 u_xlat4;
					int u_xlati12;
					float u_xlat13;
					bool u_xlatb13;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat0 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat1.x = float(0.0);
					    u_xlat1.y = float(0.0);
					    u_xlat1.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat13 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat13 = u_xlat13 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat13 = float(1.0) / u_xlat13;
					        u_xlat1.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat13) + u_xlat1.xyz;
					    }
					    u_xlat0.xyz = u_xlat1.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendMul" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec2 u_xlat4;
					int u_xlati12;
					float u_xlat13;
					bool u_xlatb13;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat0 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat1.x = float(0.0);
					    u_xlat1.y = float(0.0);
					    u_xlat1.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat13 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat13 = u_xlat13 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat13 = float(1.0) / u_xlat13;
					        u_xlat1.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat13) + u_xlat1.xyz;
					    }
					    u_xlat0.xyz = u_xlat1.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendMul" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec2 u_xlat4;
					int u_xlati12;
					float u_xlat13;
					bool u_xlatb13;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat0 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat1.x = float(0.0);
					    u_xlat1.y = float(0.0);
					    u_xlat1.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat13 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat13 = u_xlat13 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat13 = float(1.0) / u_xlat13;
					        u_xlat1.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat13) + u_xlat1.xyz;
					    }
					    u_xlat0.xyz = u_xlat1.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendMul" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec2 u_xlat4;
					int u_xlati12;
					float u_xlat13;
					bool u_xlatb13;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat0 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat1.x = float(0.0);
					    u_xlat1.y = float(0.0);
					    u_xlat1.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat13 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat13 = u_xlat13 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat13 = float(1.0) / u_xlat13;
					        u_xlat1.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat13) + u_xlat1.xyz;
					    }
					    u_xlat0.xyz = u_xlat1.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendMul" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec2 u_xlat4;
					int u_xlati12;
					float u_xlat13;
					bool u_xlatb13;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat0 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat1.x = float(0.0);
					    u_xlat1.y = float(0.0);
					    u_xlat1.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat13 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat13 = u_xlat13 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat13 = float(1.0) / u_xlat13;
					        u_xlat1.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat13) + u_xlat1.xyz;
					    }
					    u_xlat0.xyz = u_xlat1.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendMul" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec2 u_xlat4;
					int u_xlati12;
					float u_xlat13;
					bool u_xlatb13;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat0 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat1.x = float(0.0);
					    u_xlat1.y = float(0.0);
					    u_xlat1.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat13 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat13 = u_xlat13 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat13 = float(1.0) / u_xlat13;
					        u_xlat1.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat13) + u_xlat1.xyz;
					    }
					    u_xlat0.xyz = u_xlat1.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendMul" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat12;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat2.xyz = vec3(u_xlat12) * u_xlat2.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat2.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					bool u_xlatb3;
					vec2 u_xlat4;
					float u_xlat12;
					int u_xlati12;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat1 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat1.x);
					    u_xlat0.x = float(0.0);
					    u_xlat0.y = float(0.0);
					    u_xlat0.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat1.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat3.x = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat3.x = u_xlat3.x * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat3.x = float(1.0) / u_xlat3.x;
					        u_xlat0.xyz = unity_LightColor[u_xlati_loop_1].xyz * u_xlat3.xxx + u_xlat0.xyz;
					    }
					    u_xlat0.xyz = u_xlat0.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat1.xyz = vec3(u_xlat12) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendMul" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat12;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat2.xyz = vec3(u_xlat12) * u_xlat2.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat2.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					bool u_xlatb3;
					vec2 u_xlat4;
					float u_xlat12;
					int u_xlati12;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat1 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat1.x);
					    u_xlat0.x = float(0.0);
					    u_xlat0.y = float(0.0);
					    u_xlat0.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat1.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat3.x = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat3.x = u_xlat3.x * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat3.x = float(1.0) / u_xlat3.x;
					        u_xlat0.xyz = unity_LightColor[u_xlati_loop_1].xyz * u_xlat3.xxx + u_xlat0.xyz;
					    }
					    u_xlat0.xyz = u_xlat0.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat1.xyz = vec3(u_xlat12) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendMul" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat12;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat2.xyz = vec3(u_xlat12) * u_xlat2.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat2.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					bool u_xlatb3;
					vec2 u_xlat4;
					float u_xlat12;
					int u_xlati12;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat1 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat1.x);
					    u_xlat0.x = float(0.0);
					    u_xlat0.y = float(0.0);
					    u_xlat0.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat1.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat3.x = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat3.x = u_xlat3.x * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat3.x = float(1.0) / u_xlat3.x;
					        u_xlat0.xyz = unity_LightColor[u_xlati_loop_1].xyz * u_xlat3.xxx + u_xlat0.xyz;
					    }
					    u_xlat0.xyz = u_xlat0.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat1.xyz = vec3(u_xlat12) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendMul" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat12;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat2.xyz = vec3(u_xlat12) * u_xlat2.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat2.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					bool u_xlatb3;
					vec2 u_xlat4;
					float u_xlat12;
					int u_xlati12;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat1 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat1.x);
					    u_xlat0.x = float(0.0);
					    u_xlat0.y = float(0.0);
					    u_xlat0.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat1.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat3.x = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat3.x = u_xlat3.x * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat3.x = float(1.0) / u_xlat3.x;
					        u_xlat0.xyz = unity_LightColor[u_xlati_loop_1].xyz * u_xlat3.xxx + u_xlat0.xyz;
					    }
					    u_xlat0.xyz = u_xlat0.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat1.xyz = vec3(u_xlat12) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendMul" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat12;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat2.xyz = vec3(u_xlat12) * u_xlat2.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat2.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					bool u_xlatb3;
					vec2 u_xlat4;
					float u_xlat12;
					int u_xlati12;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat1 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat1.x);
					    u_xlat0.x = float(0.0);
					    u_xlat0.y = float(0.0);
					    u_xlat0.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat1.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat3.x = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat3.x = u_xlat3.x * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat3.x = float(1.0) / u_xlat3.x;
					        u_xlat0.xyz = unity_LightColor[u_xlati_loop_1].xyz * u_xlat3.xxx + u_xlat0.xyz;
					    }
					    u_xlat0.xyz = u_xlat0.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat1.xyz = vec3(u_xlat12) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendMul" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat12;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat2.xyz = vec3(u_xlat12) * u_xlat2.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat2.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					bool u_xlatb3;
					vec2 u_xlat4;
					float u_xlat12;
					int u_xlati12;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat1 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat1.x);
					    u_xlat0.x = float(0.0);
					    u_xlat0.y = float(0.0);
					    u_xlat0.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat1.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat3.x = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat3.x = u_xlat3.x * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat3.x = float(1.0) / u_xlat3.x;
					        u_xlat0.xyz = unity_LightColor[u_xlati_loop_1].xyz * u_xlat3.xxx + u_xlat0.xyz;
					    }
					    u_xlat0.xyz = u_xlat0.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat1.xyz = vec3(u_xlat12) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendMul" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat12;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat2.xyz = vec3(u_xlat12) * u_xlat2.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat2.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					bool u_xlatb3;
					vec2 u_xlat4;
					float u_xlat12;
					int u_xlati12;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat1 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat1.x);
					    u_xlat0.x = float(0.0);
					    u_xlat0.y = float(0.0);
					    u_xlat0.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat1.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat3.x = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat3.x = u_xlat3.x * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat3.x = float(1.0) / u_xlat3.x;
					        u_xlat0.xyz = unity_LightColor[u_xlati_loop_1].xyz * u_xlat3.xxx + u_xlat0.xyz;
					    }
					    u_xlat0.xyz = u_xlat0.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat1.xyz = vec3(u_xlat12) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendMul" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat12;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat2.xyz = vec3(u_xlat12) * u_xlat2.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat2.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					bool u_xlatb3;
					vec2 u_xlat4;
					float u_xlat12;
					int u_xlati12;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat1 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat1.x);
					    u_xlat0.x = float(0.0);
					    u_xlat0.y = float(0.0);
					    u_xlat0.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat1.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat3.x = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat3.x = u_xlat3.x * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat3.x = float(1.0) / u_xlat3.x;
					        u_xlat0.xyz = unity_LightColor[u_xlati_loop_1].xyz * u_xlat3.xxx + u_xlat0.xyz;
					    }
					    u_xlat0.xyz = u_xlat0.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat1.xyz = vec3(u_xlat12) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendMul" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat12;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat2.xyz = vec3(u_xlat12) * u_xlat2.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat2.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					bool u_xlatb3;
					vec2 u_xlat4;
					float u_xlat12;
					int u_xlati12;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat1 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat1.x);
					    u_xlat0.x = float(0.0);
					    u_xlat0.y = float(0.0);
					    u_xlat0.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat1.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat3.x = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat3.x = u_xlat3.x * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat3.x = float(1.0) / u_xlat3.x;
					        u_xlat0.xyz = unity_LightColor[u_xlati_loop_1].xyz * u_xlat3.xxx + u_xlat0.xyz;
					    }
					    u_xlat0.xyz = u_xlat0.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat1.xyz = vec3(u_xlat12) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendMul" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat12;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat2.xyz = vec3(u_xlat12) * u_xlat2.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat2.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					bool u_xlatb3;
					vec2 u_xlat4;
					float u_xlat12;
					int u_xlati12;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat1 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat1.x);
					    u_xlat0.x = float(0.0);
					    u_xlat0.y = float(0.0);
					    u_xlat0.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat1.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat3.x = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat3.x = u_xlat3.x * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat3.x = float(1.0) / u_xlat3.x;
					        u_xlat0.xyz = unity_LightColor[u_xlati_loop_1].xyz * u_xlat3.xxx + u_xlat0.xyz;
					    }
					    u_xlat0.xyz = u_xlat0.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat1.xyz = vec3(u_xlat12) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendMul" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat12;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat2.xyz = vec3(u_xlat12) * u_xlat2.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat2.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					bool u_xlatb3;
					vec2 u_xlat4;
					float u_xlat12;
					int u_xlati12;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat1 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat1.x);
					    u_xlat0.x = float(0.0);
					    u_xlat0.y = float(0.0);
					    u_xlat0.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat1.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat3.x = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat3.x = u_xlat3.x * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat3.x = float(1.0) / u_xlat3.x;
					        u_xlat0.xyz = unity_LightColor[u_xlati_loop_1].xyz * u_xlat3.xxx + u_xlat0.xyz;
					    }
					    u_xlat0.xyz = u_xlat0.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat1.xyz = vec3(u_xlat12) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendMul" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat12;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat2.xyz = vec3(u_xlat12) * u_xlat2.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat2.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					bool u_xlatb3;
					vec2 u_xlat4;
					float u_xlat12;
					int u_xlati12;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat1 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat1.x);
					    u_xlat0.x = float(0.0);
					    u_xlat0.y = float(0.0);
					    u_xlat0.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat1.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat3.x = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat3.x = u_xlat3.x * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat3.x = float(1.0) / u_xlat3.x;
					        u_xlat0.xyz = unity_LightColor[u_xlati_loop_1].xyz * u_xlat3.xxx + u_xlat0.xyz;
					    }
					    u_xlat0.xyz = u_xlat0.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat1.xyz = vec3(u_xlat12) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendMul" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat12;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat2.xyz = vec3(u_xlat12) * u_xlat2.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat2.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					bool u_xlatb3;
					vec2 u_xlat4;
					float u_xlat12;
					int u_xlati12;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat1 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat1.x);
					    u_xlat0.x = float(0.0);
					    u_xlat0.y = float(0.0);
					    u_xlat0.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat1.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat3.x = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat3.x = u_xlat3.x * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat3.x = float(1.0) / u_xlat3.x;
					        u_xlat0.xyz = unity_LightColor[u_xlati_loop_1].xyz * u_xlat3.xxx + u_xlat0.xyz;
					    }
					    u_xlat0.xyz = u_xlat0.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat1.xyz = vec3(u_xlat12) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendMul" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat12;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat2.xyz = vec3(u_xlat12) * u_xlat2.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat2.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					bool u_xlatb3;
					vec2 u_xlat4;
					float u_xlat12;
					int u_xlati12;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat1 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat1.x);
					    u_xlat0.x = float(0.0);
					    u_xlat0.y = float(0.0);
					    u_xlat0.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat1.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat3.x = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat3.x = u_xlat3.x * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat3.x = float(1.0) / u_xlat3.x;
					        u_xlat0.xyz = unity_LightColor[u_xlati_loop_1].xyz * u_xlat3.xxx + u_xlat0.xyz;
					    }
					    u_xlat0.xyz = u_xlat0.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat1.xyz = vec3(u_xlat12) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendMul" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat12;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat2.xyz = vec3(u_xlat12) * u_xlat2.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat2.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					bool u_xlatb3;
					vec2 u_xlat4;
					float u_xlat12;
					int u_xlati12;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat1 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat1.x);
					    u_xlat0.x = float(0.0);
					    u_xlat0.y = float(0.0);
					    u_xlat0.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat1.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat3.x = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat3.x = u_xlat3.x * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat3.x = float(1.0) / u_xlat3.x;
					        u_xlat0.xyz = unity_LightColor[u_xlati_loop_1].xyz * u_xlat3.xxx + u_xlat0.xyz;
					    }
					    u_xlat0.xyz = u_xlat0.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat1.xyz = vec3(u_xlat12) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendMul" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat12;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat2.xyz = vec3(u_xlat12) * u_xlat2.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat2.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					bool u_xlatb3;
					vec2 u_xlat4;
					float u_xlat12;
					int u_xlati12;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat1 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat1.x);
					    u_xlat0.x = float(0.0);
					    u_xlat0.y = float(0.0);
					    u_xlat0.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat1.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat3.x = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat3.x = u_xlat3.x * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat3.x = float(1.0) / u_xlat3.x;
					        u_xlat0.xyz = unity_LightColor[u_xlati_loop_1].xyz * u_xlat3.xxx + u_xlat0.xyz;
					    }
					    u_xlat0.xyz = u_xlat0.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat1.xyz = vec3(u_xlat12) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendMul" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec2 u_xlat4;
					int u_xlati12;
					float u_xlat13;
					bool u_xlatb13;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat0 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat1.x = float(0.0);
					    u_xlat1.y = float(0.0);
					    u_xlat1.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat13 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat13 = u_xlat13 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat13 = float(1.0) / u_xlat13;
					        u_xlat1.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat13) + u_xlat1.xyz;
					    }
					    u_xlat0.xyz = u_xlat1.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendMul" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec2 u_xlat4;
					int u_xlati12;
					float u_xlat13;
					bool u_xlatb13;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat0 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat1.x = float(0.0);
					    u_xlat1.y = float(0.0);
					    u_xlat1.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat13 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat13 = u_xlat13 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat13 = float(1.0) / u_xlat13;
					        u_xlat1.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat13) + u_xlat1.xyz;
					    }
					    u_xlat0.xyz = u_xlat1.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendMul" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec2 u_xlat4;
					int u_xlati12;
					float u_xlat13;
					bool u_xlatb13;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat0 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat1.x = float(0.0);
					    u_xlat1.y = float(0.0);
					    u_xlat1.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat13 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat13 = u_xlat13 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat13 = float(1.0) / u_xlat13;
					        u_xlat1.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat13) + u_xlat1.xyz;
					    }
					    u_xlat0.xyz = u_xlat1.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendMul" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec2 u_xlat4;
					int u_xlati12;
					float u_xlat13;
					bool u_xlatb13;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat0 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat1.x = float(0.0);
					    u_xlat1.y = float(0.0);
					    u_xlat1.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat13 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat13 = u_xlat13 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat13 = float(1.0) / u_xlat13;
					        u_xlat1.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat13) + u_xlat1.xyz;
					    }
					    u_xlat0.xyz = u_xlat1.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendMul" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec2 u_xlat4;
					int u_xlati12;
					float u_xlat13;
					bool u_xlatb13;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat0 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat1.x = float(0.0);
					    u_xlat1.y = float(0.0);
					    u_xlat1.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat13 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat13 = u_xlat13 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat13 = float(1.0) / u_xlat13;
					        u_xlat1.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat13) + u_xlat1.xyz;
					    }
					    u_xlat0.xyz = u_xlat1.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendMul" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec2 u_xlat4;
					int u_xlati12;
					float u_xlat13;
					bool u_xlatb13;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat0 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat1.x = float(0.0);
					    u_xlat1.y = float(0.0);
					    u_xlat1.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat13 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat13 = u_xlat13 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat13 = float(1.0) / u_xlat13;
					        u_xlat1.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat13) + u_xlat1.xyz;
					    }
					    u_xlat0.xyz = u_xlat1.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendMul" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec2 u_xlat4;
					int u_xlati12;
					float u_xlat13;
					bool u_xlatb13;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat0 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat1.x = float(0.0);
					    u_xlat1.y = float(0.0);
					    u_xlat1.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat13 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat13 = u_xlat13 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat13 = float(1.0) / u_xlat13;
					        u_xlat1.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat13) + u_xlat1.xyz;
					    }
					    u_xlat0.xyz = u_xlat1.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendMul" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec2 u_xlat4;
					int u_xlati12;
					float u_xlat13;
					bool u_xlatb13;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat0 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat1.x = float(0.0);
					    u_xlat1.y = float(0.0);
					    u_xlat1.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat13 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat13 = u_xlat13 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat13 = float(1.0) / u_xlat13;
					        u_xlat1.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat13) + u_xlat1.xyz;
					    }
					    u_xlat0.xyz = u_xlat1.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendMul" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec2 u_xlat4;
					int u_xlati12;
					float u_xlat13;
					bool u_xlatb13;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat0 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat1.x = float(0.0);
					    u_xlat1.y = float(0.0);
					    u_xlat1.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat13 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat13 = u_xlat13 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat13 = float(1.0) / u_xlat13;
					        u_xlat1.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat13) + u_xlat1.xyz;
					    }
					    u_xlat0.xyz = u_xlat1.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendMul" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec2 u_xlat4;
					int u_xlati12;
					float u_xlat13;
					bool u_xlatb13;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat0 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat1.x = float(0.0);
					    u_xlat1.y = float(0.0);
					    u_xlat1.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat13 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat13 = u_xlat13 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat13 = float(1.0) / u_xlat13;
					        u_xlat1.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat13) + u_xlat1.xyz;
					    }
					    u_xlat0.xyz = u_xlat1.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendMul" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec2 u_xlat4;
					int u_xlati12;
					float u_xlat13;
					bool u_xlatb13;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat0 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat1.x = float(0.0);
					    u_xlat1.y = float(0.0);
					    u_xlat1.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat13 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat13 = u_xlat13 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat13 = float(1.0) / u_xlat13;
					        u_xlat1.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat13) + u_xlat1.xyz;
					    }
					    u_xlat0.xyz = u_xlat1.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendMul" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec2 u_xlat4;
					int u_xlati12;
					float u_xlat13;
					bool u_xlatb13;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat0 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat1.x = float(0.0);
					    u_xlat1.y = float(0.0);
					    u_xlat1.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat13 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat13 = u_xlat13 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat13 = float(1.0) / u_xlat13;
					        u_xlat1.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat13) + u_xlat1.xyz;
					    }
					    u_xlat0.xyz = u_xlat1.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendMul" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec2 u_xlat4;
					int u_xlati12;
					float u_xlat13;
					bool u_xlatb13;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat0 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat1.x = float(0.0);
					    u_xlat1.y = float(0.0);
					    u_xlat1.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat13 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat13 = u_xlat13 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat13 = float(1.0) / u_xlat13;
					        u_xlat1.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat13) + u_xlat1.xyz;
					    }
					    u_xlat0.xyz = u_xlat1.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendMul" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec2 u_xlat4;
					int u_xlati12;
					float u_xlat13;
					bool u_xlatb13;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat0 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat1.x = float(0.0);
					    u_xlat1.y = float(0.0);
					    u_xlat1.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat13 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat13 = u_xlat13 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat13 = float(1.0) / u_xlat13;
					        u_xlat1.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat13) + u_xlat1.xyz;
					    }
					    u_xlat0.xyz = u_xlat1.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendMul" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec2 u_xlat4;
					int u_xlati12;
					float u_xlat13;
					bool u_xlatb13;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat0 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat1.x = float(0.0);
					    u_xlat1.y = float(0.0);
					    u_xlat1.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat13 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat13 = u_xlat13 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat13 = float(1.0) / u_xlat13;
					        u_xlat1.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat13) + u_xlat1.xyz;
					    }
					    u_xlat0.xyz = u_xlat1.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendMul" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec2 u_xlat4;
					int u_xlati12;
					float u_xlat13;
					bool u_xlatb13;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat0 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat1.x = float(0.0);
					    u_xlat1.y = float(0.0);
					    u_xlat1.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat13 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat13 = u_xlat13 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat13 = float(1.0) / u_xlat13;
					        u_xlat1.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat13) + u_xlat1.xyz;
					    }
					    u_xlat0.xyz = u_xlat1.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendMul" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat12;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat2.xyz = vec3(u_xlat12) * u_xlat2.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat2.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					bool u_xlatb3;
					vec2 u_xlat4;
					float u_xlat12;
					int u_xlati12;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat1 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat1.x);
					    u_xlat0.x = float(0.0);
					    u_xlat0.y = float(0.0);
					    u_xlat0.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat1.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat3.x = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat3.x = u_xlat3.x * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat3.x = float(1.0) / u_xlat3.x;
					        u_xlat0.xyz = unity_LightColor[u_xlati_loop_1].xyz * u_xlat3.xxx + u_xlat0.xyz;
					    }
					    u_xlat0.xyz = u_xlat0.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat1.xyz = vec3(u_xlat12) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendMul" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat12;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat2.xyz = vec3(u_xlat12) * u_xlat2.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat2.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					bool u_xlatb3;
					vec2 u_xlat4;
					float u_xlat12;
					int u_xlati12;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat1 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat1.x);
					    u_xlat0.x = float(0.0);
					    u_xlat0.y = float(0.0);
					    u_xlat0.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat1.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat3.x = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat3.x = u_xlat3.x * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat3.x = float(1.0) / u_xlat3.x;
					        u_xlat0.xyz = unity_LightColor[u_xlati_loop_1].xyz * u_xlat3.xxx + u_xlat0.xyz;
					    }
					    u_xlat0.xyz = u_xlat0.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat1.xyz = vec3(u_xlat12) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendMul" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat12;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat2.xyz = vec3(u_xlat12) * u_xlat2.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat2.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					bool u_xlatb3;
					vec2 u_xlat4;
					float u_xlat12;
					int u_xlati12;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat1 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat1.x);
					    u_xlat0.x = float(0.0);
					    u_xlat0.y = float(0.0);
					    u_xlat0.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat1.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat3.x = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat3.x = u_xlat3.x * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat3.x = float(1.0) / u_xlat3.x;
					        u_xlat0.xyz = unity_LightColor[u_xlati_loop_1].xyz * u_xlat3.xxx + u_xlat0.xyz;
					    }
					    u_xlat0.xyz = u_xlat0.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat1.xyz = vec3(u_xlat12) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendMul" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat12;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat2.xyz = vec3(u_xlat12) * u_xlat2.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat2.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					bool u_xlatb3;
					vec2 u_xlat4;
					float u_xlat12;
					int u_xlati12;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat1 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat1.x);
					    u_xlat0.x = float(0.0);
					    u_xlat0.y = float(0.0);
					    u_xlat0.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat1.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat3.x = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat3.x = u_xlat3.x * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat3.x = float(1.0) / u_xlat3.x;
					        u_xlat0.xyz = unity_LightColor[u_xlati_loop_1].xyz * u_xlat3.xxx + u_xlat0.xyz;
					    }
					    u_xlat0.xyz = u_xlat0.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat1.xyz = vec3(u_xlat12) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendMul" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat12;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat2.xyz = vec3(u_xlat12) * u_xlat2.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat2.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					bool u_xlatb3;
					vec2 u_xlat4;
					float u_xlat12;
					int u_xlati12;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat1 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat1.x);
					    u_xlat0.x = float(0.0);
					    u_xlat0.y = float(0.0);
					    u_xlat0.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat1.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat3.x = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat3.x = u_xlat3.x * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat3.x = float(1.0) / u_xlat3.x;
					        u_xlat0.xyz = unity_LightColor[u_xlati_loop_1].xyz * u_xlat3.xxx + u_xlat0.xyz;
					    }
					    u_xlat0.xyz = u_xlat0.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat1.xyz = vec3(u_xlat12) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendMul" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat12;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat2.xyz = vec3(u_xlat12) * u_xlat2.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat2.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					bool u_xlatb3;
					vec2 u_xlat4;
					float u_xlat12;
					int u_xlati12;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat1 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat1.x);
					    u_xlat0.x = float(0.0);
					    u_xlat0.y = float(0.0);
					    u_xlat0.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat1.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat3.x = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat3.x = u_xlat3.x * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat3.x = float(1.0) / u_xlat3.x;
					        u_xlat0.xyz = unity_LightColor[u_xlati_loop_1].xyz * u_xlat3.xxx + u_xlat0.xyz;
					    }
					    u_xlat0.xyz = u_xlat0.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat1.xyz = vec3(u_xlat12) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendMul" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat12;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat2.xyz = vec3(u_xlat12) * u_xlat2.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat2.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					bool u_xlatb3;
					vec2 u_xlat4;
					float u_xlat12;
					int u_xlati12;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat1 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat1.x);
					    u_xlat0.x = float(0.0);
					    u_xlat0.y = float(0.0);
					    u_xlat0.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat1.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat3.x = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat3.x = u_xlat3.x * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat3.x = float(1.0) / u_xlat3.x;
					        u_xlat0.xyz = unity_LightColor[u_xlati_loop_1].xyz * u_xlat3.xxx + u_xlat0.xyz;
					    }
					    u_xlat0.xyz = u_xlat0.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat1.xyz = vec3(u_xlat12) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendMul" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat12;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat2.xyz = vec3(u_xlat12) * u_xlat2.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat2.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					bool u_xlatb3;
					vec2 u_xlat4;
					float u_xlat12;
					int u_xlati12;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat1 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat1.x);
					    u_xlat0.x = float(0.0);
					    u_xlat0.y = float(0.0);
					    u_xlat0.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat1.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat3.x = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat3.x = u_xlat3.x * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat3.x = float(1.0) / u_xlat3.x;
					        u_xlat0.xyz = unity_LightColor[u_xlati_loop_1].xyz * u_xlat3.xxx + u_xlat0.xyz;
					    }
					    u_xlat0.xyz = u_xlat0.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat1.xyz = vec3(u_xlat12) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendMul" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat12;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat2.xyz = vec3(u_xlat12) * u_xlat2.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat2.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					bool u_xlatb3;
					vec2 u_xlat4;
					float u_xlat12;
					int u_xlati12;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat1 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat1.x);
					    u_xlat0.x = float(0.0);
					    u_xlat0.y = float(0.0);
					    u_xlat0.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat1.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat3.x = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat3.x = u_xlat3.x * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat3.x = float(1.0) / u_xlat3.x;
					        u_xlat0.xyz = unity_LightColor[u_xlati_loop_1].xyz * u_xlat3.xxx + u_xlat0.xyz;
					    }
					    u_xlat0.xyz = u_xlat0.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat1.xyz = vec3(u_xlat12) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendMul" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat12;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat2.xyz = vec3(u_xlat12) * u_xlat2.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat2.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					bool u_xlatb3;
					vec2 u_xlat4;
					float u_xlat12;
					int u_xlati12;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat1 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat1.x);
					    u_xlat0.x = float(0.0);
					    u_xlat0.y = float(0.0);
					    u_xlat0.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat1.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat3.x = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat3.x = u_xlat3.x * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat3.x = float(1.0) / u_xlat3.x;
					        u_xlat0.xyz = unity_LightColor[u_xlati_loop_1].xyz * u_xlat3.xxx + u_xlat0.xyz;
					    }
					    u_xlat0.xyz = u_xlat0.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat1.xyz = vec3(u_xlat12) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendMul" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat12;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat2.xyz = vec3(u_xlat12) * u_xlat2.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat2.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					bool u_xlatb3;
					vec2 u_xlat4;
					float u_xlat12;
					int u_xlati12;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat1 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat1.x);
					    u_xlat0.x = float(0.0);
					    u_xlat0.y = float(0.0);
					    u_xlat0.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat1.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat3.x = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat3.x = u_xlat3.x * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat3.x = float(1.0) / u_xlat3.x;
					        u_xlat0.xyz = unity_LightColor[u_xlati_loop_1].xyz * u_xlat3.xxx + u_xlat0.xyz;
					    }
					    u_xlat0.xyz = u_xlat0.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat1.xyz = vec3(u_xlat12) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendMul" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat12;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat2.xyz = vec3(u_xlat12) * u_xlat2.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat2.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					bool u_xlatb3;
					vec2 u_xlat4;
					float u_xlat12;
					int u_xlati12;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat1 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat1.x);
					    u_xlat0.x = float(0.0);
					    u_xlat0.y = float(0.0);
					    u_xlat0.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat1.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat3.x = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat3.x = u_xlat3.x * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat3.x = float(1.0) / u_xlat3.x;
					        u_xlat0.xyz = unity_LightColor[u_xlati_loop_1].xyz * u_xlat3.xxx + u_xlat0.xyz;
					    }
					    u_xlat0.xyz = u_xlat0.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat1.xyz = vec3(u_xlat12) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendMul" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat12;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat2.xyz = vec3(u_xlat12) * u_xlat2.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat2.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					bool u_xlatb3;
					vec2 u_xlat4;
					float u_xlat12;
					int u_xlati12;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat1 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat1.x);
					    u_xlat0.x = float(0.0);
					    u_xlat0.y = float(0.0);
					    u_xlat0.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat1.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat3.x = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat3.x = u_xlat3.x * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat3.x = float(1.0) / u_xlat3.x;
					        u_xlat0.xyz = unity_LightColor[u_xlati_loop_1].xyz * u_xlat3.xxx + u_xlat0.xyz;
					    }
					    u_xlat0.xyz = u_xlat0.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat1.xyz = vec3(u_xlat12) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendMul" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat12;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat2.xyz = vec3(u_xlat12) * u_xlat2.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat2.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					bool u_xlatb3;
					vec2 u_xlat4;
					float u_xlat12;
					int u_xlati12;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat1 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat1.x);
					    u_xlat0.x = float(0.0);
					    u_xlat0.y = float(0.0);
					    u_xlat0.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat1.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat3.x = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat3.x = u_xlat3.x * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat3.x = float(1.0) / u_xlat3.x;
					        u_xlat0.xyz = unity_LightColor[u_xlati_loop_1].xyz * u_xlat3.xxx + u_xlat0.xyz;
					    }
					    u_xlat0.xyz = u_xlat0.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat1.xyz = vec3(u_xlat12) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendMul" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat12;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat2.xyz = vec3(u_xlat12) * u_xlat2.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat2.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					bool u_xlatb3;
					vec2 u_xlat4;
					float u_xlat12;
					int u_xlati12;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat1 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat1.x);
					    u_xlat0.x = float(0.0);
					    u_xlat0.y = float(0.0);
					    u_xlat0.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat1.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat3.x = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat3.x = u_xlat3.x * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat3.x = float(1.0) / u_xlat3.x;
					        u_xlat0.xyz = unity_LightColor[u_xlati_loop_1].xyz * u_xlat3.xxx + u_xlat0.xyz;
					    }
					    u_xlat0.xyz = u_xlat0.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat1.xyz = vec3(u_xlat12) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendMul" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat12;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat2.xyz = vec3(u_xlat12) * u_xlat2.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat2.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					bool u_xlatb3;
					vec2 u_xlat4;
					float u_xlat12;
					int u_xlati12;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat1 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat1.x);
					    u_xlat0.x = float(0.0);
					    u_xlat0.y = float(0.0);
					    u_xlat0.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat1.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat3.x = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat3.x = u_xlat3.x * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat3.x = float(1.0) / u_xlat3.x;
					        u_xlat0.xyz = unity_LightColor[u_xlati_loop_1].xyz * u_xlat3.xxx + u_xlat0.xyz;
					    }
					    u_xlat0.xyz = u_xlat0.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat1.xyz = vec3(u_xlat12) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendMul" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec2 u_xlat4;
					int u_xlati12;
					float u_xlat13;
					bool u_xlatb13;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat0 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat1.x = float(0.0);
					    u_xlat1.y = float(0.0);
					    u_xlat1.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat13 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat13 = u_xlat13 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat13 = float(1.0) / u_xlat13;
					        u_xlat1.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat13) + u_xlat1.xyz;
					    }
					    u_xlat0.xyz = u_xlat1.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendMul" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec2 u_xlat4;
					int u_xlati12;
					float u_xlat13;
					bool u_xlatb13;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat0 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat1.x = float(0.0);
					    u_xlat1.y = float(0.0);
					    u_xlat1.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat13 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat13 = u_xlat13 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat13 = float(1.0) / u_xlat13;
					        u_xlat1.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat13) + u_xlat1.xyz;
					    }
					    u_xlat0.xyz = u_xlat1.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendMul" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec2 u_xlat4;
					int u_xlati12;
					float u_xlat13;
					bool u_xlatb13;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat0 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat1.x = float(0.0);
					    u_xlat1.y = float(0.0);
					    u_xlat1.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat13 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat13 = u_xlat13 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat13 = float(1.0) / u_xlat13;
					        u_xlat1.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat13) + u_xlat1.xyz;
					    }
					    u_xlat0.xyz = u_xlat1.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendMul" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec2 u_xlat4;
					int u_xlati12;
					float u_xlat13;
					bool u_xlatb13;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat0 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat1.x = float(0.0);
					    u_xlat1.y = float(0.0);
					    u_xlat1.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat13 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat13 = u_xlat13 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat13 = float(1.0) / u_xlat13;
					        u_xlat1.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat13) + u_xlat1.xyz;
					    }
					    u_xlat0.xyz = u_xlat1.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendMul" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec2 u_xlat4;
					int u_xlati12;
					float u_xlat13;
					bool u_xlatb13;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat0 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat1.x = float(0.0);
					    u_xlat1.y = float(0.0);
					    u_xlat1.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat13 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat13 = u_xlat13 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat13 = float(1.0) / u_xlat13;
					        u_xlat1.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat13) + u_xlat1.xyz;
					    }
					    u_xlat0.xyz = u_xlat1.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendMul" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec2 u_xlat4;
					int u_xlati12;
					float u_xlat13;
					bool u_xlatb13;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat0 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat1.x = float(0.0);
					    u_xlat1.y = float(0.0);
					    u_xlat1.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat13 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat13 = u_xlat13 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat13 = float(1.0) / u_xlat13;
					        u_xlat1.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat13) + u_xlat1.xyz;
					    }
					    u_xlat0.xyz = u_xlat1.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendMul" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec2 u_xlat4;
					int u_xlati12;
					float u_xlat13;
					bool u_xlatb13;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat0 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat1.x = float(0.0);
					    u_xlat1.y = float(0.0);
					    u_xlat1.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat13 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat13 = u_xlat13 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat13 = float(1.0) / u_xlat13;
					        u_xlat1.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat13) + u_xlat1.xyz;
					    }
					    u_xlat0.xyz = u_xlat1.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendMul" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec2 u_xlat4;
					int u_xlati12;
					float u_xlat13;
					bool u_xlatb13;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat0 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat1.x = float(0.0);
					    u_xlat1.y = float(0.0);
					    u_xlat1.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat13 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat13 = u_xlat13 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat13 = float(1.0) / u_xlat13;
					        u_xlat1.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat13) + u_xlat1.xyz;
					    }
					    u_xlat0.xyz = u_xlat1.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendMul" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec2 u_xlat4;
					int u_xlati12;
					float u_xlat13;
					bool u_xlatb13;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat0 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat1.x = float(0.0);
					    u_xlat1.y = float(0.0);
					    u_xlat1.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat13 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat13 = u_xlat13 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat13 = float(1.0) / u_xlat13;
					        u_xlat1.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat13) + u_xlat1.xyz;
					    }
					    u_xlat0.xyz = u_xlat1.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendMul" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec2 u_xlat4;
					int u_xlati12;
					float u_xlat13;
					bool u_xlatb13;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat0 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat1.x = float(0.0);
					    u_xlat1.y = float(0.0);
					    u_xlat1.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat13 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat13 = u_xlat13 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat13 = float(1.0) / u_xlat13;
					        u_xlat1.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat13) + u_xlat1.xyz;
					    }
					    u_xlat0.xyz = u_xlat1.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendMul" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec2 u_xlat4;
					int u_xlati12;
					float u_xlat13;
					bool u_xlatb13;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat0 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat1.x = float(0.0);
					    u_xlat1.y = float(0.0);
					    u_xlat1.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat13 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat13 = u_xlat13 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat13 = float(1.0) / u_xlat13;
					        u_xlat1.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat13) + u_xlat1.xyz;
					    }
					    u_xlat0.xyz = u_xlat1.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendMul" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec2 u_xlat4;
					int u_xlati12;
					float u_xlat13;
					bool u_xlatb13;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat0 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat1.x = float(0.0);
					    u_xlat1.y = float(0.0);
					    u_xlat1.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat13 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat13 = u_xlat13 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat13 = float(1.0) / u_xlat13;
					        u_xlat1.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat13) + u_xlat1.xyz;
					    }
					    u_xlat0.xyz = u_xlat1.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendMul" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec2 u_xlat4;
					int u_xlati12;
					float u_xlat13;
					bool u_xlatb13;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat0 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat1.x = float(0.0);
					    u_xlat1.y = float(0.0);
					    u_xlat1.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat13 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat13 = u_xlat13 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat13 = float(1.0) / u_xlat13;
					        u_xlat1.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat13) + u_xlat1.xyz;
					    }
					    u_xlat0.xyz = u_xlat1.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendMul" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec2 u_xlat4;
					int u_xlati12;
					float u_xlat13;
					bool u_xlatb13;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat0 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat1.x = float(0.0);
					    u_xlat1.y = float(0.0);
					    u_xlat1.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat13 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat13 = u_xlat13 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat13 = float(1.0) / u_xlat13;
					        u_xlat1.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat13) + u_xlat1.xyz;
					    }
					    u_xlat0.xyz = u_xlat1.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendMul" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec2 u_xlat4;
					int u_xlati12;
					float u_xlat13;
					bool u_xlatb13;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat0 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat1.x = float(0.0);
					    u_xlat1.y = float(0.0);
					    u_xlat1.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat13 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat13 = u_xlat13 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat13 = float(1.0) / u_xlat13;
					        u_xlat1.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat13) + u_xlat1.xyz;
					    }
					    u_xlat0.xyz = u_xlat1.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendMul" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec2 u_xlat4;
					int u_xlati12;
					float u_xlat13;
					bool u_xlatb13;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat0 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat1.x = float(0.0);
					    u_xlat1.y = float(0.0);
					    u_xlat1.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat13 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat13 = u_xlat13 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat13 = float(1.0) / u_xlat13;
					        u_xlat1.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat13) + u_xlat1.xyz;
					    }
					    u_xlat0.xyz = u_xlat1.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendMul" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat12;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat2.xyz = vec3(u_xlat12) * u_xlat2.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat2.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					bool u_xlatb3;
					vec2 u_xlat4;
					float u_xlat12;
					int u_xlati12;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat1 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat1.x);
					    u_xlat0.x = float(0.0);
					    u_xlat0.y = float(0.0);
					    u_xlat0.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat1.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat3.x = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat3.x = u_xlat3.x * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat3.x = float(1.0) / u_xlat3.x;
					        u_xlat0.xyz = unity_LightColor[u_xlati_loop_1].xyz * u_xlat3.xxx + u_xlat0.xyz;
					    }
					    u_xlat0.xyz = u_xlat0.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat1.xyz = vec3(u_xlat12) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendMul" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat12;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat2.xyz = vec3(u_xlat12) * u_xlat2.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat2.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					bool u_xlatb3;
					vec2 u_xlat4;
					float u_xlat12;
					int u_xlati12;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat1 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat1.x);
					    u_xlat0.x = float(0.0);
					    u_xlat0.y = float(0.0);
					    u_xlat0.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat1.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat3.x = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat3.x = u_xlat3.x * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat3.x = float(1.0) / u_xlat3.x;
					        u_xlat0.xyz = unity_LightColor[u_xlati_loop_1].xyz * u_xlat3.xxx + u_xlat0.xyz;
					    }
					    u_xlat0.xyz = u_xlat0.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat1.xyz = vec3(u_xlat12) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendMul" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat12;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat2.xyz = vec3(u_xlat12) * u_xlat2.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat2.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					bool u_xlatb3;
					vec2 u_xlat4;
					float u_xlat12;
					int u_xlati12;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat1 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat1.x);
					    u_xlat0.x = float(0.0);
					    u_xlat0.y = float(0.0);
					    u_xlat0.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat1.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat3.x = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat3.x = u_xlat3.x * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat3.x = float(1.0) / u_xlat3.x;
					        u_xlat0.xyz = unity_LightColor[u_xlati_loop_1].xyz * u_xlat3.xxx + u_xlat0.xyz;
					    }
					    u_xlat0.xyz = u_xlat0.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat1.xyz = vec3(u_xlat12) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendMul" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat12;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat2.xyz = vec3(u_xlat12) * u_xlat2.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat2.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					bool u_xlatb3;
					vec2 u_xlat4;
					float u_xlat12;
					int u_xlati12;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat1 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat1.x);
					    u_xlat0.x = float(0.0);
					    u_xlat0.y = float(0.0);
					    u_xlat0.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat1.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat3.x = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat3.x = u_xlat3.x * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat3.x = float(1.0) / u_xlat3.x;
					        u_xlat0.xyz = unity_LightColor[u_xlati_loop_1].xyz * u_xlat3.xxx + u_xlat0.xyz;
					    }
					    u_xlat0.xyz = u_xlat0.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat1.xyz = vec3(u_xlat12) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendMul" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat12;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat2.xyz = vec3(u_xlat12) * u_xlat2.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat2.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					bool u_xlatb3;
					vec2 u_xlat4;
					float u_xlat12;
					int u_xlati12;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat1 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat1.x);
					    u_xlat0.x = float(0.0);
					    u_xlat0.y = float(0.0);
					    u_xlat0.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat1.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat3.x = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat3.x = u_xlat3.x * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat3.x = float(1.0) / u_xlat3.x;
					        u_xlat0.xyz = unity_LightColor[u_xlati_loop_1].xyz * u_xlat3.xxx + u_xlat0.xyz;
					    }
					    u_xlat0.xyz = u_xlat0.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat1.xyz = vec3(u_xlat12) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendMul" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat12;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat2.xyz = vec3(u_xlat12) * u_xlat2.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat2.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					bool u_xlatb3;
					vec2 u_xlat4;
					float u_xlat12;
					int u_xlati12;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat1 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat1.x);
					    u_xlat0.x = float(0.0);
					    u_xlat0.y = float(0.0);
					    u_xlat0.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat1.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat3.x = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat3.x = u_xlat3.x * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat3.x = float(1.0) / u_xlat3.x;
					        u_xlat0.xyz = unity_LightColor[u_xlati_loop_1].xyz * u_xlat3.xxx + u_xlat0.xyz;
					    }
					    u_xlat0.xyz = u_xlat0.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat1.xyz = vec3(u_xlat12) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendMul" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat12;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat2.xyz = vec3(u_xlat12) * u_xlat2.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat2.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					bool u_xlatb3;
					vec2 u_xlat4;
					float u_xlat12;
					int u_xlati12;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat1 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat1.x);
					    u_xlat0.x = float(0.0);
					    u_xlat0.y = float(0.0);
					    u_xlat0.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat1.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat3.x = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat3.x = u_xlat3.x * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat3.x = float(1.0) / u_xlat3.x;
					        u_xlat0.xyz = unity_LightColor[u_xlati_loop_1].xyz * u_xlat3.xxx + u_xlat0.xyz;
					    }
					    u_xlat0.xyz = u_xlat0.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat1.xyz = vec3(u_xlat12) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendMul" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat12;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat2.xyz = vec3(u_xlat12) * u_xlat2.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat2.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					bool u_xlatb3;
					vec2 u_xlat4;
					float u_xlat12;
					int u_xlati12;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat1 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat1.x);
					    u_xlat0.x = float(0.0);
					    u_xlat0.y = float(0.0);
					    u_xlat0.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat1.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat3.x = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat3.x = u_xlat3.x * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat3.x = float(1.0) / u_xlat3.x;
					        u_xlat0.xyz = unity_LightColor[u_xlati_loop_1].xyz * u_xlat3.xxx + u_xlat0.xyz;
					    }
					    u_xlat0.xyz = u_xlat0.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat1.xyz = vec3(u_xlat12) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendMul" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat12;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat2.xyz = vec3(u_xlat12) * u_xlat2.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat2.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					bool u_xlatb3;
					vec2 u_xlat4;
					float u_xlat12;
					int u_xlati12;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat1 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat1.x);
					    u_xlat0.x = float(0.0);
					    u_xlat0.y = float(0.0);
					    u_xlat0.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat1.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat3.x = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat3.x = u_xlat3.x * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat3.x = float(1.0) / u_xlat3.x;
					        u_xlat0.xyz = unity_LightColor[u_xlati_loop_1].xyz * u_xlat3.xxx + u_xlat0.xyz;
					    }
					    u_xlat0.xyz = u_xlat0.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat1.xyz = vec3(u_xlat12) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendMul" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat12;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat2.xyz = vec3(u_xlat12) * u_xlat2.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat2.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					bool u_xlatb3;
					vec2 u_xlat4;
					float u_xlat12;
					int u_xlati12;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat1 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat1.x);
					    u_xlat0.x = float(0.0);
					    u_xlat0.y = float(0.0);
					    u_xlat0.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat1.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat3.x = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat3.x = u_xlat3.x * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat3.x = float(1.0) / u_xlat3.x;
					        u_xlat0.xyz = unity_LightColor[u_xlati_loop_1].xyz * u_xlat3.xxx + u_xlat0.xyz;
					    }
					    u_xlat0.xyz = u_xlat0.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat1.xyz = vec3(u_xlat12) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendMul" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat12;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat2.xyz = vec3(u_xlat12) * u_xlat2.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat2.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					bool u_xlatb3;
					vec2 u_xlat4;
					float u_xlat12;
					int u_xlati12;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat1 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat1.x);
					    u_xlat0.x = float(0.0);
					    u_xlat0.y = float(0.0);
					    u_xlat0.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat1.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat3.x = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat3.x = u_xlat3.x * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat3.x = float(1.0) / u_xlat3.x;
					        u_xlat0.xyz = unity_LightColor[u_xlati_loop_1].xyz * u_xlat3.xxx + u_xlat0.xyz;
					    }
					    u_xlat0.xyz = u_xlat0.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat1.xyz = vec3(u_xlat12) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendMul" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat12;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat2.xyz = vec3(u_xlat12) * u_xlat2.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat2.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					bool u_xlatb3;
					vec2 u_xlat4;
					float u_xlat12;
					int u_xlati12;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat1 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat1.x);
					    u_xlat0.x = float(0.0);
					    u_xlat0.y = float(0.0);
					    u_xlat0.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat1.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat3.x = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat3.x = u_xlat3.x * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat3.x = float(1.0) / u_xlat3.x;
					        u_xlat0.xyz = unity_LightColor[u_xlati_loop_1].xyz * u_xlat3.xxx + u_xlat0.xyz;
					    }
					    u_xlat0.xyz = u_xlat0.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat1.xyz = vec3(u_xlat12) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendMul" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat12;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat2.xyz = vec3(u_xlat12) * u_xlat2.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat2.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					bool u_xlatb3;
					vec2 u_xlat4;
					float u_xlat12;
					int u_xlati12;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat1 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat1.x);
					    u_xlat0.x = float(0.0);
					    u_xlat0.y = float(0.0);
					    u_xlat0.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat1.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat3.x = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat3.x = u_xlat3.x * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat3.x = float(1.0) / u_xlat3.x;
					        u_xlat0.xyz = unity_LightColor[u_xlati_loop_1].xyz * u_xlat3.xxx + u_xlat0.xyz;
					    }
					    u_xlat0.xyz = u_xlat0.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat1.xyz = vec3(u_xlat12) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendMul" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat12;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat2.xyz = vec3(u_xlat12) * u_xlat2.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat2.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					bool u_xlatb3;
					vec2 u_xlat4;
					float u_xlat12;
					int u_xlati12;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat1 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat1.x);
					    u_xlat0.x = float(0.0);
					    u_xlat0.y = float(0.0);
					    u_xlat0.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat1.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat3.x = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat3.x = u_xlat3.x * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat3.x = float(1.0) / u_xlat3.x;
					        u_xlat0.xyz = unity_LightColor[u_xlati_loop_1].xyz * u_xlat3.xxx + u_xlat0.xyz;
					    }
					    u_xlat0.xyz = u_xlat0.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat1.xyz = vec3(u_xlat12) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendMul" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat12;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat2.xyz = vec3(u_xlat12) * u_xlat2.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat2.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					bool u_xlatb3;
					vec2 u_xlat4;
					float u_xlat12;
					int u_xlati12;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat1 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat1.x);
					    u_xlat0.x = float(0.0);
					    u_xlat0.y = float(0.0);
					    u_xlat0.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat1.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat3.x = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat3.x = u_xlat3.x * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat3.x = float(1.0) / u_xlat3.x;
					        u_xlat0.xyz = unity_LightColor[u_xlati_loop_1].xyz * u_xlat3.xxx + u_xlat0.xyz;
					    }
					    u_xlat0.xyz = u_xlat0.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat1.xyz = vec3(u_xlat12) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendMul" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat12;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat2.xyz = vec3(u_xlat12) * u_xlat2.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat2.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					bool u_xlatb3;
					vec2 u_xlat4;
					float u_xlat12;
					int u_xlati12;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat1 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat1.x);
					    u_xlat0.x = float(0.0);
					    u_xlat0.y = float(0.0);
					    u_xlat0.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat1.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat3.x = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat3.x = u_xlat3.x * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat3.x = float(1.0) / u_xlat3.x;
					        u_xlat0.xyz = unity_LightColor[u_xlati_loop_1].xyz * u_xlat3.xxx + u_xlat0.xyz;
					    }
					    u_xlat0.xyz = u_xlat0.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat1.xyz = vec3(u_xlat12) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendMul" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendMul" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendMul" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendMul" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendMul" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendMul" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendMul" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendMul" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendMul" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendMul" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendMul" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendMul" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendMul" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendMul" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendMul" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendMul" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendMul" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_8;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_10;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					float u_xlat20;
					bool u_xlatb20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat20 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 9.99999997e-07);
					        u_xlat3.x = inversesqrt(u_xlat20);
					        u_xlat5.xyz = u_xlat3.xxx * u_xlat5.xyz;
					        u_xlat20 = u_xlat20 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat20 = float(1.0) / u_xlat20;
					        u_xlat3.x = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat3.x = max(u_xlat3.x, 0.0);
					        u_xlat20 = u_xlat20 * u_xlat3.x;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat20) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendMul" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_8;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_10;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					float u_xlat20;
					bool u_xlatb20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat20 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 9.99999997e-07);
					        u_xlat3.x = inversesqrt(u_xlat20);
					        u_xlat5.xyz = u_xlat3.xxx * u_xlat5.xyz;
					        u_xlat20 = u_xlat20 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat20 = float(1.0) / u_xlat20;
					        u_xlat3.x = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat3.x = max(u_xlat3.x, 0.0);
					        u_xlat20 = u_xlat20 * u_xlat3.x;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat20) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendMul" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_8;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_10;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					float u_xlat20;
					bool u_xlatb20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat20 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 9.99999997e-07);
					        u_xlat3.x = inversesqrt(u_xlat20);
					        u_xlat5.xyz = u_xlat3.xxx * u_xlat5.xyz;
					        u_xlat20 = u_xlat20 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat20 = float(1.0) / u_xlat20;
					        u_xlat3.x = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat3.x = max(u_xlat3.x, 0.0);
					        u_xlat20 = u_xlat20 * u_xlat3.x;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat20) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendMul" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_8;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_10;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					float u_xlat20;
					bool u_xlatb20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat20 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 9.99999997e-07);
					        u_xlat3.x = inversesqrt(u_xlat20);
					        u_xlat5.xyz = u_xlat3.xxx * u_xlat5.xyz;
					        u_xlat20 = u_xlat20 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat20 = float(1.0) / u_xlat20;
					        u_xlat3.x = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat3.x = max(u_xlat3.x, 0.0);
					        u_xlat20 = u_xlat20 * u_xlat3.x;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat20) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendMul" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_8;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_10;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					float u_xlat20;
					bool u_xlatb20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat20 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 9.99999997e-07);
					        u_xlat3.x = inversesqrt(u_xlat20);
					        u_xlat5.xyz = u_xlat3.xxx * u_xlat5.xyz;
					        u_xlat20 = u_xlat20 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat20 = float(1.0) / u_xlat20;
					        u_xlat3.x = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat3.x = max(u_xlat3.x, 0.0);
					        u_xlat20 = u_xlat20 * u_xlat3.x;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat20) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendMul" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_8;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_10;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					float u_xlat20;
					bool u_xlatb20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat20 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 9.99999997e-07);
					        u_xlat3.x = inversesqrt(u_xlat20);
					        u_xlat5.xyz = u_xlat3.xxx * u_xlat5.xyz;
					        u_xlat20 = u_xlat20 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat20 = float(1.0) / u_xlat20;
					        u_xlat3.x = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat3.x = max(u_xlat3.x, 0.0);
					        u_xlat20 = u_xlat20 * u_xlat3.x;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat20) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendMul" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_8;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_10;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					float u_xlat20;
					bool u_xlatb20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat20 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 9.99999997e-07);
					        u_xlat3.x = inversesqrt(u_xlat20);
					        u_xlat5.xyz = u_xlat3.xxx * u_xlat5.xyz;
					        u_xlat20 = u_xlat20 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat20 = float(1.0) / u_xlat20;
					        u_xlat3.x = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat3.x = max(u_xlat3.x, 0.0);
					        u_xlat20 = u_xlat20 * u_xlat3.x;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat20) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendMul" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_8;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_10;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					float u_xlat20;
					bool u_xlatb20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat20 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 9.99999997e-07);
					        u_xlat3.x = inversesqrt(u_xlat20);
					        u_xlat5.xyz = u_xlat3.xxx * u_xlat5.xyz;
					        u_xlat20 = u_xlat20 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat20 = float(1.0) / u_xlat20;
					        u_xlat3.x = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat3.x = max(u_xlat3.x, 0.0);
					        u_xlat20 = u_xlat20 * u_xlat3.x;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat20) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendMul" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_8;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_10;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					float u_xlat20;
					bool u_xlatb20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat20 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 9.99999997e-07);
					        u_xlat3.x = inversesqrt(u_xlat20);
					        u_xlat5.xyz = u_xlat3.xxx * u_xlat5.xyz;
					        u_xlat20 = u_xlat20 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat20 = float(1.0) / u_xlat20;
					        u_xlat3.x = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat3.x = max(u_xlat3.x, 0.0);
					        u_xlat20 = u_xlat20 * u_xlat3.x;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat20) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendMul" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_8;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_10;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					float u_xlat20;
					bool u_xlatb20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat20 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 9.99999997e-07);
					        u_xlat3.x = inversesqrt(u_xlat20);
					        u_xlat5.xyz = u_xlat3.xxx * u_xlat5.xyz;
					        u_xlat20 = u_xlat20 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat20 = float(1.0) / u_xlat20;
					        u_xlat3.x = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat3.x = max(u_xlat3.x, 0.0);
					        u_xlat20 = u_xlat20 * u_xlat3.x;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat20) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendMul" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_8;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_10;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					float u_xlat20;
					bool u_xlatb20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat20 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 9.99999997e-07);
					        u_xlat3.x = inversesqrt(u_xlat20);
					        u_xlat5.xyz = u_xlat3.xxx * u_xlat5.xyz;
					        u_xlat20 = u_xlat20 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat20 = float(1.0) / u_xlat20;
					        u_xlat3.x = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat3.x = max(u_xlat3.x, 0.0);
					        u_xlat20 = u_xlat20 * u_xlat3.x;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat20) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendMul" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_8;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_10;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					float u_xlat20;
					bool u_xlatb20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat20 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 9.99999997e-07);
					        u_xlat3.x = inversesqrt(u_xlat20);
					        u_xlat5.xyz = u_xlat3.xxx * u_xlat5.xyz;
					        u_xlat20 = u_xlat20 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat20 = float(1.0) / u_xlat20;
					        u_xlat3.x = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat3.x = max(u_xlat3.x, 0.0);
					        u_xlat20 = u_xlat20 * u_xlat3.x;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat20) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendMul" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_8;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_10;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					float u_xlat20;
					bool u_xlatb20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat20 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 9.99999997e-07);
					        u_xlat3.x = inversesqrt(u_xlat20);
					        u_xlat5.xyz = u_xlat3.xxx * u_xlat5.xyz;
					        u_xlat20 = u_xlat20 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat20 = float(1.0) / u_xlat20;
					        u_xlat3.x = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat3.x = max(u_xlat3.x, 0.0);
					        u_xlat20 = u_xlat20 * u_xlat3.x;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat20) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendMul" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_8;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_10;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					float u_xlat20;
					bool u_xlatb20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat20 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 9.99999997e-07);
					        u_xlat3.x = inversesqrt(u_xlat20);
					        u_xlat5.xyz = u_xlat3.xxx * u_xlat5.xyz;
					        u_xlat20 = u_xlat20 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat20 = float(1.0) / u_xlat20;
					        u_xlat3.x = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat3.x = max(u_xlat3.x, 0.0);
					        u_xlat20 = u_xlat20 * u_xlat3.x;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat20) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendMul" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_8;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_10;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					float u_xlat20;
					bool u_xlatb20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat20 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 9.99999997e-07);
					        u_xlat3.x = inversesqrt(u_xlat20);
					        u_xlat5.xyz = u_xlat3.xxx * u_xlat5.xyz;
					        u_xlat20 = u_xlat20 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat20 = float(1.0) / u_xlat20;
					        u_xlat3.x = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat3.x = max(u_xlat3.x, 0.0);
					        u_xlat20 = u_xlat20 * u_xlat3.x;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat20) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendMul" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_8;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_10;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					float u_xlat20;
					bool u_xlatb20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat20 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 9.99999997e-07);
					        u_xlat3.x = inversesqrt(u_xlat20);
					        u_xlat5.xyz = u_xlat3.xxx * u_xlat5.xyz;
					        u_xlat20 = u_xlat20 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat20 = float(1.0) / u_xlat20;
					        u_xlat3.x = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat3.x = max(u_xlat3.x, 0.0);
					        u_xlat20 = u_xlat20 * u_xlat3.x;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat20) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendMul" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendMul" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendMul" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendMul" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendMul" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendMul" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendMul" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendMul" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendMul" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendMul" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendMul" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendMul" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendMul" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendMul" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendMul" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendMul" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendMul" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_8;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_10;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					float u_xlat20;
					bool u_xlatb20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat20 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 9.99999997e-07);
					        u_xlat3.x = inversesqrt(u_xlat20);
					        u_xlat5.xyz = u_xlat3.xxx * u_xlat5.xyz;
					        u_xlat20 = u_xlat20 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat20 = float(1.0) / u_xlat20;
					        u_xlat3.x = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat3.x = max(u_xlat3.x, 0.0);
					        u_xlat20 = u_xlat20 * u_xlat3.x;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat20) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendMul" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_8;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_10;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					float u_xlat20;
					bool u_xlatb20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat20 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 9.99999997e-07);
					        u_xlat3.x = inversesqrt(u_xlat20);
					        u_xlat5.xyz = u_xlat3.xxx * u_xlat5.xyz;
					        u_xlat20 = u_xlat20 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat20 = float(1.0) / u_xlat20;
					        u_xlat3.x = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat3.x = max(u_xlat3.x, 0.0);
					        u_xlat20 = u_xlat20 * u_xlat3.x;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat20) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendMul" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_8;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_10;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					float u_xlat20;
					bool u_xlatb20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat20 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 9.99999997e-07);
					        u_xlat3.x = inversesqrt(u_xlat20);
					        u_xlat5.xyz = u_xlat3.xxx * u_xlat5.xyz;
					        u_xlat20 = u_xlat20 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat20 = float(1.0) / u_xlat20;
					        u_xlat3.x = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat3.x = max(u_xlat3.x, 0.0);
					        u_xlat20 = u_xlat20 * u_xlat3.x;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat20) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendMul" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_8;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_10;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					float u_xlat20;
					bool u_xlatb20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat20 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 9.99999997e-07);
					        u_xlat3.x = inversesqrt(u_xlat20);
					        u_xlat5.xyz = u_xlat3.xxx * u_xlat5.xyz;
					        u_xlat20 = u_xlat20 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat20 = float(1.0) / u_xlat20;
					        u_xlat3.x = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat3.x = max(u_xlat3.x, 0.0);
					        u_xlat20 = u_xlat20 * u_xlat3.x;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat20) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendMul" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_8;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_10;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					float u_xlat20;
					bool u_xlatb20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat20 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 9.99999997e-07);
					        u_xlat3.x = inversesqrt(u_xlat20);
					        u_xlat5.xyz = u_xlat3.xxx * u_xlat5.xyz;
					        u_xlat20 = u_xlat20 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat20 = float(1.0) / u_xlat20;
					        u_xlat3.x = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat3.x = max(u_xlat3.x, 0.0);
					        u_xlat20 = u_xlat20 * u_xlat3.x;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat20) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendMul" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_8;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_10;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					float u_xlat20;
					bool u_xlatb20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat20 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 9.99999997e-07);
					        u_xlat3.x = inversesqrt(u_xlat20);
					        u_xlat5.xyz = u_xlat3.xxx * u_xlat5.xyz;
					        u_xlat20 = u_xlat20 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat20 = float(1.0) / u_xlat20;
					        u_xlat3.x = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat3.x = max(u_xlat3.x, 0.0);
					        u_xlat20 = u_xlat20 * u_xlat3.x;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat20) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendMul" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_8;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_10;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					float u_xlat20;
					bool u_xlatb20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat20 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 9.99999997e-07);
					        u_xlat3.x = inversesqrt(u_xlat20);
					        u_xlat5.xyz = u_xlat3.xxx * u_xlat5.xyz;
					        u_xlat20 = u_xlat20 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat20 = float(1.0) / u_xlat20;
					        u_xlat3.x = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat3.x = max(u_xlat3.x, 0.0);
					        u_xlat20 = u_xlat20 * u_xlat3.x;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat20) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendMul" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_8;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_10;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					float u_xlat20;
					bool u_xlatb20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat20 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 9.99999997e-07);
					        u_xlat3.x = inversesqrt(u_xlat20);
					        u_xlat5.xyz = u_xlat3.xxx * u_xlat5.xyz;
					        u_xlat20 = u_xlat20 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat20 = float(1.0) / u_xlat20;
					        u_xlat3.x = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat3.x = max(u_xlat3.x, 0.0);
					        u_xlat20 = u_xlat20 * u_xlat3.x;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat20) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendMul" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_8;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_10;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					float u_xlat20;
					bool u_xlatb20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat20 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 9.99999997e-07);
					        u_xlat3.x = inversesqrt(u_xlat20);
					        u_xlat5.xyz = u_xlat3.xxx * u_xlat5.xyz;
					        u_xlat20 = u_xlat20 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat20 = float(1.0) / u_xlat20;
					        u_xlat3.x = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat3.x = max(u_xlat3.x, 0.0);
					        u_xlat20 = u_xlat20 * u_xlat3.x;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat20) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendMul" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_8;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_10;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					float u_xlat20;
					bool u_xlatb20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat20 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 9.99999997e-07);
					        u_xlat3.x = inversesqrt(u_xlat20);
					        u_xlat5.xyz = u_xlat3.xxx * u_xlat5.xyz;
					        u_xlat20 = u_xlat20 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat20 = float(1.0) / u_xlat20;
					        u_xlat3.x = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat3.x = max(u_xlat3.x, 0.0);
					        u_xlat20 = u_xlat20 * u_xlat3.x;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat20) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendMul" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_8;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_10;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					float u_xlat20;
					bool u_xlatb20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat20 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 9.99999997e-07);
					        u_xlat3.x = inversesqrt(u_xlat20);
					        u_xlat5.xyz = u_xlat3.xxx * u_xlat5.xyz;
					        u_xlat20 = u_xlat20 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat20 = float(1.0) / u_xlat20;
					        u_xlat3.x = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat3.x = max(u_xlat3.x, 0.0);
					        u_xlat20 = u_xlat20 * u_xlat3.x;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat20) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendMul" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_8;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_10;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					float u_xlat20;
					bool u_xlatb20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat20 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 9.99999997e-07);
					        u_xlat3.x = inversesqrt(u_xlat20);
					        u_xlat5.xyz = u_xlat3.xxx * u_xlat5.xyz;
					        u_xlat20 = u_xlat20 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat20 = float(1.0) / u_xlat20;
					        u_xlat3.x = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat3.x = max(u_xlat3.x, 0.0);
					        u_xlat20 = u_xlat20 * u_xlat3.x;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat20) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendMul" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_8;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_10;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					float u_xlat20;
					bool u_xlatb20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat20 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 9.99999997e-07);
					        u_xlat3.x = inversesqrt(u_xlat20);
					        u_xlat5.xyz = u_xlat3.xxx * u_xlat5.xyz;
					        u_xlat20 = u_xlat20 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat20 = float(1.0) / u_xlat20;
					        u_xlat3.x = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat3.x = max(u_xlat3.x, 0.0);
					        u_xlat20 = u_xlat20 * u_xlat3.x;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat20) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendMul" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_8;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_10;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					float u_xlat20;
					bool u_xlatb20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat20 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 9.99999997e-07);
					        u_xlat3.x = inversesqrt(u_xlat20);
					        u_xlat5.xyz = u_xlat3.xxx * u_xlat5.xyz;
					        u_xlat20 = u_xlat20 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat20 = float(1.0) / u_xlat20;
					        u_xlat3.x = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat3.x = max(u_xlat3.x, 0.0);
					        u_xlat20 = u_xlat20 * u_xlat3.x;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat20) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendMul" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_8;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_10;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					float u_xlat20;
					bool u_xlatb20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat20 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 9.99999997e-07);
					        u_xlat3.x = inversesqrt(u_xlat20);
					        u_xlat5.xyz = u_xlat3.xxx * u_xlat5.xyz;
					        u_xlat20 = u_xlat20 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat20 = float(1.0) / u_xlat20;
					        u_xlat3.x = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat3.x = max(u_xlat3.x, 0.0);
					        u_xlat20 = u_xlat20 * u_xlat3.x;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat20) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendMul" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_8;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_10;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					float u_xlat20;
					bool u_xlatb20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat20 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 9.99999997e-07);
					        u_xlat3.x = inversesqrt(u_xlat20);
					        u_xlat5.xyz = u_xlat3.xxx * u_xlat5.xyz;
					        u_xlat20 = u_xlat20 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat20 = float(1.0) / u_xlat20;
					        u_xlat3.x = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat3.x = max(u_xlat3.x, 0.0);
					        u_xlat20 = u_xlat20 * u_xlat3.x;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat20) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendMul" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendMul" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendMul" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendMul" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendMul" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendMul" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendMul" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendMul" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendMul" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendMul" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendMul" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendMul" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendMul" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendMul" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendMul" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendMul" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendMul" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_8;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_10;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					float u_xlat20;
					bool u_xlatb20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat20 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 9.99999997e-07);
					        u_xlat3.x = inversesqrt(u_xlat20);
					        u_xlat5.xyz = u_xlat3.xxx * u_xlat5.xyz;
					        u_xlat20 = u_xlat20 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat20 = float(1.0) / u_xlat20;
					        u_xlat3.x = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat3.x = max(u_xlat3.x, 0.0);
					        u_xlat20 = u_xlat20 * u_xlat3.x;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat20) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendMul" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_8;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_10;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					float u_xlat20;
					bool u_xlatb20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat20 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 9.99999997e-07);
					        u_xlat3.x = inversesqrt(u_xlat20);
					        u_xlat5.xyz = u_xlat3.xxx * u_xlat5.xyz;
					        u_xlat20 = u_xlat20 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat20 = float(1.0) / u_xlat20;
					        u_xlat3.x = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat3.x = max(u_xlat3.x, 0.0);
					        u_xlat20 = u_xlat20 * u_xlat3.x;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat20) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendMul" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_8;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_10;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					float u_xlat20;
					bool u_xlatb20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat20 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 9.99999997e-07);
					        u_xlat3.x = inversesqrt(u_xlat20);
					        u_xlat5.xyz = u_xlat3.xxx * u_xlat5.xyz;
					        u_xlat20 = u_xlat20 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat20 = float(1.0) / u_xlat20;
					        u_xlat3.x = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat3.x = max(u_xlat3.x, 0.0);
					        u_xlat20 = u_xlat20 * u_xlat3.x;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat20) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendMul" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_8;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_10;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					float u_xlat20;
					bool u_xlatb20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat20 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 9.99999997e-07);
					        u_xlat3.x = inversesqrt(u_xlat20);
					        u_xlat5.xyz = u_xlat3.xxx * u_xlat5.xyz;
					        u_xlat20 = u_xlat20 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat20 = float(1.0) / u_xlat20;
					        u_xlat3.x = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat3.x = max(u_xlat3.x, 0.0);
					        u_xlat20 = u_xlat20 * u_xlat3.x;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat20) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendMul" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_8;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_10;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					float u_xlat20;
					bool u_xlatb20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat20 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 9.99999997e-07);
					        u_xlat3.x = inversesqrt(u_xlat20);
					        u_xlat5.xyz = u_xlat3.xxx * u_xlat5.xyz;
					        u_xlat20 = u_xlat20 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat20 = float(1.0) / u_xlat20;
					        u_xlat3.x = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat3.x = max(u_xlat3.x, 0.0);
					        u_xlat20 = u_xlat20 * u_xlat3.x;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat20) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendMul" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_8;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_10;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					float u_xlat20;
					bool u_xlatb20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat20 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 9.99999997e-07);
					        u_xlat3.x = inversesqrt(u_xlat20);
					        u_xlat5.xyz = u_xlat3.xxx * u_xlat5.xyz;
					        u_xlat20 = u_xlat20 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat20 = float(1.0) / u_xlat20;
					        u_xlat3.x = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat3.x = max(u_xlat3.x, 0.0);
					        u_xlat20 = u_xlat20 * u_xlat3.x;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat20) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendMul" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_8;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_10;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					float u_xlat20;
					bool u_xlatb20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat20 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 9.99999997e-07);
					        u_xlat3.x = inversesqrt(u_xlat20);
					        u_xlat5.xyz = u_xlat3.xxx * u_xlat5.xyz;
					        u_xlat20 = u_xlat20 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat20 = float(1.0) / u_xlat20;
					        u_xlat3.x = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat3.x = max(u_xlat3.x, 0.0);
					        u_xlat20 = u_xlat20 * u_xlat3.x;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat20) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendMul" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_8;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_10;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					float u_xlat20;
					bool u_xlatb20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat20 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 9.99999997e-07);
					        u_xlat3.x = inversesqrt(u_xlat20);
					        u_xlat5.xyz = u_xlat3.xxx * u_xlat5.xyz;
					        u_xlat20 = u_xlat20 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat20 = float(1.0) / u_xlat20;
					        u_xlat3.x = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat3.x = max(u_xlat3.x, 0.0);
					        u_xlat20 = u_xlat20 * u_xlat3.x;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat20) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendMul" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_8;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_10;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					float u_xlat20;
					bool u_xlatb20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat20 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 9.99999997e-07);
					        u_xlat3.x = inversesqrt(u_xlat20);
					        u_xlat5.xyz = u_xlat3.xxx * u_xlat5.xyz;
					        u_xlat20 = u_xlat20 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat20 = float(1.0) / u_xlat20;
					        u_xlat3.x = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat3.x = max(u_xlat3.x, 0.0);
					        u_xlat20 = u_xlat20 * u_xlat3.x;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat20) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendMul" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_8;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_10;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					float u_xlat20;
					bool u_xlatb20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat20 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 9.99999997e-07);
					        u_xlat3.x = inversesqrt(u_xlat20);
					        u_xlat5.xyz = u_xlat3.xxx * u_xlat5.xyz;
					        u_xlat20 = u_xlat20 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat20 = float(1.0) / u_xlat20;
					        u_xlat3.x = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat3.x = max(u_xlat3.x, 0.0);
					        u_xlat20 = u_xlat20 * u_xlat3.x;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat20) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendMul" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_8;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_10;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					float u_xlat20;
					bool u_xlatb20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat20 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 9.99999997e-07);
					        u_xlat3.x = inversesqrt(u_xlat20);
					        u_xlat5.xyz = u_xlat3.xxx * u_xlat5.xyz;
					        u_xlat20 = u_xlat20 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat20 = float(1.0) / u_xlat20;
					        u_xlat3.x = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat3.x = max(u_xlat3.x, 0.0);
					        u_xlat20 = u_xlat20 * u_xlat3.x;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat20) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendMul" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_8;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_10;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					float u_xlat20;
					bool u_xlatb20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat20 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 9.99999997e-07);
					        u_xlat3.x = inversesqrt(u_xlat20);
					        u_xlat5.xyz = u_xlat3.xxx * u_xlat5.xyz;
					        u_xlat20 = u_xlat20 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat20 = float(1.0) / u_xlat20;
					        u_xlat3.x = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat3.x = max(u_xlat3.x, 0.0);
					        u_xlat20 = u_xlat20 * u_xlat3.x;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat20) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendMul" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_8;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_10;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					float u_xlat20;
					bool u_xlatb20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat20 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 9.99999997e-07);
					        u_xlat3.x = inversesqrt(u_xlat20);
					        u_xlat5.xyz = u_xlat3.xxx * u_xlat5.xyz;
					        u_xlat20 = u_xlat20 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat20 = float(1.0) / u_xlat20;
					        u_xlat3.x = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat3.x = max(u_xlat3.x, 0.0);
					        u_xlat20 = u_xlat20 * u_xlat3.x;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat20) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendMul" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_8;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_10;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					float u_xlat20;
					bool u_xlatb20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat20 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 9.99999997e-07);
					        u_xlat3.x = inversesqrt(u_xlat20);
					        u_xlat5.xyz = u_xlat3.xxx * u_xlat5.xyz;
					        u_xlat20 = u_xlat20 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat20 = float(1.0) / u_xlat20;
					        u_xlat3.x = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat3.x = max(u_xlat3.x, 0.0);
					        u_xlat20 = u_xlat20 * u_xlat3.x;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat20) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendMul" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_8;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_10;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					float u_xlat20;
					bool u_xlatb20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat20 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 9.99999997e-07);
					        u_xlat3.x = inversesqrt(u_xlat20);
					        u_xlat5.xyz = u_xlat3.xxx * u_xlat5.xyz;
					        u_xlat20 = u_xlat20 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat20 = float(1.0) / u_xlat20;
					        u_xlat3.x = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat3.x = max(u_xlat3.x, 0.0);
					        u_xlat20 = u_xlat20 * u_xlat3.x;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat20) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendMul" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_8;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_10;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					float u_xlat20;
					bool u_xlatb20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat20 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 9.99999997e-07);
					        u_xlat3.x = inversesqrt(u_xlat20);
					        u_xlat5.xyz = u_xlat3.xxx * u_xlat5.xyz;
					        u_xlat20 = u_xlat20 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat20 = float(1.0) / u_xlat20;
					        u_xlat3.x = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat3.x = max(u_xlat3.x, 0.0);
					        u_xlat20 = u_xlat20 * u_xlat3.x;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat20) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendMul" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendMul" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendMul" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendMul" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendMul" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendMul" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendMul" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendMul" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendMul" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendMul" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendMul" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendMul" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendMul" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendMul" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendMul" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendMul" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendMul" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_8;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_10;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					float u_xlat20;
					bool u_xlatb20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat20 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 9.99999997e-07);
					        u_xlat3.x = inversesqrt(u_xlat20);
					        u_xlat5.xyz = u_xlat3.xxx * u_xlat5.xyz;
					        u_xlat20 = u_xlat20 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat20 = float(1.0) / u_xlat20;
					        u_xlat3.x = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat3.x = max(u_xlat3.x, 0.0);
					        u_xlat20 = u_xlat20 * u_xlat3.x;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat20) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendMul" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_8;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_10;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					float u_xlat20;
					bool u_xlatb20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat20 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 9.99999997e-07);
					        u_xlat3.x = inversesqrt(u_xlat20);
					        u_xlat5.xyz = u_xlat3.xxx * u_xlat5.xyz;
					        u_xlat20 = u_xlat20 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat20 = float(1.0) / u_xlat20;
					        u_xlat3.x = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat3.x = max(u_xlat3.x, 0.0);
					        u_xlat20 = u_xlat20 * u_xlat3.x;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat20) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendMul" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_8;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_10;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					float u_xlat20;
					bool u_xlatb20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat20 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 9.99999997e-07);
					        u_xlat3.x = inversesqrt(u_xlat20);
					        u_xlat5.xyz = u_xlat3.xxx * u_xlat5.xyz;
					        u_xlat20 = u_xlat20 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat20 = float(1.0) / u_xlat20;
					        u_xlat3.x = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat3.x = max(u_xlat3.x, 0.0);
					        u_xlat20 = u_xlat20 * u_xlat3.x;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat20) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendMul" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_8;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_10;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					float u_xlat20;
					bool u_xlatb20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat20 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 9.99999997e-07);
					        u_xlat3.x = inversesqrt(u_xlat20);
					        u_xlat5.xyz = u_xlat3.xxx * u_xlat5.xyz;
					        u_xlat20 = u_xlat20 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat20 = float(1.0) / u_xlat20;
					        u_xlat3.x = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat3.x = max(u_xlat3.x, 0.0);
					        u_xlat20 = u_xlat20 * u_xlat3.x;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat20) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendMul" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_8;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_10;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					float u_xlat20;
					bool u_xlatb20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat20 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 9.99999997e-07);
					        u_xlat3.x = inversesqrt(u_xlat20);
					        u_xlat5.xyz = u_xlat3.xxx * u_xlat5.xyz;
					        u_xlat20 = u_xlat20 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat20 = float(1.0) / u_xlat20;
					        u_xlat3.x = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat3.x = max(u_xlat3.x, 0.0);
					        u_xlat20 = u_xlat20 * u_xlat3.x;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat20) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendMul" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_8;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_10;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					float u_xlat20;
					bool u_xlatb20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat20 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 9.99999997e-07);
					        u_xlat3.x = inversesqrt(u_xlat20);
					        u_xlat5.xyz = u_xlat3.xxx * u_xlat5.xyz;
					        u_xlat20 = u_xlat20 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat20 = float(1.0) / u_xlat20;
					        u_xlat3.x = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat3.x = max(u_xlat3.x, 0.0);
					        u_xlat20 = u_xlat20 * u_xlat3.x;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat20) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendMul" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_8;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_10;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					float u_xlat20;
					bool u_xlatb20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat20 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 9.99999997e-07);
					        u_xlat3.x = inversesqrt(u_xlat20);
					        u_xlat5.xyz = u_xlat3.xxx * u_xlat5.xyz;
					        u_xlat20 = u_xlat20 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat20 = float(1.0) / u_xlat20;
					        u_xlat3.x = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat3.x = max(u_xlat3.x, 0.0);
					        u_xlat20 = u_xlat20 * u_xlat3.x;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat20) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendMul" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_8;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_10;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					float u_xlat20;
					bool u_xlatb20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat20 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 9.99999997e-07);
					        u_xlat3.x = inversesqrt(u_xlat20);
					        u_xlat5.xyz = u_xlat3.xxx * u_xlat5.xyz;
					        u_xlat20 = u_xlat20 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat20 = float(1.0) / u_xlat20;
					        u_xlat3.x = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat3.x = max(u_xlat3.x, 0.0);
					        u_xlat20 = u_xlat20 * u_xlat3.x;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat20) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendMul" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_8;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_10;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					float u_xlat20;
					bool u_xlatb20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat20 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 9.99999997e-07);
					        u_xlat3.x = inversesqrt(u_xlat20);
					        u_xlat5.xyz = u_xlat3.xxx * u_xlat5.xyz;
					        u_xlat20 = u_xlat20 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat20 = float(1.0) / u_xlat20;
					        u_xlat3.x = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat3.x = max(u_xlat3.x, 0.0);
					        u_xlat20 = u_xlat20 * u_xlat3.x;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat20) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendMul" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_8;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_10;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					float u_xlat20;
					bool u_xlatb20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat20 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 9.99999997e-07);
					        u_xlat3.x = inversesqrt(u_xlat20);
					        u_xlat5.xyz = u_xlat3.xxx * u_xlat5.xyz;
					        u_xlat20 = u_xlat20 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat20 = float(1.0) / u_xlat20;
					        u_xlat3.x = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat3.x = max(u_xlat3.x, 0.0);
					        u_xlat20 = u_xlat20 * u_xlat3.x;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat20) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendMul" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_8;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_10;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					float u_xlat20;
					bool u_xlatb20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat20 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 9.99999997e-07);
					        u_xlat3.x = inversesqrt(u_xlat20);
					        u_xlat5.xyz = u_xlat3.xxx * u_xlat5.xyz;
					        u_xlat20 = u_xlat20 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat20 = float(1.0) / u_xlat20;
					        u_xlat3.x = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat3.x = max(u_xlat3.x, 0.0);
					        u_xlat20 = u_xlat20 * u_xlat3.x;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat20) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendMul" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_8;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_10;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					float u_xlat20;
					bool u_xlatb20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat20 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 9.99999997e-07);
					        u_xlat3.x = inversesqrt(u_xlat20);
					        u_xlat5.xyz = u_xlat3.xxx * u_xlat5.xyz;
					        u_xlat20 = u_xlat20 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat20 = float(1.0) / u_xlat20;
					        u_xlat3.x = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat3.x = max(u_xlat3.x, 0.0);
					        u_xlat20 = u_xlat20 * u_xlat3.x;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat20) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendMul" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_8;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_10;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					float u_xlat20;
					bool u_xlatb20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat20 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 9.99999997e-07);
					        u_xlat3.x = inversesqrt(u_xlat20);
					        u_xlat5.xyz = u_xlat3.xxx * u_xlat5.xyz;
					        u_xlat20 = u_xlat20 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat20 = float(1.0) / u_xlat20;
					        u_xlat3.x = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat3.x = max(u_xlat3.x, 0.0);
					        u_xlat20 = u_xlat20 * u_xlat3.x;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat20) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendMul" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_8;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_10;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					float u_xlat20;
					bool u_xlatb20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat20 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 9.99999997e-07);
					        u_xlat3.x = inversesqrt(u_xlat20);
					        u_xlat5.xyz = u_xlat3.xxx * u_xlat5.xyz;
					        u_xlat20 = u_xlat20 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat20 = float(1.0) / u_xlat20;
					        u_xlat3.x = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat3.x = max(u_xlat3.x, 0.0);
					        u_xlat20 = u_xlat20 * u_xlat3.x;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat20) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendMul" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_8;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_10;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					float u_xlat20;
					bool u_xlatb20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat20 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 9.99999997e-07);
					        u_xlat3.x = inversesqrt(u_xlat20);
					        u_xlat5.xyz = u_xlat3.xxx * u_xlat5.xyz;
					        u_xlat20 = u_xlat20 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat20 = float(1.0) / u_xlat20;
					        u_xlat3.x = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat3.x = max(u_xlat3.x, 0.0);
					        u_xlat20 = u_xlat20 * u_xlat3.x;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat20) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendMul" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_8;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_10;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					float u_xlat20;
					bool u_xlatb20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat20 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 9.99999997e-07);
					        u_xlat3.x = inversesqrt(u_xlat20);
					        u_xlat5.xyz = u_xlat3.xxx * u_xlat5.xyz;
					        u_xlat20 = u_xlat20 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat20 = float(1.0) / u_xlat20;
					        u_xlat3.x = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat3.x = max(u_xlat3.x, 0.0);
					        u_xlat20 = u_xlat20 * u_xlat3.x;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat20) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendMul" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendMul" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendMul" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendMul" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendMul" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendMul" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendMul" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendMul" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendMul" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendMul" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendMul" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendMul" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendMul" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendMul" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendMul" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendMul" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendMul" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_8;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_10;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					float u_xlat20;
					bool u_xlatb20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat20 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 9.99999997e-07);
					        u_xlat3.x = inversesqrt(u_xlat20);
					        u_xlat5.xyz = u_xlat3.xxx * u_xlat5.xyz;
					        u_xlat20 = u_xlat20 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat20 = float(1.0) / u_xlat20;
					        u_xlat3.x = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat3.x = max(u_xlat3.x, 0.0);
					        u_xlat20 = u_xlat20 * u_xlat3.x;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat20) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendMul" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_8;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_10;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					float u_xlat20;
					bool u_xlatb20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat20 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 9.99999997e-07);
					        u_xlat3.x = inversesqrt(u_xlat20);
					        u_xlat5.xyz = u_xlat3.xxx * u_xlat5.xyz;
					        u_xlat20 = u_xlat20 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat20 = float(1.0) / u_xlat20;
					        u_xlat3.x = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat3.x = max(u_xlat3.x, 0.0);
					        u_xlat20 = u_xlat20 * u_xlat3.x;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat20) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendMul" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_8;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_10;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					float u_xlat20;
					bool u_xlatb20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat20 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 9.99999997e-07);
					        u_xlat3.x = inversesqrt(u_xlat20);
					        u_xlat5.xyz = u_xlat3.xxx * u_xlat5.xyz;
					        u_xlat20 = u_xlat20 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat20 = float(1.0) / u_xlat20;
					        u_xlat3.x = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat3.x = max(u_xlat3.x, 0.0);
					        u_xlat20 = u_xlat20 * u_xlat3.x;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat20) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendMul" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_8;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_10;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					float u_xlat20;
					bool u_xlatb20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat20 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 9.99999997e-07);
					        u_xlat3.x = inversesqrt(u_xlat20);
					        u_xlat5.xyz = u_xlat3.xxx * u_xlat5.xyz;
					        u_xlat20 = u_xlat20 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat20 = float(1.0) / u_xlat20;
					        u_xlat3.x = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat3.x = max(u_xlat3.x, 0.0);
					        u_xlat20 = u_xlat20 * u_xlat3.x;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat20) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendMul" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_8;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_10;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					float u_xlat20;
					bool u_xlatb20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat20 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 9.99999997e-07);
					        u_xlat3.x = inversesqrt(u_xlat20);
					        u_xlat5.xyz = u_xlat3.xxx * u_xlat5.xyz;
					        u_xlat20 = u_xlat20 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat20 = float(1.0) / u_xlat20;
					        u_xlat3.x = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat3.x = max(u_xlat3.x, 0.0);
					        u_xlat20 = u_xlat20 * u_xlat3.x;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat20) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendMul" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_8;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_10;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					float u_xlat20;
					bool u_xlatb20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat20 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 9.99999997e-07);
					        u_xlat3.x = inversesqrt(u_xlat20);
					        u_xlat5.xyz = u_xlat3.xxx * u_xlat5.xyz;
					        u_xlat20 = u_xlat20 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat20 = float(1.0) / u_xlat20;
					        u_xlat3.x = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat3.x = max(u_xlat3.x, 0.0);
					        u_xlat20 = u_xlat20 * u_xlat3.x;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat20) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendMul" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_8;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_10;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					float u_xlat20;
					bool u_xlatb20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat20 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 9.99999997e-07);
					        u_xlat3.x = inversesqrt(u_xlat20);
					        u_xlat5.xyz = u_xlat3.xxx * u_xlat5.xyz;
					        u_xlat20 = u_xlat20 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat20 = float(1.0) / u_xlat20;
					        u_xlat3.x = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat3.x = max(u_xlat3.x, 0.0);
					        u_xlat20 = u_xlat20 * u_xlat3.x;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat20) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendMul" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_8;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_10;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					float u_xlat20;
					bool u_xlatb20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat20 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 9.99999997e-07);
					        u_xlat3.x = inversesqrt(u_xlat20);
					        u_xlat5.xyz = u_xlat3.xxx * u_xlat5.xyz;
					        u_xlat20 = u_xlat20 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat20 = float(1.0) / u_xlat20;
					        u_xlat3.x = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat3.x = max(u_xlat3.x, 0.0);
					        u_xlat20 = u_xlat20 * u_xlat3.x;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat20) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendMul" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_8;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_10;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					float u_xlat20;
					bool u_xlatb20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat20 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 9.99999997e-07);
					        u_xlat3.x = inversesqrt(u_xlat20);
					        u_xlat5.xyz = u_xlat3.xxx * u_xlat5.xyz;
					        u_xlat20 = u_xlat20 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat20 = float(1.0) / u_xlat20;
					        u_xlat3.x = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat3.x = max(u_xlat3.x, 0.0);
					        u_xlat20 = u_xlat20 * u_xlat3.x;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat20) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendMul" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_8;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_10;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					float u_xlat20;
					bool u_xlatb20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat20 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 9.99999997e-07);
					        u_xlat3.x = inversesqrt(u_xlat20);
					        u_xlat5.xyz = u_xlat3.xxx * u_xlat5.xyz;
					        u_xlat20 = u_xlat20 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat20 = float(1.0) / u_xlat20;
					        u_xlat3.x = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat3.x = max(u_xlat3.x, 0.0);
					        u_xlat20 = u_xlat20 * u_xlat3.x;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat20) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendMul" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_8;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_10;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					float u_xlat20;
					bool u_xlatb20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat20 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 9.99999997e-07);
					        u_xlat3.x = inversesqrt(u_xlat20);
					        u_xlat5.xyz = u_xlat3.xxx * u_xlat5.xyz;
					        u_xlat20 = u_xlat20 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat20 = float(1.0) / u_xlat20;
					        u_xlat3.x = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat3.x = max(u_xlat3.x, 0.0);
					        u_xlat20 = u_xlat20 * u_xlat3.x;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat20) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendMul" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_8;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_10;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					float u_xlat20;
					bool u_xlatb20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat20 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 9.99999997e-07);
					        u_xlat3.x = inversesqrt(u_xlat20);
					        u_xlat5.xyz = u_xlat3.xxx * u_xlat5.xyz;
					        u_xlat20 = u_xlat20 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat20 = float(1.0) / u_xlat20;
					        u_xlat3.x = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat3.x = max(u_xlat3.x, 0.0);
					        u_xlat20 = u_xlat20 * u_xlat3.x;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat20) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendMul" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_8;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_10;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					float u_xlat20;
					bool u_xlatb20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat20 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 9.99999997e-07);
					        u_xlat3.x = inversesqrt(u_xlat20);
					        u_xlat5.xyz = u_xlat3.xxx * u_xlat5.xyz;
					        u_xlat20 = u_xlat20 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat20 = float(1.0) / u_xlat20;
					        u_xlat3.x = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat3.x = max(u_xlat3.x, 0.0);
					        u_xlat20 = u_xlat20 * u_xlat3.x;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat20) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendMul" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_8;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_10;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					float u_xlat20;
					bool u_xlatb20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat20 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 9.99999997e-07);
					        u_xlat3.x = inversesqrt(u_xlat20);
					        u_xlat5.xyz = u_xlat3.xxx * u_xlat5.xyz;
					        u_xlat20 = u_xlat20 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat20 = float(1.0) / u_xlat20;
					        u_xlat3.x = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat3.x = max(u_xlat3.x, 0.0);
					        u_xlat20 = u_xlat20 * u_xlat3.x;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat20) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendMul" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_8;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_10;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					float u_xlat20;
					bool u_xlatb20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat20 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 9.99999997e-07);
					        u_xlat3.x = inversesqrt(u_xlat20);
					        u_xlat5.xyz = u_xlat3.xxx * u_xlat5.xyz;
					        u_xlat20 = u_xlat20 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat20 = float(1.0) / u_xlat20;
					        u_xlat3.x = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat3.x = max(u_xlat3.x, 0.0);
					        u_xlat20 = u_xlat20 * u_xlat3.x;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat20) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendMul" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_8;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_10;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					float u_xlat20;
					bool u_xlatb20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat20 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 9.99999997e-07);
					        u_xlat3.x = inversesqrt(u_xlat20);
					        u_xlat5.xyz = u_xlat3.xxx * u_xlat5.xyz;
					        u_xlat20 = u_xlat20 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat20 = float(1.0) / u_xlat20;
					        u_xlat3.x = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat3.x = max(u_xlat3.x, 0.0);
					        u_xlat20 = u_xlat20 * u_xlat3.x;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat20) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendMul" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendMul" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendMul" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendMul" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendMul" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendMul" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendMul" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendMul" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendMul" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendMul" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendMul" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendMul" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendMul" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendMul" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendMul" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendMul" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendMul" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_8;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_10;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					float u_xlat20;
					bool u_xlatb20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat20 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 9.99999997e-07);
					        u_xlat3.x = inversesqrt(u_xlat20);
					        u_xlat5.xyz = u_xlat3.xxx * u_xlat5.xyz;
					        u_xlat20 = u_xlat20 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat20 = float(1.0) / u_xlat20;
					        u_xlat3.x = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat3.x = max(u_xlat3.x, 0.0);
					        u_xlat20 = u_xlat20 * u_xlat3.x;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat20) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendMul" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_8;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_10;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					float u_xlat20;
					bool u_xlatb20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat20 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 9.99999997e-07);
					        u_xlat3.x = inversesqrt(u_xlat20);
					        u_xlat5.xyz = u_xlat3.xxx * u_xlat5.xyz;
					        u_xlat20 = u_xlat20 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat20 = float(1.0) / u_xlat20;
					        u_xlat3.x = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat3.x = max(u_xlat3.x, 0.0);
					        u_xlat20 = u_xlat20 * u_xlat3.x;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat20) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendMul" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_8;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_10;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					float u_xlat20;
					bool u_xlatb20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat20 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 9.99999997e-07);
					        u_xlat3.x = inversesqrt(u_xlat20);
					        u_xlat5.xyz = u_xlat3.xxx * u_xlat5.xyz;
					        u_xlat20 = u_xlat20 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat20 = float(1.0) / u_xlat20;
					        u_xlat3.x = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat3.x = max(u_xlat3.x, 0.0);
					        u_xlat20 = u_xlat20 * u_xlat3.x;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat20) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendMul" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_8;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_10;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					float u_xlat20;
					bool u_xlatb20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat20 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 9.99999997e-07);
					        u_xlat3.x = inversesqrt(u_xlat20);
					        u_xlat5.xyz = u_xlat3.xxx * u_xlat5.xyz;
					        u_xlat20 = u_xlat20 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat20 = float(1.0) / u_xlat20;
					        u_xlat3.x = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat3.x = max(u_xlat3.x, 0.0);
					        u_xlat20 = u_xlat20 * u_xlat3.x;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat20) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendMul" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_8;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_10;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					float u_xlat20;
					bool u_xlatb20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat20 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 9.99999997e-07);
					        u_xlat3.x = inversesqrt(u_xlat20);
					        u_xlat5.xyz = u_xlat3.xxx * u_xlat5.xyz;
					        u_xlat20 = u_xlat20 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat20 = float(1.0) / u_xlat20;
					        u_xlat3.x = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat3.x = max(u_xlat3.x, 0.0);
					        u_xlat20 = u_xlat20 * u_xlat3.x;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat20) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendMul" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_8;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_10;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					float u_xlat20;
					bool u_xlatb20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat20 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 9.99999997e-07);
					        u_xlat3.x = inversesqrt(u_xlat20);
					        u_xlat5.xyz = u_xlat3.xxx * u_xlat5.xyz;
					        u_xlat20 = u_xlat20 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat20 = float(1.0) / u_xlat20;
					        u_xlat3.x = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat3.x = max(u_xlat3.x, 0.0);
					        u_xlat20 = u_xlat20 * u_xlat3.x;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat20) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendMul" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_8;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_10;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					float u_xlat20;
					bool u_xlatb20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat20 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 9.99999997e-07);
					        u_xlat3.x = inversesqrt(u_xlat20);
					        u_xlat5.xyz = u_xlat3.xxx * u_xlat5.xyz;
					        u_xlat20 = u_xlat20 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat20 = float(1.0) / u_xlat20;
					        u_xlat3.x = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat3.x = max(u_xlat3.x, 0.0);
					        u_xlat20 = u_xlat20 * u_xlat3.x;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat20) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendMul" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_8;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_10;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					float u_xlat20;
					bool u_xlatb20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat20 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 9.99999997e-07);
					        u_xlat3.x = inversesqrt(u_xlat20);
					        u_xlat5.xyz = u_xlat3.xxx * u_xlat5.xyz;
					        u_xlat20 = u_xlat20 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat20 = float(1.0) / u_xlat20;
					        u_xlat3.x = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat3.x = max(u_xlat3.x, 0.0);
					        u_xlat20 = u_xlat20 * u_xlat3.x;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat20) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendMul" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_8;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_10;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					float u_xlat20;
					bool u_xlatb20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat20 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 9.99999997e-07);
					        u_xlat3.x = inversesqrt(u_xlat20);
					        u_xlat5.xyz = u_xlat3.xxx * u_xlat5.xyz;
					        u_xlat20 = u_xlat20 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat20 = float(1.0) / u_xlat20;
					        u_xlat3.x = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat3.x = max(u_xlat3.x, 0.0);
					        u_xlat20 = u_xlat20 * u_xlat3.x;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat20) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendMul" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_8;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_10;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					float u_xlat20;
					bool u_xlatb20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat20 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 9.99999997e-07);
					        u_xlat3.x = inversesqrt(u_xlat20);
					        u_xlat5.xyz = u_xlat3.xxx * u_xlat5.xyz;
					        u_xlat20 = u_xlat20 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat20 = float(1.0) / u_xlat20;
					        u_xlat3.x = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat3.x = max(u_xlat3.x, 0.0);
					        u_xlat20 = u_xlat20 * u_xlat3.x;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat20) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendMul" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_8;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_10;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					float u_xlat20;
					bool u_xlatb20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat20 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 9.99999997e-07);
					        u_xlat3.x = inversesqrt(u_xlat20);
					        u_xlat5.xyz = u_xlat3.xxx * u_xlat5.xyz;
					        u_xlat20 = u_xlat20 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat20 = float(1.0) / u_xlat20;
					        u_xlat3.x = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat3.x = max(u_xlat3.x, 0.0);
					        u_xlat20 = u_xlat20 * u_xlat3.x;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat20) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendMul" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_8;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_10;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					float u_xlat20;
					bool u_xlatb20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat20 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 9.99999997e-07);
					        u_xlat3.x = inversesqrt(u_xlat20);
					        u_xlat5.xyz = u_xlat3.xxx * u_xlat5.xyz;
					        u_xlat20 = u_xlat20 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat20 = float(1.0) / u_xlat20;
					        u_xlat3.x = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat3.x = max(u_xlat3.x, 0.0);
					        u_xlat20 = u_xlat20 * u_xlat3.x;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat20) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendMul" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_8;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_10;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					float u_xlat20;
					bool u_xlatb20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat20 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 9.99999997e-07);
					        u_xlat3.x = inversesqrt(u_xlat20);
					        u_xlat5.xyz = u_xlat3.xxx * u_xlat5.xyz;
					        u_xlat20 = u_xlat20 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat20 = float(1.0) / u_xlat20;
					        u_xlat3.x = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat3.x = max(u_xlat3.x, 0.0);
					        u_xlat20 = u_xlat20 * u_xlat3.x;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat20) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendMul" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_8;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_10;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					float u_xlat20;
					bool u_xlatb20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat20 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 9.99999997e-07);
					        u_xlat3.x = inversesqrt(u_xlat20);
					        u_xlat5.xyz = u_xlat3.xxx * u_xlat5.xyz;
					        u_xlat20 = u_xlat20 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat20 = float(1.0) / u_xlat20;
					        u_xlat3.x = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat3.x = max(u_xlat3.x, 0.0);
					        u_xlat20 = u_xlat20 * u_xlat3.x;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat20) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendMul" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_8;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_10;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					float u_xlat20;
					bool u_xlatb20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat20 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 9.99999997e-07);
					        u_xlat3.x = inversesqrt(u_xlat20);
					        u_xlat5.xyz = u_xlat3.xxx * u_xlat5.xyz;
					        u_xlat20 = u_xlat20 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat20 = float(1.0) / u_xlat20;
					        u_xlat3.x = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat3.x = max(u_xlat3.x, 0.0);
					        u_xlat20 = u_xlat20 * u_xlat3.x;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat20) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendMul" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_8;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_10;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					float u_xlat20;
					bool u_xlatb20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat20 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 9.99999997e-07);
					        u_xlat3.x = inversesqrt(u_xlat20);
					        u_xlat5.xyz = u_xlat3.xxx * u_xlat5.xyz;
					        u_xlat20 = u_xlat20 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat20 = float(1.0) / u_xlat20;
					        u_xlat3.x = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat3.x = max(u_xlat3.x, 0.0);
					        u_xlat20 = u_xlat20 * u_xlat3.x;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat20) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendMul" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendMul" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendMul" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendMul" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendMul" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendMul" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendMul" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendMul" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendMul" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendMul" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendMul" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendMul" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendMul" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendMul" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendMul" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendMul" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendMul" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_8;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_10;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					float u_xlat20;
					bool u_xlatb20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat20 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 9.99999997e-07);
					        u_xlat3.x = inversesqrt(u_xlat20);
					        u_xlat5.xyz = u_xlat3.xxx * u_xlat5.xyz;
					        u_xlat20 = u_xlat20 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat20 = float(1.0) / u_xlat20;
					        u_xlat3.x = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat3.x = max(u_xlat3.x, 0.0);
					        u_xlat20 = u_xlat20 * u_xlat3.x;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat20) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendMul" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_8;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_10;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					float u_xlat20;
					bool u_xlatb20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat20 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 9.99999997e-07);
					        u_xlat3.x = inversesqrt(u_xlat20);
					        u_xlat5.xyz = u_xlat3.xxx * u_xlat5.xyz;
					        u_xlat20 = u_xlat20 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat20 = float(1.0) / u_xlat20;
					        u_xlat3.x = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat3.x = max(u_xlat3.x, 0.0);
					        u_xlat20 = u_xlat20 * u_xlat3.x;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat20) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendMul" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_8;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_10;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					float u_xlat20;
					bool u_xlatb20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat20 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 9.99999997e-07);
					        u_xlat3.x = inversesqrt(u_xlat20);
					        u_xlat5.xyz = u_xlat3.xxx * u_xlat5.xyz;
					        u_xlat20 = u_xlat20 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat20 = float(1.0) / u_xlat20;
					        u_xlat3.x = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat3.x = max(u_xlat3.x, 0.0);
					        u_xlat20 = u_xlat20 * u_xlat3.x;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat20) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendMul" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_8;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_10;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					float u_xlat20;
					bool u_xlatb20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat20 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 9.99999997e-07);
					        u_xlat3.x = inversesqrt(u_xlat20);
					        u_xlat5.xyz = u_xlat3.xxx * u_xlat5.xyz;
					        u_xlat20 = u_xlat20 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat20 = float(1.0) / u_xlat20;
					        u_xlat3.x = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat3.x = max(u_xlat3.x, 0.0);
					        u_xlat20 = u_xlat20 * u_xlat3.x;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat20) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendMul" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_8;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_10;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					float u_xlat20;
					bool u_xlatb20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat20 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 9.99999997e-07);
					        u_xlat3.x = inversesqrt(u_xlat20);
					        u_xlat5.xyz = u_xlat3.xxx * u_xlat5.xyz;
					        u_xlat20 = u_xlat20 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat20 = float(1.0) / u_xlat20;
					        u_xlat3.x = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat3.x = max(u_xlat3.x, 0.0);
					        u_xlat20 = u_xlat20 * u_xlat3.x;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat20) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendMul" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_8;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_10;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					float u_xlat20;
					bool u_xlatb20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat20 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 9.99999997e-07);
					        u_xlat3.x = inversesqrt(u_xlat20);
					        u_xlat5.xyz = u_xlat3.xxx * u_xlat5.xyz;
					        u_xlat20 = u_xlat20 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat20 = float(1.0) / u_xlat20;
					        u_xlat3.x = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat3.x = max(u_xlat3.x, 0.0);
					        u_xlat20 = u_xlat20 * u_xlat3.x;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat20) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendMul" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_8;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_10;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					float u_xlat20;
					bool u_xlatb20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat20 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 9.99999997e-07);
					        u_xlat3.x = inversesqrt(u_xlat20);
					        u_xlat5.xyz = u_xlat3.xxx * u_xlat5.xyz;
					        u_xlat20 = u_xlat20 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat20 = float(1.0) / u_xlat20;
					        u_xlat3.x = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat3.x = max(u_xlat3.x, 0.0);
					        u_xlat20 = u_xlat20 * u_xlat3.x;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat20) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendMul" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_8;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_10;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					float u_xlat20;
					bool u_xlatb20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat20 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 9.99999997e-07);
					        u_xlat3.x = inversesqrt(u_xlat20);
					        u_xlat5.xyz = u_xlat3.xxx * u_xlat5.xyz;
					        u_xlat20 = u_xlat20 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat20 = float(1.0) / u_xlat20;
					        u_xlat3.x = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat3.x = max(u_xlat3.x, 0.0);
					        u_xlat20 = u_xlat20 * u_xlat3.x;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat20) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendMul" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_8;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_10;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					float u_xlat20;
					bool u_xlatb20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat20 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 9.99999997e-07);
					        u_xlat3.x = inversesqrt(u_xlat20);
					        u_xlat5.xyz = u_xlat3.xxx * u_xlat5.xyz;
					        u_xlat20 = u_xlat20 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat20 = float(1.0) / u_xlat20;
					        u_xlat3.x = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat3.x = max(u_xlat3.x, 0.0);
					        u_xlat20 = u_xlat20 * u_xlat3.x;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat20) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendMul" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_8;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_10;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					float u_xlat20;
					bool u_xlatb20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat20 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 9.99999997e-07);
					        u_xlat3.x = inversesqrt(u_xlat20);
					        u_xlat5.xyz = u_xlat3.xxx * u_xlat5.xyz;
					        u_xlat20 = u_xlat20 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat20 = float(1.0) / u_xlat20;
					        u_xlat3.x = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat3.x = max(u_xlat3.x, 0.0);
					        u_xlat20 = u_xlat20 * u_xlat3.x;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat20) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendMul" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_8;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_10;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					float u_xlat20;
					bool u_xlatb20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat20 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 9.99999997e-07);
					        u_xlat3.x = inversesqrt(u_xlat20);
					        u_xlat5.xyz = u_xlat3.xxx * u_xlat5.xyz;
					        u_xlat20 = u_xlat20 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat20 = float(1.0) / u_xlat20;
					        u_xlat3.x = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat3.x = max(u_xlat3.x, 0.0);
					        u_xlat20 = u_xlat20 * u_xlat3.x;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat20) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendMul" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_8;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_10;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					float u_xlat20;
					bool u_xlatb20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat20 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 9.99999997e-07);
					        u_xlat3.x = inversesqrt(u_xlat20);
					        u_xlat5.xyz = u_xlat3.xxx * u_xlat5.xyz;
					        u_xlat20 = u_xlat20 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat20 = float(1.0) / u_xlat20;
					        u_xlat3.x = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat3.x = max(u_xlat3.x, 0.0);
					        u_xlat20 = u_xlat20 * u_xlat3.x;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat20) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendMul" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_8;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_10;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					float u_xlat20;
					bool u_xlatb20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat20 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 9.99999997e-07);
					        u_xlat3.x = inversesqrt(u_xlat20);
					        u_xlat5.xyz = u_xlat3.xxx * u_xlat5.xyz;
					        u_xlat20 = u_xlat20 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat20 = float(1.0) / u_xlat20;
					        u_xlat3.x = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat3.x = max(u_xlat3.x, 0.0);
					        u_xlat20 = u_xlat20 * u_xlat3.x;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat20) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendMul" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_8;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_10;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					float u_xlat20;
					bool u_xlatb20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat20 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 9.99999997e-07);
					        u_xlat3.x = inversesqrt(u_xlat20);
					        u_xlat5.xyz = u_xlat3.xxx * u_xlat5.xyz;
					        u_xlat20 = u_xlat20 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat20 = float(1.0) / u_xlat20;
					        u_xlat3.x = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat3.x = max(u_xlat3.x, 0.0);
					        u_xlat20 = u_xlat20 * u_xlat3.x;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat20) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendMul" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_8;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_10;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					float u_xlat20;
					bool u_xlatb20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat20 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 9.99999997e-07);
					        u_xlat3.x = inversesqrt(u_xlat20);
					        u_xlat5.xyz = u_xlat3.xxx * u_xlat5.xyz;
					        u_xlat20 = u_xlat20 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat20 = float(1.0) / u_xlat20;
					        u_xlat3.x = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat3.x = max(u_xlat3.x, 0.0);
					        u_xlat20 = u_xlat20 * u_xlat3.x;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat20) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendMul" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_8;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_10;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					float u_xlat20;
					bool u_xlatb20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat20 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 9.99999997e-07);
					        u_xlat3.x = inversesqrt(u_xlat20);
					        u_xlat5.xyz = u_xlat3.xxx * u_xlat5.xyz;
					        u_xlat20 = u_xlat20 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat20 = float(1.0) / u_xlat20;
					        u_xlat3.x = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat3.x = max(u_xlat3.x, 0.0);
					        u_xlat20 = u_xlat20 * u_xlat3.x;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat20) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendMul" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendMul" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendMul" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendMul" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendMul" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendMul" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendMul" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendMul" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendMul" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendMul" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendMul" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendMul" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendMul" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendMul" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendMul" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendMul" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendMul" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_8;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_10;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					float u_xlat20;
					bool u_xlatb20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat20 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 9.99999997e-07);
					        u_xlat3.x = inversesqrt(u_xlat20);
					        u_xlat5.xyz = u_xlat3.xxx * u_xlat5.xyz;
					        u_xlat20 = u_xlat20 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat20 = float(1.0) / u_xlat20;
					        u_xlat3.x = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat3.x = max(u_xlat3.x, 0.0);
					        u_xlat20 = u_xlat20 * u_xlat3.x;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat20) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendMul" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_8;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_10;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					float u_xlat20;
					bool u_xlatb20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat20 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 9.99999997e-07);
					        u_xlat3.x = inversesqrt(u_xlat20);
					        u_xlat5.xyz = u_xlat3.xxx * u_xlat5.xyz;
					        u_xlat20 = u_xlat20 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat20 = float(1.0) / u_xlat20;
					        u_xlat3.x = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat3.x = max(u_xlat3.x, 0.0);
					        u_xlat20 = u_xlat20 * u_xlat3.x;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat20) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendMul" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_8;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_10;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					float u_xlat20;
					bool u_xlatb20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat20 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 9.99999997e-07);
					        u_xlat3.x = inversesqrt(u_xlat20);
					        u_xlat5.xyz = u_xlat3.xxx * u_xlat5.xyz;
					        u_xlat20 = u_xlat20 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat20 = float(1.0) / u_xlat20;
					        u_xlat3.x = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat3.x = max(u_xlat3.x, 0.0);
					        u_xlat20 = u_xlat20 * u_xlat3.x;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat20) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendMul" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_8;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_10;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					float u_xlat20;
					bool u_xlatb20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat20 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 9.99999997e-07);
					        u_xlat3.x = inversesqrt(u_xlat20);
					        u_xlat5.xyz = u_xlat3.xxx * u_xlat5.xyz;
					        u_xlat20 = u_xlat20 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat20 = float(1.0) / u_xlat20;
					        u_xlat3.x = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat3.x = max(u_xlat3.x, 0.0);
					        u_xlat20 = u_xlat20 * u_xlat3.x;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat20) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendMul" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_8;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_10;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					float u_xlat20;
					bool u_xlatb20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat20 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 9.99999997e-07);
					        u_xlat3.x = inversesqrt(u_xlat20);
					        u_xlat5.xyz = u_xlat3.xxx * u_xlat5.xyz;
					        u_xlat20 = u_xlat20 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat20 = float(1.0) / u_xlat20;
					        u_xlat3.x = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat3.x = max(u_xlat3.x, 0.0);
					        u_xlat20 = u_xlat20 * u_xlat3.x;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat20) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendMul" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_8;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_10;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					float u_xlat20;
					bool u_xlatb20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat20 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 9.99999997e-07);
					        u_xlat3.x = inversesqrt(u_xlat20);
					        u_xlat5.xyz = u_xlat3.xxx * u_xlat5.xyz;
					        u_xlat20 = u_xlat20 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat20 = float(1.0) / u_xlat20;
					        u_xlat3.x = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat3.x = max(u_xlat3.x, 0.0);
					        u_xlat20 = u_xlat20 * u_xlat3.x;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat20) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendMul" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_8;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_10;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					float u_xlat20;
					bool u_xlatb20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat20 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 9.99999997e-07);
					        u_xlat3.x = inversesqrt(u_xlat20);
					        u_xlat5.xyz = u_xlat3.xxx * u_xlat5.xyz;
					        u_xlat20 = u_xlat20 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat20 = float(1.0) / u_xlat20;
					        u_xlat3.x = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat3.x = max(u_xlat3.x, 0.0);
					        u_xlat20 = u_xlat20 * u_xlat3.x;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat20) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendMul" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_8;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_10;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					float u_xlat20;
					bool u_xlatb20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat20 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 9.99999997e-07);
					        u_xlat3.x = inversesqrt(u_xlat20);
					        u_xlat5.xyz = u_xlat3.xxx * u_xlat5.xyz;
					        u_xlat20 = u_xlat20 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat20 = float(1.0) / u_xlat20;
					        u_xlat3.x = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat3.x = max(u_xlat3.x, 0.0);
					        u_xlat20 = u_xlat20 * u_xlat3.x;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat20) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendMul" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_8;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_10;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					float u_xlat20;
					bool u_xlatb20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat20 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 9.99999997e-07);
					        u_xlat3.x = inversesqrt(u_xlat20);
					        u_xlat5.xyz = u_xlat3.xxx * u_xlat5.xyz;
					        u_xlat20 = u_xlat20 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat20 = float(1.0) / u_xlat20;
					        u_xlat3.x = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat3.x = max(u_xlat3.x, 0.0);
					        u_xlat20 = u_xlat20 * u_xlat3.x;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat20) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendMul" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_8;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_10;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					float u_xlat20;
					bool u_xlatb20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat20 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 9.99999997e-07);
					        u_xlat3.x = inversesqrt(u_xlat20);
					        u_xlat5.xyz = u_xlat3.xxx * u_xlat5.xyz;
					        u_xlat20 = u_xlat20 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat20 = float(1.0) / u_xlat20;
					        u_xlat3.x = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat3.x = max(u_xlat3.x, 0.0);
					        u_xlat20 = u_xlat20 * u_xlat3.x;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat20) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendMul" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_8;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_10;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					float u_xlat20;
					bool u_xlatb20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat20 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 9.99999997e-07);
					        u_xlat3.x = inversesqrt(u_xlat20);
					        u_xlat5.xyz = u_xlat3.xxx * u_xlat5.xyz;
					        u_xlat20 = u_xlat20 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat20 = float(1.0) / u_xlat20;
					        u_xlat3.x = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat3.x = max(u_xlat3.x, 0.0);
					        u_xlat20 = u_xlat20 * u_xlat3.x;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat20) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendMul" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_8;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_10;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					float u_xlat20;
					bool u_xlatb20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat20 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 9.99999997e-07);
					        u_xlat3.x = inversesqrt(u_xlat20);
					        u_xlat5.xyz = u_xlat3.xxx * u_xlat5.xyz;
					        u_xlat20 = u_xlat20 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat20 = float(1.0) / u_xlat20;
					        u_xlat3.x = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat3.x = max(u_xlat3.x, 0.0);
					        u_xlat20 = u_xlat20 * u_xlat3.x;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat20) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendMul" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_8;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_10;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					float u_xlat20;
					bool u_xlatb20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat20 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 9.99999997e-07);
					        u_xlat3.x = inversesqrt(u_xlat20);
					        u_xlat5.xyz = u_xlat3.xxx * u_xlat5.xyz;
					        u_xlat20 = u_xlat20 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat20 = float(1.0) / u_xlat20;
					        u_xlat3.x = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat3.x = max(u_xlat3.x, 0.0);
					        u_xlat20 = u_xlat20 * u_xlat3.x;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat20) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendMul" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_8;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_10;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					float u_xlat20;
					bool u_xlatb20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat20 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 9.99999997e-07);
					        u_xlat3.x = inversesqrt(u_xlat20);
					        u_xlat5.xyz = u_xlat3.xxx * u_xlat5.xyz;
					        u_xlat20 = u_xlat20 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat20 = float(1.0) / u_xlat20;
					        u_xlat3.x = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat3.x = max(u_xlat3.x, 0.0);
					        u_xlat20 = u_xlat20 * u_xlat3.x;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat20) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendMul" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_8;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_10;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					float u_xlat20;
					bool u_xlatb20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat20 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 9.99999997e-07);
					        u_xlat3.x = inversesqrt(u_xlat20);
					        u_xlat5.xyz = u_xlat3.xxx * u_xlat5.xyz;
					        u_xlat20 = u_xlat20 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat20 = float(1.0) / u_xlat20;
					        u_xlat3.x = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat3.x = max(u_xlat3.x, 0.0);
					        u_xlat20 = u_xlat20 * u_xlat3.x;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat20) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendMul" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_8;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_10;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					float u_xlat20;
					bool u_xlatb20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat20 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 9.99999997e-07);
					        u_xlat3.x = inversesqrt(u_xlat20);
					        u_xlat5.xyz = u_xlat3.xxx * u_xlat5.xyz;
					        u_xlat20 = u_xlat20 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat20 = float(1.0) / u_xlat20;
					        u_xlat3.x = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat3.x = max(u_xlat3.x, 0.0);
					        u_xlat20 = u_xlat20 * u_xlat3.x;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat20) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendMul" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendMul" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendMul" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendMul" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendMul" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendMul" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendMul" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendMul" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendMul" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendMul" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendMul" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendMul" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendMul" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendMul" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendMul" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendMul" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendMul" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_8;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_10;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					float u_xlat20;
					bool u_xlatb20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat20 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 9.99999997e-07);
					        u_xlat3.x = inversesqrt(u_xlat20);
					        u_xlat5.xyz = u_xlat3.xxx * u_xlat5.xyz;
					        u_xlat20 = u_xlat20 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat20 = float(1.0) / u_xlat20;
					        u_xlat3.x = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat3.x = max(u_xlat3.x, 0.0);
					        u_xlat20 = u_xlat20 * u_xlat3.x;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat20) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendMul" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_8;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_10;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					float u_xlat20;
					bool u_xlatb20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat20 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 9.99999997e-07);
					        u_xlat3.x = inversesqrt(u_xlat20);
					        u_xlat5.xyz = u_xlat3.xxx * u_xlat5.xyz;
					        u_xlat20 = u_xlat20 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat20 = float(1.0) / u_xlat20;
					        u_xlat3.x = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat3.x = max(u_xlat3.x, 0.0);
					        u_xlat20 = u_xlat20 * u_xlat3.x;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat20) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendMul" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_8;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_10;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					float u_xlat20;
					bool u_xlatb20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat20 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 9.99999997e-07);
					        u_xlat3.x = inversesqrt(u_xlat20);
					        u_xlat5.xyz = u_xlat3.xxx * u_xlat5.xyz;
					        u_xlat20 = u_xlat20 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat20 = float(1.0) / u_xlat20;
					        u_xlat3.x = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat3.x = max(u_xlat3.x, 0.0);
					        u_xlat20 = u_xlat20 * u_xlat3.x;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat20) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendMul" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_8;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_10;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					float u_xlat20;
					bool u_xlatb20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat20 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 9.99999997e-07);
					        u_xlat3.x = inversesqrt(u_xlat20);
					        u_xlat5.xyz = u_xlat3.xxx * u_xlat5.xyz;
					        u_xlat20 = u_xlat20 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat20 = float(1.0) / u_xlat20;
					        u_xlat3.x = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat3.x = max(u_xlat3.x, 0.0);
					        u_xlat20 = u_xlat20 * u_xlat3.x;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat20) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendMul" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_8;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_10;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					float u_xlat20;
					bool u_xlatb20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat20 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 9.99999997e-07);
					        u_xlat3.x = inversesqrt(u_xlat20);
					        u_xlat5.xyz = u_xlat3.xxx * u_xlat5.xyz;
					        u_xlat20 = u_xlat20 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat20 = float(1.0) / u_xlat20;
					        u_xlat3.x = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat3.x = max(u_xlat3.x, 0.0);
					        u_xlat20 = u_xlat20 * u_xlat3.x;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat20) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendMul" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_8;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_10;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					float u_xlat20;
					bool u_xlatb20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat20 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 9.99999997e-07);
					        u_xlat3.x = inversesqrt(u_xlat20);
					        u_xlat5.xyz = u_xlat3.xxx * u_xlat5.xyz;
					        u_xlat20 = u_xlat20 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat20 = float(1.0) / u_xlat20;
					        u_xlat3.x = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat3.x = max(u_xlat3.x, 0.0);
					        u_xlat20 = u_xlat20 * u_xlat3.x;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat20) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendMul" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_8;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_10;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					float u_xlat20;
					bool u_xlatb20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat20 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 9.99999997e-07);
					        u_xlat3.x = inversesqrt(u_xlat20);
					        u_xlat5.xyz = u_xlat3.xxx * u_xlat5.xyz;
					        u_xlat20 = u_xlat20 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat20 = float(1.0) / u_xlat20;
					        u_xlat3.x = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat3.x = max(u_xlat3.x, 0.0);
					        u_xlat20 = u_xlat20 * u_xlat3.x;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat20) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendMul" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_8;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_10;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					float u_xlat20;
					bool u_xlatb20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat20 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 9.99999997e-07);
					        u_xlat3.x = inversesqrt(u_xlat20);
					        u_xlat5.xyz = u_xlat3.xxx * u_xlat5.xyz;
					        u_xlat20 = u_xlat20 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat20 = float(1.0) / u_xlat20;
					        u_xlat3.x = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat3.x = max(u_xlat3.x, 0.0);
					        u_xlat20 = u_xlat20 * u_xlat3.x;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat20) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendMul" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_8;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_10;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					float u_xlat20;
					bool u_xlatb20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat20 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 9.99999997e-07);
					        u_xlat3.x = inversesqrt(u_xlat20);
					        u_xlat5.xyz = u_xlat3.xxx * u_xlat5.xyz;
					        u_xlat20 = u_xlat20 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat20 = float(1.0) / u_xlat20;
					        u_xlat3.x = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat3.x = max(u_xlat3.x, 0.0);
					        u_xlat20 = u_xlat20 * u_xlat3.x;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat20) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendMul" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_8;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_10;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					float u_xlat20;
					bool u_xlatb20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat20 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 9.99999997e-07);
					        u_xlat3.x = inversesqrt(u_xlat20);
					        u_xlat5.xyz = u_xlat3.xxx * u_xlat5.xyz;
					        u_xlat20 = u_xlat20 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat20 = float(1.0) / u_xlat20;
					        u_xlat3.x = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat3.x = max(u_xlat3.x, 0.0);
					        u_xlat20 = u_xlat20 * u_xlat3.x;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat20) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendMul" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_8;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_10;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					float u_xlat20;
					bool u_xlatb20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat20 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 9.99999997e-07);
					        u_xlat3.x = inversesqrt(u_xlat20);
					        u_xlat5.xyz = u_xlat3.xxx * u_xlat5.xyz;
					        u_xlat20 = u_xlat20 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat20 = float(1.0) / u_xlat20;
					        u_xlat3.x = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat3.x = max(u_xlat3.x, 0.0);
					        u_xlat20 = u_xlat20 * u_xlat3.x;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat20) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendMul" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_8;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_10;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					float u_xlat20;
					bool u_xlatb20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat20 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 9.99999997e-07);
					        u_xlat3.x = inversesqrt(u_xlat20);
					        u_xlat5.xyz = u_xlat3.xxx * u_xlat5.xyz;
					        u_xlat20 = u_xlat20 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat20 = float(1.0) / u_xlat20;
					        u_xlat3.x = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat3.x = max(u_xlat3.x, 0.0);
					        u_xlat20 = u_xlat20 * u_xlat3.x;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat20) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendMul" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_8;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_10;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					float u_xlat20;
					bool u_xlatb20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat20 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 9.99999997e-07);
					        u_xlat3.x = inversesqrt(u_xlat20);
					        u_xlat5.xyz = u_xlat3.xxx * u_xlat5.xyz;
					        u_xlat20 = u_xlat20 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat20 = float(1.0) / u_xlat20;
					        u_xlat3.x = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat3.x = max(u_xlat3.x, 0.0);
					        u_xlat20 = u_xlat20 * u_xlat3.x;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat20) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendMul" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_8;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_10;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					float u_xlat20;
					bool u_xlatb20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat20 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 9.99999997e-07);
					        u_xlat3.x = inversesqrt(u_xlat20);
					        u_xlat5.xyz = u_xlat3.xxx * u_xlat5.xyz;
					        u_xlat20 = u_xlat20 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat20 = float(1.0) / u_xlat20;
					        u_xlat3.x = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat3.x = max(u_xlat3.x, 0.0);
					        u_xlat20 = u_xlat20 * u_xlat3.x;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat20) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendMul" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_8;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_10;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					float u_xlat20;
					bool u_xlatb20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat20 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 9.99999997e-07);
					        u_xlat3.x = inversesqrt(u_xlat20);
					        u_xlat5.xyz = u_xlat3.xxx * u_xlat5.xyz;
					        u_xlat20 = u_xlat20 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat20 = float(1.0) / u_xlat20;
					        u_xlat3.x = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat3.x = max(u_xlat3.x, 0.0);
					        u_xlat20 = u_xlat20 * u_xlat3.x;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat20) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendMul" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_8;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_10;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					float u_xlat20;
					bool u_xlatb20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat20 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 9.99999997e-07);
					        u_xlat3.x = inversesqrt(u_xlat20);
					        u_xlat5.xyz = u_xlat3.xxx * u_xlat5.xyz;
					        u_xlat20 = u_xlat20 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat20 = float(1.0) / u_xlat20;
					        u_xlat3.x = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat3.x = max(u_xlat3.x, 0.0);
					        u_xlat20 = u_xlat20 * u_xlat3.x;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat20) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendMul" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendMul" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendMul" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendMul" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendMul" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendMul" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendMul" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendMul" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendMul" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendMul" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendMul" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendMul" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendMul" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendMul" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendMul" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendMul" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendMul" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_8;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_10;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					float u_xlat20;
					bool u_xlatb20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat20 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 9.99999997e-07);
					        u_xlat3.x = inversesqrt(u_xlat20);
					        u_xlat5.xyz = u_xlat3.xxx * u_xlat5.xyz;
					        u_xlat20 = u_xlat20 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat20 = float(1.0) / u_xlat20;
					        u_xlat3.x = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat3.x = max(u_xlat3.x, 0.0);
					        u_xlat20 = u_xlat20 * u_xlat3.x;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat20) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendMul" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_8;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_10;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					float u_xlat20;
					bool u_xlatb20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat20 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 9.99999997e-07);
					        u_xlat3.x = inversesqrt(u_xlat20);
					        u_xlat5.xyz = u_xlat3.xxx * u_xlat5.xyz;
					        u_xlat20 = u_xlat20 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat20 = float(1.0) / u_xlat20;
					        u_xlat3.x = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat3.x = max(u_xlat3.x, 0.0);
					        u_xlat20 = u_xlat20 * u_xlat3.x;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat20) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendMul" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_8;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_10;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					float u_xlat20;
					bool u_xlatb20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat20 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 9.99999997e-07);
					        u_xlat3.x = inversesqrt(u_xlat20);
					        u_xlat5.xyz = u_xlat3.xxx * u_xlat5.xyz;
					        u_xlat20 = u_xlat20 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat20 = float(1.0) / u_xlat20;
					        u_xlat3.x = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat3.x = max(u_xlat3.x, 0.0);
					        u_xlat20 = u_xlat20 * u_xlat3.x;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat20) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendMul" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_8;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_10;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					float u_xlat20;
					bool u_xlatb20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat20 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 9.99999997e-07);
					        u_xlat3.x = inversesqrt(u_xlat20);
					        u_xlat5.xyz = u_xlat3.xxx * u_xlat5.xyz;
					        u_xlat20 = u_xlat20 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat20 = float(1.0) / u_xlat20;
					        u_xlat3.x = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat3.x = max(u_xlat3.x, 0.0);
					        u_xlat20 = u_xlat20 * u_xlat3.x;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat20) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendMul" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_8;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_10;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					float u_xlat20;
					bool u_xlatb20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat20 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 9.99999997e-07);
					        u_xlat3.x = inversesqrt(u_xlat20);
					        u_xlat5.xyz = u_xlat3.xxx * u_xlat5.xyz;
					        u_xlat20 = u_xlat20 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat20 = float(1.0) / u_xlat20;
					        u_xlat3.x = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat3.x = max(u_xlat3.x, 0.0);
					        u_xlat20 = u_xlat20 * u_xlat3.x;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat20) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendMul" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_8;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_10;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					float u_xlat20;
					bool u_xlatb20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat20 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 9.99999997e-07);
					        u_xlat3.x = inversesqrt(u_xlat20);
					        u_xlat5.xyz = u_xlat3.xxx * u_xlat5.xyz;
					        u_xlat20 = u_xlat20 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat20 = float(1.0) / u_xlat20;
					        u_xlat3.x = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat3.x = max(u_xlat3.x, 0.0);
					        u_xlat20 = u_xlat20 * u_xlat3.x;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat20) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendMul" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_8;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_10;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					float u_xlat20;
					bool u_xlatb20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat20 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 9.99999997e-07);
					        u_xlat3.x = inversesqrt(u_xlat20);
					        u_xlat5.xyz = u_xlat3.xxx * u_xlat5.xyz;
					        u_xlat20 = u_xlat20 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat20 = float(1.0) / u_xlat20;
					        u_xlat3.x = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat3.x = max(u_xlat3.x, 0.0);
					        u_xlat20 = u_xlat20 * u_xlat3.x;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat20) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendMul" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_8;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_10;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					float u_xlat20;
					bool u_xlatb20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat20 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 9.99999997e-07);
					        u_xlat3.x = inversesqrt(u_xlat20);
					        u_xlat5.xyz = u_xlat3.xxx * u_xlat5.xyz;
					        u_xlat20 = u_xlat20 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat20 = float(1.0) / u_xlat20;
					        u_xlat3.x = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat3.x = max(u_xlat3.x, 0.0);
					        u_xlat20 = u_xlat20 * u_xlat3.x;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat20) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendMul" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_8;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_10;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					float u_xlat20;
					bool u_xlatb20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat20 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 9.99999997e-07);
					        u_xlat3.x = inversesqrt(u_xlat20);
					        u_xlat5.xyz = u_xlat3.xxx * u_xlat5.xyz;
					        u_xlat20 = u_xlat20 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat20 = float(1.0) / u_xlat20;
					        u_xlat3.x = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat3.x = max(u_xlat3.x, 0.0);
					        u_xlat20 = u_xlat20 * u_xlat3.x;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat20) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendMul" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_8;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_10;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					float u_xlat20;
					bool u_xlatb20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat20 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 9.99999997e-07);
					        u_xlat3.x = inversesqrt(u_xlat20);
					        u_xlat5.xyz = u_xlat3.xxx * u_xlat5.xyz;
					        u_xlat20 = u_xlat20 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat20 = float(1.0) / u_xlat20;
					        u_xlat3.x = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat3.x = max(u_xlat3.x, 0.0);
					        u_xlat20 = u_xlat20 * u_xlat3.x;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat20) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendMul" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_8;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_10;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					float u_xlat20;
					bool u_xlatb20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat20 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 9.99999997e-07);
					        u_xlat3.x = inversesqrt(u_xlat20);
					        u_xlat5.xyz = u_xlat3.xxx * u_xlat5.xyz;
					        u_xlat20 = u_xlat20 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat20 = float(1.0) / u_xlat20;
					        u_xlat3.x = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat3.x = max(u_xlat3.x, 0.0);
					        u_xlat20 = u_xlat20 * u_xlat3.x;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat20) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendMul" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_8;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_10;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					float u_xlat20;
					bool u_xlatb20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat20 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 9.99999997e-07);
					        u_xlat3.x = inversesqrt(u_xlat20);
					        u_xlat5.xyz = u_xlat3.xxx * u_xlat5.xyz;
					        u_xlat20 = u_xlat20 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat20 = float(1.0) / u_xlat20;
					        u_xlat3.x = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat3.x = max(u_xlat3.x, 0.0);
					        u_xlat20 = u_xlat20 * u_xlat3.x;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat20) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendMul" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_8;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_10;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					float u_xlat20;
					bool u_xlatb20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat20 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 9.99999997e-07);
					        u_xlat3.x = inversesqrt(u_xlat20);
					        u_xlat5.xyz = u_xlat3.xxx * u_xlat5.xyz;
					        u_xlat20 = u_xlat20 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat20 = float(1.0) / u_xlat20;
					        u_xlat3.x = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat3.x = max(u_xlat3.x, 0.0);
					        u_xlat20 = u_xlat20 * u_xlat3.x;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat20) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendMul" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_8;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_10;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					float u_xlat20;
					bool u_xlatb20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat20 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 9.99999997e-07);
					        u_xlat3.x = inversesqrt(u_xlat20);
					        u_xlat5.xyz = u_xlat3.xxx * u_xlat5.xyz;
					        u_xlat20 = u_xlat20 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat20 = float(1.0) / u_xlat20;
					        u_xlat3.x = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat3.x = max(u_xlat3.x, 0.0);
					        u_xlat20 = u_xlat20 * u_xlat3.x;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat20) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendMul" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_8;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_10;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					float u_xlat20;
					bool u_xlatb20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat20 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 9.99999997e-07);
					        u_xlat3.x = inversesqrt(u_xlat20);
					        u_xlat5.xyz = u_xlat3.xxx * u_xlat5.xyz;
					        u_xlat20 = u_xlat20 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat20 = float(1.0) / u_xlat20;
					        u_xlat3.x = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat3.x = max(u_xlat3.x, 0.0);
					        u_xlat20 = u_xlat20 * u_xlat3.x;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat20) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendMul" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_8;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_10;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					float u_xlat20;
					bool u_xlatb20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat20 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 9.99999997e-07);
					        u_xlat3.x = inversesqrt(u_xlat20);
					        u_xlat5.xyz = u_xlat3.xxx * u_xlat5.xyz;
					        u_xlat20 = u_xlat20 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat20 = float(1.0) / u_xlat20;
					        u_xlat3.x = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat3.x = max(u_xlat3.x, 0.0);
					        u_xlat20 = u_xlat20 * u_xlat3.x;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat20) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendMul" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendMul" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendMul" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendMul" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendMul" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendMul" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendMul" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendMul" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendMul" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendMul" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendMul" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendMul" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendMul" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendMul" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendMul" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendMul" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendMul" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_8;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_10;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					float u_xlat20;
					bool u_xlatb20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat20 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 9.99999997e-07);
					        u_xlat3.x = inversesqrt(u_xlat20);
					        u_xlat5.xyz = u_xlat3.xxx * u_xlat5.xyz;
					        u_xlat20 = u_xlat20 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat20 = float(1.0) / u_xlat20;
					        u_xlat3.x = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat3.x = max(u_xlat3.x, 0.0);
					        u_xlat20 = u_xlat20 * u_xlat3.x;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat20) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendMul" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_8;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_10;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					float u_xlat20;
					bool u_xlatb20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat20 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 9.99999997e-07);
					        u_xlat3.x = inversesqrt(u_xlat20);
					        u_xlat5.xyz = u_xlat3.xxx * u_xlat5.xyz;
					        u_xlat20 = u_xlat20 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat20 = float(1.0) / u_xlat20;
					        u_xlat3.x = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat3.x = max(u_xlat3.x, 0.0);
					        u_xlat20 = u_xlat20 * u_xlat3.x;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat20) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendMul" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_8;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_10;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					float u_xlat20;
					bool u_xlatb20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat20 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 9.99999997e-07);
					        u_xlat3.x = inversesqrt(u_xlat20);
					        u_xlat5.xyz = u_xlat3.xxx * u_xlat5.xyz;
					        u_xlat20 = u_xlat20 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat20 = float(1.0) / u_xlat20;
					        u_xlat3.x = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat3.x = max(u_xlat3.x, 0.0);
					        u_xlat20 = u_xlat20 * u_xlat3.x;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat20) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendMul" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_8;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_10;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					float u_xlat20;
					bool u_xlatb20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat20 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 9.99999997e-07);
					        u_xlat3.x = inversesqrt(u_xlat20);
					        u_xlat5.xyz = u_xlat3.xxx * u_xlat5.xyz;
					        u_xlat20 = u_xlat20 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat20 = float(1.0) / u_xlat20;
					        u_xlat3.x = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat3.x = max(u_xlat3.x, 0.0);
					        u_xlat20 = u_xlat20 * u_xlat3.x;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat20) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendMul" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_8;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_10;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					float u_xlat20;
					bool u_xlatb20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat20 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 9.99999997e-07);
					        u_xlat3.x = inversesqrt(u_xlat20);
					        u_xlat5.xyz = u_xlat3.xxx * u_xlat5.xyz;
					        u_xlat20 = u_xlat20 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat20 = float(1.0) / u_xlat20;
					        u_xlat3.x = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat3.x = max(u_xlat3.x, 0.0);
					        u_xlat20 = u_xlat20 * u_xlat3.x;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat20) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendMul" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_8;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_10;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					float u_xlat20;
					bool u_xlatb20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat20 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 9.99999997e-07);
					        u_xlat3.x = inversesqrt(u_xlat20);
					        u_xlat5.xyz = u_xlat3.xxx * u_xlat5.xyz;
					        u_xlat20 = u_xlat20 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat20 = float(1.0) / u_xlat20;
					        u_xlat3.x = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat3.x = max(u_xlat3.x, 0.0);
					        u_xlat20 = u_xlat20 * u_xlat3.x;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat20) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendMul" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_8;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_10;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					float u_xlat20;
					bool u_xlatb20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat20 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 9.99999997e-07);
					        u_xlat3.x = inversesqrt(u_xlat20);
					        u_xlat5.xyz = u_xlat3.xxx * u_xlat5.xyz;
					        u_xlat20 = u_xlat20 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat20 = float(1.0) / u_xlat20;
					        u_xlat3.x = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat3.x = max(u_xlat3.x, 0.0);
					        u_xlat20 = u_xlat20 * u_xlat3.x;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat20) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendMul" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_8;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_10;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					float u_xlat20;
					bool u_xlatb20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat20 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 9.99999997e-07);
					        u_xlat3.x = inversesqrt(u_xlat20);
					        u_xlat5.xyz = u_xlat3.xxx * u_xlat5.xyz;
					        u_xlat20 = u_xlat20 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat20 = float(1.0) / u_xlat20;
					        u_xlat3.x = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat3.x = max(u_xlat3.x, 0.0);
					        u_xlat20 = u_xlat20 * u_xlat3.x;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat20) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendMul" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_8;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_10;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					float u_xlat20;
					bool u_xlatb20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat20 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 9.99999997e-07);
					        u_xlat3.x = inversesqrt(u_xlat20);
					        u_xlat5.xyz = u_xlat3.xxx * u_xlat5.xyz;
					        u_xlat20 = u_xlat20 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat20 = float(1.0) / u_xlat20;
					        u_xlat3.x = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat3.x = max(u_xlat3.x, 0.0);
					        u_xlat20 = u_xlat20 * u_xlat3.x;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat20) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendMul" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_8;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_10;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					float u_xlat20;
					bool u_xlatb20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat20 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 9.99999997e-07);
					        u_xlat3.x = inversesqrt(u_xlat20);
					        u_xlat5.xyz = u_xlat3.xxx * u_xlat5.xyz;
					        u_xlat20 = u_xlat20 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat20 = float(1.0) / u_xlat20;
					        u_xlat3.x = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat3.x = max(u_xlat3.x, 0.0);
					        u_xlat20 = u_xlat20 * u_xlat3.x;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat20) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendMul" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_8;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_10;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					float u_xlat20;
					bool u_xlatb20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat20 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 9.99999997e-07);
					        u_xlat3.x = inversesqrt(u_xlat20);
					        u_xlat5.xyz = u_xlat3.xxx * u_xlat5.xyz;
					        u_xlat20 = u_xlat20 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat20 = float(1.0) / u_xlat20;
					        u_xlat3.x = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat3.x = max(u_xlat3.x, 0.0);
					        u_xlat20 = u_xlat20 * u_xlat3.x;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat20) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendMul" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_8;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_10;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					float u_xlat20;
					bool u_xlatb20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat20 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 9.99999997e-07);
					        u_xlat3.x = inversesqrt(u_xlat20);
					        u_xlat5.xyz = u_xlat3.xxx * u_xlat5.xyz;
					        u_xlat20 = u_xlat20 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat20 = float(1.0) / u_xlat20;
					        u_xlat3.x = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat3.x = max(u_xlat3.x, 0.0);
					        u_xlat20 = u_xlat20 * u_xlat3.x;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat20) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendMul" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_8;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_10;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					float u_xlat20;
					bool u_xlatb20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat20 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 9.99999997e-07);
					        u_xlat3.x = inversesqrt(u_xlat20);
					        u_xlat5.xyz = u_xlat3.xxx * u_xlat5.xyz;
					        u_xlat20 = u_xlat20 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat20 = float(1.0) / u_xlat20;
					        u_xlat3.x = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat3.x = max(u_xlat3.x, 0.0);
					        u_xlat20 = u_xlat20 * u_xlat3.x;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat20) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendMul" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_8;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_10;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					float u_xlat20;
					bool u_xlatb20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat20 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 9.99999997e-07);
					        u_xlat3.x = inversesqrt(u_xlat20);
					        u_xlat5.xyz = u_xlat3.xxx * u_xlat5.xyz;
					        u_xlat20 = u_xlat20 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat20 = float(1.0) / u_xlat20;
					        u_xlat3.x = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat3.x = max(u_xlat3.x, 0.0);
					        u_xlat20 = u_xlat20 * u_xlat3.x;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat20) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendMul" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_8;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_10;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					float u_xlat20;
					bool u_xlatb20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat20 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 9.99999997e-07);
					        u_xlat3.x = inversesqrt(u_xlat20);
					        u_xlat5.xyz = u_xlat3.xxx * u_xlat5.xyz;
					        u_xlat20 = u_xlat20 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat20 = float(1.0) / u_xlat20;
					        u_xlat3.x = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat3.x = max(u_xlat3.x, 0.0);
					        u_xlat20 = u_xlat20 * u_xlat3.x;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat20) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendMul" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_8;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_10;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					float u_xlat20;
					bool u_xlatb20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat20 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 9.99999997e-07);
					        u_xlat3.x = inversesqrt(u_xlat20);
					        u_xlat5.xyz = u_xlat3.xxx * u_xlat5.xyz;
					        u_xlat20 = u_xlat20 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat20 = float(1.0) / u_xlat20;
					        u_xlat3.x = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat3.x = max(u_xlat3.x, 0.0);
					        u_xlat20 = u_xlat20 * u_xlat3.x;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat20) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendMul" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendMul" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendMul" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendMul" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendMul" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendMul" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendMul" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendMul" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendMul" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendMul" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendMul" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendMul" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendMul" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendMul" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendMul" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendMul" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendMul" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_8;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_10;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					float u_xlat20;
					bool u_xlatb20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat20 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 9.99999997e-07);
					        u_xlat3.x = inversesqrt(u_xlat20);
					        u_xlat5.xyz = u_xlat3.xxx * u_xlat5.xyz;
					        u_xlat20 = u_xlat20 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat20 = float(1.0) / u_xlat20;
					        u_xlat3.x = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat3.x = max(u_xlat3.x, 0.0);
					        u_xlat20 = u_xlat20 * u_xlat3.x;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat20) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendMul" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_8;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_10;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					float u_xlat20;
					bool u_xlatb20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat20 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 9.99999997e-07);
					        u_xlat3.x = inversesqrt(u_xlat20);
					        u_xlat5.xyz = u_xlat3.xxx * u_xlat5.xyz;
					        u_xlat20 = u_xlat20 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat20 = float(1.0) / u_xlat20;
					        u_xlat3.x = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat3.x = max(u_xlat3.x, 0.0);
					        u_xlat20 = u_xlat20 * u_xlat3.x;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat20) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendMul" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_8;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_10;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					float u_xlat20;
					bool u_xlatb20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat20 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 9.99999997e-07);
					        u_xlat3.x = inversesqrt(u_xlat20);
					        u_xlat5.xyz = u_xlat3.xxx * u_xlat5.xyz;
					        u_xlat20 = u_xlat20 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat20 = float(1.0) / u_xlat20;
					        u_xlat3.x = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat3.x = max(u_xlat3.x, 0.0);
					        u_xlat20 = u_xlat20 * u_xlat3.x;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat20) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendMul" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_8;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_10;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					float u_xlat20;
					bool u_xlatb20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat20 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 9.99999997e-07);
					        u_xlat3.x = inversesqrt(u_xlat20);
					        u_xlat5.xyz = u_xlat3.xxx * u_xlat5.xyz;
					        u_xlat20 = u_xlat20 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat20 = float(1.0) / u_xlat20;
					        u_xlat3.x = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat3.x = max(u_xlat3.x, 0.0);
					        u_xlat20 = u_xlat20 * u_xlat3.x;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat20) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendMul" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_8;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_10;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					float u_xlat20;
					bool u_xlatb20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat20 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 9.99999997e-07);
					        u_xlat3.x = inversesqrt(u_xlat20);
					        u_xlat5.xyz = u_xlat3.xxx * u_xlat5.xyz;
					        u_xlat20 = u_xlat20 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat20 = float(1.0) / u_xlat20;
					        u_xlat3.x = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat3.x = max(u_xlat3.x, 0.0);
					        u_xlat20 = u_xlat20 * u_xlat3.x;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat20) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendMul" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_8;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_10;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					float u_xlat20;
					bool u_xlatb20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat20 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 9.99999997e-07);
					        u_xlat3.x = inversesqrt(u_xlat20);
					        u_xlat5.xyz = u_xlat3.xxx * u_xlat5.xyz;
					        u_xlat20 = u_xlat20 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat20 = float(1.0) / u_xlat20;
					        u_xlat3.x = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat3.x = max(u_xlat3.x, 0.0);
					        u_xlat20 = u_xlat20 * u_xlat3.x;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat20) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendMul" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_8;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_10;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					float u_xlat20;
					bool u_xlatb20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat20 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 9.99999997e-07);
					        u_xlat3.x = inversesqrt(u_xlat20);
					        u_xlat5.xyz = u_xlat3.xxx * u_xlat5.xyz;
					        u_xlat20 = u_xlat20 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat20 = float(1.0) / u_xlat20;
					        u_xlat3.x = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat3.x = max(u_xlat3.x, 0.0);
					        u_xlat20 = u_xlat20 * u_xlat3.x;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat20) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendMul" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_8;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_10;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					float u_xlat20;
					bool u_xlatb20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat20 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 9.99999997e-07);
					        u_xlat3.x = inversesqrt(u_xlat20);
					        u_xlat5.xyz = u_xlat3.xxx * u_xlat5.xyz;
					        u_xlat20 = u_xlat20 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat20 = float(1.0) / u_xlat20;
					        u_xlat3.x = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat3.x = max(u_xlat3.x, 0.0);
					        u_xlat20 = u_xlat20 * u_xlat3.x;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat20) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendMul" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_8;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_10;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					float u_xlat20;
					bool u_xlatb20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat20 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 9.99999997e-07);
					        u_xlat3.x = inversesqrt(u_xlat20);
					        u_xlat5.xyz = u_xlat3.xxx * u_xlat5.xyz;
					        u_xlat20 = u_xlat20 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat20 = float(1.0) / u_xlat20;
					        u_xlat3.x = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat3.x = max(u_xlat3.x, 0.0);
					        u_xlat20 = u_xlat20 * u_xlat3.x;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat20) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendMul" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_8;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_10;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					float u_xlat20;
					bool u_xlatb20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat20 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 9.99999997e-07);
					        u_xlat3.x = inversesqrt(u_xlat20);
					        u_xlat5.xyz = u_xlat3.xxx * u_xlat5.xyz;
					        u_xlat20 = u_xlat20 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat20 = float(1.0) / u_xlat20;
					        u_xlat3.x = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat3.x = max(u_xlat3.x, 0.0);
					        u_xlat20 = u_xlat20 * u_xlat3.x;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat20) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendMul" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_8;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_10;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					float u_xlat20;
					bool u_xlatb20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat20 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 9.99999997e-07);
					        u_xlat3.x = inversesqrt(u_xlat20);
					        u_xlat5.xyz = u_xlat3.xxx * u_xlat5.xyz;
					        u_xlat20 = u_xlat20 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat20 = float(1.0) / u_xlat20;
					        u_xlat3.x = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat3.x = max(u_xlat3.x, 0.0);
					        u_xlat20 = u_xlat20 * u_xlat3.x;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat20) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendMul" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_8;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_10;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					float u_xlat20;
					bool u_xlatb20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat20 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 9.99999997e-07);
					        u_xlat3.x = inversesqrt(u_xlat20);
					        u_xlat5.xyz = u_xlat3.xxx * u_xlat5.xyz;
					        u_xlat20 = u_xlat20 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat20 = float(1.0) / u_xlat20;
					        u_xlat3.x = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat3.x = max(u_xlat3.x, 0.0);
					        u_xlat20 = u_xlat20 * u_xlat3.x;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat20) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendMul" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_8;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_10;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					float u_xlat20;
					bool u_xlatb20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat20 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 9.99999997e-07);
					        u_xlat3.x = inversesqrt(u_xlat20);
					        u_xlat5.xyz = u_xlat3.xxx * u_xlat5.xyz;
					        u_xlat20 = u_xlat20 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat20 = float(1.0) / u_xlat20;
					        u_xlat3.x = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat3.x = max(u_xlat3.x, 0.0);
					        u_xlat20 = u_xlat20 * u_xlat3.x;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat20) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendMul" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_8;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_10;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					float u_xlat20;
					bool u_xlatb20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat20 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 9.99999997e-07);
					        u_xlat3.x = inversesqrt(u_xlat20);
					        u_xlat5.xyz = u_xlat3.xxx * u_xlat5.xyz;
					        u_xlat20 = u_xlat20 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat20 = float(1.0) / u_xlat20;
					        u_xlat3.x = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat3.x = max(u_xlat3.x, 0.0);
					        u_xlat20 = u_xlat20 * u_xlat3.x;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat20) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendMul" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_8;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_10;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					float u_xlat20;
					bool u_xlatb20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat20 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 9.99999997e-07);
					        u_xlat3.x = inversesqrt(u_xlat20);
					        u_xlat5.xyz = u_xlat3.xxx * u_xlat5.xyz;
					        u_xlat20 = u_xlat20 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat20 = float(1.0) / u_xlat20;
					        u_xlat3.x = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat3.x = max(u_xlat3.x, 0.0);
					        u_xlat20 = u_xlat20 * u_xlat3.x;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat20) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendMul" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_8;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_10;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					float u_xlat20;
					bool u_xlatb20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat20 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 9.99999997e-07);
					        u_xlat3.x = inversesqrt(u_xlat20);
					        u_xlat5.xyz = u_xlat3.xxx * u_xlat5.xyz;
					        u_xlat20 = u_xlat20 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat20 = float(1.0) / u_xlat20;
					        u_xlat3.x = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat3.x = max(u_xlat3.x, 0.0);
					        u_xlat20 = u_xlat20 * u_xlat3.x;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat20) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendMul2" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat2 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat2;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec2 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					float u_xlat3;
					int u_xlati6;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat3 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat3;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlati6 = unity_StereoEyeIndex;
					    u_xlat1.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati6].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati6].xy + u_xlat1.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendMul2" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat2 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat2;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec2 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					float u_xlat3;
					int u_xlati6;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat3 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat3;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlati6 = unity_StereoEyeIndex;
					    u_xlat1.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati6].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati6].xy + u_xlat1.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendMul2" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat2 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat2;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec2 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					float u_xlat3;
					int u_xlati6;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat3 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat3;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlati6 = unity_StereoEyeIndex;
					    u_xlat1.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati6].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati6].xy + u_xlat1.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendMul2" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat2 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat2;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec2 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					float u_xlat3;
					int u_xlati6;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat3 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat3;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlati6 = unity_StereoEyeIndex;
					    u_xlat1.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati6].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati6].xy + u_xlat1.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendMul2" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat2 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat2;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec2 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					float u_xlat3;
					int u_xlati6;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat3 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat3;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlati6 = unity_StereoEyeIndex;
					    u_xlat1.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati6].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati6].xy + u_xlat1.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendMul2" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat2 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat2;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec2 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					float u_xlat3;
					int u_xlati6;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat3 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat3;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlati6 = unity_StereoEyeIndex;
					    u_xlat1.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati6].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati6].xy + u_xlat1.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendMul2" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat2 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat2;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec2 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					float u_xlat3;
					int u_xlati6;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat3 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat3;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlati6 = unity_StereoEyeIndex;
					    u_xlat1.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati6].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati6].xy + u_xlat1.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendMul2" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat2 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat2;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec2 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					float u_xlat3;
					int u_xlati6;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat3 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat3;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlati6 = unity_StereoEyeIndex;
					    u_xlat1.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati6].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati6].xy + u_xlat1.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendMul2" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat2 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat2;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec2 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					float u_xlat3;
					int u_xlati6;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat3 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat3;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlati6 = unity_StereoEyeIndex;
					    u_xlat1.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati6].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati6].xy + u_xlat1.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendMul2" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat2 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat2;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec2 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					float u_xlat3;
					int u_xlati6;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat3 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat3;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlati6 = unity_StereoEyeIndex;
					    u_xlat1.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati6].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati6].xy + u_xlat1.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendMul2" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat2 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat2;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec2 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					float u_xlat3;
					int u_xlati6;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat3 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat3;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlati6 = unity_StereoEyeIndex;
					    u_xlat1.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati6].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati6].xy + u_xlat1.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendMul2" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat2 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat2;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec2 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					float u_xlat3;
					int u_xlati6;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat3 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat3;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlati6 = unity_StereoEyeIndex;
					    u_xlat1.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati6].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati6].xy + u_xlat1.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendMul2" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat2 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat2;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec2 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					float u_xlat3;
					int u_xlati6;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat3 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat3;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlati6 = unity_StereoEyeIndex;
					    u_xlat1.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati6].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati6].xy + u_xlat1.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendMul2" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat2 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat2;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec2 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					float u_xlat3;
					int u_xlati6;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat3 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat3;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlati6 = unity_StereoEyeIndex;
					    u_xlat1.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati6].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati6].xy + u_xlat1.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendMul2" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat2 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat2;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec2 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					float u_xlat3;
					int u_xlati6;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat3 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat3;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlati6 = unity_StereoEyeIndex;
					    u_xlat1.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati6].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati6].xy + u_xlat1.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendMul2" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat2 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat2;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec2 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					float u_xlat3;
					int u_xlati6;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat3 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat3;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlati6 = unity_StereoEyeIndex;
					    u_xlat1.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati6].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati6].xy + u_xlat1.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendMul2" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					float u_xlat9;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat9 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat9 = inversesqrt(u_xlat9);
					    u_xlat2.xyz = vec3(u_xlat9) * u_xlat2.xyz;
					    u_xlat9 = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat9 = inversesqrt(u_xlat9);
					    u_xlat3.xyz = vec3(u_xlat9) * in_NORMAL0.xyz;
					    u_xlat9 = dot(u_xlat3.xyz, u_xlat2.xyz);
					    u_xlat9 = log2(abs(u_xlat9));
					    u_xlat9 = u_xlat9 * _FresnelStr;
					    u_xlat9 = exp2(u_xlat9);
					    u_xlat9 = u_xlat9 + u_xlat9;
					    vs_TEXCOORD4 = min(u_xlat9, 1.0);
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat4 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_3_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					vec3 u_xlat5;
					vec2 u_xlat8;
					int u_xlati10;
					float u_xlat15;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    u_xlat5.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat5.x = inversesqrt(u_xlat5.x);
					    u_xlat5.xyz = u_xlat5.xxx * in_NORMAL0.xyz;
					    u_xlati10 = unity_StereoEyeIndex;
					    u_xlat3.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati10].yyy;
					    u_xlat3.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati10].xxx + u_xlat3.xyz;
					    u_xlat3.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati10].zzz + u_xlat3.xyz;
					    u_xlat3.xyz = u_xlat3.xyz + unity_WorldToObject[3].xyz;
					    u_xlat3.xyz = u_xlat3.xyz + (-in_POSITION0.xyz);
					    u_xlat15 = dot(u_xlat3.xyz, u_xlat3.xyz);
					    u_xlat15 = inversesqrt(u_xlat15);
					    u_xlat3.xyz = vec3(u_xlat15) * u_xlat3.xyz;
					    u_xlat5.x = dot(u_xlat5.xyz, u_xlat3.xyz);
					    u_xlat5.x = log2(abs(u_xlat5.x));
					    u_xlat5.x = u_xlat5.x * _FresnelStr;
					    u_xlat5.x = exp2(u_xlat5.x);
					    u_xlat5.x = u_xlat5.x + u_xlat5.x;
					    vs_TEXCOORD4 = min(u_xlat5.x, 1.0);
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat4 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlat8.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati10].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati10].xy + u_xlat8.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendMul2" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					float u_xlat9;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat9 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat9 = inversesqrt(u_xlat9);
					    u_xlat2.xyz = vec3(u_xlat9) * u_xlat2.xyz;
					    u_xlat9 = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat9 = inversesqrt(u_xlat9);
					    u_xlat3.xyz = vec3(u_xlat9) * in_NORMAL0.xyz;
					    u_xlat9 = dot(u_xlat3.xyz, u_xlat2.xyz);
					    u_xlat9 = log2(abs(u_xlat9));
					    u_xlat9 = u_xlat9 * _FresnelStr;
					    u_xlat9 = exp2(u_xlat9);
					    u_xlat9 = u_xlat9 + u_xlat9;
					    vs_TEXCOORD4 = min(u_xlat9, 1.0);
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat4 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_3_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					vec3 u_xlat5;
					vec2 u_xlat8;
					int u_xlati10;
					float u_xlat15;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    u_xlat5.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat5.x = inversesqrt(u_xlat5.x);
					    u_xlat5.xyz = u_xlat5.xxx * in_NORMAL0.xyz;
					    u_xlati10 = unity_StereoEyeIndex;
					    u_xlat3.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati10].yyy;
					    u_xlat3.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati10].xxx + u_xlat3.xyz;
					    u_xlat3.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati10].zzz + u_xlat3.xyz;
					    u_xlat3.xyz = u_xlat3.xyz + unity_WorldToObject[3].xyz;
					    u_xlat3.xyz = u_xlat3.xyz + (-in_POSITION0.xyz);
					    u_xlat15 = dot(u_xlat3.xyz, u_xlat3.xyz);
					    u_xlat15 = inversesqrt(u_xlat15);
					    u_xlat3.xyz = vec3(u_xlat15) * u_xlat3.xyz;
					    u_xlat5.x = dot(u_xlat5.xyz, u_xlat3.xyz);
					    u_xlat5.x = log2(abs(u_xlat5.x));
					    u_xlat5.x = u_xlat5.x * _FresnelStr;
					    u_xlat5.x = exp2(u_xlat5.x);
					    u_xlat5.x = u_xlat5.x + u_xlat5.x;
					    vs_TEXCOORD4 = min(u_xlat5.x, 1.0);
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat4 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlat8.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati10].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati10].xy + u_xlat8.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendMul2" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					float u_xlat14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat14 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat2.xyz = vec3(u_xlat14) * u_xlat2.xyz;
					    u_xlat14 = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat3.xyz = vec3(u_xlat14) * in_NORMAL0.xyz;
					    u_xlat2.x = dot(u_xlat3.xyz, u_xlat2.xyz);
					    u_xlat2.x = log2(abs(u_xlat2.x));
					    u_xlat2.x = u_xlat2.x * _FresnelStr;
					    u_xlat2.x = exp2(u_xlat2.x);
					    u_xlat2.x = u_xlat2.x + u_xlat2.x;
					    vs_TEXCOORD4 = min(u_xlat2.x, 1.0);
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat4 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_3_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati1;
					vec4 u_xlat2;
					int u_xlati3;
					float u_xlat4;
					float u_xlat5;
					vec3 u_xlat6;
					vec3 u_xlat8;
					vec2 u_xlat10;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    u_xlat6.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat6.x = inversesqrt(u_xlat6.x);
					    u_xlat6.xyz = u_xlat6.xxx * in_NORMAL0.xyz;
					    u_xlati3 = unity_StereoEyeIndex;
					    u_xlat8.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].yyy;
					    u_xlat8.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].xxx + u_xlat8.xyz;
					    u_xlat8.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].zzz + u_xlat8.xyz;
					    u_xlat8.xyz = u_xlat8.xyz + unity_WorldToObject[3].xyz;
					    u_xlat8.xyz = u_xlat8.xyz + (-in_POSITION0.xyz);
					    u_xlat4 = dot(u_xlat8.xyz, u_xlat8.xyz);
					    u_xlat4 = inversesqrt(u_xlat4);
					    u_xlat8.xyz = u_xlat8.xyz * vec3(u_xlat4);
					    u_xlat6.x = dot(u_xlat6.xyz, u_xlat8.xyz);
					    u_xlat6.x = log2(abs(u_xlat6.x));
					    u_xlat6.x = u_xlat6.x * _FresnelStr;
					    u_xlat6.x = exp2(u_xlat6.x);
					    u_xlat6.x = u_xlat6.x + u_xlat6.x;
					    vs_TEXCOORD4 = min(u_xlat6.x, 1.0);
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat5 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat5;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlat10.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati3].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati3].xy + u_xlat10.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendMul2" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					float u_xlat14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat14 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat2.xyz = vec3(u_xlat14) * u_xlat2.xyz;
					    u_xlat14 = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat3.xyz = vec3(u_xlat14) * in_NORMAL0.xyz;
					    u_xlat2.x = dot(u_xlat3.xyz, u_xlat2.xyz);
					    u_xlat2.x = log2(abs(u_xlat2.x));
					    u_xlat2.x = u_xlat2.x * _FresnelStr;
					    u_xlat2.x = exp2(u_xlat2.x);
					    u_xlat2.x = u_xlat2.x + u_xlat2.x;
					    vs_TEXCOORD4 = min(u_xlat2.x, 1.0);
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat4 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_3_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati1;
					vec4 u_xlat2;
					int u_xlati3;
					float u_xlat4;
					float u_xlat5;
					vec3 u_xlat6;
					vec3 u_xlat8;
					vec2 u_xlat10;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    u_xlat6.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat6.x = inversesqrt(u_xlat6.x);
					    u_xlat6.xyz = u_xlat6.xxx * in_NORMAL0.xyz;
					    u_xlati3 = unity_StereoEyeIndex;
					    u_xlat8.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].yyy;
					    u_xlat8.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].xxx + u_xlat8.xyz;
					    u_xlat8.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].zzz + u_xlat8.xyz;
					    u_xlat8.xyz = u_xlat8.xyz + unity_WorldToObject[3].xyz;
					    u_xlat8.xyz = u_xlat8.xyz + (-in_POSITION0.xyz);
					    u_xlat4 = dot(u_xlat8.xyz, u_xlat8.xyz);
					    u_xlat4 = inversesqrt(u_xlat4);
					    u_xlat8.xyz = u_xlat8.xyz * vec3(u_xlat4);
					    u_xlat6.x = dot(u_xlat6.xyz, u_xlat8.xyz);
					    u_xlat6.x = log2(abs(u_xlat6.x));
					    u_xlat6.x = u_xlat6.x * _FresnelStr;
					    u_xlat6.x = exp2(u_xlat6.x);
					    u_xlat6.x = u_xlat6.x + u_xlat6.x;
					    vs_TEXCOORD4 = min(u_xlat6.x, 1.0);
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat5 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat5;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlat10.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati3].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati3].xy + u_xlat10.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendMul2" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					float u_xlat14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat14 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat2.xyz = vec3(u_xlat14) * u_xlat2.xyz;
					    u_xlat14 = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat3.xyz = vec3(u_xlat14) * in_NORMAL0.xyz;
					    u_xlat2.x = dot(u_xlat3.xyz, u_xlat2.xyz);
					    u_xlat2.x = log2(abs(u_xlat2.x));
					    u_xlat2.x = u_xlat2.x * _FresnelStr;
					    u_xlat2.x = exp2(u_xlat2.x);
					    u_xlat2.x = u_xlat2.x + u_xlat2.x;
					    vs_TEXCOORD4 = min(u_xlat2.x, 1.0);
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat4 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_3_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati1;
					vec4 u_xlat2;
					int u_xlati3;
					float u_xlat4;
					float u_xlat5;
					vec3 u_xlat6;
					vec3 u_xlat8;
					vec2 u_xlat10;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    u_xlat6.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat6.x = inversesqrt(u_xlat6.x);
					    u_xlat6.xyz = u_xlat6.xxx * in_NORMAL0.xyz;
					    u_xlati3 = unity_StereoEyeIndex;
					    u_xlat8.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].yyy;
					    u_xlat8.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].xxx + u_xlat8.xyz;
					    u_xlat8.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].zzz + u_xlat8.xyz;
					    u_xlat8.xyz = u_xlat8.xyz + unity_WorldToObject[3].xyz;
					    u_xlat8.xyz = u_xlat8.xyz + (-in_POSITION0.xyz);
					    u_xlat4 = dot(u_xlat8.xyz, u_xlat8.xyz);
					    u_xlat4 = inversesqrt(u_xlat4);
					    u_xlat8.xyz = u_xlat8.xyz * vec3(u_xlat4);
					    u_xlat6.x = dot(u_xlat6.xyz, u_xlat8.xyz);
					    u_xlat6.x = log2(abs(u_xlat6.x));
					    u_xlat6.x = u_xlat6.x * _FresnelStr;
					    u_xlat6.x = exp2(u_xlat6.x);
					    u_xlat6.x = u_xlat6.x + u_xlat6.x;
					    vs_TEXCOORD4 = min(u_xlat6.x, 1.0);
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat5 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat5;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlat10.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati3].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati3].xy + u_xlat10.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendMul2" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					float u_xlat14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat14 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat2.xyz = vec3(u_xlat14) * u_xlat2.xyz;
					    u_xlat14 = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat3.xyz = vec3(u_xlat14) * in_NORMAL0.xyz;
					    u_xlat2.x = dot(u_xlat3.xyz, u_xlat2.xyz);
					    u_xlat2.x = log2(abs(u_xlat2.x));
					    u_xlat2.x = u_xlat2.x * _FresnelStr;
					    u_xlat2.x = exp2(u_xlat2.x);
					    u_xlat2.x = u_xlat2.x + u_xlat2.x;
					    vs_TEXCOORD4 = min(u_xlat2.x, 1.0);
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat4 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_3_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati1;
					vec4 u_xlat2;
					int u_xlati3;
					float u_xlat4;
					float u_xlat5;
					vec3 u_xlat6;
					vec3 u_xlat8;
					vec2 u_xlat10;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    u_xlat6.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat6.x = inversesqrt(u_xlat6.x);
					    u_xlat6.xyz = u_xlat6.xxx * in_NORMAL0.xyz;
					    u_xlati3 = unity_StereoEyeIndex;
					    u_xlat8.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].yyy;
					    u_xlat8.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].xxx + u_xlat8.xyz;
					    u_xlat8.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].zzz + u_xlat8.xyz;
					    u_xlat8.xyz = u_xlat8.xyz + unity_WorldToObject[3].xyz;
					    u_xlat8.xyz = u_xlat8.xyz + (-in_POSITION0.xyz);
					    u_xlat4 = dot(u_xlat8.xyz, u_xlat8.xyz);
					    u_xlat4 = inversesqrt(u_xlat4);
					    u_xlat8.xyz = u_xlat8.xyz * vec3(u_xlat4);
					    u_xlat6.x = dot(u_xlat6.xyz, u_xlat8.xyz);
					    u_xlat6.x = log2(abs(u_xlat6.x));
					    u_xlat6.x = u_xlat6.x * _FresnelStr;
					    u_xlat6.x = exp2(u_xlat6.x);
					    u_xlat6.x = u_xlat6.x + u_xlat6.x;
					    vs_TEXCOORD4 = min(u_xlat6.x, 1.0);
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat5 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat5;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlat10.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati3].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati3].xy + u_xlat10.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendMul2" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					float u_xlat14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat14 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat2.xyz = vec3(u_xlat14) * u_xlat2.xyz;
					    u_xlat14 = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat3.xyz = vec3(u_xlat14) * in_NORMAL0.xyz;
					    u_xlat2.x = dot(u_xlat3.xyz, u_xlat2.xyz);
					    u_xlat2.x = log2(abs(u_xlat2.x));
					    u_xlat2.x = u_xlat2.x * _FresnelStr;
					    u_xlat2.x = exp2(u_xlat2.x);
					    u_xlat2.x = u_xlat2.x + u_xlat2.x;
					    vs_TEXCOORD4 = min(u_xlat2.x, 1.0);
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat4 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_3_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati1;
					vec4 u_xlat2;
					int u_xlati3;
					float u_xlat4;
					float u_xlat5;
					vec3 u_xlat6;
					vec3 u_xlat8;
					vec2 u_xlat10;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    u_xlat6.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat6.x = inversesqrt(u_xlat6.x);
					    u_xlat6.xyz = u_xlat6.xxx * in_NORMAL0.xyz;
					    u_xlati3 = unity_StereoEyeIndex;
					    u_xlat8.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].yyy;
					    u_xlat8.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].xxx + u_xlat8.xyz;
					    u_xlat8.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].zzz + u_xlat8.xyz;
					    u_xlat8.xyz = u_xlat8.xyz + unity_WorldToObject[3].xyz;
					    u_xlat8.xyz = u_xlat8.xyz + (-in_POSITION0.xyz);
					    u_xlat4 = dot(u_xlat8.xyz, u_xlat8.xyz);
					    u_xlat4 = inversesqrt(u_xlat4);
					    u_xlat8.xyz = u_xlat8.xyz * vec3(u_xlat4);
					    u_xlat6.x = dot(u_xlat6.xyz, u_xlat8.xyz);
					    u_xlat6.x = log2(abs(u_xlat6.x));
					    u_xlat6.x = u_xlat6.x * _FresnelStr;
					    u_xlat6.x = exp2(u_xlat6.x);
					    u_xlat6.x = u_xlat6.x + u_xlat6.x;
					    vs_TEXCOORD4 = min(u_xlat6.x, 1.0);
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat5 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat5;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlat10.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati3].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati3].xy + u_xlat10.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendMul2" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					float u_xlat14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat14 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat2.xyz = vec3(u_xlat14) * u_xlat2.xyz;
					    u_xlat14 = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat3.xyz = vec3(u_xlat14) * in_NORMAL0.xyz;
					    u_xlat2.x = dot(u_xlat3.xyz, u_xlat2.xyz);
					    u_xlat2.x = log2(abs(u_xlat2.x));
					    u_xlat2.x = u_xlat2.x * _FresnelStr;
					    u_xlat2.x = exp2(u_xlat2.x);
					    u_xlat2.x = u_xlat2.x + u_xlat2.x;
					    vs_TEXCOORD4 = min(u_xlat2.x, 1.0);
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat4 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_3_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati1;
					vec4 u_xlat2;
					int u_xlati3;
					float u_xlat4;
					float u_xlat5;
					vec3 u_xlat6;
					vec3 u_xlat8;
					vec2 u_xlat10;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    u_xlat6.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat6.x = inversesqrt(u_xlat6.x);
					    u_xlat6.xyz = u_xlat6.xxx * in_NORMAL0.xyz;
					    u_xlati3 = unity_StereoEyeIndex;
					    u_xlat8.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].yyy;
					    u_xlat8.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].xxx + u_xlat8.xyz;
					    u_xlat8.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].zzz + u_xlat8.xyz;
					    u_xlat8.xyz = u_xlat8.xyz + unity_WorldToObject[3].xyz;
					    u_xlat8.xyz = u_xlat8.xyz + (-in_POSITION0.xyz);
					    u_xlat4 = dot(u_xlat8.xyz, u_xlat8.xyz);
					    u_xlat4 = inversesqrt(u_xlat4);
					    u_xlat8.xyz = u_xlat8.xyz * vec3(u_xlat4);
					    u_xlat6.x = dot(u_xlat6.xyz, u_xlat8.xyz);
					    u_xlat6.x = log2(abs(u_xlat6.x));
					    u_xlat6.x = u_xlat6.x * _FresnelStr;
					    u_xlat6.x = exp2(u_xlat6.x);
					    u_xlat6.x = u_xlat6.x + u_xlat6.x;
					    vs_TEXCOORD4 = min(u_xlat6.x, 1.0);
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat5 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat5;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlat10.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati3].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati3].xy + u_xlat10.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendMul2" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					float u_xlat9;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat9 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat9 = inversesqrt(u_xlat9);
					    u_xlat2.xyz = vec3(u_xlat9) * u_xlat2.xyz;
					    u_xlat9 = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat9 = inversesqrt(u_xlat9);
					    u_xlat3.xyz = vec3(u_xlat9) * in_NORMAL0.xyz;
					    u_xlat9 = dot(u_xlat3.xyz, u_xlat2.xyz);
					    u_xlat9 = log2(abs(u_xlat9));
					    u_xlat9 = u_xlat9 * _FresnelStr;
					    u_xlat9 = exp2(u_xlat9);
					    u_xlat9 = u_xlat9 + u_xlat9;
					    vs_TEXCOORD4 = min(u_xlat9, 1.0);
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat4 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_3_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					vec3 u_xlat5;
					vec2 u_xlat8;
					int u_xlati10;
					float u_xlat15;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    u_xlat5.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat5.x = inversesqrt(u_xlat5.x);
					    u_xlat5.xyz = u_xlat5.xxx * in_NORMAL0.xyz;
					    u_xlati10 = unity_StereoEyeIndex;
					    u_xlat3.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati10].yyy;
					    u_xlat3.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati10].xxx + u_xlat3.xyz;
					    u_xlat3.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati10].zzz + u_xlat3.xyz;
					    u_xlat3.xyz = u_xlat3.xyz + unity_WorldToObject[3].xyz;
					    u_xlat3.xyz = u_xlat3.xyz + (-in_POSITION0.xyz);
					    u_xlat15 = dot(u_xlat3.xyz, u_xlat3.xyz);
					    u_xlat15 = inversesqrt(u_xlat15);
					    u_xlat3.xyz = vec3(u_xlat15) * u_xlat3.xyz;
					    u_xlat5.x = dot(u_xlat5.xyz, u_xlat3.xyz);
					    u_xlat5.x = log2(abs(u_xlat5.x));
					    u_xlat5.x = u_xlat5.x * _FresnelStr;
					    u_xlat5.x = exp2(u_xlat5.x);
					    u_xlat5.x = u_xlat5.x + u_xlat5.x;
					    vs_TEXCOORD4 = min(u_xlat5.x, 1.0);
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat4 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlat8.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati10].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati10].xy + u_xlat8.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendMul2" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					float u_xlat9;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat9 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat9 = inversesqrt(u_xlat9);
					    u_xlat2.xyz = vec3(u_xlat9) * u_xlat2.xyz;
					    u_xlat9 = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat9 = inversesqrt(u_xlat9);
					    u_xlat3.xyz = vec3(u_xlat9) * in_NORMAL0.xyz;
					    u_xlat9 = dot(u_xlat3.xyz, u_xlat2.xyz);
					    u_xlat9 = log2(abs(u_xlat9));
					    u_xlat9 = u_xlat9 * _FresnelStr;
					    u_xlat9 = exp2(u_xlat9);
					    u_xlat9 = u_xlat9 + u_xlat9;
					    vs_TEXCOORD4 = min(u_xlat9, 1.0);
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat4 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_3_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					vec3 u_xlat5;
					vec2 u_xlat8;
					int u_xlati10;
					float u_xlat15;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    u_xlat5.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat5.x = inversesqrt(u_xlat5.x);
					    u_xlat5.xyz = u_xlat5.xxx * in_NORMAL0.xyz;
					    u_xlati10 = unity_StereoEyeIndex;
					    u_xlat3.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati10].yyy;
					    u_xlat3.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati10].xxx + u_xlat3.xyz;
					    u_xlat3.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati10].zzz + u_xlat3.xyz;
					    u_xlat3.xyz = u_xlat3.xyz + unity_WorldToObject[3].xyz;
					    u_xlat3.xyz = u_xlat3.xyz + (-in_POSITION0.xyz);
					    u_xlat15 = dot(u_xlat3.xyz, u_xlat3.xyz);
					    u_xlat15 = inversesqrt(u_xlat15);
					    u_xlat3.xyz = vec3(u_xlat15) * u_xlat3.xyz;
					    u_xlat5.x = dot(u_xlat5.xyz, u_xlat3.xyz);
					    u_xlat5.x = log2(abs(u_xlat5.x));
					    u_xlat5.x = u_xlat5.x * _FresnelStr;
					    u_xlat5.x = exp2(u_xlat5.x);
					    u_xlat5.x = u_xlat5.x + u_xlat5.x;
					    vs_TEXCOORD4 = min(u_xlat5.x, 1.0);
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat4 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlat8.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati10].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati10].xy + u_xlat8.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendMul2" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					float u_xlat14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat14 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat2.xyz = vec3(u_xlat14) * u_xlat2.xyz;
					    u_xlat14 = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat3.xyz = vec3(u_xlat14) * in_NORMAL0.xyz;
					    u_xlat2.x = dot(u_xlat3.xyz, u_xlat2.xyz);
					    u_xlat2.x = log2(abs(u_xlat2.x));
					    u_xlat2.x = u_xlat2.x * _FresnelStr;
					    u_xlat2.x = exp2(u_xlat2.x);
					    u_xlat2.x = u_xlat2.x + u_xlat2.x;
					    vs_TEXCOORD4 = min(u_xlat2.x, 1.0);
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat4 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_3_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati1;
					vec4 u_xlat2;
					int u_xlati3;
					float u_xlat4;
					float u_xlat5;
					vec3 u_xlat6;
					vec3 u_xlat8;
					vec2 u_xlat10;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    u_xlat6.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat6.x = inversesqrt(u_xlat6.x);
					    u_xlat6.xyz = u_xlat6.xxx * in_NORMAL0.xyz;
					    u_xlati3 = unity_StereoEyeIndex;
					    u_xlat8.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].yyy;
					    u_xlat8.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].xxx + u_xlat8.xyz;
					    u_xlat8.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].zzz + u_xlat8.xyz;
					    u_xlat8.xyz = u_xlat8.xyz + unity_WorldToObject[3].xyz;
					    u_xlat8.xyz = u_xlat8.xyz + (-in_POSITION0.xyz);
					    u_xlat4 = dot(u_xlat8.xyz, u_xlat8.xyz);
					    u_xlat4 = inversesqrt(u_xlat4);
					    u_xlat8.xyz = u_xlat8.xyz * vec3(u_xlat4);
					    u_xlat6.x = dot(u_xlat6.xyz, u_xlat8.xyz);
					    u_xlat6.x = log2(abs(u_xlat6.x));
					    u_xlat6.x = u_xlat6.x * _FresnelStr;
					    u_xlat6.x = exp2(u_xlat6.x);
					    u_xlat6.x = u_xlat6.x + u_xlat6.x;
					    vs_TEXCOORD4 = min(u_xlat6.x, 1.0);
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat5 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat5;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlat10.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati3].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati3].xy + u_xlat10.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendMul2" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					float u_xlat14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat14 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat2.xyz = vec3(u_xlat14) * u_xlat2.xyz;
					    u_xlat14 = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat3.xyz = vec3(u_xlat14) * in_NORMAL0.xyz;
					    u_xlat2.x = dot(u_xlat3.xyz, u_xlat2.xyz);
					    u_xlat2.x = log2(abs(u_xlat2.x));
					    u_xlat2.x = u_xlat2.x * _FresnelStr;
					    u_xlat2.x = exp2(u_xlat2.x);
					    u_xlat2.x = u_xlat2.x + u_xlat2.x;
					    vs_TEXCOORD4 = min(u_xlat2.x, 1.0);
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat4 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_3_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati1;
					vec4 u_xlat2;
					int u_xlati3;
					float u_xlat4;
					float u_xlat5;
					vec3 u_xlat6;
					vec3 u_xlat8;
					vec2 u_xlat10;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    u_xlat6.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat6.x = inversesqrt(u_xlat6.x);
					    u_xlat6.xyz = u_xlat6.xxx * in_NORMAL0.xyz;
					    u_xlati3 = unity_StereoEyeIndex;
					    u_xlat8.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].yyy;
					    u_xlat8.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].xxx + u_xlat8.xyz;
					    u_xlat8.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].zzz + u_xlat8.xyz;
					    u_xlat8.xyz = u_xlat8.xyz + unity_WorldToObject[3].xyz;
					    u_xlat8.xyz = u_xlat8.xyz + (-in_POSITION0.xyz);
					    u_xlat4 = dot(u_xlat8.xyz, u_xlat8.xyz);
					    u_xlat4 = inversesqrt(u_xlat4);
					    u_xlat8.xyz = u_xlat8.xyz * vec3(u_xlat4);
					    u_xlat6.x = dot(u_xlat6.xyz, u_xlat8.xyz);
					    u_xlat6.x = log2(abs(u_xlat6.x));
					    u_xlat6.x = u_xlat6.x * _FresnelStr;
					    u_xlat6.x = exp2(u_xlat6.x);
					    u_xlat6.x = u_xlat6.x + u_xlat6.x;
					    vs_TEXCOORD4 = min(u_xlat6.x, 1.0);
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat5 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat5;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlat10.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati3].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati3].xy + u_xlat10.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendMul2" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					float u_xlat14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat14 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat2.xyz = vec3(u_xlat14) * u_xlat2.xyz;
					    u_xlat14 = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat3.xyz = vec3(u_xlat14) * in_NORMAL0.xyz;
					    u_xlat2.x = dot(u_xlat3.xyz, u_xlat2.xyz);
					    u_xlat2.x = log2(abs(u_xlat2.x));
					    u_xlat2.x = u_xlat2.x * _FresnelStr;
					    u_xlat2.x = exp2(u_xlat2.x);
					    u_xlat2.x = u_xlat2.x + u_xlat2.x;
					    vs_TEXCOORD4 = min(u_xlat2.x, 1.0);
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat4 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_3_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati1;
					vec4 u_xlat2;
					int u_xlati3;
					float u_xlat4;
					float u_xlat5;
					vec3 u_xlat6;
					vec3 u_xlat8;
					vec2 u_xlat10;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    u_xlat6.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat6.x = inversesqrt(u_xlat6.x);
					    u_xlat6.xyz = u_xlat6.xxx * in_NORMAL0.xyz;
					    u_xlati3 = unity_StereoEyeIndex;
					    u_xlat8.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].yyy;
					    u_xlat8.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].xxx + u_xlat8.xyz;
					    u_xlat8.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].zzz + u_xlat8.xyz;
					    u_xlat8.xyz = u_xlat8.xyz + unity_WorldToObject[3].xyz;
					    u_xlat8.xyz = u_xlat8.xyz + (-in_POSITION0.xyz);
					    u_xlat4 = dot(u_xlat8.xyz, u_xlat8.xyz);
					    u_xlat4 = inversesqrt(u_xlat4);
					    u_xlat8.xyz = u_xlat8.xyz * vec3(u_xlat4);
					    u_xlat6.x = dot(u_xlat6.xyz, u_xlat8.xyz);
					    u_xlat6.x = log2(abs(u_xlat6.x));
					    u_xlat6.x = u_xlat6.x * _FresnelStr;
					    u_xlat6.x = exp2(u_xlat6.x);
					    u_xlat6.x = u_xlat6.x + u_xlat6.x;
					    vs_TEXCOORD4 = min(u_xlat6.x, 1.0);
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat5 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat5;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlat10.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati3].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati3].xy + u_xlat10.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendMul2" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					float u_xlat14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat14 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat2.xyz = vec3(u_xlat14) * u_xlat2.xyz;
					    u_xlat14 = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat3.xyz = vec3(u_xlat14) * in_NORMAL0.xyz;
					    u_xlat2.x = dot(u_xlat3.xyz, u_xlat2.xyz);
					    u_xlat2.x = log2(abs(u_xlat2.x));
					    u_xlat2.x = u_xlat2.x * _FresnelStr;
					    u_xlat2.x = exp2(u_xlat2.x);
					    u_xlat2.x = u_xlat2.x + u_xlat2.x;
					    vs_TEXCOORD4 = min(u_xlat2.x, 1.0);
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat4 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_3_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati1;
					vec4 u_xlat2;
					int u_xlati3;
					float u_xlat4;
					float u_xlat5;
					vec3 u_xlat6;
					vec3 u_xlat8;
					vec2 u_xlat10;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    u_xlat6.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat6.x = inversesqrt(u_xlat6.x);
					    u_xlat6.xyz = u_xlat6.xxx * in_NORMAL0.xyz;
					    u_xlati3 = unity_StereoEyeIndex;
					    u_xlat8.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].yyy;
					    u_xlat8.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].xxx + u_xlat8.xyz;
					    u_xlat8.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].zzz + u_xlat8.xyz;
					    u_xlat8.xyz = u_xlat8.xyz + unity_WorldToObject[3].xyz;
					    u_xlat8.xyz = u_xlat8.xyz + (-in_POSITION0.xyz);
					    u_xlat4 = dot(u_xlat8.xyz, u_xlat8.xyz);
					    u_xlat4 = inversesqrt(u_xlat4);
					    u_xlat8.xyz = u_xlat8.xyz * vec3(u_xlat4);
					    u_xlat6.x = dot(u_xlat6.xyz, u_xlat8.xyz);
					    u_xlat6.x = log2(abs(u_xlat6.x));
					    u_xlat6.x = u_xlat6.x * _FresnelStr;
					    u_xlat6.x = exp2(u_xlat6.x);
					    u_xlat6.x = u_xlat6.x + u_xlat6.x;
					    vs_TEXCOORD4 = min(u_xlat6.x, 1.0);
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat5 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat5;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlat10.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati3].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati3].xy + u_xlat10.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendMul2" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					float u_xlat14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat14 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat2.xyz = vec3(u_xlat14) * u_xlat2.xyz;
					    u_xlat14 = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat3.xyz = vec3(u_xlat14) * in_NORMAL0.xyz;
					    u_xlat2.x = dot(u_xlat3.xyz, u_xlat2.xyz);
					    u_xlat2.x = log2(abs(u_xlat2.x));
					    u_xlat2.x = u_xlat2.x * _FresnelStr;
					    u_xlat2.x = exp2(u_xlat2.x);
					    u_xlat2.x = u_xlat2.x + u_xlat2.x;
					    vs_TEXCOORD4 = min(u_xlat2.x, 1.0);
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat4 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_3_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati1;
					vec4 u_xlat2;
					int u_xlati3;
					float u_xlat4;
					float u_xlat5;
					vec3 u_xlat6;
					vec3 u_xlat8;
					vec2 u_xlat10;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    u_xlat6.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat6.x = inversesqrt(u_xlat6.x);
					    u_xlat6.xyz = u_xlat6.xxx * in_NORMAL0.xyz;
					    u_xlati3 = unity_StereoEyeIndex;
					    u_xlat8.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].yyy;
					    u_xlat8.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].xxx + u_xlat8.xyz;
					    u_xlat8.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].zzz + u_xlat8.xyz;
					    u_xlat8.xyz = u_xlat8.xyz + unity_WorldToObject[3].xyz;
					    u_xlat8.xyz = u_xlat8.xyz + (-in_POSITION0.xyz);
					    u_xlat4 = dot(u_xlat8.xyz, u_xlat8.xyz);
					    u_xlat4 = inversesqrt(u_xlat4);
					    u_xlat8.xyz = u_xlat8.xyz * vec3(u_xlat4);
					    u_xlat6.x = dot(u_xlat6.xyz, u_xlat8.xyz);
					    u_xlat6.x = log2(abs(u_xlat6.x));
					    u_xlat6.x = u_xlat6.x * _FresnelStr;
					    u_xlat6.x = exp2(u_xlat6.x);
					    u_xlat6.x = u_xlat6.x + u_xlat6.x;
					    vs_TEXCOORD4 = min(u_xlat6.x, 1.0);
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat5 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat5;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlat10.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati3].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati3].xy + u_xlat10.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendMul2" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					float u_xlat14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat14 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat2.xyz = vec3(u_xlat14) * u_xlat2.xyz;
					    u_xlat14 = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat3.xyz = vec3(u_xlat14) * in_NORMAL0.xyz;
					    u_xlat2.x = dot(u_xlat3.xyz, u_xlat2.xyz);
					    u_xlat2.x = log2(abs(u_xlat2.x));
					    u_xlat2.x = u_xlat2.x * _FresnelStr;
					    u_xlat2.x = exp2(u_xlat2.x);
					    u_xlat2.x = u_xlat2.x + u_xlat2.x;
					    vs_TEXCOORD4 = min(u_xlat2.x, 1.0);
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat4 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_3_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati1;
					vec4 u_xlat2;
					int u_xlati3;
					float u_xlat4;
					float u_xlat5;
					vec3 u_xlat6;
					vec3 u_xlat8;
					vec2 u_xlat10;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    u_xlat6.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat6.x = inversesqrt(u_xlat6.x);
					    u_xlat6.xyz = u_xlat6.xxx * in_NORMAL0.xyz;
					    u_xlati3 = unity_StereoEyeIndex;
					    u_xlat8.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].yyy;
					    u_xlat8.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].xxx + u_xlat8.xyz;
					    u_xlat8.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].zzz + u_xlat8.xyz;
					    u_xlat8.xyz = u_xlat8.xyz + unity_WorldToObject[3].xyz;
					    u_xlat8.xyz = u_xlat8.xyz + (-in_POSITION0.xyz);
					    u_xlat4 = dot(u_xlat8.xyz, u_xlat8.xyz);
					    u_xlat4 = inversesqrt(u_xlat4);
					    u_xlat8.xyz = u_xlat8.xyz * vec3(u_xlat4);
					    u_xlat6.x = dot(u_xlat6.xyz, u_xlat8.xyz);
					    u_xlat6.x = log2(abs(u_xlat6.x));
					    u_xlat6.x = u_xlat6.x * _FresnelStr;
					    u_xlat6.x = exp2(u_xlat6.x);
					    u_xlat6.x = u_xlat6.x + u_xlat6.x;
					    vs_TEXCOORD4 = min(u_xlat6.x, 1.0);
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat5 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat5;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlat10.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati3].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati3].xy + u_xlat10.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendMul2" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat2 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat2;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec2 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					float u_xlat3;
					int u_xlati6;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat3 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat3;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlati6 = unity_StereoEyeIndex;
					    u_xlat1.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati6].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati6].xy + u_xlat1.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendMul2" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat2 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat2;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec2 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					float u_xlat3;
					int u_xlati6;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat3 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat3;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlati6 = unity_StereoEyeIndex;
					    u_xlat1.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati6].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati6].xy + u_xlat1.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendMul2" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat2 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat2;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec2 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					float u_xlat3;
					int u_xlati6;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat3 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat3;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlati6 = unity_StereoEyeIndex;
					    u_xlat1.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati6].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati6].xy + u_xlat1.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendMul2" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat2 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat2;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec2 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					float u_xlat3;
					int u_xlati6;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat3 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat3;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlati6 = unity_StereoEyeIndex;
					    u_xlat1.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati6].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati6].xy + u_xlat1.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendMul2" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat2 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat2;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec2 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					float u_xlat3;
					int u_xlati6;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat3 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat3;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlati6 = unity_StereoEyeIndex;
					    u_xlat1.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati6].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati6].xy + u_xlat1.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendMul2" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat2 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat2;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec2 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					float u_xlat3;
					int u_xlati6;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat3 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat3;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlati6 = unity_StereoEyeIndex;
					    u_xlat1.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati6].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati6].xy + u_xlat1.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendMul2" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat2 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat2;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec2 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					float u_xlat3;
					int u_xlati6;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat3 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat3;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlati6 = unity_StereoEyeIndex;
					    u_xlat1.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati6].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati6].xy + u_xlat1.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendMul2" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat2 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat2;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec2 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					float u_xlat3;
					int u_xlati6;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat3 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat3;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlati6 = unity_StereoEyeIndex;
					    u_xlat1.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati6].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati6].xy + u_xlat1.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendMul2" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat2 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat2;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec2 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					float u_xlat3;
					int u_xlati6;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat3 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat3;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlati6 = unity_StereoEyeIndex;
					    u_xlat1.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati6].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati6].xy + u_xlat1.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendMul2" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat2 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat2;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec2 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					float u_xlat3;
					int u_xlati6;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat3 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat3;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlati6 = unity_StereoEyeIndex;
					    u_xlat1.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati6].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati6].xy + u_xlat1.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendMul2" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat2 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat2;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec2 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					float u_xlat3;
					int u_xlati6;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat3 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat3;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlati6 = unity_StereoEyeIndex;
					    u_xlat1.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati6].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati6].xy + u_xlat1.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendMul2" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat2 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat2;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec2 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					float u_xlat3;
					int u_xlati6;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat3 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat3;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlati6 = unity_StereoEyeIndex;
					    u_xlat1.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati6].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati6].xy + u_xlat1.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendMul2" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat2 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat2;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec2 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					float u_xlat3;
					int u_xlati6;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat3 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat3;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlati6 = unity_StereoEyeIndex;
					    u_xlat1.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati6].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati6].xy + u_xlat1.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendMul2" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat2 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat2;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec2 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					float u_xlat3;
					int u_xlati6;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat3 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat3;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlati6 = unity_StereoEyeIndex;
					    u_xlat1.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati6].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati6].xy + u_xlat1.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendMul2" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat2 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat2;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec2 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					float u_xlat3;
					int u_xlati6;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat3 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat3;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlati6 = unity_StereoEyeIndex;
					    u_xlat1.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati6].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati6].xy + u_xlat1.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendMul2" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat2 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat2;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec2 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					float u_xlat3;
					int u_xlati6;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat3 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat3;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlati6 = unity_StereoEyeIndex;
					    u_xlat1.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati6].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati6].xy + u_xlat1.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendMul2" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					float u_xlat9;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat9 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat9 = inversesqrt(u_xlat9);
					    u_xlat2.xyz = vec3(u_xlat9) * u_xlat2.xyz;
					    u_xlat9 = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat9 = inversesqrt(u_xlat9);
					    u_xlat3.xyz = vec3(u_xlat9) * in_NORMAL0.xyz;
					    u_xlat9 = dot(u_xlat3.xyz, u_xlat2.xyz);
					    u_xlat9 = log2(abs(u_xlat9));
					    u_xlat9 = u_xlat9 * _FresnelStr;
					    u_xlat9 = exp2(u_xlat9);
					    u_xlat9 = u_xlat9 + u_xlat9;
					    vs_TEXCOORD4 = min(u_xlat9, 1.0);
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat4 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_3_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					vec3 u_xlat5;
					vec2 u_xlat8;
					int u_xlati10;
					float u_xlat15;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    u_xlat5.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat5.x = inversesqrt(u_xlat5.x);
					    u_xlat5.xyz = u_xlat5.xxx * in_NORMAL0.xyz;
					    u_xlati10 = unity_StereoEyeIndex;
					    u_xlat3.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati10].yyy;
					    u_xlat3.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati10].xxx + u_xlat3.xyz;
					    u_xlat3.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati10].zzz + u_xlat3.xyz;
					    u_xlat3.xyz = u_xlat3.xyz + unity_WorldToObject[3].xyz;
					    u_xlat3.xyz = u_xlat3.xyz + (-in_POSITION0.xyz);
					    u_xlat15 = dot(u_xlat3.xyz, u_xlat3.xyz);
					    u_xlat15 = inversesqrt(u_xlat15);
					    u_xlat3.xyz = vec3(u_xlat15) * u_xlat3.xyz;
					    u_xlat5.x = dot(u_xlat5.xyz, u_xlat3.xyz);
					    u_xlat5.x = log2(abs(u_xlat5.x));
					    u_xlat5.x = u_xlat5.x * _FresnelStr;
					    u_xlat5.x = exp2(u_xlat5.x);
					    u_xlat5.x = u_xlat5.x + u_xlat5.x;
					    vs_TEXCOORD4 = min(u_xlat5.x, 1.0);
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat4 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlat8.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati10].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati10].xy + u_xlat8.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendMul2" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					float u_xlat9;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat9 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat9 = inversesqrt(u_xlat9);
					    u_xlat2.xyz = vec3(u_xlat9) * u_xlat2.xyz;
					    u_xlat9 = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat9 = inversesqrt(u_xlat9);
					    u_xlat3.xyz = vec3(u_xlat9) * in_NORMAL0.xyz;
					    u_xlat9 = dot(u_xlat3.xyz, u_xlat2.xyz);
					    u_xlat9 = log2(abs(u_xlat9));
					    u_xlat9 = u_xlat9 * _FresnelStr;
					    u_xlat9 = exp2(u_xlat9);
					    u_xlat9 = u_xlat9 + u_xlat9;
					    vs_TEXCOORD4 = min(u_xlat9, 1.0);
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat4 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_3_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					vec3 u_xlat5;
					vec2 u_xlat8;
					int u_xlati10;
					float u_xlat15;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    u_xlat5.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat5.x = inversesqrt(u_xlat5.x);
					    u_xlat5.xyz = u_xlat5.xxx * in_NORMAL0.xyz;
					    u_xlati10 = unity_StereoEyeIndex;
					    u_xlat3.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati10].yyy;
					    u_xlat3.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati10].xxx + u_xlat3.xyz;
					    u_xlat3.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati10].zzz + u_xlat3.xyz;
					    u_xlat3.xyz = u_xlat3.xyz + unity_WorldToObject[3].xyz;
					    u_xlat3.xyz = u_xlat3.xyz + (-in_POSITION0.xyz);
					    u_xlat15 = dot(u_xlat3.xyz, u_xlat3.xyz);
					    u_xlat15 = inversesqrt(u_xlat15);
					    u_xlat3.xyz = vec3(u_xlat15) * u_xlat3.xyz;
					    u_xlat5.x = dot(u_xlat5.xyz, u_xlat3.xyz);
					    u_xlat5.x = log2(abs(u_xlat5.x));
					    u_xlat5.x = u_xlat5.x * _FresnelStr;
					    u_xlat5.x = exp2(u_xlat5.x);
					    u_xlat5.x = u_xlat5.x + u_xlat5.x;
					    vs_TEXCOORD4 = min(u_xlat5.x, 1.0);
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat4 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlat8.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati10].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati10].xy + u_xlat8.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendMul2" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					float u_xlat14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat14 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat2.xyz = vec3(u_xlat14) * u_xlat2.xyz;
					    u_xlat14 = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat3.xyz = vec3(u_xlat14) * in_NORMAL0.xyz;
					    u_xlat2.x = dot(u_xlat3.xyz, u_xlat2.xyz);
					    u_xlat2.x = log2(abs(u_xlat2.x));
					    u_xlat2.x = u_xlat2.x * _FresnelStr;
					    u_xlat2.x = exp2(u_xlat2.x);
					    u_xlat2.x = u_xlat2.x + u_xlat2.x;
					    vs_TEXCOORD4 = min(u_xlat2.x, 1.0);
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat4 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_3_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati1;
					vec4 u_xlat2;
					int u_xlati3;
					float u_xlat4;
					float u_xlat5;
					vec3 u_xlat6;
					vec3 u_xlat8;
					vec2 u_xlat10;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    u_xlat6.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat6.x = inversesqrt(u_xlat6.x);
					    u_xlat6.xyz = u_xlat6.xxx * in_NORMAL0.xyz;
					    u_xlati3 = unity_StereoEyeIndex;
					    u_xlat8.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].yyy;
					    u_xlat8.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].xxx + u_xlat8.xyz;
					    u_xlat8.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].zzz + u_xlat8.xyz;
					    u_xlat8.xyz = u_xlat8.xyz + unity_WorldToObject[3].xyz;
					    u_xlat8.xyz = u_xlat8.xyz + (-in_POSITION0.xyz);
					    u_xlat4 = dot(u_xlat8.xyz, u_xlat8.xyz);
					    u_xlat4 = inversesqrt(u_xlat4);
					    u_xlat8.xyz = u_xlat8.xyz * vec3(u_xlat4);
					    u_xlat6.x = dot(u_xlat6.xyz, u_xlat8.xyz);
					    u_xlat6.x = log2(abs(u_xlat6.x));
					    u_xlat6.x = u_xlat6.x * _FresnelStr;
					    u_xlat6.x = exp2(u_xlat6.x);
					    u_xlat6.x = u_xlat6.x + u_xlat6.x;
					    vs_TEXCOORD4 = min(u_xlat6.x, 1.0);
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat5 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat5;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlat10.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati3].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati3].xy + u_xlat10.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendMul2" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					float u_xlat14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat14 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat2.xyz = vec3(u_xlat14) * u_xlat2.xyz;
					    u_xlat14 = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat3.xyz = vec3(u_xlat14) * in_NORMAL0.xyz;
					    u_xlat2.x = dot(u_xlat3.xyz, u_xlat2.xyz);
					    u_xlat2.x = log2(abs(u_xlat2.x));
					    u_xlat2.x = u_xlat2.x * _FresnelStr;
					    u_xlat2.x = exp2(u_xlat2.x);
					    u_xlat2.x = u_xlat2.x + u_xlat2.x;
					    vs_TEXCOORD4 = min(u_xlat2.x, 1.0);
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat4 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_3_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati1;
					vec4 u_xlat2;
					int u_xlati3;
					float u_xlat4;
					float u_xlat5;
					vec3 u_xlat6;
					vec3 u_xlat8;
					vec2 u_xlat10;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    u_xlat6.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat6.x = inversesqrt(u_xlat6.x);
					    u_xlat6.xyz = u_xlat6.xxx * in_NORMAL0.xyz;
					    u_xlati3 = unity_StereoEyeIndex;
					    u_xlat8.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].yyy;
					    u_xlat8.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].xxx + u_xlat8.xyz;
					    u_xlat8.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].zzz + u_xlat8.xyz;
					    u_xlat8.xyz = u_xlat8.xyz + unity_WorldToObject[3].xyz;
					    u_xlat8.xyz = u_xlat8.xyz + (-in_POSITION0.xyz);
					    u_xlat4 = dot(u_xlat8.xyz, u_xlat8.xyz);
					    u_xlat4 = inversesqrt(u_xlat4);
					    u_xlat8.xyz = u_xlat8.xyz * vec3(u_xlat4);
					    u_xlat6.x = dot(u_xlat6.xyz, u_xlat8.xyz);
					    u_xlat6.x = log2(abs(u_xlat6.x));
					    u_xlat6.x = u_xlat6.x * _FresnelStr;
					    u_xlat6.x = exp2(u_xlat6.x);
					    u_xlat6.x = u_xlat6.x + u_xlat6.x;
					    vs_TEXCOORD4 = min(u_xlat6.x, 1.0);
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat5 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat5;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlat10.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati3].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati3].xy + u_xlat10.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendMul2" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					float u_xlat14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat14 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat2.xyz = vec3(u_xlat14) * u_xlat2.xyz;
					    u_xlat14 = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat3.xyz = vec3(u_xlat14) * in_NORMAL0.xyz;
					    u_xlat2.x = dot(u_xlat3.xyz, u_xlat2.xyz);
					    u_xlat2.x = log2(abs(u_xlat2.x));
					    u_xlat2.x = u_xlat2.x * _FresnelStr;
					    u_xlat2.x = exp2(u_xlat2.x);
					    u_xlat2.x = u_xlat2.x + u_xlat2.x;
					    vs_TEXCOORD4 = min(u_xlat2.x, 1.0);
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat4 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_3_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati1;
					vec4 u_xlat2;
					int u_xlati3;
					float u_xlat4;
					float u_xlat5;
					vec3 u_xlat6;
					vec3 u_xlat8;
					vec2 u_xlat10;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    u_xlat6.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat6.x = inversesqrt(u_xlat6.x);
					    u_xlat6.xyz = u_xlat6.xxx * in_NORMAL0.xyz;
					    u_xlati3 = unity_StereoEyeIndex;
					    u_xlat8.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].yyy;
					    u_xlat8.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].xxx + u_xlat8.xyz;
					    u_xlat8.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].zzz + u_xlat8.xyz;
					    u_xlat8.xyz = u_xlat8.xyz + unity_WorldToObject[3].xyz;
					    u_xlat8.xyz = u_xlat8.xyz + (-in_POSITION0.xyz);
					    u_xlat4 = dot(u_xlat8.xyz, u_xlat8.xyz);
					    u_xlat4 = inversesqrt(u_xlat4);
					    u_xlat8.xyz = u_xlat8.xyz * vec3(u_xlat4);
					    u_xlat6.x = dot(u_xlat6.xyz, u_xlat8.xyz);
					    u_xlat6.x = log2(abs(u_xlat6.x));
					    u_xlat6.x = u_xlat6.x * _FresnelStr;
					    u_xlat6.x = exp2(u_xlat6.x);
					    u_xlat6.x = u_xlat6.x + u_xlat6.x;
					    vs_TEXCOORD4 = min(u_xlat6.x, 1.0);
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat5 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat5;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlat10.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati3].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati3].xy + u_xlat10.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendMul2" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					float u_xlat14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat14 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat2.xyz = vec3(u_xlat14) * u_xlat2.xyz;
					    u_xlat14 = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat3.xyz = vec3(u_xlat14) * in_NORMAL0.xyz;
					    u_xlat2.x = dot(u_xlat3.xyz, u_xlat2.xyz);
					    u_xlat2.x = log2(abs(u_xlat2.x));
					    u_xlat2.x = u_xlat2.x * _FresnelStr;
					    u_xlat2.x = exp2(u_xlat2.x);
					    u_xlat2.x = u_xlat2.x + u_xlat2.x;
					    vs_TEXCOORD4 = min(u_xlat2.x, 1.0);
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat4 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_3_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati1;
					vec4 u_xlat2;
					int u_xlati3;
					float u_xlat4;
					float u_xlat5;
					vec3 u_xlat6;
					vec3 u_xlat8;
					vec2 u_xlat10;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    u_xlat6.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat6.x = inversesqrt(u_xlat6.x);
					    u_xlat6.xyz = u_xlat6.xxx * in_NORMAL0.xyz;
					    u_xlati3 = unity_StereoEyeIndex;
					    u_xlat8.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].yyy;
					    u_xlat8.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].xxx + u_xlat8.xyz;
					    u_xlat8.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].zzz + u_xlat8.xyz;
					    u_xlat8.xyz = u_xlat8.xyz + unity_WorldToObject[3].xyz;
					    u_xlat8.xyz = u_xlat8.xyz + (-in_POSITION0.xyz);
					    u_xlat4 = dot(u_xlat8.xyz, u_xlat8.xyz);
					    u_xlat4 = inversesqrt(u_xlat4);
					    u_xlat8.xyz = u_xlat8.xyz * vec3(u_xlat4);
					    u_xlat6.x = dot(u_xlat6.xyz, u_xlat8.xyz);
					    u_xlat6.x = log2(abs(u_xlat6.x));
					    u_xlat6.x = u_xlat6.x * _FresnelStr;
					    u_xlat6.x = exp2(u_xlat6.x);
					    u_xlat6.x = u_xlat6.x + u_xlat6.x;
					    vs_TEXCOORD4 = min(u_xlat6.x, 1.0);
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat5 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat5;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlat10.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati3].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati3].xy + u_xlat10.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendMul2" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					float u_xlat14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat14 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat2.xyz = vec3(u_xlat14) * u_xlat2.xyz;
					    u_xlat14 = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat3.xyz = vec3(u_xlat14) * in_NORMAL0.xyz;
					    u_xlat2.x = dot(u_xlat3.xyz, u_xlat2.xyz);
					    u_xlat2.x = log2(abs(u_xlat2.x));
					    u_xlat2.x = u_xlat2.x * _FresnelStr;
					    u_xlat2.x = exp2(u_xlat2.x);
					    u_xlat2.x = u_xlat2.x + u_xlat2.x;
					    vs_TEXCOORD4 = min(u_xlat2.x, 1.0);
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat4 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_3_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati1;
					vec4 u_xlat2;
					int u_xlati3;
					float u_xlat4;
					float u_xlat5;
					vec3 u_xlat6;
					vec3 u_xlat8;
					vec2 u_xlat10;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    u_xlat6.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat6.x = inversesqrt(u_xlat6.x);
					    u_xlat6.xyz = u_xlat6.xxx * in_NORMAL0.xyz;
					    u_xlati3 = unity_StereoEyeIndex;
					    u_xlat8.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].yyy;
					    u_xlat8.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].xxx + u_xlat8.xyz;
					    u_xlat8.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].zzz + u_xlat8.xyz;
					    u_xlat8.xyz = u_xlat8.xyz + unity_WorldToObject[3].xyz;
					    u_xlat8.xyz = u_xlat8.xyz + (-in_POSITION0.xyz);
					    u_xlat4 = dot(u_xlat8.xyz, u_xlat8.xyz);
					    u_xlat4 = inversesqrt(u_xlat4);
					    u_xlat8.xyz = u_xlat8.xyz * vec3(u_xlat4);
					    u_xlat6.x = dot(u_xlat6.xyz, u_xlat8.xyz);
					    u_xlat6.x = log2(abs(u_xlat6.x));
					    u_xlat6.x = u_xlat6.x * _FresnelStr;
					    u_xlat6.x = exp2(u_xlat6.x);
					    u_xlat6.x = u_xlat6.x + u_xlat6.x;
					    vs_TEXCOORD4 = min(u_xlat6.x, 1.0);
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat5 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat5;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlat10.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati3].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati3].xy + u_xlat10.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendMul2" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					float u_xlat14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat14 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat2.xyz = vec3(u_xlat14) * u_xlat2.xyz;
					    u_xlat14 = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat3.xyz = vec3(u_xlat14) * in_NORMAL0.xyz;
					    u_xlat2.x = dot(u_xlat3.xyz, u_xlat2.xyz);
					    u_xlat2.x = log2(abs(u_xlat2.x));
					    u_xlat2.x = u_xlat2.x * _FresnelStr;
					    u_xlat2.x = exp2(u_xlat2.x);
					    u_xlat2.x = u_xlat2.x + u_xlat2.x;
					    vs_TEXCOORD4 = min(u_xlat2.x, 1.0);
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat4 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_3_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati1;
					vec4 u_xlat2;
					int u_xlati3;
					float u_xlat4;
					float u_xlat5;
					vec3 u_xlat6;
					vec3 u_xlat8;
					vec2 u_xlat10;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    u_xlat6.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat6.x = inversesqrt(u_xlat6.x);
					    u_xlat6.xyz = u_xlat6.xxx * in_NORMAL0.xyz;
					    u_xlati3 = unity_StereoEyeIndex;
					    u_xlat8.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].yyy;
					    u_xlat8.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].xxx + u_xlat8.xyz;
					    u_xlat8.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].zzz + u_xlat8.xyz;
					    u_xlat8.xyz = u_xlat8.xyz + unity_WorldToObject[3].xyz;
					    u_xlat8.xyz = u_xlat8.xyz + (-in_POSITION0.xyz);
					    u_xlat4 = dot(u_xlat8.xyz, u_xlat8.xyz);
					    u_xlat4 = inversesqrt(u_xlat4);
					    u_xlat8.xyz = u_xlat8.xyz * vec3(u_xlat4);
					    u_xlat6.x = dot(u_xlat6.xyz, u_xlat8.xyz);
					    u_xlat6.x = log2(abs(u_xlat6.x));
					    u_xlat6.x = u_xlat6.x * _FresnelStr;
					    u_xlat6.x = exp2(u_xlat6.x);
					    u_xlat6.x = u_xlat6.x + u_xlat6.x;
					    vs_TEXCOORD4 = min(u_xlat6.x, 1.0);
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat5 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat5;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlat10.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati3].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati3].xy + u_xlat10.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendMul2" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					float u_xlat9;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat9 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat9 = inversesqrt(u_xlat9);
					    u_xlat2.xyz = vec3(u_xlat9) * u_xlat2.xyz;
					    u_xlat9 = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat9 = inversesqrt(u_xlat9);
					    u_xlat3.xyz = vec3(u_xlat9) * in_NORMAL0.xyz;
					    u_xlat9 = dot(u_xlat3.xyz, u_xlat2.xyz);
					    u_xlat9 = log2(abs(u_xlat9));
					    u_xlat9 = u_xlat9 * _FresnelStr;
					    u_xlat9 = exp2(u_xlat9);
					    u_xlat9 = u_xlat9 + u_xlat9;
					    vs_TEXCOORD4 = min(u_xlat9, 1.0);
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat4 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_3_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					vec3 u_xlat5;
					vec2 u_xlat8;
					int u_xlati10;
					float u_xlat15;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    u_xlat5.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat5.x = inversesqrt(u_xlat5.x);
					    u_xlat5.xyz = u_xlat5.xxx * in_NORMAL0.xyz;
					    u_xlati10 = unity_StereoEyeIndex;
					    u_xlat3.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati10].yyy;
					    u_xlat3.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati10].xxx + u_xlat3.xyz;
					    u_xlat3.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati10].zzz + u_xlat3.xyz;
					    u_xlat3.xyz = u_xlat3.xyz + unity_WorldToObject[3].xyz;
					    u_xlat3.xyz = u_xlat3.xyz + (-in_POSITION0.xyz);
					    u_xlat15 = dot(u_xlat3.xyz, u_xlat3.xyz);
					    u_xlat15 = inversesqrt(u_xlat15);
					    u_xlat3.xyz = vec3(u_xlat15) * u_xlat3.xyz;
					    u_xlat5.x = dot(u_xlat5.xyz, u_xlat3.xyz);
					    u_xlat5.x = log2(abs(u_xlat5.x));
					    u_xlat5.x = u_xlat5.x * _FresnelStr;
					    u_xlat5.x = exp2(u_xlat5.x);
					    u_xlat5.x = u_xlat5.x + u_xlat5.x;
					    vs_TEXCOORD4 = min(u_xlat5.x, 1.0);
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat4 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlat8.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati10].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati10].xy + u_xlat8.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendMul2" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					float u_xlat9;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat9 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat9 = inversesqrt(u_xlat9);
					    u_xlat2.xyz = vec3(u_xlat9) * u_xlat2.xyz;
					    u_xlat9 = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat9 = inversesqrt(u_xlat9);
					    u_xlat3.xyz = vec3(u_xlat9) * in_NORMAL0.xyz;
					    u_xlat9 = dot(u_xlat3.xyz, u_xlat2.xyz);
					    u_xlat9 = log2(abs(u_xlat9));
					    u_xlat9 = u_xlat9 * _FresnelStr;
					    u_xlat9 = exp2(u_xlat9);
					    u_xlat9 = u_xlat9 + u_xlat9;
					    vs_TEXCOORD4 = min(u_xlat9, 1.0);
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat4 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_3_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					vec3 u_xlat5;
					vec2 u_xlat8;
					int u_xlati10;
					float u_xlat15;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    u_xlat5.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat5.x = inversesqrt(u_xlat5.x);
					    u_xlat5.xyz = u_xlat5.xxx * in_NORMAL0.xyz;
					    u_xlati10 = unity_StereoEyeIndex;
					    u_xlat3.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati10].yyy;
					    u_xlat3.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati10].xxx + u_xlat3.xyz;
					    u_xlat3.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati10].zzz + u_xlat3.xyz;
					    u_xlat3.xyz = u_xlat3.xyz + unity_WorldToObject[3].xyz;
					    u_xlat3.xyz = u_xlat3.xyz + (-in_POSITION0.xyz);
					    u_xlat15 = dot(u_xlat3.xyz, u_xlat3.xyz);
					    u_xlat15 = inversesqrt(u_xlat15);
					    u_xlat3.xyz = vec3(u_xlat15) * u_xlat3.xyz;
					    u_xlat5.x = dot(u_xlat5.xyz, u_xlat3.xyz);
					    u_xlat5.x = log2(abs(u_xlat5.x));
					    u_xlat5.x = u_xlat5.x * _FresnelStr;
					    u_xlat5.x = exp2(u_xlat5.x);
					    u_xlat5.x = u_xlat5.x + u_xlat5.x;
					    vs_TEXCOORD4 = min(u_xlat5.x, 1.0);
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat4 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlat8.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati10].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati10].xy + u_xlat8.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendMul2" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					float u_xlat14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat14 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat2.xyz = vec3(u_xlat14) * u_xlat2.xyz;
					    u_xlat14 = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat3.xyz = vec3(u_xlat14) * in_NORMAL0.xyz;
					    u_xlat2.x = dot(u_xlat3.xyz, u_xlat2.xyz);
					    u_xlat2.x = log2(abs(u_xlat2.x));
					    u_xlat2.x = u_xlat2.x * _FresnelStr;
					    u_xlat2.x = exp2(u_xlat2.x);
					    u_xlat2.x = u_xlat2.x + u_xlat2.x;
					    vs_TEXCOORD4 = min(u_xlat2.x, 1.0);
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat4 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_3_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati1;
					vec4 u_xlat2;
					int u_xlati3;
					float u_xlat4;
					float u_xlat5;
					vec3 u_xlat6;
					vec3 u_xlat8;
					vec2 u_xlat10;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    u_xlat6.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat6.x = inversesqrt(u_xlat6.x);
					    u_xlat6.xyz = u_xlat6.xxx * in_NORMAL0.xyz;
					    u_xlati3 = unity_StereoEyeIndex;
					    u_xlat8.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].yyy;
					    u_xlat8.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].xxx + u_xlat8.xyz;
					    u_xlat8.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].zzz + u_xlat8.xyz;
					    u_xlat8.xyz = u_xlat8.xyz + unity_WorldToObject[3].xyz;
					    u_xlat8.xyz = u_xlat8.xyz + (-in_POSITION0.xyz);
					    u_xlat4 = dot(u_xlat8.xyz, u_xlat8.xyz);
					    u_xlat4 = inversesqrt(u_xlat4);
					    u_xlat8.xyz = u_xlat8.xyz * vec3(u_xlat4);
					    u_xlat6.x = dot(u_xlat6.xyz, u_xlat8.xyz);
					    u_xlat6.x = log2(abs(u_xlat6.x));
					    u_xlat6.x = u_xlat6.x * _FresnelStr;
					    u_xlat6.x = exp2(u_xlat6.x);
					    u_xlat6.x = u_xlat6.x + u_xlat6.x;
					    vs_TEXCOORD4 = min(u_xlat6.x, 1.0);
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat5 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat5;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlat10.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati3].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati3].xy + u_xlat10.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendMul2" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					float u_xlat14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat14 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat2.xyz = vec3(u_xlat14) * u_xlat2.xyz;
					    u_xlat14 = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat3.xyz = vec3(u_xlat14) * in_NORMAL0.xyz;
					    u_xlat2.x = dot(u_xlat3.xyz, u_xlat2.xyz);
					    u_xlat2.x = log2(abs(u_xlat2.x));
					    u_xlat2.x = u_xlat2.x * _FresnelStr;
					    u_xlat2.x = exp2(u_xlat2.x);
					    u_xlat2.x = u_xlat2.x + u_xlat2.x;
					    vs_TEXCOORD4 = min(u_xlat2.x, 1.0);
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat4 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_3_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati1;
					vec4 u_xlat2;
					int u_xlati3;
					float u_xlat4;
					float u_xlat5;
					vec3 u_xlat6;
					vec3 u_xlat8;
					vec2 u_xlat10;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    u_xlat6.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat6.x = inversesqrt(u_xlat6.x);
					    u_xlat6.xyz = u_xlat6.xxx * in_NORMAL0.xyz;
					    u_xlati3 = unity_StereoEyeIndex;
					    u_xlat8.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].yyy;
					    u_xlat8.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].xxx + u_xlat8.xyz;
					    u_xlat8.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].zzz + u_xlat8.xyz;
					    u_xlat8.xyz = u_xlat8.xyz + unity_WorldToObject[3].xyz;
					    u_xlat8.xyz = u_xlat8.xyz + (-in_POSITION0.xyz);
					    u_xlat4 = dot(u_xlat8.xyz, u_xlat8.xyz);
					    u_xlat4 = inversesqrt(u_xlat4);
					    u_xlat8.xyz = u_xlat8.xyz * vec3(u_xlat4);
					    u_xlat6.x = dot(u_xlat6.xyz, u_xlat8.xyz);
					    u_xlat6.x = log2(abs(u_xlat6.x));
					    u_xlat6.x = u_xlat6.x * _FresnelStr;
					    u_xlat6.x = exp2(u_xlat6.x);
					    u_xlat6.x = u_xlat6.x + u_xlat6.x;
					    vs_TEXCOORD4 = min(u_xlat6.x, 1.0);
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat5 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat5;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlat10.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati3].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati3].xy + u_xlat10.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendMul2" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					float u_xlat14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat14 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat2.xyz = vec3(u_xlat14) * u_xlat2.xyz;
					    u_xlat14 = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat3.xyz = vec3(u_xlat14) * in_NORMAL0.xyz;
					    u_xlat2.x = dot(u_xlat3.xyz, u_xlat2.xyz);
					    u_xlat2.x = log2(abs(u_xlat2.x));
					    u_xlat2.x = u_xlat2.x * _FresnelStr;
					    u_xlat2.x = exp2(u_xlat2.x);
					    u_xlat2.x = u_xlat2.x + u_xlat2.x;
					    vs_TEXCOORD4 = min(u_xlat2.x, 1.0);
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat4 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_3_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati1;
					vec4 u_xlat2;
					int u_xlati3;
					float u_xlat4;
					float u_xlat5;
					vec3 u_xlat6;
					vec3 u_xlat8;
					vec2 u_xlat10;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    u_xlat6.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat6.x = inversesqrt(u_xlat6.x);
					    u_xlat6.xyz = u_xlat6.xxx * in_NORMAL0.xyz;
					    u_xlati3 = unity_StereoEyeIndex;
					    u_xlat8.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].yyy;
					    u_xlat8.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].xxx + u_xlat8.xyz;
					    u_xlat8.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].zzz + u_xlat8.xyz;
					    u_xlat8.xyz = u_xlat8.xyz + unity_WorldToObject[3].xyz;
					    u_xlat8.xyz = u_xlat8.xyz + (-in_POSITION0.xyz);
					    u_xlat4 = dot(u_xlat8.xyz, u_xlat8.xyz);
					    u_xlat4 = inversesqrt(u_xlat4);
					    u_xlat8.xyz = u_xlat8.xyz * vec3(u_xlat4);
					    u_xlat6.x = dot(u_xlat6.xyz, u_xlat8.xyz);
					    u_xlat6.x = log2(abs(u_xlat6.x));
					    u_xlat6.x = u_xlat6.x * _FresnelStr;
					    u_xlat6.x = exp2(u_xlat6.x);
					    u_xlat6.x = u_xlat6.x + u_xlat6.x;
					    vs_TEXCOORD4 = min(u_xlat6.x, 1.0);
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat5 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat5;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlat10.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati3].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati3].xy + u_xlat10.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendMul2" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					float u_xlat14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat14 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat2.xyz = vec3(u_xlat14) * u_xlat2.xyz;
					    u_xlat14 = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat3.xyz = vec3(u_xlat14) * in_NORMAL0.xyz;
					    u_xlat2.x = dot(u_xlat3.xyz, u_xlat2.xyz);
					    u_xlat2.x = log2(abs(u_xlat2.x));
					    u_xlat2.x = u_xlat2.x * _FresnelStr;
					    u_xlat2.x = exp2(u_xlat2.x);
					    u_xlat2.x = u_xlat2.x + u_xlat2.x;
					    vs_TEXCOORD4 = min(u_xlat2.x, 1.0);
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat4 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_3_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati1;
					vec4 u_xlat2;
					int u_xlati3;
					float u_xlat4;
					float u_xlat5;
					vec3 u_xlat6;
					vec3 u_xlat8;
					vec2 u_xlat10;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    u_xlat6.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat6.x = inversesqrt(u_xlat6.x);
					    u_xlat6.xyz = u_xlat6.xxx * in_NORMAL0.xyz;
					    u_xlati3 = unity_StereoEyeIndex;
					    u_xlat8.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].yyy;
					    u_xlat8.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].xxx + u_xlat8.xyz;
					    u_xlat8.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].zzz + u_xlat8.xyz;
					    u_xlat8.xyz = u_xlat8.xyz + unity_WorldToObject[3].xyz;
					    u_xlat8.xyz = u_xlat8.xyz + (-in_POSITION0.xyz);
					    u_xlat4 = dot(u_xlat8.xyz, u_xlat8.xyz);
					    u_xlat4 = inversesqrt(u_xlat4);
					    u_xlat8.xyz = u_xlat8.xyz * vec3(u_xlat4);
					    u_xlat6.x = dot(u_xlat6.xyz, u_xlat8.xyz);
					    u_xlat6.x = log2(abs(u_xlat6.x));
					    u_xlat6.x = u_xlat6.x * _FresnelStr;
					    u_xlat6.x = exp2(u_xlat6.x);
					    u_xlat6.x = u_xlat6.x + u_xlat6.x;
					    vs_TEXCOORD4 = min(u_xlat6.x, 1.0);
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat5 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat5;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlat10.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati3].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati3].xy + u_xlat10.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendMul2" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					float u_xlat14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat14 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat2.xyz = vec3(u_xlat14) * u_xlat2.xyz;
					    u_xlat14 = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat3.xyz = vec3(u_xlat14) * in_NORMAL0.xyz;
					    u_xlat2.x = dot(u_xlat3.xyz, u_xlat2.xyz);
					    u_xlat2.x = log2(abs(u_xlat2.x));
					    u_xlat2.x = u_xlat2.x * _FresnelStr;
					    u_xlat2.x = exp2(u_xlat2.x);
					    u_xlat2.x = u_xlat2.x + u_xlat2.x;
					    vs_TEXCOORD4 = min(u_xlat2.x, 1.0);
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat4 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_3_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati1;
					vec4 u_xlat2;
					int u_xlati3;
					float u_xlat4;
					float u_xlat5;
					vec3 u_xlat6;
					vec3 u_xlat8;
					vec2 u_xlat10;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    u_xlat6.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat6.x = inversesqrt(u_xlat6.x);
					    u_xlat6.xyz = u_xlat6.xxx * in_NORMAL0.xyz;
					    u_xlati3 = unity_StereoEyeIndex;
					    u_xlat8.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].yyy;
					    u_xlat8.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].xxx + u_xlat8.xyz;
					    u_xlat8.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].zzz + u_xlat8.xyz;
					    u_xlat8.xyz = u_xlat8.xyz + unity_WorldToObject[3].xyz;
					    u_xlat8.xyz = u_xlat8.xyz + (-in_POSITION0.xyz);
					    u_xlat4 = dot(u_xlat8.xyz, u_xlat8.xyz);
					    u_xlat4 = inversesqrt(u_xlat4);
					    u_xlat8.xyz = u_xlat8.xyz * vec3(u_xlat4);
					    u_xlat6.x = dot(u_xlat6.xyz, u_xlat8.xyz);
					    u_xlat6.x = log2(abs(u_xlat6.x));
					    u_xlat6.x = u_xlat6.x * _FresnelStr;
					    u_xlat6.x = exp2(u_xlat6.x);
					    u_xlat6.x = u_xlat6.x + u_xlat6.x;
					    vs_TEXCOORD4 = min(u_xlat6.x, 1.0);
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat5 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat5;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlat10.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati3].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati3].xy + u_xlat10.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendMul2" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					float u_xlat14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat14 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat2.xyz = vec3(u_xlat14) * u_xlat2.xyz;
					    u_xlat14 = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat3.xyz = vec3(u_xlat14) * in_NORMAL0.xyz;
					    u_xlat2.x = dot(u_xlat3.xyz, u_xlat2.xyz);
					    u_xlat2.x = log2(abs(u_xlat2.x));
					    u_xlat2.x = u_xlat2.x * _FresnelStr;
					    u_xlat2.x = exp2(u_xlat2.x);
					    u_xlat2.x = u_xlat2.x + u_xlat2.x;
					    vs_TEXCOORD4 = min(u_xlat2.x, 1.0);
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat4 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_3_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati1;
					vec4 u_xlat2;
					int u_xlati3;
					float u_xlat4;
					float u_xlat5;
					vec3 u_xlat6;
					vec3 u_xlat8;
					vec2 u_xlat10;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    u_xlat6.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat6.x = inversesqrt(u_xlat6.x);
					    u_xlat6.xyz = u_xlat6.xxx * in_NORMAL0.xyz;
					    u_xlati3 = unity_StereoEyeIndex;
					    u_xlat8.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].yyy;
					    u_xlat8.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].xxx + u_xlat8.xyz;
					    u_xlat8.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].zzz + u_xlat8.xyz;
					    u_xlat8.xyz = u_xlat8.xyz + unity_WorldToObject[3].xyz;
					    u_xlat8.xyz = u_xlat8.xyz + (-in_POSITION0.xyz);
					    u_xlat4 = dot(u_xlat8.xyz, u_xlat8.xyz);
					    u_xlat4 = inversesqrt(u_xlat4);
					    u_xlat8.xyz = u_xlat8.xyz * vec3(u_xlat4);
					    u_xlat6.x = dot(u_xlat6.xyz, u_xlat8.xyz);
					    u_xlat6.x = log2(abs(u_xlat6.x));
					    u_xlat6.x = u_xlat6.x * _FresnelStr;
					    u_xlat6.x = exp2(u_xlat6.x);
					    u_xlat6.x = u_xlat6.x + u_xlat6.x;
					    vs_TEXCOORD4 = min(u_xlat6.x, 1.0);
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat5 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat5;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlat10.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati3].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati3].xy + u_xlat10.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendMul2" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat2 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat2;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec2 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					float u_xlat3;
					int u_xlati6;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat3 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat3;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlati6 = unity_StereoEyeIndex;
					    u_xlat1.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati6].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati6].xy + u_xlat1.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendMul2" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat2 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat2;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec2 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					float u_xlat3;
					int u_xlati6;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat3 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat3;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlati6 = unity_StereoEyeIndex;
					    u_xlat1.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati6].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati6].xy + u_xlat1.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendMul2" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat2 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat2;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec2 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					float u_xlat3;
					int u_xlati6;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat3 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat3;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlati6 = unity_StereoEyeIndex;
					    u_xlat1.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati6].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati6].xy + u_xlat1.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendMul2" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat2 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat2;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec2 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					float u_xlat3;
					int u_xlati6;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat3 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat3;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlati6 = unity_StereoEyeIndex;
					    u_xlat1.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati6].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati6].xy + u_xlat1.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendMul2" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat2 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat2;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec2 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					float u_xlat3;
					int u_xlati6;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat3 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat3;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlati6 = unity_StereoEyeIndex;
					    u_xlat1.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati6].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati6].xy + u_xlat1.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendMul2" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat2 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat2;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec2 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					float u_xlat3;
					int u_xlati6;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat3 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat3;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlati6 = unity_StereoEyeIndex;
					    u_xlat1.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati6].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati6].xy + u_xlat1.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendMul2" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat2 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat2;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec2 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					float u_xlat3;
					int u_xlati6;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat3 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat3;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlati6 = unity_StereoEyeIndex;
					    u_xlat1.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati6].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati6].xy + u_xlat1.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendMul2" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat2 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat2;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec2 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					float u_xlat3;
					int u_xlati6;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat3 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat3;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlati6 = unity_StereoEyeIndex;
					    u_xlat1.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati6].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati6].xy + u_xlat1.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendMul2" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat2 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat2;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec2 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					float u_xlat3;
					int u_xlati6;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat3 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat3;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlati6 = unity_StereoEyeIndex;
					    u_xlat1.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati6].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati6].xy + u_xlat1.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendMul2" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat2 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat2;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec2 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					float u_xlat3;
					int u_xlati6;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat3 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat3;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlati6 = unity_StereoEyeIndex;
					    u_xlat1.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati6].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati6].xy + u_xlat1.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendMul2" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat2 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat2;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec2 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					float u_xlat3;
					int u_xlati6;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat3 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat3;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlati6 = unity_StereoEyeIndex;
					    u_xlat1.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati6].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati6].xy + u_xlat1.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendMul2" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat2 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat2;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec2 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					float u_xlat3;
					int u_xlati6;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat3 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat3;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlati6 = unity_StereoEyeIndex;
					    u_xlat1.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati6].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati6].xy + u_xlat1.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendMul2" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat2 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat2;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec2 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					float u_xlat3;
					int u_xlati6;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat3 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat3;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlati6 = unity_StereoEyeIndex;
					    u_xlat1.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati6].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati6].xy + u_xlat1.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendMul2" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat2 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat2;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec2 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					float u_xlat3;
					int u_xlati6;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat3 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat3;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlati6 = unity_StereoEyeIndex;
					    u_xlat1.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati6].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati6].xy + u_xlat1.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendMul2" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat2 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat2;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec2 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					float u_xlat3;
					int u_xlati6;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat3 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat3;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlati6 = unity_StereoEyeIndex;
					    u_xlat1.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati6].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati6].xy + u_xlat1.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendMul2" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat2 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat2;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec2 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					float u_xlat3;
					int u_xlati6;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat3 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat3;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlati6 = unity_StereoEyeIndex;
					    u_xlat1.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati6].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati6].xy + u_xlat1.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendMul2" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					float u_xlat9;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat9 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat9 = inversesqrt(u_xlat9);
					    u_xlat2.xyz = vec3(u_xlat9) * u_xlat2.xyz;
					    u_xlat9 = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat9 = inversesqrt(u_xlat9);
					    u_xlat3.xyz = vec3(u_xlat9) * in_NORMAL0.xyz;
					    u_xlat9 = dot(u_xlat3.xyz, u_xlat2.xyz);
					    u_xlat9 = log2(abs(u_xlat9));
					    u_xlat9 = u_xlat9 * _FresnelStr;
					    u_xlat9 = exp2(u_xlat9);
					    u_xlat9 = u_xlat9 + u_xlat9;
					    vs_TEXCOORD4 = min(u_xlat9, 1.0);
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat4 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_3_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					vec3 u_xlat5;
					vec2 u_xlat8;
					int u_xlati10;
					float u_xlat15;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    u_xlat5.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat5.x = inversesqrt(u_xlat5.x);
					    u_xlat5.xyz = u_xlat5.xxx * in_NORMAL0.xyz;
					    u_xlati10 = unity_StereoEyeIndex;
					    u_xlat3.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati10].yyy;
					    u_xlat3.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati10].xxx + u_xlat3.xyz;
					    u_xlat3.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati10].zzz + u_xlat3.xyz;
					    u_xlat3.xyz = u_xlat3.xyz + unity_WorldToObject[3].xyz;
					    u_xlat3.xyz = u_xlat3.xyz + (-in_POSITION0.xyz);
					    u_xlat15 = dot(u_xlat3.xyz, u_xlat3.xyz);
					    u_xlat15 = inversesqrt(u_xlat15);
					    u_xlat3.xyz = vec3(u_xlat15) * u_xlat3.xyz;
					    u_xlat5.x = dot(u_xlat5.xyz, u_xlat3.xyz);
					    u_xlat5.x = log2(abs(u_xlat5.x));
					    u_xlat5.x = u_xlat5.x * _FresnelStr;
					    u_xlat5.x = exp2(u_xlat5.x);
					    u_xlat5.x = u_xlat5.x + u_xlat5.x;
					    vs_TEXCOORD4 = min(u_xlat5.x, 1.0);
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat4 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlat8.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati10].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati10].xy + u_xlat8.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendMul2" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					float u_xlat9;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat9 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat9 = inversesqrt(u_xlat9);
					    u_xlat2.xyz = vec3(u_xlat9) * u_xlat2.xyz;
					    u_xlat9 = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat9 = inversesqrt(u_xlat9);
					    u_xlat3.xyz = vec3(u_xlat9) * in_NORMAL0.xyz;
					    u_xlat9 = dot(u_xlat3.xyz, u_xlat2.xyz);
					    u_xlat9 = log2(abs(u_xlat9));
					    u_xlat9 = u_xlat9 * _FresnelStr;
					    u_xlat9 = exp2(u_xlat9);
					    u_xlat9 = u_xlat9 + u_xlat9;
					    vs_TEXCOORD4 = min(u_xlat9, 1.0);
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat4 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_3_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					vec3 u_xlat5;
					vec2 u_xlat8;
					int u_xlati10;
					float u_xlat15;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    u_xlat5.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat5.x = inversesqrt(u_xlat5.x);
					    u_xlat5.xyz = u_xlat5.xxx * in_NORMAL0.xyz;
					    u_xlati10 = unity_StereoEyeIndex;
					    u_xlat3.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati10].yyy;
					    u_xlat3.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati10].xxx + u_xlat3.xyz;
					    u_xlat3.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati10].zzz + u_xlat3.xyz;
					    u_xlat3.xyz = u_xlat3.xyz + unity_WorldToObject[3].xyz;
					    u_xlat3.xyz = u_xlat3.xyz + (-in_POSITION0.xyz);
					    u_xlat15 = dot(u_xlat3.xyz, u_xlat3.xyz);
					    u_xlat15 = inversesqrt(u_xlat15);
					    u_xlat3.xyz = vec3(u_xlat15) * u_xlat3.xyz;
					    u_xlat5.x = dot(u_xlat5.xyz, u_xlat3.xyz);
					    u_xlat5.x = log2(abs(u_xlat5.x));
					    u_xlat5.x = u_xlat5.x * _FresnelStr;
					    u_xlat5.x = exp2(u_xlat5.x);
					    u_xlat5.x = u_xlat5.x + u_xlat5.x;
					    vs_TEXCOORD4 = min(u_xlat5.x, 1.0);
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat4 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlat8.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati10].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati10].xy + u_xlat8.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendMul2" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					float u_xlat14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat14 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat2.xyz = vec3(u_xlat14) * u_xlat2.xyz;
					    u_xlat14 = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat3.xyz = vec3(u_xlat14) * in_NORMAL0.xyz;
					    u_xlat2.x = dot(u_xlat3.xyz, u_xlat2.xyz);
					    u_xlat2.x = log2(abs(u_xlat2.x));
					    u_xlat2.x = u_xlat2.x * _FresnelStr;
					    u_xlat2.x = exp2(u_xlat2.x);
					    u_xlat2.x = u_xlat2.x + u_xlat2.x;
					    vs_TEXCOORD4 = min(u_xlat2.x, 1.0);
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat4 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_3_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati1;
					vec4 u_xlat2;
					int u_xlati3;
					float u_xlat4;
					float u_xlat5;
					vec3 u_xlat6;
					vec3 u_xlat8;
					vec2 u_xlat10;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    u_xlat6.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat6.x = inversesqrt(u_xlat6.x);
					    u_xlat6.xyz = u_xlat6.xxx * in_NORMAL0.xyz;
					    u_xlati3 = unity_StereoEyeIndex;
					    u_xlat8.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].yyy;
					    u_xlat8.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].xxx + u_xlat8.xyz;
					    u_xlat8.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].zzz + u_xlat8.xyz;
					    u_xlat8.xyz = u_xlat8.xyz + unity_WorldToObject[3].xyz;
					    u_xlat8.xyz = u_xlat8.xyz + (-in_POSITION0.xyz);
					    u_xlat4 = dot(u_xlat8.xyz, u_xlat8.xyz);
					    u_xlat4 = inversesqrt(u_xlat4);
					    u_xlat8.xyz = u_xlat8.xyz * vec3(u_xlat4);
					    u_xlat6.x = dot(u_xlat6.xyz, u_xlat8.xyz);
					    u_xlat6.x = log2(abs(u_xlat6.x));
					    u_xlat6.x = u_xlat6.x * _FresnelStr;
					    u_xlat6.x = exp2(u_xlat6.x);
					    u_xlat6.x = u_xlat6.x + u_xlat6.x;
					    vs_TEXCOORD4 = min(u_xlat6.x, 1.0);
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat5 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat5;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlat10.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati3].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati3].xy + u_xlat10.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendMul2" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					float u_xlat14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat14 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat2.xyz = vec3(u_xlat14) * u_xlat2.xyz;
					    u_xlat14 = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat3.xyz = vec3(u_xlat14) * in_NORMAL0.xyz;
					    u_xlat2.x = dot(u_xlat3.xyz, u_xlat2.xyz);
					    u_xlat2.x = log2(abs(u_xlat2.x));
					    u_xlat2.x = u_xlat2.x * _FresnelStr;
					    u_xlat2.x = exp2(u_xlat2.x);
					    u_xlat2.x = u_xlat2.x + u_xlat2.x;
					    vs_TEXCOORD4 = min(u_xlat2.x, 1.0);
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat4 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_3_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati1;
					vec4 u_xlat2;
					int u_xlati3;
					float u_xlat4;
					float u_xlat5;
					vec3 u_xlat6;
					vec3 u_xlat8;
					vec2 u_xlat10;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    u_xlat6.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat6.x = inversesqrt(u_xlat6.x);
					    u_xlat6.xyz = u_xlat6.xxx * in_NORMAL0.xyz;
					    u_xlati3 = unity_StereoEyeIndex;
					    u_xlat8.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].yyy;
					    u_xlat8.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].xxx + u_xlat8.xyz;
					    u_xlat8.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].zzz + u_xlat8.xyz;
					    u_xlat8.xyz = u_xlat8.xyz + unity_WorldToObject[3].xyz;
					    u_xlat8.xyz = u_xlat8.xyz + (-in_POSITION0.xyz);
					    u_xlat4 = dot(u_xlat8.xyz, u_xlat8.xyz);
					    u_xlat4 = inversesqrt(u_xlat4);
					    u_xlat8.xyz = u_xlat8.xyz * vec3(u_xlat4);
					    u_xlat6.x = dot(u_xlat6.xyz, u_xlat8.xyz);
					    u_xlat6.x = log2(abs(u_xlat6.x));
					    u_xlat6.x = u_xlat6.x * _FresnelStr;
					    u_xlat6.x = exp2(u_xlat6.x);
					    u_xlat6.x = u_xlat6.x + u_xlat6.x;
					    vs_TEXCOORD4 = min(u_xlat6.x, 1.0);
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat5 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat5;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlat10.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati3].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati3].xy + u_xlat10.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendMul2" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					float u_xlat14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat14 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat2.xyz = vec3(u_xlat14) * u_xlat2.xyz;
					    u_xlat14 = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat3.xyz = vec3(u_xlat14) * in_NORMAL0.xyz;
					    u_xlat2.x = dot(u_xlat3.xyz, u_xlat2.xyz);
					    u_xlat2.x = log2(abs(u_xlat2.x));
					    u_xlat2.x = u_xlat2.x * _FresnelStr;
					    u_xlat2.x = exp2(u_xlat2.x);
					    u_xlat2.x = u_xlat2.x + u_xlat2.x;
					    vs_TEXCOORD4 = min(u_xlat2.x, 1.0);
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat4 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_3_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati1;
					vec4 u_xlat2;
					int u_xlati3;
					float u_xlat4;
					float u_xlat5;
					vec3 u_xlat6;
					vec3 u_xlat8;
					vec2 u_xlat10;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    u_xlat6.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat6.x = inversesqrt(u_xlat6.x);
					    u_xlat6.xyz = u_xlat6.xxx * in_NORMAL0.xyz;
					    u_xlati3 = unity_StereoEyeIndex;
					    u_xlat8.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].yyy;
					    u_xlat8.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].xxx + u_xlat8.xyz;
					    u_xlat8.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].zzz + u_xlat8.xyz;
					    u_xlat8.xyz = u_xlat8.xyz + unity_WorldToObject[3].xyz;
					    u_xlat8.xyz = u_xlat8.xyz + (-in_POSITION0.xyz);
					    u_xlat4 = dot(u_xlat8.xyz, u_xlat8.xyz);
					    u_xlat4 = inversesqrt(u_xlat4);
					    u_xlat8.xyz = u_xlat8.xyz * vec3(u_xlat4);
					    u_xlat6.x = dot(u_xlat6.xyz, u_xlat8.xyz);
					    u_xlat6.x = log2(abs(u_xlat6.x));
					    u_xlat6.x = u_xlat6.x * _FresnelStr;
					    u_xlat6.x = exp2(u_xlat6.x);
					    u_xlat6.x = u_xlat6.x + u_xlat6.x;
					    vs_TEXCOORD4 = min(u_xlat6.x, 1.0);
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat5 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat5;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlat10.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati3].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati3].xy + u_xlat10.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendMul2" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					float u_xlat14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat14 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat2.xyz = vec3(u_xlat14) * u_xlat2.xyz;
					    u_xlat14 = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat3.xyz = vec3(u_xlat14) * in_NORMAL0.xyz;
					    u_xlat2.x = dot(u_xlat3.xyz, u_xlat2.xyz);
					    u_xlat2.x = log2(abs(u_xlat2.x));
					    u_xlat2.x = u_xlat2.x * _FresnelStr;
					    u_xlat2.x = exp2(u_xlat2.x);
					    u_xlat2.x = u_xlat2.x + u_xlat2.x;
					    vs_TEXCOORD4 = min(u_xlat2.x, 1.0);
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat4 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_3_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati1;
					vec4 u_xlat2;
					int u_xlati3;
					float u_xlat4;
					float u_xlat5;
					vec3 u_xlat6;
					vec3 u_xlat8;
					vec2 u_xlat10;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    u_xlat6.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat6.x = inversesqrt(u_xlat6.x);
					    u_xlat6.xyz = u_xlat6.xxx * in_NORMAL0.xyz;
					    u_xlati3 = unity_StereoEyeIndex;
					    u_xlat8.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].yyy;
					    u_xlat8.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].xxx + u_xlat8.xyz;
					    u_xlat8.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].zzz + u_xlat8.xyz;
					    u_xlat8.xyz = u_xlat8.xyz + unity_WorldToObject[3].xyz;
					    u_xlat8.xyz = u_xlat8.xyz + (-in_POSITION0.xyz);
					    u_xlat4 = dot(u_xlat8.xyz, u_xlat8.xyz);
					    u_xlat4 = inversesqrt(u_xlat4);
					    u_xlat8.xyz = u_xlat8.xyz * vec3(u_xlat4);
					    u_xlat6.x = dot(u_xlat6.xyz, u_xlat8.xyz);
					    u_xlat6.x = log2(abs(u_xlat6.x));
					    u_xlat6.x = u_xlat6.x * _FresnelStr;
					    u_xlat6.x = exp2(u_xlat6.x);
					    u_xlat6.x = u_xlat6.x + u_xlat6.x;
					    vs_TEXCOORD4 = min(u_xlat6.x, 1.0);
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat5 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat5;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlat10.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati3].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati3].xy + u_xlat10.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendMul2" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					float u_xlat14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat14 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat2.xyz = vec3(u_xlat14) * u_xlat2.xyz;
					    u_xlat14 = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat3.xyz = vec3(u_xlat14) * in_NORMAL0.xyz;
					    u_xlat2.x = dot(u_xlat3.xyz, u_xlat2.xyz);
					    u_xlat2.x = log2(abs(u_xlat2.x));
					    u_xlat2.x = u_xlat2.x * _FresnelStr;
					    u_xlat2.x = exp2(u_xlat2.x);
					    u_xlat2.x = u_xlat2.x + u_xlat2.x;
					    vs_TEXCOORD4 = min(u_xlat2.x, 1.0);
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat4 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_3_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati1;
					vec4 u_xlat2;
					int u_xlati3;
					float u_xlat4;
					float u_xlat5;
					vec3 u_xlat6;
					vec3 u_xlat8;
					vec2 u_xlat10;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    u_xlat6.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat6.x = inversesqrt(u_xlat6.x);
					    u_xlat6.xyz = u_xlat6.xxx * in_NORMAL0.xyz;
					    u_xlati3 = unity_StereoEyeIndex;
					    u_xlat8.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].yyy;
					    u_xlat8.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].xxx + u_xlat8.xyz;
					    u_xlat8.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].zzz + u_xlat8.xyz;
					    u_xlat8.xyz = u_xlat8.xyz + unity_WorldToObject[3].xyz;
					    u_xlat8.xyz = u_xlat8.xyz + (-in_POSITION0.xyz);
					    u_xlat4 = dot(u_xlat8.xyz, u_xlat8.xyz);
					    u_xlat4 = inversesqrt(u_xlat4);
					    u_xlat8.xyz = u_xlat8.xyz * vec3(u_xlat4);
					    u_xlat6.x = dot(u_xlat6.xyz, u_xlat8.xyz);
					    u_xlat6.x = log2(abs(u_xlat6.x));
					    u_xlat6.x = u_xlat6.x * _FresnelStr;
					    u_xlat6.x = exp2(u_xlat6.x);
					    u_xlat6.x = u_xlat6.x + u_xlat6.x;
					    vs_TEXCOORD4 = min(u_xlat6.x, 1.0);
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat5 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat5;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlat10.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati3].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati3].xy + u_xlat10.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendMul2" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					float u_xlat14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat14 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat2.xyz = vec3(u_xlat14) * u_xlat2.xyz;
					    u_xlat14 = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat3.xyz = vec3(u_xlat14) * in_NORMAL0.xyz;
					    u_xlat2.x = dot(u_xlat3.xyz, u_xlat2.xyz);
					    u_xlat2.x = log2(abs(u_xlat2.x));
					    u_xlat2.x = u_xlat2.x * _FresnelStr;
					    u_xlat2.x = exp2(u_xlat2.x);
					    u_xlat2.x = u_xlat2.x + u_xlat2.x;
					    vs_TEXCOORD4 = min(u_xlat2.x, 1.0);
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat4 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_3_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati1;
					vec4 u_xlat2;
					int u_xlati3;
					float u_xlat4;
					float u_xlat5;
					vec3 u_xlat6;
					vec3 u_xlat8;
					vec2 u_xlat10;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    u_xlat6.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat6.x = inversesqrt(u_xlat6.x);
					    u_xlat6.xyz = u_xlat6.xxx * in_NORMAL0.xyz;
					    u_xlati3 = unity_StereoEyeIndex;
					    u_xlat8.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].yyy;
					    u_xlat8.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].xxx + u_xlat8.xyz;
					    u_xlat8.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].zzz + u_xlat8.xyz;
					    u_xlat8.xyz = u_xlat8.xyz + unity_WorldToObject[3].xyz;
					    u_xlat8.xyz = u_xlat8.xyz + (-in_POSITION0.xyz);
					    u_xlat4 = dot(u_xlat8.xyz, u_xlat8.xyz);
					    u_xlat4 = inversesqrt(u_xlat4);
					    u_xlat8.xyz = u_xlat8.xyz * vec3(u_xlat4);
					    u_xlat6.x = dot(u_xlat6.xyz, u_xlat8.xyz);
					    u_xlat6.x = log2(abs(u_xlat6.x));
					    u_xlat6.x = u_xlat6.x * _FresnelStr;
					    u_xlat6.x = exp2(u_xlat6.x);
					    u_xlat6.x = u_xlat6.x + u_xlat6.x;
					    vs_TEXCOORD4 = min(u_xlat6.x, 1.0);
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat5 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat5;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlat10.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati3].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati3].xy + u_xlat10.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendMul2" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					float u_xlat9;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat9 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat9 = inversesqrt(u_xlat9);
					    u_xlat2.xyz = vec3(u_xlat9) * u_xlat2.xyz;
					    u_xlat9 = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat9 = inversesqrt(u_xlat9);
					    u_xlat3.xyz = vec3(u_xlat9) * in_NORMAL0.xyz;
					    u_xlat9 = dot(u_xlat3.xyz, u_xlat2.xyz);
					    u_xlat9 = log2(abs(u_xlat9));
					    u_xlat9 = u_xlat9 * _FresnelStr;
					    u_xlat9 = exp2(u_xlat9);
					    u_xlat9 = u_xlat9 + u_xlat9;
					    vs_TEXCOORD4 = min(u_xlat9, 1.0);
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat4 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_3_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					vec3 u_xlat5;
					vec2 u_xlat8;
					int u_xlati10;
					float u_xlat15;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    u_xlat5.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat5.x = inversesqrt(u_xlat5.x);
					    u_xlat5.xyz = u_xlat5.xxx * in_NORMAL0.xyz;
					    u_xlati10 = unity_StereoEyeIndex;
					    u_xlat3.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati10].yyy;
					    u_xlat3.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati10].xxx + u_xlat3.xyz;
					    u_xlat3.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati10].zzz + u_xlat3.xyz;
					    u_xlat3.xyz = u_xlat3.xyz + unity_WorldToObject[3].xyz;
					    u_xlat3.xyz = u_xlat3.xyz + (-in_POSITION0.xyz);
					    u_xlat15 = dot(u_xlat3.xyz, u_xlat3.xyz);
					    u_xlat15 = inversesqrt(u_xlat15);
					    u_xlat3.xyz = vec3(u_xlat15) * u_xlat3.xyz;
					    u_xlat5.x = dot(u_xlat5.xyz, u_xlat3.xyz);
					    u_xlat5.x = log2(abs(u_xlat5.x));
					    u_xlat5.x = u_xlat5.x * _FresnelStr;
					    u_xlat5.x = exp2(u_xlat5.x);
					    u_xlat5.x = u_xlat5.x + u_xlat5.x;
					    vs_TEXCOORD4 = min(u_xlat5.x, 1.0);
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat4 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlat8.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati10].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati10].xy + u_xlat8.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendMul2" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					float u_xlat9;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat9 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat9 = inversesqrt(u_xlat9);
					    u_xlat2.xyz = vec3(u_xlat9) * u_xlat2.xyz;
					    u_xlat9 = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat9 = inversesqrt(u_xlat9);
					    u_xlat3.xyz = vec3(u_xlat9) * in_NORMAL0.xyz;
					    u_xlat9 = dot(u_xlat3.xyz, u_xlat2.xyz);
					    u_xlat9 = log2(abs(u_xlat9));
					    u_xlat9 = u_xlat9 * _FresnelStr;
					    u_xlat9 = exp2(u_xlat9);
					    u_xlat9 = u_xlat9 + u_xlat9;
					    vs_TEXCOORD4 = min(u_xlat9, 1.0);
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat4 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_3_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					vec3 u_xlat5;
					vec2 u_xlat8;
					int u_xlati10;
					float u_xlat15;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    u_xlat5.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat5.x = inversesqrt(u_xlat5.x);
					    u_xlat5.xyz = u_xlat5.xxx * in_NORMAL0.xyz;
					    u_xlati10 = unity_StereoEyeIndex;
					    u_xlat3.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati10].yyy;
					    u_xlat3.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati10].xxx + u_xlat3.xyz;
					    u_xlat3.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati10].zzz + u_xlat3.xyz;
					    u_xlat3.xyz = u_xlat3.xyz + unity_WorldToObject[3].xyz;
					    u_xlat3.xyz = u_xlat3.xyz + (-in_POSITION0.xyz);
					    u_xlat15 = dot(u_xlat3.xyz, u_xlat3.xyz);
					    u_xlat15 = inversesqrt(u_xlat15);
					    u_xlat3.xyz = vec3(u_xlat15) * u_xlat3.xyz;
					    u_xlat5.x = dot(u_xlat5.xyz, u_xlat3.xyz);
					    u_xlat5.x = log2(abs(u_xlat5.x));
					    u_xlat5.x = u_xlat5.x * _FresnelStr;
					    u_xlat5.x = exp2(u_xlat5.x);
					    u_xlat5.x = u_xlat5.x + u_xlat5.x;
					    vs_TEXCOORD4 = min(u_xlat5.x, 1.0);
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat4 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlat8.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati10].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati10].xy + u_xlat8.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendMul2" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					float u_xlat14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat14 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat2.xyz = vec3(u_xlat14) * u_xlat2.xyz;
					    u_xlat14 = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat3.xyz = vec3(u_xlat14) * in_NORMAL0.xyz;
					    u_xlat2.x = dot(u_xlat3.xyz, u_xlat2.xyz);
					    u_xlat2.x = log2(abs(u_xlat2.x));
					    u_xlat2.x = u_xlat2.x * _FresnelStr;
					    u_xlat2.x = exp2(u_xlat2.x);
					    u_xlat2.x = u_xlat2.x + u_xlat2.x;
					    vs_TEXCOORD4 = min(u_xlat2.x, 1.0);
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat4 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_3_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati1;
					vec4 u_xlat2;
					int u_xlati3;
					float u_xlat4;
					float u_xlat5;
					vec3 u_xlat6;
					vec3 u_xlat8;
					vec2 u_xlat10;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    u_xlat6.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat6.x = inversesqrt(u_xlat6.x);
					    u_xlat6.xyz = u_xlat6.xxx * in_NORMAL0.xyz;
					    u_xlati3 = unity_StereoEyeIndex;
					    u_xlat8.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].yyy;
					    u_xlat8.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].xxx + u_xlat8.xyz;
					    u_xlat8.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].zzz + u_xlat8.xyz;
					    u_xlat8.xyz = u_xlat8.xyz + unity_WorldToObject[3].xyz;
					    u_xlat8.xyz = u_xlat8.xyz + (-in_POSITION0.xyz);
					    u_xlat4 = dot(u_xlat8.xyz, u_xlat8.xyz);
					    u_xlat4 = inversesqrt(u_xlat4);
					    u_xlat8.xyz = u_xlat8.xyz * vec3(u_xlat4);
					    u_xlat6.x = dot(u_xlat6.xyz, u_xlat8.xyz);
					    u_xlat6.x = log2(abs(u_xlat6.x));
					    u_xlat6.x = u_xlat6.x * _FresnelStr;
					    u_xlat6.x = exp2(u_xlat6.x);
					    u_xlat6.x = u_xlat6.x + u_xlat6.x;
					    vs_TEXCOORD4 = min(u_xlat6.x, 1.0);
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat5 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat5;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlat10.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati3].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati3].xy + u_xlat10.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendMul2" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					float u_xlat14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat14 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat2.xyz = vec3(u_xlat14) * u_xlat2.xyz;
					    u_xlat14 = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat3.xyz = vec3(u_xlat14) * in_NORMAL0.xyz;
					    u_xlat2.x = dot(u_xlat3.xyz, u_xlat2.xyz);
					    u_xlat2.x = log2(abs(u_xlat2.x));
					    u_xlat2.x = u_xlat2.x * _FresnelStr;
					    u_xlat2.x = exp2(u_xlat2.x);
					    u_xlat2.x = u_xlat2.x + u_xlat2.x;
					    vs_TEXCOORD4 = min(u_xlat2.x, 1.0);
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat4 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_3_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati1;
					vec4 u_xlat2;
					int u_xlati3;
					float u_xlat4;
					float u_xlat5;
					vec3 u_xlat6;
					vec3 u_xlat8;
					vec2 u_xlat10;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    u_xlat6.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat6.x = inversesqrt(u_xlat6.x);
					    u_xlat6.xyz = u_xlat6.xxx * in_NORMAL0.xyz;
					    u_xlati3 = unity_StereoEyeIndex;
					    u_xlat8.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].yyy;
					    u_xlat8.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].xxx + u_xlat8.xyz;
					    u_xlat8.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].zzz + u_xlat8.xyz;
					    u_xlat8.xyz = u_xlat8.xyz + unity_WorldToObject[3].xyz;
					    u_xlat8.xyz = u_xlat8.xyz + (-in_POSITION0.xyz);
					    u_xlat4 = dot(u_xlat8.xyz, u_xlat8.xyz);
					    u_xlat4 = inversesqrt(u_xlat4);
					    u_xlat8.xyz = u_xlat8.xyz * vec3(u_xlat4);
					    u_xlat6.x = dot(u_xlat6.xyz, u_xlat8.xyz);
					    u_xlat6.x = log2(abs(u_xlat6.x));
					    u_xlat6.x = u_xlat6.x * _FresnelStr;
					    u_xlat6.x = exp2(u_xlat6.x);
					    u_xlat6.x = u_xlat6.x + u_xlat6.x;
					    vs_TEXCOORD4 = min(u_xlat6.x, 1.0);
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat5 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat5;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlat10.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati3].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati3].xy + u_xlat10.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendMul2" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					float u_xlat14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat14 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat2.xyz = vec3(u_xlat14) * u_xlat2.xyz;
					    u_xlat14 = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat3.xyz = vec3(u_xlat14) * in_NORMAL0.xyz;
					    u_xlat2.x = dot(u_xlat3.xyz, u_xlat2.xyz);
					    u_xlat2.x = log2(abs(u_xlat2.x));
					    u_xlat2.x = u_xlat2.x * _FresnelStr;
					    u_xlat2.x = exp2(u_xlat2.x);
					    u_xlat2.x = u_xlat2.x + u_xlat2.x;
					    vs_TEXCOORD4 = min(u_xlat2.x, 1.0);
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat4 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_3_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati1;
					vec4 u_xlat2;
					int u_xlati3;
					float u_xlat4;
					float u_xlat5;
					vec3 u_xlat6;
					vec3 u_xlat8;
					vec2 u_xlat10;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    u_xlat6.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat6.x = inversesqrt(u_xlat6.x);
					    u_xlat6.xyz = u_xlat6.xxx * in_NORMAL0.xyz;
					    u_xlati3 = unity_StereoEyeIndex;
					    u_xlat8.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].yyy;
					    u_xlat8.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].xxx + u_xlat8.xyz;
					    u_xlat8.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].zzz + u_xlat8.xyz;
					    u_xlat8.xyz = u_xlat8.xyz + unity_WorldToObject[3].xyz;
					    u_xlat8.xyz = u_xlat8.xyz + (-in_POSITION0.xyz);
					    u_xlat4 = dot(u_xlat8.xyz, u_xlat8.xyz);
					    u_xlat4 = inversesqrt(u_xlat4);
					    u_xlat8.xyz = u_xlat8.xyz * vec3(u_xlat4);
					    u_xlat6.x = dot(u_xlat6.xyz, u_xlat8.xyz);
					    u_xlat6.x = log2(abs(u_xlat6.x));
					    u_xlat6.x = u_xlat6.x * _FresnelStr;
					    u_xlat6.x = exp2(u_xlat6.x);
					    u_xlat6.x = u_xlat6.x + u_xlat6.x;
					    vs_TEXCOORD4 = min(u_xlat6.x, 1.0);
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat5 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat5;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlat10.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati3].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati3].xy + u_xlat10.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendMul2" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					float u_xlat14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat14 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat2.xyz = vec3(u_xlat14) * u_xlat2.xyz;
					    u_xlat14 = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat3.xyz = vec3(u_xlat14) * in_NORMAL0.xyz;
					    u_xlat2.x = dot(u_xlat3.xyz, u_xlat2.xyz);
					    u_xlat2.x = log2(abs(u_xlat2.x));
					    u_xlat2.x = u_xlat2.x * _FresnelStr;
					    u_xlat2.x = exp2(u_xlat2.x);
					    u_xlat2.x = u_xlat2.x + u_xlat2.x;
					    vs_TEXCOORD4 = min(u_xlat2.x, 1.0);
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat4 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_3_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati1;
					vec4 u_xlat2;
					int u_xlati3;
					float u_xlat4;
					float u_xlat5;
					vec3 u_xlat6;
					vec3 u_xlat8;
					vec2 u_xlat10;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    u_xlat6.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat6.x = inversesqrt(u_xlat6.x);
					    u_xlat6.xyz = u_xlat6.xxx * in_NORMAL0.xyz;
					    u_xlati3 = unity_StereoEyeIndex;
					    u_xlat8.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].yyy;
					    u_xlat8.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].xxx + u_xlat8.xyz;
					    u_xlat8.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].zzz + u_xlat8.xyz;
					    u_xlat8.xyz = u_xlat8.xyz + unity_WorldToObject[3].xyz;
					    u_xlat8.xyz = u_xlat8.xyz + (-in_POSITION0.xyz);
					    u_xlat4 = dot(u_xlat8.xyz, u_xlat8.xyz);
					    u_xlat4 = inversesqrt(u_xlat4);
					    u_xlat8.xyz = u_xlat8.xyz * vec3(u_xlat4);
					    u_xlat6.x = dot(u_xlat6.xyz, u_xlat8.xyz);
					    u_xlat6.x = log2(abs(u_xlat6.x));
					    u_xlat6.x = u_xlat6.x * _FresnelStr;
					    u_xlat6.x = exp2(u_xlat6.x);
					    u_xlat6.x = u_xlat6.x + u_xlat6.x;
					    vs_TEXCOORD4 = min(u_xlat6.x, 1.0);
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat5 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat5;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlat10.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati3].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati3].xy + u_xlat10.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendMul2" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					float u_xlat14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat14 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat2.xyz = vec3(u_xlat14) * u_xlat2.xyz;
					    u_xlat14 = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat3.xyz = vec3(u_xlat14) * in_NORMAL0.xyz;
					    u_xlat2.x = dot(u_xlat3.xyz, u_xlat2.xyz);
					    u_xlat2.x = log2(abs(u_xlat2.x));
					    u_xlat2.x = u_xlat2.x * _FresnelStr;
					    u_xlat2.x = exp2(u_xlat2.x);
					    u_xlat2.x = u_xlat2.x + u_xlat2.x;
					    vs_TEXCOORD4 = min(u_xlat2.x, 1.0);
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat4 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_3_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati1;
					vec4 u_xlat2;
					int u_xlati3;
					float u_xlat4;
					float u_xlat5;
					vec3 u_xlat6;
					vec3 u_xlat8;
					vec2 u_xlat10;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    u_xlat6.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat6.x = inversesqrt(u_xlat6.x);
					    u_xlat6.xyz = u_xlat6.xxx * in_NORMAL0.xyz;
					    u_xlati3 = unity_StereoEyeIndex;
					    u_xlat8.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].yyy;
					    u_xlat8.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].xxx + u_xlat8.xyz;
					    u_xlat8.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].zzz + u_xlat8.xyz;
					    u_xlat8.xyz = u_xlat8.xyz + unity_WorldToObject[3].xyz;
					    u_xlat8.xyz = u_xlat8.xyz + (-in_POSITION0.xyz);
					    u_xlat4 = dot(u_xlat8.xyz, u_xlat8.xyz);
					    u_xlat4 = inversesqrt(u_xlat4);
					    u_xlat8.xyz = u_xlat8.xyz * vec3(u_xlat4);
					    u_xlat6.x = dot(u_xlat6.xyz, u_xlat8.xyz);
					    u_xlat6.x = log2(abs(u_xlat6.x));
					    u_xlat6.x = u_xlat6.x * _FresnelStr;
					    u_xlat6.x = exp2(u_xlat6.x);
					    u_xlat6.x = u_xlat6.x + u_xlat6.x;
					    vs_TEXCOORD4 = min(u_xlat6.x, 1.0);
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat5 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat5;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlat10.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati3].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati3].xy + u_xlat10.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendMul2" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					float u_xlat14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat14 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat2.xyz = vec3(u_xlat14) * u_xlat2.xyz;
					    u_xlat14 = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat3.xyz = vec3(u_xlat14) * in_NORMAL0.xyz;
					    u_xlat2.x = dot(u_xlat3.xyz, u_xlat2.xyz);
					    u_xlat2.x = log2(abs(u_xlat2.x));
					    u_xlat2.x = u_xlat2.x * _FresnelStr;
					    u_xlat2.x = exp2(u_xlat2.x);
					    u_xlat2.x = u_xlat2.x + u_xlat2.x;
					    vs_TEXCOORD4 = min(u_xlat2.x, 1.0);
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat4 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_3_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati1;
					vec4 u_xlat2;
					int u_xlati3;
					float u_xlat4;
					float u_xlat5;
					vec3 u_xlat6;
					vec3 u_xlat8;
					vec2 u_xlat10;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    u_xlat6.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat6.x = inversesqrt(u_xlat6.x);
					    u_xlat6.xyz = u_xlat6.xxx * in_NORMAL0.xyz;
					    u_xlati3 = unity_StereoEyeIndex;
					    u_xlat8.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].yyy;
					    u_xlat8.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].xxx + u_xlat8.xyz;
					    u_xlat8.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].zzz + u_xlat8.xyz;
					    u_xlat8.xyz = u_xlat8.xyz + unity_WorldToObject[3].xyz;
					    u_xlat8.xyz = u_xlat8.xyz + (-in_POSITION0.xyz);
					    u_xlat4 = dot(u_xlat8.xyz, u_xlat8.xyz);
					    u_xlat4 = inversesqrt(u_xlat4);
					    u_xlat8.xyz = u_xlat8.xyz * vec3(u_xlat4);
					    u_xlat6.x = dot(u_xlat6.xyz, u_xlat8.xyz);
					    u_xlat6.x = log2(abs(u_xlat6.x));
					    u_xlat6.x = u_xlat6.x * _FresnelStr;
					    u_xlat6.x = exp2(u_xlat6.x);
					    u_xlat6.x = u_xlat6.x + u_xlat6.x;
					    vs_TEXCOORD4 = min(u_xlat6.x, 1.0);
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat5 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat5;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlat10.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati3].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati3].xy + u_xlat10.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendMul2" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat2 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat2;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec2 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					float u_xlat3;
					int u_xlati6;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat3 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat3;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlati6 = unity_StereoEyeIndex;
					    u_xlat1.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati6].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati6].xy + u_xlat1.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendMul2" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat2 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat2;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec2 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					float u_xlat3;
					int u_xlati6;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat3 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat3;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlati6 = unity_StereoEyeIndex;
					    u_xlat1.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati6].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati6].xy + u_xlat1.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendMul2" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat2 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat2;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec2 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					float u_xlat3;
					int u_xlati6;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat3 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat3;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlati6 = unity_StereoEyeIndex;
					    u_xlat1.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati6].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati6].xy + u_xlat1.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendMul2" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat2 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat2;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec2 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					float u_xlat3;
					int u_xlati6;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat3 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat3;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlati6 = unity_StereoEyeIndex;
					    u_xlat1.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati6].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati6].xy + u_xlat1.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendMul2" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat2 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat2;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec2 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					float u_xlat3;
					int u_xlati6;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat3 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat3;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlati6 = unity_StereoEyeIndex;
					    u_xlat1.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati6].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati6].xy + u_xlat1.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendMul2" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat2 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat2;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec2 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					float u_xlat3;
					int u_xlati6;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat3 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat3;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlati6 = unity_StereoEyeIndex;
					    u_xlat1.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati6].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati6].xy + u_xlat1.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendMul2" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat2 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat2;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec2 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					float u_xlat3;
					int u_xlati6;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat3 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat3;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlati6 = unity_StereoEyeIndex;
					    u_xlat1.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati6].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati6].xy + u_xlat1.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendMul2" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat2 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat2;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec2 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					float u_xlat3;
					int u_xlati6;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat3 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat3;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlati6 = unity_StereoEyeIndex;
					    u_xlat1.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati6].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati6].xy + u_xlat1.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendMul2" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat2 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat2;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec2 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					float u_xlat3;
					int u_xlati6;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat3 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat3;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlati6 = unity_StereoEyeIndex;
					    u_xlat1.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati6].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati6].xy + u_xlat1.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendMul2" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat2 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat2;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec2 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					float u_xlat3;
					int u_xlati6;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat3 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat3;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlati6 = unity_StereoEyeIndex;
					    u_xlat1.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati6].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati6].xy + u_xlat1.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendMul2" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat2 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat2;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec2 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					float u_xlat3;
					int u_xlati6;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat3 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat3;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlati6 = unity_StereoEyeIndex;
					    u_xlat1.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati6].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati6].xy + u_xlat1.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendMul2" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat2 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat2;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec2 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					float u_xlat3;
					int u_xlati6;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat3 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat3;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlati6 = unity_StereoEyeIndex;
					    u_xlat1.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati6].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati6].xy + u_xlat1.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendMul2" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat2 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat2;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec2 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					float u_xlat3;
					int u_xlati6;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat3 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat3;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlati6 = unity_StereoEyeIndex;
					    u_xlat1.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati6].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati6].xy + u_xlat1.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendMul2" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat2 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat2;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec2 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					float u_xlat3;
					int u_xlati6;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat3 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat3;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlati6 = unity_StereoEyeIndex;
					    u_xlat1.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati6].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati6].xy + u_xlat1.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendMul2" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat2 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat2;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec2 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					float u_xlat3;
					int u_xlati6;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat3 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat3;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlati6 = unity_StereoEyeIndex;
					    u_xlat1.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati6].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati6].xy + u_xlat1.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendMul2" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat2 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat2;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec2 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					float u_xlat3;
					int u_xlati6;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat3 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat3;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlati6 = unity_StereoEyeIndex;
					    u_xlat1.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati6].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati6].xy + u_xlat1.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendMul2" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					float u_xlat9;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat9 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat9 = inversesqrt(u_xlat9);
					    u_xlat2.xyz = vec3(u_xlat9) * u_xlat2.xyz;
					    u_xlat9 = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat9 = inversesqrt(u_xlat9);
					    u_xlat3.xyz = vec3(u_xlat9) * in_NORMAL0.xyz;
					    u_xlat9 = dot(u_xlat3.xyz, u_xlat2.xyz);
					    u_xlat9 = log2(abs(u_xlat9));
					    u_xlat9 = u_xlat9 * _FresnelStr;
					    u_xlat9 = exp2(u_xlat9);
					    u_xlat9 = u_xlat9 + u_xlat9;
					    vs_TEXCOORD4 = min(u_xlat9, 1.0);
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat4 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_3_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					vec3 u_xlat5;
					vec2 u_xlat8;
					int u_xlati10;
					float u_xlat15;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    u_xlat5.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat5.x = inversesqrt(u_xlat5.x);
					    u_xlat5.xyz = u_xlat5.xxx * in_NORMAL0.xyz;
					    u_xlati10 = unity_StereoEyeIndex;
					    u_xlat3.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati10].yyy;
					    u_xlat3.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati10].xxx + u_xlat3.xyz;
					    u_xlat3.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati10].zzz + u_xlat3.xyz;
					    u_xlat3.xyz = u_xlat3.xyz + unity_WorldToObject[3].xyz;
					    u_xlat3.xyz = u_xlat3.xyz + (-in_POSITION0.xyz);
					    u_xlat15 = dot(u_xlat3.xyz, u_xlat3.xyz);
					    u_xlat15 = inversesqrt(u_xlat15);
					    u_xlat3.xyz = vec3(u_xlat15) * u_xlat3.xyz;
					    u_xlat5.x = dot(u_xlat5.xyz, u_xlat3.xyz);
					    u_xlat5.x = log2(abs(u_xlat5.x));
					    u_xlat5.x = u_xlat5.x * _FresnelStr;
					    u_xlat5.x = exp2(u_xlat5.x);
					    u_xlat5.x = u_xlat5.x + u_xlat5.x;
					    vs_TEXCOORD4 = min(u_xlat5.x, 1.0);
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat4 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlat8.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati10].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati10].xy + u_xlat8.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendMul2" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					float u_xlat9;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat9 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat9 = inversesqrt(u_xlat9);
					    u_xlat2.xyz = vec3(u_xlat9) * u_xlat2.xyz;
					    u_xlat9 = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat9 = inversesqrt(u_xlat9);
					    u_xlat3.xyz = vec3(u_xlat9) * in_NORMAL0.xyz;
					    u_xlat9 = dot(u_xlat3.xyz, u_xlat2.xyz);
					    u_xlat9 = log2(abs(u_xlat9));
					    u_xlat9 = u_xlat9 * _FresnelStr;
					    u_xlat9 = exp2(u_xlat9);
					    u_xlat9 = u_xlat9 + u_xlat9;
					    vs_TEXCOORD4 = min(u_xlat9, 1.0);
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat4 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_3_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					vec3 u_xlat5;
					vec2 u_xlat8;
					int u_xlati10;
					float u_xlat15;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    u_xlat5.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat5.x = inversesqrt(u_xlat5.x);
					    u_xlat5.xyz = u_xlat5.xxx * in_NORMAL0.xyz;
					    u_xlati10 = unity_StereoEyeIndex;
					    u_xlat3.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati10].yyy;
					    u_xlat3.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati10].xxx + u_xlat3.xyz;
					    u_xlat3.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati10].zzz + u_xlat3.xyz;
					    u_xlat3.xyz = u_xlat3.xyz + unity_WorldToObject[3].xyz;
					    u_xlat3.xyz = u_xlat3.xyz + (-in_POSITION0.xyz);
					    u_xlat15 = dot(u_xlat3.xyz, u_xlat3.xyz);
					    u_xlat15 = inversesqrt(u_xlat15);
					    u_xlat3.xyz = vec3(u_xlat15) * u_xlat3.xyz;
					    u_xlat5.x = dot(u_xlat5.xyz, u_xlat3.xyz);
					    u_xlat5.x = log2(abs(u_xlat5.x));
					    u_xlat5.x = u_xlat5.x * _FresnelStr;
					    u_xlat5.x = exp2(u_xlat5.x);
					    u_xlat5.x = u_xlat5.x + u_xlat5.x;
					    vs_TEXCOORD4 = min(u_xlat5.x, 1.0);
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat4 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlat8.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati10].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati10].xy + u_xlat8.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendMul2" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					float u_xlat14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat14 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat2.xyz = vec3(u_xlat14) * u_xlat2.xyz;
					    u_xlat14 = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat3.xyz = vec3(u_xlat14) * in_NORMAL0.xyz;
					    u_xlat2.x = dot(u_xlat3.xyz, u_xlat2.xyz);
					    u_xlat2.x = log2(abs(u_xlat2.x));
					    u_xlat2.x = u_xlat2.x * _FresnelStr;
					    u_xlat2.x = exp2(u_xlat2.x);
					    u_xlat2.x = u_xlat2.x + u_xlat2.x;
					    vs_TEXCOORD4 = min(u_xlat2.x, 1.0);
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat4 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_3_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati1;
					vec4 u_xlat2;
					int u_xlati3;
					float u_xlat4;
					float u_xlat5;
					vec3 u_xlat6;
					vec3 u_xlat8;
					vec2 u_xlat10;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    u_xlat6.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat6.x = inversesqrt(u_xlat6.x);
					    u_xlat6.xyz = u_xlat6.xxx * in_NORMAL0.xyz;
					    u_xlati3 = unity_StereoEyeIndex;
					    u_xlat8.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].yyy;
					    u_xlat8.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].xxx + u_xlat8.xyz;
					    u_xlat8.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].zzz + u_xlat8.xyz;
					    u_xlat8.xyz = u_xlat8.xyz + unity_WorldToObject[3].xyz;
					    u_xlat8.xyz = u_xlat8.xyz + (-in_POSITION0.xyz);
					    u_xlat4 = dot(u_xlat8.xyz, u_xlat8.xyz);
					    u_xlat4 = inversesqrt(u_xlat4);
					    u_xlat8.xyz = u_xlat8.xyz * vec3(u_xlat4);
					    u_xlat6.x = dot(u_xlat6.xyz, u_xlat8.xyz);
					    u_xlat6.x = log2(abs(u_xlat6.x));
					    u_xlat6.x = u_xlat6.x * _FresnelStr;
					    u_xlat6.x = exp2(u_xlat6.x);
					    u_xlat6.x = u_xlat6.x + u_xlat6.x;
					    vs_TEXCOORD4 = min(u_xlat6.x, 1.0);
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat5 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat5;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlat10.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati3].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati3].xy + u_xlat10.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendMul2" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					float u_xlat14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat14 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat2.xyz = vec3(u_xlat14) * u_xlat2.xyz;
					    u_xlat14 = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat3.xyz = vec3(u_xlat14) * in_NORMAL0.xyz;
					    u_xlat2.x = dot(u_xlat3.xyz, u_xlat2.xyz);
					    u_xlat2.x = log2(abs(u_xlat2.x));
					    u_xlat2.x = u_xlat2.x * _FresnelStr;
					    u_xlat2.x = exp2(u_xlat2.x);
					    u_xlat2.x = u_xlat2.x + u_xlat2.x;
					    vs_TEXCOORD4 = min(u_xlat2.x, 1.0);
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat4 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_3_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati1;
					vec4 u_xlat2;
					int u_xlati3;
					float u_xlat4;
					float u_xlat5;
					vec3 u_xlat6;
					vec3 u_xlat8;
					vec2 u_xlat10;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    u_xlat6.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat6.x = inversesqrt(u_xlat6.x);
					    u_xlat6.xyz = u_xlat6.xxx * in_NORMAL0.xyz;
					    u_xlati3 = unity_StereoEyeIndex;
					    u_xlat8.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].yyy;
					    u_xlat8.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].xxx + u_xlat8.xyz;
					    u_xlat8.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].zzz + u_xlat8.xyz;
					    u_xlat8.xyz = u_xlat8.xyz + unity_WorldToObject[3].xyz;
					    u_xlat8.xyz = u_xlat8.xyz + (-in_POSITION0.xyz);
					    u_xlat4 = dot(u_xlat8.xyz, u_xlat8.xyz);
					    u_xlat4 = inversesqrt(u_xlat4);
					    u_xlat8.xyz = u_xlat8.xyz * vec3(u_xlat4);
					    u_xlat6.x = dot(u_xlat6.xyz, u_xlat8.xyz);
					    u_xlat6.x = log2(abs(u_xlat6.x));
					    u_xlat6.x = u_xlat6.x * _FresnelStr;
					    u_xlat6.x = exp2(u_xlat6.x);
					    u_xlat6.x = u_xlat6.x + u_xlat6.x;
					    vs_TEXCOORD4 = min(u_xlat6.x, 1.0);
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat5 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat5;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlat10.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati3].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati3].xy + u_xlat10.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendMul2" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					float u_xlat14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat14 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat2.xyz = vec3(u_xlat14) * u_xlat2.xyz;
					    u_xlat14 = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat3.xyz = vec3(u_xlat14) * in_NORMAL0.xyz;
					    u_xlat2.x = dot(u_xlat3.xyz, u_xlat2.xyz);
					    u_xlat2.x = log2(abs(u_xlat2.x));
					    u_xlat2.x = u_xlat2.x * _FresnelStr;
					    u_xlat2.x = exp2(u_xlat2.x);
					    u_xlat2.x = u_xlat2.x + u_xlat2.x;
					    vs_TEXCOORD4 = min(u_xlat2.x, 1.0);
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat4 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_3_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati1;
					vec4 u_xlat2;
					int u_xlati3;
					float u_xlat4;
					float u_xlat5;
					vec3 u_xlat6;
					vec3 u_xlat8;
					vec2 u_xlat10;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    u_xlat6.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat6.x = inversesqrt(u_xlat6.x);
					    u_xlat6.xyz = u_xlat6.xxx * in_NORMAL0.xyz;
					    u_xlati3 = unity_StereoEyeIndex;
					    u_xlat8.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].yyy;
					    u_xlat8.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].xxx + u_xlat8.xyz;
					    u_xlat8.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].zzz + u_xlat8.xyz;
					    u_xlat8.xyz = u_xlat8.xyz + unity_WorldToObject[3].xyz;
					    u_xlat8.xyz = u_xlat8.xyz + (-in_POSITION0.xyz);
					    u_xlat4 = dot(u_xlat8.xyz, u_xlat8.xyz);
					    u_xlat4 = inversesqrt(u_xlat4);
					    u_xlat8.xyz = u_xlat8.xyz * vec3(u_xlat4);
					    u_xlat6.x = dot(u_xlat6.xyz, u_xlat8.xyz);
					    u_xlat6.x = log2(abs(u_xlat6.x));
					    u_xlat6.x = u_xlat6.x * _FresnelStr;
					    u_xlat6.x = exp2(u_xlat6.x);
					    u_xlat6.x = u_xlat6.x + u_xlat6.x;
					    vs_TEXCOORD4 = min(u_xlat6.x, 1.0);
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat5 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat5;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlat10.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati3].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati3].xy + u_xlat10.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendMul2" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					float u_xlat14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat14 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat2.xyz = vec3(u_xlat14) * u_xlat2.xyz;
					    u_xlat14 = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat3.xyz = vec3(u_xlat14) * in_NORMAL0.xyz;
					    u_xlat2.x = dot(u_xlat3.xyz, u_xlat2.xyz);
					    u_xlat2.x = log2(abs(u_xlat2.x));
					    u_xlat2.x = u_xlat2.x * _FresnelStr;
					    u_xlat2.x = exp2(u_xlat2.x);
					    u_xlat2.x = u_xlat2.x + u_xlat2.x;
					    vs_TEXCOORD4 = min(u_xlat2.x, 1.0);
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat4 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_3_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati1;
					vec4 u_xlat2;
					int u_xlati3;
					float u_xlat4;
					float u_xlat5;
					vec3 u_xlat6;
					vec3 u_xlat8;
					vec2 u_xlat10;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    u_xlat6.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat6.x = inversesqrt(u_xlat6.x);
					    u_xlat6.xyz = u_xlat6.xxx * in_NORMAL0.xyz;
					    u_xlati3 = unity_StereoEyeIndex;
					    u_xlat8.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].yyy;
					    u_xlat8.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].xxx + u_xlat8.xyz;
					    u_xlat8.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].zzz + u_xlat8.xyz;
					    u_xlat8.xyz = u_xlat8.xyz + unity_WorldToObject[3].xyz;
					    u_xlat8.xyz = u_xlat8.xyz + (-in_POSITION0.xyz);
					    u_xlat4 = dot(u_xlat8.xyz, u_xlat8.xyz);
					    u_xlat4 = inversesqrt(u_xlat4);
					    u_xlat8.xyz = u_xlat8.xyz * vec3(u_xlat4);
					    u_xlat6.x = dot(u_xlat6.xyz, u_xlat8.xyz);
					    u_xlat6.x = log2(abs(u_xlat6.x));
					    u_xlat6.x = u_xlat6.x * _FresnelStr;
					    u_xlat6.x = exp2(u_xlat6.x);
					    u_xlat6.x = u_xlat6.x + u_xlat6.x;
					    vs_TEXCOORD4 = min(u_xlat6.x, 1.0);
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat5 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat5;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlat10.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati3].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati3].xy + u_xlat10.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendMul2" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					float u_xlat14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat14 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat2.xyz = vec3(u_xlat14) * u_xlat2.xyz;
					    u_xlat14 = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat3.xyz = vec3(u_xlat14) * in_NORMAL0.xyz;
					    u_xlat2.x = dot(u_xlat3.xyz, u_xlat2.xyz);
					    u_xlat2.x = log2(abs(u_xlat2.x));
					    u_xlat2.x = u_xlat2.x * _FresnelStr;
					    u_xlat2.x = exp2(u_xlat2.x);
					    u_xlat2.x = u_xlat2.x + u_xlat2.x;
					    vs_TEXCOORD4 = min(u_xlat2.x, 1.0);
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat4 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_3_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati1;
					vec4 u_xlat2;
					int u_xlati3;
					float u_xlat4;
					float u_xlat5;
					vec3 u_xlat6;
					vec3 u_xlat8;
					vec2 u_xlat10;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    u_xlat6.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat6.x = inversesqrt(u_xlat6.x);
					    u_xlat6.xyz = u_xlat6.xxx * in_NORMAL0.xyz;
					    u_xlati3 = unity_StereoEyeIndex;
					    u_xlat8.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].yyy;
					    u_xlat8.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].xxx + u_xlat8.xyz;
					    u_xlat8.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].zzz + u_xlat8.xyz;
					    u_xlat8.xyz = u_xlat8.xyz + unity_WorldToObject[3].xyz;
					    u_xlat8.xyz = u_xlat8.xyz + (-in_POSITION0.xyz);
					    u_xlat4 = dot(u_xlat8.xyz, u_xlat8.xyz);
					    u_xlat4 = inversesqrt(u_xlat4);
					    u_xlat8.xyz = u_xlat8.xyz * vec3(u_xlat4);
					    u_xlat6.x = dot(u_xlat6.xyz, u_xlat8.xyz);
					    u_xlat6.x = log2(abs(u_xlat6.x));
					    u_xlat6.x = u_xlat6.x * _FresnelStr;
					    u_xlat6.x = exp2(u_xlat6.x);
					    u_xlat6.x = u_xlat6.x + u_xlat6.x;
					    vs_TEXCOORD4 = min(u_xlat6.x, 1.0);
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat5 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat5;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlat10.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati3].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati3].xy + u_xlat10.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendMul2" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					float u_xlat14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat14 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat2.xyz = vec3(u_xlat14) * u_xlat2.xyz;
					    u_xlat14 = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat3.xyz = vec3(u_xlat14) * in_NORMAL0.xyz;
					    u_xlat2.x = dot(u_xlat3.xyz, u_xlat2.xyz);
					    u_xlat2.x = log2(abs(u_xlat2.x));
					    u_xlat2.x = u_xlat2.x * _FresnelStr;
					    u_xlat2.x = exp2(u_xlat2.x);
					    u_xlat2.x = u_xlat2.x + u_xlat2.x;
					    vs_TEXCOORD4 = min(u_xlat2.x, 1.0);
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat4 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_3_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati1;
					vec4 u_xlat2;
					int u_xlati3;
					float u_xlat4;
					float u_xlat5;
					vec3 u_xlat6;
					vec3 u_xlat8;
					vec2 u_xlat10;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    u_xlat6.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat6.x = inversesqrt(u_xlat6.x);
					    u_xlat6.xyz = u_xlat6.xxx * in_NORMAL0.xyz;
					    u_xlati3 = unity_StereoEyeIndex;
					    u_xlat8.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].yyy;
					    u_xlat8.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].xxx + u_xlat8.xyz;
					    u_xlat8.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].zzz + u_xlat8.xyz;
					    u_xlat8.xyz = u_xlat8.xyz + unity_WorldToObject[3].xyz;
					    u_xlat8.xyz = u_xlat8.xyz + (-in_POSITION0.xyz);
					    u_xlat4 = dot(u_xlat8.xyz, u_xlat8.xyz);
					    u_xlat4 = inversesqrt(u_xlat4);
					    u_xlat8.xyz = u_xlat8.xyz * vec3(u_xlat4);
					    u_xlat6.x = dot(u_xlat6.xyz, u_xlat8.xyz);
					    u_xlat6.x = log2(abs(u_xlat6.x));
					    u_xlat6.x = u_xlat6.x * _FresnelStr;
					    u_xlat6.x = exp2(u_xlat6.x);
					    u_xlat6.x = u_xlat6.x + u_xlat6.x;
					    vs_TEXCOORD4 = min(u_xlat6.x, 1.0);
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat5 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat5;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlat10.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati3].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati3].xy + u_xlat10.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendMul2" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					float u_xlat9;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat9 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat9 = inversesqrt(u_xlat9);
					    u_xlat2.xyz = vec3(u_xlat9) * u_xlat2.xyz;
					    u_xlat9 = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat9 = inversesqrt(u_xlat9);
					    u_xlat3.xyz = vec3(u_xlat9) * in_NORMAL0.xyz;
					    u_xlat9 = dot(u_xlat3.xyz, u_xlat2.xyz);
					    u_xlat9 = log2(abs(u_xlat9));
					    u_xlat9 = u_xlat9 * _FresnelStr;
					    u_xlat9 = exp2(u_xlat9);
					    u_xlat9 = u_xlat9 + u_xlat9;
					    vs_TEXCOORD4 = min(u_xlat9, 1.0);
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat4 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_3_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					vec3 u_xlat5;
					vec2 u_xlat8;
					int u_xlati10;
					float u_xlat15;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    u_xlat5.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat5.x = inversesqrt(u_xlat5.x);
					    u_xlat5.xyz = u_xlat5.xxx * in_NORMAL0.xyz;
					    u_xlati10 = unity_StereoEyeIndex;
					    u_xlat3.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati10].yyy;
					    u_xlat3.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati10].xxx + u_xlat3.xyz;
					    u_xlat3.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati10].zzz + u_xlat3.xyz;
					    u_xlat3.xyz = u_xlat3.xyz + unity_WorldToObject[3].xyz;
					    u_xlat3.xyz = u_xlat3.xyz + (-in_POSITION0.xyz);
					    u_xlat15 = dot(u_xlat3.xyz, u_xlat3.xyz);
					    u_xlat15 = inversesqrt(u_xlat15);
					    u_xlat3.xyz = vec3(u_xlat15) * u_xlat3.xyz;
					    u_xlat5.x = dot(u_xlat5.xyz, u_xlat3.xyz);
					    u_xlat5.x = log2(abs(u_xlat5.x));
					    u_xlat5.x = u_xlat5.x * _FresnelStr;
					    u_xlat5.x = exp2(u_xlat5.x);
					    u_xlat5.x = u_xlat5.x + u_xlat5.x;
					    vs_TEXCOORD4 = min(u_xlat5.x, 1.0);
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat4 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlat8.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati10].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati10].xy + u_xlat8.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendMul2" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					float u_xlat9;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat9 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat9 = inversesqrt(u_xlat9);
					    u_xlat2.xyz = vec3(u_xlat9) * u_xlat2.xyz;
					    u_xlat9 = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat9 = inversesqrt(u_xlat9);
					    u_xlat3.xyz = vec3(u_xlat9) * in_NORMAL0.xyz;
					    u_xlat9 = dot(u_xlat3.xyz, u_xlat2.xyz);
					    u_xlat9 = log2(abs(u_xlat9));
					    u_xlat9 = u_xlat9 * _FresnelStr;
					    u_xlat9 = exp2(u_xlat9);
					    u_xlat9 = u_xlat9 + u_xlat9;
					    vs_TEXCOORD4 = min(u_xlat9, 1.0);
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat4 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_3_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					vec3 u_xlat5;
					vec2 u_xlat8;
					int u_xlati10;
					float u_xlat15;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    u_xlat5.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat5.x = inversesqrt(u_xlat5.x);
					    u_xlat5.xyz = u_xlat5.xxx * in_NORMAL0.xyz;
					    u_xlati10 = unity_StereoEyeIndex;
					    u_xlat3.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati10].yyy;
					    u_xlat3.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati10].xxx + u_xlat3.xyz;
					    u_xlat3.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati10].zzz + u_xlat3.xyz;
					    u_xlat3.xyz = u_xlat3.xyz + unity_WorldToObject[3].xyz;
					    u_xlat3.xyz = u_xlat3.xyz + (-in_POSITION0.xyz);
					    u_xlat15 = dot(u_xlat3.xyz, u_xlat3.xyz);
					    u_xlat15 = inversesqrt(u_xlat15);
					    u_xlat3.xyz = vec3(u_xlat15) * u_xlat3.xyz;
					    u_xlat5.x = dot(u_xlat5.xyz, u_xlat3.xyz);
					    u_xlat5.x = log2(abs(u_xlat5.x));
					    u_xlat5.x = u_xlat5.x * _FresnelStr;
					    u_xlat5.x = exp2(u_xlat5.x);
					    u_xlat5.x = u_xlat5.x + u_xlat5.x;
					    vs_TEXCOORD4 = min(u_xlat5.x, 1.0);
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat4 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlat8.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati10].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati10].xy + u_xlat8.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendMul2" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					float u_xlat14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat14 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat2.xyz = vec3(u_xlat14) * u_xlat2.xyz;
					    u_xlat14 = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat3.xyz = vec3(u_xlat14) * in_NORMAL0.xyz;
					    u_xlat2.x = dot(u_xlat3.xyz, u_xlat2.xyz);
					    u_xlat2.x = log2(abs(u_xlat2.x));
					    u_xlat2.x = u_xlat2.x * _FresnelStr;
					    u_xlat2.x = exp2(u_xlat2.x);
					    u_xlat2.x = u_xlat2.x + u_xlat2.x;
					    vs_TEXCOORD4 = min(u_xlat2.x, 1.0);
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat4 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_3_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati1;
					vec4 u_xlat2;
					int u_xlati3;
					float u_xlat4;
					float u_xlat5;
					vec3 u_xlat6;
					vec3 u_xlat8;
					vec2 u_xlat10;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    u_xlat6.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat6.x = inversesqrt(u_xlat6.x);
					    u_xlat6.xyz = u_xlat6.xxx * in_NORMAL0.xyz;
					    u_xlati3 = unity_StereoEyeIndex;
					    u_xlat8.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].yyy;
					    u_xlat8.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].xxx + u_xlat8.xyz;
					    u_xlat8.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].zzz + u_xlat8.xyz;
					    u_xlat8.xyz = u_xlat8.xyz + unity_WorldToObject[3].xyz;
					    u_xlat8.xyz = u_xlat8.xyz + (-in_POSITION0.xyz);
					    u_xlat4 = dot(u_xlat8.xyz, u_xlat8.xyz);
					    u_xlat4 = inversesqrt(u_xlat4);
					    u_xlat8.xyz = u_xlat8.xyz * vec3(u_xlat4);
					    u_xlat6.x = dot(u_xlat6.xyz, u_xlat8.xyz);
					    u_xlat6.x = log2(abs(u_xlat6.x));
					    u_xlat6.x = u_xlat6.x * _FresnelStr;
					    u_xlat6.x = exp2(u_xlat6.x);
					    u_xlat6.x = u_xlat6.x + u_xlat6.x;
					    vs_TEXCOORD4 = min(u_xlat6.x, 1.0);
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat5 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat5;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlat10.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati3].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati3].xy + u_xlat10.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendMul2" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					float u_xlat14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat14 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat2.xyz = vec3(u_xlat14) * u_xlat2.xyz;
					    u_xlat14 = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat3.xyz = vec3(u_xlat14) * in_NORMAL0.xyz;
					    u_xlat2.x = dot(u_xlat3.xyz, u_xlat2.xyz);
					    u_xlat2.x = log2(abs(u_xlat2.x));
					    u_xlat2.x = u_xlat2.x * _FresnelStr;
					    u_xlat2.x = exp2(u_xlat2.x);
					    u_xlat2.x = u_xlat2.x + u_xlat2.x;
					    vs_TEXCOORD4 = min(u_xlat2.x, 1.0);
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat4 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_3_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati1;
					vec4 u_xlat2;
					int u_xlati3;
					float u_xlat4;
					float u_xlat5;
					vec3 u_xlat6;
					vec3 u_xlat8;
					vec2 u_xlat10;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    u_xlat6.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat6.x = inversesqrt(u_xlat6.x);
					    u_xlat6.xyz = u_xlat6.xxx * in_NORMAL0.xyz;
					    u_xlati3 = unity_StereoEyeIndex;
					    u_xlat8.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].yyy;
					    u_xlat8.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].xxx + u_xlat8.xyz;
					    u_xlat8.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].zzz + u_xlat8.xyz;
					    u_xlat8.xyz = u_xlat8.xyz + unity_WorldToObject[3].xyz;
					    u_xlat8.xyz = u_xlat8.xyz + (-in_POSITION0.xyz);
					    u_xlat4 = dot(u_xlat8.xyz, u_xlat8.xyz);
					    u_xlat4 = inversesqrt(u_xlat4);
					    u_xlat8.xyz = u_xlat8.xyz * vec3(u_xlat4);
					    u_xlat6.x = dot(u_xlat6.xyz, u_xlat8.xyz);
					    u_xlat6.x = log2(abs(u_xlat6.x));
					    u_xlat6.x = u_xlat6.x * _FresnelStr;
					    u_xlat6.x = exp2(u_xlat6.x);
					    u_xlat6.x = u_xlat6.x + u_xlat6.x;
					    vs_TEXCOORD4 = min(u_xlat6.x, 1.0);
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat5 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat5;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlat10.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati3].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati3].xy + u_xlat10.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendMul2" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					float u_xlat14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat14 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat2.xyz = vec3(u_xlat14) * u_xlat2.xyz;
					    u_xlat14 = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat3.xyz = vec3(u_xlat14) * in_NORMAL0.xyz;
					    u_xlat2.x = dot(u_xlat3.xyz, u_xlat2.xyz);
					    u_xlat2.x = log2(abs(u_xlat2.x));
					    u_xlat2.x = u_xlat2.x * _FresnelStr;
					    u_xlat2.x = exp2(u_xlat2.x);
					    u_xlat2.x = u_xlat2.x + u_xlat2.x;
					    vs_TEXCOORD4 = min(u_xlat2.x, 1.0);
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat4 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_3_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati1;
					vec4 u_xlat2;
					int u_xlati3;
					float u_xlat4;
					float u_xlat5;
					vec3 u_xlat6;
					vec3 u_xlat8;
					vec2 u_xlat10;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    u_xlat6.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat6.x = inversesqrt(u_xlat6.x);
					    u_xlat6.xyz = u_xlat6.xxx * in_NORMAL0.xyz;
					    u_xlati3 = unity_StereoEyeIndex;
					    u_xlat8.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].yyy;
					    u_xlat8.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].xxx + u_xlat8.xyz;
					    u_xlat8.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].zzz + u_xlat8.xyz;
					    u_xlat8.xyz = u_xlat8.xyz + unity_WorldToObject[3].xyz;
					    u_xlat8.xyz = u_xlat8.xyz + (-in_POSITION0.xyz);
					    u_xlat4 = dot(u_xlat8.xyz, u_xlat8.xyz);
					    u_xlat4 = inversesqrt(u_xlat4);
					    u_xlat8.xyz = u_xlat8.xyz * vec3(u_xlat4);
					    u_xlat6.x = dot(u_xlat6.xyz, u_xlat8.xyz);
					    u_xlat6.x = log2(abs(u_xlat6.x));
					    u_xlat6.x = u_xlat6.x * _FresnelStr;
					    u_xlat6.x = exp2(u_xlat6.x);
					    u_xlat6.x = u_xlat6.x + u_xlat6.x;
					    vs_TEXCOORD4 = min(u_xlat6.x, 1.0);
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat5 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat5;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlat10.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati3].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati3].xy + u_xlat10.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendMul2" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					float u_xlat14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat14 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat2.xyz = vec3(u_xlat14) * u_xlat2.xyz;
					    u_xlat14 = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat3.xyz = vec3(u_xlat14) * in_NORMAL0.xyz;
					    u_xlat2.x = dot(u_xlat3.xyz, u_xlat2.xyz);
					    u_xlat2.x = log2(abs(u_xlat2.x));
					    u_xlat2.x = u_xlat2.x * _FresnelStr;
					    u_xlat2.x = exp2(u_xlat2.x);
					    u_xlat2.x = u_xlat2.x + u_xlat2.x;
					    vs_TEXCOORD4 = min(u_xlat2.x, 1.0);
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat4 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_3_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati1;
					vec4 u_xlat2;
					int u_xlati3;
					float u_xlat4;
					float u_xlat5;
					vec3 u_xlat6;
					vec3 u_xlat8;
					vec2 u_xlat10;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    u_xlat6.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat6.x = inversesqrt(u_xlat6.x);
					    u_xlat6.xyz = u_xlat6.xxx * in_NORMAL0.xyz;
					    u_xlati3 = unity_StereoEyeIndex;
					    u_xlat8.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].yyy;
					    u_xlat8.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].xxx + u_xlat8.xyz;
					    u_xlat8.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].zzz + u_xlat8.xyz;
					    u_xlat8.xyz = u_xlat8.xyz + unity_WorldToObject[3].xyz;
					    u_xlat8.xyz = u_xlat8.xyz + (-in_POSITION0.xyz);
					    u_xlat4 = dot(u_xlat8.xyz, u_xlat8.xyz);
					    u_xlat4 = inversesqrt(u_xlat4);
					    u_xlat8.xyz = u_xlat8.xyz * vec3(u_xlat4);
					    u_xlat6.x = dot(u_xlat6.xyz, u_xlat8.xyz);
					    u_xlat6.x = log2(abs(u_xlat6.x));
					    u_xlat6.x = u_xlat6.x * _FresnelStr;
					    u_xlat6.x = exp2(u_xlat6.x);
					    u_xlat6.x = u_xlat6.x + u_xlat6.x;
					    vs_TEXCOORD4 = min(u_xlat6.x, 1.0);
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat5 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat5;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlat10.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati3].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati3].xy + u_xlat10.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendMul2" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					float u_xlat14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat14 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat2.xyz = vec3(u_xlat14) * u_xlat2.xyz;
					    u_xlat14 = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat3.xyz = vec3(u_xlat14) * in_NORMAL0.xyz;
					    u_xlat2.x = dot(u_xlat3.xyz, u_xlat2.xyz);
					    u_xlat2.x = log2(abs(u_xlat2.x));
					    u_xlat2.x = u_xlat2.x * _FresnelStr;
					    u_xlat2.x = exp2(u_xlat2.x);
					    u_xlat2.x = u_xlat2.x + u_xlat2.x;
					    vs_TEXCOORD4 = min(u_xlat2.x, 1.0);
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat4 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_3_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati1;
					vec4 u_xlat2;
					int u_xlati3;
					float u_xlat4;
					float u_xlat5;
					vec3 u_xlat6;
					vec3 u_xlat8;
					vec2 u_xlat10;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    u_xlat6.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat6.x = inversesqrt(u_xlat6.x);
					    u_xlat6.xyz = u_xlat6.xxx * in_NORMAL0.xyz;
					    u_xlati3 = unity_StereoEyeIndex;
					    u_xlat8.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].yyy;
					    u_xlat8.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].xxx + u_xlat8.xyz;
					    u_xlat8.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].zzz + u_xlat8.xyz;
					    u_xlat8.xyz = u_xlat8.xyz + unity_WorldToObject[3].xyz;
					    u_xlat8.xyz = u_xlat8.xyz + (-in_POSITION0.xyz);
					    u_xlat4 = dot(u_xlat8.xyz, u_xlat8.xyz);
					    u_xlat4 = inversesqrt(u_xlat4);
					    u_xlat8.xyz = u_xlat8.xyz * vec3(u_xlat4);
					    u_xlat6.x = dot(u_xlat6.xyz, u_xlat8.xyz);
					    u_xlat6.x = log2(abs(u_xlat6.x));
					    u_xlat6.x = u_xlat6.x * _FresnelStr;
					    u_xlat6.x = exp2(u_xlat6.x);
					    u_xlat6.x = u_xlat6.x + u_xlat6.x;
					    vs_TEXCOORD4 = min(u_xlat6.x, 1.0);
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat5 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat5;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlat10.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati3].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati3].xy + u_xlat10.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendMul2" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					float u_xlat14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat14 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat2.xyz = vec3(u_xlat14) * u_xlat2.xyz;
					    u_xlat14 = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat3.xyz = vec3(u_xlat14) * in_NORMAL0.xyz;
					    u_xlat2.x = dot(u_xlat3.xyz, u_xlat2.xyz);
					    u_xlat2.x = log2(abs(u_xlat2.x));
					    u_xlat2.x = u_xlat2.x * _FresnelStr;
					    u_xlat2.x = exp2(u_xlat2.x);
					    u_xlat2.x = u_xlat2.x + u_xlat2.x;
					    vs_TEXCOORD4 = min(u_xlat2.x, 1.0);
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat4 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_3_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati1;
					vec4 u_xlat2;
					int u_xlati3;
					float u_xlat4;
					float u_xlat5;
					vec3 u_xlat6;
					vec3 u_xlat8;
					vec2 u_xlat10;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    u_xlat6.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat6.x = inversesqrt(u_xlat6.x);
					    u_xlat6.xyz = u_xlat6.xxx * in_NORMAL0.xyz;
					    u_xlati3 = unity_StereoEyeIndex;
					    u_xlat8.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].yyy;
					    u_xlat8.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].xxx + u_xlat8.xyz;
					    u_xlat8.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].zzz + u_xlat8.xyz;
					    u_xlat8.xyz = u_xlat8.xyz + unity_WorldToObject[3].xyz;
					    u_xlat8.xyz = u_xlat8.xyz + (-in_POSITION0.xyz);
					    u_xlat4 = dot(u_xlat8.xyz, u_xlat8.xyz);
					    u_xlat4 = inversesqrt(u_xlat4);
					    u_xlat8.xyz = u_xlat8.xyz * vec3(u_xlat4);
					    u_xlat6.x = dot(u_xlat6.xyz, u_xlat8.xyz);
					    u_xlat6.x = log2(abs(u_xlat6.x));
					    u_xlat6.x = u_xlat6.x * _FresnelStr;
					    u_xlat6.x = exp2(u_xlat6.x);
					    u_xlat6.x = u_xlat6.x + u_xlat6.x;
					    vs_TEXCOORD4 = min(u_xlat6.x, 1.0);
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat5 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat5;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlat10.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati3].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati3].xy + u_xlat10.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendMul2" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat2 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat2;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec2 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					float u_xlat3;
					int u_xlati6;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat3 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat3;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlati6 = unity_StereoEyeIndex;
					    u_xlat1.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati6].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati6].xy + u_xlat1.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendMul2" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat2 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat2;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec2 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					float u_xlat3;
					int u_xlati6;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat3 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat3;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlati6 = unity_StereoEyeIndex;
					    u_xlat1.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati6].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati6].xy + u_xlat1.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendMul2" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat2 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat2;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec2 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					float u_xlat3;
					int u_xlati6;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat3 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat3;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlati6 = unity_StereoEyeIndex;
					    u_xlat1.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati6].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati6].xy + u_xlat1.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendMul2" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat2 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat2;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec2 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					float u_xlat3;
					int u_xlati6;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat3 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat3;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlati6 = unity_StereoEyeIndex;
					    u_xlat1.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati6].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati6].xy + u_xlat1.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendMul2" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat2 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat2;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec2 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					float u_xlat3;
					int u_xlati6;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat3 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat3;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlati6 = unity_StereoEyeIndex;
					    u_xlat1.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati6].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati6].xy + u_xlat1.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendMul2" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat2 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat2;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec2 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					float u_xlat3;
					int u_xlati6;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat3 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat3;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlati6 = unity_StereoEyeIndex;
					    u_xlat1.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati6].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati6].xy + u_xlat1.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendMul2" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat2 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat2;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec2 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					float u_xlat3;
					int u_xlati6;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat3 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat3;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlati6 = unity_StereoEyeIndex;
					    u_xlat1.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati6].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati6].xy + u_xlat1.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendMul2" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat2 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat2;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec2 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					float u_xlat3;
					int u_xlati6;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat3 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat3;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlati6 = unity_StereoEyeIndex;
					    u_xlat1.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati6].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati6].xy + u_xlat1.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendMul2" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat2 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat2;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec2 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					float u_xlat3;
					int u_xlati6;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat3 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat3;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlati6 = unity_StereoEyeIndex;
					    u_xlat1.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati6].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati6].xy + u_xlat1.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendMul2" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat2 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat2;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec2 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					float u_xlat3;
					int u_xlati6;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat3 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat3;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlati6 = unity_StereoEyeIndex;
					    u_xlat1.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati6].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati6].xy + u_xlat1.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendMul2" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat2 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat2;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec2 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					float u_xlat3;
					int u_xlati6;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat3 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat3;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlati6 = unity_StereoEyeIndex;
					    u_xlat1.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati6].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati6].xy + u_xlat1.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendMul2" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat2 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat2;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec2 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					float u_xlat3;
					int u_xlati6;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat3 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat3;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlati6 = unity_StereoEyeIndex;
					    u_xlat1.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati6].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati6].xy + u_xlat1.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendMul2" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat2 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat2;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec2 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					float u_xlat3;
					int u_xlati6;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat3 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat3;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlati6 = unity_StereoEyeIndex;
					    u_xlat1.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati6].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati6].xy + u_xlat1.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendMul2" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat2 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat2;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec2 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					float u_xlat3;
					int u_xlati6;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat3 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat3;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlati6 = unity_StereoEyeIndex;
					    u_xlat1.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati6].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati6].xy + u_xlat1.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendMul2" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat2 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat2;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec2 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					float u_xlat3;
					int u_xlati6;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat3 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat3;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlati6 = unity_StereoEyeIndex;
					    u_xlat1.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati6].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati6].xy + u_xlat1.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendMul2" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat2 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat2;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec2 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					float u_xlat3;
					int u_xlati6;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat3 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat3;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlati6 = unity_StereoEyeIndex;
					    u_xlat1.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati6].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati6].xy + u_xlat1.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendMul2" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					float u_xlat9;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat9 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat9 = inversesqrt(u_xlat9);
					    u_xlat2.xyz = vec3(u_xlat9) * u_xlat2.xyz;
					    u_xlat9 = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat9 = inversesqrt(u_xlat9);
					    u_xlat3.xyz = vec3(u_xlat9) * in_NORMAL0.xyz;
					    u_xlat9 = dot(u_xlat3.xyz, u_xlat2.xyz);
					    u_xlat9 = log2(abs(u_xlat9));
					    u_xlat9 = u_xlat9 * _FresnelStr;
					    u_xlat9 = exp2(u_xlat9);
					    u_xlat9 = u_xlat9 + u_xlat9;
					    vs_TEXCOORD4 = min(u_xlat9, 1.0);
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat4 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_3_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					vec3 u_xlat5;
					vec2 u_xlat8;
					int u_xlati10;
					float u_xlat15;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    u_xlat5.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat5.x = inversesqrt(u_xlat5.x);
					    u_xlat5.xyz = u_xlat5.xxx * in_NORMAL0.xyz;
					    u_xlati10 = unity_StereoEyeIndex;
					    u_xlat3.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati10].yyy;
					    u_xlat3.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati10].xxx + u_xlat3.xyz;
					    u_xlat3.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati10].zzz + u_xlat3.xyz;
					    u_xlat3.xyz = u_xlat3.xyz + unity_WorldToObject[3].xyz;
					    u_xlat3.xyz = u_xlat3.xyz + (-in_POSITION0.xyz);
					    u_xlat15 = dot(u_xlat3.xyz, u_xlat3.xyz);
					    u_xlat15 = inversesqrt(u_xlat15);
					    u_xlat3.xyz = vec3(u_xlat15) * u_xlat3.xyz;
					    u_xlat5.x = dot(u_xlat5.xyz, u_xlat3.xyz);
					    u_xlat5.x = log2(abs(u_xlat5.x));
					    u_xlat5.x = u_xlat5.x * _FresnelStr;
					    u_xlat5.x = exp2(u_xlat5.x);
					    u_xlat5.x = u_xlat5.x + u_xlat5.x;
					    vs_TEXCOORD4 = min(u_xlat5.x, 1.0);
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat4 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlat8.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati10].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati10].xy + u_xlat8.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendMul2" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					float u_xlat9;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat9 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat9 = inversesqrt(u_xlat9);
					    u_xlat2.xyz = vec3(u_xlat9) * u_xlat2.xyz;
					    u_xlat9 = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat9 = inversesqrt(u_xlat9);
					    u_xlat3.xyz = vec3(u_xlat9) * in_NORMAL0.xyz;
					    u_xlat9 = dot(u_xlat3.xyz, u_xlat2.xyz);
					    u_xlat9 = log2(abs(u_xlat9));
					    u_xlat9 = u_xlat9 * _FresnelStr;
					    u_xlat9 = exp2(u_xlat9);
					    u_xlat9 = u_xlat9 + u_xlat9;
					    vs_TEXCOORD4 = min(u_xlat9, 1.0);
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat4 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_3_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					vec3 u_xlat5;
					vec2 u_xlat8;
					int u_xlati10;
					float u_xlat15;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    u_xlat5.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat5.x = inversesqrt(u_xlat5.x);
					    u_xlat5.xyz = u_xlat5.xxx * in_NORMAL0.xyz;
					    u_xlati10 = unity_StereoEyeIndex;
					    u_xlat3.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati10].yyy;
					    u_xlat3.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati10].xxx + u_xlat3.xyz;
					    u_xlat3.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati10].zzz + u_xlat3.xyz;
					    u_xlat3.xyz = u_xlat3.xyz + unity_WorldToObject[3].xyz;
					    u_xlat3.xyz = u_xlat3.xyz + (-in_POSITION0.xyz);
					    u_xlat15 = dot(u_xlat3.xyz, u_xlat3.xyz);
					    u_xlat15 = inversesqrt(u_xlat15);
					    u_xlat3.xyz = vec3(u_xlat15) * u_xlat3.xyz;
					    u_xlat5.x = dot(u_xlat5.xyz, u_xlat3.xyz);
					    u_xlat5.x = log2(abs(u_xlat5.x));
					    u_xlat5.x = u_xlat5.x * _FresnelStr;
					    u_xlat5.x = exp2(u_xlat5.x);
					    u_xlat5.x = u_xlat5.x + u_xlat5.x;
					    vs_TEXCOORD4 = min(u_xlat5.x, 1.0);
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat4 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlat8.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati10].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati10].xy + u_xlat8.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendMul2" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					float u_xlat14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat14 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat2.xyz = vec3(u_xlat14) * u_xlat2.xyz;
					    u_xlat14 = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat3.xyz = vec3(u_xlat14) * in_NORMAL0.xyz;
					    u_xlat2.x = dot(u_xlat3.xyz, u_xlat2.xyz);
					    u_xlat2.x = log2(abs(u_xlat2.x));
					    u_xlat2.x = u_xlat2.x * _FresnelStr;
					    u_xlat2.x = exp2(u_xlat2.x);
					    u_xlat2.x = u_xlat2.x + u_xlat2.x;
					    vs_TEXCOORD4 = min(u_xlat2.x, 1.0);
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat4 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_3_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati1;
					vec4 u_xlat2;
					int u_xlati3;
					float u_xlat4;
					float u_xlat5;
					vec3 u_xlat6;
					vec3 u_xlat8;
					vec2 u_xlat10;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    u_xlat6.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat6.x = inversesqrt(u_xlat6.x);
					    u_xlat6.xyz = u_xlat6.xxx * in_NORMAL0.xyz;
					    u_xlati3 = unity_StereoEyeIndex;
					    u_xlat8.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].yyy;
					    u_xlat8.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].xxx + u_xlat8.xyz;
					    u_xlat8.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].zzz + u_xlat8.xyz;
					    u_xlat8.xyz = u_xlat8.xyz + unity_WorldToObject[3].xyz;
					    u_xlat8.xyz = u_xlat8.xyz + (-in_POSITION0.xyz);
					    u_xlat4 = dot(u_xlat8.xyz, u_xlat8.xyz);
					    u_xlat4 = inversesqrt(u_xlat4);
					    u_xlat8.xyz = u_xlat8.xyz * vec3(u_xlat4);
					    u_xlat6.x = dot(u_xlat6.xyz, u_xlat8.xyz);
					    u_xlat6.x = log2(abs(u_xlat6.x));
					    u_xlat6.x = u_xlat6.x * _FresnelStr;
					    u_xlat6.x = exp2(u_xlat6.x);
					    u_xlat6.x = u_xlat6.x + u_xlat6.x;
					    vs_TEXCOORD4 = min(u_xlat6.x, 1.0);
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat5 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat5;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlat10.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati3].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati3].xy + u_xlat10.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendMul2" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					float u_xlat14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat14 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat2.xyz = vec3(u_xlat14) * u_xlat2.xyz;
					    u_xlat14 = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat3.xyz = vec3(u_xlat14) * in_NORMAL0.xyz;
					    u_xlat2.x = dot(u_xlat3.xyz, u_xlat2.xyz);
					    u_xlat2.x = log2(abs(u_xlat2.x));
					    u_xlat2.x = u_xlat2.x * _FresnelStr;
					    u_xlat2.x = exp2(u_xlat2.x);
					    u_xlat2.x = u_xlat2.x + u_xlat2.x;
					    vs_TEXCOORD4 = min(u_xlat2.x, 1.0);
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat4 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_3_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati1;
					vec4 u_xlat2;
					int u_xlati3;
					float u_xlat4;
					float u_xlat5;
					vec3 u_xlat6;
					vec3 u_xlat8;
					vec2 u_xlat10;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    u_xlat6.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat6.x = inversesqrt(u_xlat6.x);
					    u_xlat6.xyz = u_xlat6.xxx * in_NORMAL0.xyz;
					    u_xlati3 = unity_StereoEyeIndex;
					    u_xlat8.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].yyy;
					    u_xlat8.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].xxx + u_xlat8.xyz;
					    u_xlat8.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].zzz + u_xlat8.xyz;
					    u_xlat8.xyz = u_xlat8.xyz + unity_WorldToObject[3].xyz;
					    u_xlat8.xyz = u_xlat8.xyz + (-in_POSITION0.xyz);
					    u_xlat4 = dot(u_xlat8.xyz, u_xlat8.xyz);
					    u_xlat4 = inversesqrt(u_xlat4);
					    u_xlat8.xyz = u_xlat8.xyz * vec3(u_xlat4);
					    u_xlat6.x = dot(u_xlat6.xyz, u_xlat8.xyz);
					    u_xlat6.x = log2(abs(u_xlat6.x));
					    u_xlat6.x = u_xlat6.x * _FresnelStr;
					    u_xlat6.x = exp2(u_xlat6.x);
					    u_xlat6.x = u_xlat6.x + u_xlat6.x;
					    vs_TEXCOORD4 = min(u_xlat6.x, 1.0);
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat5 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat5;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlat10.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati3].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati3].xy + u_xlat10.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendMul2" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					float u_xlat14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat14 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat2.xyz = vec3(u_xlat14) * u_xlat2.xyz;
					    u_xlat14 = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat3.xyz = vec3(u_xlat14) * in_NORMAL0.xyz;
					    u_xlat2.x = dot(u_xlat3.xyz, u_xlat2.xyz);
					    u_xlat2.x = log2(abs(u_xlat2.x));
					    u_xlat2.x = u_xlat2.x * _FresnelStr;
					    u_xlat2.x = exp2(u_xlat2.x);
					    u_xlat2.x = u_xlat2.x + u_xlat2.x;
					    vs_TEXCOORD4 = min(u_xlat2.x, 1.0);
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat4 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_3_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati1;
					vec4 u_xlat2;
					int u_xlati3;
					float u_xlat4;
					float u_xlat5;
					vec3 u_xlat6;
					vec3 u_xlat8;
					vec2 u_xlat10;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    u_xlat6.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat6.x = inversesqrt(u_xlat6.x);
					    u_xlat6.xyz = u_xlat6.xxx * in_NORMAL0.xyz;
					    u_xlati3 = unity_StereoEyeIndex;
					    u_xlat8.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].yyy;
					    u_xlat8.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].xxx + u_xlat8.xyz;
					    u_xlat8.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].zzz + u_xlat8.xyz;
					    u_xlat8.xyz = u_xlat8.xyz + unity_WorldToObject[3].xyz;
					    u_xlat8.xyz = u_xlat8.xyz + (-in_POSITION0.xyz);
					    u_xlat4 = dot(u_xlat8.xyz, u_xlat8.xyz);
					    u_xlat4 = inversesqrt(u_xlat4);
					    u_xlat8.xyz = u_xlat8.xyz * vec3(u_xlat4);
					    u_xlat6.x = dot(u_xlat6.xyz, u_xlat8.xyz);
					    u_xlat6.x = log2(abs(u_xlat6.x));
					    u_xlat6.x = u_xlat6.x * _FresnelStr;
					    u_xlat6.x = exp2(u_xlat6.x);
					    u_xlat6.x = u_xlat6.x + u_xlat6.x;
					    vs_TEXCOORD4 = min(u_xlat6.x, 1.0);
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat5 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat5;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlat10.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati3].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati3].xy + u_xlat10.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendMul2" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					float u_xlat14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat14 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat2.xyz = vec3(u_xlat14) * u_xlat2.xyz;
					    u_xlat14 = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat3.xyz = vec3(u_xlat14) * in_NORMAL0.xyz;
					    u_xlat2.x = dot(u_xlat3.xyz, u_xlat2.xyz);
					    u_xlat2.x = log2(abs(u_xlat2.x));
					    u_xlat2.x = u_xlat2.x * _FresnelStr;
					    u_xlat2.x = exp2(u_xlat2.x);
					    u_xlat2.x = u_xlat2.x + u_xlat2.x;
					    vs_TEXCOORD4 = min(u_xlat2.x, 1.0);
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat4 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_3_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati1;
					vec4 u_xlat2;
					int u_xlati3;
					float u_xlat4;
					float u_xlat5;
					vec3 u_xlat6;
					vec3 u_xlat8;
					vec2 u_xlat10;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    u_xlat6.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat6.x = inversesqrt(u_xlat6.x);
					    u_xlat6.xyz = u_xlat6.xxx * in_NORMAL0.xyz;
					    u_xlati3 = unity_StereoEyeIndex;
					    u_xlat8.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].yyy;
					    u_xlat8.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].xxx + u_xlat8.xyz;
					    u_xlat8.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].zzz + u_xlat8.xyz;
					    u_xlat8.xyz = u_xlat8.xyz + unity_WorldToObject[3].xyz;
					    u_xlat8.xyz = u_xlat8.xyz + (-in_POSITION0.xyz);
					    u_xlat4 = dot(u_xlat8.xyz, u_xlat8.xyz);
					    u_xlat4 = inversesqrt(u_xlat4);
					    u_xlat8.xyz = u_xlat8.xyz * vec3(u_xlat4);
					    u_xlat6.x = dot(u_xlat6.xyz, u_xlat8.xyz);
					    u_xlat6.x = log2(abs(u_xlat6.x));
					    u_xlat6.x = u_xlat6.x * _FresnelStr;
					    u_xlat6.x = exp2(u_xlat6.x);
					    u_xlat6.x = u_xlat6.x + u_xlat6.x;
					    vs_TEXCOORD4 = min(u_xlat6.x, 1.0);
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat5 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat5;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlat10.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati3].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati3].xy + u_xlat10.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendMul2" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					float u_xlat14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat14 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat2.xyz = vec3(u_xlat14) * u_xlat2.xyz;
					    u_xlat14 = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat3.xyz = vec3(u_xlat14) * in_NORMAL0.xyz;
					    u_xlat2.x = dot(u_xlat3.xyz, u_xlat2.xyz);
					    u_xlat2.x = log2(abs(u_xlat2.x));
					    u_xlat2.x = u_xlat2.x * _FresnelStr;
					    u_xlat2.x = exp2(u_xlat2.x);
					    u_xlat2.x = u_xlat2.x + u_xlat2.x;
					    vs_TEXCOORD4 = min(u_xlat2.x, 1.0);
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat4 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_3_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati1;
					vec4 u_xlat2;
					int u_xlati3;
					float u_xlat4;
					float u_xlat5;
					vec3 u_xlat6;
					vec3 u_xlat8;
					vec2 u_xlat10;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    u_xlat6.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat6.x = inversesqrt(u_xlat6.x);
					    u_xlat6.xyz = u_xlat6.xxx * in_NORMAL0.xyz;
					    u_xlati3 = unity_StereoEyeIndex;
					    u_xlat8.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].yyy;
					    u_xlat8.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].xxx + u_xlat8.xyz;
					    u_xlat8.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].zzz + u_xlat8.xyz;
					    u_xlat8.xyz = u_xlat8.xyz + unity_WorldToObject[3].xyz;
					    u_xlat8.xyz = u_xlat8.xyz + (-in_POSITION0.xyz);
					    u_xlat4 = dot(u_xlat8.xyz, u_xlat8.xyz);
					    u_xlat4 = inversesqrt(u_xlat4);
					    u_xlat8.xyz = u_xlat8.xyz * vec3(u_xlat4);
					    u_xlat6.x = dot(u_xlat6.xyz, u_xlat8.xyz);
					    u_xlat6.x = log2(abs(u_xlat6.x));
					    u_xlat6.x = u_xlat6.x * _FresnelStr;
					    u_xlat6.x = exp2(u_xlat6.x);
					    u_xlat6.x = u_xlat6.x + u_xlat6.x;
					    vs_TEXCOORD4 = min(u_xlat6.x, 1.0);
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat5 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat5;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlat10.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati3].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati3].xy + u_xlat10.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendMul2" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					float u_xlat14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat14 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat2.xyz = vec3(u_xlat14) * u_xlat2.xyz;
					    u_xlat14 = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat3.xyz = vec3(u_xlat14) * in_NORMAL0.xyz;
					    u_xlat2.x = dot(u_xlat3.xyz, u_xlat2.xyz);
					    u_xlat2.x = log2(abs(u_xlat2.x));
					    u_xlat2.x = u_xlat2.x * _FresnelStr;
					    u_xlat2.x = exp2(u_xlat2.x);
					    u_xlat2.x = u_xlat2.x + u_xlat2.x;
					    vs_TEXCOORD4 = min(u_xlat2.x, 1.0);
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat4 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_3_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati1;
					vec4 u_xlat2;
					int u_xlati3;
					float u_xlat4;
					float u_xlat5;
					vec3 u_xlat6;
					vec3 u_xlat8;
					vec2 u_xlat10;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    u_xlat6.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat6.x = inversesqrt(u_xlat6.x);
					    u_xlat6.xyz = u_xlat6.xxx * in_NORMAL0.xyz;
					    u_xlati3 = unity_StereoEyeIndex;
					    u_xlat8.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].yyy;
					    u_xlat8.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].xxx + u_xlat8.xyz;
					    u_xlat8.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].zzz + u_xlat8.xyz;
					    u_xlat8.xyz = u_xlat8.xyz + unity_WorldToObject[3].xyz;
					    u_xlat8.xyz = u_xlat8.xyz + (-in_POSITION0.xyz);
					    u_xlat4 = dot(u_xlat8.xyz, u_xlat8.xyz);
					    u_xlat4 = inversesqrt(u_xlat4);
					    u_xlat8.xyz = u_xlat8.xyz * vec3(u_xlat4);
					    u_xlat6.x = dot(u_xlat6.xyz, u_xlat8.xyz);
					    u_xlat6.x = log2(abs(u_xlat6.x));
					    u_xlat6.x = u_xlat6.x * _FresnelStr;
					    u_xlat6.x = exp2(u_xlat6.x);
					    u_xlat6.x = u_xlat6.x + u_xlat6.x;
					    vs_TEXCOORD4 = min(u_xlat6.x, 1.0);
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat5 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat5;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlat10.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati3].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati3].xy + u_xlat10.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendMul2" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					float u_xlat9;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat9 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat9 = inversesqrt(u_xlat9);
					    u_xlat2.xyz = vec3(u_xlat9) * u_xlat2.xyz;
					    u_xlat9 = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat9 = inversesqrt(u_xlat9);
					    u_xlat3.xyz = vec3(u_xlat9) * in_NORMAL0.xyz;
					    u_xlat9 = dot(u_xlat3.xyz, u_xlat2.xyz);
					    u_xlat9 = log2(abs(u_xlat9));
					    u_xlat9 = u_xlat9 * _FresnelStr;
					    u_xlat9 = exp2(u_xlat9);
					    u_xlat9 = u_xlat9 + u_xlat9;
					    vs_TEXCOORD4 = min(u_xlat9, 1.0);
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat4 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_3_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					vec3 u_xlat5;
					vec2 u_xlat8;
					int u_xlati10;
					float u_xlat15;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    u_xlat5.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat5.x = inversesqrt(u_xlat5.x);
					    u_xlat5.xyz = u_xlat5.xxx * in_NORMAL0.xyz;
					    u_xlati10 = unity_StereoEyeIndex;
					    u_xlat3.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati10].yyy;
					    u_xlat3.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati10].xxx + u_xlat3.xyz;
					    u_xlat3.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati10].zzz + u_xlat3.xyz;
					    u_xlat3.xyz = u_xlat3.xyz + unity_WorldToObject[3].xyz;
					    u_xlat3.xyz = u_xlat3.xyz + (-in_POSITION0.xyz);
					    u_xlat15 = dot(u_xlat3.xyz, u_xlat3.xyz);
					    u_xlat15 = inversesqrt(u_xlat15);
					    u_xlat3.xyz = vec3(u_xlat15) * u_xlat3.xyz;
					    u_xlat5.x = dot(u_xlat5.xyz, u_xlat3.xyz);
					    u_xlat5.x = log2(abs(u_xlat5.x));
					    u_xlat5.x = u_xlat5.x * _FresnelStr;
					    u_xlat5.x = exp2(u_xlat5.x);
					    u_xlat5.x = u_xlat5.x + u_xlat5.x;
					    vs_TEXCOORD4 = min(u_xlat5.x, 1.0);
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat4 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlat8.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati10].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati10].xy + u_xlat8.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendMul2" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					float u_xlat9;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat9 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat9 = inversesqrt(u_xlat9);
					    u_xlat2.xyz = vec3(u_xlat9) * u_xlat2.xyz;
					    u_xlat9 = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat9 = inversesqrt(u_xlat9);
					    u_xlat3.xyz = vec3(u_xlat9) * in_NORMAL0.xyz;
					    u_xlat9 = dot(u_xlat3.xyz, u_xlat2.xyz);
					    u_xlat9 = log2(abs(u_xlat9));
					    u_xlat9 = u_xlat9 * _FresnelStr;
					    u_xlat9 = exp2(u_xlat9);
					    u_xlat9 = u_xlat9 + u_xlat9;
					    vs_TEXCOORD4 = min(u_xlat9, 1.0);
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat4 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_3_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					vec3 u_xlat5;
					vec2 u_xlat8;
					int u_xlati10;
					float u_xlat15;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    u_xlat5.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat5.x = inversesqrt(u_xlat5.x);
					    u_xlat5.xyz = u_xlat5.xxx * in_NORMAL0.xyz;
					    u_xlati10 = unity_StereoEyeIndex;
					    u_xlat3.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati10].yyy;
					    u_xlat3.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati10].xxx + u_xlat3.xyz;
					    u_xlat3.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati10].zzz + u_xlat3.xyz;
					    u_xlat3.xyz = u_xlat3.xyz + unity_WorldToObject[3].xyz;
					    u_xlat3.xyz = u_xlat3.xyz + (-in_POSITION0.xyz);
					    u_xlat15 = dot(u_xlat3.xyz, u_xlat3.xyz);
					    u_xlat15 = inversesqrt(u_xlat15);
					    u_xlat3.xyz = vec3(u_xlat15) * u_xlat3.xyz;
					    u_xlat5.x = dot(u_xlat5.xyz, u_xlat3.xyz);
					    u_xlat5.x = log2(abs(u_xlat5.x));
					    u_xlat5.x = u_xlat5.x * _FresnelStr;
					    u_xlat5.x = exp2(u_xlat5.x);
					    u_xlat5.x = u_xlat5.x + u_xlat5.x;
					    vs_TEXCOORD4 = min(u_xlat5.x, 1.0);
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat4 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlat8.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati10].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati10].xy + u_xlat8.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendMul2" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					float u_xlat14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat14 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat2.xyz = vec3(u_xlat14) * u_xlat2.xyz;
					    u_xlat14 = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat3.xyz = vec3(u_xlat14) * in_NORMAL0.xyz;
					    u_xlat2.x = dot(u_xlat3.xyz, u_xlat2.xyz);
					    u_xlat2.x = log2(abs(u_xlat2.x));
					    u_xlat2.x = u_xlat2.x * _FresnelStr;
					    u_xlat2.x = exp2(u_xlat2.x);
					    u_xlat2.x = u_xlat2.x + u_xlat2.x;
					    vs_TEXCOORD4 = min(u_xlat2.x, 1.0);
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat4 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_3_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati1;
					vec4 u_xlat2;
					int u_xlati3;
					float u_xlat4;
					float u_xlat5;
					vec3 u_xlat6;
					vec3 u_xlat8;
					vec2 u_xlat10;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    u_xlat6.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat6.x = inversesqrt(u_xlat6.x);
					    u_xlat6.xyz = u_xlat6.xxx * in_NORMAL0.xyz;
					    u_xlati3 = unity_StereoEyeIndex;
					    u_xlat8.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].yyy;
					    u_xlat8.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].xxx + u_xlat8.xyz;
					    u_xlat8.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].zzz + u_xlat8.xyz;
					    u_xlat8.xyz = u_xlat8.xyz + unity_WorldToObject[3].xyz;
					    u_xlat8.xyz = u_xlat8.xyz + (-in_POSITION0.xyz);
					    u_xlat4 = dot(u_xlat8.xyz, u_xlat8.xyz);
					    u_xlat4 = inversesqrt(u_xlat4);
					    u_xlat8.xyz = u_xlat8.xyz * vec3(u_xlat4);
					    u_xlat6.x = dot(u_xlat6.xyz, u_xlat8.xyz);
					    u_xlat6.x = log2(abs(u_xlat6.x));
					    u_xlat6.x = u_xlat6.x * _FresnelStr;
					    u_xlat6.x = exp2(u_xlat6.x);
					    u_xlat6.x = u_xlat6.x + u_xlat6.x;
					    vs_TEXCOORD4 = min(u_xlat6.x, 1.0);
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat5 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat5;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlat10.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati3].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati3].xy + u_xlat10.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendMul2" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					float u_xlat14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat14 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat2.xyz = vec3(u_xlat14) * u_xlat2.xyz;
					    u_xlat14 = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat3.xyz = vec3(u_xlat14) * in_NORMAL0.xyz;
					    u_xlat2.x = dot(u_xlat3.xyz, u_xlat2.xyz);
					    u_xlat2.x = log2(abs(u_xlat2.x));
					    u_xlat2.x = u_xlat2.x * _FresnelStr;
					    u_xlat2.x = exp2(u_xlat2.x);
					    u_xlat2.x = u_xlat2.x + u_xlat2.x;
					    vs_TEXCOORD4 = min(u_xlat2.x, 1.0);
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat4 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_3_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati1;
					vec4 u_xlat2;
					int u_xlati3;
					float u_xlat4;
					float u_xlat5;
					vec3 u_xlat6;
					vec3 u_xlat8;
					vec2 u_xlat10;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    u_xlat6.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat6.x = inversesqrt(u_xlat6.x);
					    u_xlat6.xyz = u_xlat6.xxx * in_NORMAL0.xyz;
					    u_xlati3 = unity_StereoEyeIndex;
					    u_xlat8.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].yyy;
					    u_xlat8.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].xxx + u_xlat8.xyz;
					    u_xlat8.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].zzz + u_xlat8.xyz;
					    u_xlat8.xyz = u_xlat8.xyz + unity_WorldToObject[3].xyz;
					    u_xlat8.xyz = u_xlat8.xyz + (-in_POSITION0.xyz);
					    u_xlat4 = dot(u_xlat8.xyz, u_xlat8.xyz);
					    u_xlat4 = inversesqrt(u_xlat4);
					    u_xlat8.xyz = u_xlat8.xyz * vec3(u_xlat4);
					    u_xlat6.x = dot(u_xlat6.xyz, u_xlat8.xyz);
					    u_xlat6.x = log2(abs(u_xlat6.x));
					    u_xlat6.x = u_xlat6.x * _FresnelStr;
					    u_xlat6.x = exp2(u_xlat6.x);
					    u_xlat6.x = u_xlat6.x + u_xlat6.x;
					    vs_TEXCOORD4 = min(u_xlat6.x, 1.0);
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat5 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat5;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlat10.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati3].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati3].xy + u_xlat10.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendMul2" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					float u_xlat14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat14 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat2.xyz = vec3(u_xlat14) * u_xlat2.xyz;
					    u_xlat14 = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat3.xyz = vec3(u_xlat14) * in_NORMAL0.xyz;
					    u_xlat2.x = dot(u_xlat3.xyz, u_xlat2.xyz);
					    u_xlat2.x = log2(abs(u_xlat2.x));
					    u_xlat2.x = u_xlat2.x * _FresnelStr;
					    u_xlat2.x = exp2(u_xlat2.x);
					    u_xlat2.x = u_xlat2.x + u_xlat2.x;
					    vs_TEXCOORD4 = min(u_xlat2.x, 1.0);
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat4 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_3_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati1;
					vec4 u_xlat2;
					int u_xlati3;
					float u_xlat4;
					float u_xlat5;
					vec3 u_xlat6;
					vec3 u_xlat8;
					vec2 u_xlat10;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    u_xlat6.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat6.x = inversesqrt(u_xlat6.x);
					    u_xlat6.xyz = u_xlat6.xxx * in_NORMAL0.xyz;
					    u_xlati3 = unity_StereoEyeIndex;
					    u_xlat8.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].yyy;
					    u_xlat8.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].xxx + u_xlat8.xyz;
					    u_xlat8.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].zzz + u_xlat8.xyz;
					    u_xlat8.xyz = u_xlat8.xyz + unity_WorldToObject[3].xyz;
					    u_xlat8.xyz = u_xlat8.xyz + (-in_POSITION0.xyz);
					    u_xlat4 = dot(u_xlat8.xyz, u_xlat8.xyz);
					    u_xlat4 = inversesqrt(u_xlat4);
					    u_xlat8.xyz = u_xlat8.xyz * vec3(u_xlat4);
					    u_xlat6.x = dot(u_xlat6.xyz, u_xlat8.xyz);
					    u_xlat6.x = log2(abs(u_xlat6.x));
					    u_xlat6.x = u_xlat6.x * _FresnelStr;
					    u_xlat6.x = exp2(u_xlat6.x);
					    u_xlat6.x = u_xlat6.x + u_xlat6.x;
					    vs_TEXCOORD4 = min(u_xlat6.x, 1.0);
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat5 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat5;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlat10.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati3].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati3].xy + u_xlat10.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendMul2" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					float u_xlat14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat14 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat2.xyz = vec3(u_xlat14) * u_xlat2.xyz;
					    u_xlat14 = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat3.xyz = vec3(u_xlat14) * in_NORMAL0.xyz;
					    u_xlat2.x = dot(u_xlat3.xyz, u_xlat2.xyz);
					    u_xlat2.x = log2(abs(u_xlat2.x));
					    u_xlat2.x = u_xlat2.x * _FresnelStr;
					    u_xlat2.x = exp2(u_xlat2.x);
					    u_xlat2.x = u_xlat2.x + u_xlat2.x;
					    vs_TEXCOORD4 = min(u_xlat2.x, 1.0);
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat4 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_3_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati1;
					vec4 u_xlat2;
					int u_xlati3;
					float u_xlat4;
					float u_xlat5;
					vec3 u_xlat6;
					vec3 u_xlat8;
					vec2 u_xlat10;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    u_xlat6.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat6.x = inversesqrt(u_xlat6.x);
					    u_xlat6.xyz = u_xlat6.xxx * in_NORMAL0.xyz;
					    u_xlati3 = unity_StereoEyeIndex;
					    u_xlat8.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].yyy;
					    u_xlat8.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].xxx + u_xlat8.xyz;
					    u_xlat8.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].zzz + u_xlat8.xyz;
					    u_xlat8.xyz = u_xlat8.xyz + unity_WorldToObject[3].xyz;
					    u_xlat8.xyz = u_xlat8.xyz + (-in_POSITION0.xyz);
					    u_xlat4 = dot(u_xlat8.xyz, u_xlat8.xyz);
					    u_xlat4 = inversesqrt(u_xlat4);
					    u_xlat8.xyz = u_xlat8.xyz * vec3(u_xlat4);
					    u_xlat6.x = dot(u_xlat6.xyz, u_xlat8.xyz);
					    u_xlat6.x = log2(abs(u_xlat6.x));
					    u_xlat6.x = u_xlat6.x * _FresnelStr;
					    u_xlat6.x = exp2(u_xlat6.x);
					    u_xlat6.x = u_xlat6.x + u_xlat6.x;
					    vs_TEXCOORD4 = min(u_xlat6.x, 1.0);
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat5 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat5;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlat10.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati3].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati3].xy + u_xlat10.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendMul2" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					float u_xlat14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat14 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat2.xyz = vec3(u_xlat14) * u_xlat2.xyz;
					    u_xlat14 = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat3.xyz = vec3(u_xlat14) * in_NORMAL0.xyz;
					    u_xlat2.x = dot(u_xlat3.xyz, u_xlat2.xyz);
					    u_xlat2.x = log2(abs(u_xlat2.x));
					    u_xlat2.x = u_xlat2.x * _FresnelStr;
					    u_xlat2.x = exp2(u_xlat2.x);
					    u_xlat2.x = u_xlat2.x + u_xlat2.x;
					    vs_TEXCOORD4 = min(u_xlat2.x, 1.0);
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat4 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_3_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati1;
					vec4 u_xlat2;
					int u_xlati3;
					float u_xlat4;
					float u_xlat5;
					vec3 u_xlat6;
					vec3 u_xlat8;
					vec2 u_xlat10;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    u_xlat6.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat6.x = inversesqrt(u_xlat6.x);
					    u_xlat6.xyz = u_xlat6.xxx * in_NORMAL0.xyz;
					    u_xlati3 = unity_StereoEyeIndex;
					    u_xlat8.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].yyy;
					    u_xlat8.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].xxx + u_xlat8.xyz;
					    u_xlat8.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].zzz + u_xlat8.xyz;
					    u_xlat8.xyz = u_xlat8.xyz + unity_WorldToObject[3].xyz;
					    u_xlat8.xyz = u_xlat8.xyz + (-in_POSITION0.xyz);
					    u_xlat4 = dot(u_xlat8.xyz, u_xlat8.xyz);
					    u_xlat4 = inversesqrt(u_xlat4);
					    u_xlat8.xyz = u_xlat8.xyz * vec3(u_xlat4);
					    u_xlat6.x = dot(u_xlat6.xyz, u_xlat8.xyz);
					    u_xlat6.x = log2(abs(u_xlat6.x));
					    u_xlat6.x = u_xlat6.x * _FresnelStr;
					    u_xlat6.x = exp2(u_xlat6.x);
					    u_xlat6.x = u_xlat6.x + u_xlat6.x;
					    vs_TEXCOORD4 = min(u_xlat6.x, 1.0);
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat5 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat5;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlat10.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati3].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati3].xy + u_xlat10.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendMul2" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					float u_xlat14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat14 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat2.xyz = vec3(u_xlat14) * u_xlat2.xyz;
					    u_xlat14 = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat3.xyz = vec3(u_xlat14) * in_NORMAL0.xyz;
					    u_xlat2.x = dot(u_xlat3.xyz, u_xlat2.xyz);
					    u_xlat2.x = log2(abs(u_xlat2.x));
					    u_xlat2.x = u_xlat2.x * _FresnelStr;
					    u_xlat2.x = exp2(u_xlat2.x);
					    u_xlat2.x = u_xlat2.x + u_xlat2.x;
					    vs_TEXCOORD4 = min(u_xlat2.x, 1.0);
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat4 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_3_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati1;
					vec4 u_xlat2;
					int u_xlati3;
					float u_xlat4;
					float u_xlat5;
					vec3 u_xlat6;
					vec3 u_xlat8;
					vec2 u_xlat10;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    u_xlat6.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat6.x = inversesqrt(u_xlat6.x);
					    u_xlat6.xyz = u_xlat6.xxx * in_NORMAL0.xyz;
					    u_xlati3 = unity_StereoEyeIndex;
					    u_xlat8.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].yyy;
					    u_xlat8.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].xxx + u_xlat8.xyz;
					    u_xlat8.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].zzz + u_xlat8.xyz;
					    u_xlat8.xyz = u_xlat8.xyz + unity_WorldToObject[3].xyz;
					    u_xlat8.xyz = u_xlat8.xyz + (-in_POSITION0.xyz);
					    u_xlat4 = dot(u_xlat8.xyz, u_xlat8.xyz);
					    u_xlat4 = inversesqrt(u_xlat4);
					    u_xlat8.xyz = u_xlat8.xyz * vec3(u_xlat4);
					    u_xlat6.x = dot(u_xlat6.xyz, u_xlat8.xyz);
					    u_xlat6.x = log2(abs(u_xlat6.x));
					    u_xlat6.x = u_xlat6.x * _FresnelStr;
					    u_xlat6.x = exp2(u_xlat6.x);
					    u_xlat6.x = u_xlat6.x + u_xlat6.x;
					    vs_TEXCOORD4 = min(u_xlat6.x, 1.0);
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat5 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat5;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlat10.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati3].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati3].xy + u_xlat10.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendMul2" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat2 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat2;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec2 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					float u_xlat3;
					int u_xlati6;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat3 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat3;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlati6 = unity_StereoEyeIndex;
					    u_xlat1.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati6].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati6].xy + u_xlat1.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendMul2" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat2 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat2;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec2 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					float u_xlat3;
					int u_xlati6;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat3 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat3;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlati6 = unity_StereoEyeIndex;
					    u_xlat1.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati6].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati6].xy + u_xlat1.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendMul2" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat2 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat2;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec2 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					float u_xlat3;
					int u_xlati6;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat3 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat3;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlati6 = unity_StereoEyeIndex;
					    u_xlat1.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati6].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati6].xy + u_xlat1.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendMul2" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat2 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat2;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec2 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					float u_xlat3;
					int u_xlati6;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat3 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat3;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlati6 = unity_StereoEyeIndex;
					    u_xlat1.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati6].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati6].xy + u_xlat1.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendMul2" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat2 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat2;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec2 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					float u_xlat3;
					int u_xlati6;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat3 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat3;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlati6 = unity_StereoEyeIndex;
					    u_xlat1.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati6].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati6].xy + u_xlat1.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendMul2" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat2 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat2;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec2 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					float u_xlat3;
					int u_xlati6;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat3 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat3;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlati6 = unity_StereoEyeIndex;
					    u_xlat1.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati6].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati6].xy + u_xlat1.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendMul2" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat2 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat2;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec2 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					float u_xlat3;
					int u_xlati6;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat3 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat3;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlati6 = unity_StereoEyeIndex;
					    u_xlat1.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati6].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati6].xy + u_xlat1.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendMul2" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat2 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat2;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec2 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					float u_xlat3;
					int u_xlati6;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat3 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat3;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlati6 = unity_StereoEyeIndex;
					    u_xlat1.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati6].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati6].xy + u_xlat1.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendMul2" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat2 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat2;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec2 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					float u_xlat3;
					int u_xlati6;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat3 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat3;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlati6 = unity_StereoEyeIndex;
					    u_xlat1.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati6].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati6].xy + u_xlat1.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendMul2" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat2 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat2;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec2 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					float u_xlat3;
					int u_xlati6;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat3 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat3;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlati6 = unity_StereoEyeIndex;
					    u_xlat1.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati6].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati6].xy + u_xlat1.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendMul2" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat2 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat2;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec2 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					float u_xlat3;
					int u_xlati6;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat3 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat3;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlati6 = unity_StereoEyeIndex;
					    u_xlat1.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati6].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati6].xy + u_xlat1.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendMul2" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat2 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat2;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec2 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					float u_xlat3;
					int u_xlati6;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat3 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat3;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlati6 = unity_StereoEyeIndex;
					    u_xlat1.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati6].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati6].xy + u_xlat1.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendMul2" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat2 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat2;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec2 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					float u_xlat3;
					int u_xlati6;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat3 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat3;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlati6 = unity_StereoEyeIndex;
					    u_xlat1.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati6].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati6].xy + u_xlat1.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendMul2" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat2 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat2;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec2 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					float u_xlat3;
					int u_xlati6;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat3 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat3;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlati6 = unity_StereoEyeIndex;
					    u_xlat1.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati6].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati6].xy + u_xlat1.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendMul2" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat2 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat2;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec2 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					float u_xlat3;
					int u_xlati6;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat3 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat3;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlati6 = unity_StereoEyeIndex;
					    u_xlat1.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati6].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati6].xy + u_xlat1.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendMul2" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat2 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat2;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec2 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					float u_xlat3;
					int u_xlati6;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat3 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat3;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlati6 = unity_StereoEyeIndex;
					    u_xlat1.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati6].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati6].xy + u_xlat1.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendMul2" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					float u_xlat9;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat9 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat9 = inversesqrt(u_xlat9);
					    u_xlat2.xyz = vec3(u_xlat9) * u_xlat2.xyz;
					    u_xlat9 = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat9 = inversesqrt(u_xlat9);
					    u_xlat3.xyz = vec3(u_xlat9) * in_NORMAL0.xyz;
					    u_xlat9 = dot(u_xlat3.xyz, u_xlat2.xyz);
					    u_xlat9 = log2(abs(u_xlat9));
					    u_xlat9 = u_xlat9 * _FresnelStr;
					    u_xlat9 = exp2(u_xlat9);
					    u_xlat9 = u_xlat9 + u_xlat9;
					    vs_TEXCOORD4 = min(u_xlat9, 1.0);
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat4 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_3_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					vec3 u_xlat5;
					vec2 u_xlat8;
					int u_xlati10;
					float u_xlat15;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    u_xlat5.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat5.x = inversesqrt(u_xlat5.x);
					    u_xlat5.xyz = u_xlat5.xxx * in_NORMAL0.xyz;
					    u_xlati10 = unity_StereoEyeIndex;
					    u_xlat3.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati10].yyy;
					    u_xlat3.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati10].xxx + u_xlat3.xyz;
					    u_xlat3.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati10].zzz + u_xlat3.xyz;
					    u_xlat3.xyz = u_xlat3.xyz + unity_WorldToObject[3].xyz;
					    u_xlat3.xyz = u_xlat3.xyz + (-in_POSITION0.xyz);
					    u_xlat15 = dot(u_xlat3.xyz, u_xlat3.xyz);
					    u_xlat15 = inversesqrt(u_xlat15);
					    u_xlat3.xyz = vec3(u_xlat15) * u_xlat3.xyz;
					    u_xlat5.x = dot(u_xlat5.xyz, u_xlat3.xyz);
					    u_xlat5.x = log2(abs(u_xlat5.x));
					    u_xlat5.x = u_xlat5.x * _FresnelStr;
					    u_xlat5.x = exp2(u_xlat5.x);
					    u_xlat5.x = u_xlat5.x + u_xlat5.x;
					    vs_TEXCOORD4 = min(u_xlat5.x, 1.0);
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat4 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlat8.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati10].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati10].xy + u_xlat8.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendMul2" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					float u_xlat9;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat9 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat9 = inversesqrt(u_xlat9);
					    u_xlat2.xyz = vec3(u_xlat9) * u_xlat2.xyz;
					    u_xlat9 = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat9 = inversesqrt(u_xlat9);
					    u_xlat3.xyz = vec3(u_xlat9) * in_NORMAL0.xyz;
					    u_xlat9 = dot(u_xlat3.xyz, u_xlat2.xyz);
					    u_xlat9 = log2(abs(u_xlat9));
					    u_xlat9 = u_xlat9 * _FresnelStr;
					    u_xlat9 = exp2(u_xlat9);
					    u_xlat9 = u_xlat9 + u_xlat9;
					    vs_TEXCOORD4 = min(u_xlat9, 1.0);
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat4 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_3_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					vec3 u_xlat5;
					vec2 u_xlat8;
					int u_xlati10;
					float u_xlat15;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    u_xlat5.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat5.x = inversesqrt(u_xlat5.x);
					    u_xlat5.xyz = u_xlat5.xxx * in_NORMAL0.xyz;
					    u_xlati10 = unity_StereoEyeIndex;
					    u_xlat3.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati10].yyy;
					    u_xlat3.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati10].xxx + u_xlat3.xyz;
					    u_xlat3.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati10].zzz + u_xlat3.xyz;
					    u_xlat3.xyz = u_xlat3.xyz + unity_WorldToObject[3].xyz;
					    u_xlat3.xyz = u_xlat3.xyz + (-in_POSITION0.xyz);
					    u_xlat15 = dot(u_xlat3.xyz, u_xlat3.xyz);
					    u_xlat15 = inversesqrt(u_xlat15);
					    u_xlat3.xyz = vec3(u_xlat15) * u_xlat3.xyz;
					    u_xlat5.x = dot(u_xlat5.xyz, u_xlat3.xyz);
					    u_xlat5.x = log2(abs(u_xlat5.x));
					    u_xlat5.x = u_xlat5.x * _FresnelStr;
					    u_xlat5.x = exp2(u_xlat5.x);
					    u_xlat5.x = u_xlat5.x + u_xlat5.x;
					    vs_TEXCOORD4 = min(u_xlat5.x, 1.0);
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat4 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlat8.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati10].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati10].xy + u_xlat8.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendMul2" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					float u_xlat14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat14 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat2.xyz = vec3(u_xlat14) * u_xlat2.xyz;
					    u_xlat14 = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat3.xyz = vec3(u_xlat14) * in_NORMAL0.xyz;
					    u_xlat2.x = dot(u_xlat3.xyz, u_xlat2.xyz);
					    u_xlat2.x = log2(abs(u_xlat2.x));
					    u_xlat2.x = u_xlat2.x * _FresnelStr;
					    u_xlat2.x = exp2(u_xlat2.x);
					    u_xlat2.x = u_xlat2.x + u_xlat2.x;
					    vs_TEXCOORD4 = min(u_xlat2.x, 1.0);
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat4 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_3_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati1;
					vec4 u_xlat2;
					int u_xlati3;
					float u_xlat4;
					float u_xlat5;
					vec3 u_xlat6;
					vec3 u_xlat8;
					vec2 u_xlat10;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    u_xlat6.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat6.x = inversesqrt(u_xlat6.x);
					    u_xlat6.xyz = u_xlat6.xxx * in_NORMAL0.xyz;
					    u_xlati3 = unity_StereoEyeIndex;
					    u_xlat8.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].yyy;
					    u_xlat8.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].xxx + u_xlat8.xyz;
					    u_xlat8.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].zzz + u_xlat8.xyz;
					    u_xlat8.xyz = u_xlat8.xyz + unity_WorldToObject[3].xyz;
					    u_xlat8.xyz = u_xlat8.xyz + (-in_POSITION0.xyz);
					    u_xlat4 = dot(u_xlat8.xyz, u_xlat8.xyz);
					    u_xlat4 = inversesqrt(u_xlat4);
					    u_xlat8.xyz = u_xlat8.xyz * vec3(u_xlat4);
					    u_xlat6.x = dot(u_xlat6.xyz, u_xlat8.xyz);
					    u_xlat6.x = log2(abs(u_xlat6.x));
					    u_xlat6.x = u_xlat6.x * _FresnelStr;
					    u_xlat6.x = exp2(u_xlat6.x);
					    u_xlat6.x = u_xlat6.x + u_xlat6.x;
					    vs_TEXCOORD4 = min(u_xlat6.x, 1.0);
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat5 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat5;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlat10.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati3].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati3].xy + u_xlat10.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendMul2" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					float u_xlat14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat14 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat2.xyz = vec3(u_xlat14) * u_xlat2.xyz;
					    u_xlat14 = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat3.xyz = vec3(u_xlat14) * in_NORMAL0.xyz;
					    u_xlat2.x = dot(u_xlat3.xyz, u_xlat2.xyz);
					    u_xlat2.x = log2(abs(u_xlat2.x));
					    u_xlat2.x = u_xlat2.x * _FresnelStr;
					    u_xlat2.x = exp2(u_xlat2.x);
					    u_xlat2.x = u_xlat2.x + u_xlat2.x;
					    vs_TEXCOORD4 = min(u_xlat2.x, 1.0);
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat4 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_3_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati1;
					vec4 u_xlat2;
					int u_xlati3;
					float u_xlat4;
					float u_xlat5;
					vec3 u_xlat6;
					vec3 u_xlat8;
					vec2 u_xlat10;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    u_xlat6.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat6.x = inversesqrt(u_xlat6.x);
					    u_xlat6.xyz = u_xlat6.xxx * in_NORMAL0.xyz;
					    u_xlati3 = unity_StereoEyeIndex;
					    u_xlat8.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].yyy;
					    u_xlat8.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].xxx + u_xlat8.xyz;
					    u_xlat8.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].zzz + u_xlat8.xyz;
					    u_xlat8.xyz = u_xlat8.xyz + unity_WorldToObject[3].xyz;
					    u_xlat8.xyz = u_xlat8.xyz + (-in_POSITION0.xyz);
					    u_xlat4 = dot(u_xlat8.xyz, u_xlat8.xyz);
					    u_xlat4 = inversesqrt(u_xlat4);
					    u_xlat8.xyz = u_xlat8.xyz * vec3(u_xlat4);
					    u_xlat6.x = dot(u_xlat6.xyz, u_xlat8.xyz);
					    u_xlat6.x = log2(abs(u_xlat6.x));
					    u_xlat6.x = u_xlat6.x * _FresnelStr;
					    u_xlat6.x = exp2(u_xlat6.x);
					    u_xlat6.x = u_xlat6.x + u_xlat6.x;
					    vs_TEXCOORD4 = min(u_xlat6.x, 1.0);
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat5 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat5;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlat10.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati3].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati3].xy + u_xlat10.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendMul2" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					float u_xlat14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat14 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat2.xyz = vec3(u_xlat14) * u_xlat2.xyz;
					    u_xlat14 = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat3.xyz = vec3(u_xlat14) * in_NORMAL0.xyz;
					    u_xlat2.x = dot(u_xlat3.xyz, u_xlat2.xyz);
					    u_xlat2.x = log2(abs(u_xlat2.x));
					    u_xlat2.x = u_xlat2.x * _FresnelStr;
					    u_xlat2.x = exp2(u_xlat2.x);
					    u_xlat2.x = u_xlat2.x + u_xlat2.x;
					    vs_TEXCOORD4 = min(u_xlat2.x, 1.0);
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat4 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_3_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati1;
					vec4 u_xlat2;
					int u_xlati3;
					float u_xlat4;
					float u_xlat5;
					vec3 u_xlat6;
					vec3 u_xlat8;
					vec2 u_xlat10;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    u_xlat6.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat6.x = inversesqrt(u_xlat6.x);
					    u_xlat6.xyz = u_xlat6.xxx * in_NORMAL0.xyz;
					    u_xlati3 = unity_StereoEyeIndex;
					    u_xlat8.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].yyy;
					    u_xlat8.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].xxx + u_xlat8.xyz;
					    u_xlat8.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].zzz + u_xlat8.xyz;
					    u_xlat8.xyz = u_xlat8.xyz + unity_WorldToObject[3].xyz;
					    u_xlat8.xyz = u_xlat8.xyz + (-in_POSITION0.xyz);
					    u_xlat4 = dot(u_xlat8.xyz, u_xlat8.xyz);
					    u_xlat4 = inversesqrt(u_xlat4);
					    u_xlat8.xyz = u_xlat8.xyz * vec3(u_xlat4);
					    u_xlat6.x = dot(u_xlat6.xyz, u_xlat8.xyz);
					    u_xlat6.x = log2(abs(u_xlat6.x));
					    u_xlat6.x = u_xlat6.x * _FresnelStr;
					    u_xlat6.x = exp2(u_xlat6.x);
					    u_xlat6.x = u_xlat6.x + u_xlat6.x;
					    vs_TEXCOORD4 = min(u_xlat6.x, 1.0);
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat5 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat5;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlat10.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati3].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati3].xy + u_xlat10.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendMul2" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					float u_xlat14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat14 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat2.xyz = vec3(u_xlat14) * u_xlat2.xyz;
					    u_xlat14 = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat3.xyz = vec3(u_xlat14) * in_NORMAL0.xyz;
					    u_xlat2.x = dot(u_xlat3.xyz, u_xlat2.xyz);
					    u_xlat2.x = log2(abs(u_xlat2.x));
					    u_xlat2.x = u_xlat2.x * _FresnelStr;
					    u_xlat2.x = exp2(u_xlat2.x);
					    u_xlat2.x = u_xlat2.x + u_xlat2.x;
					    vs_TEXCOORD4 = min(u_xlat2.x, 1.0);
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat4 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_3_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati1;
					vec4 u_xlat2;
					int u_xlati3;
					float u_xlat4;
					float u_xlat5;
					vec3 u_xlat6;
					vec3 u_xlat8;
					vec2 u_xlat10;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    u_xlat6.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat6.x = inversesqrt(u_xlat6.x);
					    u_xlat6.xyz = u_xlat6.xxx * in_NORMAL0.xyz;
					    u_xlati3 = unity_StereoEyeIndex;
					    u_xlat8.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].yyy;
					    u_xlat8.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].xxx + u_xlat8.xyz;
					    u_xlat8.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].zzz + u_xlat8.xyz;
					    u_xlat8.xyz = u_xlat8.xyz + unity_WorldToObject[3].xyz;
					    u_xlat8.xyz = u_xlat8.xyz + (-in_POSITION0.xyz);
					    u_xlat4 = dot(u_xlat8.xyz, u_xlat8.xyz);
					    u_xlat4 = inversesqrt(u_xlat4);
					    u_xlat8.xyz = u_xlat8.xyz * vec3(u_xlat4);
					    u_xlat6.x = dot(u_xlat6.xyz, u_xlat8.xyz);
					    u_xlat6.x = log2(abs(u_xlat6.x));
					    u_xlat6.x = u_xlat6.x * _FresnelStr;
					    u_xlat6.x = exp2(u_xlat6.x);
					    u_xlat6.x = u_xlat6.x + u_xlat6.x;
					    vs_TEXCOORD4 = min(u_xlat6.x, 1.0);
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat5 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat5;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlat10.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati3].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati3].xy + u_xlat10.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendMul2" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					float u_xlat14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat14 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat2.xyz = vec3(u_xlat14) * u_xlat2.xyz;
					    u_xlat14 = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat3.xyz = vec3(u_xlat14) * in_NORMAL0.xyz;
					    u_xlat2.x = dot(u_xlat3.xyz, u_xlat2.xyz);
					    u_xlat2.x = log2(abs(u_xlat2.x));
					    u_xlat2.x = u_xlat2.x * _FresnelStr;
					    u_xlat2.x = exp2(u_xlat2.x);
					    u_xlat2.x = u_xlat2.x + u_xlat2.x;
					    vs_TEXCOORD4 = min(u_xlat2.x, 1.0);
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat4 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_3_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati1;
					vec4 u_xlat2;
					int u_xlati3;
					float u_xlat4;
					float u_xlat5;
					vec3 u_xlat6;
					vec3 u_xlat8;
					vec2 u_xlat10;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    u_xlat6.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat6.x = inversesqrt(u_xlat6.x);
					    u_xlat6.xyz = u_xlat6.xxx * in_NORMAL0.xyz;
					    u_xlati3 = unity_StereoEyeIndex;
					    u_xlat8.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].yyy;
					    u_xlat8.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].xxx + u_xlat8.xyz;
					    u_xlat8.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].zzz + u_xlat8.xyz;
					    u_xlat8.xyz = u_xlat8.xyz + unity_WorldToObject[3].xyz;
					    u_xlat8.xyz = u_xlat8.xyz + (-in_POSITION0.xyz);
					    u_xlat4 = dot(u_xlat8.xyz, u_xlat8.xyz);
					    u_xlat4 = inversesqrt(u_xlat4);
					    u_xlat8.xyz = u_xlat8.xyz * vec3(u_xlat4);
					    u_xlat6.x = dot(u_xlat6.xyz, u_xlat8.xyz);
					    u_xlat6.x = log2(abs(u_xlat6.x));
					    u_xlat6.x = u_xlat6.x * _FresnelStr;
					    u_xlat6.x = exp2(u_xlat6.x);
					    u_xlat6.x = u_xlat6.x + u_xlat6.x;
					    vs_TEXCOORD4 = min(u_xlat6.x, 1.0);
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat5 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat5;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlat10.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati3].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati3].xy + u_xlat10.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendMul2" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					float u_xlat14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat14 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat2.xyz = vec3(u_xlat14) * u_xlat2.xyz;
					    u_xlat14 = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat3.xyz = vec3(u_xlat14) * in_NORMAL0.xyz;
					    u_xlat2.x = dot(u_xlat3.xyz, u_xlat2.xyz);
					    u_xlat2.x = log2(abs(u_xlat2.x));
					    u_xlat2.x = u_xlat2.x * _FresnelStr;
					    u_xlat2.x = exp2(u_xlat2.x);
					    u_xlat2.x = u_xlat2.x + u_xlat2.x;
					    vs_TEXCOORD4 = min(u_xlat2.x, 1.0);
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat4 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_3_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati1;
					vec4 u_xlat2;
					int u_xlati3;
					float u_xlat4;
					float u_xlat5;
					vec3 u_xlat6;
					vec3 u_xlat8;
					vec2 u_xlat10;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    u_xlat6.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat6.x = inversesqrt(u_xlat6.x);
					    u_xlat6.xyz = u_xlat6.xxx * in_NORMAL0.xyz;
					    u_xlati3 = unity_StereoEyeIndex;
					    u_xlat8.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].yyy;
					    u_xlat8.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].xxx + u_xlat8.xyz;
					    u_xlat8.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].zzz + u_xlat8.xyz;
					    u_xlat8.xyz = u_xlat8.xyz + unity_WorldToObject[3].xyz;
					    u_xlat8.xyz = u_xlat8.xyz + (-in_POSITION0.xyz);
					    u_xlat4 = dot(u_xlat8.xyz, u_xlat8.xyz);
					    u_xlat4 = inversesqrt(u_xlat4);
					    u_xlat8.xyz = u_xlat8.xyz * vec3(u_xlat4);
					    u_xlat6.x = dot(u_xlat6.xyz, u_xlat8.xyz);
					    u_xlat6.x = log2(abs(u_xlat6.x));
					    u_xlat6.x = u_xlat6.x * _FresnelStr;
					    u_xlat6.x = exp2(u_xlat6.x);
					    u_xlat6.x = u_xlat6.x + u_xlat6.x;
					    vs_TEXCOORD4 = min(u_xlat6.x, 1.0);
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat5 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat5;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlat10.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati3].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati3].xy + u_xlat10.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendMul2" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					float u_xlat9;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat9 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat9 = inversesqrt(u_xlat9);
					    u_xlat2.xyz = vec3(u_xlat9) * u_xlat2.xyz;
					    u_xlat9 = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat9 = inversesqrt(u_xlat9);
					    u_xlat3.xyz = vec3(u_xlat9) * in_NORMAL0.xyz;
					    u_xlat9 = dot(u_xlat3.xyz, u_xlat2.xyz);
					    u_xlat9 = log2(abs(u_xlat9));
					    u_xlat9 = u_xlat9 * _FresnelStr;
					    u_xlat9 = exp2(u_xlat9);
					    u_xlat9 = u_xlat9 + u_xlat9;
					    vs_TEXCOORD4 = min(u_xlat9, 1.0);
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat4 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_3_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					vec3 u_xlat5;
					vec2 u_xlat8;
					int u_xlati10;
					float u_xlat15;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    u_xlat5.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat5.x = inversesqrt(u_xlat5.x);
					    u_xlat5.xyz = u_xlat5.xxx * in_NORMAL0.xyz;
					    u_xlati10 = unity_StereoEyeIndex;
					    u_xlat3.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati10].yyy;
					    u_xlat3.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati10].xxx + u_xlat3.xyz;
					    u_xlat3.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati10].zzz + u_xlat3.xyz;
					    u_xlat3.xyz = u_xlat3.xyz + unity_WorldToObject[3].xyz;
					    u_xlat3.xyz = u_xlat3.xyz + (-in_POSITION0.xyz);
					    u_xlat15 = dot(u_xlat3.xyz, u_xlat3.xyz);
					    u_xlat15 = inversesqrt(u_xlat15);
					    u_xlat3.xyz = vec3(u_xlat15) * u_xlat3.xyz;
					    u_xlat5.x = dot(u_xlat5.xyz, u_xlat3.xyz);
					    u_xlat5.x = log2(abs(u_xlat5.x));
					    u_xlat5.x = u_xlat5.x * _FresnelStr;
					    u_xlat5.x = exp2(u_xlat5.x);
					    u_xlat5.x = u_xlat5.x + u_xlat5.x;
					    vs_TEXCOORD4 = min(u_xlat5.x, 1.0);
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat4 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlat8.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati10].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati10].xy + u_xlat8.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendMul2" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					float u_xlat9;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat9 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat9 = inversesqrt(u_xlat9);
					    u_xlat2.xyz = vec3(u_xlat9) * u_xlat2.xyz;
					    u_xlat9 = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat9 = inversesqrt(u_xlat9);
					    u_xlat3.xyz = vec3(u_xlat9) * in_NORMAL0.xyz;
					    u_xlat9 = dot(u_xlat3.xyz, u_xlat2.xyz);
					    u_xlat9 = log2(abs(u_xlat9));
					    u_xlat9 = u_xlat9 * _FresnelStr;
					    u_xlat9 = exp2(u_xlat9);
					    u_xlat9 = u_xlat9 + u_xlat9;
					    vs_TEXCOORD4 = min(u_xlat9, 1.0);
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat4 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_3_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					vec3 u_xlat5;
					vec2 u_xlat8;
					int u_xlati10;
					float u_xlat15;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    u_xlat5.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat5.x = inversesqrt(u_xlat5.x);
					    u_xlat5.xyz = u_xlat5.xxx * in_NORMAL0.xyz;
					    u_xlati10 = unity_StereoEyeIndex;
					    u_xlat3.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati10].yyy;
					    u_xlat3.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati10].xxx + u_xlat3.xyz;
					    u_xlat3.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati10].zzz + u_xlat3.xyz;
					    u_xlat3.xyz = u_xlat3.xyz + unity_WorldToObject[3].xyz;
					    u_xlat3.xyz = u_xlat3.xyz + (-in_POSITION0.xyz);
					    u_xlat15 = dot(u_xlat3.xyz, u_xlat3.xyz);
					    u_xlat15 = inversesqrt(u_xlat15);
					    u_xlat3.xyz = vec3(u_xlat15) * u_xlat3.xyz;
					    u_xlat5.x = dot(u_xlat5.xyz, u_xlat3.xyz);
					    u_xlat5.x = log2(abs(u_xlat5.x));
					    u_xlat5.x = u_xlat5.x * _FresnelStr;
					    u_xlat5.x = exp2(u_xlat5.x);
					    u_xlat5.x = u_xlat5.x + u_xlat5.x;
					    vs_TEXCOORD4 = min(u_xlat5.x, 1.0);
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat4 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlat8.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati10].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati10].xy + u_xlat8.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendMul2" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					float u_xlat14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat14 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat2.xyz = vec3(u_xlat14) * u_xlat2.xyz;
					    u_xlat14 = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat3.xyz = vec3(u_xlat14) * in_NORMAL0.xyz;
					    u_xlat2.x = dot(u_xlat3.xyz, u_xlat2.xyz);
					    u_xlat2.x = log2(abs(u_xlat2.x));
					    u_xlat2.x = u_xlat2.x * _FresnelStr;
					    u_xlat2.x = exp2(u_xlat2.x);
					    u_xlat2.x = u_xlat2.x + u_xlat2.x;
					    vs_TEXCOORD4 = min(u_xlat2.x, 1.0);
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat4 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_3_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati1;
					vec4 u_xlat2;
					int u_xlati3;
					float u_xlat4;
					float u_xlat5;
					vec3 u_xlat6;
					vec3 u_xlat8;
					vec2 u_xlat10;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    u_xlat6.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat6.x = inversesqrt(u_xlat6.x);
					    u_xlat6.xyz = u_xlat6.xxx * in_NORMAL0.xyz;
					    u_xlati3 = unity_StereoEyeIndex;
					    u_xlat8.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].yyy;
					    u_xlat8.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].xxx + u_xlat8.xyz;
					    u_xlat8.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].zzz + u_xlat8.xyz;
					    u_xlat8.xyz = u_xlat8.xyz + unity_WorldToObject[3].xyz;
					    u_xlat8.xyz = u_xlat8.xyz + (-in_POSITION0.xyz);
					    u_xlat4 = dot(u_xlat8.xyz, u_xlat8.xyz);
					    u_xlat4 = inversesqrt(u_xlat4);
					    u_xlat8.xyz = u_xlat8.xyz * vec3(u_xlat4);
					    u_xlat6.x = dot(u_xlat6.xyz, u_xlat8.xyz);
					    u_xlat6.x = log2(abs(u_xlat6.x));
					    u_xlat6.x = u_xlat6.x * _FresnelStr;
					    u_xlat6.x = exp2(u_xlat6.x);
					    u_xlat6.x = u_xlat6.x + u_xlat6.x;
					    vs_TEXCOORD4 = min(u_xlat6.x, 1.0);
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat5 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat5;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlat10.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati3].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati3].xy + u_xlat10.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendMul2" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					float u_xlat14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat14 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat2.xyz = vec3(u_xlat14) * u_xlat2.xyz;
					    u_xlat14 = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat3.xyz = vec3(u_xlat14) * in_NORMAL0.xyz;
					    u_xlat2.x = dot(u_xlat3.xyz, u_xlat2.xyz);
					    u_xlat2.x = log2(abs(u_xlat2.x));
					    u_xlat2.x = u_xlat2.x * _FresnelStr;
					    u_xlat2.x = exp2(u_xlat2.x);
					    u_xlat2.x = u_xlat2.x + u_xlat2.x;
					    vs_TEXCOORD4 = min(u_xlat2.x, 1.0);
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat4 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_3_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati1;
					vec4 u_xlat2;
					int u_xlati3;
					float u_xlat4;
					float u_xlat5;
					vec3 u_xlat6;
					vec3 u_xlat8;
					vec2 u_xlat10;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    u_xlat6.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat6.x = inversesqrt(u_xlat6.x);
					    u_xlat6.xyz = u_xlat6.xxx * in_NORMAL0.xyz;
					    u_xlati3 = unity_StereoEyeIndex;
					    u_xlat8.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].yyy;
					    u_xlat8.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].xxx + u_xlat8.xyz;
					    u_xlat8.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].zzz + u_xlat8.xyz;
					    u_xlat8.xyz = u_xlat8.xyz + unity_WorldToObject[3].xyz;
					    u_xlat8.xyz = u_xlat8.xyz + (-in_POSITION0.xyz);
					    u_xlat4 = dot(u_xlat8.xyz, u_xlat8.xyz);
					    u_xlat4 = inversesqrt(u_xlat4);
					    u_xlat8.xyz = u_xlat8.xyz * vec3(u_xlat4);
					    u_xlat6.x = dot(u_xlat6.xyz, u_xlat8.xyz);
					    u_xlat6.x = log2(abs(u_xlat6.x));
					    u_xlat6.x = u_xlat6.x * _FresnelStr;
					    u_xlat6.x = exp2(u_xlat6.x);
					    u_xlat6.x = u_xlat6.x + u_xlat6.x;
					    vs_TEXCOORD4 = min(u_xlat6.x, 1.0);
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat5 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat5;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlat10.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati3].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati3].xy + u_xlat10.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendMul2" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					float u_xlat14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat14 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat2.xyz = vec3(u_xlat14) * u_xlat2.xyz;
					    u_xlat14 = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat3.xyz = vec3(u_xlat14) * in_NORMAL0.xyz;
					    u_xlat2.x = dot(u_xlat3.xyz, u_xlat2.xyz);
					    u_xlat2.x = log2(abs(u_xlat2.x));
					    u_xlat2.x = u_xlat2.x * _FresnelStr;
					    u_xlat2.x = exp2(u_xlat2.x);
					    u_xlat2.x = u_xlat2.x + u_xlat2.x;
					    vs_TEXCOORD4 = min(u_xlat2.x, 1.0);
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat4 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_3_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati1;
					vec4 u_xlat2;
					int u_xlati3;
					float u_xlat4;
					float u_xlat5;
					vec3 u_xlat6;
					vec3 u_xlat8;
					vec2 u_xlat10;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    u_xlat6.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat6.x = inversesqrt(u_xlat6.x);
					    u_xlat6.xyz = u_xlat6.xxx * in_NORMAL0.xyz;
					    u_xlati3 = unity_StereoEyeIndex;
					    u_xlat8.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].yyy;
					    u_xlat8.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].xxx + u_xlat8.xyz;
					    u_xlat8.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].zzz + u_xlat8.xyz;
					    u_xlat8.xyz = u_xlat8.xyz + unity_WorldToObject[3].xyz;
					    u_xlat8.xyz = u_xlat8.xyz + (-in_POSITION0.xyz);
					    u_xlat4 = dot(u_xlat8.xyz, u_xlat8.xyz);
					    u_xlat4 = inversesqrt(u_xlat4);
					    u_xlat8.xyz = u_xlat8.xyz * vec3(u_xlat4);
					    u_xlat6.x = dot(u_xlat6.xyz, u_xlat8.xyz);
					    u_xlat6.x = log2(abs(u_xlat6.x));
					    u_xlat6.x = u_xlat6.x * _FresnelStr;
					    u_xlat6.x = exp2(u_xlat6.x);
					    u_xlat6.x = u_xlat6.x + u_xlat6.x;
					    vs_TEXCOORD4 = min(u_xlat6.x, 1.0);
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat5 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat5;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlat10.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati3].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati3].xy + u_xlat10.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendMul2" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					float u_xlat14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat14 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat2.xyz = vec3(u_xlat14) * u_xlat2.xyz;
					    u_xlat14 = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat3.xyz = vec3(u_xlat14) * in_NORMAL0.xyz;
					    u_xlat2.x = dot(u_xlat3.xyz, u_xlat2.xyz);
					    u_xlat2.x = log2(abs(u_xlat2.x));
					    u_xlat2.x = u_xlat2.x * _FresnelStr;
					    u_xlat2.x = exp2(u_xlat2.x);
					    u_xlat2.x = u_xlat2.x + u_xlat2.x;
					    vs_TEXCOORD4 = min(u_xlat2.x, 1.0);
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat4 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_3_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati1;
					vec4 u_xlat2;
					int u_xlati3;
					float u_xlat4;
					float u_xlat5;
					vec3 u_xlat6;
					vec3 u_xlat8;
					vec2 u_xlat10;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    u_xlat6.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat6.x = inversesqrt(u_xlat6.x);
					    u_xlat6.xyz = u_xlat6.xxx * in_NORMAL0.xyz;
					    u_xlati3 = unity_StereoEyeIndex;
					    u_xlat8.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].yyy;
					    u_xlat8.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].xxx + u_xlat8.xyz;
					    u_xlat8.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].zzz + u_xlat8.xyz;
					    u_xlat8.xyz = u_xlat8.xyz + unity_WorldToObject[3].xyz;
					    u_xlat8.xyz = u_xlat8.xyz + (-in_POSITION0.xyz);
					    u_xlat4 = dot(u_xlat8.xyz, u_xlat8.xyz);
					    u_xlat4 = inversesqrt(u_xlat4);
					    u_xlat8.xyz = u_xlat8.xyz * vec3(u_xlat4);
					    u_xlat6.x = dot(u_xlat6.xyz, u_xlat8.xyz);
					    u_xlat6.x = log2(abs(u_xlat6.x));
					    u_xlat6.x = u_xlat6.x * _FresnelStr;
					    u_xlat6.x = exp2(u_xlat6.x);
					    u_xlat6.x = u_xlat6.x + u_xlat6.x;
					    vs_TEXCOORD4 = min(u_xlat6.x, 1.0);
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat5 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat5;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlat10.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati3].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati3].xy + u_xlat10.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendMul2" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					float u_xlat14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat14 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat2.xyz = vec3(u_xlat14) * u_xlat2.xyz;
					    u_xlat14 = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat3.xyz = vec3(u_xlat14) * in_NORMAL0.xyz;
					    u_xlat2.x = dot(u_xlat3.xyz, u_xlat2.xyz);
					    u_xlat2.x = log2(abs(u_xlat2.x));
					    u_xlat2.x = u_xlat2.x * _FresnelStr;
					    u_xlat2.x = exp2(u_xlat2.x);
					    u_xlat2.x = u_xlat2.x + u_xlat2.x;
					    vs_TEXCOORD4 = min(u_xlat2.x, 1.0);
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat4 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_3_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati1;
					vec4 u_xlat2;
					int u_xlati3;
					float u_xlat4;
					float u_xlat5;
					vec3 u_xlat6;
					vec3 u_xlat8;
					vec2 u_xlat10;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    u_xlat6.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat6.x = inversesqrt(u_xlat6.x);
					    u_xlat6.xyz = u_xlat6.xxx * in_NORMAL0.xyz;
					    u_xlati3 = unity_StereoEyeIndex;
					    u_xlat8.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].yyy;
					    u_xlat8.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].xxx + u_xlat8.xyz;
					    u_xlat8.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].zzz + u_xlat8.xyz;
					    u_xlat8.xyz = u_xlat8.xyz + unity_WorldToObject[3].xyz;
					    u_xlat8.xyz = u_xlat8.xyz + (-in_POSITION0.xyz);
					    u_xlat4 = dot(u_xlat8.xyz, u_xlat8.xyz);
					    u_xlat4 = inversesqrt(u_xlat4);
					    u_xlat8.xyz = u_xlat8.xyz * vec3(u_xlat4);
					    u_xlat6.x = dot(u_xlat6.xyz, u_xlat8.xyz);
					    u_xlat6.x = log2(abs(u_xlat6.x));
					    u_xlat6.x = u_xlat6.x * _FresnelStr;
					    u_xlat6.x = exp2(u_xlat6.x);
					    u_xlat6.x = u_xlat6.x + u_xlat6.x;
					    vs_TEXCOORD4 = min(u_xlat6.x, 1.0);
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat5 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat5;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlat10.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati3].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati3].xy + u_xlat10.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendMul2" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					float u_xlat14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat14 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat2.xyz = vec3(u_xlat14) * u_xlat2.xyz;
					    u_xlat14 = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat3.xyz = vec3(u_xlat14) * in_NORMAL0.xyz;
					    u_xlat2.x = dot(u_xlat3.xyz, u_xlat2.xyz);
					    u_xlat2.x = log2(abs(u_xlat2.x));
					    u_xlat2.x = u_xlat2.x * _FresnelStr;
					    u_xlat2.x = exp2(u_xlat2.x);
					    u_xlat2.x = u_xlat2.x + u_xlat2.x;
					    vs_TEXCOORD4 = min(u_xlat2.x, 1.0);
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat4 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_3_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati1;
					vec4 u_xlat2;
					int u_xlati3;
					float u_xlat4;
					float u_xlat5;
					vec3 u_xlat6;
					vec3 u_xlat8;
					vec2 u_xlat10;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    u_xlat6.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat6.x = inversesqrt(u_xlat6.x);
					    u_xlat6.xyz = u_xlat6.xxx * in_NORMAL0.xyz;
					    u_xlati3 = unity_StereoEyeIndex;
					    u_xlat8.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].yyy;
					    u_xlat8.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].xxx + u_xlat8.xyz;
					    u_xlat8.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].zzz + u_xlat8.xyz;
					    u_xlat8.xyz = u_xlat8.xyz + unity_WorldToObject[3].xyz;
					    u_xlat8.xyz = u_xlat8.xyz + (-in_POSITION0.xyz);
					    u_xlat4 = dot(u_xlat8.xyz, u_xlat8.xyz);
					    u_xlat4 = inversesqrt(u_xlat4);
					    u_xlat8.xyz = u_xlat8.xyz * vec3(u_xlat4);
					    u_xlat6.x = dot(u_xlat6.xyz, u_xlat8.xyz);
					    u_xlat6.x = log2(abs(u_xlat6.x));
					    u_xlat6.x = u_xlat6.x * _FresnelStr;
					    u_xlat6.x = exp2(u_xlat6.x);
					    u_xlat6.x = u_xlat6.x + u_xlat6.x;
					    vs_TEXCOORD4 = min(u_xlat6.x, 1.0);
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat5 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat5;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlat10.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati3].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati3].xy + u_xlat10.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendMul2" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    u_xlat2 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat2;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec2 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					float u_xlat3;
					int u_xlati6;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    u_xlat3 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat3;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlati6 = unity_StereoEyeIndex;
					    u_xlat1.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati6].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati6].xy + u_xlat1.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendMul2" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    u_xlat2 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat2;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec2 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					float u_xlat3;
					int u_xlati6;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    u_xlat3 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat3;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlati6 = unity_StereoEyeIndex;
					    u_xlat1.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati6].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati6].xy + u_xlat1.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendMul2" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat2 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat2;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec2 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					float u_xlat3;
					int u_xlati6;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat3 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat3;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlati6 = unity_StereoEyeIndex;
					    u_xlat1.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati6].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati6].xy + u_xlat1.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendMul2" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat2 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat2;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec2 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					float u_xlat3;
					int u_xlati6;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat3 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat3;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlati6 = unity_StereoEyeIndex;
					    u_xlat1.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati6].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati6].xy + u_xlat1.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendMul2" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat2 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat2;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec2 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					float u_xlat3;
					int u_xlati6;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat3 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat3;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlati6 = unity_StereoEyeIndex;
					    u_xlat1.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati6].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati6].xy + u_xlat1.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendMul2" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat2 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat2;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec2 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					float u_xlat3;
					int u_xlati6;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat3 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat3;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlati6 = unity_StereoEyeIndex;
					    u_xlat1.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati6].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati6].xy + u_xlat1.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendMul2" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat2 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat2;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec2 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					float u_xlat3;
					int u_xlati6;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat3 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat3;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlati6 = unity_StereoEyeIndex;
					    u_xlat1.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati6].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati6].xy + u_xlat1.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendMul2" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat2 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat2;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec2 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					float u_xlat3;
					int u_xlati6;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat3 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat3;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlati6 = unity_StereoEyeIndex;
					    u_xlat1.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati6].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati6].xy + u_xlat1.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendMul2" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    u_xlat2 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat2;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec2 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					float u_xlat3;
					int u_xlati6;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    u_xlat3 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat3;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlati6 = unity_StereoEyeIndex;
					    u_xlat1.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati6].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati6].xy + u_xlat1.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendMul2" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    u_xlat2 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat2;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec2 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					float u_xlat3;
					int u_xlati6;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    u_xlat3 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat3;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlati6 = unity_StereoEyeIndex;
					    u_xlat1.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati6].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati6].xy + u_xlat1.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendMul2" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat2 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat2;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec2 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					float u_xlat3;
					int u_xlati6;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat3 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat3;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlati6 = unity_StereoEyeIndex;
					    u_xlat1.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati6].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati6].xy + u_xlat1.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendMul2" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat2 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat2;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec2 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					float u_xlat3;
					int u_xlati6;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat3 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat3;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlati6 = unity_StereoEyeIndex;
					    u_xlat1.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati6].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati6].xy + u_xlat1.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendMul2" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat2 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat2;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec2 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					float u_xlat3;
					int u_xlati6;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat3 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat3;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlati6 = unity_StereoEyeIndex;
					    u_xlat1.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati6].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati6].xy + u_xlat1.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendMul2" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat2 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat2;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec2 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					float u_xlat3;
					int u_xlati6;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat3 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat3;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlati6 = unity_StereoEyeIndex;
					    u_xlat1.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati6].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati6].xy + u_xlat1.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendMul2" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat2 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat2;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec2 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					float u_xlat3;
					int u_xlati6;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat3 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat3;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlati6 = unity_StereoEyeIndex;
					    u_xlat1.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati6].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati6].xy + u_xlat1.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendMul2" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat2 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat2;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec2 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					float u_xlat3;
					int u_xlati6;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat3 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat3;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlati6 = unity_StereoEyeIndex;
					    u_xlat1.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati6].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati6].xy + u_xlat1.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendMul2" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					float u_xlat9;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat9 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat9 = inversesqrt(u_xlat9);
					    u_xlat2.xyz = vec3(u_xlat9) * u_xlat2.xyz;
					    u_xlat9 = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat9 = inversesqrt(u_xlat9);
					    u_xlat3.xyz = vec3(u_xlat9) * in_NORMAL0.xyz;
					    u_xlat9 = dot(u_xlat3.xyz, u_xlat2.xyz);
					    u_xlat9 = log2(abs(u_xlat9));
					    u_xlat9 = u_xlat9 * _FresnelStr;
					    u_xlat9 = exp2(u_xlat9);
					    u_xlat9 = u_xlat9 + u_xlat9;
					    vs_TEXCOORD4 = min(u_xlat9, 1.0);
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    u_xlat4 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_3_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					vec3 u_xlat5;
					vec2 u_xlat8;
					int u_xlati10;
					float u_xlat15;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat5.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat5.x = inversesqrt(u_xlat5.x);
					    u_xlat5.xyz = u_xlat5.xxx * in_NORMAL0.xyz;
					    u_xlati10 = unity_StereoEyeIndex;
					    u_xlat3.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati10].yyy;
					    u_xlat3.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati10].xxx + u_xlat3.xyz;
					    u_xlat3.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati10].zzz + u_xlat3.xyz;
					    u_xlat3.xyz = u_xlat3.xyz + unity_WorldToObject[3].xyz;
					    u_xlat3.xyz = u_xlat3.xyz + (-in_POSITION0.xyz);
					    u_xlat15 = dot(u_xlat3.xyz, u_xlat3.xyz);
					    u_xlat15 = inversesqrt(u_xlat15);
					    u_xlat3.xyz = vec3(u_xlat15) * u_xlat3.xyz;
					    u_xlat5.x = dot(u_xlat5.xyz, u_xlat3.xyz);
					    u_xlat5.x = log2(abs(u_xlat5.x));
					    u_xlat5.x = u_xlat5.x * _FresnelStr;
					    u_xlat5.x = exp2(u_xlat5.x);
					    u_xlat5.x = u_xlat5.x + u_xlat5.x;
					    vs_TEXCOORD4 = min(u_xlat5.x, 1.0);
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    u_xlat4 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlat8.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati10].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati10].xy + u_xlat8.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendMul2" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					float u_xlat9;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat9 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat9 = inversesqrt(u_xlat9);
					    u_xlat2.xyz = vec3(u_xlat9) * u_xlat2.xyz;
					    u_xlat9 = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat9 = inversesqrt(u_xlat9);
					    u_xlat3.xyz = vec3(u_xlat9) * in_NORMAL0.xyz;
					    u_xlat9 = dot(u_xlat3.xyz, u_xlat2.xyz);
					    u_xlat9 = log2(abs(u_xlat9));
					    u_xlat9 = u_xlat9 * _FresnelStr;
					    u_xlat9 = exp2(u_xlat9);
					    u_xlat9 = u_xlat9 + u_xlat9;
					    vs_TEXCOORD4 = min(u_xlat9, 1.0);
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    u_xlat4 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_3_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					vec3 u_xlat5;
					vec2 u_xlat8;
					int u_xlati10;
					float u_xlat15;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat5.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat5.x = inversesqrt(u_xlat5.x);
					    u_xlat5.xyz = u_xlat5.xxx * in_NORMAL0.xyz;
					    u_xlati10 = unity_StereoEyeIndex;
					    u_xlat3.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati10].yyy;
					    u_xlat3.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati10].xxx + u_xlat3.xyz;
					    u_xlat3.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati10].zzz + u_xlat3.xyz;
					    u_xlat3.xyz = u_xlat3.xyz + unity_WorldToObject[3].xyz;
					    u_xlat3.xyz = u_xlat3.xyz + (-in_POSITION0.xyz);
					    u_xlat15 = dot(u_xlat3.xyz, u_xlat3.xyz);
					    u_xlat15 = inversesqrt(u_xlat15);
					    u_xlat3.xyz = vec3(u_xlat15) * u_xlat3.xyz;
					    u_xlat5.x = dot(u_xlat5.xyz, u_xlat3.xyz);
					    u_xlat5.x = log2(abs(u_xlat5.x));
					    u_xlat5.x = u_xlat5.x * _FresnelStr;
					    u_xlat5.x = exp2(u_xlat5.x);
					    u_xlat5.x = u_xlat5.x + u_xlat5.x;
					    vs_TEXCOORD4 = min(u_xlat5.x, 1.0);
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    u_xlat4 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlat8.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati10].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati10].xy + u_xlat8.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendMul2" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					float u_xlat14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat14 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat2.xyz = vec3(u_xlat14) * u_xlat2.xyz;
					    u_xlat14 = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat3.xyz = vec3(u_xlat14) * in_NORMAL0.xyz;
					    u_xlat2.x = dot(u_xlat3.xyz, u_xlat2.xyz);
					    u_xlat2.x = log2(abs(u_xlat2.x));
					    u_xlat2.x = u_xlat2.x * _FresnelStr;
					    u_xlat2.x = exp2(u_xlat2.x);
					    u_xlat2.x = u_xlat2.x + u_xlat2.x;
					    vs_TEXCOORD4 = min(u_xlat2.x, 1.0);
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat4 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_3_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati1;
					vec4 u_xlat2;
					int u_xlati3;
					float u_xlat4;
					float u_xlat5;
					vec3 u_xlat6;
					vec3 u_xlat8;
					vec2 u_xlat10;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat6.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat6.x = inversesqrt(u_xlat6.x);
					    u_xlat6.xyz = u_xlat6.xxx * in_NORMAL0.xyz;
					    u_xlati3 = unity_StereoEyeIndex;
					    u_xlat8.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].yyy;
					    u_xlat8.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].xxx + u_xlat8.xyz;
					    u_xlat8.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].zzz + u_xlat8.xyz;
					    u_xlat8.xyz = u_xlat8.xyz + unity_WorldToObject[3].xyz;
					    u_xlat8.xyz = u_xlat8.xyz + (-in_POSITION0.xyz);
					    u_xlat4 = dot(u_xlat8.xyz, u_xlat8.xyz);
					    u_xlat4 = inversesqrt(u_xlat4);
					    u_xlat8.xyz = u_xlat8.xyz * vec3(u_xlat4);
					    u_xlat6.x = dot(u_xlat6.xyz, u_xlat8.xyz);
					    u_xlat6.x = log2(abs(u_xlat6.x));
					    u_xlat6.x = u_xlat6.x * _FresnelStr;
					    u_xlat6.x = exp2(u_xlat6.x);
					    u_xlat6.x = u_xlat6.x + u_xlat6.x;
					    vs_TEXCOORD4 = min(u_xlat6.x, 1.0);
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat5 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat5;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlat10.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati3].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati3].xy + u_xlat10.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendMul2" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					float u_xlat14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat14 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat2.xyz = vec3(u_xlat14) * u_xlat2.xyz;
					    u_xlat14 = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat3.xyz = vec3(u_xlat14) * in_NORMAL0.xyz;
					    u_xlat2.x = dot(u_xlat3.xyz, u_xlat2.xyz);
					    u_xlat2.x = log2(abs(u_xlat2.x));
					    u_xlat2.x = u_xlat2.x * _FresnelStr;
					    u_xlat2.x = exp2(u_xlat2.x);
					    u_xlat2.x = u_xlat2.x + u_xlat2.x;
					    vs_TEXCOORD4 = min(u_xlat2.x, 1.0);
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat4 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_3_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati1;
					vec4 u_xlat2;
					int u_xlati3;
					float u_xlat4;
					float u_xlat5;
					vec3 u_xlat6;
					vec3 u_xlat8;
					vec2 u_xlat10;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat6.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat6.x = inversesqrt(u_xlat6.x);
					    u_xlat6.xyz = u_xlat6.xxx * in_NORMAL0.xyz;
					    u_xlati3 = unity_StereoEyeIndex;
					    u_xlat8.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].yyy;
					    u_xlat8.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].xxx + u_xlat8.xyz;
					    u_xlat8.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].zzz + u_xlat8.xyz;
					    u_xlat8.xyz = u_xlat8.xyz + unity_WorldToObject[3].xyz;
					    u_xlat8.xyz = u_xlat8.xyz + (-in_POSITION0.xyz);
					    u_xlat4 = dot(u_xlat8.xyz, u_xlat8.xyz);
					    u_xlat4 = inversesqrt(u_xlat4);
					    u_xlat8.xyz = u_xlat8.xyz * vec3(u_xlat4);
					    u_xlat6.x = dot(u_xlat6.xyz, u_xlat8.xyz);
					    u_xlat6.x = log2(abs(u_xlat6.x));
					    u_xlat6.x = u_xlat6.x * _FresnelStr;
					    u_xlat6.x = exp2(u_xlat6.x);
					    u_xlat6.x = u_xlat6.x + u_xlat6.x;
					    vs_TEXCOORD4 = min(u_xlat6.x, 1.0);
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat5 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat5;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlat10.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati3].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati3].xy + u_xlat10.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendMul2" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					float u_xlat14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat14 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat2.xyz = vec3(u_xlat14) * u_xlat2.xyz;
					    u_xlat14 = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat3.xyz = vec3(u_xlat14) * in_NORMAL0.xyz;
					    u_xlat2.x = dot(u_xlat3.xyz, u_xlat2.xyz);
					    u_xlat2.x = log2(abs(u_xlat2.x));
					    u_xlat2.x = u_xlat2.x * _FresnelStr;
					    u_xlat2.x = exp2(u_xlat2.x);
					    u_xlat2.x = u_xlat2.x + u_xlat2.x;
					    vs_TEXCOORD4 = min(u_xlat2.x, 1.0);
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat4 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_3_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati1;
					vec4 u_xlat2;
					int u_xlati3;
					float u_xlat4;
					float u_xlat5;
					vec3 u_xlat6;
					vec3 u_xlat8;
					vec2 u_xlat10;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat6.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat6.x = inversesqrt(u_xlat6.x);
					    u_xlat6.xyz = u_xlat6.xxx * in_NORMAL0.xyz;
					    u_xlati3 = unity_StereoEyeIndex;
					    u_xlat8.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].yyy;
					    u_xlat8.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].xxx + u_xlat8.xyz;
					    u_xlat8.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].zzz + u_xlat8.xyz;
					    u_xlat8.xyz = u_xlat8.xyz + unity_WorldToObject[3].xyz;
					    u_xlat8.xyz = u_xlat8.xyz + (-in_POSITION0.xyz);
					    u_xlat4 = dot(u_xlat8.xyz, u_xlat8.xyz);
					    u_xlat4 = inversesqrt(u_xlat4);
					    u_xlat8.xyz = u_xlat8.xyz * vec3(u_xlat4);
					    u_xlat6.x = dot(u_xlat6.xyz, u_xlat8.xyz);
					    u_xlat6.x = log2(abs(u_xlat6.x));
					    u_xlat6.x = u_xlat6.x * _FresnelStr;
					    u_xlat6.x = exp2(u_xlat6.x);
					    u_xlat6.x = u_xlat6.x + u_xlat6.x;
					    vs_TEXCOORD4 = min(u_xlat6.x, 1.0);
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat5 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat5;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlat10.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati3].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati3].xy + u_xlat10.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendMul2" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					float u_xlat14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat14 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat2.xyz = vec3(u_xlat14) * u_xlat2.xyz;
					    u_xlat14 = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat3.xyz = vec3(u_xlat14) * in_NORMAL0.xyz;
					    u_xlat2.x = dot(u_xlat3.xyz, u_xlat2.xyz);
					    u_xlat2.x = log2(abs(u_xlat2.x));
					    u_xlat2.x = u_xlat2.x * _FresnelStr;
					    u_xlat2.x = exp2(u_xlat2.x);
					    u_xlat2.x = u_xlat2.x + u_xlat2.x;
					    vs_TEXCOORD4 = min(u_xlat2.x, 1.0);
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat4 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_3_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati1;
					vec4 u_xlat2;
					int u_xlati3;
					float u_xlat4;
					float u_xlat5;
					vec3 u_xlat6;
					vec3 u_xlat8;
					vec2 u_xlat10;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat6.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat6.x = inversesqrt(u_xlat6.x);
					    u_xlat6.xyz = u_xlat6.xxx * in_NORMAL0.xyz;
					    u_xlati3 = unity_StereoEyeIndex;
					    u_xlat8.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].yyy;
					    u_xlat8.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].xxx + u_xlat8.xyz;
					    u_xlat8.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].zzz + u_xlat8.xyz;
					    u_xlat8.xyz = u_xlat8.xyz + unity_WorldToObject[3].xyz;
					    u_xlat8.xyz = u_xlat8.xyz + (-in_POSITION0.xyz);
					    u_xlat4 = dot(u_xlat8.xyz, u_xlat8.xyz);
					    u_xlat4 = inversesqrt(u_xlat4);
					    u_xlat8.xyz = u_xlat8.xyz * vec3(u_xlat4);
					    u_xlat6.x = dot(u_xlat6.xyz, u_xlat8.xyz);
					    u_xlat6.x = log2(abs(u_xlat6.x));
					    u_xlat6.x = u_xlat6.x * _FresnelStr;
					    u_xlat6.x = exp2(u_xlat6.x);
					    u_xlat6.x = u_xlat6.x + u_xlat6.x;
					    vs_TEXCOORD4 = min(u_xlat6.x, 1.0);
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat5 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat5;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlat10.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati3].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati3].xy + u_xlat10.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendMul2" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					float u_xlat14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat14 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat2.xyz = vec3(u_xlat14) * u_xlat2.xyz;
					    u_xlat14 = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat3.xyz = vec3(u_xlat14) * in_NORMAL0.xyz;
					    u_xlat2.x = dot(u_xlat3.xyz, u_xlat2.xyz);
					    u_xlat2.x = log2(abs(u_xlat2.x));
					    u_xlat2.x = u_xlat2.x * _FresnelStr;
					    u_xlat2.x = exp2(u_xlat2.x);
					    u_xlat2.x = u_xlat2.x + u_xlat2.x;
					    vs_TEXCOORD4 = min(u_xlat2.x, 1.0);
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat4 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_3_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati1;
					vec4 u_xlat2;
					int u_xlati3;
					float u_xlat4;
					float u_xlat5;
					vec3 u_xlat6;
					vec3 u_xlat8;
					vec2 u_xlat10;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat6.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat6.x = inversesqrt(u_xlat6.x);
					    u_xlat6.xyz = u_xlat6.xxx * in_NORMAL0.xyz;
					    u_xlati3 = unity_StereoEyeIndex;
					    u_xlat8.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].yyy;
					    u_xlat8.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].xxx + u_xlat8.xyz;
					    u_xlat8.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].zzz + u_xlat8.xyz;
					    u_xlat8.xyz = u_xlat8.xyz + unity_WorldToObject[3].xyz;
					    u_xlat8.xyz = u_xlat8.xyz + (-in_POSITION0.xyz);
					    u_xlat4 = dot(u_xlat8.xyz, u_xlat8.xyz);
					    u_xlat4 = inversesqrt(u_xlat4);
					    u_xlat8.xyz = u_xlat8.xyz * vec3(u_xlat4);
					    u_xlat6.x = dot(u_xlat6.xyz, u_xlat8.xyz);
					    u_xlat6.x = log2(abs(u_xlat6.x));
					    u_xlat6.x = u_xlat6.x * _FresnelStr;
					    u_xlat6.x = exp2(u_xlat6.x);
					    u_xlat6.x = u_xlat6.x + u_xlat6.x;
					    vs_TEXCOORD4 = min(u_xlat6.x, 1.0);
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat5 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat5;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlat10.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati3].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati3].xy + u_xlat10.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendMul2" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					float u_xlat14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat14 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat2.xyz = vec3(u_xlat14) * u_xlat2.xyz;
					    u_xlat14 = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat3.xyz = vec3(u_xlat14) * in_NORMAL0.xyz;
					    u_xlat2.x = dot(u_xlat3.xyz, u_xlat2.xyz);
					    u_xlat2.x = log2(abs(u_xlat2.x));
					    u_xlat2.x = u_xlat2.x * _FresnelStr;
					    u_xlat2.x = exp2(u_xlat2.x);
					    u_xlat2.x = u_xlat2.x + u_xlat2.x;
					    vs_TEXCOORD4 = min(u_xlat2.x, 1.0);
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat4 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_3_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati1;
					vec4 u_xlat2;
					int u_xlati3;
					float u_xlat4;
					float u_xlat5;
					vec3 u_xlat6;
					vec3 u_xlat8;
					vec2 u_xlat10;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat6.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat6.x = inversesqrt(u_xlat6.x);
					    u_xlat6.xyz = u_xlat6.xxx * in_NORMAL0.xyz;
					    u_xlati3 = unity_StereoEyeIndex;
					    u_xlat8.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].yyy;
					    u_xlat8.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].xxx + u_xlat8.xyz;
					    u_xlat8.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].zzz + u_xlat8.xyz;
					    u_xlat8.xyz = u_xlat8.xyz + unity_WorldToObject[3].xyz;
					    u_xlat8.xyz = u_xlat8.xyz + (-in_POSITION0.xyz);
					    u_xlat4 = dot(u_xlat8.xyz, u_xlat8.xyz);
					    u_xlat4 = inversesqrt(u_xlat4);
					    u_xlat8.xyz = u_xlat8.xyz * vec3(u_xlat4);
					    u_xlat6.x = dot(u_xlat6.xyz, u_xlat8.xyz);
					    u_xlat6.x = log2(abs(u_xlat6.x));
					    u_xlat6.x = u_xlat6.x * _FresnelStr;
					    u_xlat6.x = exp2(u_xlat6.x);
					    u_xlat6.x = u_xlat6.x + u_xlat6.x;
					    vs_TEXCOORD4 = min(u_xlat6.x, 1.0);
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat5 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat5;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlat10.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati3].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati3].xy + u_xlat10.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendMul2" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					float u_xlat9;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat9 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat9 = inversesqrt(u_xlat9);
					    u_xlat2.xyz = vec3(u_xlat9) * u_xlat2.xyz;
					    u_xlat9 = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat9 = inversesqrt(u_xlat9);
					    u_xlat3.xyz = vec3(u_xlat9) * in_NORMAL0.xyz;
					    u_xlat9 = dot(u_xlat3.xyz, u_xlat2.xyz);
					    u_xlat9 = log2(abs(u_xlat9));
					    u_xlat9 = u_xlat9 * _FresnelStr;
					    u_xlat9 = exp2(u_xlat9);
					    u_xlat9 = u_xlat9 + u_xlat9;
					    vs_TEXCOORD4 = min(u_xlat9, 1.0);
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    u_xlat4 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_3_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					vec3 u_xlat5;
					vec2 u_xlat8;
					int u_xlati10;
					float u_xlat15;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat5.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat5.x = inversesqrt(u_xlat5.x);
					    u_xlat5.xyz = u_xlat5.xxx * in_NORMAL0.xyz;
					    u_xlati10 = unity_StereoEyeIndex;
					    u_xlat3.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati10].yyy;
					    u_xlat3.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati10].xxx + u_xlat3.xyz;
					    u_xlat3.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati10].zzz + u_xlat3.xyz;
					    u_xlat3.xyz = u_xlat3.xyz + unity_WorldToObject[3].xyz;
					    u_xlat3.xyz = u_xlat3.xyz + (-in_POSITION0.xyz);
					    u_xlat15 = dot(u_xlat3.xyz, u_xlat3.xyz);
					    u_xlat15 = inversesqrt(u_xlat15);
					    u_xlat3.xyz = vec3(u_xlat15) * u_xlat3.xyz;
					    u_xlat5.x = dot(u_xlat5.xyz, u_xlat3.xyz);
					    u_xlat5.x = log2(abs(u_xlat5.x));
					    u_xlat5.x = u_xlat5.x * _FresnelStr;
					    u_xlat5.x = exp2(u_xlat5.x);
					    u_xlat5.x = u_xlat5.x + u_xlat5.x;
					    vs_TEXCOORD4 = min(u_xlat5.x, 1.0);
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    u_xlat4 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlat8.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati10].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati10].xy + u_xlat8.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendMul2" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					float u_xlat9;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat9 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat9 = inversesqrt(u_xlat9);
					    u_xlat2.xyz = vec3(u_xlat9) * u_xlat2.xyz;
					    u_xlat9 = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat9 = inversesqrt(u_xlat9);
					    u_xlat3.xyz = vec3(u_xlat9) * in_NORMAL0.xyz;
					    u_xlat9 = dot(u_xlat3.xyz, u_xlat2.xyz);
					    u_xlat9 = log2(abs(u_xlat9));
					    u_xlat9 = u_xlat9 * _FresnelStr;
					    u_xlat9 = exp2(u_xlat9);
					    u_xlat9 = u_xlat9 + u_xlat9;
					    vs_TEXCOORD4 = min(u_xlat9, 1.0);
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    u_xlat4 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_3_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					vec3 u_xlat5;
					vec2 u_xlat8;
					int u_xlati10;
					float u_xlat15;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat5.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat5.x = inversesqrt(u_xlat5.x);
					    u_xlat5.xyz = u_xlat5.xxx * in_NORMAL0.xyz;
					    u_xlati10 = unity_StereoEyeIndex;
					    u_xlat3.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati10].yyy;
					    u_xlat3.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati10].xxx + u_xlat3.xyz;
					    u_xlat3.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati10].zzz + u_xlat3.xyz;
					    u_xlat3.xyz = u_xlat3.xyz + unity_WorldToObject[3].xyz;
					    u_xlat3.xyz = u_xlat3.xyz + (-in_POSITION0.xyz);
					    u_xlat15 = dot(u_xlat3.xyz, u_xlat3.xyz);
					    u_xlat15 = inversesqrt(u_xlat15);
					    u_xlat3.xyz = vec3(u_xlat15) * u_xlat3.xyz;
					    u_xlat5.x = dot(u_xlat5.xyz, u_xlat3.xyz);
					    u_xlat5.x = log2(abs(u_xlat5.x));
					    u_xlat5.x = u_xlat5.x * _FresnelStr;
					    u_xlat5.x = exp2(u_xlat5.x);
					    u_xlat5.x = u_xlat5.x + u_xlat5.x;
					    vs_TEXCOORD4 = min(u_xlat5.x, 1.0);
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    u_xlat4 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlat8.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati10].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati10].xy + u_xlat8.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendMul2" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					float u_xlat14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat14 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat2.xyz = vec3(u_xlat14) * u_xlat2.xyz;
					    u_xlat14 = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat3.xyz = vec3(u_xlat14) * in_NORMAL0.xyz;
					    u_xlat2.x = dot(u_xlat3.xyz, u_xlat2.xyz);
					    u_xlat2.x = log2(abs(u_xlat2.x));
					    u_xlat2.x = u_xlat2.x * _FresnelStr;
					    u_xlat2.x = exp2(u_xlat2.x);
					    u_xlat2.x = u_xlat2.x + u_xlat2.x;
					    vs_TEXCOORD4 = min(u_xlat2.x, 1.0);
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat4 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_3_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati1;
					vec4 u_xlat2;
					int u_xlati3;
					float u_xlat4;
					float u_xlat5;
					vec3 u_xlat6;
					vec3 u_xlat8;
					vec2 u_xlat10;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat6.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat6.x = inversesqrt(u_xlat6.x);
					    u_xlat6.xyz = u_xlat6.xxx * in_NORMAL0.xyz;
					    u_xlati3 = unity_StereoEyeIndex;
					    u_xlat8.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].yyy;
					    u_xlat8.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].xxx + u_xlat8.xyz;
					    u_xlat8.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].zzz + u_xlat8.xyz;
					    u_xlat8.xyz = u_xlat8.xyz + unity_WorldToObject[3].xyz;
					    u_xlat8.xyz = u_xlat8.xyz + (-in_POSITION0.xyz);
					    u_xlat4 = dot(u_xlat8.xyz, u_xlat8.xyz);
					    u_xlat4 = inversesqrt(u_xlat4);
					    u_xlat8.xyz = u_xlat8.xyz * vec3(u_xlat4);
					    u_xlat6.x = dot(u_xlat6.xyz, u_xlat8.xyz);
					    u_xlat6.x = log2(abs(u_xlat6.x));
					    u_xlat6.x = u_xlat6.x * _FresnelStr;
					    u_xlat6.x = exp2(u_xlat6.x);
					    u_xlat6.x = u_xlat6.x + u_xlat6.x;
					    vs_TEXCOORD4 = min(u_xlat6.x, 1.0);
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat5 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat5;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlat10.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati3].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati3].xy + u_xlat10.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendMul2" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					float u_xlat14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat14 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat2.xyz = vec3(u_xlat14) * u_xlat2.xyz;
					    u_xlat14 = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat3.xyz = vec3(u_xlat14) * in_NORMAL0.xyz;
					    u_xlat2.x = dot(u_xlat3.xyz, u_xlat2.xyz);
					    u_xlat2.x = log2(abs(u_xlat2.x));
					    u_xlat2.x = u_xlat2.x * _FresnelStr;
					    u_xlat2.x = exp2(u_xlat2.x);
					    u_xlat2.x = u_xlat2.x + u_xlat2.x;
					    vs_TEXCOORD4 = min(u_xlat2.x, 1.0);
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat4 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_3_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati1;
					vec4 u_xlat2;
					int u_xlati3;
					float u_xlat4;
					float u_xlat5;
					vec3 u_xlat6;
					vec3 u_xlat8;
					vec2 u_xlat10;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat6.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat6.x = inversesqrt(u_xlat6.x);
					    u_xlat6.xyz = u_xlat6.xxx * in_NORMAL0.xyz;
					    u_xlati3 = unity_StereoEyeIndex;
					    u_xlat8.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].yyy;
					    u_xlat8.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].xxx + u_xlat8.xyz;
					    u_xlat8.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].zzz + u_xlat8.xyz;
					    u_xlat8.xyz = u_xlat8.xyz + unity_WorldToObject[3].xyz;
					    u_xlat8.xyz = u_xlat8.xyz + (-in_POSITION0.xyz);
					    u_xlat4 = dot(u_xlat8.xyz, u_xlat8.xyz);
					    u_xlat4 = inversesqrt(u_xlat4);
					    u_xlat8.xyz = u_xlat8.xyz * vec3(u_xlat4);
					    u_xlat6.x = dot(u_xlat6.xyz, u_xlat8.xyz);
					    u_xlat6.x = log2(abs(u_xlat6.x));
					    u_xlat6.x = u_xlat6.x * _FresnelStr;
					    u_xlat6.x = exp2(u_xlat6.x);
					    u_xlat6.x = u_xlat6.x + u_xlat6.x;
					    vs_TEXCOORD4 = min(u_xlat6.x, 1.0);
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat5 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat5;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlat10.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati3].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati3].xy + u_xlat10.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendMul2" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					float u_xlat14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat14 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat2.xyz = vec3(u_xlat14) * u_xlat2.xyz;
					    u_xlat14 = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat3.xyz = vec3(u_xlat14) * in_NORMAL0.xyz;
					    u_xlat2.x = dot(u_xlat3.xyz, u_xlat2.xyz);
					    u_xlat2.x = log2(abs(u_xlat2.x));
					    u_xlat2.x = u_xlat2.x * _FresnelStr;
					    u_xlat2.x = exp2(u_xlat2.x);
					    u_xlat2.x = u_xlat2.x + u_xlat2.x;
					    vs_TEXCOORD4 = min(u_xlat2.x, 1.0);
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat4 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_3_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati1;
					vec4 u_xlat2;
					int u_xlati3;
					float u_xlat4;
					float u_xlat5;
					vec3 u_xlat6;
					vec3 u_xlat8;
					vec2 u_xlat10;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat6.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat6.x = inversesqrt(u_xlat6.x);
					    u_xlat6.xyz = u_xlat6.xxx * in_NORMAL0.xyz;
					    u_xlati3 = unity_StereoEyeIndex;
					    u_xlat8.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].yyy;
					    u_xlat8.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].xxx + u_xlat8.xyz;
					    u_xlat8.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].zzz + u_xlat8.xyz;
					    u_xlat8.xyz = u_xlat8.xyz + unity_WorldToObject[3].xyz;
					    u_xlat8.xyz = u_xlat8.xyz + (-in_POSITION0.xyz);
					    u_xlat4 = dot(u_xlat8.xyz, u_xlat8.xyz);
					    u_xlat4 = inversesqrt(u_xlat4);
					    u_xlat8.xyz = u_xlat8.xyz * vec3(u_xlat4);
					    u_xlat6.x = dot(u_xlat6.xyz, u_xlat8.xyz);
					    u_xlat6.x = log2(abs(u_xlat6.x));
					    u_xlat6.x = u_xlat6.x * _FresnelStr;
					    u_xlat6.x = exp2(u_xlat6.x);
					    u_xlat6.x = u_xlat6.x + u_xlat6.x;
					    vs_TEXCOORD4 = min(u_xlat6.x, 1.0);
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat5 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat5;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlat10.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati3].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati3].xy + u_xlat10.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendMul2" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					float u_xlat14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat14 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat2.xyz = vec3(u_xlat14) * u_xlat2.xyz;
					    u_xlat14 = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat3.xyz = vec3(u_xlat14) * in_NORMAL0.xyz;
					    u_xlat2.x = dot(u_xlat3.xyz, u_xlat2.xyz);
					    u_xlat2.x = log2(abs(u_xlat2.x));
					    u_xlat2.x = u_xlat2.x * _FresnelStr;
					    u_xlat2.x = exp2(u_xlat2.x);
					    u_xlat2.x = u_xlat2.x + u_xlat2.x;
					    vs_TEXCOORD4 = min(u_xlat2.x, 1.0);
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat4 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_3_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati1;
					vec4 u_xlat2;
					int u_xlati3;
					float u_xlat4;
					float u_xlat5;
					vec3 u_xlat6;
					vec3 u_xlat8;
					vec2 u_xlat10;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat6.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat6.x = inversesqrt(u_xlat6.x);
					    u_xlat6.xyz = u_xlat6.xxx * in_NORMAL0.xyz;
					    u_xlati3 = unity_StereoEyeIndex;
					    u_xlat8.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].yyy;
					    u_xlat8.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].xxx + u_xlat8.xyz;
					    u_xlat8.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].zzz + u_xlat8.xyz;
					    u_xlat8.xyz = u_xlat8.xyz + unity_WorldToObject[3].xyz;
					    u_xlat8.xyz = u_xlat8.xyz + (-in_POSITION0.xyz);
					    u_xlat4 = dot(u_xlat8.xyz, u_xlat8.xyz);
					    u_xlat4 = inversesqrt(u_xlat4);
					    u_xlat8.xyz = u_xlat8.xyz * vec3(u_xlat4);
					    u_xlat6.x = dot(u_xlat6.xyz, u_xlat8.xyz);
					    u_xlat6.x = log2(abs(u_xlat6.x));
					    u_xlat6.x = u_xlat6.x * _FresnelStr;
					    u_xlat6.x = exp2(u_xlat6.x);
					    u_xlat6.x = u_xlat6.x + u_xlat6.x;
					    vs_TEXCOORD4 = min(u_xlat6.x, 1.0);
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat5 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat5;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlat10.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati3].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati3].xy + u_xlat10.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendMul2" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					float u_xlat14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat14 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat2.xyz = vec3(u_xlat14) * u_xlat2.xyz;
					    u_xlat14 = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat3.xyz = vec3(u_xlat14) * in_NORMAL0.xyz;
					    u_xlat2.x = dot(u_xlat3.xyz, u_xlat2.xyz);
					    u_xlat2.x = log2(abs(u_xlat2.x));
					    u_xlat2.x = u_xlat2.x * _FresnelStr;
					    u_xlat2.x = exp2(u_xlat2.x);
					    u_xlat2.x = u_xlat2.x + u_xlat2.x;
					    vs_TEXCOORD4 = min(u_xlat2.x, 1.0);
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat4 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_3_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati1;
					vec4 u_xlat2;
					int u_xlati3;
					float u_xlat4;
					float u_xlat5;
					vec3 u_xlat6;
					vec3 u_xlat8;
					vec2 u_xlat10;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat6.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat6.x = inversesqrt(u_xlat6.x);
					    u_xlat6.xyz = u_xlat6.xxx * in_NORMAL0.xyz;
					    u_xlati3 = unity_StereoEyeIndex;
					    u_xlat8.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].yyy;
					    u_xlat8.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].xxx + u_xlat8.xyz;
					    u_xlat8.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].zzz + u_xlat8.xyz;
					    u_xlat8.xyz = u_xlat8.xyz + unity_WorldToObject[3].xyz;
					    u_xlat8.xyz = u_xlat8.xyz + (-in_POSITION0.xyz);
					    u_xlat4 = dot(u_xlat8.xyz, u_xlat8.xyz);
					    u_xlat4 = inversesqrt(u_xlat4);
					    u_xlat8.xyz = u_xlat8.xyz * vec3(u_xlat4);
					    u_xlat6.x = dot(u_xlat6.xyz, u_xlat8.xyz);
					    u_xlat6.x = log2(abs(u_xlat6.x));
					    u_xlat6.x = u_xlat6.x * _FresnelStr;
					    u_xlat6.x = exp2(u_xlat6.x);
					    u_xlat6.x = u_xlat6.x + u_xlat6.x;
					    vs_TEXCOORD4 = min(u_xlat6.x, 1.0);
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat5 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat5;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlat10.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati3].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati3].xy + u_xlat10.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendMul2" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					float u_xlat14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat14 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat2.xyz = vec3(u_xlat14) * u_xlat2.xyz;
					    u_xlat14 = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat3.xyz = vec3(u_xlat14) * in_NORMAL0.xyz;
					    u_xlat2.x = dot(u_xlat3.xyz, u_xlat2.xyz);
					    u_xlat2.x = log2(abs(u_xlat2.x));
					    u_xlat2.x = u_xlat2.x * _FresnelStr;
					    u_xlat2.x = exp2(u_xlat2.x);
					    u_xlat2.x = u_xlat2.x + u_xlat2.x;
					    vs_TEXCOORD4 = min(u_xlat2.x, 1.0);
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat4 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_3_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati1;
					vec4 u_xlat2;
					int u_xlati3;
					float u_xlat4;
					float u_xlat5;
					vec3 u_xlat6;
					vec3 u_xlat8;
					vec2 u_xlat10;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat6.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat6.x = inversesqrt(u_xlat6.x);
					    u_xlat6.xyz = u_xlat6.xxx * in_NORMAL0.xyz;
					    u_xlati3 = unity_StereoEyeIndex;
					    u_xlat8.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].yyy;
					    u_xlat8.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].xxx + u_xlat8.xyz;
					    u_xlat8.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].zzz + u_xlat8.xyz;
					    u_xlat8.xyz = u_xlat8.xyz + unity_WorldToObject[3].xyz;
					    u_xlat8.xyz = u_xlat8.xyz + (-in_POSITION0.xyz);
					    u_xlat4 = dot(u_xlat8.xyz, u_xlat8.xyz);
					    u_xlat4 = inversesqrt(u_xlat4);
					    u_xlat8.xyz = u_xlat8.xyz * vec3(u_xlat4);
					    u_xlat6.x = dot(u_xlat6.xyz, u_xlat8.xyz);
					    u_xlat6.x = log2(abs(u_xlat6.x));
					    u_xlat6.x = u_xlat6.x * _FresnelStr;
					    u_xlat6.x = exp2(u_xlat6.x);
					    u_xlat6.x = u_xlat6.x + u_xlat6.x;
					    vs_TEXCOORD4 = min(u_xlat6.x, 1.0);
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat5 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat5;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlat10.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati3].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati3].xy + u_xlat10.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendMul2" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    u_xlat2 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat2;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec2 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					float u_xlat3;
					int u_xlati6;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    u_xlat3 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat3;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlati6 = unity_StereoEyeIndex;
					    u_xlat1.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati6].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati6].xy + u_xlat1.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendMul2" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    u_xlat2 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat2;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec2 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					float u_xlat3;
					int u_xlati6;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    u_xlat3 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat3;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlati6 = unity_StereoEyeIndex;
					    u_xlat1.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati6].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati6].xy + u_xlat1.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendMul2" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat2 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat2;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec2 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					float u_xlat3;
					int u_xlati6;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat3 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat3;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlati6 = unity_StereoEyeIndex;
					    u_xlat1.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati6].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati6].xy + u_xlat1.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendMul2" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat2 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat2;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec2 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					float u_xlat3;
					int u_xlati6;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat3 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat3;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlati6 = unity_StereoEyeIndex;
					    u_xlat1.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati6].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati6].xy + u_xlat1.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendMul2" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat2 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat2;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec2 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					float u_xlat3;
					int u_xlati6;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat3 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat3;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlati6 = unity_StereoEyeIndex;
					    u_xlat1.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati6].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati6].xy + u_xlat1.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendMul2" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat2 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat2;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec2 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					float u_xlat3;
					int u_xlati6;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat3 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat3;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlati6 = unity_StereoEyeIndex;
					    u_xlat1.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati6].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati6].xy + u_xlat1.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendMul2" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat2 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat2;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec2 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					float u_xlat3;
					int u_xlati6;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat3 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat3;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlati6 = unity_StereoEyeIndex;
					    u_xlat1.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati6].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati6].xy + u_xlat1.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendMul2" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat2 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat2;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec2 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					float u_xlat3;
					int u_xlati6;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat3 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat3;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlati6 = unity_StereoEyeIndex;
					    u_xlat1.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati6].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati6].xy + u_xlat1.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendMul2" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    u_xlat2 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat2;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec2 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					float u_xlat3;
					int u_xlati6;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    u_xlat3 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat3;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlati6 = unity_StereoEyeIndex;
					    u_xlat1.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati6].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati6].xy + u_xlat1.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendMul2" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    u_xlat2 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat2;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec2 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					float u_xlat3;
					int u_xlati6;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    u_xlat3 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat3;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlati6 = unity_StereoEyeIndex;
					    u_xlat1.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati6].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati6].xy + u_xlat1.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendMul2" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat2 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat2;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec2 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					float u_xlat3;
					int u_xlati6;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat3 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat3;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlati6 = unity_StereoEyeIndex;
					    u_xlat1.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati6].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati6].xy + u_xlat1.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendMul2" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat2 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat2;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec2 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					float u_xlat3;
					int u_xlati6;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat3 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat3;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlati6 = unity_StereoEyeIndex;
					    u_xlat1.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati6].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati6].xy + u_xlat1.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendMul2" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat2 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat2;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec2 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					float u_xlat3;
					int u_xlati6;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat3 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat3;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlati6 = unity_StereoEyeIndex;
					    u_xlat1.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati6].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati6].xy + u_xlat1.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendMul2" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat2 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat2;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec2 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					float u_xlat3;
					int u_xlati6;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat3 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat3;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlati6 = unity_StereoEyeIndex;
					    u_xlat1.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati6].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati6].xy + u_xlat1.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendMul2" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat2 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat2;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec2 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					float u_xlat3;
					int u_xlati6;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat3 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat3;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlati6 = unity_StereoEyeIndex;
					    u_xlat1.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati6].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati6].xy + u_xlat1.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendMul2" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat2 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat2;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec2 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					float u_xlat3;
					int u_xlati6;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat3 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat3;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlati6 = unity_StereoEyeIndex;
					    u_xlat1.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati6].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati6].xy + u_xlat1.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendMul2" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					float u_xlat9;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat9 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat9 = inversesqrt(u_xlat9);
					    u_xlat2.xyz = vec3(u_xlat9) * u_xlat2.xyz;
					    u_xlat9 = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat9 = inversesqrt(u_xlat9);
					    u_xlat3.xyz = vec3(u_xlat9) * in_NORMAL0.xyz;
					    u_xlat9 = dot(u_xlat3.xyz, u_xlat2.xyz);
					    u_xlat9 = log2(abs(u_xlat9));
					    u_xlat9 = u_xlat9 * _FresnelStr;
					    u_xlat9 = exp2(u_xlat9);
					    u_xlat9 = u_xlat9 + u_xlat9;
					    vs_TEXCOORD4 = min(u_xlat9, 1.0);
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    u_xlat4 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_3_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					vec3 u_xlat5;
					vec2 u_xlat8;
					int u_xlati10;
					float u_xlat15;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat5.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat5.x = inversesqrt(u_xlat5.x);
					    u_xlat5.xyz = u_xlat5.xxx * in_NORMAL0.xyz;
					    u_xlati10 = unity_StereoEyeIndex;
					    u_xlat3.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati10].yyy;
					    u_xlat3.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati10].xxx + u_xlat3.xyz;
					    u_xlat3.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati10].zzz + u_xlat3.xyz;
					    u_xlat3.xyz = u_xlat3.xyz + unity_WorldToObject[3].xyz;
					    u_xlat3.xyz = u_xlat3.xyz + (-in_POSITION0.xyz);
					    u_xlat15 = dot(u_xlat3.xyz, u_xlat3.xyz);
					    u_xlat15 = inversesqrt(u_xlat15);
					    u_xlat3.xyz = vec3(u_xlat15) * u_xlat3.xyz;
					    u_xlat5.x = dot(u_xlat5.xyz, u_xlat3.xyz);
					    u_xlat5.x = log2(abs(u_xlat5.x));
					    u_xlat5.x = u_xlat5.x * _FresnelStr;
					    u_xlat5.x = exp2(u_xlat5.x);
					    u_xlat5.x = u_xlat5.x + u_xlat5.x;
					    vs_TEXCOORD4 = min(u_xlat5.x, 1.0);
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    u_xlat4 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlat8.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati10].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati10].xy + u_xlat8.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendMul2" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					float u_xlat9;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat9 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat9 = inversesqrt(u_xlat9);
					    u_xlat2.xyz = vec3(u_xlat9) * u_xlat2.xyz;
					    u_xlat9 = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat9 = inversesqrt(u_xlat9);
					    u_xlat3.xyz = vec3(u_xlat9) * in_NORMAL0.xyz;
					    u_xlat9 = dot(u_xlat3.xyz, u_xlat2.xyz);
					    u_xlat9 = log2(abs(u_xlat9));
					    u_xlat9 = u_xlat9 * _FresnelStr;
					    u_xlat9 = exp2(u_xlat9);
					    u_xlat9 = u_xlat9 + u_xlat9;
					    vs_TEXCOORD4 = min(u_xlat9, 1.0);
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    u_xlat4 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_3_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					vec3 u_xlat5;
					vec2 u_xlat8;
					int u_xlati10;
					float u_xlat15;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat5.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat5.x = inversesqrt(u_xlat5.x);
					    u_xlat5.xyz = u_xlat5.xxx * in_NORMAL0.xyz;
					    u_xlati10 = unity_StereoEyeIndex;
					    u_xlat3.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati10].yyy;
					    u_xlat3.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati10].xxx + u_xlat3.xyz;
					    u_xlat3.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati10].zzz + u_xlat3.xyz;
					    u_xlat3.xyz = u_xlat3.xyz + unity_WorldToObject[3].xyz;
					    u_xlat3.xyz = u_xlat3.xyz + (-in_POSITION0.xyz);
					    u_xlat15 = dot(u_xlat3.xyz, u_xlat3.xyz);
					    u_xlat15 = inversesqrt(u_xlat15);
					    u_xlat3.xyz = vec3(u_xlat15) * u_xlat3.xyz;
					    u_xlat5.x = dot(u_xlat5.xyz, u_xlat3.xyz);
					    u_xlat5.x = log2(abs(u_xlat5.x));
					    u_xlat5.x = u_xlat5.x * _FresnelStr;
					    u_xlat5.x = exp2(u_xlat5.x);
					    u_xlat5.x = u_xlat5.x + u_xlat5.x;
					    vs_TEXCOORD4 = min(u_xlat5.x, 1.0);
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    u_xlat4 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlat8.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati10].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati10].xy + u_xlat8.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendMul2" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					float u_xlat14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat14 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat2.xyz = vec3(u_xlat14) * u_xlat2.xyz;
					    u_xlat14 = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat3.xyz = vec3(u_xlat14) * in_NORMAL0.xyz;
					    u_xlat2.x = dot(u_xlat3.xyz, u_xlat2.xyz);
					    u_xlat2.x = log2(abs(u_xlat2.x));
					    u_xlat2.x = u_xlat2.x * _FresnelStr;
					    u_xlat2.x = exp2(u_xlat2.x);
					    u_xlat2.x = u_xlat2.x + u_xlat2.x;
					    vs_TEXCOORD4 = min(u_xlat2.x, 1.0);
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat4 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_3_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati1;
					vec4 u_xlat2;
					int u_xlati3;
					float u_xlat4;
					float u_xlat5;
					vec3 u_xlat6;
					vec3 u_xlat8;
					vec2 u_xlat10;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat6.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat6.x = inversesqrt(u_xlat6.x);
					    u_xlat6.xyz = u_xlat6.xxx * in_NORMAL0.xyz;
					    u_xlati3 = unity_StereoEyeIndex;
					    u_xlat8.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].yyy;
					    u_xlat8.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].xxx + u_xlat8.xyz;
					    u_xlat8.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].zzz + u_xlat8.xyz;
					    u_xlat8.xyz = u_xlat8.xyz + unity_WorldToObject[3].xyz;
					    u_xlat8.xyz = u_xlat8.xyz + (-in_POSITION0.xyz);
					    u_xlat4 = dot(u_xlat8.xyz, u_xlat8.xyz);
					    u_xlat4 = inversesqrt(u_xlat4);
					    u_xlat8.xyz = u_xlat8.xyz * vec3(u_xlat4);
					    u_xlat6.x = dot(u_xlat6.xyz, u_xlat8.xyz);
					    u_xlat6.x = log2(abs(u_xlat6.x));
					    u_xlat6.x = u_xlat6.x * _FresnelStr;
					    u_xlat6.x = exp2(u_xlat6.x);
					    u_xlat6.x = u_xlat6.x + u_xlat6.x;
					    vs_TEXCOORD4 = min(u_xlat6.x, 1.0);
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat5 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat5;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlat10.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati3].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati3].xy + u_xlat10.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendMul2" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					float u_xlat14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat14 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat2.xyz = vec3(u_xlat14) * u_xlat2.xyz;
					    u_xlat14 = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat3.xyz = vec3(u_xlat14) * in_NORMAL0.xyz;
					    u_xlat2.x = dot(u_xlat3.xyz, u_xlat2.xyz);
					    u_xlat2.x = log2(abs(u_xlat2.x));
					    u_xlat2.x = u_xlat2.x * _FresnelStr;
					    u_xlat2.x = exp2(u_xlat2.x);
					    u_xlat2.x = u_xlat2.x + u_xlat2.x;
					    vs_TEXCOORD4 = min(u_xlat2.x, 1.0);
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat4 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_3_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati1;
					vec4 u_xlat2;
					int u_xlati3;
					float u_xlat4;
					float u_xlat5;
					vec3 u_xlat6;
					vec3 u_xlat8;
					vec2 u_xlat10;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat6.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat6.x = inversesqrt(u_xlat6.x);
					    u_xlat6.xyz = u_xlat6.xxx * in_NORMAL0.xyz;
					    u_xlati3 = unity_StereoEyeIndex;
					    u_xlat8.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].yyy;
					    u_xlat8.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].xxx + u_xlat8.xyz;
					    u_xlat8.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].zzz + u_xlat8.xyz;
					    u_xlat8.xyz = u_xlat8.xyz + unity_WorldToObject[3].xyz;
					    u_xlat8.xyz = u_xlat8.xyz + (-in_POSITION0.xyz);
					    u_xlat4 = dot(u_xlat8.xyz, u_xlat8.xyz);
					    u_xlat4 = inversesqrt(u_xlat4);
					    u_xlat8.xyz = u_xlat8.xyz * vec3(u_xlat4);
					    u_xlat6.x = dot(u_xlat6.xyz, u_xlat8.xyz);
					    u_xlat6.x = log2(abs(u_xlat6.x));
					    u_xlat6.x = u_xlat6.x * _FresnelStr;
					    u_xlat6.x = exp2(u_xlat6.x);
					    u_xlat6.x = u_xlat6.x + u_xlat6.x;
					    vs_TEXCOORD4 = min(u_xlat6.x, 1.0);
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat5 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat5;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlat10.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati3].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati3].xy + u_xlat10.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendMul2" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					float u_xlat14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat14 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat2.xyz = vec3(u_xlat14) * u_xlat2.xyz;
					    u_xlat14 = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat3.xyz = vec3(u_xlat14) * in_NORMAL0.xyz;
					    u_xlat2.x = dot(u_xlat3.xyz, u_xlat2.xyz);
					    u_xlat2.x = log2(abs(u_xlat2.x));
					    u_xlat2.x = u_xlat2.x * _FresnelStr;
					    u_xlat2.x = exp2(u_xlat2.x);
					    u_xlat2.x = u_xlat2.x + u_xlat2.x;
					    vs_TEXCOORD4 = min(u_xlat2.x, 1.0);
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat4 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_3_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati1;
					vec4 u_xlat2;
					int u_xlati3;
					float u_xlat4;
					float u_xlat5;
					vec3 u_xlat6;
					vec3 u_xlat8;
					vec2 u_xlat10;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat6.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat6.x = inversesqrt(u_xlat6.x);
					    u_xlat6.xyz = u_xlat6.xxx * in_NORMAL0.xyz;
					    u_xlati3 = unity_StereoEyeIndex;
					    u_xlat8.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].yyy;
					    u_xlat8.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].xxx + u_xlat8.xyz;
					    u_xlat8.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].zzz + u_xlat8.xyz;
					    u_xlat8.xyz = u_xlat8.xyz + unity_WorldToObject[3].xyz;
					    u_xlat8.xyz = u_xlat8.xyz + (-in_POSITION0.xyz);
					    u_xlat4 = dot(u_xlat8.xyz, u_xlat8.xyz);
					    u_xlat4 = inversesqrt(u_xlat4);
					    u_xlat8.xyz = u_xlat8.xyz * vec3(u_xlat4);
					    u_xlat6.x = dot(u_xlat6.xyz, u_xlat8.xyz);
					    u_xlat6.x = log2(abs(u_xlat6.x));
					    u_xlat6.x = u_xlat6.x * _FresnelStr;
					    u_xlat6.x = exp2(u_xlat6.x);
					    u_xlat6.x = u_xlat6.x + u_xlat6.x;
					    vs_TEXCOORD4 = min(u_xlat6.x, 1.0);
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat5 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat5;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlat10.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati3].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati3].xy + u_xlat10.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendMul2" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					float u_xlat14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat14 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat2.xyz = vec3(u_xlat14) * u_xlat2.xyz;
					    u_xlat14 = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat3.xyz = vec3(u_xlat14) * in_NORMAL0.xyz;
					    u_xlat2.x = dot(u_xlat3.xyz, u_xlat2.xyz);
					    u_xlat2.x = log2(abs(u_xlat2.x));
					    u_xlat2.x = u_xlat2.x * _FresnelStr;
					    u_xlat2.x = exp2(u_xlat2.x);
					    u_xlat2.x = u_xlat2.x + u_xlat2.x;
					    vs_TEXCOORD4 = min(u_xlat2.x, 1.0);
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat4 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_3_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati1;
					vec4 u_xlat2;
					int u_xlati3;
					float u_xlat4;
					float u_xlat5;
					vec3 u_xlat6;
					vec3 u_xlat8;
					vec2 u_xlat10;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat6.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat6.x = inversesqrt(u_xlat6.x);
					    u_xlat6.xyz = u_xlat6.xxx * in_NORMAL0.xyz;
					    u_xlati3 = unity_StereoEyeIndex;
					    u_xlat8.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].yyy;
					    u_xlat8.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].xxx + u_xlat8.xyz;
					    u_xlat8.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].zzz + u_xlat8.xyz;
					    u_xlat8.xyz = u_xlat8.xyz + unity_WorldToObject[3].xyz;
					    u_xlat8.xyz = u_xlat8.xyz + (-in_POSITION0.xyz);
					    u_xlat4 = dot(u_xlat8.xyz, u_xlat8.xyz);
					    u_xlat4 = inversesqrt(u_xlat4);
					    u_xlat8.xyz = u_xlat8.xyz * vec3(u_xlat4);
					    u_xlat6.x = dot(u_xlat6.xyz, u_xlat8.xyz);
					    u_xlat6.x = log2(abs(u_xlat6.x));
					    u_xlat6.x = u_xlat6.x * _FresnelStr;
					    u_xlat6.x = exp2(u_xlat6.x);
					    u_xlat6.x = u_xlat6.x + u_xlat6.x;
					    vs_TEXCOORD4 = min(u_xlat6.x, 1.0);
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat5 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat5;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlat10.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati3].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati3].xy + u_xlat10.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendMul2" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					float u_xlat14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat14 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat2.xyz = vec3(u_xlat14) * u_xlat2.xyz;
					    u_xlat14 = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat3.xyz = vec3(u_xlat14) * in_NORMAL0.xyz;
					    u_xlat2.x = dot(u_xlat3.xyz, u_xlat2.xyz);
					    u_xlat2.x = log2(abs(u_xlat2.x));
					    u_xlat2.x = u_xlat2.x * _FresnelStr;
					    u_xlat2.x = exp2(u_xlat2.x);
					    u_xlat2.x = u_xlat2.x + u_xlat2.x;
					    vs_TEXCOORD4 = min(u_xlat2.x, 1.0);
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat4 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_3_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati1;
					vec4 u_xlat2;
					int u_xlati3;
					float u_xlat4;
					float u_xlat5;
					vec3 u_xlat6;
					vec3 u_xlat8;
					vec2 u_xlat10;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat6.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat6.x = inversesqrt(u_xlat6.x);
					    u_xlat6.xyz = u_xlat6.xxx * in_NORMAL0.xyz;
					    u_xlati3 = unity_StereoEyeIndex;
					    u_xlat8.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].yyy;
					    u_xlat8.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].xxx + u_xlat8.xyz;
					    u_xlat8.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].zzz + u_xlat8.xyz;
					    u_xlat8.xyz = u_xlat8.xyz + unity_WorldToObject[3].xyz;
					    u_xlat8.xyz = u_xlat8.xyz + (-in_POSITION0.xyz);
					    u_xlat4 = dot(u_xlat8.xyz, u_xlat8.xyz);
					    u_xlat4 = inversesqrt(u_xlat4);
					    u_xlat8.xyz = u_xlat8.xyz * vec3(u_xlat4);
					    u_xlat6.x = dot(u_xlat6.xyz, u_xlat8.xyz);
					    u_xlat6.x = log2(abs(u_xlat6.x));
					    u_xlat6.x = u_xlat6.x * _FresnelStr;
					    u_xlat6.x = exp2(u_xlat6.x);
					    u_xlat6.x = u_xlat6.x + u_xlat6.x;
					    vs_TEXCOORD4 = min(u_xlat6.x, 1.0);
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat5 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat5;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlat10.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati3].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati3].xy + u_xlat10.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendMul2" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					float u_xlat14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat14 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat2.xyz = vec3(u_xlat14) * u_xlat2.xyz;
					    u_xlat14 = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat3.xyz = vec3(u_xlat14) * in_NORMAL0.xyz;
					    u_xlat2.x = dot(u_xlat3.xyz, u_xlat2.xyz);
					    u_xlat2.x = log2(abs(u_xlat2.x));
					    u_xlat2.x = u_xlat2.x * _FresnelStr;
					    u_xlat2.x = exp2(u_xlat2.x);
					    u_xlat2.x = u_xlat2.x + u_xlat2.x;
					    vs_TEXCOORD4 = min(u_xlat2.x, 1.0);
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat4 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_3_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati1;
					vec4 u_xlat2;
					int u_xlati3;
					float u_xlat4;
					float u_xlat5;
					vec3 u_xlat6;
					vec3 u_xlat8;
					vec2 u_xlat10;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat6.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat6.x = inversesqrt(u_xlat6.x);
					    u_xlat6.xyz = u_xlat6.xxx * in_NORMAL0.xyz;
					    u_xlati3 = unity_StereoEyeIndex;
					    u_xlat8.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].yyy;
					    u_xlat8.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].xxx + u_xlat8.xyz;
					    u_xlat8.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].zzz + u_xlat8.xyz;
					    u_xlat8.xyz = u_xlat8.xyz + unity_WorldToObject[3].xyz;
					    u_xlat8.xyz = u_xlat8.xyz + (-in_POSITION0.xyz);
					    u_xlat4 = dot(u_xlat8.xyz, u_xlat8.xyz);
					    u_xlat4 = inversesqrt(u_xlat4);
					    u_xlat8.xyz = u_xlat8.xyz * vec3(u_xlat4);
					    u_xlat6.x = dot(u_xlat6.xyz, u_xlat8.xyz);
					    u_xlat6.x = log2(abs(u_xlat6.x));
					    u_xlat6.x = u_xlat6.x * _FresnelStr;
					    u_xlat6.x = exp2(u_xlat6.x);
					    u_xlat6.x = u_xlat6.x + u_xlat6.x;
					    vs_TEXCOORD4 = min(u_xlat6.x, 1.0);
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat5 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat5;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlat10.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati3].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati3].xy + u_xlat10.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendMul2" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					float u_xlat9;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat9 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat9 = inversesqrt(u_xlat9);
					    u_xlat2.xyz = vec3(u_xlat9) * u_xlat2.xyz;
					    u_xlat9 = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat9 = inversesqrt(u_xlat9);
					    u_xlat3.xyz = vec3(u_xlat9) * in_NORMAL0.xyz;
					    u_xlat9 = dot(u_xlat3.xyz, u_xlat2.xyz);
					    u_xlat9 = log2(abs(u_xlat9));
					    u_xlat9 = u_xlat9 * _FresnelStr;
					    u_xlat9 = exp2(u_xlat9);
					    u_xlat9 = u_xlat9 + u_xlat9;
					    vs_TEXCOORD4 = min(u_xlat9, 1.0);
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    u_xlat4 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_3_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					vec3 u_xlat5;
					vec2 u_xlat8;
					int u_xlati10;
					float u_xlat15;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat5.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat5.x = inversesqrt(u_xlat5.x);
					    u_xlat5.xyz = u_xlat5.xxx * in_NORMAL0.xyz;
					    u_xlati10 = unity_StereoEyeIndex;
					    u_xlat3.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati10].yyy;
					    u_xlat3.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati10].xxx + u_xlat3.xyz;
					    u_xlat3.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati10].zzz + u_xlat3.xyz;
					    u_xlat3.xyz = u_xlat3.xyz + unity_WorldToObject[3].xyz;
					    u_xlat3.xyz = u_xlat3.xyz + (-in_POSITION0.xyz);
					    u_xlat15 = dot(u_xlat3.xyz, u_xlat3.xyz);
					    u_xlat15 = inversesqrt(u_xlat15);
					    u_xlat3.xyz = vec3(u_xlat15) * u_xlat3.xyz;
					    u_xlat5.x = dot(u_xlat5.xyz, u_xlat3.xyz);
					    u_xlat5.x = log2(abs(u_xlat5.x));
					    u_xlat5.x = u_xlat5.x * _FresnelStr;
					    u_xlat5.x = exp2(u_xlat5.x);
					    u_xlat5.x = u_xlat5.x + u_xlat5.x;
					    vs_TEXCOORD4 = min(u_xlat5.x, 1.0);
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    u_xlat4 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlat8.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati10].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati10].xy + u_xlat8.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendMul2" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					float u_xlat9;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat9 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat9 = inversesqrt(u_xlat9);
					    u_xlat2.xyz = vec3(u_xlat9) * u_xlat2.xyz;
					    u_xlat9 = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat9 = inversesqrt(u_xlat9);
					    u_xlat3.xyz = vec3(u_xlat9) * in_NORMAL0.xyz;
					    u_xlat9 = dot(u_xlat3.xyz, u_xlat2.xyz);
					    u_xlat9 = log2(abs(u_xlat9));
					    u_xlat9 = u_xlat9 * _FresnelStr;
					    u_xlat9 = exp2(u_xlat9);
					    u_xlat9 = u_xlat9 + u_xlat9;
					    vs_TEXCOORD4 = min(u_xlat9, 1.0);
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    u_xlat4 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_3_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					vec3 u_xlat5;
					vec2 u_xlat8;
					int u_xlati10;
					float u_xlat15;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat5.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat5.x = inversesqrt(u_xlat5.x);
					    u_xlat5.xyz = u_xlat5.xxx * in_NORMAL0.xyz;
					    u_xlati10 = unity_StereoEyeIndex;
					    u_xlat3.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati10].yyy;
					    u_xlat3.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati10].xxx + u_xlat3.xyz;
					    u_xlat3.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati10].zzz + u_xlat3.xyz;
					    u_xlat3.xyz = u_xlat3.xyz + unity_WorldToObject[3].xyz;
					    u_xlat3.xyz = u_xlat3.xyz + (-in_POSITION0.xyz);
					    u_xlat15 = dot(u_xlat3.xyz, u_xlat3.xyz);
					    u_xlat15 = inversesqrt(u_xlat15);
					    u_xlat3.xyz = vec3(u_xlat15) * u_xlat3.xyz;
					    u_xlat5.x = dot(u_xlat5.xyz, u_xlat3.xyz);
					    u_xlat5.x = log2(abs(u_xlat5.x));
					    u_xlat5.x = u_xlat5.x * _FresnelStr;
					    u_xlat5.x = exp2(u_xlat5.x);
					    u_xlat5.x = u_xlat5.x + u_xlat5.x;
					    vs_TEXCOORD4 = min(u_xlat5.x, 1.0);
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    u_xlat4 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlat8.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati10].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati10].xy + u_xlat8.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendMul2" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					float u_xlat14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat14 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat2.xyz = vec3(u_xlat14) * u_xlat2.xyz;
					    u_xlat14 = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat3.xyz = vec3(u_xlat14) * in_NORMAL0.xyz;
					    u_xlat2.x = dot(u_xlat3.xyz, u_xlat2.xyz);
					    u_xlat2.x = log2(abs(u_xlat2.x));
					    u_xlat2.x = u_xlat2.x * _FresnelStr;
					    u_xlat2.x = exp2(u_xlat2.x);
					    u_xlat2.x = u_xlat2.x + u_xlat2.x;
					    vs_TEXCOORD4 = min(u_xlat2.x, 1.0);
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat4 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_3_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati1;
					vec4 u_xlat2;
					int u_xlati3;
					float u_xlat4;
					float u_xlat5;
					vec3 u_xlat6;
					vec3 u_xlat8;
					vec2 u_xlat10;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat6.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat6.x = inversesqrt(u_xlat6.x);
					    u_xlat6.xyz = u_xlat6.xxx * in_NORMAL0.xyz;
					    u_xlati3 = unity_StereoEyeIndex;
					    u_xlat8.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].yyy;
					    u_xlat8.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].xxx + u_xlat8.xyz;
					    u_xlat8.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].zzz + u_xlat8.xyz;
					    u_xlat8.xyz = u_xlat8.xyz + unity_WorldToObject[3].xyz;
					    u_xlat8.xyz = u_xlat8.xyz + (-in_POSITION0.xyz);
					    u_xlat4 = dot(u_xlat8.xyz, u_xlat8.xyz);
					    u_xlat4 = inversesqrt(u_xlat4);
					    u_xlat8.xyz = u_xlat8.xyz * vec3(u_xlat4);
					    u_xlat6.x = dot(u_xlat6.xyz, u_xlat8.xyz);
					    u_xlat6.x = log2(abs(u_xlat6.x));
					    u_xlat6.x = u_xlat6.x * _FresnelStr;
					    u_xlat6.x = exp2(u_xlat6.x);
					    u_xlat6.x = u_xlat6.x + u_xlat6.x;
					    vs_TEXCOORD4 = min(u_xlat6.x, 1.0);
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat5 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat5;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlat10.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati3].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati3].xy + u_xlat10.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendMul2" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					float u_xlat14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat14 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat2.xyz = vec3(u_xlat14) * u_xlat2.xyz;
					    u_xlat14 = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat3.xyz = vec3(u_xlat14) * in_NORMAL0.xyz;
					    u_xlat2.x = dot(u_xlat3.xyz, u_xlat2.xyz);
					    u_xlat2.x = log2(abs(u_xlat2.x));
					    u_xlat2.x = u_xlat2.x * _FresnelStr;
					    u_xlat2.x = exp2(u_xlat2.x);
					    u_xlat2.x = u_xlat2.x + u_xlat2.x;
					    vs_TEXCOORD4 = min(u_xlat2.x, 1.0);
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat4 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_3_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati1;
					vec4 u_xlat2;
					int u_xlati3;
					float u_xlat4;
					float u_xlat5;
					vec3 u_xlat6;
					vec3 u_xlat8;
					vec2 u_xlat10;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat6.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat6.x = inversesqrt(u_xlat6.x);
					    u_xlat6.xyz = u_xlat6.xxx * in_NORMAL0.xyz;
					    u_xlati3 = unity_StereoEyeIndex;
					    u_xlat8.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].yyy;
					    u_xlat8.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].xxx + u_xlat8.xyz;
					    u_xlat8.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].zzz + u_xlat8.xyz;
					    u_xlat8.xyz = u_xlat8.xyz + unity_WorldToObject[3].xyz;
					    u_xlat8.xyz = u_xlat8.xyz + (-in_POSITION0.xyz);
					    u_xlat4 = dot(u_xlat8.xyz, u_xlat8.xyz);
					    u_xlat4 = inversesqrt(u_xlat4);
					    u_xlat8.xyz = u_xlat8.xyz * vec3(u_xlat4);
					    u_xlat6.x = dot(u_xlat6.xyz, u_xlat8.xyz);
					    u_xlat6.x = log2(abs(u_xlat6.x));
					    u_xlat6.x = u_xlat6.x * _FresnelStr;
					    u_xlat6.x = exp2(u_xlat6.x);
					    u_xlat6.x = u_xlat6.x + u_xlat6.x;
					    vs_TEXCOORD4 = min(u_xlat6.x, 1.0);
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat5 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat5;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlat10.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati3].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati3].xy + u_xlat10.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendMul2" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					float u_xlat14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat14 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat2.xyz = vec3(u_xlat14) * u_xlat2.xyz;
					    u_xlat14 = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat3.xyz = vec3(u_xlat14) * in_NORMAL0.xyz;
					    u_xlat2.x = dot(u_xlat3.xyz, u_xlat2.xyz);
					    u_xlat2.x = log2(abs(u_xlat2.x));
					    u_xlat2.x = u_xlat2.x * _FresnelStr;
					    u_xlat2.x = exp2(u_xlat2.x);
					    u_xlat2.x = u_xlat2.x + u_xlat2.x;
					    vs_TEXCOORD4 = min(u_xlat2.x, 1.0);
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat4 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_3_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati1;
					vec4 u_xlat2;
					int u_xlati3;
					float u_xlat4;
					float u_xlat5;
					vec3 u_xlat6;
					vec3 u_xlat8;
					vec2 u_xlat10;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat6.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat6.x = inversesqrt(u_xlat6.x);
					    u_xlat6.xyz = u_xlat6.xxx * in_NORMAL0.xyz;
					    u_xlati3 = unity_StereoEyeIndex;
					    u_xlat8.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].yyy;
					    u_xlat8.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].xxx + u_xlat8.xyz;
					    u_xlat8.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].zzz + u_xlat8.xyz;
					    u_xlat8.xyz = u_xlat8.xyz + unity_WorldToObject[3].xyz;
					    u_xlat8.xyz = u_xlat8.xyz + (-in_POSITION0.xyz);
					    u_xlat4 = dot(u_xlat8.xyz, u_xlat8.xyz);
					    u_xlat4 = inversesqrt(u_xlat4);
					    u_xlat8.xyz = u_xlat8.xyz * vec3(u_xlat4);
					    u_xlat6.x = dot(u_xlat6.xyz, u_xlat8.xyz);
					    u_xlat6.x = log2(abs(u_xlat6.x));
					    u_xlat6.x = u_xlat6.x * _FresnelStr;
					    u_xlat6.x = exp2(u_xlat6.x);
					    u_xlat6.x = u_xlat6.x + u_xlat6.x;
					    vs_TEXCOORD4 = min(u_xlat6.x, 1.0);
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat5 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat5;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlat10.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati3].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati3].xy + u_xlat10.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendMul2" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					float u_xlat14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat14 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat2.xyz = vec3(u_xlat14) * u_xlat2.xyz;
					    u_xlat14 = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat3.xyz = vec3(u_xlat14) * in_NORMAL0.xyz;
					    u_xlat2.x = dot(u_xlat3.xyz, u_xlat2.xyz);
					    u_xlat2.x = log2(abs(u_xlat2.x));
					    u_xlat2.x = u_xlat2.x * _FresnelStr;
					    u_xlat2.x = exp2(u_xlat2.x);
					    u_xlat2.x = u_xlat2.x + u_xlat2.x;
					    vs_TEXCOORD4 = min(u_xlat2.x, 1.0);
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat4 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_3_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati1;
					vec4 u_xlat2;
					int u_xlati3;
					float u_xlat4;
					float u_xlat5;
					vec3 u_xlat6;
					vec3 u_xlat8;
					vec2 u_xlat10;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat6.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat6.x = inversesqrt(u_xlat6.x);
					    u_xlat6.xyz = u_xlat6.xxx * in_NORMAL0.xyz;
					    u_xlati3 = unity_StereoEyeIndex;
					    u_xlat8.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].yyy;
					    u_xlat8.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].xxx + u_xlat8.xyz;
					    u_xlat8.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].zzz + u_xlat8.xyz;
					    u_xlat8.xyz = u_xlat8.xyz + unity_WorldToObject[3].xyz;
					    u_xlat8.xyz = u_xlat8.xyz + (-in_POSITION0.xyz);
					    u_xlat4 = dot(u_xlat8.xyz, u_xlat8.xyz);
					    u_xlat4 = inversesqrt(u_xlat4);
					    u_xlat8.xyz = u_xlat8.xyz * vec3(u_xlat4);
					    u_xlat6.x = dot(u_xlat6.xyz, u_xlat8.xyz);
					    u_xlat6.x = log2(abs(u_xlat6.x));
					    u_xlat6.x = u_xlat6.x * _FresnelStr;
					    u_xlat6.x = exp2(u_xlat6.x);
					    u_xlat6.x = u_xlat6.x + u_xlat6.x;
					    vs_TEXCOORD4 = min(u_xlat6.x, 1.0);
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat5 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat5;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlat10.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati3].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati3].xy + u_xlat10.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendMul2" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					float u_xlat14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat14 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat2.xyz = vec3(u_xlat14) * u_xlat2.xyz;
					    u_xlat14 = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat3.xyz = vec3(u_xlat14) * in_NORMAL0.xyz;
					    u_xlat2.x = dot(u_xlat3.xyz, u_xlat2.xyz);
					    u_xlat2.x = log2(abs(u_xlat2.x));
					    u_xlat2.x = u_xlat2.x * _FresnelStr;
					    u_xlat2.x = exp2(u_xlat2.x);
					    u_xlat2.x = u_xlat2.x + u_xlat2.x;
					    vs_TEXCOORD4 = min(u_xlat2.x, 1.0);
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat4 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_3_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati1;
					vec4 u_xlat2;
					int u_xlati3;
					float u_xlat4;
					float u_xlat5;
					vec3 u_xlat6;
					vec3 u_xlat8;
					vec2 u_xlat10;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat6.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat6.x = inversesqrt(u_xlat6.x);
					    u_xlat6.xyz = u_xlat6.xxx * in_NORMAL0.xyz;
					    u_xlati3 = unity_StereoEyeIndex;
					    u_xlat8.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].yyy;
					    u_xlat8.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].xxx + u_xlat8.xyz;
					    u_xlat8.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].zzz + u_xlat8.xyz;
					    u_xlat8.xyz = u_xlat8.xyz + unity_WorldToObject[3].xyz;
					    u_xlat8.xyz = u_xlat8.xyz + (-in_POSITION0.xyz);
					    u_xlat4 = dot(u_xlat8.xyz, u_xlat8.xyz);
					    u_xlat4 = inversesqrt(u_xlat4);
					    u_xlat8.xyz = u_xlat8.xyz * vec3(u_xlat4);
					    u_xlat6.x = dot(u_xlat6.xyz, u_xlat8.xyz);
					    u_xlat6.x = log2(abs(u_xlat6.x));
					    u_xlat6.x = u_xlat6.x * _FresnelStr;
					    u_xlat6.x = exp2(u_xlat6.x);
					    u_xlat6.x = u_xlat6.x + u_xlat6.x;
					    vs_TEXCOORD4 = min(u_xlat6.x, 1.0);
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat5 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat5;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlat10.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati3].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati3].xy + u_xlat10.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendMul2" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					float u_xlat14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat14 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat2.xyz = vec3(u_xlat14) * u_xlat2.xyz;
					    u_xlat14 = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat3.xyz = vec3(u_xlat14) * in_NORMAL0.xyz;
					    u_xlat2.x = dot(u_xlat3.xyz, u_xlat2.xyz);
					    u_xlat2.x = log2(abs(u_xlat2.x));
					    u_xlat2.x = u_xlat2.x * _FresnelStr;
					    u_xlat2.x = exp2(u_xlat2.x);
					    u_xlat2.x = u_xlat2.x + u_xlat2.x;
					    vs_TEXCOORD4 = min(u_xlat2.x, 1.0);
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat4 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_3_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati1;
					vec4 u_xlat2;
					int u_xlati3;
					float u_xlat4;
					float u_xlat5;
					vec3 u_xlat6;
					vec3 u_xlat8;
					vec2 u_xlat10;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat6.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat6.x = inversesqrt(u_xlat6.x);
					    u_xlat6.xyz = u_xlat6.xxx * in_NORMAL0.xyz;
					    u_xlati3 = unity_StereoEyeIndex;
					    u_xlat8.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].yyy;
					    u_xlat8.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].xxx + u_xlat8.xyz;
					    u_xlat8.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].zzz + u_xlat8.xyz;
					    u_xlat8.xyz = u_xlat8.xyz + unity_WorldToObject[3].xyz;
					    u_xlat8.xyz = u_xlat8.xyz + (-in_POSITION0.xyz);
					    u_xlat4 = dot(u_xlat8.xyz, u_xlat8.xyz);
					    u_xlat4 = inversesqrt(u_xlat4);
					    u_xlat8.xyz = u_xlat8.xyz * vec3(u_xlat4);
					    u_xlat6.x = dot(u_xlat6.xyz, u_xlat8.xyz);
					    u_xlat6.x = log2(abs(u_xlat6.x));
					    u_xlat6.x = u_xlat6.x * _FresnelStr;
					    u_xlat6.x = exp2(u_xlat6.x);
					    u_xlat6.x = u_xlat6.x + u_xlat6.x;
					    vs_TEXCOORD4 = min(u_xlat6.x, 1.0);
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat5 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat5;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlat10.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati3].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati3].xy + u_xlat10.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendMul2" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    u_xlat2 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat2;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec2 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					float u_xlat3;
					int u_xlati6;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    u_xlat3 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat3;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlati6 = unity_StereoEyeIndex;
					    u_xlat1.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati6].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati6].xy + u_xlat1.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendMul2" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    u_xlat2 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat2;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec2 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					float u_xlat3;
					int u_xlati6;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    u_xlat3 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat3;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlati6 = unity_StereoEyeIndex;
					    u_xlat1.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati6].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati6].xy + u_xlat1.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendMul2" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat2 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat2;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec2 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					float u_xlat3;
					int u_xlati6;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat3 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat3;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlati6 = unity_StereoEyeIndex;
					    u_xlat1.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati6].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati6].xy + u_xlat1.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendMul2" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat2 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat2;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec2 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					float u_xlat3;
					int u_xlati6;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat3 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat3;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlati6 = unity_StereoEyeIndex;
					    u_xlat1.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati6].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati6].xy + u_xlat1.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendMul2" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat2 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat2;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec2 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					float u_xlat3;
					int u_xlati6;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat3 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat3;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlati6 = unity_StereoEyeIndex;
					    u_xlat1.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati6].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati6].xy + u_xlat1.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendMul2" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat2 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat2;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec2 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					float u_xlat3;
					int u_xlati6;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat3 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat3;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlati6 = unity_StereoEyeIndex;
					    u_xlat1.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati6].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati6].xy + u_xlat1.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendMul2" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat2 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat2;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec2 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					float u_xlat3;
					int u_xlati6;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat3 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat3;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlati6 = unity_StereoEyeIndex;
					    u_xlat1.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati6].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati6].xy + u_xlat1.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendMul2" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat2 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat2;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec2 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					float u_xlat3;
					int u_xlati6;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat3 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat3;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlati6 = unity_StereoEyeIndex;
					    u_xlat1.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati6].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati6].xy + u_xlat1.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendMul2" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    u_xlat2 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat2;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec2 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					float u_xlat3;
					int u_xlati6;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    u_xlat3 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat3;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlati6 = unity_StereoEyeIndex;
					    u_xlat1.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati6].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati6].xy + u_xlat1.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendMul2" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    u_xlat2 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat2;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec2 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					float u_xlat3;
					int u_xlati6;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    u_xlat3 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat3;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlati6 = unity_StereoEyeIndex;
					    u_xlat1.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati6].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati6].xy + u_xlat1.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendMul2" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat2 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat2;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec2 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					float u_xlat3;
					int u_xlati6;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat3 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat3;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlati6 = unity_StereoEyeIndex;
					    u_xlat1.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati6].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati6].xy + u_xlat1.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendMul2" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat2 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat2;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec2 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					float u_xlat3;
					int u_xlati6;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat3 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat3;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlati6 = unity_StereoEyeIndex;
					    u_xlat1.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati6].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati6].xy + u_xlat1.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendMul2" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat2 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat2;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec2 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					float u_xlat3;
					int u_xlati6;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat3 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat3;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlati6 = unity_StereoEyeIndex;
					    u_xlat1.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati6].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati6].xy + u_xlat1.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendMul2" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat2 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat2;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec2 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					float u_xlat3;
					int u_xlati6;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat3 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat3;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlati6 = unity_StereoEyeIndex;
					    u_xlat1.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati6].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati6].xy + u_xlat1.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendMul2" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat2 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat2;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec2 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					float u_xlat3;
					int u_xlati6;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat3 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat3;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlati6 = unity_StereoEyeIndex;
					    u_xlat1.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati6].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati6].xy + u_xlat1.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendMul2" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat2 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat2;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec2 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					float u_xlat3;
					int u_xlati6;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat3 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat3;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlati6 = unity_StereoEyeIndex;
					    u_xlat1.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati6].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati6].xy + u_xlat1.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendMul2" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					float u_xlat9;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat9 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat9 = inversesqrt(u_xlat9);
					    u_xlat2.xyz = vec3(u_xlat9) * u_xlat2.xyz;
					    u_xlat9 = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat9 = inversesqrt(u_xlat9);
					    u_xlat3.xyz = vec3(u_xlat9) * in_NORMAL0.xyz;
					    u_xlat9 = dot(u_xlat3.xyz, u_xlat2.xyz);
					    u_xlat9 = log2(abs(u_xlat9));
					    u_xlat9 = u_xlat9 * _FresnelStr;
					    u_xlat9 = exp2(u_xlat9);
					    u_xlat9 = u_xlat9 + u_xlat9;
					    vs_TEXCOORD4 = min(u_xlat9, 1.0);
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    u_xlat4 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_3_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					vec3 u_xlat5;
					vec2 u_xlat8;
					int u_xlati10;
					float u_xlat15;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat5.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat5.x = inversesqrt(u_xlat5.x);
					    u_xlat5.xyz = u_xlat5.xxx * in_NORMAL0.xyz;
					    u_xlati10 = unity_StereoEyeIndex;
					    u_xlat3.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati10].yyy;
					    u_xlat3.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati10].xxx + u_xlat3.xyz;
					    u_xlat3.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati10].zzz + u_xlat3.xyz;
					    u_xlat3.xyz = u_xlat3.xyz + unity_WorldToObject[3].xyz;
					    u_xlat3.xyz = u_xlat3.xyz + (-in_POSITION0.xyz);
					    u_xlat15 = dot(u_xlat3.xyz, u_xlat3.xyz);
					    u_xlat15 = inversesqrt(u_xlat15);
					    u_xlat3.xyz = vec3(u_xlat15) * u_xlat3.xyz;
					    u_xlat5.x = dot(u_xlat5.xyz, u_xlat3.xyz);
					    u_xlat5.x = log2(abs(u_xlat5.x));
					    u_xlat5.x = u_xlat5.x * _FresnelStr;
					    u_xlat5.x = exp2(u_xlat5.x);
					    u_xlat5.x = u_xlat5.x + u_xlat5.x;
					    vs_TEXCOORD4 = min(u_xlat5.x, 1.0);
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    u_xlat4 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlat8.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati10].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati10].xy + u_xlat8.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendMul2" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					float u_xlat9;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat9 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat9 = inversesqrt(u_xlat9);
					    u_xlat2.xyz = vec3(u_xlat9) * u_xlat2.xyz;
					    u_xlat9 = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat9 = inversesqrt(u_xlat9);
					    u_xlat3.xyz = vec3(u_xlat9) * in_NORMAL0.xyz;
					    u_xlat9 = dot(u_xlat3.xyz, u_xlat2.xyz);
					    u_xlat9 = log2(abs(u_xlat9));
					    u_xlat9 = u_xlat9 * _FresnelStr;
					    u_xlat9 = exp2(u_xlat9);
					    u_xlat9 = u_xlat9 + u_xlat9;
					    vs_TEXCOORD4 = min(u_xlat9, 1.0);
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    u_xlat4 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_3_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					vec3 u_xlat5;
					vec2 u_xlat8;
					int u_xlati10;
					float u_xlat15;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat5.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat5.x = inversesqrt(u_xlat5.x);
					    u_xlat5.xyz = u_xlat5.xxx * in_NORMAL0.xyz;
					    u_xlati10 = unity_StereoEyeIndex;
					    u_xlat3.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati10].yyy;
					    u_xlat3.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati10].xxx + u_xlat3.xyz;
					    u_xlat3.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati10].zzz + u_xlat3.xyz;
					    u_xlat3.xyz = u_xlat3.xyz + unity_WorldToObject[3].xyz;
					    u_xlat3.xyz = u_xlat3.xyz + (-in_POSITION0.xyz);
					    u_xlat15 = dot(u_xlat3.xyz, u_xlat3.xyz);
					    u_xlat15 = inversesqrt(u_xlat15);
					    u_xlat3.xyz = vec3(u_xlat15) * u_xlat3.xyz;
					    u_xlat5.x = dot(u_xlat5.xyz, u_xlat3.xyz);
					    u_xlat5.x = log2(abs(u_xlat5.x));
					    u_xlat5.x = u_xlat5.x * _FresnelStr;
					    u_xlat5.x = exp2(u_xlat5.x);
					    u_xlat5.x = u_xlat5.x + u_xlat5.x;
					    vs_TEXCOORD4 = min(u_xlat5.x, 1.0);
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    u_xlat4 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlat8.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati10].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati10].xy + u_xlat8.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendMul2" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					float u_xlat14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat14 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat2.xyz = vec3(u_xlat14) * u_xlat2.xyz;
					    u_xlat14 = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat3.xyz = vec3(u_xlat14) * in_NORMAL0.xyz;
					    u_xlat2.x = dot(u_xlat3.xyz, u_xlat2.xyz);
					    u_xlat2.x = log2(abs(u_xlat2.x));
					    u_xlat2.x = u_xlat2.x * _FresnelStr;
					    u_xlat2.x = exp2(u_xlat2.x);
					    u_xlat2.x = u_xlat2.x + u_xlat2.x;
					    vs_TEXCOORD4 = min(u_xlat2.x, 1.0);
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat4 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_3_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati1;
					vec4 u_xlat2;
					int u_xlati3;
					float u_xlat4;
					float u_xlat5;
					vec3 u_xlat6;
					vec3 u_xlat8;
					vec2 u_xlat10;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat6.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat6.x = inversesqrt(u_xlat6.x);
					    u_xlat6.xyz = u_xlat6.xxx * in_NORMAL0.xyz;
					    u_xlati3 = unity_StereoEyeIndex;
					    u_xlat8.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].yyy;
					    u_xlat8.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].xxx + u_xlat8.xyz;
					    u_xlat8.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].zzz + u_xlat8.xyz;
					    u_xlat8.xyz = u_xlat8.xyz + unity_WorldToObject[3].xyz;
					    u_xlat8.xyz = u_xlat8.xyz + (-in_POSITION0.xyz);
					    u_xlat4 = dot(u_xlat8.xyz, u_xlat8.xyz);
					    u_xlat4 = inversesqrt(u_xlat4);
					    u_xlat8.xyz = u_xlat8.xyz * vec3(u_xlat4);
					    u_xlat6.x = dot(u_xlat6.xyz, u_xlat8.xyz);
					    u_xlat6.x = log2(abs(u_xlat6.x));
					    u_xlat6.x = u_xlat6.x * _FresnelStr;
					    u_xlat6.x = exp2(u_xlat6.x);
					    u_xlat6.x = u_xlat6.x + u_xlat6.x;
					    vs_TEXCOORD4 = min(u_xlat6.x, 1.0);
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat5 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat5;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlat10.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati3].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati3].xy + u_xlat10.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendMul2" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					float u_xlat14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat14 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat2.xyz = vec3(u_xlat14) * u_xlat2.xyz;
					    u_xlat14 = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat3.xyz = vec3(u_xlat14) * in_NORMAL0.xyz;
					    u_xlat2.x = dot(u_xlat3.xyz, u_xlat2.xyz);
					    u_xlat2.x = log2(abs(u_xlat2.x));
					    u_xlat2.x = u_xlat2.x * _FresnelStr;
					    u_xlat2.x = exp2(u_xlat2.x);
					    u_xlat2.x = u_xlat2.x + u_xlat2.x;
					    vs_TEXCOORD4 = min(u_xlat2.x, 1.0);
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat4 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_3_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati1;
					vec4 u_xlat2;
					int u_xlati3;
					float u_xlat4;
					float u_xlat5;
					vec3 u_xlat6;
					vec3 u_xlat8;
					vec2 u_xlat10;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat6.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat6.x = inversesqrt(u_xlat6.x);
					    u_xlat6.xyz = u_xlat6.xxx * in_NORMAL0.xyz;
					    u_xlati3 = unity_StereoEyeIndex;
					    u_xlat8.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].yyy;
					    u_xlat8.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].xxx + u_xlat8.xyz;
					    u_xlat8.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].zzz + u_xlat8.xyz;
					    u_xlat8.xyz = u_xlat8.xyz + unity_WorldToObject[3].xyz;
					    u_xlat8.xyz = u_xlat8.xyz + (-in_POSITION0.xyz);
					    u_xlat4 = dot(u_xlat8.xyz, u_xlat8.xyz);
					    u_xlat4 = inversesqrt(u_xlat4);
					    u_xlat8.xyz = u_xlat8.xyz * vec3(u_xlat4);
					    u_xlat6.x = dot(u_xlat6.xyz, u_xlat8.xyz);
					    u_xlat6.x = log2(abs(u_xlat6.x));
					    u_xlat6.x = u_xlat6.x * _FresnelStr;
					    u_xlat6.x = exp2(u_xlat6.x);
					    u_xlat6.x = u_xlat6.x + u_xlat6.x;
					    vs_TEXCOORD4 = min(u_xlat6.x, 1.0);
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat5 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat5;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlat10.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati3].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati3].xy + u_xlat10.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendMul2" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					float u_xlat14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat14 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat2.xyz = vec3(u_xlat14) * u_xlat2.xyz;
					    u_xlat14 = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat3.xyz = vec3(u_xlat14) * in_NORMAL0.xyz;
					    u_xlat2.x = dot(u_xlat3.xyz, u_xlat2.xyz);
					    u_xlat2.x = log2(abs(u_xlat2.x));
					    u_xlat2.x = u_xlat2.x * _FresnelStr;
					    u_xlat2.x = exp2(u_xlat2.x);
					    u_xlat2.x = u_xlat2.x + u_xlat2.x;
					    vs_TEXCOORD4 = min(u_xlat2.x, 1.0);
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat4 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_3_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati1;
					vec4 u_xlat2;
					int u_xlati3;
					float u_xlat4;
					float u_xlat5;
					vec3 u_xlat6;
					vec3 u_xlat8;
					vec2 u_xlat10;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat6.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat6.x = inversesqrt(u_xlat6.x);
					    u_xlat6.xyz = u_xlat6.xxx * in_NORMAL0.xyz;
					    u_xlati3 = unity_StereoEyeIndex;
					    u_xlat8.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].yyy;
					    u_xlat8.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].xxx + u_xlat8.xyz;
					    u_xlat8.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].zzz + u_xlat8.xyz;
					    u_xlat8.xyz = u_xlat8.xyz + unity_WorldToObject[3].xyz;
					    u_xlat8.xyz = u_xlat8.xyz + (-in_POSITION0.xyz);
					    u_xlat4 = dot(u_xlat8.xyz, u_xlat8.xyz);
					    u_xlat4 = inversesqrt(u_xlat4);
					    u_xlat8.xyz = u_xlat8.xyz * vec3(u_xlat4);
					    u_xlat6.x = dot(u_xlat6.xyz, u_xlat8.xyz);
					    u_xlat6.x = log2(abs(u_xlat6.x));
					    u_xlat6.x = u_xlat6.x * _FresnelStr;
					    u_xlat6.x = exp2(u_xlat6.x);
					    u_xlat6.x = u_xlat6.x + u_xlat6.x;
					    vs_TEXCOORD4 = min(u_xlat6.x, 1.0);
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat5 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat5;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlat10.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati3].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati3].xy + u_xlat10.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendMul2" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					float u_xlat14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat14 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat2.xyz = vec3(u_xlat14) * u_xlat2.xyz;
					    u_xlat14 = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat3.xyz = vec3(u_xlat14) * in_NORMAL0.xyz;
					    u_xlat2.x = dot(u_xlat3.xyz, u_xlat2.xyz);
					    u_xlat2.x = log2(abs(u_xlat2.x));
					    u_xlat2.x = u_xlat2.x * _FresnelStr;
					    u_xlat2.x = exp2(u_xlat2.x);
					    u_xlat2.x = u_xlat2.x + u_xlat2.x;
					    vs_TEXCOORD4 = min(u_xlat2.x, 1.0);
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat4 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_3_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati1;
					vec4 u_xlat2;
					int u_xlati3;
					float u_xlat4;
					float u_xlat5;
					vec3 u_xlat6;
					vec3 u_xlat8;
					vec2 u_xlat10;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat6.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat6.x = inversesqrt(u_xlat6.x);
					    u_xlat6.xyz = u_xlat6.xxx * in_NORMAL0.xyz;
					    u_xlati3 = unity_StereoEyeIndex;
					    u_xlat8.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].yyy;
					    u_xlat8.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].xxx + u_xlat8.xyz;
					    u_xlat8.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].zzz + u_xlat8.xyz;
					    u_xlat8.xyz = u_xlat8.xyz + unity_WorldToObject[3].xyz;
					    u_xlat8.xyz = u_xlat8.xyz + (-in_POSITION0.xyz);
					    u_xlat4 = dot(u_xlat8.xyz, u_xlat8.xyz);
					    u_xlat4 = inversesqrt(u_xlat4);
					    u_xlat8.xyz = u_xlat8.xyz * vec3(u_xlat4);
					    u_xlat6.x = dot(u_xlat6.xyz, u_xlat8.xyz);
					    u_xlat6.x = log2(abs(u_xlat6.x));
					    u_xlat6.x = u_xlat6.x * _FresnelStr;
					    u_xlat6.x = exp2(u_xlat6.x);
					    u_xlat6.x = u_xlat6.x + u_xlat6.x;
					    vs_TEXCOORD4 = min(u_xlat6.x, 1.0);
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat5 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat5;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlat10.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati3].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati3].xy + u_xlat10.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendMul2" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					float u_xlat14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat14 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat2.xyz = vec3(u_xlat14) * u_xlat2.xyz;
					    u_xlat14 = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat3.xyz = vec3(u_xlat14) * in_NORMAL0.xyz;
					    u_xlat2.x = dot(u_xlat3.xyz, u_xlat2.xyz);
					    u_xlat2.x = log2(abs(u_xlat2.x));
					    u_xlat2.x = u_xlat2.x * _FresnelStr;
					    u_xlat2.x = exp2(u_xlat2.x);
					    u_xlat2.x = u_xlat2.x + u_xlat2.x;
					    vs_TEXCOORD4 = min(u_xlat2.x, 1.0);
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat4 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_3_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati1;
					vec4 u_xlat2;
					int u_xlati3;
					float u_xlat4;
					float u_xlat5;
					vec3 u_xlat6;
					vec3 u_xlat8;
					vec2 u_xlat10;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat6.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat6.x = inversesqrt(u_xlat6.x);
					    u_xlat6.xyz = u_xlat6.xxx * in_NORMAL0.xyz;
					    u_xlati3 = unity_StereoEyeIndex;
					    u_xlat8.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].yyy;
					    u_xlat8.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].xxx + u_xlat8.xyz;
					    u_xlat8.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].zzz + u_xlat8.xyz;
					    u_xlat8.xyz = u_xlat8.xyz + unity_WorldToObject[3].xyz;
					    u_xlat8.xyz = u_xlat8.xyz + (-in_POSITION0.xyz);
					    u_xlat4 = dot(u_xlat8.xyz, u_xlat8.xyz);
					    u_xlat4 = inversesqrt(u_xlat4);
					    u_xlat8.xyz = u_xlat8.xyz * vec3(u_xlat4);
					    u_xlat6.x = dot(u_xlat6.xyz, u_xlat8.xyz);
					    u_xlat6.x = log2(abs(u_xlat6.x));
					    u_xlat6.x = u_xlat6.x * _FresnelStr;
					    u_xlat6.x = exp2(u_xlat6.x);
					    u_xlat6.x = u_xlat6.x + u_xlat6.x;
					    vs_TEXCOORD4 = min(u_xlat6.x, 1.0);
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat5 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat5;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlat10.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati3].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati3].xy + u_xlat10.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendMul2" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					float u_xlat14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat14 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat2.xyz = vec3(u_xlat14) * u_xlat2.xyz;
					    u_xlat14 = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat3.xyz = vec3(u_xlat14) * in_NORMAL0.xyz;
					    u_xlat2.x = dot(u_xlat3.xyz, u_xlat2.xyz);
					    u_xlat2.x = log2(abs(u_xlat2.x));
					    u_xlat2.x = u_xlat2.x * _FresnelStr;
					    u_xlat2.x = exp2(u_xlat2.x);
					    u_xlat2.x = u_xlat2.x + u_xlat2.x;
					    vs_TEXCOORD4 = min(u_xlat2.x, 1.0);
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat4 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_3_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati1;
					vec4 u_xlat2;
					int u_xlati3;
					float u_xlat4;
					float u_xlat5;
					vec3 u_xlat6;
					vec3 u_xlat8;
					vec2 u_xlat10;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat6.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat6.x = inversesqrt(u_xlat6.x);
					    u_xlat6.xyz = u_xlat6.xxx * in_NORMAL0.xyz;
					    u_xlati3 = unity_StereoEyeIndex;
					    u_xlat8.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].yyy;
					    u_xlat8.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].xxx + u_xlat8.xyz;
					    u_xlat8.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].zzz + u_xlat8.xyz;
					    u_xlat8.xyz = u_xlat8.xyz + unity_WorldToObject[3].xyz;
					    u_xlat8.xyz = u_xlat8.xyz + (-in_POSITION0.xyz);
					    u_xlat4 = dot(u_xlat8.xyz, u_xlat8.xyz);
					    u_xlat4 = inversesqrt(u_xlat4);
					    u_xlat8.xyz = u_xlat8.xyz * vec3(u_xlat4);
					    u_xlat6.x = dot(u_xlat6.xyz, u_xlat8.xyz);
					    u_xlat6.x = log2(abs(u_xlat6.x));
					    u_xlat6.x = u_xlat6.x * _FresnelStr;
					    u_xlat6.x = exp2(u_xlat6.x);
					    u_xlat6.x = u_xlat6.x + u_xlat6.x;
					    vs_TEXCOORD4 = min(u_xlat6.x, 1.0);
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat5 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat5;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlat10.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati3].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati3].xy + u_xlat10.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendMul2" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					float u_xlat9;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat9 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat9 = inversesqrt(u_xlat9);
					    u_xlat2.xyz = vec3(u_xlat9) * u_xlat2.xyz;
					    u_xlat9 = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat9 = inversesqrt(u_xlat9);
					    u_xlat3.xyz = vec3(u_xlat9) * in_NORMAL0.xyz;
					    u_xlat9 = dot(u_xlat3.xyz, u_xlat2.xyz);
					    u_xlat9 = log2(abs(u_xlat9));
					    u_xlat9 = u_xlat9 * _FresnelStr;
					    u_xlat9 = exp2(u_xlat9);
					    u_xlat9 = u_xlat9 + u_xlat9;
					    vs_TEXCOORD4 = min(u_xlat9, 1.0);
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    u_xlat4 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_3_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					vec3 u_xlat5;
					vec2 u_xlat8;
					int u_xlati10;
					float u_xlat15;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat5.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat5.x = inversesqrt(u_xlat5.x);
					    u_xlat5.xyz = u_xlat5.xxx * in_NORMAL0.xyz;
					    u_xlati10 = unity_StereoEyeIndex;
					    u_xlat3.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati10].yyy;
					    u_xlat3.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati10].xxx + u_xlat3.xyz;
					    u_xlat3.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati10].zzz + u_xlat3.xyz;
					    u_xlat3.xyz = u_xlat3.xyz + unity_WorldToObject[3].xyz;
					    u_xlat3.xyz = u_xlat3.xyz + (-in_POSITION0.xyz);
					    u_xlat15 = dot(u_xlat3.xyz, u_xlat3.xyz);
					    u_xlat15 = inversesqrt(u_xlat15);
					    u_xlat3.xyz = vec3(u_xlat15) * u_xlat3.xyz;
					    u_xlat5.x = dot(u_xlat5.xyz, u_xlat3.xyz);
					    u_xlat5.x = log2(abs(u_xlat5.x));
					    u_xlat5.x = u_xlat5.x * _FresnelStr;
					    u_xlat5.x = exp2(u_xlat5.x);
					    u_xlat5.x = u_xlat5.x + u_xlat5.x;
					    vs_TEXCOORD4 = min(u_xlat5.x, 1.0);
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    u_xlat4 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlat8.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati10].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati10].xy + u_xlat8.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendMul2" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					float u_xlat9;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat9 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat9 = inversesqrt(u_xlat9);
					    u_xlat2.xyz = vec3(u_xlat9) * u_xlat2.xyz;
					    u_xlat9 = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat9 = inversesqrt(u_xlat9);
					    u_xlat3.xyz = vec3(u_xlat9) * in_NORMAL0.xyz;
					    u_xlat9 = dot(u_xlat3.xyz, u_xlat2.xyz);
					    u_xlat9 = log2(abs(u_xlat9));
					    u_xlat9 = u_xlat9 * _FresnelStr;
					    u_xlat9 = exp2(u_xlat9);
					    u_xlat9 = u_xlat9 + u_xlat9;
					    vs_TEXCOORD4 = min(u_xlat9, 1.0);
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    u_xlat4 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_3_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					vec3 u_xlat5;
					vec2 u_xlat8;
					int u_xlati10;
					float u_xlat15;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat5.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat5.x = inversesqrt(u_xlat5.x);
					    u_xlat5.xyz = u_xlat5.xxx * in_NORMAL0.xyz;
					    u_xlati10 = unity_StereoEyeIndex;
					    u_xlat3.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati10].yyy;
					    u_xlat3.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati10].xxx + u_xlat3.xyz;
					    u_xlat3.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati10].zzz + u_xlat3.xyz;
					    u_xlat3.xyz = u_xlat3.xyz + unity_WorldToObject[3].xyz;
					    u_xlat3.xyz = u_xlat3.xyz + (-in_POSITION0.xyz);
					    u_xlat15 = dot(u_xlat3.xyz, u_xlat3.xyz);
					    u_xlat15 = inversesqrt(u_xlat15);
					    u_xlat3.xyz = vec3(u_xlat15) * u_xlat3.xyz;
					    u_xlat5.x = dot(u_xlat5.xyz, u_xlat3.xyz);
					    u_xlat5.x = log2(abs(u_xlat5.x));
					    u_xlat5.x = u_xlat5.x * _FresnelStr;
					    u_xlat5.x = exp2(u_xlat5.x);
					    u_xlat5.x = u_xlat5.x + u_xlat5.x;
					    vs_TEXCOORD4 = min(u_xlat5.x, 1.0);
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    u_xlat4 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlat8.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati10].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati10].xy + u_xlat8.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendMul2" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					float u_xlat14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat14 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat2.xyz = vec3(u_xlat14) * u_xlat2.xyz;
					    u_xlat14 = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat3.xyz = vec3(u_xlat14) * in_NORMAL0.xyz;
					    u_xlat2.x = dot(u_xlat3.xyz, u_xlat2.xyz);
					    u_xlat2.x = log2(abs(u_xlat2.x));
					    u_xlat2.x = u_xlat2.x * _FresnelStr;
					    u_xlat2.x = exp2(u_xlat2.x);
					    u_xlat2.x = u_xlat2.x + u_xlat2.x;
					    vs_TEXCOORD4 = min(u_xlat2.x, 1.0);
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat4 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_3_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati1;
					vec4 u_xlat2;
					int u_xlati3;
					float u_xlat4;
					float u_xlat5;
					vec3 u_xlat6;
					vec3 u_xlat8;
					vec2 u_xlat10;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat6.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat6.x = inversesqrt(u_xlat6.x);
					    u_xlat6.xyz = u_xlat6.xxx * in_NORMAL0.xyz;
					    u_xlati3 = unity_StereoEyeIndex;
					    u_xlat8.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].yyy;
					    u_xlat8.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].xxx + u_xlat8.xyz;
					    u_xlat8.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].zzz + u_xlat8.xyz;
					    u_xlat8.xyz = u_xlat8.xyz + unity_WorldToObject[3].xyz;
					    u_xlat8.xyz = u_xlat8.xyz + (-in_POSITION0.xyz);
					    u_xlat4 = dot(u_xlat8.xyz, u_xlat8.xyz);
					    u_xlat4 = inversesqrt(u_xlat4);
					    u_xlat8.xyz = u_xlat8.xyz * vec3(u_xlat4);
					    u_xlat6.x = dot(u_xlat6.xyz, u_xlat8.xyz);
					    u_xlat6.x = log2(abs(u_xlat6.x));
					    u_xlat6.x = u_xlat6.x * _FresnelStr;
					    u_xlat6.x = exp2(u_xlat6.x);
					    u_xlat6.x = u_xlat6.x + u_xlat6.x;
					    vs_TEXCOORD4 = min(u_xlat6.x, 1.0);
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat5 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat5;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlat10.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati3].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati3].xy + u_xlat10.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendMul2" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					float u_xlat14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat14 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat2.xyz = vec3(u_xlat14) * u_xlat2.xyz;
					    u_xlat14 = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat3.xyz = vec3(u_xlat14) * in_NORMAL0.xyz;
					    u_xlat2.x = dot(u_xlat3.xyz, u_xlat2.xyz);
					    u_xlat2.x = log2(abs(u_xlat2.x));
					    u_xlat2.x = u_xlat2.x * _FresnelStr;
					    u_xlat2.x = exp2(u_xlat2.x);
					    u_xlat2.x = u_xlat2.x + u_xlat2.x;
					    vs_TEXCOORD4 = min(u_xlat2.x, 1.0);
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat4 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_3_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati1;
					vec4 u_xlat2;
					int u_xlati3;
					float u_xlat4;
					float u_xlat5;
					vec3 u_xlat6;
					vec3 u_xlat8;
					vec2 u_xlat10;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat6.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat6.x = inversesqrt(u_xlat6.x);
					    u_xlat6.xyz = u_xlat6.xxx * in_NORMAL0.xyz;
					    u_xlati3 = unity_StereoEyeIndex;
					    u_xlat8.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].yyy;
					    u_xlat8.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].xxx + u_xlat8.xyz;
					    u_xlat8.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].zzz + u_xlat8.xyz;
					    u_xlat8.xyz = u_xlat8.xyz + unity_WorldToObject[3].xyz;
					    u_xlat8.xyz = u_xlat8.xyz + (-in_POSITION0.xyz);
					    u_xlat4 = dot(u_xlat8.xyz, u_xlat8.xyz);
					    u_xlat4 = inversesqrt(u_xlat4);
					    u_xlat8.xyz = u_xlat8.xyz * vec3(u_xlat4);
					    u_xlat6.x = dot(u_xlat6.xyz, u_xlat8.xyz);
					    u_xlat6.x = log2(abs(u_xlat6.x));
					    u_xlat6.x = u_xlat6.x * _FresnelStr;
					    u_xlat6.x = exp2(u_xlat6.x);
					    u_xlat6.x = u_xlat6.x + u_xlat6.x;
					    vs_TEXCOORD4 = min(u_xlat6.x, 1.0);
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat5 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat5;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlat10.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati3].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati3].xy + u_xlat10.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendMul2" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					float u_xlat14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat14 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat2.xyz = vec3(u_xlat14) * u_xlat2.xyz;
					    u_xlat14 = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat3.xyz = vec3(u_xlat14) * in_NORMAL0.xyz;
					    u_xlat2.x = dot(u_xlat3.xyz, u_xlat2.xyz);
					    u_xlat2.x = log2(abs(u_xlat2.x));
					    u_xlat2.x = u_xlat2.x * _FresnelStr;
					    u_xlat2.x = exp2(u_xlat2.x);
					    u_xlat2.x = u_xlat2.x + u_xlat2.x;
					    vs_TEXCOORD4 = min(u_xlat2.x, 1.0);
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat4 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_3_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati1;
					vec4 u_xlat2;
					int u_xlati3;
					float u_xlat4;
					float u_xlat5;
					vec3 u_xlat6;
					vec3 u_xlat8;
					vec2 u_xlat10;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat6.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat6.x = inversesqrt(u_xlat6.x);
					    u_xlat6.xyz = u_xlat6.xxx * in_NORMAL0.xyz;
					    u_xlati3 = unity_StereoEyeIndex;
					    u_xlat8.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].yyy;
					    u_xlat8.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].xxx + u_xlat8.xyz;
					    u_xlat8.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].zzz + u_xlat8.xyz;
					    u_xlat8.xyz = u_xlat8.xyz + unity_WorldToObject[3].xyz;
					    u_xlat8.xyz = u_xlat8.xyz + (-in_POSITION0.xyz);
					    u_xlat4 = dot(u_xlat8.xyz, u_xlat8.xyz);
					    u_xlat4 = inversesqrt(u_xlat4);
					    u_xlat8.xyz = u_xlat8.xyz * vec3(u_xlat4);
					    u_xlat6.x = dot(u_xlat6.xyz, u_xlat8.xyz);
					    u_xlat6.x = log2(abs(u_xlat6.x));
					    u_xlat6.x = u_xlat6.x * _FresnelStr;
					    u_xlat6.x = exp2(u_xlat6.x);
					    u_xlat6.x = u_xlat6.x + u_xlat6.x;
					    vs_TEXCOORD4 = min(u_xlat6.x, 1.0);
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat5 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat5;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlat10.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati3].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati3].xy + u_xlat10.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendMul2" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					float u_xlat14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat14 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat2.xyz = vec3(u_xlat14) * u_xlat2.xyz;
					    u_xlat14 = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat3.xyz = vec3(u_xlat14) * in_NORMAL0.xyz;
					    u_xlat2.x = dot(u_xlat3.xyz, u_xlat2.xyz);
					    u_xlat2.x = log2(abs(u_xlat2.x));
					    u_xlat2.x = u_xlat2.x * _FresnelStr;
					    u_xlat2.x = exp2(u_xlat2.x);
					    u_xlat2.x = u_xlat2.x + u_xlat2.x;
					    vs_TEXCOORD4 = min(u_xlat2.x, 1.0);
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat4 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_3_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati1;
					vec4 u_xlat2;
					int u_xlati3;
					float u_xlat4;
					float u_xlat5;
					vec3 u_xlat6;
					vec3 u_xlat8;
					vec2 u_xlat10;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat6.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat6.x = inversesqrt(u_xlat6.x);
					    u_xlat6.xyz = u_xlat6.xxx * in_NORMAL0.xyz;
					    u_xlati3 = unity_StereoEyeIndex;
					    u_xlat8.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].yyy;
					    u_xlat8.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].xxx + u_xlat8.xyz;
					    u_xlat8.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].zzz + u_xlat8.xyz;
					    u_xlat8.xyz = u_xlat8.xyz + unity_WorldToObject[3].xyz;
					    u_xlat8.xyz = u_xlat8.xyz + (-in_POSITION0.xyz);
					    u_xlat4 = dot(u_xlat8.xyz, u_xlat8.xyz);
					    u_xlat4 = inversesqrt(u_xlat4);
					    u_xlat8.xyz = u_xlat8.xyz * vec3(u_xlat4);
					    u_xlat6.x = dot(u_xlat6.xyz, u_xlat8.xyz);
					    u_xlat6.x = log2(abs(u_xlat6.x));
					    u_xlat6.x = u_xlat6.x * _FresnelStr;
					    u_xlat6.x = exp2(u_xlat6.x);
					    u_xlat6.x = u_xlat6.x + u_xlat6.x;
					    vs_TEXCOORD4 = min(u_xlat6.x, 1.0);
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat5 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat5;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlat10.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati3].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati3].xy + u_xlat10.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendMul2" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					float u_xlat14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat14 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat2.xyz = vec3(u_xlat14) * u_xlat2.xyz;
					    u_xlat14 = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat3.xyz = vec3(u_xlat14) * in_NORMAL0.xyz;
					    u_xlat2.x = dot(u_xlat3.xyz, u_xlat2.xyz);
					    u_xlat2.x = log2(abs(u_xlat2.x));
					    u_xlat2.x = u_xlat2.x * _FresnelStr;
					    u_xlat2.x = exp2(u_xlat2.x);
					    u_xlat2.x = u_xlat2.x + u_xlat2.x;
					    vs_TEXCOORD4 = min(u_xlat2.x, 1.0);
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat4 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_3_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati1;
					vec4 u_xlat2;
					int u_xlati3;
					float u_xlat4;
					float u_xlat5;
					vec3 u_xlat6;
					vec3 u_xlat8;
					vec2 u_xlat10;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat6.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat6.x = inversesqrt(u_xlat6.x);
					    u_xlat6.xyz = u_xlat6.xxx * in_NORMAL0.xyz;
					    u_xlati3 = unity_StereoEyeIndex;
					    u_xlat8.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].yyy;
					    u_xlat8.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].xxx + u_xlat8.xyz;
					    u_xlat8.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].zzz + u_xlat8.xyz;
					    u_xlat8.xyz = u_xlat8.xyz + unity_WorldToObject[3].xyz;
					    u_xlat8.xyz = u_xlat8.xyz + (-in_POSITION0.xyz);
					    u_xlat4 = dot(u_xlat8.xyz, u_xlat8.xyz);
					    u_xlat4 = inversesqrt(u_xlat4);
					    u_xlat8.xyz = u_xlat8.xyz * vec3(u_xlat4);
					    u_xlat6.x = dot(u_xlat6.xyz, u_xlat8.xyz);
					    u_xlat6.x = log2(abs(u_xlat6.x));
					    u_xlat6.x = u_xlat6.x * _FresnelStr;
					    u_xlat6.x = exp2(u_xlat6.x);
					    u_xlat6.x = u_xlat6.x + u_xlat6.x;
					    vs_TEXCOORD4 = min(u_xlat6.x, 1.0);
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat5 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat5;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlat10.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati3].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati3].xy + u_xlat10.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendMul2" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					float u_xlat14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat14 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat2.xyz = vec3(u_xlat14) * u_xlat2.xyz;
					    u_xlat14 = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat3.xyz = vec3(u_xlat14) * in_NORMAL0.xyz;
					    u_xlat2.x = dot(u_xlat3.xyz, u_xlat2.xyz);
					    u_xlat2.x = log2(abs(u_xlat2.x));
					    u_xlat2.x = u_xlat2.x * _FresnelStr;
					    u_xlat2.x = exp2(u_xlat2.x);
					    u_xlat2.x = u_xlat2.x + u_xlat2.x;
					    vs_TEXCOORD4 = min(u_xlat2.x, 1.0);
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat4 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_3_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati1;
					vec4 u_xlat2;
					int u_xlati3;
					float u_xlat4;
					float u_xlat5;
					vec3 u_xlat6;
					vec3 u_xlat8;
					vec2 u_xlat10;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat6.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat6.x = inversesqrt(u_xlat6.x);
					    u_xlat6.xyz = u_xlat6.xxx * in_NORMAL0.xyz;
					    u_xlati3 = unity_StereoEyeIndex;
					    u_xlat8.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].yyy;
					    u_xlat8.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].xxx + u_xlat8.xyz;
					    u_xlat8.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].zzz + u_xlat8.xyz;
					    u_xlat8.xyz = u_xlat8.xyz + unity_WorldToObject[3].xyz;
					    u_xlat8.xyz = u_xlat8.xyz + (-in_POSITION0.xyz);
					    u_xlat4 = dot(u_xlat8.xyz, u_xlat8.xyz);
					    u_xlat4 = inversesqrt(u_xlat4);
					    u_xlat8.xyz = u_xlat8.xyz * vec3(u_xlat4);
					    u_xlat6.x = dot(u_xlat6.xyz, u_xlat8.xyz);
					    u_xlat6.x = log2(abs(u_xlat6.x));
					    u_xlat6.x = u_xlat6.x * _FresnelStr;
					    u_xlat6.x = exp2(u_xlat6.x);
					    u_xlat6.x = u_xlat6.x + u_xlat6.x;
					    vs_TEXCOORD4 = min(u_xlat6.x, 1.0);
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat5 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat5;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlat10.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati3].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati3].xy + u_xlat10.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendMul2" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    u_xlat2 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat2;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec2 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					float u_xlat3;
					int u_xlati6;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    u_xlat3 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat3;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlati6 = unity_StereoEyeIndex;
					    u_xlat1.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati6].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati6].xy + u_xlat1.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendMul2" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    u_xlat2 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat2;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec2 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					float u_xlat3;
					int u_xlati6;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    u_xlat3 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat3;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlati6 = unity_StereoEyeIndex;
					    u_xlat1.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati6].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati6].xy + u_xlat1.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendMul2" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat2 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat2;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec2 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					float u_xlat3;
					int u_xlati6;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat3 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat3;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlati6 = unity_StereoEyeIndex;
					    u_xlat1.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati6].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati6].xy + u_xlat1.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendMul2" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat2 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat2;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec2 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					float u_xlat3;
					int u_xlati6;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat3 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat3;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlati6 = unity_StereoEyeIndex;
					    u_xlat1.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati6].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati6].xy + u_xlat1.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendMul2" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat2 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat2;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec2 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					float u_xlat3;
					int u_xlati6;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat3 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat3;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlati6 = unity_StereoEyeIndex;
					    u_xlat1.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati6].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati6].xy + u_xlat1.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendMul2" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat2 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat2;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec2 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					float u_xlat3;
					int u_xlati6;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat3 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat3;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlati6 = unity_StereoEyeIndex;
					    u_xlat1.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati6].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati6].xy + u_xlat1.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendMul2" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat2 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat2;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec2 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					float u_xlat3;
					int u_xlati6;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat3 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat3;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlati6 = unity_StereoEyeIndex;
					    u_xlat1.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati6].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati6].xy + u_xlat1.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendMul2" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat2 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat2;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec2 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					float u_xlat3;
					int u_xlati6;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat3 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat3;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlati6 = unity_StereoEyeIndex;
					    u_xlat1.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati6].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati6].xy + u_xlat1.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendMul2" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    u_xlat2 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat2;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec2 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					float u_xlat3;
					int u_xlati6;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    u_xlat3 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat3;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlati6 = unity_StereoEyeIndex;
					    u_xlat1.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati6].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati6].xy + u_xlat1.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendMul2" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    u_xlat2 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat2;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec2 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					float u_xlat3;
					int u_xlati6;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    u_xlat3 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat3;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlati6 = unity_StereoEyeIndex;
					    u_xlat1.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati6].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati6].xy + u_xlat1.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendMul2" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat2 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat2;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec2 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					float u_xlat3;
					int u_xlati6;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat3 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat3;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlati6 = unity_StereoEyeIndex;
					    u_xlat1.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati6].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati6].xy + u_xlat1.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendMul2" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat2 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat2;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec2 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					float u_xlat3;
					int u_xlati6;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat3 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat3;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlati6 = unity_StereoEyeIndex;
					    u_xlat1.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati6].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati6].xy + u_xlat1.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendMul2" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat2 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat2;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec2 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					float u_xlat3;
					int u_xlati6;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat3 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat3;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlati6 = unity_StereoEyeIndex;
					    u_xlat1.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati6].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati6].xy + u_xlat1.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendMul2" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat2 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat2;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec2 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					float u_xlat3;
					int u_xlati6;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat3 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat3;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlati6 = unity_StereoEyeIndex;
					    u_xlat1.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati6].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati6].xy + u_xlat1.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendMul2" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat2 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat2;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec2 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					float u_xlat3;
					int u_xlati6;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat3 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat3;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlati6 = unity_StereoEyeIndex;
					    u_xlat1.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati6].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati6].xy + u_xlat1.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendMul2" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat2 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat2;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec2 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					float u_xlat3;
					int u_xlati6;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat3 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat3;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlati6 = unity_StereoEyeIndex;
					    u_xlat1.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati6].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati6].xy + u_xlat1.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendMul2" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					float u_xlat9;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat9 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat9 = inversesqrt(u_xlat9);
					    u_xlat2.xyz = vec3(u_xlat9) * u_xlat2.xyz;
					    u_xlat9 = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat9 = inversesqrt(u_xlat9);
					    u_xlat3.xyz = vec3(u_xlat9) * in_NORMAL0.xyz;
					    u_xlat9 = dot(u_xlat3.xyz, u_xlat2.xyz);
					    u_xlat9 = log2(abs(u_xlat9));
					    u_xlat9 = u_xlat9 * _FresnelStr;
					    u_xlat9 = exp2(u_xlat9);
					    u_xlat9 = u_xlat9 + u_xlat9;
					    vs_TEXCOORD4 = min(u_xlat9, 1.0);
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    u_xlat4 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_3_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					vec3 u_xlat5;
					vec2 u_xlat8;
					int u_xlati10;
					float u_xlat15;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat5.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat5.x = inversesqrt(u_xlat5.x);
					    u_xlat5.xyz = u_xlat5.xxx * in_NORMAL0.xyz;
					    u_xlati10 = unity_StereoEyeIndex;
					    u_xlat3.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati10].yyy;
					    u_xlat3.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati10].xxx + u_xlat3.xyz;
					    u_xlat3.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati10].zzz + u_xlat3.xyz;
					    u_xlat3.xyz = u_xlat3.xyz + unity_WorldToObject[3].xyz;
					    u_xlat3.xyz = u_xlat3.xyz + (-in_POSITION0.xyz);
					    u_xlat15 = dot(u_xlat3.xyz, u_xlat3.xyz);
					    u_xlat15 = inversesqrt(u_xlat15);
					    u_xlat3.xyz = vec3(u_xlat15) * u_xlat3.xyz;
					    u_xlat5.x = dot(u_xlat5.xyz, u_xlat3.xyz);
					    u_xlat5.x = log2(abs(u_xlat5.x));
					    u_xlat5.x = u_xlat5.x * _FresnelStr;
					    u_xlat5.x = exp2(u_xlat5.x);
					    u_xlat5.x = u_xlat5.x + u_xlat5.x;
					    vs_TEXCOORD4 = min(u_xlat5.x, 1.0);
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    u_xlat4 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlat8.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati10].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati10].xy + u_xlat8.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendMul2" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					float u_xlat9;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat9 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat9 = inversesqrt(u_xlat9);
					    u_xlat2.xyz = vec3(u_xlat9) * u_xlat2.xyz;
					    u_xlat9 = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat9 = inversesqrt(u_xlat9);
					    u_xlat3.xyz = vec3(u_xlat9) * in_NORMAL0.xyz;
					    u_xlat9 = dot(u_xlat3.xyz, u_xlat2.xyz);
					    u_xlat9 = log2(abs(u_xlat9));
					    u_xlat9 = u_xlat9 * _FresnelStr;
					    u_xlat9 = exp2(u_xlat9);
					    u_xlat9 = u_xlat9 + u_xlat9;
					    vs_TEXCOORD4 = min(u_xlat9, 1.0);
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    u_xlat4 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_3_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					vec3 u_xlat5;
					vec2 u_xlat8;
					int u_xlati10;
					float u_xlat15;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat5.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat5.x = inversesqrt(u_xlat5.x);
					    u_xlat5.xyz = u_xlat5.xxx * in_NORMAL0.xyz;
					    u_xlati10 = unity_StereoEyeIndex;
					    u_xlat3.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati10].yyy;
					    u_xlat3.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati10].xxx + u_xlat3.xyz;
					    u_xlat3.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati10].zzz + u_xlat3.xyz;
					    u_xlat3.xyz = u_xlat3.xyz + unity_WorldToObject[3].xyz;
					    u_xlat3.xyz = u_xlat3.xyz + (-in_POSITION0.xyz);
					    u_xlat15 = dot(u_xlat3.xyz, u_xlat3.xyz);
					    u_xlat15 = inversesqrt(u_xlat15);
					    u_xlat3.xyz = vec3(u_xlat15) * u_xlat3.xyz;
					    u_xlat5.x = dot(u_xlat5.xyz, u_xlat3.xyz);
					    u_xlat5.x = log2(abs(u_xlat5.x));
					    u_xlat5.x = u_xlat5.x * _FresnelStr;
					    u_xlat5.x = exp2(u_xlat5.x);
					    u_xlat5.x = u_xlat5.x + u_xlat5.x;
					    vs_TEXCOORD4 = min(u_xlat5.x, 1.0);
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    u_xlat4 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlat8.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati10].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati10].xy + u_xlat8.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendMul2" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					float u_xlat14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat14 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat2.xyz = vec3(u_xlat14) * u_xlat2.xyz;
					    u_xlat14 = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat3.xyz = vec3(u_xlat14) * in_NORMAL0.xyz;
					    u_xlat2.x = dot(u_xlat3.xyz, u_xlat2.xyz);
					    u_xlat2.x = log2(abs(u_xlat2.x));
					    u_xlat2.x = u_xlat2.x * _FresnelStr;
					    u_xlat2.x = exp2(u_xlat2.x);
					    u_xlat2.x = u_xlat2.x + u_xlat2.x;
					    vs_TEXCOORD4 = min(u_xlat2.x, 1.0);
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat4 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_3_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati1;
					vec4 u_xlat2;
					int u_xlati3;
					float u_xlat4;
					float u_xlat5;
					vec3 u_xlat6;
					vec3 u_xlat8;
					vec2 u_xlat10;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat6.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat6.x = inversesqrt(u_xlat6.x);
					    u_xlat6.xyz = u_xlat6.xxx * in_NORMAL0.xyz;
					    u_xlati3 = unity_StereoEyeIndex;
					    u_xlat8.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].yyy;
					    u_xlat8.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].xxx + u_xlat8.xyz;
					    u_xlat8.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].zzz + u_xlat8.xyz;
					    u_xlat8.xyz = u_xlat8.xyz + unity_WorldToObject[3].xyz;
					    u_xlat8.xyz = u_xlat8.xyz + (-in_POSITION0.xyz);
					    u_xlat4 = dot(u_xlat8.xyz, u_xlat8.xyz);
					    u_xlat4 = inversesqrt(u_xlat4);
					    u_xlat8.xyz = u_xlat8.xyz * vec3(u_xlat4);
					    u_xlat6.x = dot(u_xlat6.xyz, u_xlat8.xyz);
					    u_xlat6.x = log2(abs(u_xlat6.x));
					    u_xlat6.x = u_xlat6.x * _FresnelStr;
					    u_xlat6.x = exp2(u_xlat6.x);
					    u_xlat6.x = u_xlat6.x + u_xlat6.x;
					    vs_TEXCOORD4 = min(u_xlat6.x, 1.0);
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat5 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat5;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlat10.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati3].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati3].xy + u_xlat10.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendMul2" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					float u_xlat14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat14 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat2.xyz = vec3(u_xlat14) * u_xlat2.xyz;
					    u_xlat14 = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat3.xyz = vec3(u_xlat14) * in_NORMAL0.xyz;
					    u_xlat2.x = dot(u_xlat3.xyz, u_xlat2.xyz);
					    u_xlat2.x = log2(abs(u_xlat2.x));
					    u_xlat2.x = u_xlat2.x * _FresnelStr;
					    u_xlat2.x = exp2(u_xlat2.x);
					    u_xlat2.x = u_xlat2.x + u_xlat2.x;
					    vs_TEXCOORD4 = min(u_xlat2.x, 1.0);
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat4 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_3_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati1;
					vec4 u_xlat2;
					int u_xlati3;
					float u_xlat4;
					float u_xlat5;
					vec3 u_xlat6;
					vec3 u_xlat8;
					vec2 u_xlat10;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat6.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat6.x = inversesqrt(u_xlat6.x);
					    u_xlat6.xyz = u_xlat6.xxx * in_NORMAL0.xyz;
					    u_xlati3 = unity_StereoEyeIndex;
					    u_xlat8.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].yyy;
					    u_xlat8.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].xxx + u_xlat8.xyz;
					    u_xlat8.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].zzz + u_xlat8.xyz;
					    u_xlat8.xyz = u_xlat8.xyz + unity_WorldToObject[3].xyz;
					    u_xlat8.xyz = u_xlat8.xyz + (-in_POSITION0.xyz);
					    u_xlat4 = dot(u_xlat8.xyz, u_xlat8.xyz);
					    u_xlat4 = inversesqrt(u_xlat4);
					    u_xlat8.xyz = u_xlat8.xyz * vec3(u_xlat4);
					    u_xlat6.x = dot(u_xlat6.xyz, u_xlat8.xyz);
					    u_xlat6.x = log2(abs(u_xlat6.x));
					    u_xlat6.x = u_xlat6.x * _FresnelStr;
					    u_xlat6.x = exp2(u_xlat6.x);
					    u_xlat6.x = u_xlat6.x + u_xlat6.x;
					    vs_TEXCOORD4 = min(u_xlat6.x, 1.0);
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat5 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat5;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlat10.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati3].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati3].xy + u_xlat10.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendMul2" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					float u_xlat14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat14 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat2.xyz = vec3(u_xlat14) * u_xlat2.xyz;
					    u_xlat14 = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat3.xyz = vec3(u_xlat14) * in_NORMAL0.xyz;
					    u_xlat2.x = dot(u_xlat3.xyz, u_xlat2.xyz);
					    u_xlat2.x = log2(abs(u_xlat2.x));
					    u_xlat2.x = u_xlat2.x * _FresnelStr;
					    u_xlat2.x = exp2(u_xlat2.x);
					    u_xlat2.x = u_xlat2.x + u_xlat2.x;
					    vs_TEXCOORD4 = min(u_xlat2.x, 1.0);
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat4 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_3_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati1;
					vec4 u_xlat2;
					int u_xlati3;
					float u_xlat4;
					float u_xlat5;
					vec3 u_xlat6;
					vec3 u_xlat8;
					vec2 u_xlat10;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat6.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat6.x = inversesqrt(u_xlat6.x);
					    u_xlat6.xyz = u_xlat6.xxx * in_NORMAL0.xyz;
					    u_xlati3 = unity_StereoEyeIndex;
					    u_xlat8.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].yyy;
					    u_xlat8.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].xxx + u_xlat8.xyz;
					    u_xlat8.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].zzz + u_xlat8.xyz;
					    u_xlat8.xyz = u_xlat8.xyz + unity_WorldToObject[3].xyz;
					    u_xlat8.xyz = u_xlat8.xyz + (-in_POSITION0.xyz);
					    u_xlat4 = dot(u_xlat8.xyz, u_xlat8.xyz);
					    u_xlat4 = inversesqrt(u_xlat4);
					    u_xlat8.xyz = u_xlat8.xyz * vec3(u_xlat4);
					    u_xlat6.x = dot(u_xlat6.xyz, u_xlat8.xyz);
					    u_xlat6.x = log2(abs(u_xlat6.x));
					    u_xlat6.x = u_xlat6.x * _FresnelStr;
					    u_xlat6.x = exp2(u_xlat6.x);
					    u_xlat6.x = u_xlat6.x + u_xlat6.x;
					    vs_TEXCOORD4 = min(u_xlat6.x, 1.0);
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat5 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat5;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlat10.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati3].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati3].xy + u_xlat10.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendMul2" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					float u_xlat14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat14 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat2.xyz = vec3(u_xlat14) * u_xlat2.xyz;
					    u_xlat14 = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat3.xyz = vec3(u_xlat14) * in_NORMAL0.xyz;
					    u_xlat2.x = dot(u_xlat3.xyz, u_xlat2.xyz);
					    u_xlat2.x = log2(abs(u_xlat2.x));
					    u_xlat2.x = u_xlat2.x * _FresnelStr;
					    u_xlat2.x = exp2(u_xlat2.x);
					    u_xlat2.x = u_xlat2.x + u_xlat2.x;
					    vs_TEXCOORD4 = min(u_xlat2.x, 1.0);
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat4 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_3_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati1;
					vec4 u_xlat2;
					int u_xlati3;
					float u_xlat4;
					float u_xlat5;
					vec3 u_xlat6;
					vec3 u_xlat8;
					vec2 u_xlat10;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat6.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat6.x = inversesqrt(u_xlat6.x);
					    u_xlat6.xyz = u_xlat6.xxx * in_NORMAL0.xyz;
					    u_xlati3 = unity_StereoEyeIndex;
					    u_xlat8.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].yyy;
					    u_xlat8.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].xxx + u_xlat8.xyz;
					    u_xlat8.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].zzz + u_xlat8.xyz;
					    u_xlat8.xyz = u_xlat8.xyz + unity_WorldToObject[3].xyz;
					    u_xlat8.xyz = u_xlat8.xyz + (-in_POSITION0.xyz);
					    u_xlat4 = dot(u_xlat8.xyz, u_xlat8.xyz);
					    u_xlat4 = inversesqrt(u_xlat4);
					    u_xlat8.xyz = u_xlat8.xyz * vec3(u_xlat4);
					    u_xlat6.x = dot(u_xlat6.xyz, u_xlat8.xyz);
					    u_xlat6.x = log2(abs(u_xlat6.x));
					    u_xlat6.x = u_xlat6.x * _FresnelStr;
					    u_xlat6.x = exp2(u_xlat6.x);
					    u_xlat6.x = u_xlat6.x + u_xlat6.x;
					    vs_TEXCOORD4 = min(u_xlat6.x, 1.0);
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat5 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat5;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlat10.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati3].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati3].xy + u_xlat10.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendMul2" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					float u_xlat14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat14 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat2.xyz = vec3(u_xlat14) * u_xlat2.xyz;
					    u_xlat14 = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat3.xyz = vec3(u_xlat14) * in_NORMAL0.xyz;
					    u_xlat2.x = dot(u_xlat3.xyz, u_xlat2.xyz);
					    u_xlat2.x = log2(abs(u_xlat2.x));
					    u_xlat2.x = u_xlat2.x * _FresnelStr;
					    u_xlat2.x = exp2(u_xlat2.x);
					    u_xlat2.x = u_xlat2.x + u_xlat2.x;
					    vs_TEXCOORD4 = min(u_xlat2.x, 1.0);
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat4 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_3_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati1;
					vec4 u_xlat2;
					int u_xlati3;
					float u_xlat4;
					float u_xlat5;
					vec3 u_xlat6;
					vec3 u_xlat8;
					vec2 u_xlat10;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat6.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat6.x = inversesqrt(u_xlat6.x);
					    u_xlat6.xyz = u_xlat6.xxx * in_NORMAL0.xyz;
					    u_xlati3 = unity_StereoEyeIndex;
					    u_xlat8.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].yyy;
					    u_xlat8.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].xxx + u_xlat8.xyz;
					    u_xlat8.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].zzz + u_xlat8.xyz;
					    u_xlat8.xyz = u_xlat8.xyz + unity_WorldToObject[3].xyz;
					    u_xlat8.xyz = u_xlat8.xyz + (-in_POSITION0.xyz);
					    u_xlat4 = dot(u_xlat8.xyz, u_xlat8.xyz);
					    u_xlat4 = inversesqrt(u_xlat4);
					    u_xlat8.xyz = u_xlat8.xyz * vec3(u_xlat4);
					    u_xlat6.x = dot(u_xlat6.xyz, u_xlat8.xyz);
					    u_xlat6.x = log2(abs(u_xlat6.x));
					    u_xlat6.x = u_xlat6.x * _FresnelStr;
					    u_xlat6.x = exp2(u_xlat6.x);
					    u_xlat6.x = u_xlat6.x + u_xlat6.x;
					    vs_TEXCOORD4 = min(u_xlat6.x, 1.0);
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat5 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat5;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlat10.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati3].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati3].xy + u_xlat10.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendMul2" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					float u_xlat14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat14 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat2.xyz = vec3(u_xlat14) * u_xlat2.xyz;
					    u_xlat14 = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat3.xyz = vec3(u_xlat14) * in_NORMAL0.xyz;
					    u_xlat2.x = dot(u_xlat3.xyz, u_xlat2.xyz);
					    u_xlat2.x = log2(abs(u_xlat2.x));
					    u_xlat2.x = u_xlat2.x * _FresnelStr;
					    u_xlat2.x = exp2(u_xlat2.x);
					    u_xlat2.x = u_xlat2.x + u_xlat2.x;
					    vs_TEXCOORD4 = min(u_xlat2.x, 1.0);
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat4 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_3_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati1;
					vec4 u_xlat2;
					int u_xlati3;
					float u_xlat4;
					float u_xlat5;
					vec3 u_xlat6;
					vec3 u_xlat8;
					vec2 u_xlat10;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat6.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat6.x = inversesqrt(u_xlat6.x);
					    u_xlat6.xyz = u_xlat6.xxx * in_NORMAL0.xyz;
					    u_xlati3 = unity_StereoEyeIndex;
					    u_xlat8.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].yyy;
					    u_xlat8.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].xxx + u_xlat8.xyz;
					    u_xlat8.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].zzz + u_xlat8.xyz;
					    u_xlat8.xyz = u_xlat8.xyz + unity_WorldToObject[3].xyz;
					    u_xlat8.xyz = u_xlat8.xyz + (-in_POSITION0.xyz);
					    u_xlat4 = dot(u_xlat8.xyz, u_xlat8.xyz);
					    u_xlat4 = inversesqrt(u_xlat4);
					    u_xlat8.xyz = u_xlat8.xyz * vec3(u_xlat4);
					    u_xlat6.x = dot(u_xlat6.xyz, u_xlat8.xyz);
					    u_xlat6.x = log2(abs(u_xlat6.x));
					    u_xlat6.x = u_xlat6.x * _FresnelStr;
					    u_xlat6.x = exp2(u_xlat6.x);
					    u_xlat6.x = u_xlat6.x + u_xlat6.x;
					    vs_TEXCOORD4 = min(u_xlat6.x, 1.0);
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat5 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat5;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlat10.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati3].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati3].xy + u_xlat10.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendMul2" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					float u_xlat9;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat9 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat9 = inversesqrt(u_xlat9);
					    u_xlat2.xyz = vec3(u_xlat9) * u_xlat2.xyz;
					    u_xlat9 = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat9 = inversesqrt(u_xlat9);
					    u_xlat3.xyz = vec3(u_xlat9) * in_NORMAL0.xyz;
					    u_xlat9 = dot(u_xlat3.xyz, u_xlat2.xyz);
					    u_xlat9 = log2(abs(u_xlat9));
					    u_xlat9 = u_xlat9 * _FresnelStr;
					    u_xlat9 = exp2(u_xlat9);
					    u_xlat9 = u_xlat9 + u_xlat9;
					    vs_TEXCOORD4 = min(u_xlat9, 1.0);
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    u_xlat4 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_3_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					vec3 u_xlat5;
					vec2 u_xlat8;
					int u_xlati10;
					float u_xlat15;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat5.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat5.x = inversesqrt(u_xlat5.x);
					    u_xlat5.xyz = u_xlat5.xxx * in_NORMAL0.xyz;
					    u_xlati10 = unity_StereoEyeIndex;
					    u_xlat3.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati10].yyy;
					    u_xlat3.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati10].xxx + u_xlat3.xyz;
					    u_xlat3.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati10].zzz + u_xlat3.xyz;
					    u_xlat3.xyz = u_xlat3.xyz + unity_WorldToObject[3].xyz;
					    u_xlat3.xyz = u_xlat3.xyz + (-in_POSITION0.xyz);
					    u_xlat15 = dot(u_xlat3.xyz, u_xlat3.xyz);
					    u_xlat15 = inversesqrt(u_xlat15);
					    u_xlat3.xyz = vec3(u_xlat15) * u_xlat3.xyz;
					    u_xlat5.x = dot(u_xlat5.xyz, u_xlat3.xyz);
					    u_xlat5.x = log2(abs(u_xlat5.x));
					    u_xlat5.x = u_xlat5.x * _FresnelStr;
					    u_xlat5.x = exp2(u_xlat5.x);
					    u_xlat5.x = u_xlat5.x + u_xlat5.x;
					    vs_TEXCOORD4 = min(u_xlat5.x, 1.0);
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    u_xlat4 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlat8.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati10].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati10].xy + u_xlat8.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendMul2" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					float u_xlat9;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat9 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat9 = inversesqrt(u_xlat9);
					    u_xlat2.xyz = vec3(u_xlat9) * u_xlat2.xyz;
					    u_xlat9 = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat9 = inversesqrt(u_xlat9);
					    u_xlat3.xyz = vec3(u_xlat9) * in_NORMAL0.xyz;
					    u_xlat9 = dot(u_xlat3.xyz, u_xlat2.xyz);
					    u_xlat9 = log2(abs(u_xlat9));
					    u_xlat9 = u_xlat9 * _FresnelStr;
					    u_xlat9 = exp2(u_xlat9);
					    u_xlat9 = u_xlat9 + u_xlat9;
					    vs_TEXCOORD4 = min(u_xlat9, 1.0);
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    u_xlat4 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_3_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					vec3 u_xlat5;
					vec2 u_xlat8;
					int u_xlati10;
					float u_xlat15;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat5.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat5.x = inversesqrt(u_xlat5.x);
					    u_xlat5.xyz = u_xlat5.xxx * in_NORMAL0.xyz;
					    u_xlati10 = unity_StereoEyeIndex;
					    u_xlat3.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati10].yyy;
					    u_xlat3.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati10].xxx + u_xlat3.xyz;
					    u_xlat3.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati10].zzz + u_xlat3.xyz;
					    u_xlat3.xyz = u_xlat3.xyz + unity_WorldToObject[3].xyz;
					    u_xlat3.xyz = u_xlat3.xyz + (-in_POSITION0.xyz);
					    u_xlat15 = dot(u_xlat3.xyz, u_xlat3.xyz);
					    u_xlat15 = inversesqrt(u_xlat15);
					    u_xlat3.xyz = vec3(u_xlat15) * u_xlat3.xyz;
					    u_xlat5.x = dot(u_xlat5.xyz, u_xlat3.xyz);
					    u_xlat5.x = log2(abs(u_xlat5.x));
					    u_xlat5.x = u_xlat5.x * _FresnelStr;
					    u_xlat5.x = exp2(u_xlat5.x);
					    u_xlat5.x = u_xlat5.x + u_xlat5.x;
					    vs_TEXCOORD4 = min(u_xlat5.x, 1.0);
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    u_xlat4 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlat8.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati10].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati10].xy + u_xlat8.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendMul2" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					float u_xlat14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat14 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat2.xyz = vec3(u_xlat14) * u_xlat2.xyz;
					    u_xlat14 = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat3.xyz = vec3(u_xlat14) * in_NORMAL0.xyz;
					    u_xlat2.x = dot(u_xlat3.xyz, u_xlat2.xyz);
					    u_xlat2.x = log2(abs(u_xlat2.x));
					    u_xlat2.x = u_xlat2.x * _FresnelStr;
					    u_xlat2.x = exp2(u_xlat2.x);
					    u_xlat2.x = u_xlat2.x + u_xlat2.x;
					    vs_TEXCOORD4 = min(u_xlat2.x, 1.0);
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat4 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_3_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati1;
					vec4 u_xlat2;
					int u_xlati3;
					float u_xlat4;
					float u_xlat5;
					vec3 u_xlat6;
					vec3 u_xlat8;
					vec2 u_xlat10;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat6.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat6.x = inversesqrt(u_xlat6.x);
					    u_xlat6.xyz = u_xlat6.xxx * in_NORMAL0.xyz;
					    u_xlati3 = unity_StereoEyeIndex;
					    u_xlat8.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].yyy;
					    u_xlat8.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].xxx + u_xlat8.xyz;
					    u_xlat8.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].zzz + u_xlat8.xyz;
					    u_xlat8.xyz = u_xlat8.xyz + unity_WorldToObject[3].xyz;
					    u_xlat8.xyz = u_xlat8.xyz + (-in_POSITION0.xyz);
					    u_xlat4 = dot(u_xlat8.xyz, u_xlat8.xyz);
					    u_xlat4 = inversesqrt(u_xlat4);
					    u_xlat8.xyz = u_xlat8.xyz * vec3(u_xlat4);
					    u_xlat6.x = dot(u_xlat6.xyz, u_xlat8.xyz);
					    u_xlat6.x = log2(abs(u_xlat6.x));
					    u_xlat6.x = u_xlat6.x * _FresnelStr;
					    u_xlat6.x = exp2(u_xlat6.x);
					    u_xlat6.x = u_xlat6.x + u_xlat6.x;
					    vs_TEXCOORD4 = min(u_xlat6.x, 1.0);
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat5 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat5;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlat10.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati3].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati3].xy + u_xlat10.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendMul2" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					float u_xlat14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat14 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat2.xyz = vec3(u_xlat14) * u_xlat2.xyz;
					    u_xlat14 = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat3.xyz = vec3(u_xlat14) * in_NORMAL0.xyz;
					    u_xlat2.x = dot(u_xlat3.xyz, u_xlat2.xyz);
					    u_xlat2.x = log2(abs(u_xlat2.x));
					    u_xlat2.x = u_xlat2.x * _FresnelStr;
					    u_xlat2.x = exp2(u_xlat2.x);
					    u_xlat2.x = u_xlat2.x + u_xlat2.x;
					    vs_TEXCOORD4 = min(u_xlat2.x, 1.0);
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat4 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_3_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati1;
					vec4 u_xlat2;
					int u_xlati3;
					float u_xlat4;
					float u_xlat5;
					vec3 u_xlat6;
					vec3 u_xlat8;
					vec2 u_xlat10;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat6.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat6.x = inversesqrt(u_xlat6.x);
					    u_xlat6.xyz = u_xlat6.xxx * in_NORMAL0.xyz;
					    u_xlati3 = unity_StereoEyeIndex;
					    u_xlat8.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].yyy;
					    u_xlat8.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].xxx + u_xlat8.xyz;
					    u_xlat8.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].zzz + u_xlat8.xyz;
					    u_xlat8.xyz = u_xlat8.xyz + unity_WorldToObject[3].xyz;
					    u_xlat8.xyz = u_xlat8.xyz + (-in_POSITION0.xyz);
					    u_xlat4 = dot(u_xlat8.xyz, u_xlat8.xyz);
					    u_xlat4 = inversesqrt(u_xlat4);
					    u_xlat8.xyz = u_xlat8.xyz * vec3(u_xlat4);
					    u_xlat6.x = dot(u_xlat6.xyz, u_xlat8.xyz);
					    u_xlat6.x = log2(abs(u_xlat6.x));
					    u_xlat6.x = u_xlat6.x * _FresnelStr;
					    u_xlat6.x = exp2(u_xlat6.x);
					    u_xlat6.x = u_xlat6.x + u_xlat6.x;
					    vs_TEXCOORD4 = min(u_xlat6.x, 1.0);
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat5 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat5;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlat10.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati3].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati3].xy + u_xlat10.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendMul2" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					float u_xlat14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat14 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat2.xyz = vec3(u_xlat14) * u_xlat2.xyz;
					    u_xlat14 = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat3.xyz = vec3(u_xlat14) * in_NORMAL0.xyz;
					    u_xlat2.x = dot(u_xlat3.xyz, u_xlat2.xyz);
					    u_xlat2.x = log2(abs(u_xlat2.x));
					    u_xlat2.x = u_xlat2.x * _FresnelStr;
					    u_xlat2.x = exp2(u_xlat2.x);
					    u_xlat2.x = u_xlat2.x + u_xlat2.x;
					    vs_TEXCOORD4 = min(u_xlat2.x, 1.0);
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat4 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_3_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati1;
					vec4 u_xlat2;
					int u_xlati3;
					float u_xlat4;
					float u_xlat5;
					vec3 u_xlat6;
					vec3 u_xlat8;
					vec2 u_xlat10;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat6.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat6.x = inversesqrt(u_xlat6.x);
					    u_xlat6.xyz = u_xlat6.xxx * in_NORMAL0.xyz;
					    u_xlati3 = unity_StereoEyeIndex;
					    u_xlat8.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].yyy;
					    u_xlat8.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].xxx + u_xlat8.xyz;
					    u_xlat8.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].zzz + u_xlat8.xyz;
					    u_xlat8.xyz = u_xlat8.xyz + unity_WorldToObject[3].xyz;
					    u_xlat8.xyz = u_xlat8.xyz + (-in_POSITION0.xyz);
					    u_xlat4 = dot(u_xlat8.xyz, u_xlat8.xyz);
					    u_xlat4 = inversesqrt(u_xlat4);
					    u_xlat8.xyz = u_xlat8.xyz * vec3(u_xlat4);
					    u_xlat6.x = dot(u_xlat6.xyz, u_xlat8.xyz);
					    u_xlat6.x = log2(abs(u_xlat6.x));
					    u_xlat6.x = u_xlat6.x * _FresnelStr;
					    u_xlat6.x = exp2(u_xlat6.x);
					    u_xlat6.x = u_xlat6.x + u_xlat6.x;
					    vs_TEXCOORD4 = min(u_xlat6.x, 1.0);
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat5 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat5;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlat10.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati3].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati3].xy + u_xlat10.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendMul2" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					float u_xlat14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat14 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat2.xyz = vec3(u_xlat14) * u_xlat2.xyz;
					    u_xlat14 = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat3.xyz = vec3(u_xlat14) * in_NORMAL0.xyz;
					    u_xlat2.x = dot(u_xlat3.xyz, u_xlat2.xyz);
					    u_xlat2.x = log2(abs(u_xlat2.x));
					    u_xlat2.x = u_xlat2.x * _FresnelStr;
					    u_xlat2.x = exp2(u_xlat2.x);
					    u_xlat2.x = u_xlat2.x + u_xlat2.x;
					    vs_TEXCOORD4 = min(u_xlat2.x, 1.0);
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat4 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_3_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati1;
					vec4 u_xlat2;
					int u_xlati3;
					float u_xlat4;
					float u_xlat5;
					vec3 u_xlat6;
					vec3 u_xlat8;
					vec2 u_xlat10;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat6.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat6.x = inversesqrt(u_xlat6.x);
					    u_xlat6.xyz = u_xlat6.xxx * in_NORMAL0.xyz;
					    u_xlati3 = unity_StereoEyeIndex;
					    u_xlat8.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].yyy;
					    u_xlat8.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].xxx + u_xlat8.xyz;
					    u_xlat8.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].zzz + u_xlat8.xyz;
					    u_xlat8.xyz = u_xlat8.xyz + unity_WorldToObject[3].xyz;
					    u_xlat8.xyz = u_xlat8.xyz + (-in_POSITION0.xyz);
					    u_xlat4 = dot(u_xlat8.xyz, u_xlat8.xyz);
					    u_xlat4 = inversesqrt(u_xlat4);
					    u_xlat8.xyz = u_xlat8.xyz * vec3(u_xlat4);
					    u_xlat6.x = dot(u_xlat6.xyz, u_xlat8.xyz);
					    u_xlat6.x = log2(abs(u_xlat6.x));
					    u_xlat6.x = u_xlat6.x * _FresnelStr;
					    u_xlat6.x = exp2(u_xlat6.x);
					    u_xlat6.x = u_xlat6.x + u_xlat6.x;
					    vs_TEXCOORD4 = min(u_xlat6.x, 1.0);
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat5 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat5;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlat10.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati3].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati3].xy + u_xlat10.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendMul2" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					float u_xlat14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat14 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat2.xyz = vec3(u_xlat14) * u_xlat2.xyz;
					    u_xlat14 = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat3.xyz = vec3(u_xlat14) * in_NORMAL0.xyz;
					    u_xlat2.x = dot(u_xlat3.xyz, u_xlat2.xyz);
					    u_xlat2.x = log2(abs(u_xlat2.x));
					    u_xlat2.x = u_xlat2.x * _FresnelStr;
					    u_xlat2.x = exp2(u_xlat2.x);
					    u_xlat2.x = u_xlat2.x + u_xlat2.x;
					    vs_TEXCOORD4 = min(u_xlat2.x, 1.0);
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat4 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_3_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati1;
					vec4 u_xlat2;
					int u_xlati3;
					float u_xlat4;
					float u_xlat5;
					vec3 u_xlat6;
					vec3 u_xlat8;
					vec2 u_xlat10;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat6.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat6.x = inversesqrt(u_xlat6.x);
					    u_xlat6.xyz = u_xlat6.xxx * in_NORMAL0.xyz;
					    u_xlati3 = unity_StereoEyeIndex;
					    u_xlat8.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].yyy;
					    u_xlat8.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].xxx + u_xlat8.xyz;
					    u_xlat8.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].zzz + u_xlat8.xyz;
					    u_xlat8.xyz = u_xlat8.xyz + unity_WorldToObject[3].xyz;
					    u_xlat8.xyz = u_xlat8.xyz + (-in_POSITION0.xyz);
					    u_xlat4 = dot(u_xlat8.xyz, u_xlat8.xyz);
					    u_xlat4 = inversesqrt(u_xlat4);
					    u_xlat8.xyz = u_xlat8.xyz * vec3(u_xlat4);
					    u_xlat6.x = dot(u_xlat6.xyz, u_xlat8.xyz);
					    u_xlat6.x = log2(abs(u_xlat6.x));
					    u_xlat6.x = u_xlat6.x * _FresnelStr;
					    u_xlat6.x = exp2(u_xlat6.x);
					    u_xlat6.x = u_xlat6.x + u_xlat6.x;
					    vs_TEXCOORD4 = min(u_xlat6.x, 1.0);
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat5 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat5;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlat10.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati3].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati3].xy + u_xlat10.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendMul2" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					float u_xlat14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat14 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat2.xyz = vec3(u_xlat14) * u_xlat2.xyz;
					    u_xlat14 = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat3.xyz = vec3(u_xlat14) * in_NORMAL0.xyz;
					    u_xlat2.x = dot(u_xlat3.xyz, u_xlat2.xyz);
					    u_xlat2.x = log2(abs(u_xlat2.x));
					    u_xlat2.x = u_xlat2.x * _FresnelStr;
					    u_xlat2.x = exp2(u_xlat2.x);
					    u_xlat2.x = u_xlat2.x + u_xlat2.x;
					    vs_TEXCOORD4 = min(u_xlat2.x, 1.0);
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat4 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_3_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati1;
					vec4 u_xlat2;
					int u_xlati3;
					float u_xlat4;
					float u_xlat5;
					vec3 u_xlat6;
					vec3 u_xlat8;
					vec2 u_xlat10;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat6.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat6.x = inversesqrt(u_xlat6.x);
					    u_xlat6.xyz = u_xlat6.xxx * in_NORMAL0.xyz;
					    u_xlati3 = unity_StereoEyeIndex;
					    u_xlat8.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].yyy;
					    u_xlat8.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].xxx + u_xlat8.xyz;
					    u_xlat8.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].zzz + u_xlat8.xyz;
					    u_xlat8.xyz = u_xlat8.xyz + unity_WorldToObject[3].xyz;
					    u_xlat8.xyz = u_xlat8.xyz + (-in_POSITION0.xyz);
					    u_xlat4 = dot(u_xlat8.xyz, u_xlat8.xyz);
					    u_xlat4 = inversesqrt(u_xlat4);
					    u_xlat8.xyz = u_xlat8.xyz * vec3(u_xlat4);
					    u_xlat6.x = dot(u_xlat6.xyz, u_xlat8.xyz);
					    u_xlat6.x = log2(abs(u_xlat6.x));
					    u_xlat6.x = u_xlat6.x * _FresnelStr;
					    u_xlat6.x = exp2(u_xlat6.x);
					    u_xlat6.x = u_xlat6.x + u_xlat6.x;
					    vs_TEXCOORD4 = min(u_xlat6.x, 1.0);
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat5 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat5;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlat10.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati3].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati3].xy + u_xlat10.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendMul2" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    u_xlat2 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat2;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec2 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					float u_xlat3;
					int u_xlati6;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    u_xlat3 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat3;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlati6 = unity_StereoEyeIndex;
					    u_xlat1.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati6].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati6].xy + u_xlat1.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendMul2" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    u_xlat2 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat2;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec2 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					float u_xlat3;
					int u_xlati6;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    u_xlat3 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat3;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlati6 = unity_StereoEyeIndex;
					    u_xlat1.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati6].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati6].xy + u_xlat1.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendMul2" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat2 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat2;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec2 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					float u_xlat3;
					int u_xlati6;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat3 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat3;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlati6 = unity_StereoEyeIndex;
					    u_xlat1.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati6].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati6].xy + u_xlat1.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendMul2" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat2 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat2;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec2 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					float u_xlat3;
					int u_xlati6;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat3 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat3;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlati6 = unity_StereoEyeIndex;
					    u_xlat1.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati6].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati6].xy + u_xlat1.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendMul2" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat2 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat2;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec2 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					float u_xlat3;
					int u_xlati6;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat3 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat3;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlati6 = unity_StereoEyeIndex;
					    u_xlat1.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati6].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati6].xy + u_xlat1.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendMul2" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat2 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat2;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec2 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					float u_xlat3;
					int u_xlati6;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat3 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat3;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlati6 = unity_StereoEyeIndex;
					    u_xlat1.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati6].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati6].xy + u_xlat1.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendMul2" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat2 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat2;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec2 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					float u_xlat3;
					int u_xlati6;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat3 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat3;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlati6 = unity_StereoEyeIndex;
					    u_xlat1.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati6].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati6].xy + u_xlat1.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendMul2" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat2 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat2;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec2 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					float u_xlat3;
					int u_xlati6;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat3 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat3;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlati6 = unity_StereoEyeIndex;
					    u_xlat1.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati6].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati6].xy + u_xlat1.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendMul2" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    u_xlat2 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat2;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec2 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					float u_xlat3;
					int u_xlati6;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    u_xlat3 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat3;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlati6 = unity_StereoEyeIndex;
					    u_xlat1.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati6].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati6].xy + u_xlat1.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendMul2" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    u_xlat2 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat2;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec2 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					float u_xlat3;
					int u_xlati6;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    u_xlat3 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat3;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlati6 = unity_StereoEyeIndex;
					    u_xlat1.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati6].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati6].xy + u_xlat1.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendMul2" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat2 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat2;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec2 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					float u_xlat3;
					int u_xlati6;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat3 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat3;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlati6 = unity_StereoEyeIndex;
					    u_xlat1.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati6].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati6].xy + u_xlat1.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendMul2" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat2 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat2;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec2 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					float u_xlat3;
					int u_xlati6;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat3 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat3;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlati6 = unity_StereoEyeIndex;
					    u_xlat1.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati6].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati6].xy + u_xlat1.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendMul2" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat2 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat2;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec2 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					float u_xlat3;
					int u_xlati6;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat3 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat3;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlati6 = unity_StereoEyeIndex;
					    u_xlat1.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati6].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati6].xy + u_xlat1.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendMul2" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat2 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat2;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec2 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					float u_xlat3;
					int u_xlati6;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat3 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat3;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlati6 = unity_StereoEyeIndex;
					    u_xlat1.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati6].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati6].xy + u_xlat1.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendMul2" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat2 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat2;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec2 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					float u_xlat3;
					int u_xlati6;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat3 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat3;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlati6 = unity_StereoEyeIndex;
					    u_xlat1.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati6].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati6].xy + u_xlat1.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendMul2" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat2 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat2;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec2 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					float u_xlat3;
					int u_xlati6;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat3 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat3;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlati6 = unity_StereoEyeIndex;
					    u_xlat1.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati6].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati6].xy + u_xlat1.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendMul2" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					float u_xlat9;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat9 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat9 = inversesqrt(u_xlat9);
					    u_xlat2.xyz = vec3(u_xlat9) * u_xlat2.xyz;
					    u_xlat9 = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat9 = inversesqrt(u_xlat9);
					    u_xlat3.xyz = vec3(u_xlat9) * in_NORMAL0.xyz;
					    u_xlat9 = dot(u_xlat3.xyz, u_xlat2.xyz);
					    u_xlat9 = log2(abs(u_xlat9));
					    u_xlat9 = u_xlat9 * _FresnelStr;
					    u_xlat9 = exp2(u_xlat9);
					    u_xlat9 = u_xlat9 + u_xlat9;
					    vs_TEXCOORD4 = min(u_xlat9, 1.0);
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    u_xlat4 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_3_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					vec3 u_xlat5;
					vec2 u_xlat8;
					int u_xlati10;
					float u_xlat15;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat5.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat5.x = inversesqrt(u_xlat5.x);
					    u_xlat5.xyz = u_xlat5.xxx * in_NORMAL0.xyz;
					    u_xlati10 = unity_StereoEyeIndex;
					    u_xlat3.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati10].yyy;
					    u_xlat3.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati10].xxx + u_xlat3.xyz;
					    u_xlat3.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati10].zzz + u_xlat3.xyz;
					    u_xlat3.xyz = u_xlat3.xyz + unity_WorldToObject[3].xyz;
					    u_xlat3.xyz = u_xlat3.xyz + (-in_POSITION0.xyz);
					    u_xlat15 = dot(u_xlat3.xyz, u_xlat3.xyz);
					    u_xlat15 = inversesqrt(u_xlat15);
					    u_xlat3.xyz = vec3(u_xlat15) * u_xlat3.xyz;
					    u_xlat5.x = dot(u_xlat5.xyz, u_xlat3.xyz);
					    u_xlat5.x = log2(abs(u_xlat5.x));
					    u_xlat5.x = u_xlat5.x * _FresnelStr;
					    u_xlat5.x = exp2(u_xlat5.x);
					    u_xlat5.x = u_xlat5.x + u_xlat5.x;
					    vs_TEXCOORD4 = min(u_xlat5.x, 1.0);
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    u_xlat4 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlat8.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati10].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati10].xy + u_xlat8.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendMul2" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					float u_xlat9;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat9 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat9 = inversesqrt(u_xlat9);
					    u_xlat2.xyz = vec3(u_xlat9) * u_xlat2.xyz;
					    u_xlat9 = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat9 = inversesqrt(u_xlat9);
					    u_xlat3.xyz = vec3(u_xlat9) * in_NORMAL0.xyz;
					    u_xlat9 = dot(u_xlat3.xyz, u_xlat2.xyz);
					    u_xlat9 = log2(abs(u_xlat9));
					    u_xlat9 = u_xlat9 * _FresnelStr;
					    u_xlat9 = exp2(u_xlat9);
					    u_xlat9 = u_xlat9 + u_xlat9;
					    vs_TEXCOORD4 = min(u_xlat9, 1.0);
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    u_xlat4 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_3_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					vec3 u_xlat5;
					vec2 u_xlat8;
					int u_xlati10;
					float u_xlat15;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat5.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat5.x = inversesqrt(u_xlat5.x);
					    u_xlat5.xyz = u_xlat5.xxx * in_NORMAL0.xyz;
					    u_xlati10 = unity_StereoEyeIndex;
					    u_xlat3.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati10].yyy;
					    u_xlat3.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati10].xxx + u_xlat3.xyz;
					    u_xlat3.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati10].zzz + u_xlat3.xyz;
					    u_xlat3.xyz = u_xlat3.xyz + unity_WorldToObject[3].xyz;
					    u_xlat3.xyz = u_xlat3.xyz + (-in_POSITION0.xyz);
					    u_xlat15 = dot(u_xlat3.xyz, u_xlat3.xyz);
					    u_xlat15 = inversesqrt(u_xlat15);
					    u_xlat3.xyz = vec3(u_xlat15) * u_xlat3.xyz;
					    u_xlat5.x = dot(u_xlat5.xyz, u_xlat3.xyz);
					    u_xlat5.x = log2(abs(u_xlat5.x));
					    u_xlat5.x = u_xlat5.x * _FresnelStr;
					    u_xlat5.x = exp2(u_xlat5.x);
					    u_xlat5.x = u_xlat5.x + u_xlat5.x;
					    vs_TEXCOORD4 = min(u_xlat5.x, 1.0);
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    u_xlat4 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlat8.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati10].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati10].xy + u_xlat8.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendMul2" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					float u_xlat14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat14 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat2.xyz = vec3(u_xlat14) * u_xlat2.xyz;
					    u_xlat14 = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat3.xyz = vec3(u_xlat14) * in_NORMAL0.xyz;
					    u_xlat2.x = dot(u_xlat3.xyz, u_xlat2.xyz);
					    u_xlat2.x = log2(abs(u_xlat2.x));
					    u_xlat2.x = u_xlat2.x * _FresnelStr;
					    u_xlat2.x = exp2(u_xlat2.x);
					    u_xlat2.x = u_xlat2.x + u_xlat2.x;
					    vs_TEXCOORD4 = min(u_xlat2.x, 1.0);
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat4 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_3_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati1;
					vec4 u_xlat2;
					int u_xlati3;
					float u_xlat4;
					float u_xlat5;
					vec3 u_xlat6;
					vec3 u_xlat8;
					vec2 u_xlat10;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat6.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat6.x = inversesqrt(u_xlat6.x);
					    u_xlat6.xyz = u_xlat6.xxx * in_NORMAL0.xyz;
					    u_xlati3 = unity_StereoEyeIndex;
					    u_xlat8.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].yyy;
					    u_xlat8.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].xxx + u_xlat8.xyz;
					    u_xlat8.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].zzz + u_xlat8.xyz;
					    u_xlat8.xyz = u_xlat8.xyz + unity_WorldToObject[3].xyz;
					    u_xlat8.xyz = u_xlat8.xyz + (-in_POSITION0.xyz);
					    u_xlat4 = dot(u_xlat8.xyz, u_xlat8.xyz);
					    u_xlat4 = inversesqrt(u_xlat4);
					    u_xlat8.xyz = u_xlat8.xyz * vec3(u_xlat4);
					    u_xlat6.x = dot(u_xlat6.xyz, u_xlat8.xyz);
					    u_xlat6.x = log2(abs(u_xlat6.x));
					    u_xlat6.x = u_xlat6.x * _FresnelStr;
					    u_xlat6.x = exp2(u_xlat6.x);
					    u_xlat6.x = u_xlat6.x + u_xlat6.x;
					    vs_TEXCOORD4 = min(u_xlat6.x, 1.0);
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat5 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat5;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlat10.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati3].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati3].xy + u_xlat10.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendMul2" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					float u_xlat14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat14 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat2.xyz = vec3(u_xlat14) * u_xlat2.xyz;
					    u_xlat14 = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat3.xyz = vec3(u_xlat14) * in_NORMAL0.xyz;
					    u_xlat2.x = dot(u_xlat3.xyz, u_xlat2.xyz);
					    u_xlat2.x = log2(abs(u_xlat2.x));
					    u_xlat2.x = u_xlat2.x * _FresnelStr;
					    u_xlat2.x = exp2(u_xlat2.x);
					    u_xlat2.x = u_xlat2.x + u_xlat2.x;
					    vs_TEXCOORD4 = min(u_xlat2.x, 1.0);
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat4 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_3_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati1;
					vec4 u_xlat2;
					int u_xlati3;
					float u_xlat4;
					float u_xlat5;
					vec3 u_xlat6;
					vec3 u_xlat8;
					vec2 u_xlat10;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat6.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat6.x = inversesqrt(u_xlat6.x);
					    u_xlat6.xyz = u_xlat6.xxx * in_NORMAL0.xyz;
					    u_xlati3 = unity_StereoEyeIndex;
					    u_xlat8.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].yyy;
					    u_xlat8.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].xxx + u_xlat8.xyz;
					    u_xlat8.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].zzz + u_xlat8.xyz;
					    u_xlat8.xyz = u_xlat8.xyz + unity_WorldToObject[3].xyz;
					    u_xlat8.xyz = u_xlat8.xyz + (-in_POSITION0.xyz);
					    u_xlat4 = dot(u_xlat8.xyz, u_xlat8.xyz);
					    u_xlat4 = inversesqrt(u_xlat4);
					    u_xlat8.xyz = u_xlat8.xyz * vec3(u_xlat4);
					    u_xlat6.x = dot(u_xlat6.xyz, u_xlat8.xyz);
					    u_xlat6.x = log2(abs(u_xlat6.x));
					    u_xlat6.x = u_xlat6.x * _FresnelStr;
					    u_xlat6.x = exp2(u_xlat6.x);
					    u_xlat6.x = u_xlat6.x + u_xlat6.x;
					    vs_TEXCOORD4 = min(u_xlat6.x, 1.0);
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat5 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat5;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlat10.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati3].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati3].xy + u_xlat10.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendMul2" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					float u_xlat14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat14 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat2.xyz = vec3(u_xlat14) * u_xlat2.xyz;
					    u_xlat14 = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat3.xyz = vec3(u_xlat14) * in_NORMAL0.xyz;
					    u_xlat2.x = dot(u_xlat3.xyz, u_xlat2.xyz);
					    u_xlat2.x = log2(abs(u_xlat2.x));
					    u_xlat2.x = u_xlat2.x * _FresnelStr;
					    u_xlat2.x = exp2(u_xlat2.x);
					    u_xlat2.x = u_xlat2.x + u_xlat2.x;
					    vs_TEXCOORD4 = min(u_xlat2.x, 1.0);
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat4 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_3_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati1;
					vec4 u_xlat2;
					int u_xlati3;
					float u_xlat4;
					float u_xlat5;
					vec3 u_xlat6;
					vec3 u_xlat8;
					vec2 u_xlat10;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat6.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat6.x = inversesqrt(u_xlat6.x);
					    u_xlat6.xyz = u_xlat6.xxx * in_NORMAL0.xyz;
					    u_xlati3 = unity_StereoEyeIndex;
					    u_xlat8.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].yyy;
					    u_xlat8.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].xxx + u_xlat8.xyz;
					    u_xlat8.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].zzz + u_xlat8.xyz;
					    u_xlat8.xyz = u_xlat8.xyz + unity_WorldToObject[3].xyz;
					    u_xlat8.xyz = u_xlat8.xyz + (-in_POSITION0.xyz);
					    u_xlat4 = dot(u_xlat8.xyz, u_xlat8.xyz);
					    u_xlat4 = inversesqrt(u_xlat4);
					    u_xlat8.xyz = u_xlat8.xyz * vec3(u_xlat4);
					    u_xlat6.x = dot(u_xlat6.xyz, u_xlat8.xyz);
					    u_xlat6.x = log2(abs(u_xlat6.x));
					    u_xlat6.x = u_xlat6.x * _FresnelStr;
					    u_xlat6.x = exp2(u_xlat6.x);
					    u_xlat6.x = u_xlat6.x + u_xlat6.x;
					    vs_TEXCOORD4 = min(u_xlat6.x, 1.0);
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat5 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat5;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlat10.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati3].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati3].xy + u_xlat10.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendMul2" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					float u_xlat14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat14 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat2.xyz = vec3(u_xlat14) * u_xlat2.xyz;
					    u_xlat14 = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat3.xyz = vec3(u_xlat14) * in_NORMAL0.xyz;
					    u_xlat2.x = dot(u_xlat3.xyz, u_xlat2.xyz);
					    u_xlat2.x = log2(abs(u_xlat2.x));
					    u_xlat2.x = u_xlat2.x * _FresnelStr;
					    u_xlat2.x = exp2(u_xlat2.x);
					    u_xlat2.x = u_xlat2.x + u_xlat2.x;
					    vs_TEXCOORD4 = min(u_xlat2.x, 1.0);
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat4 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_3_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati1;
					vec4 u_xlat2;
					int u_xlati3;
					float u_xlat4;
					float u_xlat5;
					vec3 u_xlat6;
					vec3 u_xlat8;
					vec2 u_xlat10;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat6.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat6.x = inversesqrt(u_xlat6.x);
					    u_xlat6.xyz = u_xlat6.xxx * in_NORMAL0.xyz;
					    u_xlati3 = unity_StereoEyeIndex;
					    u_xlat8.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].yyy;
					    u_xlat8.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].xxx + u_xlat8.xyz;
					    u_xlat8.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].zzz + u_xlat8.xyz;
					    u_xlat8.xyz = u_xlat8.xyz + unity_WorldToObject[3].xyz;
					    u_xlat8.xyz = u_xlat8.xyz + (-in_POSITION0.xyz);
					    u_xlat4 = dot(u_xlat8.xyz, u_xlat8.xyz);
					    u_xlat4 = inversesqrt(u_xlat4);
					    u_xlat8.xyz = u_xlat8.xyz * vec3(u_xlat4);
					    u_xlat6.x = dot(u_xlat6.xyz, u_xlat8.xyz);
					    u_xlat6.x = log2(abs(u_xlat6.x));
					    u_xlat6.x = u_xlat6.x * _FresnelStr;
					    u_xlat6.x = exp2(u_xlat6.x);
					    u_xlat6.x = u_xlat6.x + u_xlat6.x;
					    vs_TEXCOORD4 = min(u_xlat6.x, 1.0);
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat5 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat5;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlat10.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati3].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati3].xy + u_xlat10.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendMul2" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					float u_xlat14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat14 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat2.xyz = vec3(u_xlat14) * u_xlat2.xyz;
					    u_xlat14 = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat3.xyz = vec3(u_xlat14) * in_NORMAL0.xyz;
					    u_xlat2.x = dot(u_xlat3.xyz, u_xlat2.xyz);
					    u_xlat2.x = log2(abs(u_xlat2.x));
					    u_xlat2.x = u_xlat2.x * _FresnelStr;
					    u_xlat2.x = exp2(u_xlat2.x);
					    u_xlat2.x = u_xlat2.x + u_xlat2.x;
					    vs_TEXCOORD4 = min(u_xlat2.x, 1.0);
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat4 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_3_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati1;
					vec4 u_xlat2;
					int u_xlati3;
					float u_xlat4;
					float u_xlat5;
					vec3 u_xlat6;
					vec3 u_xlat8;
					vec2 u_xlat10;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat6.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat6.x = inversesqrt(u_xlat6.x);
					    u_xlat6.xyz = u_xlat6.xxx * in_NORMAL0.xyz;
					    u_xlati3 = unity_StereoEyeIndex;
					    u_xlat8.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].yyy;
					    u_xlat8.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].xxx + u_xlat8.xyz;
					    u_xlat8.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].zzz + u_xlat8.xyz;
					    u_xlat8.xyz = u_xlat8.xyz + unity_WorldToObject[3].xyz;
					    u_xlat8.xyz = u_xlat8.xyz + (-in_POSITION0.xyz);
					    u_xlat4 = dot(u_xlat8.xyz, u_xlat8.xyz);
					    u_xlat4 = inversesqrt(u_xlat4);
					    u_xlat8.xyz = u_xlat8.xyz * vec3(u_xlat4);
					    u_xlat6.x = dot(u_xlat6.xyz, u_xlat8.xyz);
					    u_xlat6.x = log2(abs(u_xlat6.x));
					    u_xlat6.x = u_xlat6.x * _FresnelStr;
					    u_xlat6.x = exp2(u_xlat6.x);
					    u_xlat6.x = u_xlat6.x + u_xlat6.x;
					    vs_TEXCOORD4 = min(u_xlat6.x, 1.0);
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat5 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat5;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlat10.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati3].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati3].xy + u_xlat10.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendMul2" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					float u_xlat14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat14 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat2.xyz = vec3(u_xlat14) * u_xlat2.xyz;
					    u_xlat14 = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat3.xyz = vec3(u_xlat14) * in_NORMAL0.xyz;
					    u_xlat2.x = dot(u_xlat3.xyz, u_xlat2.xyz);
					    u_xlat2.x = log2(abs(u_xlat2.x));
					    u_xlat2.x = u_xlat2.x * _FresnelStr;
					    u_xlat2.x = exp2(u_xlat2.x);
					    u_xlat2.x = u_xlat2.x + u_xlat2.x;
					    vs_TEXCOORD4 = min(u_xlat2.x, 1.0);
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat4 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_3_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati1;
					vec4 u_xlat2;
					int u_xlati3;
					float u_xlat4;
					float u_xlat5;
					vec3 u_xlat6;
					vec3 u_xlat8;
					vec2 u_xlat10;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat6.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat6.x = inversesqrt(u_xlat6.x);
					    u_xlat6.xyz = u_xlat6.xxx * in_NORMAL0.xyz;
					    u_xlati3 = unity_StereoEyeIndex;
					    u_xlat8.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].yyy;
					    u_xlat8.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].xxx + u_xlat8.xyz;
					    u_xlat8.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].zzz + u_xlat8.xyz;
					    u_xlat8.xyz = u_xlat8.xyz + unity_WorldToObject[3].xyz;
					    u_xlat8.xyz = u_xlat8.xyz + (-in_POSITION0.xyz);
					    u_xlat4 = dot(u_xlat8.xyz, u_xlat8.xyz);
					    u_xlat4 = inversesqrt(u_xlat4);
					    u_xlat8.xyz = u_xlat8.xyz * vec3(u_xlat4);
					    u_xlat6.x = dot(u_xlat6.xyz, u_xlat8.xyz);
					    u_xlat6.x = log2(abs(u_xlat6.x));
					    u_xlat6.x = u_xlat6.x * _FresnelStr;
					    u_xlat6.x = exp2(u_xlat6.x);
					    u_xlat6.x = u_xlat6.x + u_xlat6.x;
					    vs_TEXCOORD4 = min(u_xlat6.x, 1.0);
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat5 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat5;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlat10.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati3].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati3].xy + u_xlat10.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendMul2" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					float u_xlat9;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat9 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat9 = inversesqrt(u_xlat9);
					    u_xlat2.xyz = vec3(u_xlat9) * u_xlat2.xyz;
					    u_xlat9 = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat9 = inversesqrt(u_xlat9);
					    u_xlat3.xyz = vec3(u_xlat9) * in_NORMAL0.xyz;
					    u_xlat9 = dot(u_xlat3.xyz, u_xlat2.xyz);
					    u_xlat9 = log2(abs(u_xlat9));
					    u_xlat9 = u_xlat9 * _FresnelStr;
					    u_xlat9 = exp2(u_xlat9);
					    u_xlat9 = u_xlat9 + u_xlat9;
					    vs_TEXCOORD4 = min(u_xlat9, 1.0);
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    u_xlat4 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_3_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					vec3 u_xlat5;
					vec2 u_xlat8;
					int u_xlati10;
					float u_xlat15;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat5.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat5.x = inversesqrt(u_xlat5.x);
					    u_xlat5.xyz = u_xlat5.xxx * in_NORMAL0.xyz;
					    u_xlati10 = unity_StereoEyeIndex;
					    u_xlat3.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati10].yyy;
					    u_xlat3.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati10].xxx + u_xlat3.xyz;
					    u_xlat3.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati10].zzz + u_xlat3.xyz;
					    u_xlat3.xyz = u_xlat3.xyz + unity_WorldToObject[3].xyz;
					    u_xlat3.xyz = u_xlat3.xyz + (-in_POSITION0.xyz);
					    u_xlat15 = dot(u_xlat3.xyz, u_xlat3.xyz);
					    u_xlat15 = inversesqrt(u_xlat15);
					    u_xlat3.xyz = vec3(u_xlat15) * u_xlat3.xyz;
					    u_xlat5.x = dot(u_xlat5.xyz, u_xlat3.xyz);
					    u_xlat5.x = log2(abs(u_xlat5.x));
					    u_xlat5.x = u_xlat5.x * _FresnelStr;
					    u_xlat5.x = exp2(u_xlat5.x);
					    u_xlat5.x = u_xlat5.x + u_xlat5.x;
					    vs_TEXCOORD4 = min(u_xlat5.x, 1.0);
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    u_xlat4 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlat8.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati10].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati10].xy + u_xlat8.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendMul2" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					float u_xlat9;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat9 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat9 = inversesqrt(u_xlat9);
					    u_xlat2.xyz = vec3(u_xlat9) * u_xlat2.xyz;
					    u_xlat9 = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat9 = inversesqrt(u_xlat9);
					    u_xlat3.xyz = vec3(u_xlat9) * in_NORMAL0.xyz;
					    u_xlat9 = dot(u_xlat3.xyz, u_xlat2.xyz);
					    u_xlat9 = log2(abs(u_xlat9));
					    u_xlat9 = u_xlat9 * _FresnelStr;
					    u_xlat9 = exp2(u_xlat9);
					    u_xlat9 = u_xlat9 + u_xlat9;
					    vs_TEXCOORD4 = min(u_xlat9, 1.0);
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    u_xlat4 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_3_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					vec3 u_xlat5;
					vec2 u_xlat8;
					int u_xlati10;
					float u_xlat15;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat5.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat5.x = inversesqrt(u_xlat5.x);
					    u_xlat5.xyz = u_xlat5.xxx * in_NORMAL0.xyz;
					    u_xlati10 = unity_StereoEyeIndex;
					    u_xlat3.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati10].yyy;
					    u_xlat3.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati10].xxx + u_xlat3.xyz;
					    u_xlat3.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati10].zzz + u_xlat3.xyz;
					    u_xlat3.xyz = u_xlat3.xyz + unity_WorldToObject[3].xyz;
					    u_xlat3.xyz = u_xlat3.xyz + (-in_POSITION0.xyz);
					    u_xlat15 = dot(u_xlat3.xyz, u_xlat3.xyz);
					    u_xlat15 = inversesqrt(u_xlat15);
					    u_xlat3.xyz = vec3(u_xlat15) * u_xlat3.xyz;
					    u_xlat5.x = dot(u_xlat5.xyz, u_xlat3.xyz);
					    u_xlat5.x = log2(abs(u_xlat5.x));
					    u_xlat5.x = u_xlat5.x * _FresnelStr;
					    u_xlat5.x = exp2(u_xlat5.x);
					    u_xlat5.x = u_xlat5.x + u_xlat5.x;
					    vs_TEXCOORD4 = min(u_xlat5.x, 1.0);
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    u_xlat4 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlat8.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati10].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati10].xy + u_xlat8.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendMul2" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					float u_xlat14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat14 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat2.xyz = vec3(u_xlat14) * u_xlat2.xyz;
					    u_xlat14 = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat3.xyz = vec3(u_xlat14) * in_NORMAL0.xyz;
					    u_xlat2.x = dot(u_xlat3.xyz, u_xlat2.xyz);
					    u_xlat2.x = log2(abs(u_xlat2.x));
					    u_xlat2.x = u_xlat2.x * _FresnelStr;
					    u_xlat2.x = exp2(u_xlat2.x);
					    u_xlat2.x = u_xlat2.x + u_xlat2.x;
					    vs_TEXCOORD4 = min(u_xlat2.x, 1.0);
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat4 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_3_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati1;
					vec4 u_xlat2;
					int u_xlati3;
					float u_xlat4;
					float u_xlat5;
					vec3 u_xlat6;
					vec3 u_xlat8;
					vec2 u_xlat10;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat6.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat6.x = inversesqrt(u_xlat6.x);
					    u_xlat6.xyz = u_xlat6.xxx * in_NORMAL0.xyz;
					    u_xlati3 = unity_StereoEyeIndex;
					    u_xlat8.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].yyy;
					    u_xlat8.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].xxx + u_xlat8.xyz;
					    u_xlat8.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].zzz + u_xlat8.xyz;
					    u_xlat8.xyz = u_xlat8.xyz + unity_WorldToObject[3].xyz;
					    u_xlat8.xyz = u_xlat8.xyz + (-in_POSITION0.xyz);
					    u_xlat4 = dot(u_xlat8.xyz, u_xlat8.xyz);
					    u_xlat4 = inversesqrt(u_xlat4);
					    u_xlat8.xyz = u_xlat8.xyz * vec3(u_xlat4);
					    u_xlat6.x = dot(u_xlat6.xyz, u_xlat8.xyz);
					    u_xlat6.x = log2(abs(u_xlat6.x));
					    u_xlat6.x = u_xlat6.x * _FresnelStr;
					    u_xlat6.x = exp2(u_xlat6.x);
					    u_xlat6.x = u_xlat6.x + u_xlat6.x;
					    vs_TEXCOORD4 = min(u_xlat6.x, 1.0);
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat5 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat5;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlat10.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati3].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati3].xy + u_xlat10.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendMul2" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					float u_xlat14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat14 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat2.xyz = vec3(u_xlat14) * u_xlat2.xyz;
					    u_xlat14 = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat3.xyz = vec3(u_xlat14) * in_NORMAL0.xyz;
					    u_xlat2.x = dot(u_xlat3.xyz, u_xlat2.xyz);
					    u_xlat2.x = log2(abs(u_xlat2.x));
					    u_xlat2.x = u_xlat2.x * _FresnelStr;
					    u_xlat2.x = exp2(u_xlat2.x);
					    u_xlat2.x = u_xlat2.x + u_xlat2.x;
					    vs_TEXCOORD4 = min(u_xlat2.x, 1.0);
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat4 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_3_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati1;
					vec4 u_xlat2;
					int u_xlati3;
					float u_xlat4;
					float u_xlat5;
					vec3 u_xlat6;
					vec3 u_xlat8;
					vec2 u_xlat10;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat6.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat6.x = inversesqrt(u_xlat6.x);
					    u_xlat6.xyz = u_xlat6.xxx * in_NORMAL0.xyz;
					    u_xlati3 = unity_StereoEyeIndex;
					    u_xlat8.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].yyy;
					    u_xlat8.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].xxx + u_xlat8.xyz;
					    u_xlat8.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].zzz + u_xlat8.xyz;
					    u_xlat8.xyz = u_xlat8.xyz + unity_WorldToObject[3].xyz;
					    u_xlat8.xyz = u_xlat8.xyz + (-in_POSITION0.xyz);
					    u_xlat4 = dot(u_xlat8.xyz, u_xlat8.xyz);
					    u_xlat4 = inversesqrt(u_xlat4);
					    u_xlat8.xyz = u_xlat8.xyz * vec3(u_xlat4);
					    u_xlat6.x = dot(u_xlat6.xyz, u_xlat8.xyz);
					    u_xlat6.x = log2(abs(u_xlat6.x));
					    u_xlat6.x = u_xlat6.x * _FresnelStr;
					    u_xlat6.x = exp2(u_xlat6.x);
					    u_xlat6.x = u_xlat6.x + u_xlat6.x;
					    vs_TEXCOORD4 = min(u_xlat6.x, 1.0);
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat5 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat5;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlat10.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati3].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati3].xy + u_xlat10.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendMul2" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					float u_xlat14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat14 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat2.xyz = vec3(u_xlat14) * u_xlat2.xyz;
					    u_xlat14 = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat3.xyz = vec3(u_xlat14) * in_NORMAL0.xyz;
					    u_xlat2.x = dot(u_xlat3.xyz, u_xlat2.xyz);
					    u_xlat2.x = log2(abs(u_xlat2.x));
					    u_xlat2.x = u_xlat2.x * _FresnelStr;
					    u_xlat2.x = exp2(u_xlat2.x);
					    u_xlat2.x = u_xlat2.x + u_xlat2.x;
					    vs_TEXCOORD4 = min(u_xlat2.x, 1.0);
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat4 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_3_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati1;
					vec4 u_xlat2;
					int u_xlati3;
					float u_xlat4;
					float u_xlat5;
					vec3 u_xlat6;
					vec3 u_xlat8;
					vec2 u_xlat10;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat6.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat6.x = inversesqrt(u_xlat6.x);
					    u_xlat6.xyz = u_xlat6.xxx * in_NORMAL0.xyz;
					    u_xlati3 = unity_StereoEyeIndex;
					    u_xlat8.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].yyy;
					    u_xlat8.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].xxx + u_xlat8.xyz;
					    u_xlat8.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].zzz + u_xlat8.xyz;
					    u_xlat8.xyz = u_xlat8.xyz + unity_WorldToObject[3].xyz;
					    u_xlat8.xyz = u_xlat8.xyz + (-in_POSITION0.xyz);
					    u_xlat4 = dot(u_xlat8.xyz, u_xlat8.xyz);
					    u_xlat4 = inversesqrt(u_xlat4);
					    u_xlat8.xyz = u_xlat8.xyz * vec3(u_xlat4);
					    u_xlat6.x = dot(u_xlat6.xyz, u_xlat8.xyz);
					    u_xlat6.x = log2(abs(u_xlat6.x));
					    u_xlat6.x = u_xlat6.x * _FresnelStr;
					    u_xlat6.x = exp2(u_xlat6.x);
					    u_xlat6.x = u_xlat6.x + u_xlat6.x;
					    vs_TEXCOORD4 = min(u_xlat6.x, 1.0);
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat5 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat5;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlat10.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati3].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati3].xy + u_xlat10.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendMul2" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					float u_xlat14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat14 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat2.xyz = vec3(u_xlat14) * u_xlat2.xyz;
					    u_xlat14 = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat3.xyz = vec3(u_xlat14) * in_NORMAL0.xyz;
					    u_xlat2.x = dot(u_xlat3.xyz, u_xlat2.xyz);
					    u_xlat2.x = log2(abs(u_xlat2.x));
					    u_xlat2.x = u_xlat2.x * _FresnelStr;
					    u_xlat2.x = exp2(u_xlat2.x);
					    u_xlat2.x = u_xlat2.x + u_xlat2.x;
					    vs_TEXCOORD4 = min(u_xlat2.x, 1.0);
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat4 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_3_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati1;
					vec4 u_xlat2;
					int u_xlati3;
					float u_xlat4;
					float u_xlat5;
					vec3 u_xlat6;
					vec3 u_xlat8;
					vec2 u_xlat10;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat6.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat6.x = inversesqrt(u_xlat6.x);
					    u_xlat6.xyz = u_xlat6.xxx * in_NORMAL0.xyz;
					    u_xlati3 = unity_StereoEyeIndex;
					    u_xlat8.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].yyy;
					    u_xlat8.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].xxx + u_xlat8.xyz;
					    u_xlat8.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].zzz + u_xlat8.xyz;
					    u_xlat8.xyz = u_xlat8.xyz + unity_WorldToObject[3].xyz;
					    u_xlat8.xyz = u_xlat8.xyz + (-in_POSITION0.xyz);
					    u_xlat4 = dot(u_xlat8.xyz, u_xlat8.xyz);
					    u_xlat4 = inversesqrt(u_xlat4);
					    u_xlat8.xyz = u_xlat8.xyz * vec3(u_xlat4);
					    u_xlat6.x = dot(u_xlat6.xyz, u_xlat8.xyz);
					    u_xlat6.x = log2(abs(u_xlat6.x));
					    u_xlat6.x = u_xlat6.x * _FresnelStr;
					    u_xlat6.x = exp2(u_xlat6.x);
					    u_xlat6.x = u_xlat6.x + u_xlat6.x;
					    vs_TEXCOORD4 = min(u_xlat6.x, 1.0);
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat5 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat5;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlat10.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati3].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati3].xy + u_xlat10.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendMul2" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					float u_xlat14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat14 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat2.xyz = vec3(u_xlat14) * u_xlat2.xyz;
					    u_xlat14 = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat3.xyz = vec3(u_xlat14) * in_NORMAL0.xyz;
					    u_xlat2.x = dot(u_xlat3.xyz, u_xlat2.xyz);
					    u_xlat2.x = log2(abs(u_xlat2.x));
					    u_xlat2.x = u_xlat2.x * _FresnelStr;
					    u_xlat2.x = exp2(u_xlat2.x);
					    u_xlat2.x = u_xlat2.x + u_xlat2.x;
					    vs_TEXCOORD4 = min(u_xlat2.x, 1.0);
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat4 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_3_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati1;
					vec4 u_xlat2;
					int u_xlati3;
					float u_xlat4;
					float u_xlat5;
					vec3 u_xlat6;
					vec3 u_xlat8;
					vec2 u_xlat10;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat6.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat6.x = inversesqrt(u_xlat6.x);
					    u_xlat6.xyz = u_xlat6.xxx * in_NORMAL0.xyz;
					    u_xlati3 = unity_StereoEyeIndex;
					    u_xlat8.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].yyy;
					    u_xlat8.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].xxx + u_xlat8.xyz;
					    u_xlat8.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].zzz + u_xlat8.xyz;
					    u_xlat8.xyz = u_xlat8.xyz + unity_WorldToObject[3].xyz;
					    u_xlat8.xyz = u_xlat8.xyz + (-in_POSITION0.xyz);
					    u_xlat4 = dot(u_xlat8.xyz, u_xlat8.xyz);
					    u_xlat4 = inversesqrt(u_xlat4);
					    u_xlat8.xyz = u_xlat8.xyz * vec3(u_xlat4);
					    u_xlat6.x = dot(u_xlat6.xyz, u_xlat8.xyz);
					    u_xlat6.x = log2(abs(u_xlat6.x));
					    u_xlat6.x = u_xlat6.x * _FresnelStr;
					    u_xlat6.x = exp2(u_xlat6.x);
					    u_xlat6.x = u_xlat6.x + u_xlat6.x;
					    vs_TEXCOORD4 = min(u_xlat6.x, 1.0);
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat5 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat5;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlat10.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati3].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati3].xy + u_xlat10.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendMul2" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					float u_xlat14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat14 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat2.xyz = vec3(u_xlat14) * u_xlat2.xyz;
					    u_xlat14 = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat3.xyz = vec3(u_xlat14) * in_NORMAL0.xyz;
					    u_xlat2.x = dot(u_xlat3.xyz, u_xlat2.xyz);
					    u_xlat2.x = log2(abs(u_xlat2.x));
					    u_xlat2.x = u_xlat2.x * _FresnelStr;
					    u_xlat2.x = exp2(u_xlat2.x);
					    u_xlat2.x = u_xlat2.x + u_xlat2.x;
					    vs_TEXCOORD4 = min(u_xlat2.x, 1.0);
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat4 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_3_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati1;
					vec4 u_xlat2;
					int u_xlati3;
					float u_xlat4;
					float u_xlat5;
					vec3 u_xlat6;
					vec3 u_xlat8;
					vec2 u_xlat10;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat6.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat6.x = inversesqrt(u_xlat6.x);
					    u_xlat6.xyz = u_xlat6.xxx * in_NORMAL0.xyz;
					    u_xlati3 = unity_StereoEyeIndex;
					    u_xlat8.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].yyy;
					    u_xlat8.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].xxx + u_xlat8.xyz;
					    u_xlat8.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].zzz + u_xlat8.xyz;
					    u_xlat8.xyz = u_xlat8.xyz + unity_WorldToObject[3].xyz;
					    u_xlat8.xyz = u_xlat8.xyz + (-in_POSITION0.xyz);
					    u_xlat4 = dot(u_xlat8.xyz, u_xlat8.xyz);
					    u_xlat4 = inversesqrt(u_xlat4);
					    u_xlat8.xyz = u_xlat8.xyz * vec3(u_xlat4);
					    u_xlat6.x = dot(u_xlat6.xyz, u_xlat8.xyz);
					    u_xlat6.x = log2(abs(u_xlat6.x));
					    u_xlat6.x = u_xlat6.x * _FresnelStr;
					    u_xlat6.x = exp2(u_xlat6.x);
					    u_xlat6.x = u_xlat6.x + u_xlat6.x;
					    vs_TEXCOORD4 = min(u_xlat6.x, 1.0);
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat5 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat5;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlat10.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati3].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati3].xy + u_xlat10.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendMul2" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    u_xlat2 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat2;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec2 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					float u_xlat3;
					int u_xlati6;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    u_xlat3 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat3;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlati6 = unity_StereoEyeIndex;
					    u_xlat1.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati6].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati6].xy + u_xlat1.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendMul2" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    u_xlat2 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat2;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec2 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					float u_xlat3;
					int u_xlati6;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    u_xlat3 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat3;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlati6 = unity_StereoEyeIndex;
					    u_xlat1.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati6].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati6].xy + u_xlat1.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendMul2" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat2 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat2;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec2 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					float u_xlat3;
					int u_xlati6;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat3 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat3;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlati6 = unity_StereoEyeIndex;
					    u_xlat1.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati6].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati6].xy + u_xlat1.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendMul2" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat2 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat2;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec2 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					float u_xlat3;
					int u_xlati6;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat3 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat3;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlati6 = unity_StereoEyeIndex;
					    u_xlat1.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati6].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati6].xy + u_xlat1.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendMul2" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat2 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat2;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec2 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					float u_xlat3;
					int u_xlati6;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat3 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat3;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlati6 = unity_StereoEyeIndex;
					    u_xlat1.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati6].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati6].xy + u_xlat1.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendMul2" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat2 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat2;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec2 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					float u_xlat3;
					int u_xlati6;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat3 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat3;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlati6 = unity_StereoEyeIndex;
					    u_xlat1.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati6].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati6].xy + u_xlat1.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendMul2" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat2 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat2;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec2 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					float u_xlat3;
					int u_xlati6;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat3 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat3;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlati6 = unity_StereoEyeIndex;
					    u_xlat1.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati6].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati6].xy + u_xlat1.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendMul2" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat2 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat2;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec2 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					float u_xlat3;
					int u_xlati6;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat3 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat3;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlati6 = unity_StereoEyeIndex;
					    u_xlat1.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati6].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati6].xy + u_xlat1.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendMul2" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    u_xlat2 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat2;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec2 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					float u_xlat3;
					int u_xlati6;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    u_xlat3 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat3;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlati6 = unity_StereoEyeIndex;
					    u_xlat1.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati6].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati6].xy + u_xlat1.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendMul2" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    u_xlat2 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat2;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec2 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					float u_xlat3;
					int u_xlati6;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    u_xlat3 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat3;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlati6 = unity_StereoEyeIndex;
					    u_xlat1.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati6].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati6].xy + u_xlat1.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendMul2" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat2 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat2;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec2 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					float u_xlat3;
					int u_xlati6;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat3 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat3;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlati6 = unity_StereoEyeIndex;
					    u_xlat1.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati6].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati6].xy + u_xlat1.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendMul2" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat2 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat2;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec2 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					float u_xlat3;
					int u_xlati6;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat3 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat3;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlati6 = unity_StereoEyeIndex;
					    u_xlat1.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati6].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati6].xy + u_xlat1.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendMul2" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat2 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat2;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec2 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					float u_xlat3;
					int u_xlati6;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat3 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat3;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlati6 = unity_StereoEyeIndex;
					    u_xlat1.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati6].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati6].xy + u_xlat1.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendMul2" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat2 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat2;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec2 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					float u_xlat3;
					int u_xlati6;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat3 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat3;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlati6 = unity_StereoEyeIndex;
					    u_xlat1.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati6].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati6].xy + u_xlat1.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendMul2" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat2 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat2;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec2 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					float u_xlat3;
					int u_xlati6;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat3 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat3;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlati6 = unity_StereoEyeIndex;
					    u_xlat1.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati6].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati6].xy + u_xlat1.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendMul2" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat2 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat2;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_2_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec2 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					float u_xlat3;
					int u_xlati6;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat3 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat3;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlati6 = unity_StereoEyeIndex;
					    u_xlat1.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati6].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati6].xy + u_xlat1.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendMul2" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					float u_xlat9;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat9 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat9 = inversesqrt(u_xlat9);
					    u_xlat2.xyz = vec3(u_xlat9) * u_xlat2.xyz;
					    u_xlat9 = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat9 = inversesqrt(u_xlat9);
					    u_xlat3.xyz = vec3(u_xlat9) * in_NORMAL0.xyz;
					    u_xlat9 = dot(u_xlat3.xyz, u_xlat2.xyz);
					    u_xlat9 = log2(abs(u_xlat9));
					    u_xlat9 = u_xlat9 * _FresnelStr;
					    u_xlat9 = exp2(u_xlat9);
					    u_xlat9 = u_xlat9 + u_xlat9;
					    vs_TEXCOORD4 = min(u_xlat9, 1.0);
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    u_xlat4 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_3_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					vec3 u_xlat5;
					vec2 u_xlat8;
					int u_xlati10;
					float u_xlat15;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat5.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat5.x = inversesqrt(u_xlat5.x);
					    u_xlat5.xyz = u_xlat5.xxx * in_NORMAL0.xyz;
					    u_xlati10 = unity_StereoEyeIndex;
					    u_xlat3.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati10].yyy;
					    u_xlat3.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati10].xxx + u_xlat3.xyz;
					    u_xlat3.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati10].zzz + u_xlat3.xyz;
					    u_xlat3.xyz = u_xlat3.xyz + unity_WorldToObject[3].xyz;
					    u_xlat3.xyz = u_xlat3.xyz + (-in_POSITION0.xyz);
					    u_xlat15 = dot(u_xlat3.xyz, u_xlat3.xyz);
					    u_xlat15 = inversesqrt(u_xlat15);
					    u_xlat3.xyz = vec3(u_xlat15) * u_xlat3.xyz;
					    u_xlat5.x = dot(u_xlat5.xyz, u_xlat3.xyz);
					    u_xlat5.x = log2(abs(u_xlat5.x));
					    u_xlat5.x = u_xlat5.x * _FresnelStr;
					    u_xlat5.x = exp2(u_xlat5.x);
					    u_xlat5.x = u_xlat5.x + u_xlat5.x;
					    vs_TEXCOORD4 = min(u_xlat5.x, 1.0);
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    u_xlat4 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlat8.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati10].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati10].xy + u_xlat8.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendMul2" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					float u_xlat9;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat9 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat9 = inversesqrt(u_xlat9);
					    u_xlat2.xyz = vec3(u_xlat9) * u_xlat2.xyz;
					    u_xlat9 = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat9 = inversesqrt(u_xlat9);
					    u_xlat3.xyz = vec3(u_xlat9) * in_NORMAL0.xyz;
					    u_xlat9 = dot(u_xlat3.xyz, u_xlat2.xyz);
					    u_xlat9 = log2(abs(u_xlat9));
					    u_xlat9 = u_xlat9 * _FresnelStr;
					    u_xlat9 = exp2(u_xlat9);
					    u_xlat9 = u_xlat9 + u_xlat9;
					    vs_TEXCOORD4 = min(u_xlat9, 1.0);
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    u_xlat4 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_3_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					vec3 u_xlat5;
					vec2 u_xlat8;
					int u_xlati10;
					float u_xlat15;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat5.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat5.x = inversesqrt(u_xlat5.x);
					    u_xlat5.xyz = u_xlat5.xxx * in_NORMAL0.xyz;
					    u_xlati10 = unity_StereoEyeIndex;
					    u_xlat3.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati10].yyy;
					    u_xlat3.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati10].xxx + u_xlat3.xyz;
					    u_xlat3.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati10].zzz + u_xlat3.xyz;
					    u_xlat3.xyz = u_xlat3.xyz + unity_WorldToObject[3].xyz;
					    u_xlat3.xyz = u_xlat3.xyz + (-in_POSITION0.xyz);
					    u_xlat15 = dot(u_xlat3.xyz, u_xlat3.xyz);
					    u_xlat15 = inversesqrt(u_xlat15);
					    u_xlat3.xyz = vec3(u_xlat15) * u_xlat3.xyz;
					    u_xlat5.x = dot(u_xlat5.xyz, u_xlat3.xyz);
					    u_xlat5.x = log2(abs(u_xlat5.x));
					    u_xlat5.x = u_xlat5.x * _FresnelStr;
					    u_xlat5.x = exp2(u_xlat5.x);
					    u_xlat5.x = u_xlat5.x + u_xlat5.x;
					    vs_TEXCOORD4 = min(u_xlat5.x, 1.0);
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    u_xlat4 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlat8.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati10].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati10].xy + u_xlat8.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendMul2" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					float u_xlat14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat14 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat2.xyz = vec3(u_xlat14) * u_xlat2.xyz;
					    u_xlat14 = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat3.xyz = vec3(u_xlat14) * in_NORMAL0.xyz;
					    u_xlat2.x = dot(u_xlat3.xyz, u_xlat2.xyz);
					    u_xlat2.x = log2(abs(u_xlat2.x));
					    u_xlat2.x = u_xlat2.x * _FresnelStr;
					    u_xlat2.x = exp2(u_xlat2.x);
					    u_xlat2.x = u_xlat2.x + u_xlat2.x;
					    vs_TEXCOORD4 = min(u_xlat2.x, 1.0);
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat4 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_3_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati1;
					vec4 u_xlat2;
					int u_xlati3;
					float u_xlat4;
					float u_xlat5;
					vec3 u_xlat6;
					vec3 u_xlat8;
					vec2 u_xlat10;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat6.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat6.x = inversesqrt(u_xlat6.x);
					    u_xlat6.xyz = u_xlat6.xxx * in_NORMAL0.xyz;
					    u_xlati3 = unity_StereoEyeIndex;
					    u_xlat8.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].yyy;
					    u_xlat8.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].xxx + u_xlat8.xyz;
					    u_xlat8.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].zzz + u_xlat8.xyz;
					    u_xlat8.xyz = u_xlat8.xyz + unity_WorldToObject[3].xyz;
					    u_xlat8.xyz = u_xlat8.xyz + (-in_POSITION0.xyz);
					    u_xlat4 = dot(u_xlat8.xyz, u_xlat8.xyz);
					    u_xlat4 = inversesqrt(u_xlat4);
					    u_xlat8.xyz = u_xlat8.xyz * vec3(u_xlat4);
					    u_xlat6.x = dot(u_xlat6.xyz, u_xlat8.xyz);
					    u_xlat6.x = log2(abs(u_xlat6.x));
					    u_xlat6.x = u_xlat6.x * _FresnelStr;
					    u_xlat6.x = exp2(u_xlat6.x);
					    u_xlat6.x = u_xlat6.x + u_xlat6.x;
					    vs_TEXCOORD4 = min(u_xlat6.x, 1.0);
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat5 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat5;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlat10.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati3].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati3].xy + u_xlat10.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendMul2" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					float u_xlat14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat14 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat2.xyz = vec3(u_xlat14) * u_xlat2.xyz;
					    u_xlat14 = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat3.xyz = vec3(u_xlat14) * in_NORMAL0.xyz;
					    u_xlat2.x = dot(u_xlat3.xyz, u_xlat2.xyz);
					    u_xlat2.x = log2(abs(u_xlat2.x));
					    u_xlat2.x = u_xlat2.x * _FresnelStr;
					    u_xlat2.x = exp2(u_xlat2.x);
					    u_xlat2.x = u_xlat2.x + u_xlat2.x;
					    vs_TEXCOORD4 = min(u_xlat2.x, 1.0);
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat4 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_3_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati1;
					vec4 u_xlat2;
					int u_xlati3;
					float u_xlat4;
					float u_xlat5;
					vec3 u_xlat6;
					vec3 u_xlat8;
					vec2 u_xlat10;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat6.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat6.x = inversesqrt(u_xlat6.x);
					    u_xlat6.xyz = u_xlat6.xxx * in_NORMAL0.xyz;
					    u_xlati3 = unity_StereoEyeIndex;
					    u_xlat8.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].yyy;
					    u_xlat8.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].xxx + u_xlat8.xyz;
					    u_xlat8.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].zzz + u_xlat8.xyz;
					    u_xlat8.xyz = u_xlat8.xyz + unity_WorldToObject[3].xyz;
					    u_xlat8.xyz = u_xlat8.xyz + (-in_POSITION0.xyz);
					    u_xlat4 = dot(u_xlat8.xyz, u_xlat8.xyz);
					    u_xlat4 = inversesqrt(u_xlat4);
					    u_xlat8.xyz = u_xlat8.xyz * vec3(u_xlat4);
					    u_xlat6.x = dot(u_xlat6.xyz, u_xlat8.xyz);
					    u_xlat6.x = log2(abs(u_xlat6.x));
					    u_xlat6.x = u_xlat6.x * _FresnelStr;
					    u_xlat6.x = exp2(u_xlat6.x);
					    u_xlat6.x = u_xlat6.x + u_xlat6.x;
					    vs_TEXCOORD4 = min(u_xlat6.x, 1.0);
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat5 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat5;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlat10.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati3].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati3].xy + u_xlat10.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendMul2" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					float u_xlat14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat14 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat2.xyz = vec3(u_xlat14) * u_xlat2.xyz;
					    u_xlat14 = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat3.xyz = vec3(u_xlat14) * in_NORMAL0.xyz;
					    u_xlat2.x = dot(u_xlat3.xyz, u_xlat2.xyz);
					    u_xlat2.x = log2(abs(u_xlat2.x));
					    u_xlat2.x = u_xlat2.x * _FresnelStr;
					    u_xlat2.x = exp2(u_xlat2.x);
					    u_xlat2.x = u_xlat2.x + u_xlat2.x;
					    vs_TEXCOORD4 = min(u_xlat2.x, 1.0);
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat4 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_3_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati1;
					vec4 u_xlat2;
					int u_xlati3;
					float u_xlat4;
					float u_xlat5;
					vec3 u_xlat6;
					vec3 u_xlat8;
					vec2 u_xlat10;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat6.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat6.x = inversesqrt(u_xlat6.x);
					    u_xlat6.xyz = u_xlat6.xxx * in_NORMAL0.xyz;
					    u_xlati3 = unity_StereoEyeIndex;
					    u_xlat8.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].yyy;
					    u_xlat8.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].xxx + u_xlat8.xyz;
					    u_xlat8.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].zzz + u_xlat8.xyz;
					    u_xlat8.xyz = u_xlat8.xyz + unity_WorldToObject[3].xyz;
					    u_xlat8.xyz = u_xlat8.xyz + (-in_POSITION0.xyz);
					    u_xlat4 = dot(u_xlat8.xyz, u_xlat8.xyz);
					    u_xlat4 = inversesqrt(u_xlat4);
					    u_xlat8.xyz = u_xlat8.xyz * vec3(u_xlat4);
					    u_xlat6.x = dot(u_xlat6.xyz, u_xlat8.xyz);
					    u_xlat6.x = log2(abs(u_xlat6.x));
					    u_xlat6.x = u_xlat6.x * _FresnelStr;
					    u_xlat6.x = exp2(u_xlat6.x);
					    u_xlat6.x = u_xlat6.x + u_xlat6.x;
					    vs_TEXCOORD4 = min(u_xlat6.x, 1.0);
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat5 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat5;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlat10.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati3].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati3].xy + u_xlat10.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendMul2" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					float u_xlat14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat14 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat2.xyz = vec3(u_xlat14) * u_xlat2.xyz;
					    u_xlat14 = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat3.xyz = vec3(u_xlat14) * in_NORMAL0.xyz;
					    u_xlat2.x = dot(u_xlat3.xyz, u_xlat2.xyz);
					    u_xlat2.x = log2(abs(u_xlat2.x));
					    u_xlat2.x = u_xlat2.x * _FresnelStr;
					    u_xlat2.x = exp2(u_xlat2.x);
					    u_xlat2.x = u_xlat2.x + u_xlat2.x;
					    vs_TEXCOORD4 = min(u_xlat2.x, 1.0);
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat4 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_3_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati1;
					vec4 u_xlat2;
					int u_xlati3;
					float u_xlat4;
					float u_xlat5;
					vec3 u_xlat6;
					vec3 u_xlat8;
					vec2 u_xlat10;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat6.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat6.x = inversesqrt(u_xlat6.x);
					    u_xlat6.xyz = u_xlat6.xxx * in_NORMAL0.xyz;
					    u_xlati3 = unity_StereoEyeIndex;
					    u_xlat8.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].yyy;
					    u_xlat8.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].xxx + u_xlat8.xyz;
					    u_xlat8.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].zzz + u_xlat8.xyz;
					    u_xlat8.xyz = u_xlat8.xyz + unity_WorldToObject[3].xyz;
					    u_xlat8.xyz = u_xlat8.xyz + (-in_POSITION0.xyz);
					    u_xlat4 = dot(u_xlat8.xyz, u_xlat8.xyz);
					    u_xlat4 = inversesqrt(u_xlat4);
					    u_xlat8.xyz = u_xlat8.xyz * vec3(u_xlat4);
					    u_xlat6.x = dot(u_xlat6.xyz, u_xlat8.xyz);
					    u_xlat6.x = log2(abs(u_xlat6.x));
					    u_xlat6.x = u_xlat6.x * _FresnelStr;
					    u_xlat6.x = exp2(u_xlat6.x);
					    u_xlat6.x = u_xlat6.x + u_xlat6.x;
					    vs_TEXCOORD4 = min(u_xlat6.x, 1.0);
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat5 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat5;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlat10.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati3].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati3].xy + u_xlat10.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendMul2" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					float u_xlat14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat14 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat2.xyz = vec3(u_xlat14) * u_xlat2.xyz;
					    u_xlat14 = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat3.xyz = vec3(u_xlat14) * in_NORMAL0.xyz;
					    u_xlat2.x = dot(u_xlat3.xyz, u_xlat2.xyz);
					    u_xlat2.x = log2(abs(u_xlat2.x));
					    u_xlat2.x = u_xlat2.x * _FresnelStr;
					    u_xlat2.x = exp2(u_xlat2.x);
					    u_xlat2.x = u_xlat2.x + u_xlat2.x;
					    vs_TEXCOORD4 = min(u_xlat2.x, 1.0);
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat4 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_3_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati1;
					vec4 u_xlat2;
					int u_xlati3;
					float u_xlat4;
					float u_xlat5;
					vec3 u_xlat6;
					vec3 u_xlat8;
					vec2 u_xlat10;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat6.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat6.x = inversesqrt(u_xlat6.x);
					    u_xlat6.xyz = u_xlat6.xxx * in_NORMAL0.xyz;
					    u_xlati3 = unity_StereoEyeIndex;
					    u_xlat8.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].yyy;
					    u_xlat8.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].xxx + u_xlat8.xyz;
					    u_xlat8.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].zzz + u_xlat8.xyz;
					    u_xlat8.xyz = u_xlat8.xyz + unity_WorldToObject[3].xyz;
					    u_xlat8.xyz = u_xlat8.xyz + (-in_POSITION0.xyz);
					    u_xlat4 = dot(u_xlat8.xyz, u_xlat8.xyz);
					    u_xlat4 = inversesqrt(u_xlat4);
					    u_xlat8.xyz = u_xlat8.xyz * vec3(u_xlat4);
					    u_xlat6.x = dot(u_xlat6.xyz, u_xlat8.xyz);
					    u_xlat6.x = log2(abs(u_xlat6.x));
					    u_xlat6.x = u_xlat6.x * _FresnelStr;
					    u_xlat6.x = exp2(u_xlat6.x);
					    u_xlat6.x = u_xlat6.x + u_xlat6.x;
					    vs_TEXCOORD4 = min(u_xlat6.x, 1.0);
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat5 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat5;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlat10.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati3].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati3].xy + u_xlat10.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendMul2" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					float u_xlat14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat14 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat2.xyz = vec3(u_xlat14) * u_xlat2.xyz;
					    u_xlat14 = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat3.xyz = vec3(u_xlat14) * in_NORMAL0.xyz;
					    u_xlat2.x = dot(u_xlat3.xyz, u_xlat2.xyz);
					    u_xlat2.x = log2(abs(u_xlat2.x));
					    u_xlat2.x = u_xlat2.x * _FresnelStr;
					    u_xlat2.x = exp2(u_xlat2.x);
					    u_xlat2.x = u_xlat2.x + u_xlat2.x;
					    vs_TEXCOORD4 = min(u_xlat2.x, 1.0);
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat4 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_3_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati1;
					vec4 u_xlat2;
					int u_xlati3;
					float u_xlat4;
					float u_xlat5;
					vec3 u_xlat6;
					vec3 u_xlat8;
					vec2 u_xlat10;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat6.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat6.x = inversesqrt(u_xlat6.x);
					    u_xlat6.xyz = u_xlat6.xxx * in_NORMAL0.xyz;
					    u_xlati3 = unity_StereoEyeIndex;
					    u_xlat8.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].yyy;
					    u_xlat8.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].xxx + u_xlat8.xyz;
					    u_xlat8.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].zzz + u_xlat8.xyz;
					    u_xlat8.xyz = u_xlat8.xyz + unity_WorldToObject[3].xyz;
					    u_xlat8.xyz = u_xlat8.xyz + (-in_POSITION0.xyz);
					    u_xlat4 = dot(u_xlat8.xyz, u_xlat8.xyz);
					    u_xlat4 = inversesqrt(u_xlat4);
					    u_xlat8.xyz = u_xlat8.xyz * vec3(u_xlat4);
					    u_xlat6.x = dot(u_xlat6.xyz, u_xlat8.xyz);
					    u_xlat6.x = log2(abs(u_xlat6.x));
					    u_xlat6.x = u_xlat6.x * _FresnelStr;
					    u_xlat6.x = exp2(u_xlat6.x);
					    u_xlat6.x = u_xlat6.x + u_xlat6.x;
					    vs_TEXCOORD4 = min(u_xlat6.x, 1.0);
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat5 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat5;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlat10.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati3].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati3].xy + u_xlat10.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendMul2" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					float u_xlat9;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat9 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat9 = inversesqrt(u_xlat9);
					    u_xlat2.xyz = vec3(u_xlat9) * u_xlat2.xyz;
					    u_xlat9 = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat9 = inversesqrt(u_xlat9);
					    u_xlat3.xyz = vec3(u_xlat9) * in_NORMAL0.xyz;
					    u_xlat9 = dot(u_xlat3.xyz, u_xlat2.xyz);
					    u_xlat9 = log2(abs(u_xlat9));
					    u_xlat9 = u_xlat9 * _FresnelStr;
					    u_xlat9 = exp2(u_xlat9);
					    u_xlat9 = u_xlat9 + u_xlat9;
					    vs_TEXCOORD4 = min(u_xlat9, 1.0);
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    u_xlat4 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_3_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					vec3 u_xlat5;
					vec2 u_xlat8;
					int u_xlati10;
					float u_xlat15;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat5.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat5.x = inversesqrt(u_xlat5.x);
					    u_xlat5.xyz = u_xlat5.xxx * in_NORMAL0.xyz;
					    u_xlati10 = unity_StereoEyeIndex;
					    u_xlat3.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati10].yyy;
					    u_xlat3.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati10].xxx + u_xlat3.xyz;
					    u_xlat3.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati10].zzz + u_xlat3.xyz;
					    u_xlat3.xyz = u_xlat3.xyz + unity_WorldToObject[3].xyz;
					    u_xlat3.xyz = u_xlat3.xyz + (-in_POSITION0.xyz);
					    u_xlat15 = dot(u_xlat3.xyz, u_xlat3.xyz);
					    u_xlat15 = inversesqrt(u_xlat15);
					    u_xlat3.xyz = vec3(u_xlat15) * u_xlat3.xyz;
					    u_xlat5.x = dot(u_xlat5.xyz, u_xlat3.xyz);
					    u_xlat5.x = log2(abs(u_xlat5.x));
					    u_xlat5.x = u_xlat5.x * _FresnelStr;
					    u_xlat5.x = exp2(u_xlat5.x);
					    u_xlat5.x = u_xlat5.x + u_xlat5.x;
					    vs_TEXCOORD4 = min(u_xlat5.x, 1.0);
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    u_xlat4 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlat8.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati10].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati10].xy + u_xlat8.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendMul2" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					float u_xlat9;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat9 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat9 = inversesqrt(u_xlat9);
					    u_xlat2.xyz = vec3(u_xlat9) * u_xlat2.xyz;
					    u_xlat9 = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat9 = inversesqrt(u_xlat9);
					    u_xlat3.xyz = vec3(u_xlat9) * in_NORMAL0.xyz;
					    u_xlat9 = dot(u_xlat3.xyz, u_xlat2.xyz);
					    u_xlat9 = log2(abs(u_xlat9));
					    u_xlat9 = u_xlat9 * _FresnelStr;
					    u_xlat9 = exp2(u_xlat9);
					    u_xlat9 = u_xlat9 + u_xlat9;
					    vs_TEXCOORD4 = min(u_xlat9, 1.0);
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    u_xlat4 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_3_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					vec3 u_xlat5;
					vec2 u_xlat8;
					int u_xlati10;
					float u_xlat15;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat5.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat5.x = inversesqrt(u_xlat5.x);
					    u_xlat5.xyz = u_xlat5.xxx * in_NORMAL0.xyz;
					    u_xlati10 = unity_StereoEyeIndex;
					    u_xlat3.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati10].yyy;
					    u_xlat3.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati10].xxx + u_xlat3.xyz;
					    u_xlat3.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati10].zzz + u_xlat3.xyz;
					    u_xlat3.xyz = u_xlat3.xyz + unity_WorldToObject[3].xyz;
					    u_xlat3.xyz = u_xlat3.xyz + (-in_POSITION0.xyz);
					    u_xlat15 = dot(u_xlat3.xyz, u_xlat3.xyz);
					    u_xlat15 = inversesqrt(u_xlat15);
					    u_xlat3.xyz = vec3(u_xlat15) * u_xlat3.xyz;
					    u_xlat5.x = dot(u_xlat5.xyz, u_xlat3.xyz);
					    u_xlat5.x = log2(abs(u_xlat5.x));
					    u_xlat5.x = u_xlat5.x * _FresnelStr;
					    u_xlat5.x = exp2(u_xlat5.x);
					    u_xlat5.x = u_xlat5.x + u_xlat5.x;
					    vs_TEXCOORD4 = min(u_xlat5.x, 1.0);
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    u_xlat4 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlat8.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati10].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati10].xy + u_xlat8.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendMul2" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					float u_xlat14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat14 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat2.xyz = vec3(u_xlat14) * u_xlat2.xyz;
					    u_xlat14 = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat3.xyz = vec3(u_xlat14) * in_NORMAL0.xyz;
					    u_xlat2.x = dot(u_xlat3.xyz, u_xlat2.xyz);
					    u_xlat2.x = log2(abs(u_xlat2.x));
					    u_xlat2.x = u_xlat2.x * _FresnelStr;
					    u_xlat2.x = exp2(u_xlat2.x);
					    u_xlat2.x = u_xlat2.x + u_xlat2.x;
					    vs_TEXCOORD4 = min(u_xlat2.x, 1.0);
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat4 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_3_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati1;
					vec4 u_xlat2;
					int u_xlati3;
					float u_xlat4;
					float u_xlat5;
					vec3 u_xlat6;
					vec3 u_xlat8;
					vec2 u_xlat10;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat6.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat6.x = inversesqrt(u_xlat6.x);
					    u_xlat6.xyz = u_xlat6.xxx * in_NORMAL0.xyz;
					    u_xlati3 = unity_StereoEyeIndex;
					    u_xlat8.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].yyy;
					    u_xlat8.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].xxx + u_xlat8.xyz;
					    u_xlat8.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].zzz + u_xlat8.xyz;
					    u_xlat8.xyz = u_xlat8.xyz + unity_WorldToObject[3].xyz;
					    u_xlat8.xyz = u_xlat8.xyz + (-in_POSITION0.xyz);
					    u_xlat4 = dot(u_xlat8.xyz, u_xlat8.xyz);
					    u_xlat4 = inversesqrt(u_xlat4);
					    u_xlat8.xyz = u_xlat8.xyz * vec3(u_xlat4);
					    u_xlat6.x = dot(u_xlat6.xyz, u_xlat8.xyz);
					    u_xlat6.x = log2(abs(u_xlat6.x));
					    u_xlat6.x = u_xlat6.x * _FresnelStr;
					    u_xlat6.x = exp2(u_xlat6.x);
					    u_xlat6.x = u_xlat6.x + u_xlat6.x;
					    vs_TEXCOORD4 = min(u_xlat6.x, 1.0);
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat5 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat5;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlat10.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati3].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati3].xy + u_xlat10.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendMul2" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					float u_xlat14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat14 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat2.xyz = vec3(u_xlat14) * u_xlat2.xyz;
					    u_xlat14 = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat3.xyz = vec3(u_xlat14) * in_NORMAL0.xyz;
					    u_xlat2.x = dot(u_xlat3.xyz, u_xlat2.xyz);
					    u_xlat2.x = log2(abs(u_xlat2.x));
					    u_xlat2.x = u_xlat2.x * _FresnelStr;
					    u_xlat2.x = exp2(u_xlat2.x);
					    u_xlat2.x = u_xlat2.x + u_xlat2.x;
					    vs_TEXCOORD4 = min(u_xlat2.x, 1.0);
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat4 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_3_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati1;
					vec4 u_xlat2;
					int u_xlati3;
					float u_xlat4;
					float u_xlat5;
					vec3 u_xlat6;
					vec3 u_xlat8;
					vec2 u_xlat10;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat6.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat6.x = inversesqrt(u_xlat6.x);
					    u_xlat6.xyz = u_xlat6.xxx * in_NORMAL0.xyz;
					    u_xlati3 = unity_StereoEyeIndex;
					    u_xlat8.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].yyy;
					    u_xlat8.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].xxx + u_xlat8.xyz;
					    u_xlat8.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].zzz + u_xlat8.xyz;
					    u_xlat8.xyz = u_xlat8.xyz + unity_WorldToObject[3].xyz;
					    u_xlat8.xyz = u_xlat8.xyz + (-in_POSITION0.xyz);
					    u_xlat4 = dot(u_xlat8.xyz, u_xlat8.xyz);
					    u_xlat4 = inversesqrt(u_xlat4);
					    u_xlat8.xyz = u_xlat8.xyz * vec3(u_xlat4);
					    u_xlat6.x = dot(u_xlat6.xyz, u_xlat8.xyz);
					    u_xlat6.x = log2(abs(u_xlat6.x));
					    u_xlat6.x = u_xlat6.x * _FresnelStr;
					    u_xlat6.x = exp2(u_xlat6.x);
					    u_xlat6.x = u_xlat6.x + u_xlat6.x;
					    vs_TEXCOORD4 = min(u_xlat6.x, 1.0);
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat5 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat5;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlat10.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati3].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati3].xy + u_xlat10.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendMul2" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					float u_xlat14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat14 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat2.xyz = vec3(u_xlat14) * u_xlat2.xyz;
					    u_xlat14 = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat3.xyz = vec3(u_xlat14) * in_NORMAL0.xyz;
					    u_xlat2.x = dot(u_xlat3.xyz, u_xlat2.xyz);
					    u_xlat2.x = log2(abs(u_xlat2.x));
					    u_xlat2.x = u_xlat2.x * _FresnelStr;
					    u_xlat2.x = exp2(u_xlat2.x);
					    u_xlat2.x = u_xlat2.x + u_xlat2.x;
					    vs_TEXCOORD4 = min(u_xlat2.x, 1.0);
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat4 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_3_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati1;
					vec4 u_xlat2;
					int u_xlati3;
					float u_xlat4;
					float u_xlat5;
					vec3 u_xlat6;
					vec3 u_xlat8;
					vec2 u_xlat10;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat6.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat6.x = inversesqrt(u_xlat6.x);
					    u_xlat6.xyz = u_xlat6.xxx * in_NORMAL0.xyz;
					    u_xlati3 = unity_StereoEyeIndex;
					    u_xlat8.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].yyy;
					    u_xlat8.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].xxx + u_xlat8.xyz;
					    u_xlat8.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].zzz + u_xlat8.xyz;
					    u_xlat8.xyz = u_xlat8.xyz + unity_WorldToObject[3].xyz;
					    u_xlat8.xyz = u_xlat8.xyz + (-in_POSITION0.xyz);
					    u_xlat4 = dot(u_xlat8.xyz, u_xlat8.xyz);
					    u_xlat4 = inversesqrt(u_xlat4);
					    u_xlat8.xyz = u_xlat8.xyz * vec3(u_xlat4);
					    u_xlat6.x = dot(u_xlat6.xyz, u_xlat8.xyz);
					    u_xlat6.x = log2(abs(u_xlat6.x));
					    u_xlat6.x = u_xlat6.x * _FresnelStr;
					    u_xlat6.x = exp2(u_xlat6.x);
					    u_xlat6.x = u_xlat6.x + u_xlat6.x;
					    vs_TEXCOORD4 = min(u_xlat6.x, 1.0);
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat5 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat5;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlat10.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati3].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati3].xy + u_xlat10.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendMul2" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					float u_xlat14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat14 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat2.xyz = vec3(u_xlat14) * u_xlat2.xyz;
					    u_xlat14 = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat3.xyz = vec3(u_xlat14) * in_NORMAL0.xyz;
					    u_xlat2.x = dot(u_xlat3.xyz, u_xlat2.xyz);
					    u_xlat2.x = log2(abs(u_xlat2.x));
					    u_xlat2.x = u_xlat2.x * _FresnelStr;
					    u_xlat2.x = exp2(u_xlat2.x);
					    u_xlat2.x = u_xlat2.x + u_xlat2.x;
					    vs_TEXCOORD4 = min(u_xlat2.x, 1.0);
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat4 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_3_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati1;
					vec4 u_xlat2;
					int u_xlati3;
					float u_xlat4;
					float u_xlat5;
					vec3 u_xlat6;
					vec3 u_xlat8;
					vec2 u_xlat10;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat6.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat6.x = inversesqrt(u_xlat6.x);
					    u_xlat6.xyz = u_xlat6.xxx * in_NORMAL0.xyz;
					    u_xlati3 = unity_StereoEyeIndex;
					    u_xlat8.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].yyy;
					    u_xlat8.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].xxx + u_xlat8.xyz;
					    u_xlat8.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].zzz + u_xlat8.xyz;
					    u_xlat8.xyz = u_xlat8.xyz + unity_WorldToObject[3].xyz;
					    u_xlat8.xyz = u_xlat8.xyz + (-in_POSITION0.xyz);
					    u_xlat4 = dot(u_xlat8.xyz, u_xlat8.xyz);
					    u_xlat4 = inversesqrt(u_xlat4);
					    u_xlat8.xyz = u_xlat8.xyz * vec3(u_xlat4);
					    u_xlat6.x = dot(u_xlat6.xyz, u_xlat8.xyz);
					    u_xlat6.x = log2(abs(u_xlat6.x));
					    u_xlat6.x = u_xlat6.x * _FresnelStr;
					    u_xlat6.x = exp2(u_xlat6.x);
					    u_xlat6.x = u_xlat6.x + u_xlat6.x;
					    vs_TEXCOORD4 = min(u_xlat6.x, 1.0);
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat5 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat5;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlat10.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati3].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati3].xy + u_xlat10.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendMul2" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					float u_xlat14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat14 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat2.xyz = vec3(u_xlat14) * u_xlat2.xyz;
					    u_xlat14 = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat3.xyz = vec3(u_xlat14) * in_NORMAL0.xyz;
					    u_xlat2.x = dot(u_xlat3.xyz, u_xlat2.xyz);
					    u_xlat2.x = log2(abs(u_xlat2.x));
					    u_xlat2.x = u_xlat2.x * _FresnelStr;
					    u_xlat2.x = exp2(u_xlat2.x);
					    u_xlat2.x = u_xlat2.x + u_xlat2.x;
					    vs_TEXCOORD4 = min(u_xlat2.x, 1.0);
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat4 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_3_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati1;
					vec4 u_xlat2;
					int u_xlati3;
					float u_xlat4;
					float u_xlat5;
					vec3 u_xlat6;
					vec3 u_xlat8;
					vec2 u_xlat10;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat6.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat6.x = inversesqrt(u_xlat6.x);
					    u_xlat6.xyz = u_xlat6.xxx * in_NORMAL0.xyz;
					    u_xlati3 = unity_StereoEyeIndex;
					    u_xlat8.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].yyy;
					    u_xlat8.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].xxx + u_xlat8.xyz;
					    u_xlat8.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].zzz + u_xlat8.xyz;
					    u_xlat8.xyz = u_xlat8.xyz + unity_WorldToObject[3].xyz;
					    u_xlat8.xyz = u_xlat8.xyz + (-in_POSITION0.xyz);
					    u_xlat4 = dot(u_xlat8.xyz, u_xlat8.xyz);
					    u_xlat4 = inversesqrt(u_xlat4);
					    u_xlat8.xyz = u_xlat8.xyz * vec3(u_xlat4);
					    u_xlat6.x = dot(u_xlat6.xyz, u_xlat8.xyz);
					    u_xlat6.x = log2(abs(u_xlat6.x));
					    u_xlat6.x = u_xlat6.x * _FresnelStr;
					    u_xlat6.x = exp2(u_xlat6.x);
					    u_xlat6.x = u_xlat6.x + u_xlat6.x;
					    vs_TEXCOORD4 = min(u_xlat6.x, 1.0);
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat5 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat5;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlat10.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati3].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati3].xy + u_xlat10.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendMul2" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_3_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_3_2[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					float u_xlat4;
					float u_xlat14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    gl_Position = u_xlat1;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat14 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat2.xyz = vec3(u_xlat14) * u_xlat2.xyz;
					    u_xlat14 = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat3.xyz = vec3(u_xlat14) * in_NORMAL0.xyz;
					    u_xlat2.x = dot(u_xlat3.xyz, u_xlat2.xyz);
					    u_xlat2.x = log2(abs(u_xlat2.x));
					    u_xlat2.x = u_xlat2.x * _FresnelStr;
					    u_xlat2.x = exp2(u_xlat2.x);
					    u_xlat2.x = u_xlat2.x + u_xlat2.x;
					    vs_TEXCOORD4 = min(u_xlat2.x, 1.0);
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    u_xlat4 = u_xlat0.y * unity_MatrixV[1].z;
					    u_xlat0.x = unity_MatrixV[0].z * u_xlat0.x + u_xlat4;
					    u_xlat0.x = unity_MatrixV[2].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_MatrixV[3].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat1.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD3.xy = u_xlat0.zz + u_xlat0.xw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_3_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_3_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_3_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati1;
					vec4 u_xlat2;
					int u_xlati3;
					float u_xlat4;
					float u_xlat5;
					vec3 u_xlat6;
					vec3 u_xlat8;
					vec2 u_xlat10;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    gl_Position = u_xlat2;
					    vs_COLOR0 = in_COLOR0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat6.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat6.x = inversesqrt(u_xlat6.x);
					    u_xlat6.xyz = u_xlat6.xxx * in_NORMAL0.xyz;
					    u_xlati3 = unity_StereoEyeIndex;
					    u_xlat8.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].yyy;
					    u_xlat8.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].xxx + u_xlat8.xyz;
					    u_xlat8.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati3].zzz + u_xlat8.xyz;
					    u_xlat8.xyz = u_xlat8.xyz + unity_WorldToObject[3].xyz;
					    u_xlat8.xyz = u_xlat8.xyz + (-in_POSITION0.xyz);
					    u_xlat4 = dot(u_xlat8.xyz, u_xlat8.xyz);
					    u_xlat4 = inversesqrt(u_xlat4);
					    u_xlat8.xyz = u_xlat8.xyz * vec3(u_xlat4);
					    u_xlat6.x = dot(u_xlat6.xyz, u_xlat8.xyz);
					    u_xlat6.x = log2(abs(u_xlat6.x));
					    u_xlat6.x = u_xlat6.x * _FresnelStr;
					    u_xlat6.x = exp2(u_xlat6.x);
					    u_xlat6.x = u_xlat6.x + u_xlat6.x;
					    vs_TEXCOORD4 = min(u_xlat6.x, 1.0);
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    u_xlat5 = u_xlat0.y * unity_StereoMatrixV[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].z;
					    u_xlat0.x = unity_StereoMatrixV[u_xlati1 / 4][u_xlati1 % 4].z * u_xlat0.x + u_xlat5;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].z * u_xlat0.z + u_xlat0.x;
					    u_xlat0.x = unity_StereoMatrixV[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4].z * u_xlat0.w + u_xlat0.x;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat0.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat0.w = u_xlat0.x * 0.5;
					    u_xlat0.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat0.xy = u_xlat0.zz + u_xlat0.xw;
					    u_xlat10.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati3].zw;
					    vs_TEXCOORD3.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati3].xy + u_xlat10.xy;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendMul2" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec2 u_xlat4;
					int u_xlati12;
					float u_xlat13;
					bool u_xlatb13;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat0 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat1.x = float(0.0);
					    u_xlat1.y = float(0.0);
					    u_xlat1.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat13 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat13 = u_xlat13 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat13 = float(1.0) / u_xlat13;
					        u_xlat1.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat13) + u_xlat1.xyz;
					    }
					    u_xlat0.xyz = u_xlat1.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendMul2" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec2 u_xlat4;
					int u_xlati12;
					float u_xlat13;
					bool u_xlatb13;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat0 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat1.x = float(0.0);
					    u_xlat1.y = float(0.0);
					    u_xlat1.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat13 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat13 = u_xlat13 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat13 = float(1.0) / u_xlat13;
					        u_xlat1.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat13) + u_xlat1.xyz;
					    }
					    u_xlat0.xyz = u_xlat1.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendMul2" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec2 u_xlat4;
					int u_xlati12;
					float u_xlat13;
					bool u_xlatb13;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat0 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat1.x = float(0.0);
					    u_xlat1.y = float(0.0);
					    u_xlat1.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat13 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat13 = u_xlat13 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat13 = float(1.0) / u_xlat13;
					        u_xlat1.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat13) + u_xlat1.xyz;
					    }
					    u_xlat0.xyz = u_xlat1.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendMul2" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec2 u_xlat4;
					int u_xlati12;
					float u_xlat13;
					bool u_xlatb13;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat0 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat1.x = float(0.0);
					    u_xlat1.y = float(0.0);
					    u_xlat1.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat13 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat13 = u_xlat13 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat13 = float(1.0) / u_xlat13;
					        u_xlat1.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat13) + u_xlat1.xyz;
					    }
					    u_xlat0.xyz = u_xlat1.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendMul2" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec2 u_xlat4;
					int u_xlati12;
					float u_xlat13;
					bool u_xlatb13;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat0 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat1.x = float(0.0);
					    u_xlat1.y = float(0.0);
					    u_xlat1.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat13 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat13 = u_xlat13 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat13 = float(1.0) / u_xlat13;
					        u_xlat1.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat13) + u_xlat1.xyz;
					    }
					    u_xlat0.xyz = u_xlat1.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendMul2" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec2 u_xlat4;
					int u_xlati12;
					float u_xlat13;
					bool u_xlatb13;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat0 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat1.x = float(0.0);
					    u_xlat1.y = float(0.0);
					    u_xlat1.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat13 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat13 = u_xlat13 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat13 = float(1.0) / u_xlat13;
					        u_xlat1.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat13) + u_xlat1.xyz;
					    }
					    u_xlat0.xyz = u_xlat1.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendMul2" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec2 u_xlat4;
					int u_xlati12;
					float u_xlat13;
					bool u_xlatb13;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat0 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat1.x = float(0.0);
					    u_xlat1.y = float(0.0);
					    u_xlat1.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat13 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat13 = u_xlat13 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat13 = float(1.0) / u_xlat13;
					        u_xlat1.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat13) + u_xlat1.xyz;
					    }
					    u_xlat0.xyz = u_xlat1.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendMul2" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec2 u_xlat4;
					int u_xlati12;
					float u_xlat13;
					bool u_xlatb13;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat0 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat1.x = float(0.0);
					    u_xlat1.y = float(0.0);
					    u_xlat1.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat13 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat13 = u_xlat13 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat13 = float(1.0) / u_xlat13;
					        u_xlat1.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat13) + u_xlat1.xyz;
					    }
					    u_xlat0.xyz = u_xlat1.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendMul2" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec2 u_xlat4;
					int u_xlati12;
					float u_xlat13;
					bool u_xlatb13;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat0 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat1.x = float(0.0);
					    u_xlat1.y = float(0.0);
					    u_xlat1.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat13 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat13 = u_xlat13 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat13 = float(1.0) / u_xlat13;
					        u_xlat1.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat13) + u_xlat1.xyz;
					    }
					    u_xlat0.xyz = u_xlat1.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendMul2" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec2 u_xlat4;
					int u_xlati12;
					float u_xlat13;
					bool u_xlatb13;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat0 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat1.x = float(0.0);
					    u_xlat1.y = float(0.0);
					    u_xlat1.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat13 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat13 = u_xlat13 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat13 = float(1.0) / u_xlat13;
					        u_xlat1.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat13) + u_xlat1.xyz;
					    }
					    u_xlat0.xyz = u_xlat1.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendMul2" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec2 u_xlat4;
					int u_xlati12;
					float u_xlat13;
					bool u_xlatb13;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat0 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat1.x = float(0.0);
					    u_xlat1.y = float(0.0);
					    u_xlat1.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat13 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat13 = u_xlat13 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat13 = float(1.0) / u_xlat13;
					        u_xlat1.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat13) + u_xlat1.xyz;
					    }
					    u_xlat0.xyz = u_xlat1.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendMul2" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec2 u_xlat4;
					int u_xlati12;
					float u_xlat13;
					bool u_xlatb13;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat0 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat1.x = float(0.0);
					    u_xlat1.y = float(0.0);
					    u_xlat1.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat13 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat13 = u_xlat13 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat13 = float(1.0) / u_xlat13;
					        u_xlat1.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat13) + u_xlat1.xyz;
					    }
					    u_xlat0.xyz = u_xlat1.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendMul2" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec2 u_xlat4;
					int u_xlati12;
					float u_xlat13;
					bool u_xlatb13;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat0 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat1.x = float(0.0);
					    u_xlat1.y = float(0.0);
					    u_xlat1.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat13 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat13 = u_xlat13 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat13 = float(1.0) / u_xlat13;
					        u_xlat1.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat13) + u_xlat1.xyz;
					    }
					    u_xlat0.xyz = u_xlat1.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendMul2" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec2 u_xlat4;
					int u_xlati12;
					float u_xlat13;
					bool u_xlatb13;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat0 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat1.x = float(0.0);
					    u_xlat1.y = float(0.0);
					    u_xlat1.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat13 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat13 = u_xlat13 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat13 = float(1.0) / u_xlat13;
					        u_xlat1.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat13) + u_xlat1.xyz;
					    }
					    u_xlat0.xyz = u_xlat1.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendMul2" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec2 u_xlat4;
					int u_xlati12;
					float u_xlat13;
					bool u_xlatb13;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat0 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat1.x = float(0.0);
					    u_xlat1.y = float(0.0);
					    u_xlat1.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat13 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat13 = u_xlat13 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat13 = float(1.0) / u_xlat13;
					        u_xlat1.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat13) + u_xlat1.xyz;
					    }
					    u_xlat0.xyz = u_xlat1.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendMul2" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec2 u_xlat4;
					int u_xlati12;
					float u_xlat13;
					bool u_xlatb13;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat0 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat1.x = float(0.0);
					    u_xlat1.y = float(0.0);
					    u_xlat1.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat13 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat13 = u_xlat13 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat13 = float(1.0) / u_xlat13;
					        u_xlat1.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat13) + u_xlat1.xyz;
					    }
					    u_xlat0.xyz = u_xlat1.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendMul2" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat12;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat2.xyz = vec3(u_xlat12) * u_xlat2.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat2.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					bool u_xlatb3;
					vec2 u_xlat4;
					float u_xlat12;
					int u_xlati12;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat1 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat1.x);
					    u_xlat0.x = float(0.0);
					    u_xlat0.y = float(0.0);
					    u_xlat0.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat1.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat3.x = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat3.x = u_xlat3.x * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat3.x = float(1.0) / u_xlat3.x;
					        u_xlat0.xyz = unity_LightColor[u_xlati_loop_1].xyz * u_xlat3.xxx + u_xlat0.xyz;
					    }
					    u_xlat0.xyz = u_xlat0.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat1.xyz = vec3(u_xlat12) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendMul2" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat12;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat2.xyz = vec3(u_xlat12) * u_xlat2.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat2.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					bool u_xlatb3;
					vec2 u_xlat4;
					float u_xlat12;
					int u_xlati12;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat1 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat1.x);
					    u_xlat0.x = float(0.0);
					    u_xlat0.y = float(0.0);
					    u_xlat0.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat1.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat3.x = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat3.x = u_xlat3.x * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat3.x = float(1.0) / u_xlat3.x;
					        u_xlat0.xyz = unity_LightColor[u_xlati_loop_1].xyz * u_xlat3.xxx + u_xlat0.xyz;
					    }
					    u_xlat0.xyz = u_xlat0.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat1.xyz = vec3(u_xlat12) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendMul2" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat12;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat2.xyz = vec3(u_xlat12) * u_xlat2.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat2.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat1.z;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					bool u_xlatb3;
					vec2 u_xlat4;
					float u_xlat12;
					int u_xlati12;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat1 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat1.x);
					    u_xlat0.x = float(0.0);
					    u_xlat0.y = float(0.0);
					    u_xlat0.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat1.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat3.x = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat3.x = u_xlat3.x * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat3.x = float(1.0) / u_xlat3.x;
					        u_xlat0.xyz = unity_LightColor[u_xlati_loop_1].xyz * u_xlat3.xxx + u_xlat0.xyz;
					    }
					    u_xlat0.xyz = u_xlat0.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat1.xyz = vec3(u_xlat12) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat2.z;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendMul2" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat12;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat2.xyz = vec3(u_xlat12) * u_xlat2.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat2.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat1.z;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					bool u_xlatb3;
					vec2 u_xlat4;
					float u_xlat12;
					int u_xlati12;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat1 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat1.x);
					    u_xlat0.x = float(0.0);
					    u_xlat0.y = float(0.0);
					    u_xlat0.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat1.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat3.x = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat3.x = u_xlat3.x * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat3.x = float(1.0) / u_xlat3.x;
					        u_xlat0.xyz = unity_LightColor[u_xlati_loop_1].xyz * u_xlat3.xxx + u_xlat0.xyz;
					    }
					    u_xlat0.xyz = u_xlat0.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat1.xyz = vec3(u_xlat12) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat2.z;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendMul2" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat12;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat2.xyz = vec3(u_xlat12) * u_xlat2.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat2.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat1.z;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					bool u_xlatb3;
					vec2 u_xlat4;
					float u_xlat12;
					int u_xlati12;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat1 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat1.x);
					    u_xlat0.x = float(0.0);
					    u_xlat0.y = float(0.0);
					    u_xlat0.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat1.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat3.x = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat3.x = u_xlat3.x * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat3.x = float(1.0) / u_xlat3.x;
					        u_xlat0.xyz = unity_LightColor[u_xlati_loop_1].xyz * u_xlat3.xxx + u_xlat0.xyz;
					    }
					    u_xlat0.xyz = u_xlat0.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat1.xyz = vec3(u_xlat12) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat2.z;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendMul2" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat12;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat2.xyz = vec3(u_xlat12) * u_xlat2.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat2.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat1.z;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					bool u_xlatb3;
					vec2 u_xlat4;
					float u_xlat12;
					int u_xlati12;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat1 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat1.x);
					    u_xlat0.x = float(0.0);
					    u_xlat0.y = float(0.0);
					    u_xlat0.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat1.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat3.x = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat3.x = u_xlat3.x * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat3.x = float(1.0) / u_xlat3.x;
					        u_xlat0.xyz = unity_LightColor[u_xlati_loop_1].xyz * u_xlat3.xxx + u_xlat0.xyz;
					    }
					    u_xlat0.xyz = u_xlat0.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat1.xyz = vec3(u_xlat12) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat2.z;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendMul2" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat12;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat2.xyz = vec3(u_xlat12) * u_xlat2.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat2.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat1.z;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					bool u_xlatb3;
					vec2 u_xlat4;
					float u_xlat12;
					int u_xlati12;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat1 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat1.x);
					    u_xlat0.x = float(0.0);
					    u_xlat0.y = float(0.0);
					    u_xlat0.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat1.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat3.x = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat3.x = u_xlat3.x * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat3.x = float(1.0) / u_xlat3.x;
					        u_xlat0.xyz = unity_LightColor[u_xlati_loop_1].xyz * u_xlat3.xxx + u_xlat0.xyz;
					    }
					    u_xlat0.xyz = u_xlat0.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat1.xyz = vec3(u_xlat12) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat2.z;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendMul2" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat12;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat2.xyz = vec3(u_xlat12) * u_xlat2.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat2.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat1.z;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					bool u_xlatb3;
					vec2 u_xlat4;
					float u_xlat12;
					int u_xlati12;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat1 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat1.x);
					    u_xlat0.x = float(0.0);
					    u_xlat0.y = float(0.0);
					    u_xlat0.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat1.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat3.x = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat3.x = u_xlat3.x * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat3.x = float(1.0) / u_xlat3.x;
					        u_xlat0.xyz = unity_LightColor[u_xlati_loop_1].xyz * u_xlat3.xxx + u_xlat0.xyz;
					    }
					    u_xlat0.xyz = u_xlat0.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat1.xyz = vec3(u_xlat12) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat2.z;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendMul2" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat12;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat2.xyz = vec3(u_xlat12) * u_xlat2.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat2.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					bool u_xlatb3;
					vec2 u_xlat4;
					float u_xlat12;
					int u_xlati12;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat1 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat1.x);
					    u_xlat0.x = float(0.0);
					    u_xlat0.y = float(0.0);
					    u_xlat0.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat1.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat3.x = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat3.x = u_xlat3.x * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat3.x = float(1.0) / u_xlat3.x;
					        u_xlat0.xyz = unity_LightColor[u_xlati_loop_1].xyz * u_xlat3.xxx + u_xlat0.xyz;
					    }
					    u_xlat0.xyz = u_xlat0.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat1.xyz = vec3(u_xlat12) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendMul2" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat12;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat2.xyz = vec3(u_xlat12) * u_xlat2.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat2.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					bool u_xlatb3;
					vec2 u_xlat4;
					float u_xlat12;
					int u_xlati12;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat1 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat1.x);
					    u_xlat0.x = float(0.0);
					    u_xlat0.y = float(0.0);
					    u_xlat0.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat1.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat3.x = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat3.x = u_xlat3.x * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat3.x = float(1.0) / u_xlat3.x;
					        u_xlat0.xyz = unity_LightColor[u_xlati_loop_1].xyz * u_xlat3.xxx + u_xlat0.xyz;
					    }
					    u_xlat0.xyz = u_xlat0.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat1.xyz = vec3(u_xlat12) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendMul2" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat12;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat2.xyz = vec3(u_xlat12) * u_xlat2.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat2.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat1.z;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					bool u_xlatb3;
					vec2 u_xlat4;
					float u_xlat12;
					int u_xlati12;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat1 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat1.x);
					    u_xlat0.x = float(0.0);
					    u_xlat0.y = float(0.0);
					    u_xlat0.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat1.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat3.x = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat3.x = u_xlat3.x * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat3.x = float(1.0) / u_xlat3.x;
					        u_xlat0.xyz = unity_LightColor[u_xlati_loop_1].xyz * u_xlat3.xxx + u_xlat0.xyz;
					    }
					    u_xlat0.xyz = u_xlat0.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat1.xyz = vec3(u_xlat12) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat2.z;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendMul2" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat12;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat2.xyz = vec3(u_xlat12) * u_xlat2.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat2.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat1.z;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					bool u_xlatb3;
					vec2 u_xlat4;
					float u_xlat12;
					int u_xlati12;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat1 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat1.x);
					    u_xlat0.x = float(0.0);
					    u_xlat0.y = float(0.0);
					    u_xlat0.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat1.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat3.x = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat3.x = u_xlat3.x * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat3.x = float(1.0) / u_xlat3.x;
					        u_xlat0.xyz = unity_LightColor[u_xlati_loop_1].xyz * u_xlat3.xxx + u_xlat0.xyz;
					    }
					    u_xlat0.xyz = u_xlat0.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat1.xyz = vec3(u_xlat12) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat2.z;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendMul2" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat12;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat2.xyz = vec3(u_xlat12) * u_xlat2.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat2.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat1.z;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					bool u_xlatb3;
					vec2 u_xlat4;
					float u_xlat12;
					int u_xlati12;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat1 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat1.x);
					    u_xlat0.x = float(0.0);
					    u_xlat0.y = float(0.0);
					    u_xlat0.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat1.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat3.x = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat3.x = u_xlat3.x * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat3.x = float(1.0) / u_xlat3.x;
					        u_xlat0.xyz = unity_LightColor[u_xlati_loop_1].xyz * u_xlat3.xxx + u_xlat0.xyz;
					    }
					    u_xlat0.xyz = u_xlat0.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat1.xyz = vec3(u_xlat12) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat2.z;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendMul2" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat12;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat2.xyz = vec3(u_xlat12) * u_xlat2.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat2.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat1.z;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					bool u_xlatb3;
					vec2 u_xlat4;
					float u_xlat12;
					int u_xlati12;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat1 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat1.x);
					    u_xlat0.x = float(0.0);
					    u_xlat0.y = float(0.0);
					    u_xlat0.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat1.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat3.x = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat3.x = u_xlat3.x * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat3.x = float(1.0) / u_xlat3.x;
					        u_xlat0.xyz = unity_LightColor[u_xlati_loop_1].xyz * u_xlat3.xxx + u_xlat0.xyz;
					    }
					    u_xlat0.xyz = u_xlat0.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat1.xyz = vec3(u_xlat12) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat2.z;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendMul2" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat12;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat2.xyz = vec3(u_xlat12) * u_xlat2.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat2.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat1.z;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					bool u_xlatb3;
					vec2 u_xlat4;
					float u_xlat12;
					int u_xlati12;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat1 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat1.x);
					    u_xlat0.x = float(0.0);
					    u_xlat0.y = float(0.0);
					    u_xlat0.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat1.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat3.x = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat3.x = u_xlat3.x * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat3.x = float(1.0) / u_xlat3.x;
					        u_xlat0.xyz = unity_LightColor[u_xlati_loop_1].xyz * u_xlat3.xxx + u_xlat0.xyz;
					    }
					    u_xlat0.xyz = u_xlat0.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat1.xyz = vec3(u_xlat12) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat2.z;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendMul2" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat12;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat2.xyz = vec3(u_xlat12) * u_xlat2.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat2.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat1.z;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					bool u_xlatb3;
					vec2 u_xlat4;
					float u_xlat12;
					int u_xlati12;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat1 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat1.x);
					    u_xlat0.x = float(0.0);
					    u_xlat0.y = float(0.0);
					    u_xlat0.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat1.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat3.x = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat3.x = u_xlat3.x * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat3.x = float(1.0) / u_xlat3.x;
					        u_xlat0.xyz = unity_LightColor[u_xlati_loop_1].xyz * u_xlat3.xxx + u_xlat0.xyz;
					    }
					    u_xlat0.xyz = u_xlat0.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat1.xyz = vec3(u_xlat12) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat2.z;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendMul2" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec2 u_xlat4;
					int u_xlati12;
					float u_xlat13;
					bool u_xlatb13;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat0 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat1.x = float(0.0);
					    u_xlat1.y = float(0.0);
					    u_xlat1.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat13 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat13 = u_xlat13 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat13 = float(1.0) / u_xlat13;
					        u_xlat1.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat13) + u_xlat1.xyz;
					    }
					    u_xlat0.xyz = u_xlat1.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendMul2" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec2 u_xlat4;
					int u_xlati12;
					float u_xlat13;
					bool u_xlatb13;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat0 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat1.x = float(0.0);
					    u_xlat1.y = float(0.0);
					    u_xlat1.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat13 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat13 = u_xlat13 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat13 = float(1.0) / u_xlat13;
					        u_xlat1.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat13) + u_xlat1.xyz;
					    }
					    u_xlat0.xyz = u_xlat1.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendMul2" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec2 u_xlat4;
					int u_xlati12;
					float u_xlat13;
					bool u_xlatb13;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat0 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat1.x = float(0.0);
					    u_xlat1.y = float(0.0);
					    u_xlat1.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat13 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat13 = u_xlat13 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat13 = float(1.0) / u_xlat13;
					        u_xlat1.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat13) + u_xlat1.xyz;
					    }
					    u_xlat0.xyz = u_xlat1.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendMul2" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec2 u_xlat4;
					int u_xlati12;
					float u_xlat13;
					bool u_xlatb13;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat0 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat1.x = float(0.0);
					    u_xlat1.y = float(0.0);
					    u_xlat1.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat13 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat13 = u_xlat13 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat13 = float(1.0) / u_xlat13;
					        u_xlat1.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat13) + u_xlat1.xyz;
					    }
					    u_xlat0.xyz = u_xlat1.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendMul2" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec2 u_xlat4;
					int u_xlati12;
					float u_xlat13;
					bool u_xlatb13;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat0 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat1.x = float(0.0);
					    u_xlat1.y = float(0.0);
					    u_xlat1.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat13 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat13 = u_xlat13 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat13 = float(1.0) / u_xlat13;
					        u_xlat1.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat13) + u_xlat1.xyz;
					    }
					    u_xlat0.xyz = u_xlat1.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendMul2" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec2 u_xlat4;
					int u_xlati12;
					float u_xlat13;
					bool u_xlatb13;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat0 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat1.x = float(0.0);
					    u_xlat1.y = float(0.0);
					    u_xlat1.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat13 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat13 = u_xlat13 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat13 = float(1.0) / u_xlat13;
					        u_xlat1.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat13) + u_xlat1.xyz;
					    }
					    u_xlat0.xyz = u_xlat1.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendMul2" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec2 u_xlat4;
					int u_xlati12;
					float u_xlat13;
					bool u_xlatb13;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat0 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat1.x = float(0.0);
					    u_xlat1.y = float(0.0);
					    u_xlat1.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat13 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat13 = u_xlat13 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat13 = float(1.0) / u_xlat13;
					        u_xlat1.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat13) + u_xlat1.xyz;
					    }
					    u_xlat0.xyz = u_xlat1.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendMul2" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec2 u_xlat4;
					int u_xlati12;
					float u_xlat13;
					bool u_xlatb13;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat0 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat1.x = float(0.0);
					    u_xlat1.y = float(0.0);
					    u_xlat1.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat13 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat13 = u_xlat13 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat13 = float(1.0) / u_xlat13;
					        u_xlat1.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat13) + u_xlat1.xyz;
					    }
					    u_xlat0.xyz = u_xlat1.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendMul2" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec2 u_xlat4;
					int u_xlati12;
					float u_xlat13;
					bool u_xlatb13;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat0 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat1.x = float(0.0);
					    u_xlat1.y = float(0.0);
					    u_xlat1.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat13 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat13 = u_xlat13 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat13 = float(1.0) / u_xlat13;
					        u_xlat1.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat13) + u_xlat1.xyz;
					    }
					    u_xlat0.xyz = u_xlat1.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendMul2" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec2 u_xlat4;
					int u_xlati12;
					float u_xlat13;
					bool u_xlatb13;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat0 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat1.x = float(0.0);
					    u_xlat1.y = float(0.0);
					    u_xlat1.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat13 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat13 = u_xlat13 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat13 = float(1.0) / u_xlat13;
					        u_xlat1.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat13) + u_xlat1.xyz;
					    }
					    u_xlat0.xyz = u_xlat1.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendMul2" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec2 u_xlat4;
					int u_xlati12;
					float u_xlat13;
					bool u_xlatb13;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat0 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat1.x = float(0.0);
					    u_xlat1.y = float(0.0);
					    u_xlat1.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat13 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat13 = u_xlat13 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat13 = float(1.0) / u_xlat13;
					        u_xlat1.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat13) + u_xlat1.xyz;
					    }
					    u_xlat0.xyz = u_xlat1.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendMul2" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec2 u_xlat4;
					int u_xlati12;
					float u_xlat13;
					bool u_xlatb13;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat0 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat1.x = float(0.0);
					    u_xlat1.y = float(0.0);
					    u_xlat1.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat13 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat13 = u_xlat13 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat13 = float(1.0) / u_xlat13;
					        u_xlat1.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat13) + u_xlat1.xyz;
					    }
					    u_xlat0.xyz = u_xlat1.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendMul2" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec2 u_xlat4;
					int u_xlati12;
					float u_xlat13;
					bool u_xlatb13;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat0 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat1.x = float(0.0);
					    u_xlat1.y = float(0.0);
					    u_xlat1.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat13 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat13 = u_xlat13 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat13 = float(1.0) / u_xlat13;
					        u_xlat1.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat13) + u_xlat1.xyz;
					    }
					    u_xlat0.xyz = u_xlat1.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendMul2" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec2 u_xlat4;
					int u_xlati12;
					float u_xlat13;
					bool u_xlatb13;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat0 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat1.x = float(0.0);
					    u_xlat1.y = float(0.0);
					    u_xlat1.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat13 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat13 = u_xlat13 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat13 = float(1.0) / u_xlat13;
					        u_xlat1.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat13) + u_xlat1.xyz;
					    }
					    u_xlat0.xyz = u_xlat1.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendMul2" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec2 u_xlat4;
					int u_xlati12;
					float u_xlat13;
					bool u_xlatb13;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat0 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat1.x = float(0.0);
					    u_xlat1.y = float(0.0);
					    u_xlat1.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat13 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat13 = u_xlat13 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat13 = float(1.0) / u_xlat13;
					        u_xlat1.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat13) + u_xlat1.xyz;
					    }
					    u_xlat0.xyz = u_xlat1.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendMul2" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec2 u_xlat4;
					int u_xlati12;
					float u_xlat13;
					bool u_xlatb13;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat0 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat1.x = float(0.0);
					    u_xlat1.y = float(0.0);
					    u_xlat1.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat13 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat13 = u_xlat13 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat13 = float(1.0) / u_xlat13;
					        u_xlat1.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat13) + u_xlat1.xyz;
					    }
					    u_xlat0.xyz = u_xlat1.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendMul2" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat12;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat2.xyz = vec3(u_xlat12) * u_xlat2.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat2.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					bool u_xlatb3;
					vec2 u_xlat4;
					float u_xlat12;
					int u_xlati12;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat1 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat1.x);
					    u_xlat0.x = float(0.0);
					    u_xlat0.y = float(0.0);
					    u_xlat0.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat1.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat3.x = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat3.x = u_xlat3.x * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat3.x = float(1.0) / u_xlat3.x;
					        u_xlat0.xyz = unity_LightColor[u_xlati_loop_1].xyz * u_xlat3.xxx + u_xlat0.xyz;
					    }
					    u_xlat0.xyz = u_xlat0.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat1.xyz = vec3(u_xlat12) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendMul2" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat12;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat2.xyz = vec3(u_xlat12) * u_xlat2.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat2.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					bool u_xlatb3;
					vec2 u_xlat4;
					float u_xlat12;
					int u_xlati12;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat1 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat1.x);
					    u_xlat0.x = float(0.0);
					    u_xlat0.y = float(0.0);
					    u_xlat0.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat1.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat3.x = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat3.x = u_xlat3.x * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat3.x = float(1.0) / u_xlat3.x;
					        u_xlat0.xyz = unity_LightColor[u_xlati_loop_1].xyz * u_xlat3.xxx + u_xlat0.xyz;
					    }
					    u_xlat0.xyz = u_xlat0.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat1.xyz = vec3(u_xlat12) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendMul2" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat12;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat2.xyz = vec3(u_xlat12) * u_xlat2.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat2.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat1.z;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					bool u_xlatb3;
					vec2 u_xlat4;
					float u_xlat12;
					int u_xlati12;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat1 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat1.x);
					    u_xlat0.x = float(0.0);
					    u_xlat0.y = float(0.0);
					    u_xlat0.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat1.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat3.x = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat3.x = u_xlat3.x * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat3.x = float(1.0) / u_xlat3.x;
					        u_xlat0.xyz = unity_LightColor[u_xlati_loop_1].xyz * u_xlat3.xxx + u_xlat0.xyz;
					    }
					    u_xlat0.xyz = u_xlat0.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat1.xyz = vec3(u_xlat12) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat2.z;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendMul2" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat12;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat2.xyz = vec3(u_xlat12) * u_xlat2.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat2.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat1.z;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					bool u_xlatb3;
					vec2 u_xlat4;
					float u_xlat12;
					int u_xlati12;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat1 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat1.x);
					    u_xlat0.x = float(0.0);
					    u_xlat0.y = float(0.0);
					    u_xlat0.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat1.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat3.x = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat3.x = u_xlat3.x * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat3.x = float(1.0) / u_xlat3.x;
					        u_xlat0.xyz = unity_LightColor[u_xlati_loop_1].xyz * u_xlat3.xxx + u_xlat0.xyz;
					    }
					    u_xlat0.xyz = u_xlat0.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat1.xyz = vec3(u_xlat12) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat2.z;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendMul2" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat12;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat2.xyz = vec3(u_xlat12) * u_xlat2.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat2.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat1.z;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					bool u_xlatb3;
					vec2 u_xlat4;
					float u_xlat12;
					int u_xlati12;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat1 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat1.x);
					    u_xlat0.x = float(0.0);
					    u_xlat0.y = float(0.0);
					    u_xlat0.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat1.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat3.x = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat3.x = u_xlat3.x * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat3.x = float(1.0) / u_xlat3.x;
					        u_xlat0.xyz = unity_LightColor[u_xlati_loop_1].xyz * u_xlat3.xxx + u_xlat0.xyz;
					    }
					    u_xlat0.xyz = u_xlat0.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat1.xyz = vec3(u_xlat12) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat2.z;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendMul2" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat12;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat2.xyz = vec3(u_xlat12) * u_xlat2.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat2.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat1.z;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					bool u_xlatb3;
					vec2 u_xlat4;
					float u_xlat12;
					int u_xlati12;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat1 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat1.x);
					    u_xlat0.x = float(0.0);
					    u_xlat0.y = float(0.0);
					    u_xlat0.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat1.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat3.x = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat3.x = u_xlat3.x * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat3.x = float(1.0) / u_xlat3.x;
					        u_xlat0.xyz = unity_LightColor[u_xlati_loop_1].xyz * u_xlat3.xxx + u_xlat0.xyz;
					    }
					    u_xlat0.xyz = u_xlat0.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat1.xyz = vec3(u_xlat12) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat2.z;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendMul2" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat12;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat2.xyz = vec3(u_xlat12) * u_xlat2.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat2.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat1.z;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					bool u_xlatb3;
					vec2 u_xlat4;
					float u_xlat12;
					int u_xlati12;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat1 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat1.x);
					    u_xlat0.x = float(0.0);
					    u_xlat0.y = float(0.0);
					    u_xlat0.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat1.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat3.x = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat3.x = u_xlat3.x * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat3.x = float(1.0) / u_xlat3.x;
					        u_xlat0.xyz = unity_LightColor[u_xlati_loop_1].xyz * u_xlat3.xxx + u_xlat0.xyz;
					    }
					    u_xlat0.xyz = u_xlat0.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat1.xyz = vec3(u_xlat12) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat2.z;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendMul2" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat12;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat2.xyz = vec3(u_xlat12) * u_xlat2.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat2.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat1.z;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					bool u_xlatb3;
					vec2 u_xlat4;
					float u_xlat12;
					int u_xlati12;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat1 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat1.x);
					    u_xlat0.x = float(0.0);
					    u_xlat0.y = float(0.0);
					    u_xlat0.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat1.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat3.x = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat3.x = u_xlat3.x * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat3.x = float(1.0) / u_xlat3.x;
					        u_xlat0.xyz = unity_LightColor[u_xlati_loop_1].xyz * u_xlat3.xxx + u_xlat0.xyz;
					    }
					    u_xlat0.xyz = u_xlat0.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat1.xyz = vec3(u_xlat12) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat2.z;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendMul2" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat12;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat2.xyz = vec3(u_xlat12) * u_xlat2.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat2.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					bool u_xlatb3;
					vec2 u_xlat4;
					float u_xlat12;
					int u_xlati12;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat1 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat1.x);
					    u_xlat0.x = float(0.0);
					    u_xlat0.y = float(0.0);
					    u_xlat0.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat1.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat3.x = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat3.x = u_xlat3.x * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat3.x = float(1.0) / u_xlat3.x;
					        u_xlat0.xyz = unity_LightColor[u_xlati_loop_1].xyz * u_xlat3.xxx + u_xlat0.xyz;
					    }
					    u_xlat0.xyz = u_xlat0.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat1.xyz = vec3(u_xlat12) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendMul2" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat12;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat2.xyz = vec3(u_xlat12) * u_xlat2.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat2.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					bool u_xlatb3;
					vec2 u_xlat4;
					float u_xlat12;
					int u_xlati12;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat1 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat1.x);
					    u_xlat0.x = float(0.0);
					    u_xlat0.y = float(0.0);
					    u_xlat0.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat1.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat3.x = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat3.x = u_xlat3.x * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat3.x = float(1.0) / u_xlat3.x;
					        u_xlat0.xyz = unity_LightColor[u_xlati_loop_1].xyz * u_xlat3.xxx + u_xlat0.xyz;
					    }
					    u_xlat0.xyz = u_xlat0.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat1.xyz = vec3(u_xlat12) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendMul2" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat12;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat2.xyz = vec3(u_xlat12) * u_xlat2.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat2.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat1.z;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					bool u_xlatb3;
					vec2 u_xlat4;
					float u_xlat12;
					int u_xlati12;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat1 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat1.x);
					    u_xlat0.x = float(0.0);
					    u_xlat0.y = float(0.0);
					    u_xlat0.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat1.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat3.x = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat3.x = u_xlat3.x * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat3.x = float(1.0) / u_xlat3.x;
					        u_xlat0.xyz = unity_LightColor[u_xlati_loop_1].xyz * u_xlat3.xxx + u_xlat0.xyz;
					    }
					    u_xlat0.xyz = u_xlat0.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat1.xyz = vec3(u_xlat12) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat2.z;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendMul2" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat12;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat2.xyz = vec3(u_xlat12) * u_xlat2.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat2.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat1.z;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					bool u_xlatb3;
					vec2 u_xlat4;
					float u_xlat12;
					int u_xlati12;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat1 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat1.x);
					    u_xlat0.x = float(0.0);
					    u_xlat0.y = float(0.0);
					    u_xlat0.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat1.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat3.x = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat3.x = u_xlat3.x * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat3.x = float(1.0) / u_xlat3.x;
					        u_xlat0.xyz = unity_LightColor[u_xlati_loop_1].xyz * u_xlat3.xxx + u_xlat0.xyz;
					    }
					    u_xlat0.xyz = u_xlat0.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat1.xyz = vec3(u_xlat12) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat2.z;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendMul2" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat12;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat2.xyz = vec3(u_xlat12) * u_xlat2.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat2.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat1.z;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					bool u_xlatb3;
					vec2 u_xlat4;
					float u_xlat12;
					int u_xlati12;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat1 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat1.x);
					    u_xlat0.x = float(0.0);
					    u_xlat0.y = float(0.0);
					    u_xlat0.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat1.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat3.x = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat3.x = u_xlat3.x * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat3.x = float(1.0) / u_xlat3.x;
					        u_xlat0.xyz = unity_LightColor[u_xlati_loop_1].xyz * u_xlat3.xxx + u_xlat0.xyz;
					    }
					    u_xlat0.xyz = u_xlat0.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat1.xyz = vec3(u_xlat12) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat2.z;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendMul2" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat12;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat2.xyz = vec3(u_xlat12) * u_xlat2.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat2.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat1.z;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					bool u_xlatb3;
					vec2 u_xlat4;
					float u_xlat12;
					int u_xlati12;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat1 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat1.x);
					    u_xlat0.x = float(0.0);
					    u_xlat0.y = float(0.0);
					    u_xlat0.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat1.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat3.x = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat3.x = u_xlat3.x * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat3.x = float(1.0) / u_xlat3.x;
					        u_xlat0.xyz = unity_LightColor[u_xlati_loop_1].xyz * u_xlat3.xxx + u_xlat0.xyz;
					    }
					    u_xlat0.xyz = u_xlat0.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat1.xyz = vec3(u_xlat12) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat2.z;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendMul2" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat12;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat2.xyz = vec3(u_xlat12) * u_xlat2.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat2.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat1.z;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					bool u_xlatb3;
					vec2 u_xlat4;
					float u_xlat12;
					int u_xlati12;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat1 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat1.x);
					    u_xlat0.x = float(0.0);
					    u_xlat0.y = float(0.0);
					    u_xlat0.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat1.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat3.x = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat3.x = u_xlat3.x * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat3.x = float(1.0) / u_xlat3.x;
					        u_xlat0.xyz = unity_LightColor[u_xlati_loop_1].xyz * u_xlat3.xxx + u_xlat0.xyz;
					    }
					    u_xlat0.xyz = u_xlat0.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat1.xyz = vec3(u_xlat12) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat2.z;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendMul2" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat12;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat2.xyz = vec3(u_xlat12) * u_xlat2.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat2.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat1.z;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					bool u_xlatb3;
					vec2 u_xlat4;
					float u_xlat12;
					int u_xlati12;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat1 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat1.x);
					    u_xlat0.x = float(0.0);
					    u_xlat0.y = float(0.0);
					    u_xlat0.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat1.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat3.x = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat3.x = u_xlat3.x * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat3.x = float(1.0) / u_xlat3.x;
					        u_xlat0.xyz = unity_LightColor[u_xlati_loop_1].xyz * u_xlat3.xxx + u_xlat0.xyz;
					    }
					    u_xlat0.xyz = u_xlat0.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat1.xyz = vec3(u_xlat12) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat2.z;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendMul2" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec2 u_xlat4;
					int u_xlati12;
					float u_xlat13;
					bool u_xlatb13;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat0 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat1.x = float(0.0);
					    u_xlat1.y = float(0.0);
					    u_xlat1.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat13 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat13 = u_xlat13 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat13 = float(1.0) / u_xlat13;
					        u_xlat1.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat13) + u_xlat1.xyz;
					    }
					    u_xlat0.xyz = u_xlat1.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendMul2" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec2 u_xlat4;
					int u_xlati12;
					float u_xlat13;
					bool u_xlatb13;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat0 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat1.x = float(0.0);
					    u_xlat1.y = float(0.0);
					    u_xlat1.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat13 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat13 = u_xlat13 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat13 = float(1.0) / u_xlat13;
					        u_xlat1.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat13) + u_xlat1.xyz;
					    }
					    u_xlat0.xyz = u_xlat1.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendMul2" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec2 u_xlat4;
					int u_xlati12;
					float u_xlat13;
					bool u_xlatb13;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat0 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat1.x = float(0.0);
					    u_xlat1.y = float(0.0);
					    u_xlat1.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat13 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat13 = u_xlat13 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat13 = float(1.0) / u_xlat13;
					        u_xlat1.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat13) + u_xlat1.xyz;
					    }
					    u_xlat0.xyz = u_xlat1.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendMul2" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec2 u_xlat4;
					int u_xlati12;
					float u_xlat13;
					bool u_xlatb13;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat0 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat1.x = float(0.0);
					    u_xlat1.y = float(0.0);
					    u_xlat1.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat13 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat13 = u_xlat13 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat13 = float(1.0) / u_xlat13;
					        u_xlat1.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat13) + u_xlat1.xyz;
					    }
					    u_xlat0.xyz = u_xlat1.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendMul2" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec2 u_xlat4;
					int u_xlati12;
					float u_xlat13;
					bool u_xlatb13;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat0 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat1.x = float(0.0);
					    u_xlat1.y = float(0.0);
					    u_xlat1.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat13 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat13 = u_xlat13 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat13 = float(1.0) / u_xlat13;
					        u_xlat1.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat13) + u_xlat1.xyz;
					    }
					    u_xlat0.xyz = u_xlat1.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendMul2" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec2 u_xlat4;
					int u_xlati12;
					float u_xlat13;
					bool u_xlatb13;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat0 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat1.x = float(0.0);
					    u_xlat1.y = float(0.0);
					    u_xlat1.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat13 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat13 = u_xlat13 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat13 = float(1.0) / u_xlat13;
					        u_xlat1.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat13) + u_xlat1.xyz;
					    }
					    u_xlat0.xyz = u_xlat1.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendMul2" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec2 u_xlat4;
					int u_xlati12;
					float u_xlat13;
					bool u_xlatb13;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat0 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat1.x = float(0.0);
					    u_xlat1.y = float(0.0);
					    u_xlat1.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat13 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat13 = u_xlat13 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat13 = float(1.0) / u_xlat13;
					        u_xlat1.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat13) + u_xlat1.xyz;
					    }
					    u_xlat0.xyz = u_xlat1.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendMul2" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec2 u_xlat4;
					int u_xlati12;
					float u_xlat13;
					bool u_xlatb13;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat0 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat1.x = float(0.0);
					    u_xlat1.y = float(0.0);
					    u_xlat1.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat13 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat13 = u_xlat13 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat13 = float(1.0) / u_xlat13;
					        u_xlat1.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat13) + u_xlat1.xyz;
					    }
					    u_xlat0.xyz = u_xlat1.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendMul2" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec2 u_xlat4;
					int u_xlati12;
					float u_xlat13;
					bool u_xlatb13;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat0 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat1.x = float(0.0);
					    u_xlat1.y = float(0.0);
					    u_xlat1.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat13 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat13 = u_xlat13 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat13 = float(1.0) / u_xlat13;
					        u_xlat1.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat13) + u_xlat1.xyz;
					    }
					    u_xlat0.xyz = u_xlat1.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendMul2" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec2 u_xlat4;
					int u_xlati12;
					float u_xlat13;
					bool u_xlatb13;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat0 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat1.x = float(0.0);
					    u_xlat1.y = float(0.0);
					    u_xlat1.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat13 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat13 = u_xlat13 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat13 = float(1.0) / u_xlat13;
					        u_xlat1.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat13) + u_xlat1.xyz;
					    }
					    u_xlat0.xyz = u_xlat1.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendMul2" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec2 u_xlat4;
					int u_xlati12;
					float u_xlat13;
					bool u_xlatb13;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat0 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat1.x = float(0.0);
					    u_xlat1.y = float(0.0);
					    u_xlat1.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat13 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat13 = u_xlat13 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat13 = float(1.0) / u_xlat13;
					        u_xlat1.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat13) + u_xlat1.xyz;
					    }
					    u_xlat0.xyz = u_xlat1.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendMul2" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec2 u_xlat4;
					int u_xlati12;
					float u_xlat13;
					bool u_xlatb13;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat0 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat1.x = float(0.0);
					    u_xlat1.y = float(0.0);
					    u_xlat1.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat13 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat13 = u_xlat13 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat13 = float(1.0) / u_xlat13;
					        u_xlat1.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat13) + u_xlat1.xyz;
					    }
					    u_xlat0.xyz = u_xlat1.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendMul2" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec2 u_xlat4;
					int u_xlati12;
					float u_xlat13;
					bool u_xlatb13;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat0 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat1.x = float(0.0);
					    u_xlat1.y = float(0.0);
					    u_xlat1.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat13 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat13 = u_xlat13 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat13 = float(1.0) / u_xlat13;
					        u_xlat1.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat13) + u_xlat1.xyz;
					    }
					    u_xlat0.xyz = u_xlat1.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendMul2" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec2 u_xlat4;
					int u_xlati12;
					float u_xlat13;
					bool u_xlatb13;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat0 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat1.x = float(0.0);
					    u_xlat1.y = float(0.0);
					    u_xlat1.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat13 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat13 = u_xlat13 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat13 = float(1.0) / u_xlat13;
					        u_xlat1.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat13) + u_xlat1.xyz;
					    }
					    u_xlat0.xyz = u_xlat1.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendMul2" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec2 u_xlat4;
					int u_xlati12;
					float u_xlat13;
					bool u_xlatb13;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat0 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat1.x = float(0.0);
					    u_xlat1.y = float(0.0);
					    u_xlat1.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat13 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat13 = u_xlat13 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat13 = float(1.0) / u_xlat13;
					        u_xlat1.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat13) + u_xlat1.xyz;
					    }
					    u_xlat0.xyz = u_xlat1.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendMul2" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec2 u_xlat4;
					int u_xlati12;
					float u_xlat13;
					bool u_xlatb13;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat0 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat1.x = float(0.0);
					    u_xlat1.y = float(0.0);
					    u_xlat1.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat13 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat13 = u_xlat13 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat13 = float(1.0) / u_xlat13;
					        u_xlat1.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat13) + u_xlat1.xyz;
					    }
					    u_xlat0.xyz = u_xlat1.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendMul2" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat12;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat2.xyz = vec3(u_xlat12) * u_xlat2.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat2.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					bool u_xlatb3;
					vec2 u_xlat4;
					float u_xlat12;
					int u_xlati12;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat1 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat1.x);
					    u_xlat0.x = float(0.0);
					    u_xlat0.y = float(0.0);
					    u_xlat0.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat1.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat3.x = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat3.x = u_xlat3.x * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat3.x = float(1.0) / u_xlat3.x;
					        u_xlat0.xyz = unity_LightColor[u_xlati_loop_1].xyz * u_xlat3.xxx + u_xlat0.xyz;
					    }
					    u_xlat0.xyz = u_xlat0.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat1.xyz = vec3(u_xlat12) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendMul2" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat12;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat2.xyz = vec3(u_xlat12) * u_xlat2.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat2.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					bool u_xlatb3;
					vec2 u_xlat4;
					float u_xlat12;
					int u_xlati12;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat1 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat1.x);
					    u_xlat0.x = float(0.0);
					    u_xlat0.y = float(0.0);
					    u_xlat0.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat1.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat3.x = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat3.x = u_xlat3.x * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat3.x = float(1.0) / u_xlat3.x;
					        u_xlat0.xyz = unity_LightColor[u_xlati_loop_1].xyz * u_xlat3.xxx + u_xlat0.xyz;
					    }
					    u_xlat0.xyz = u_xlat0.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat1.xyz = vec3(u_xlat12) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendMul2" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat12;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat2.xyz = vec3(u_xlat12) * u_xlat2.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat2.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat1.z;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					bool u_xlatb3;
					vec2 u_xlat4;
					float u_xlat12;
					int u_xlati12;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat1 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat1.x);
					    u_xlat0.x = float(0.0);
					    u_xlat0.y = float(0.0);
					    u_xlat0.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat1.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat3.x = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat3.x = u_xlat3.x * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat3.x = float(1.0) / u_xlat3.x;
					        u_xlat0.xyz = unity_LightColor[u_xlati_loop_1].xyz * u_xlat3.xxx + u_xlat0.xyz;
					    }
					    u_xlat0.xyz = u_xlat0.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat1.xyz = vec3(u_xlat12) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat2.z;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendMul2" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat12;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat2.xyz = vec3(u_xlat12) * u_xlat2.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat2.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat1.z;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					bool u_xlatb3;
					vec2 u_xlat4;
					float u_xlat12;
					int u_xlati12;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat1 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat1.x);
					    u_xlat0.x = float(0.0);
					    u_xlat0.y = float(0.0);
					    u_xlat0.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat1.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat3.x = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat3.x = u_xlat3.x * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat3.x = float(1.0) / u_xlat3.x;
					        u_xlat0.xyz = unity_LightColor[u_xlati_loop_1].xyz * u_xlat3.xxx + u_xlat0.xyz;
					    }
					    u_xlat0.xyz = u_xlat0.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat1.xyz = vec3(u_xlat12) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat2.z;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendMul2" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat12;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat2.xyz = vec3(u_xlat12) * u_xlat2.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat2.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat1.z;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					bool u_xlatb3;
					vec2 u_xlat4;
					float u_xlat12;
					int u_xlati12;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat1 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat1.x);
					    u_xlat0.x = float(0.0);
					    u_xlat0.y = float(0.0);
					    u_xlat0.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat1.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat3.x = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat3.x = u_xlat3.x * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat3.x = float(1.0) / u_xlat3.x;
					        u_xlat0.xyz = unity_LightColor[u_xlati_loop_1].xyz * u_xlat3.xxx + u_xlat0.xyz;
					    }
					    u_xlat0.xyz = u_xlat0.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat1.xyz = vec3(u_xlat12) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat2.z;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendMul2" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat12;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat2.xyz = vec3(u_xlat12) * u_xlat2.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat2.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat1.z;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					bool u_xlatb3;
					vec2 u_xlat4;
					float u_xlat12;
					int u_xlati12;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat1 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat1.x);
					    u_xlat0.x = float(0.0);
					    u_xlat0.y = float(0.0);
					    u_xlat0.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat1.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat3.x = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat3.x = u_xlat3.x * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat3.x = float(1.0) / u_xlat3.x;
					        u_xlat0.xyz = unity_LightColor[u_xlati_loop_1].xyz * u_xlat3.xxx + u_xlat0.xyz;
					    }
					    u_xlat0.xyz = u_xlat0.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat1.xyz = vec3(u_xlat12) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat2.z;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendMul2" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat12;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat2.xyz = vec3(u_xlat12) * u_xlat2.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat2.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat1.z;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					bool u_xlatb3;
					vec2 u_xlat4;
					float u_xlat12;
					int u_xlati12;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat1 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat1.x);
					    u_xlat0.x = float(0.0);
					    u_xlat0.y = float(0.0);
					    u_xlat0.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat1.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat3.x = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat3.x = u_xlat3.x * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat3.x = float(1.0) / u_xlat3.x;
					        u_xlat0.xyz = unity_LightColor[u_xlati_loop_1].xyz * u_xlat3.xxx + u_xlat0.xyz;
					    }
					    u_xlat0.xyz = u_xlat0.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat1.xyz = vec3(u_xlat12) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat2.z;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendMul2" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat12;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat2.xyz = vec3(u_xlat12) * u_xlat2.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat2.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat1.z;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					bool u_xlatb3;
					vec2 u_xlat4;
					float u_xlat12;
					int u_xlati12;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat1 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat1.x);
					    u_xlat0.x = float(0.0);
					    u_xlat0.y = float(0.0);
					    u_xlat0.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat1.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat3.x = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat3.x = u_xlat3.x * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat3.x = float(1.0) / u_xlat3.x;
					        u_xlat0.xyz = unity_LightColor[u_xlati_loop_1].xyz * u_xlat3.xxx + u_xlat0.xyz;
					    }
					    u_xlat0.xyz = u_xlat0.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat1.xyz = vec3(u_xlat12) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat2.z;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendMul2" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat12;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat2.xyz = vec3(u_xlat12) * u_xlat2.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat2.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					bool u_xlatb3;
					vec2 u_xlat4;
					float u_xlat12;
					int u_xlati12;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat1 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat1.x);
					    u_xlat0.x = float(0.0);
					    u_xlat0.y = float(0.0);
					    u_xlat0.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat1.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat3.x = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat3.x = u_xlat3.x * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat3.x = float(1.0) / u_xlat3.x;
					        u_xlat0.xyz = unity_LightColor[u_xlati_loop_1].xyz * u_xlat3.xxx + u_xlat0.xyz;
					    }
					    u_xlat0.xyz = u_xlat0.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat1.xyz = vec3(u_xlat12) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendMul2" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat12;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat2.xyz = vec3(u_xlat12) * u_xlat2.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat2.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					bool u_xlatb3;
					vec2 u_xlat4;
					float u_xlat12;
					int u_xlati12;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat1 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat1.x);
					    u_xlat0.x = float(0.0);
					    u_xlat0.y = float(0.0);
					    u_xlat0.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat1.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat3.x = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat3.x = u_xlat3.x * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat3.x = float(1.0) / u_xlat3.x;
					        u_xlat0.xyz = unity_LightColor[u_xlati_loop_1].xyz * u_xlat3.xxx + u_xlat0.xyz;
					    }
					    u_xlat0.xyz = u_xlat0.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat1.xyz = vec3(u_xlat12) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendMul2" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat12;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat2.xyz = vec3(u_xlat12) * u_xlat2.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat2.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat1.z;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					bool u_xlatb3;
					vec2 u_xlat4;
					float u_xlat12;
					int u_xlati12;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat1 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat1.x);
					    u_xlat0.x = float(0.0);
					    u_xlat0.y = float(0.0);
					    u_xlat0.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat1.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat3.x = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat3.x = u_xlat3.x * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat3.x = float(1.0) / u_xlat3.x;
					        u_xlat0.xyz = unity_LightColor[u_xlati_loop_1].xyz * u_xlat3.xxx + u_xlat0.xyz;
					    }
					    u_xlat0.xyz = u_xlat0.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat1.xyz = vec3(u_xlat12) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat2.z;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendMul2" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat12;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat2.xyz = vec3(u_xlat12) * u_xlat2.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat2.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat1.z;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					bool u_xlatb3;
					vec2 u_xlat4;
					float u_xlat12;
					int u_xlati12;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat1 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat1.x);
					    u_xlat0.x = float(0.0);
					    u_xlat0.y = float(0.0);
					    u_xlat0.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat1.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat3.x = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat3.x = u_xlat3.x * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat3.x = float(1.0) / u_xlat3.x;
					        u_xlat0.xyz = unity_LightColor[u_xlati_loop_1].xyz * u_xlat3.xxx + u_xlat0.xyz;
					    }
					    u_xlat0.xyz = u_xlat0.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat1.xyz = vec3(u_xlat12) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat2.z;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendMul2" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat12;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat2.xyz = vec3(u_xlat12) * u_xlat2.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat2.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat1.z;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					bool u_xlatb3;
					vec2 u_xlat4;
					float u_xlat12;
					int u_xlati12;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat1 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat1.x);
					    u_xlat0.x = float(0.0);
					    u_xlat0.y = float(0.0);
					    u_xlat0.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat1.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat3.x = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat3.x = u_xlat3.x * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat3.x = float(1.0) / u_xlat3.x;
					        u_xlat0.xyz = unity_LightColor[u_xlati_loop_1].xyz * u_xlat3.xxx + u_xlat0.xyz;
					    }
					    u_xlat0.xyz = u_xlat0.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat1.xyz = vec3(u_xlat12) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat2.z;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendMul2" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat12;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat2.xyz = vec3(u_xlat12) * u_xlat2.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat2.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat1.z;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					bool u_xlatb3;
					vec2 u_xlat4;
					float u_xlat12;
					int u_xlati12;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat1 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat1.x);
					    u_xlat0.x = float(0.0);
					    u_xlat0.y = float(0.0);
					    u_xlat0.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat1.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat3.x = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat3.x = u_xlat3.x * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat3.x = float(1.0) / u_xlat3.x;
					        u_xlat0.xyz = unity_LightColor[u_xlati_loop_1].xyz * u_xlat3.xxx + u_xlat0.xyz;
					    }
					    u_xlat0.xyz = u_xlat0.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat1.xyz = vec3(u_xlat12) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat2.z;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendMul2" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat12;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat2.xyz = vec3(u_xlat12) * u_xlat2.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat2.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat1.z;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					bool u_xlatb3;
					vec2 u_xlat4;
					float u_xlat12;
					int u_xlati12;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat1 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat1.x);
					    u_xlat0.x = float(0.0);
					    u_xlat0.y = float(0.0);
					    u_xlat0.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat1.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat3.x = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat3.x = u_xlat3.x * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat3.x = float(1.0) / u_xlat3.x;
					        u_xlat0.xyz = unity_LightColor[u_xlati_loop_1].xyz * u_xlat3.xxx + u_xlat0.xyz;
					    }
					    u_xlat0.xyz = u_xlat0.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat1.xyz = vec3(u_xlat12) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat2.z;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendMul2" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat12;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat2.xyz = vec3(u_xlat12) * u_xlat2.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat2.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat1.z;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					bool u_xlatb3;
					vec2 u_xlat4;
					float u_xlat12;
					int u_xlati12;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat1 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat1.x);
					    u_xlat0.x = float(0.0);
					    u_xlat0.y = float(0.0);
					    u_xlat0.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat1.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat3.x = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat3.x = u_xlat3.x * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat3.x = float(1.0) / u_xlat3.x;
					        u_xlat0.xyz = unity_LightColor[u_xlati_loop_1].xyz * u_xlat3.xxx + u_xlat0.xyz;
					    }
					    u_xlat0.xyz = u_xlat0.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat1.xyz = vec3(u_xlat12) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat2.z;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendMul2" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec2 u_xlat4;
					int u_xlati12;
					float u_xlat13;
					bool u_xlatb13;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat0 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat1.x = float(0.0);
					    u_xlat1.y = float(0.0);
					    u_xlat1.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat13 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat13 = u_xlat13 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat13 = float(1.0) / u_xlat13;
					        u_xlat1.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat13) + u_xlat1.xyz;
					    }
					    u_xlat0.xyz = u_xlat1.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendMul2" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec2 u_xlat4;
					int u_xlati12;
					float u_xlat13;
					bool u_xlatb13;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat0 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat1.x = float(0.0);
					    u_xlat1.y = float(0.0);
					    u_xlat1.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat13 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat13 = u_xlat13 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat13 = float(1.0) / u_xlat13;
					        u_xlat1.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat13) + u_xlat1.xyz;
					    }
					    u_xlat0.xyz = u_xlat1.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendMul2" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec2 u_xlat4;
					int u_xlati12;
					float u_xlat13;
					bool u_xlatb13;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat0 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat1.x = float(0.0);
					    u_xlat1.y = float(0.0);
					    u_xlat1.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat13 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat13 = u_xlat13 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat13 = float(1.0) / u_xlat13;
					        u_xlat1.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat13) + u_xlat1.xyz;
					    }
					    u_xlat0.xyz = u_xlat1.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendMul2" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec2 u_xlat4;
					int u_xlati12;
					float u_xlat13;
					bool u_xlatb13;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat0 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat1.x = float(0.0);
					    u_xlat1.y = float(0.0);
					    u_xlat1.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat13 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat13 = u_xlat13 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat13 = float(1.0) / u_xlat13;
					        u_xlat1.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat13) + u_xlat1.xyz;
					    }
					    u_xlat0.xyz = u_xlat1.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendMul2" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec2 u_xlat4;
					int u_xlati12;
					float u_xlat13;
					bool u_xlatb13;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat0 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat1.x = float(0.0);
					    u_xlat1.y = float(0.0);
					    u_xlat1.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat13 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat13 = u_xlat13 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat13 = float(1.0) / u_xlat13;
					        u_xlat1.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat13) + u_xlat1.xyz;
					    }
					    u_xlat0.xyz = u_xlat1.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendMul2" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec2 u_xlat4;
					int u_xlati12;
					float u_xlat13;
					bool u_xlatb13;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat0 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat1.x = float(0.0);
					    u_xlat1.y = float(0.0);
					    u_xlat1.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat13 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat13 = u_xlat13 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat13 = float(1.0) / u_xlat13;
					        u_xlat1.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat13) + u_xlat1.xyz;
					    }
					    u_xlat0.xyz = u_xlat1.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendMul2" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec2 u_xlat4;
					int u_xlati12;
					float u_xlat13;
					bool u_xlatb13;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat0 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat1.x = float(0.0);
					    u_xlat1.y = float(0.0);
					    u_xlat1.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat13 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat13 = u_xlat13 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat13 = float(1.0) / u_xlat13;
					        u_xlat1.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat13) + u_xlat1.xyz;
					    }
					    u_xlat0.xyz = u_xlat1.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendMul2" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec2 u_xlat4;
					int u_xlati12;
					float u_xlat13;
					bool u_xlatb13;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat0 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat1.x = float(0.0);
					    u_xlat1.y = float(0.0);
					    u_xlat1.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat13 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat13 = u_xlat13 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat13 = float(1.0) / u_xlat13;
					        u_xlat1.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat13) + u_xlat1.xyz;
					    }
					    u_xlat0.xyz = u_xlat1.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendMul2" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec2 u_xlat4;
					int u_xlati12;
					float u_xlat13;
					bool u_xlatb13;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat0 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat1.x = float(0.0);
					    u_xlat1.y = float(0.0);
					    u_xlat1.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat13 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat13 = u_xlat13 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat13 = float(1.0) / u_xlat13;
					        u_xlat1.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat13) + u_xlat1.xyz;
					    }
					    u_xlat0.xyz = u_xlat1.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendMul2" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec2 u_xlat4;
					int u_xlati12;
					float u_xlat13;
					bool u_xlatb13;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat0 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat1.x = float(0.0);
					    u_xlat1.y = float(0.0);
					    u_xlat1.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat13 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat13 = u_xlat13 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat13 = float(1.0) / u_xlat13;
					        u_xlat1.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat13) + u_xlat1.xyz;
					    }
					    u_xlat0.xyz = u_xlat1.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendMul2" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec2 u_xlat4;
					int u_xlati12;
					float u_xlat13;
					bool u_xlatb13;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat0 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat1.x = float(0.0);
					    u_xlat1.y = float(0.0);
					    u_xlat1.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat13 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat13 = u_xlat13 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat13 = float(1.0) / u_xlat13;
					        u_xlat1.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat13) + u_xlat1.xyz;
					    }
					    u_xlat0.xyz = u_xlat1.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendMul2" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec2 u_xlat4;
					int u_xlati12;
					float u_xlat13;
					bool u_xlatb13;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat0 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat1.x = float(0.0);
					    u_xlat1.y = float(0.0);
					    u_xlat1.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat13 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat13 = u_xlat13 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat13 = float(1.0) / u_xlat13;
					        u_xlat1.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat13) + u_xlat1.xyz;
					    }
					    u_xlat0.xyz = u_xlat1.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendMul2" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec2 u_xlat4;
					int u_xlati12;
					float u_xlat13;
					bool u_xlatb13;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat0 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat1.x = float(0.0);
					    u_xlat1.y = float(0.0);
					    u_xlat1.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat13 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat13 = u_xlat13 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat13 = float(1.0) / u_xlat13;
					        u_xlat1.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat13) + u_xlat1.xyz;
					    }
					    u_xlat0.xyz = u_xlat1.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendMul2" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec2 u_xlat4;
					int u_xlati12;
					float u_xlat13;
					bool u_xlatb13;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat0 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat1.x = float(0.0);
					    u_xlat1.y = float(0.0);
					    u_xlat1.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat13 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat13 = u_xlat13 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat13 = float(1.0) / u_xlat13;
					        u_xlat1.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat13) + u_xlat1.xyz;
					    }
					    u_xlat0.xyz = u_xlat1.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendMul2" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec2 u_xlat4;
					int u_xlati12;
					float u_xlat13;
					bool u_xlatb13;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat0 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat1.x = float(0.0);
					    u_xlat1.y = float(0.0);
					    u_xlat1.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat13 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat13 = u_xlat13 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat13 = float(1.0) / u_xlat13;
					        u_xlat1.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat13) + u_xlat1.xyz;
					    }
					    u_xlat0.xyz = u_xlat1.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendMul2" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec2 u_xlat4;
					int u_xlati12;
					float u_xlat13;
					bool u_xlatb13;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat0 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat1.x = float(0.0);
					    u_xlat1.y = float(0.0);
					    u_xlat1.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat13 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat13 = u_xlat13 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat13 = float(1.0) / u_xlat13;
					        u_xlat1.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat13) + u_xlat1.xyz;
					    }
					    u_xlat0.xyz = u_xlat1.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendMul2" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat12;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat2.xyz = vec3(u_xlat12) * u_xlat2.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat2.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					bool u_xlatb3;
					vec2 u_xlat4;
					float u_xlat12;
					int u_xlati12;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat1 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat1.x);
					    u_xlat0.x = float(0.0);
					    u_xlat0.y = float(0.0);
					    u_xlat0.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat1.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat3.x = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat3.x = u_xlat3.x * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat3.x = float(1.0) / u_xlat3.x;
					        u_xlat0.xyz = unity_LightColor[u_xlati_loop_1].xyz * u_xlat3.xxx + u_xlat0.xyz;
					    }
					    u_xlat0.xyz = u_xlat0.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat1.xyz = vec3(u_xlat12) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendMul2" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat12;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat2.xyz = vec3(u_xlat12) * u_xlat2.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat2.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					bool u_xlatb3;
					vec2 u_xlat4;
					float u_xlat12;
					int u_xlati12;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat1 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat1.x);
					    u_xlat0.x = float(0.0);
					    u_xlat0.y = float(0.0);
					    u_xlat0.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat1.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat3.x = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat3.x = u_xlat3.x * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat3.x = float(1.0) / u_xlat3.x;
					        u_xlat0.xyz = unity_LightColor[u_xlati_loop_1].xyz * u_xlat3.xxx + u_xlat0.xyz;
					    }
					    u_xlat0.xyz = u_xlat0.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat1.xyz = vec3(u_xlat12) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendMul2" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat12;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat2.xyz = vec3(u_xlat12) * u_xlat2.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat2.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat1.z;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					bool u_xlatb3;
					vec2 u_xlat4;
					float u_xlat12;
					int u_xlati12;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat1 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat1.x);
					    u_xlat0.x = float(0.0);
					    u_xlat0.y = float(0.0);
					    u_xlat0.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat1.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat3.x = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat3.x = u_xlat3.x * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat3.x = float(1.0) / u_xlat3.x;
					        u_xlat0.xyz = unity_LightColor[u_xlati_loop_1].xyz * u_xlat3.xxx + u_xlat0.xyz;
					    }
					    u_xlat0.xyz = u_xlat0.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat1.xyz = vec3(u_xlat12) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat2.z;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendMul2" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat12;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat2.xyz = vec3(u_xlat12) * u_xlat2.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat2.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat1.z;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					bool u_xlatb3;
					vec2 u_xlat4;
					float u_xlat12;
					int u_xlati12;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat1 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat1.x);
					    u_xlat0.x = float(0.0);
					    u_xlat0.y = float(0.0);
					    u_xlat0.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat1.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat3.x = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat3.x = u_xlat3.x * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat3.x = float(1.0) / u_xlat3.x;
					        u_xlat0.xyz = unity_LightColor[u_xlati_loop_1].xyz * u_xlat3.xxx + u_xlat0.xyz;
					    }
					    u_xlat0.xyz = u_xlat0.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat1.xyz = vec3(u_xlat12) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat2.z;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendMul2" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat12;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat2.xyz = vec3(u_xlat12) * u_xlat2.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat2.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat1.z;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					bool u_xlatb3;
					vec2 u_xlat4;
					float u_xlat12;
					int u_xlati12;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat1 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat1.x);
					    u_xlat0.x = float(0.0);
					    u_xlat0.y = float(0.0);
					    u_xlat0.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat1.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat3.x = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat3.x = u_xlat3.x * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat3.x = float(1.0) / u_xlat3.x;
					        u_xlat0.xyz = unity_LightColor[u_xlati_loop_1].xyz * u_xlat3.xxx + u_xlat0.xyz;
					    }
					    u_xlat0.xyz = u_xlat0.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat1.xyz = vec3(u_xlat12) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat2.z;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendMul2" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat12;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat2.xyz = vec3(u_xlat12) * u_xlat2.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat2.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat1.z;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					bool u_xlatb3;
					vec2 u_xlat4;
					float u_xlat12;
					int u_xlati12;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat1 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat1.x);
					    u_xlat0.x = float(0.0);
					    u_xlat0.y = float(0.0);
					    u_xlat0.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat1.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat3.x = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat3.x = u_xlat3.x * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat3.x = float(1.0) / u_xlat3.x;
					        u_xlat0.xyz = unity_LightColor[u_xlati_loop_1].xyz * u_xlat3.xxx + u_xlat0.xyz;
					    }
					    u_xlat0.xyz = u_xlat0.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat1.xyz = vec3(u_xlat12) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat2.z;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendMul2" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat12;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat2.xyz = vec3(u_xlat12) * u_xlat2.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat2.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat1.z;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					bool u_xlatb3;
					vec2 u_xlat4;
					float u_xlat12;
					int u_xlati12;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat1 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat1.x);
					    u_xlat0.x = float(0.0);
					    u_xlat0.y = float(0.0);
					    u_xlat0.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat1.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat3.x = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat3.x = u_xlat3.x * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat3.x = float(1.0) / u_xlat3.x;
					        u_xlat0.xyz = unity_LightColor[u_xlati_loop_1].xyz * u_xlat3.xxx + u_xlat0.xyz;
					    }
					    u_xlat0.xyz = u_xlat0.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat1.xyz = vec3(u_xlat12) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat2.z;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendMul2" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat12;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat2.xyz = vec3(u_xlat12) * u_xlat2.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat2.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat1.z;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					bool u_xlatb3;
					vec2 u_xlat4;
					float u_xlat12;
					int u_xlati12;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat1 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat1.x);
					    u_xlat0.x = float(0.0);
					    u_xlat0.y = float(0.0);
					    u_xlat0.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat1.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat3.x = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat3.x = u_xlat3.x * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat3.x = float(1.0) / u_xlat3.x;
					        u_xlat0.xyz = unity_LightColor[u_xlati_loop_1].xyz * u_xlat3.xxx + u_xlat0.xyz;
					    }
					    u_xlat0.xyz = u_xlat0.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat1.xyz = vec3(u_xlat12) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat2.z;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendMul2" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat12;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat2.xyz = vec3(u_xlat12) * u_xlat2.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat2.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					bool u_xlatb3;
					vec2 u_xlat4;
					float u_xlat12;
					int u_xlati12;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat1 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat1.x);
					    u_xlat0.x = float(0.0);
					    u_xlat0.y = float(0.0);
					    u_xlat0.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat1.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat3.x = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat3.x = u_xlat3.x * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat3.x = float(1.0) / u_xlat3.x;
					        u_xlat0.xyz = unity_LightColor[u_xlati_loop_1].xyz * u_xlat3.xxx + u_xlat0.xyz;
					    }
					    u_xlat0.xyz = u_xlat0.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat1.xyz = vec3(u_xlat12) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendMul2" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat12;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat2.xyz = vec3(u_xlat12) * u_xlat2.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat2.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					bool u_xlatb3;
					vec2 u_xlat4;
					float u_xlat12;
					int u_xlati12;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat1 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat1.x);
					    u_xlat0.x = float(0.0);
					    u_xlat0.y = float(0.0);
					    u_xlat0.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat1.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat3.x = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat3.x = u_xlat3.x * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat3.x = float(1.0) / u_xlat3.x;
					        u_xlat0.xyz = unity_LightColor[u_xlati_loop_1].xyz * u_xlat3.xxx + u_xlat0.xyz;
					    }
					    u_xlat0.xyz = u_xlat0.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat1.xyz = vec3(u_xlat12) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendMul2" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat12;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat2.xyz = vec3(u_xlat12) * u_xlat2.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat2.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat1.z;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					bool u_xlatb3;
					vec2 u_xlat4;
					float u_xlat12;
					int u_xlati12;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat1 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat1.x);
					    u_xlat0.x = float(0.0);
					    u_xlat0.y = float(0.0);
					    u_xlat0.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat1.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat3.x = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat3.x = u_xlat3.x * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat3.x = float(1.0) / u_xlat3.x;
					        u_xlat0.xyz = unity_LightColor[u_xlati_loop_1].xyz * u_xlat3.xxx + u_xlat0.xyz;
					    }
					    u_xlat0.xyz = u_xlat0.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat1.xyz = vec3(u_xlat12) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat2.z;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendMul2" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat12;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat2.xyz = vec3(u_xlat12) * u_xlat2.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat2.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat1.z;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					bool u_xlatb3;
					vec2 u_xlat4;
					float u_xlat12;
					int u_xlati12;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat1 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat1.x);
					    u_xlat0.x = float(0.0);
					    u_xlat0.y = float(0.0);
					    u_xlat0.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat1.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat3.x = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat3.x = u_xlat3.x * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat3.x = float(1.0) / u_xlat3.x;
					        u_xlat0.xyz = unity_LightColor[u_xlati_loop_1].xyz * u_xlat3.xxx + u_xlat0.xyz;
					    }
					    u_xlat0.xyz = u_xlat0.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat1.xyz = vec3(u_xlat12) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat2.z;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendMul2" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat12;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat2.xyz = vec3(u_xlat12) * u_xlat2.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat2.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat1.z;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					bool u_xlatb3;
					vec2 u_xlat4;
					float u_xlat12;
					int u_xlati12;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat1 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat1.x);
					    u_xlat0.x = float(0.0);
					    u_xlat0.y = float(0.0);
					    u_xlat0.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat1.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat3.x = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat3.x = u_xlat3.x * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat3.x = float(1.0) / u_xlat3.x;
					        u_xlat0.xyz = unity_LightColor[u_xlati_loop_1].xyz * u_xlat3.xxx + u_xlat0.xyz;
					    }
					    u_xlat0.xyz = u_xlat0.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat1.xyz = vec3(u_xlat12) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat2.z;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendMul2" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat12;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat2.xyz = vec3(u_xlat12) * u_xlat2.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat2.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat1.z;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					bool u_xlatb3;
					vec2 u_xlat4;
					float u_xlat12;
					int u_xlati12;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat1 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat1.x);
					    u_xlat0.x = float(0.0);
					    u_xlat0.y = float(0.0);
					    u_xlat0.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat1.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat3.x = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat3.x = u_xlat3.x * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat3.x = float(1.0) / u_xlat3.x;
					        u_xlat0.xyz = unity_LightColor[u_xlati_loop_1].xyz * u_xlat3.xxx + u_xlat0.xyz;
					    }
					    u_xlat0.xyz = u_xlat0.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat1.xyz = vec3(u_xlat12) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat2.z;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendMul2" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat12;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat2.xyz = vec3(u_xlat12) * u_xlat2.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat2.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat1.z;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					bool u_xlatb3;
					vec2 u_xlat4;
					float u_xlat12;
					int u_xlati12;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat1 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat1.x);
					    u_xlat0.x = float(0.0);
					    u_xlat0.y = float(0.0);
					    u_xlat0.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat1.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat3.x = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat3.x = u_xlat3.x * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat3.x = float(1.0) / u_xlat3.x;
					        u_xlat0.xyz = unity_LightColor[u_xlati_loop_1].xyz * u_xlat3.xxx + u_xlat0.xyz;
					    }
					    u_xlat0.xyz = u_xlat0.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat1.xyz = vec3(u_xlat12) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat2.z;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendMul2" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat12;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat2.xyz = vec3(u_xlat12) * u_xlat2.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat2.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat1.z;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					bool u_xlatb3;
					vec2 u_xlat4;
					float u_xlat12;
					int u_xlati12;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat1 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat1.x);
					    u_xlat0.x = float(0.0);
					    u_xlat0.y = float(0.0);
					    u_xlat0.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat1.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat3.x = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat3.x = u_xlat3.x * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat3.x = float(1.0) / u_xlat3.x;
					        u_xlat0.xyz = unity_LightColor[u_xlati_loop_1].xyz * u_xlat3.xxx + u_xlat0.xyz;
					    }
					    u_xlat0.xyz = u_xlat0.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat1.xyz = vec3(u_xlat12) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat2.z;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendMul2" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec2 u_xlat4;
					int u_xlati12;
					float u_xlat13;
					bool u_xlatb13;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat0 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat1.x = float(0.0);
					    u_xlat1.y = float(0.0);
					    u_xlat1.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat13 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat13 = u_xlat13 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat13 = float(1.0) / u_xlat13;
					        u_xlat1.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat13) + u_xlat1.xyz;
					    }
					    u_xlat0.xyz = u_xlat1.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendMul2" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec2 u_xlat4;
					int u_xlati12;
					float u_xlat13;
					bool u_xlatb13;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat0 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat1.x = float(0.0);
					    u_xlat1.y = float(0.0);
					    u_xlat1.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat13 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat13 = u_xlat13 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat13 = float(1.0) / u_xlat13;
					        u_xlat1.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat13) + u_xlat1.xyz;
					    }
					    u_xlat0.xyz = u_xlat1.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendMul2" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec2 u_xlat4;
					int u_xlati12;
					float u_xlat13;
					bool u_xlatb13;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat0 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat1.x = float(0.0);
					    u_xlat1.y = float(0.0);
					    u_xlat1.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat13 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat13 = u_xlat13 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat13 = float(1.0) / u_xlat13;
					        u_xlat1.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat13) + u_xlat1.xyz;
					    }
					    u_xlat0.xyz = u_xlat1.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendMul2" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec2 u_xlat4;
					int u_xlati12;
					float u_xlat13;
					bool u_xlatb13;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat0 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat1.x = float(0.0);
					    u_xlat1.y = float(0.0);
					    u_xlat1.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat13 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat13 = u_xlat13 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat13 = float(1.0) / u_xlat13;
					        u_xlat1.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat13) + u_xlat1.xyz;
					    }
					    u_xlat0.xyz = u_xlat1.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendMul2" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec2 u_xlat4;
					int u_xlati12;
					float u_xlat13;
					bool u_xlatb13;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat0 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat1.x = float(0.0);
					    u_xlat1.y = float(0.0);
					    u_xlat1.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat13 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat13 = u_xlat13 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat13 = float(1.0) / u_xlat13;
					        u_xlat1.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat13) + u_xlat1.xyz;
					    }
					    u_xlat0.xyz = u_xlat1.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendMul2" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec2 u_xlat4;
					int u_xlati12;
					float u_xlat13;
					bool u_xlatb13;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat0 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat1.x = float(0.0);
					    u_xlat1.y = float(0.0);
					    u_xlat1.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat13 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat13 = u_xlat13 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat13 = float(1.0) / u_xlat13;
					        u_xlat1.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat13) + u_xlat1.xyz;
					    }
					    u_xlat0.xyz = u_xlat1.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendMul2" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec2 u_xlat4;
					int u_xlati12;
					float u_xlat13;
					bool u_xlatb13;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat0 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat1.x = float(0.0);
					    u_xlat1.y = float(0.0);
					    u_xlat1.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat13 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat13 = u_xlat13 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat13 = float(1.0) / u_xlat13;
					        u_xlat1.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat13) + u_xlat1.xyz;
					    }
					    u_xlat0.xyz = u_xlat1.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendMul2" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec2 u_xlat4;
					int u_xlati12;
					float u_xlat13;
					bool u_xlatb13;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat0 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat1.x = float(0.0);
					    u_xlat1.y = float(0.0);
					    u_xlat1.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat13 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat13 = u_xlat13 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat13 = float(1.0) / u_xlat13;
					        u_xlat1.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat13) + u_xlat1.xyz;
					    }
					    u_xlat0.xyz = u_xlat1.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendMul2" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec2 u_xlat4;
					int u_xlati12;
					float u_xlat13;
					bool u_xlatb13;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat0 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat1.x = float(0.0);
					    u_xlat1.y = float(0.0);
					    u_xlat1.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat13 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat13 = u_xlat13 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat13 = float(1.0) / u_xlat13;
					        u_xlat1.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat13) + u_xlat1.xyz;
					    }
					    u_xlat0.xyz = u_xlat1.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendMul2" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec2 u_xlat4;
					int u_xlati12;
					float u_xlat13;
					bool u_xlatb13;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat0 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat1.x = float(0.0);
					    u_xlat1.y = float(0.0);
					    u_xlat1.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat13 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat13 = u_xlat13 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat13 = float(1.0) / u_xlat13;
					        u_xlat1.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat13) + u_xlat1.xyz;
					    }
					    u_xlat0.xyz = u_xlat1.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendMul2" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec2 u_xlat4;
					int u_xlati12;
					float u_xlat13;
					bool u_xlatb13;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat0 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat1.x = float(0.0);
					    u_xlat1.y = float(0.0);
					    u_xlat1.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat13 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat13 = u_xlat13 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat13 = float(1.0) / u_xlat13;
					        u_xlat1.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat13) + u_xlat1.xyz;
					    }
					    u_xlat0.xyz = u_xlat1.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendMul2" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec2 u_xlat4;
					int u_xlati12;
					float u_xlat13;
					bool u_xlatb13;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat0 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat1.x = float(0.0);
					    u_xlat1.y = float(0.0);
					    u_xlat1.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat13 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat13 = u_xlat13 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat13 = float(1.0) / u_xlat13;
					        u_xlat1.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat13) + u_xlat1.xyz;
					    }
					    u_xlat0.xyz = u_xlat1.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendMul2" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec2 u_xlat4;
					int u_xlati12;
					float u_xlat13;
					bool u_xlatb13;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat0 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat1.x = float(0.0);
					    u_xlat1.y = float(0.0);
					    u_xlat1.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat13 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat13 = u_xlat13 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat13 = float(1.0) / u_xlat13;
					        u_xlat1.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat13) + u_xlat1.xyz;
					    }
					    u_xlat0.xyz = u_xlat1.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendMul2" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec2 u_xlat4;
					int u_xlati12;
					float u_xlat13;
					bool u_xlatb13;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat0 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat1.x = float(0.0);
					    u_xlat1.y = float(0.0);
					    u_xlat1.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat13 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat13 = u_xlat13 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat13 = float(1.0) / u_xlat13;
					        u_xlat1.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat13) + u_xlat1.xyz;
					    }
					    u_xlat0.xyz = u_xlat1.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendMul2" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec2 u_xlat4;
					int u_xlati12;
					float u_xlat13;
					bool u_xlatb13;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat0 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat1.x = float(0.0);
					    u_xlat1.y = float(0.0);
					    u_xlat1.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat13 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat13 = u_xlat13 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat13 = float(1.0) / u_xlat13;
					        u_xlat1.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat13) + u_xlat1.xyz;
					    }
					    u_xlat0.xyz = u_xlat1.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendMul2" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec2 u_xlat4;
					int u_xlati12;
					float u_xlat13;
					bool u_xlatb13;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat0 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat1.x = float(0.0);
					    u_xlat1.y = float(0.0);
					    u_xlat1.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat13 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat13 = u_xlat13 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat13 = float(1.0) / u_xlat13;
					        u_xlat1.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat13) + u_xlat1.xyz;
					    }
					    u_xlat0.xyz = u_xlat1.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendMul2" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat12;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat2.xyz = vec3(u_xlat12) * u_xlat2.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat2.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					bool u_xlatb3;
					vec2 u_xlat4;
					float u_xlat12;
					int u_xlati12;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat1 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat1.x);
					    u_xlat0.x = float(0.0);
					    u_xlat0.y = float(0.0);
					    u_xlat0.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat1.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat3.x = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat3.x = u_xlat3.x * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat3.x = float(1.0) / u_xlat3.x;
					        u_xlat0.xyz = unity_LightColor[u_xlati_loop_1].xyz * u_xlat3.xxx + u_xlat0.xyz;
					    }
					    u_xlat0.xyz = u_xlat0.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat1.xyz = vec3(u_xlat12) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendMul2" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat12;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat2.xyz = vec3(u_xlat12) * u_xlat2.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat2.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					bool u_xlatb3;
					vec2 u_xlat4;
					float u_xlat12;
					int u_xlati12;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat1 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat1.x);
					    u_xlat0.x = float(0.0);
					    u_xlat0.y = float(0.0);
					    u_xlat0.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat1.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat3.x = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat3.x = u_xlat3.x * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat3.x = float(1.0) / u_xlat3.x;
					        u_xlat0.xyz = unity_LightColor[u_xlati_loop_1].xyz * u_xlat3.xxx + u_xlat0.xyz;
					    }
					    u_xlat0.xyz = u_xlat0.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat1.xyz = vec3(u_xlat12) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendMul2" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat12;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat2.xyz = vec3(u_xlat12) * u_xlat2.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat2.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat1.z;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					bool u_xlatb3;
					vec2 u_xlat4;
					float u_xlat12;
					int u_xlati12;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat1 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat1.x);
					    u_xlat0.x = float(0.0);
					    u_xlat0.y = float(0.0);
					    u_xlat0.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat1.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat3.x = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat3.x = u_xlat3.x * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat3.x = float(1.0) / u_xlat3.x;
					        u_xlat0.xyz = unity_LightColor[u_xlati_loop_1].xyz * u_xlat3.xxx + u_xlat0.xyz;
					    }
					    u_xlat0.xyz = u_xlat0.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat1.xyz = vec3(u_xlat12) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat2.z;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendMul2" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat12;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat2.xyz = vec3(u_xlat12) * u_xlat2.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat2.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat1.z;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					bool u_xlatb3;
					vec2 u_xlat4;
					float u_xlat12;
					int u_xlati12;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat1 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat1.x);
					    u_xlat0.x = float(0.0);
					    u_xlat0.y = float(0.0);
					    u_xlat0.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat1.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat3.x = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat3.x = u_xlat3.x * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat3.x = float(1.0) / u_xlat3.x;
					        u_xlat0.xyz = unity_LightColor[u_xlati_loop_1].xyz * u_xlat3.xxx + u_xlat0.xyz;
					    }
					    u_xlat0.xyz = u_xlat0.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat1.xyz = vec3(u_xlat12) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat2.z;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendMul2" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat12;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat2.xyz = vec3(u_xlat12) * u_xlat2.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat2.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat1.z;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					bool u_xlatb3;
					vec2 u_xlat4;
					float u_xlat12;
					int u_xlati12;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat1 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat1.x);
					    u_xlat0.x = float(0.0);
					    u_xlat0.y = float(0.0);
					    u_xlat0.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat1.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat3.x = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat3.x = u_xlat3.x * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat3.x = float(1.0) / u_xlat3.x;
					        u_xlat0.xyz = unity_LightColor[u_xlati_loop_1].xyz * u_xlat3.xxx + u_xlat0.xyz;
					    }
					    u_xlat0.xyz = u_xlat0.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat1.xyz = vec3(u_xlat12) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat2.z;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendMul2" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat12;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat2.xyz = vec3(u_xlat12) * u_xlat2.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat2.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat1.z;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					bool u_xlatb3;
					vec2 u_xlat4;
					float u_xlat12;
					int u_xlati12;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat1 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat1.x);
					    u_xlat0.x = float(0.0);
					    u_xlat0.y = float(0.0);
					    u_xlat0.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat1.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat3.x = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat3.x = u_xlat3.x * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat3.x = float(1.0) / u_xlat3.x;
					        u_xlat0.xyz = unity_LightColor[u_xlati_loop_1].xyz * u_xlat3.xxx + u_xlat0.xyz;
					    }
					    u_xlat0.xyz = u_xlat0.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat1.xyz = vec3(u_xlat12) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat2.z;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendMul2" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat12;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat2.xyz = vec3(u_xlat12) * u_xlat2.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat2.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat1.z;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					bool u_xlatb3;
					vec2 u_xlat4;
					float u_xlat12;
					int u_xlati12;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat1 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat1.x);
					    u_xlat0.x = float(0.0);
					    u_xlat0.y = float(0.0);
					    u_xlat0.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat1.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat3.x = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat3.x = u_xlat3.x * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat3.x = float(1.0) / u_xlat3.x;
					        u_xlat0.xyz = unity_LightColor[u_xlati_loop_1].xyz * u_xlat3.xxx + u_xlat0.xyz;
					    }
					    u_xlat0.xyz = u_xlat0.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat1.xyz = vec3(u_xlat12) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat2.z;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendMul2" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat12;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat2.xyz = vec3(u_xlat12) * u_xlat2.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat2.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat1.z;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					bool u_xlatb3;
					vec2 u_xlat4;
					float u_xlat12;
					int u_xlati12;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat1 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat1.x);
					    u_xlat0.x = float(0.0);
					    u_xlat0.y = float(0.0);
					    u_xlat0.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat1.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat3.x = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat3.x = u_xlat3.x * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat3.x = float(1.0) / u_xlat3.x;
					        u_xlat0.xyz = unity_LightColor[u_xlati_loop_1].xyz * u_xlat3.xxx + u_xlat0.xyz;
					    }
					    u_xlat0.xyz = u_xlat0.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat1.xyz = vec3(u_xlat12) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat2.z;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendMul2" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat12;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat2.xyz = vec3(u_xlat12) * u_xlat2.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat2.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					bool u_xlatb3;
					vec2 u_xlat4;
					float u_xlat12;
					int u_xlati12;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat1 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat1.x);
					    u_xlat0.x = float(0.0);
					    u_xlat0.y = float(0.0);
					    u_xlat0.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat1.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat3.x = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat3.x = u_xlat3.x * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat3.x = float(1.0) / u_xlat3.x;
					        u_xlat0.xyz = unity_LightColor[u_xlati_loop_1].xyz * u_xlat3.xxx + u_xlat0.xyz;
					    }
					    u_xlat0.xyz = u_xlat0.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat1.xyz = vec3(u_xlat12) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendMul2" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat12;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat2.xyz = vec3(u_xlat12) * u_xlat2.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat2.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					bool u_xlatb3;
					vec2 u_xlat4;
					float u_xlat12;
					int u_xlati12;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat1 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat1.x);
					    u_xlat0.x = float(0.0);
					    u_xlat0.y = float(0.0);
					    u_xlat0.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat1.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat3.x = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat3.x = u_xlat3.x * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat3.x = float(1.0) / u_xlat3.x;
					        u_xlat0.xyz = unity_LightColor[u_xlati_loop_1].xyz * u_xlat3.xxx + u_xlat0.xyz;
					    }
					    u_xlat0.xyz = u_xlat0.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat1.xyz = vec3(u_xlat12) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendMul2" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat12;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat2.xyz = vec3(u_xlat12) * u_xlat2.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat2.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat1.z;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					bool u_xlatb3;
					vec2 u_xlat4;
					float u_xlat12;
					int u_xlati12;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat1 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat1.x);
					    u_xlat0.x = float(0.0);
					    u_xlat0.y = float(0.0);
					    u_xlat0.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat1.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat3.x = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat3.x = u_xlat3.x * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat3.x = float(1.0) / u_xlat3.x;
					        u_xlat0.xyz = unity_LightColor[u_xlati_loop_1].xyz * u_xlat3.xxx + u_xlat0.xyz;
					    }
					    u_xlat0.xyz = u_xlat0.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat1.xyz = vec3(u_xlat12) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat2.z;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendMul2" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat12;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat2.xyz = vec3(u_xlat12) * u_xlat2.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat2.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat1.z;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					bool u_xlatb3;
					vec2 u_xlat4;
					float u_xlat12;
					int u_xlati12;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat1 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat1.x);
					    u_xlat0.x = float(0.0);
					    u_xlat0.y = float(0.0);
					    u_xlat0.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat1.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat3.x = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat3.x = u_xlat3.x * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat3.x = float(1.0) / u_xlat3.x;
					        u_xlat0.xyz = unity_LightColor[u_xlati_loop_1].xyz * u_xlat3.xxx + u_xlat0.xyz;
					    }
					    u_xlat0.xyz = u_xlat0.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat1.xyz = vec3(u_xlat12) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat2.z;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendMul2" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat12;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat2.xyz = vec3(u_xlat12) * u_xlat2.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat2.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat1.z;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					bool u_xlatb3;
					vec2 u_xlat4;
					float u_xlat12;
					int u_xlati12;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat1 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat1.x);
					    u_xlat0.x = float(0.0);
					    u_xlat0.y = float(0.0);
					    u_xlat0.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat1.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat3.x = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat3.x = u_xlat3.x * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat3.x = float(1.0) / u_xlat3.x;
					        u_xlat0.xyz = unity_LightColor[u_xlati_loop_1].xyz * u_xlat3.xxx + u_xlat0.xyz;
					    }
					    u_xlat0.xyz = u_xlat0.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat1.xyz = vec3(u_xlat12) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat2.z;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendMul2" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat12;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat2.xyz = vec3(u_xlat12) * u_xlat2.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat2.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat1.z;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					bool u_xlatb3;
					vec2 u_xlat4;
					float u_xlat12;
					int u_xlati12;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat1 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat1.x);
					    u_xlat0.x = float(0.0);
					    u_xlat0.y = float(0.0);
					    u_xlat0.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat1.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat3.x = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat3.x = u_xlat3.x * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat3.x = float(1.0) / u_xlat3.x;
					        u_xlat0.xyz = unity_LightColor[u_xlati_loop_1].xyz * u_xlat3.xxx + u_xlat0.xyz;
					    }
					    u_xlat0.xyz = u_xlat0.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat1.xyz = vec3(u_xlat12) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat2.z;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendMul2" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat12;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat2.xyz = vec3(u_xlat12) * u_xlat2.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat2.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat1.z;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					bool u_xlatb3;
					vec2 u_xlat4;
					float u_xlat12;
					int u_xlati12;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat1 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat1.x);
					    u_xlat0.x = float(0.0);
					    u_xlat0.y = float(0.0);
					    u_xlat0.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat1.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat3.x = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat3.x = u_xlat3.x * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat3.x = float(1.0) / u_xlat3.x;
					        u_xlat0.xyz = unity_LightColor[u_xlati_loop_1].xyz * u_xlat3.xxx + u_xlat0.xyz;
					    }
					    u_xlat0.xyz = u_xlat0.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat1.xyz = vec3(u_xlat12) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat2.z;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendMul2" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat12;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat2.xyz = vec3(u_xlat12) * u_xlat2.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat2.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat1.z;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					bool u_xlatb3;
					vec2 u_xlat4;
					float u_xlat12;
					int u_xlati12;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat1 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat1.x);
					    u_xlat0.x = float(0.0);
					    u_xlat0.y = float(0.0);
					    u_xlat0.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat1.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat3.x = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat3.x = u_xlat3.x * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat3.x = float(1.0) / u_xlat3.x;
					        u_xlat0.xyz = unity_LightColor[u_xlati_loop_1].xyz * u_xlat3.xxx + u_xlat0.xyz;
					    }
					    u_xlat0.xyz = u_xlat0.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat1.xyz = vec3(u_xlat12) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat2.z;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendMul2" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec2 u_xlat4;
					int u_xlati12;
					float u_xlat13;
					bool u_xlatb13;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat0 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat1.x = float(0.0);
					    u_xlat1.y = float(0.0);
					    u_xlat1.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat13 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat13 = u_xlat13 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat13 = float(1.0) / u_xlat13;
					        u_xlat1.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat13) + u_xlat1.xyz;
					    }
					    u_xlat0.xyz = u_xlat1.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendMul2" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec2 u_xlat4;
					int u_xlati12;
					float u_xlat13;
					bool u_xlatb13;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat0 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat1.x = float(0.0);
					    u_xlat1.y = float(0.0);
					    u_xlat1.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat13 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat13 = u_xlat13 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat13 = float(1.0) / u_xlat13;
					        u_xlat1.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat13) + u_xlat1.xyz;
					    }
					    u_xlat0.xyz = u_xlat1.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendMul2" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec2 u_xlat4;
					int u_xlati12;
					float u_xlat13;
					bool u_xlatb13;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat0 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat1.x = float(0.0);
					    u_xlat1.y = float(0.0);
					    u_xlat1.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat13 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat13 = u_xlat13 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat13 = float(1.0) / u_xlat13;
					        u_xlat1.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat13) + u_xlat1.xyz;
					    }
					    u_xlat0.xyz = u_xlat1.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendMul2" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec2 u_xlat4;
					int u_xlati12;
					float u_xlat13;
					bool u_xlatb13;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat0 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat1.x = float(0.0);
					    u_xlat1.y = float(0.0);
					    u_xlat1.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat13 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat13 = u_xlat13 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat13 = float(1.0) / u_xlat13;
					        u_xlat1.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat13) + u_xlat1.xyz;
					    }
					    u_xlat0.xyz = u_xlat1.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendMul2" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec2 u_xlat4;
					int u_xlati12;
					float u_xlat13;
					bool u_xlatb13;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat0 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat1.x = float(0.0);
					    u_xlat1.y = float(0.0);
					    u_xlat1.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat13 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat13 = u_xlat13 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat13 = float(1.0) / u_xlat13;
					        u_xlat1.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat13) + u_xlat1.xyz;
					    }
					    u_xlat0.xyz = u_xlat1.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendMul2" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec2 u_xlat4;
					int u_xlati12;
					float u_xlat13;
					bool u_xlatb13;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat0 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat1.x = float(0.0);
					    u_xlat1.y = float(0.0);
					    u_xlat1.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat13 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat13 = u_xlat13 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat13 = float(1.0) / u_xlat13;
					        u_xlat1.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat13) + u_xlat1.xyz;
					    }
					    u_xlat0.xyz = u_xlat1.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendMul2" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec2 u_xlat4;
					int u_xlati12;
					float u_xlat13;
					bool u_xlatb13;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat0 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat1.x = float(0.0);
					    u_xlat1.y = float(0.0);
					    u_xlat1.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat13 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat13 = u_xlat13 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat13 = float(1.0) / u_xlat13;
					        u_xlat1.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat13) + u_xlat1.xyz;
					    }
					    u_xlat0.xyz = u_xlat1.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendMul2" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec2 u_xlat4;
					int u_xlati12;
					float u_xlat13;
					bool u_xlatb13;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat0 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat1.x = float(0.0);
					    u_xlat1.y = float(0.0);
					    u_xlat1.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat13 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat13 = u_xlat13 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat13 = float(1.0) / u_xlat13;
					        u_xlat1.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat13) + u_xlat1.xyz;
					    }
					    u_xlat0.xyz = u_xlat1.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendMul2" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec2 u_xlat4;
					int u_xlati12;
					float u_xlat13;
					bool u_xlatb13;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat0 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat1.x = float(0.0);
					    u_xlat1.y = float(0.0);
					    u_xlat1.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat13 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat13 = u_xlat13 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat13 = float(1.0) / u_xlat13;
					        u_xlat1.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat13) + u_xlat1.xyz;
					    }
					    u_xlat0.xyz = u_xlat1.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendMul2" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec2 u_xlat4;
					int u_xlati12;
					float u_xlat13;
					bool u_xlatb13;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat0 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat1.x = float(0.0);
					    u_xlat1.y = float(0.0);
					    u_xlat1.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat13 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat13 = u_xlat13 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat13 = float(1.0) / u_xlat13;
					        u_xlat1.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat13) + u_xlat1.xyz;
					    }
					    u_xlat0.xyz = u_xlat1.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendMul2" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec2 u_xlat4;
					int u_xlati12;
					float u_xlat13;
					bool u_xlatb13;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat0 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat1.x = float(0.0);
					    u_xlat1.y = float(0.0);
					    u_xlat1.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat13 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat13 = u_xlat13 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat13 = float(1.0) / u_xlat13;
					        u_xlat1.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat13) + u_xlat1.xyz;
					    }
					    u_xlat0.xyz = u_xlat1.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendMul2" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec2 u_xlat4;
					int u_xlati12;
					float u_xlat13;
					bool u_xlatb13;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat0 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat1.x = float(0.0);
					    u_xlat1.y = float(0.0);
					    u_xlat1.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat13 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat13 = u_xlat13 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat13 = float(1.0) / u_xlat13;
					        u_xlat1.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat13) + u_xlat1.xyz;
					    }
					    u_xlat0.xyz = u_xlat1.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendMul2" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec2 u_xlat4;
					int u_xlati12;
					float u_xlat13;
					bool u_xlatb13;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat0 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat1.x = float(0.0);
					    u_xlat1.y = float(0.0);
					    u_xlat1.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat13 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat13 = u_xlat13 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat13 = float(1.0) / u_xlat13;
					        u_xlat1.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat13) + u_xlat1.xyz;
					    }
					    u_xlat0.xyz = u_xlat1.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendMul2" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec2 u_xlat4;
					int u_xlati12;
					float u_xlat13;
					bool u_xlatb13;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat0 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat1.x = float(0.0);
					    u_xlat1.y = float(0.0);
					    u_xlat1.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat13 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat13 = u_xlat13 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat13 = float(1.0) / u_xlat13;
					        u_xlat1.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat13) + u_xlat1.xyz;
					    }
					    u_xlat0.xyz = u_xlat1.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendMul2" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec2 u_xlat4;
					int u_xlati12;
					float u_xlat13;
					bool u_xlatb13;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat0 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat1.x = float(0.0);
					    u_xlat1.y = float(0.0);
					    u_xlat1.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat13 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat13 = u_xlat13 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat13 = float(1.0) / u_xlat13;
					        u_xlat1.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat13) + u_xlat1.xyz;
					    }
					    u_xlat0.xyz = u_xlat1.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendMul2" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec2 u_xlat4;
					int u_xlati12;
					float u_xlat13;
					bool u_xlatb13;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat0 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat1.x = float(0.0);
					    u_xlat1.y = float(0.0);
					    u_xlat1.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat13 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat13 = u_xlat13 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat13 = float(1.0) / u_xlat13;
					        u_xlat1.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat13) + u_xlat1.xyz;
					    }
					    u_xlat0.xyz = u_xlat1.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendMul2" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat12;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat2.xyz = vec3(u_xlat12) * u_xlat2.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat2.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					bool u_xlatb3;
					vec2 u_xlat4;
					float u_xlat12;
					int u_xlati12;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat1 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat1.x);
					    u_xlat0.x = float(0.0);
					    u_xlat0.y = float(0.0);
					    u_xlat0.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat1.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat3.x = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat3.x = u_xlat3.x * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat3.x = float(1.0) / u_xlat3.x;
					        u_xlat0.xyz = unity_LightColor[u_xlati_loop_1].xyz * u_xlat3.xxx + u_xlat0.xyz;
					    }
					    u_xlat0.xyz = u_xlat0.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat1.xyz = vec3(u_xlat12) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendMul2" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat12;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat2.xyz = vec3(u_xlat12) * u_xlat2.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat2.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					bool u_xlatb3;
					vec2 u_xlat4;
					float u_xlat12;
					int u_xlati12;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat1 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat1.x);
					    u_xlat0.x = float(0.0);
					    u_xlat0.y = float(0.0);
					    u_xlat0.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat1.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat3.x = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat3.x = u_xlat3.x * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat3.x = float(1.0) / u_xlat3.x;
					        u_xlat0.xyz = unity_LightColor[u_xlati_loop_1].xyz * u_xlat3.xxx + u_xlat0.xyz;
					    }
					    u_xlat0.xyz = u_xlat0.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat1.xyz = vec3(u_xlat12) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendMul2" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat12;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat2.xyz = vec3(u_xlat12) * u_xlat2.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat2.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat1.z;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					bool u_xlatb3;
					vec2 u_xlat4;
					float u_xlat12;
					int u_xlati12;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat1 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat1.x);
					    u_xlat0.x = float(0.0);
					    u_xlat0.y = float(0.0);
					    u_xlat0.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat1.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat3.x = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat3.x = u_xlat3.x * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat3.x = float(1.0) / u_xlat3.x;
					        u_xlat0.xyz = unity_LightColor[u_xlati_loop_1].xyz * u_xlat3.xxx + u_xlat0.xyz;
					    }
					    u_xlat0.xyz = u_xlat0.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat1.xyz = vec3(u_xlat12) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat2.z;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendMul2" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat12;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat2.xyz = vec3(u_xlat12) * u_xlat2.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat2.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat1.z;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					bool u_xlatb3;
					vec2 u_xlat4;
					float u_xlat12;
					int u_xlati12;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat1 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat1.x);
					    u_xlat0.x = float(0.0);
					    u_xlat0.y = float(0.0);
					    u_xlat0.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat1.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat3.x = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat3.x = u_xlat3.x * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat3.x = float(1.0) / u_xlat3.x;
					        u_xlat0.xyz = unity_LightColor[u_xlati_loop_1].xyz * u_xlat3.xxx + u_xlat0.xyz;
					    }
					    u_xlat0.xyz = u_xlat0.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat1.xyz = vec3(u_xlat12) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat2.z;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendMul2" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat12;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat2.xyz = vec3(u_xlat12) * u_xlat2.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat2.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat1.z;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					bool u_xlatb3;
					vec2 u_xlat4;
					float u_xlat12;
					int u_xlati12;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat1 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat1.x);
					    u_xlat0.x = float(0.0);
					    u_xlat0.y = float(0.0);
					    u_xlat0.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat1.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat3.x = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat3.x = u_xlat3.x * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat3.x = float(1.0) / u_xlat3.x;
					        u_xlat0.xyz = unity_LightColor[u_xlati_loop_1].xyz * u_xlat3.xxx + u_xlat0.xyz;
					    }
					    u_xlat0.xyz = u_xlat0.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat1.xyz = vec3(u_xlat12) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat2.z;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendMul2" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat12;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat2.xyz = vec3(u_xlat12) * u_xlat2.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat2.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat1.z;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					bool u_xlatb3;
					vec2 u_xlat4;
					float u_xlat12;
					int u_xlati12;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat1 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat1.x);
					    u_xlat0.x = float(0.0);
					    u_xlat0.y = float(0.0);
					    u_xlat0.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat1.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat3.x = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat3.x = u_xlat3.x * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat3.x = float(1.0) / u_xlat3.x;
					        u_xlat0.xyz = unity_LightColor[u_xlati_loop_1].xyz * u_xlat3.xxx + u_xlat0.xyz;
					    }
					    u_xlat0.xyz = u_xlat0.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat1.xyz = vec3(u_xlat12) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat2.z;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendMul2" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat12;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat2.xyz = vec3(u_xlat12) * u_xlat2.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat2.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat1.z;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					bool u_xlatb3;
					vec2 u_xlat4;
					float u_xlat12;
					int u_xlati12;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat1 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat1.x);
					    u_xlat0.x = float(0.0);
					    u_xlat0.y = float(0.0);
					    u_xlat0.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat1.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat3.x = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat3.x = u_xlat3.x * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat3.x = float(1.0) / u_xlat3.x;
					        u_xlat0.xyz = unity_LightColor[u_xlati_loop_1].xyz * u_xlat3.xxx + u_xlat0.xyz;
					    }
					    u_xlat0.xyz = u_xlat0.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat1.xyz = vec3(u_xlat12) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat2.z;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendMul2" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat12;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat2.xyz = vec3(u_xlat12) * u_xlat2.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat2.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat1.z;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					bool u_xlatb3;
					vec2 u_xlat4;
					float u_xlat12;
					int u_xlati12;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat1 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat1.x);
					    u_xlat0.x = float(0.0);
					    u_xlat0.y = float(0.0);
					    u_xlat0.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat1.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat3.x = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat3.x = u_xlat3.x * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat3.x = float(1.0) / u_xlat3.x;
					        u_xlat0.xyz = unity_LightColor[u_xlati_loop_1].xyz * u_xlat3.xxx + u_xlat0.xyz;
					    }
					    u_xlat0.xyz = u_xlat0.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat1.xyz = vec3(u_xlat12) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat2.z;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendMul2" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat12;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat2.xyz = vec3(u_xlat12) * u_xlat2.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat2.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					bool u_xlatb3;
					vec2 u_xlat4;
					float u_xlat12;
					int u_xlati12;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat1 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat1.x);
					    u_xlat0.x = float(0.0);
					    u_xlat0.y = float(0.0);
					    u_xlat0.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat1.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat3.x = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat3.x = u_xlat3.x * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat3.x = float(1.0) / u_xlat3.x;
					        u_xlat0.xyz = unity_LightColor[u_xlati_loop_1].xyz * u_xlat3.xxx + u_xlat0.xyz;
					    }
					    u_xlat0.xyz = u_xlat0.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat1.xyz = vec3(u_xlat12) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendMul2" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat12;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat2.xyz = vec3(u_xlat12) * u_xlat2.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat2.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					bool u_xlatb3;
					vec2 u_xlat4;
					float u_xlat12;
					int u_xlati12;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat1 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat1.x);
					    u_xlat0.x = float(0.0);
					    u_xlat0.y = float(0.0);
					    u_xlat0.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat1.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat3.x = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat3.x = u_xlat3.x * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat3.x = float(1.0) / u_xlat3.x;
					        u_xlat0.xyz = unity_LightColor[u_xlati_loop_1].xyz * u_xlat3.xxx + u_xlat0.xyz;
					    }
					    u_xlat0.xyz = u_xlat0.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat1.xyz = vec3(u_xlat12) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendMul2" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat12;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat2.xyz = vec3(u_xlat12) * u_xlat2.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat2.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat1.z;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					bool u_xlatb3;
					vec2 u_xlat4;
					float u_xlat12;
					int u_xlati12;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat1 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat1.x);
					    u_xlat0.x = float(0.0);
					    u_xlat0.y = float(0.0);
					    u_xlat0.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat1.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat3.x = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat3.x = u_xlat3.x * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat3.x = float(1.0) / u_xlat3.x;
					        u_xlat0.xyz = unity_LightColor[u_xlati_loop_1].xyz * u_xlat3.xxx + u_xlat0.xyz;
					    }
					    u_xlat0.xyz = u_xlat0.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat1.xyz = vec3(u_xlat12) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat2.z;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendMul2" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat12;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat2.xyz = vec3(u_xlat12) * u_xlat2.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat2.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat1.z;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					bool u_xlatb3;
					vec2 u_xlat4;
					float u_xlat12;
					int u_xlati12;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat1 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat1.x);
					    u_xlat0.x = float(0.0);
					    u_xlat0.y = float(0.0);
					    u_xlat0.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat1.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat3.x = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat3.x = u_xlat3.x * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat3.x = float(1.0) / u_xlat3.x;
					        u_xlat0.xyz = unity_LightColor[u_xlati_loop_1].xyz * u_xlat3.xxx + u_xlat0.xyz;
					    }
					    u_xlat0.xyz = u_xlat0.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat1.xyz = vec3(u_xlat12) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat2.z;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendMul2" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat12;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat2.xyz = vec3(u_xlat12) * u_xlat2.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat2.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat1.z;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					bool u_xlatb3;
					vec2 u_xlat4;
					float u_xlat12;
					int u_xlati12;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat1 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat1.x);
					    u_xlat0.x = float(0.0);
					    u_xlat0.y = float(0.0);
					    u_xlat0.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat1.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat3.x = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat3.x = u_xlat3.x * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat3.x = float(1.0) / u_xlat3.x;
					        u_xlat0.xyz = unity_LightColor[u_xlati_loop_1].xyz * u_xlat3.xxx + u_xlat0.xyz;
					    }
					    u_xlat0.xyz = u_xlat0.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat1.xyz = vec3(u_xlat12) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat2.z;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendMul2" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat12;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat2.xyz = vec3(u_xlat12) * u_xlat2.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat2.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat1.z;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					bool u_xlatb3;
					vec2 u_xlat4;
					float u_xlat12;
					int u_xlati12;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat1 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat1.x);
					    u_xlat0.x = float(0.0);
					    u_xlat0.y = float(0.0);
					    u_xlat0.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat1.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat3.x = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat3.x = u_xlat3.x * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat3.x = float(1.0) / u_xlat3.x;
					        u_xlat0.xyz = unity_LightColor[u_xlati_loop_1].xyz * u_xlat3.xxx + u_xlat0.xyz;
					    }
					    u_xlat0.xyz = u_xlat0.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat1.xyz = vec3(u_xlat12) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat2.z;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendMul2" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat12;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat2.xyz = vec3(u_xlat12) * u_xlat2.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat2.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat1.z;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					bool u_xlatb3;
					vec2 u_xlat4;
					float u_xlat12;
					int u_xlati12;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat1 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat1.x);
					    u_xlat0.x = float(0.0);
					    u_xlat0.y = float(0.0);
					    u_xlat0.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat1.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat3.x = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat3.x = u_xlat3.x * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat3.x = float(1.0) / u_xlat3.x;
					        u_xlat0.xyz = unity_LightColor[u_xlati_loop_1].xyz * u_xlat3.xxx + u_xlat0.xyz;
					    }
					    u_xlat0.xyz = u_xlat0.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat1.xyz = vec3(u_xlat12) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat2.z;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendMul2" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat12;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat2.xyz = vec3(u_xlat12) * u_xlat2.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat2.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat1.z;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					bool u_xlatb3;
					vec2 u_xlat4;
					float u_xlat12;
					int u_xlati12;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat1 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat1.x);
					    u_xlat0.x = float(0.0);
					    u_xlat0.y = float(0.0);
					    u_xlat0.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat1.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat3.x = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat3.x = u_xlat3.x * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat3.x = float(1.0) / u_xlat3.x;
					        u_xlat0.xyz = unity_LightColor[u_xlati_loop_1].xyz * u_xlat3.xxx + u_xlat0.xyz;
					    }
					    u_xlat0.xyz = u_xlat0.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat1.xyz = vec3(u_xlat12) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat2.z;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendMul2" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec2 u_xlat4;
					int u_xlati12;
					float u_xlat13;
					bool u_xlatb13;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat0 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat1.x = float(0.0);
					    u_xlat1.y = float(0.0);
					    u_xlat1.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat13 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat13 = u_xlat13 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat13 = float(1.0) / u_xlat13;
					        u_xlat1.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat13) + u_xlat1.xyz;
					    }
					    u_xlat0.xyz = u_xlat1.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendMul2" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec2 u_xlat4;
					int u_xlati12;
					float u_xlat13;
					bool u_xlatb13;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat0 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat1.x = float(0.0);
					    u_xlat1.y = float(0.0);
					    u_xlat1.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat13 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat13 = u_xlat13 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat13 = float(1.0) / u_xlat13;
					        u_xlat1.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat13) + u_xlat1.xyz;
					    }
					    u_xlat0.xyz = u_xlat1.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendMul2" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec2 u_xlat4;
					int u_xlati12;
					float u_xlat13;
					bool u_xlatb13;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat0 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat1.x = float(0.0);
					    u_xlat1.y = float(0.0);
					    u_xlat1.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat13 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat13 = u_xlat13 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat13 = float(1.0) / u_xlat13;
					        u_xlat1.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat13) + u_xlat1.xyz;
					    }
					    u_xlat0.xyz = u_xlat1.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendMul2" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec2 u_xlat4;
					int u_xlati12;
					float u_xlat13;
					bool u_xlatb13;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat0 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat1.x = float(0.0);
					    u_xlat1.y = float(0.0);
					    u_xlat1.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat13 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat13 = u_xlat13 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat13 = float(1.0) / u_xlat13;
					        u_xlat1.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat13) + u_xlat1.xyz;
					    }
					    u_xlat0.xyz = u_xlat1.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendMul2" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec2 u_xlat4;
					int u_xlati12;
					float u_xlat13;
					bool u_xlatb13;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat0 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat1.x = float(0.0);
					    u_xlat1.y = float(0.0);
					    u_xlat1.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat13 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat13 = u_xlat13 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat13 = float(1.0) / u_xlat13;
					        u_xlat1.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat13) + u_xlat1.xyz;
					    }
					    u_xlat0.xyz = u_xlat1.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendMul2" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec2 u_xlat4;
					int u_xlati12;
					float u_xlat13;
					bool u_xlatb13;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat0 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat1.x = float(0.0);
					    u_xlat1.y = float(0.0);
					    u_xlat1.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat13 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat13 = u_xlat13 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat13 = float(1.0) / u_xlat13;
					        u_xlat1.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat13) + u_xlat1.xyz;
					    }
					    u_xlat0.xyz = u_xlat1.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendMul2" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec2 u_xlat4;
					int u_xlati12;
					float u_xlat13;
					bool u_xlatb13;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat0 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat1.x = float(0.0);
					    u_xlat1.y = float(0.0);
					    u_xlat1.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat13 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat13 = u_xlat13 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat13 = float(1.0) / u_xlat13;
					        u_xlat1.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat13) + u_xlat1.xyz;
					    }
					    u_xlat0.xyz = u_xlat1.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendMul2" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec2 u_xlat4;
					int u_xlati12;
					float u_xlat13;
					bool u_xlatb13;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat0 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat1.x = float(0.0);
					    u_xlat1.y = float(0.0);
					    u_xlat1.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat13 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat13 = u_xlat13 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat13 = float(1.0) / u_xlat13;
					        u_xlat1.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat13) + u_xlat1.xyz;
					    }
					    u_xlat0.xyz = u_xlat1.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendMul2" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec2 u_xlat4;
					int u_xlati12;
					float u_xlat13;
					bool u_xlatb13;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat0 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat1.x = float(0.0);
					    u_xlat1.y = float(0.0);
					    u_xlat1.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat13 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat13 = u_xlat13 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat13 = float(1.0) / u_xlat13;
					        u_xlat1.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat13) + u_xlat1.xyz;
					    }
					    u_xlat0.xyz = u_xlat1.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendMul2" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec2 u_xlat4;
					int u_xlati12;
					float u_xlat13;
					bool u_xlatb13;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat0 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat1.x = float(0.0);
					    u_xlat1.y = float(0.0);
					    u_xlat1.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat13 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat13 = u_xlat13 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat13 = float(1.0) / u_xlat13;
					        u_xlat1.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat13) + u_xlat1.xyz;
					    }
					    u_xlat0.xyz = u_xlat1.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendMul2" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec2 u_xlat4;
					int u_xlati12;
					float u_xlat13;
					bool u_xlatb13;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat0 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat1.x = float(0.0);
					    u_xlat1.y = float(0.0);
					    u_xlat1.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat13 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat13 = u_xlat13 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat13 = float(1.0) / u_xlat13;
					        u_xlat1.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat13) + u_xlat1.xyz;
					    }
					    u_xlat0.xyz = u_xlat1.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendMul2" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec2 u_xlat4;
					int u_xlati12;
					float u_xlat13;
					bool u_xlatb13;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat0 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat1.x = float(0.0);
					    u_xlat1.y = float(0.0);
					    u_xlat1.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat13 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat13 = u_xlat13 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat13 = float(1.0) / u_xlat13;
					        u_xlat1.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat13) + u_xlat1.xyz;
					    }
					    u_xlat0.xyz = u_xlat1.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendMul2" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec2 u_xlat4;
					int u_xlati12;
					float u_xlat13;
					bool u_xlatb13;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat0 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat1.x = float(0.0);
					    u_xlat1.y = float(0.0);
					    u_xlat1.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat13 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat13 = u_xlat13 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat13 = float(1.0) / u_xlat13;
					        u_xlat1.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat13) + u_xlat1.xyz;
					    }
					    u_xlat0.xyz = u_xlat1.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendMul2" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec2 u_xlat4;
					int u_xlati12;
					float u_xlat13;
					bool u_xlatb13;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat0 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat1.x = float(0.0);
					    u_xlat1.y = float(0.0);
					    u_xlat1.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat13 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat13 = u_xlat13 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat13 = float(1.0) / u_xlat13;
					        u_xlat1.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat13) + u_xlat1.xyz;
					    }
					    u_xlat0.xyz = u_xlat1.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendMul2" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec2 u_xlat4;
					int u_xlati12;
					float u_xlat13;
					bool u_xlatb13;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat0 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat1.x = float(0.0);
					    u_xlat1.y = float(0.0);
					    u_xlat1.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat13 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat13 = u_xlat13 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat13 = float(1.0) / u_xlat13;
					        u_xlat1.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat13) + u_xlat1.xyz;
					    }
					    u_xlat0.xyz = u_xlat1.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendMul2" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec2 u_xlat4;
					int u_xlati12;
					float u_xlat13;
					bool u_xlatb13;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat0 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat1.x = float(0.0);
					    u_xlat1.y = float(0.0);
					    u_xlat1.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat13 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat13 = u_xlat13 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat13 = float(1.0) / u_xlat13;
					        u_xlat1.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat13) + u_xlat1.xyz;
					    }
					    u_xlat0.xyz = u_xlat1.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendMul2" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat12;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat2.xyz = vec3(u_xlat12) * u_xlat2.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat2.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					bool u_xlatb3;
					vec2 u_xlat4;
					float u_xlat12;
					int u_xlati12;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat1 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat1.x);
					    u_xlat0.x = float(0.0);
					    u_xlat0.y = float(0.0);
					    u_xlat0.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat1.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat3.x = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat3.x = u_xlat3.x * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat3.x = float(1.0) / u_xlat3.x;
					        u_xlat0.xyz = unity_LightColor[u_xlati_loop_1].xyz * u_xlat3.xxx + u_xlat0.xyz;
					    }
					    u_xlat0.xyz = u_xlat0.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat1.xyz = vec3(u_xlat12) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendMul2" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat12;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat2.xyz = vec3(u_xlat12) * u_xlat2.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat2.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					bool u_xlatb3;
					vec2 u_xlat4;
					float u_xlat12;
					int u_xlati12;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat1 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat1.x);
					    u_xlat0.x = float(0.0);
					    u_xlat0.y = float(0.0);
					    u_xlat0.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat1.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat3.x = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat3.x = u_xlat3.x * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat3.x = float(1.0) / u_xlat3.x;
					        u_xlat0.xyz = unity_LightColor[u_xlati_loop_1].xyz * u_xlat3.xxx + u_xlat0.xyz;
					    }
					    u_xlat0.xyz = u_xlat0.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat1.xyz = vec3(u_xlat12) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendMul2" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat12;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat2.xyz = vec3(u_xlat12) * u_xlat2.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat2.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					bool u_xlatb3;
					vec2 u_xlat4;
					float u_xlat12;
					int u_xlati12;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat1 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat1.x);
					    u_xlat0.x = float(0.0);
					    u_xlat0.y = float(0.0);
					    u_xlat0.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat1.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat3.x = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat3.x = u_xlat3.x * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat3.x = float(1.0) / u_xlat3.x;
					        u_xlat0.xyz = unity_LightColor[u_xlati_loop_1].xyz * u_xlat3.xxx + u_xlat0.xyz;
					    }
					    u_xlat0.xyz = u_xlat0.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat1.xyz = vec3(u_xlat12) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendMul2" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat12;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat2.xyz = vec3(u_xlat12) * u_xlat2.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat2.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					bool u_xlatb3;
					vec2 u_xlat4;
					float u_xlat12;
					int u_xlati12;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat1 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat1.x);
					    u_xlat0.x = float(0.0);
					    u_xlat0.y = float(0.0);
					    u_xlat0.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat1.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat3.x = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat3.x = u_xlat3.x * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat3.x = float(1.0) / u_xlat3.x;
					        u_xlat0.xyz = unity_LightColor[u_xlati_loop_1].xyz * u_xlat3.xxx + u_xlat0.xyz;
					    }
					    u_xlat0.xyz = u_xlat0.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat1.xyz = vec3(u_xlat12) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendMul2" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat12;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat2.xyz = vec3(u_xlat12) * u_xlat2.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat2.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					bool u_xlatb3;
					vec2 u_xlat4;
					float u_xlat12;
					int u_xlati12;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat1 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat1.x);
					    u_xlat0.x = float(0.0);
					    u_xlat0.y = float(0.0);
					    u_xlat0.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat1.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat3.x = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat3.x = u_xlat3.x * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat3.x = float(1.0) / u_xlat3.x;
					        u_xlat0.xyz = unity_LightColor[u_xlati_loop_1].xyz * u_xlat3.xxx + u_xlat0.xyz;
					    }
					    u_xlat0.xyz = u_xlat0.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat1.xyz = vec3(u_xlat12) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendMul2" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat12;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat2.xyz = vec3(u_xlat12) * u_xlat2.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat2.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					bool u_xlatb3;
					vec2 u_xlat4;
					float u_xlat12;
					int u_xlati12;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat1 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat1.x);
					    u_xlat0.x = float(0.0);
					    u_xlat0.y = float(0.0);
					    u_xlat0.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat1.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat3.x = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat3.x = u_xlat3.x * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat3.x = float(1.0) / u_xlat3.x;
					        u_xlat0.xyz = unity_LightColor[u_xlati_loop_1].xyz * u_xlat3.xxx + u_xlat0.xyz;
					    }
					    u_xlat0.xyz = u_xlat0.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat1.xyz = vec3(u_xlat12) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendMul2" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat12;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat2.xyz = vec3(u_xlat12) * u_xlat2.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat2.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					bool u_xlatb3;
					vec2 u_xlat4;
					float u_xlat12;
					int u_xlati12;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat1 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat1.x);
					    u_xlat0.x = float(0.0);
					    u_xlat0.y = float(0.0);
					    u_xlat0.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat1.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat3.x = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat3.x = u_xlat3.x * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat3.x = float(1.0) / u_xlat3.x;
					        u_xlat0.xyz = unity_LightColor[u_xlati_loop_1].xyz * u_xlat3.xxx + u_xlat0.xyz;
					    }
					    u_xlat0.xyz = u_xlat0.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat1.xyz = vec3(u_xlat12) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendMul2" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat12;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat2.xyz = vec3(u_xlat12) * u_xlat2.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat2.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					bool u_xlatb3;
					vec2 u_xlat4;
					float u_xlat12;
					int u_xlati12;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat1 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat1.x);
					    u_xlat0.x = float(0.0);
					    u_xlat0.y = float(0.0);
					    u_xlat0.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat1.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat3.x = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat3.x = u_xlat3.x * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat3.x = float(1.0) / u_xlat3.x;
					        u_xlat0.xyz = unity_LightColor[u_xlati_loop_1].xyz * u_xlat3.xxx + u_xlat0.xyz;
					    }
					    u_xlat0.xyz = u_xlat0.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat1.xyz = vec3(u_xlat12) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendMul2" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat12;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat2.xyz = vec3(u_xlat12) * u_xlat2.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat2.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					bool u_xlatb3;
					vec2 u_xlat4;
					float u_xlat12;
					int u_xlati12;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat1 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat1.x);
					    u_xlat0.x = float(0.0);
					    u_xlat0.y = float(0.0);
					    u_xlat0.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat1.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat3.x = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat3.x = u_xlat3.x * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat3.x = float(1.0) / u_xlat3.x;
					        u_xlat0.xyz = unity_LightColor[u_xlati_loop_1].xyz * u_xlat3.xxx + u_xlat0.xyz;
					    }
					    u_xlat0.xyz = u_xlat0.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat1.xyz = vec3(u_xlat12) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendMul2" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat12;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat2.xyz = vec3(u_xlat12) * u_xlat2.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat2.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					bool u_xlatb3;
					vec2 u_xlat4;
					float u_xlat12;
					int u_xlati12;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat1 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat1.x);
					    u_xlat0.x = float(0.0);
					    u_xlat0.y = float(0.0);
					    u_xlat0.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat1.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat3.x = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat3.x = u_xlat3.x * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat3.x = float(1.0) / u_xlat3.x;
					        u_xlat0.xyz = unity_LightColor[u_xlati_loop_1].xyz * u_xlat3.xxx + u_xlat0.xyz;
					    }
					    u_xlat0.xyz = u_xlat0.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat1.xyz = vec3(u_xlat12) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendMul2" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat12;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat2.xyz = vec3(u_xlat12) * u_xlat2.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat2.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					bool u_xlatb3;
					vec2 u_xlat4;
					float u_xlat12;
					int u_xlati12;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat1 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat1.x);
					    u_xlat0.x = float(0.0);
					    u_xlat0.y = float(0.0);
					    u_xlat0.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat1.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat3.x = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat3.x = u_xlat3.x * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat3.x = float(1.0) / u_xlat3.x;
					        u_xlat0.xyz = unity_LightColor[u_xlati_loop_1].xyz * u_xlat3.xxx + u_xlat0.xyz;
					    }
					    u_xlat0.xyz = u_xlat0.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat1.xyz = vec3(u_xlat12) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendMul2" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat12;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat2.xyz = vec3(u_xlat12) * u_xlat2.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat2.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					bool u_xlatb3;
					vec2 u_xlat4;
					float u_xlat12;
					int u_xlati12;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat1 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat1.x);
					    u_xlat0.x = float(0.0);
					    u_xlat0.y = float(0.0);
					    u_xlat0.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat1.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat3.x = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat3.x = u_xlat3.x * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat3.x = float(1.0) / u_xlat3.x;
					        u_xlat0.xyz = unity_LightColor[u_xlati_loop_1].xyz * u_xlat3.xxx + u_xlat0.xyz;
					    }
					    u_xlat0.xyz = u_xlat0.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat1.xyz = vec3(u_xlat12) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendMul2" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat12;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat2.xyz = vec3(u_xlat12) * u_xlat2.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat2.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					bool u_xlatb3;
					vec2 u_xlat4;
					float u_xlat12;
					int u_xlati12;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat1 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat1.x);
					    u_xlat0.x = float(0.0);
					    u_xlat0.y = float(0.0);
					    u_xlat0.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat1.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat3.x = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat3.x = u_xlat3.x * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat3.x = float(1.0) / u_xlat3.x;
					        u_xlat0.xyz = unity_LightColor[u_xlati_loop_1].xyz * u_xlat3.xxx + u_xlat0.xyz;
					    }
					    u_xlat0.xyz = u_xlat0.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat1.xyz = vec3(u_xlat12) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendMul2" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat12;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat2.xyz = vec3(u_xlat12) * u_xlat2.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat2.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					bool u_xlatb3;
					vec2 u_xlat4;
					float u_xlat12;
					int u_xlati12;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat1 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat1.x);
					    u_xlat0.x = float(0.0);
					    u_xlat0.y = float(0.0);
					    u_xlat0.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat1.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat3.x = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat3.x = u_xlat3.x * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat3.x = float(1.0) / u_xlat3.x;
					        u_xlat0.xyz = unity_LightColor[u_xlati_loop_1].xyz * u_xlat3.xxx + u_xlat0.xyz;
					    }
					    u_xlat0.xyz = u_xlat0.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat1.xyz = vec3(u_xlat12) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendMul2" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat12;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat2.xyz = vec3(u_xlat12) * u_xlat2.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat2.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					bool u_xlatb3;
					vec2 u_xlat4;
					float u_xlat12;
					int u_xlati12;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat1 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat1.x);
					    u_xlat0.x = float(0.0);
					    u_xlat0.y = float(0.0);
					    u_xlat0.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat1.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat3.x = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat3.x = u_xlat3.x * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat3.x = float(1.0) / u_xlat3.x;
					        u_xlat0.xyz = unity_LightColor[u_xlati_loop_1].xyz * u_xlat3.xxx + u_xlat0.xyz;
					    }
					    u_xlat0.xyz = u_xlat0.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat1.xyz = vec3(u_xlat12) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendMul2" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat12;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat2.xyz = vec3(u_xlat12) * u_xlat2.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat2.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					bool u_xlatb3;
					vec2 u_xlat4;
					float u_xlat12;
					int u_xlati12;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat1 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat1.x);
					    u_xlat0.x = float(0.0);
					    u_xlat0.y = float(0.0);
					    u_xlat0.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat1.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat3.x = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat3.x = u_xlat3.x * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat3.x = float(1.0) / u_xlat3.x;
					        u_xlat0.xyz = unity_LightColor[u_xlati_loop_1].xyz * u_xlat3.xxx + u_xlat0.xyz;
					    }
					    u_xlat0.xyz = u_xlat0.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat1.xyz = vec3(u_xlat12) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendMul2" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec2 u_xlat4;
					int u_xlati12;
					float u_xlat13;
					bool u_xlatb13;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat0 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat1.x = float(0.0);
					    u_xlat1.y = float(0.0);
					    u_xlat1.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat13 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat13 = u_xlat13 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat13 = float(1.0) / u_xlat13;
					        u_xlat1.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat13) + u_xlat1.xyz;
					    }
					    u_xlat0.xyz = u_xlat1.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendMul2" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec2 u_xlat4;
					int u_xlati12;
					float u_xlat13;
					bool u_xlatb13;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat0 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat1.x = float(0.0);
					    u_xlat1.y = float(0.0);
					    u_xlat1.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat13 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat13 = u_xlat13 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat13 = float(1.0) / u_xlat13;
					        u_xlat1.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat13) + u_xlat1.xyz;
					    }
					    u_xlat0.xyz = u_xlat1.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendMul2" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec2 u_xlat4;
					int u_xlati12;
					float u_xlat13;
					bool u_xlatb13;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat0 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat1.x = float(0.0);
					    u_xlat1.y = float(0.0);
					    u_xlat1.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat13 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat13 = u_xlat13 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat13 = float(1.0) / u_xlat13;
					        u_xlat1.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat13) + u_xlat1.xyz;
					    }
					    u_xlat0.xyz = u_xlat1.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendMul2" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec2 u_xlat4;
					int u_xlati12;
					float u_xlat13;
					bool u_xlatb13;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat0 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat1.x = float(0.0);
					    u_xlat1.y = float(0.0);
					    u_xlat1.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat13 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat13 = u_xlat13 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat13 = float(1.0) / u_xlat13;
					        u_xlat1.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat13) + u_xlat1.xyz;
					    }
					    u_xlat0.xyz = u_xlat1.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendMul2" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec2 u_xlat4;
					int u_xlati12;
					float u_xlat13;
					bool u_xlatb13;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat0 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat1.x = float(0.0);
					    u_xlat1.y = float(0.0);
					    u_xlat1.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat13 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat13 = u_xlat13 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat13 = float(1.0) / u_xlat13;
					        u_xlat1.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat13) + u_xlat1.xyz;
					    }
					    u_xlat0.xyz = u_xlat1.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendMul2" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec2 u_xlat4;
					int u_xlati12;
					float u_xlat13;
					bool u_xlatb13;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat0 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat1.x = float(0.0);
					    u_xlat1.y = float(0.0);
					    u_xlat1.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat13 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat13 = u_xlat13 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat13 = float(1.0) / u_xlat13;
					        u_xlat1.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat13) + u_xlat1.xyz;
					    }
					    u_xlat0.xyz = u_xlat1.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendMul2" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec2 u_xlat4;
					int u_xlati12;
					float u_xlat13;
					bool u_xlatb13;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat0 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat1.x = float(0.0);
					    u_xlat1.y = float(0.0);
					    u_xlat1.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat13 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat13 = u_xlat13 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat13 = float(1.0) / u_xlat13;
					        u_xlat1.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat13) + u_xlat1.xyz;
					    }
					    u_xlat0.xyz = u_xlat1.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendMul2" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec2 u_xlat4;
					int u_xlati12;
					float u_xlat13;
					bool u_xlatb13;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat0 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat1.x = float(0.0);
					    u_xlat1.y = float(0.0);
					    u_xlat1.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat13 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat13 = u_xlat13 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat13 = float(1.0) / u_xlat13;
					        u_xlat1.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat13) + u_xlat1.xyz;
					    }
					    u_xlat0.xyz = u_xlat1.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendMul2" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec2 u_xlat4;
					int u_xlati12;
					float u_xlat13;
					bool u_xlatb13;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat0 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat1.x = float(0.0);
					    u_xlat1.y = float(0.0);
					    u_xlat1.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat13 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat13 = u_xlat13 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat13 = float(1.0) / u_xlat13;
					        u_xlat1.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat13) + u_xlat1.xyz;
					    }
					    u_xlat0.xyz = u_xlat1.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendMul2" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec2 u_xlat4;
					int u_xlati12;
					float u_xlat13;
					bool u_xlatb13;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat0 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat1.x = float(0.0);
					    u_xlat1.y = float(0.0);
					    u_xlat1.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat13 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat13 = u_xlat13 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat13 = float(1.0) / u_xlat13;
					        u_xlat1.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat13) + u_xlat1.xyz;
					    }
					    u_xlat0.xyz = u_xlat1.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendMul2" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec2 u_xlat4;
					int u_xlati12;
					float u_xlat13;
					bool u_xlatb13;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat0 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat1.x = float(0.0);
					    u_xlat1.y = float(0.0);
					    u_xlat1.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat13 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat13 = u_xlat13 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat13 = float(1.0) / u_xlat13;
					        u_xlat1.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat13) + u_xlat1.xyz;
					    }
					    u_xlat0.xyz = u_xlat1.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendMul2" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec2 u_xlat4;
					int u_xlati12;
					float u_xlat13;
					bool u_xlatb13;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat0 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat1.x = float(0.0);
					    u_xlat1.y = float(0.0);
					    u_xlat1.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat13 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat13 = u_xlat13 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat13 = float(1.0) / u_xlat13;
					        u_xlat1.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat13) + u_xlat1.xyz;
					    }
					    u_xlat0.xyz = u_xlat1.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendMul2" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec2 u_xlat4;
					int u_xlati12;
					float u_xlat13;
					bool u_xlatb13;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat0 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat1.x = float(0.0);
					    u_xlat1.y = float(0.0);
					    u_xlat1.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat13 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat13 = u_xlat13 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat13 = float(1.0) / u_xlat13;
					        u_xlat1.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat13) + u_xlat1.xyz;
					    }
					    u_xlat0.xyz = u_xlat1.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendMul2" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec2 u_xlat4;
					int u_xlati12;
					float u_xlat13;
					bool u_xlatb13;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat0 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat1.x = float(0.0);
					    u_xlat1.y = float(0.0);
					    u_xlat1.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat13 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat13 = u_xlat13 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat13 = float(1.0) / u_xlat13;
					        u_xlat1.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat13) + u_xlat1.xyz;
					    }
					    u_xlat0.xyz = u_xlat1.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendMul2" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec2 u_xlat4;
					int u_xlati12;
					float u_xlat13;
					bool u_xlatb13;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat0 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat1.x = float(0.0);
					    u_xlat1.y = float(0.0);
					    u_xlat1.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat13 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat13 = u_xlat13 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat13 = float(1.0) / u_xlat13;
					        u_xlat1.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat13) + u_xlat1.xyz;
					    }
					    u_xlat0.xyz = u_xlat1.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendMul2" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec2 u_xlat4;
					int u_xlati12;
					float u_xlat13;
					bool u_xlatb13;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat0 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat1.x = float(0.0);
					    u_xlat1.y = float(0.0);
					    u_xlat1.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat13 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat13 = u_xlat13 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat13 = float(1.0) / u_xlat13;
					        u_xlat1.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat13) + u_xlat1.xyz;
					    }
					    u_xlat0.xyz = u_xlat1.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendMul2" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat12;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat2.xyz = vec3(u_xlat12) * u_xlat2.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat2.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					bool u_xlatb3;
					vec2 u_xlat4;
					float u_xlat12;
					int u_xlati12;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat1 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat1.x);
					    u_xlat0.x = float(0.0);
					    u_xlat0.y = float(0.0);
					    u_xlat0.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat1.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat3.x = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat3.x = u_xlat3.x * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat3.x = float(1.0) / u_xlat3.x;
					        u_xlat0.xyz = unity_LightColor[u_xlati_loop_1].xyz * u_xlat3.xxx + u_xlat0.xyz;
					    }
					    u_xlat0.xyz = u_xlat0.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat1.xyz = vec3(u_xlat12) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendMul2" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat12;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat2.xyz = vec3(u_xlat12) * u_xlat2.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat2.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					bool u_xlatb3;
					vec2 u_xlat4;
					float u_xlat12;
					int u_xlati12;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat1 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat1.x);
					    u_xlat0.x = float(0.0);
					    u_xlat0.y = float(0.0);
					    u_xlat0.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat1.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat3.x = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat3.x = u_xlat3.x * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat3.x = float(1.0) / u_xlat3.x;
					        u_xlat0.xyz = unity_LightColor[u_xlati_loop_1].xyz * u_xlat3.xxx + u_xlat0.xyz;
					    }
					    u_xlat0.xyz = u_xlat0.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat1.xyz = vec3(u_xlat12) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendMul2" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat12;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat2.xyz = vec3(u_xlat12) * u_xlat2.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat2.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					bool u_xlatb3;
					vec2 u_xlat4;
					float u_xlat12;
					int u_xlati12;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat1 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat1.x);
					    u_xlat0.x = float(0.0);
					    u_xlat0.y = float(0.0);
					    u_xlat0.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat1.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat3.x = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat3.x = u_xlat3.x * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat3.x = float(1.0) / u_xlat3.x;
					        u_xlat0.xyz = unity_LightColor[u_xlati_loop_1].xyz * u_xlat3.xxx + u_xlat0.xyz;
					    }
					    u_xlat0.xyz = u_xlat0.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat1.xyz = vec3(u_xlat12) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendMul2" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat12;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat2.xyz = vec3(u_xlat12) * u_xlat2.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat2.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					bool u_xlatb3;
					vec2 u_xlat4;
					float u_xlat12;
					int u_xlati12;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat1 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat1.x);
					    u_xlat0.x = float(0.0);
					    u_xlat0.y = float(0.0);
					    u_xlat0.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat1.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat3.x = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat3.x = u_xlat3.x * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat3.x = float(1.0) / u_xlat3.x;
					        u_xlat0.xyz = unity_LightColor[u_xlati_loop_1].xyz * u_xlat3.xxx + u_xlat0.xyz;
					    }
					    u_xlat0.xyz = u_xlat0.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat1.xyz = vec3(u_xlat12) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendMul2" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat12;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat2.xyz = vec3(u_xlat12) * u_xlat2.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat2.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					bool u_xlatb3;
					vec2 u_xlat4;
					float u_xlat12;
					int u_xlati12;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat1 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat1.x);
					    u_xlat0.x = float(0.0);
					    u_xlat0.y = float(0.0);
					    u_xlat0.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat1.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat3.x = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat3.x = u_xlat3.x * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat3.x = float(1.0) / u_xlat3.x;
					        u_xlat0.xyz = unity_LightColor[u_xlati_loop_1].xyz * u_xlat3.xxx + u_xlat0.xyz;
					    }
					    u_xlat0.xyz = u_xlat0.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat1.xyz = vec3(u_xlat12) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendMul2" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat12;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat2.xyz = vec3(u_xlat12) * u_xlat2.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat2.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					bool u_xlatb3;
					vec2 u_xlat4;
					float u_xlat12;
					int u_xlati12;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat1 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat1.x);
					    u_xlat0.x = float(0.0);
					    u_xlat0.y = float(0.0);
					    u_xlat0.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat1.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat3.x = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat3.x = u_xlat3.x * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat3.x = float(1.0) / u_xlat3.x;
					        u_xlat0.xyz = unity_LightColor[u_xlati_loop_1].xyz * u_xlat3.xxx + u_xlat0.xyz;
					    }
					    u_xlat0.xyz = u_xlat0.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat1.xyz = vec3(u_xlat12) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendMul2" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat12;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat2.xyz = vec3(u_xlat12) * u_xlat2.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat2.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					bool u_xlatb3;
					vec2 u_xlat4;
					float u_xlat12;
					int u_xlati12;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat1 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat1.x);
					    u_xlat0.x = float(0.0);
					    u_xlat0.y = float(0.0);
					    u_xlat0.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat1.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat3.x = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat3.x = u_xlat3.x * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat3.x = float(1.0) / u_xlat3.x;
					        u_xlat0.xyz = unity_LightColor[u_xlati_loop_1].xyz * u_xlat3.xxx + u_xlat0.xyz;
					    }
					    u_xlat0.xyz = u_xlat0.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat1.xyz = vec3(u_xlat12) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendMul2" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat12;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat2.xyz = vec3(u_xlat12) * u_xlat2.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat2.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					bool u_xlatb3;
					vec2 u_xlat4;
					float u_xlat12;
					int u_xlati12;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat1 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat1.x);
					    u_xlat0.x = float(0.0);
					    u_xlat0.y = float(0.0);
					    u_xlat0.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat1.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat3.x = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat3.x = u_xlat3.x * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat3.x = float(1.0) / u_xlat3.x;
					        u_xlat0.xyz = unity_LightColor[u_xlati_loop_1].xyz * u_xlat3.xxx + u_xlat0.xyz;
					    }
					    u_xlat0.xyz = u_xlat0.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat1.xyz = vec3(u_xlat12) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendMul2" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat12;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat2.xyz = vec3(u_xlat12) * u_xlat2.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat2.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					bool u_xlatb3;
					vec2 u_xlat4;
					float u_xlat12;
					int u_xlati12;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat1 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat1.x);
					    u_xlat0.x = float(0.0);
					    u_xlat0.y = float(0.0);
					    u_xlat0.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat1.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat3.x = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat3.x = u_xlat3.x * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat3.x = float(1.0) / u_xlat3.x;
					        u_xlat0.xyz = unity_LightColor[u_xlati_loop_1].xyz * u_xlat3.xxx + u_xlat0.xyz;
					    }
					    u_xlat0.xyz = u_xlat0.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat1.xyz = vec3(u_xlat12) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendMul2" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat12;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat2.xyz = vec3(u_xlat12) * u_xlat2.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat2.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					bool u_xlatb3;
					vec2 u_xlat4;
					float u_xlat12;
					int u_xlati12;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat1 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat1.x);
					    u_xlat0.x = float(0.0);
					    u_xlat0.y = float(0.0);
					    u_xlat0.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat1.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat3.x = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat3.x = u_xlat3.x * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat3.x = float(1.0) / u_xlat3.x;
					        u_xlat0.xyz = unity_LightColor[u_xlati_loop_1].xyz * u_xlat3.xxx + u_xlat0.xyz;
					    }
					    u_xlat0.xyz = u_xlat0.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat1.xyz = vec3(u_xlat12) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendMul2" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat12;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat2.xyz = vec3(u_xlat12) * u_xlat2.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat2.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					bool u_xlatb3;
					vec2 u_xlat4;
					float u_xlat12;
					int u_xlati12;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat1 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat1.x);
					    u_xlat0.x = float(0.0);
					    u_xlat0.y = float(0.0);
					    u_xlat0.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat1.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat3.x = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat3.x = u_xlat3.x * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat3.x = float(1.0) / u_xlat3.x;
					        u_xlat0.xyz = unity_LightColor[u_xlati_loop_1].xyz * u_xlat3.xxx + u_xlat0.xyz;
					    }
					    u_xlat0.xyz = u_xlat0.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat1.xyz = vec3(u_xlat12) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendMul2" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat12;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat2.xyz = vec3(u_xlat12) * u_xlat2.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat2.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					bool u_xlatb3;
					vec2 u_xlat4;
					float u_xlat12;
					int u_xlati12;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat1 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat1.x);
					    u_xlat0.x = float(0.0);
					    u_xlat0.y = float(0.0);
					    u_xlat0.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat1.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat3.x = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat3.x = u_xlat3.x * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat3.x = float(1.0) / u_xlat3.x;
					        u_xlat0.xyz = unity_LightColor[u_xlati_loop_1].xyz * u_xlat3.xxx + u_xlat0.xyz;
					    }
					    u_xlat0.xyz = u_xlat0.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat1.xyz = vec3(u_xlat12) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendMul2" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat12;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat2.xyz = vec3(u_xlat12) * u_xlat2.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat2.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					bool u_xlatb3;
					vec2 u_xlat4;
					float u_xlat12;
					int u_xlati12;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat1 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat1.x);
					    u_xlat0.x = float(0.0);
					    u_xlat0.y = float(0.0);
					    u_xlat0.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat1.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat3.x = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat3.x = u_xlat3.x * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat3.x = float(1.0) / u_xlat3.x;
					        u_xlat0.xyz = unity_LightColor[u_xlati_loop_1].xyz * u_xlat3.xxx + u_xlat0.xyz;
					    }
					    u_xlat0.xyz = u_xlat0.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat1.xyz = vec3(u_xlat12) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendMul2" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat12;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat2.xyz = vec3(u_xlat12) * u_xlat2.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat2.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					bool u_xlatb3;
					vec2 u_xlat4;
					float u_xlat12;
					int u_xlati12;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat1 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat1.x);
					    u_xlat0.x = float(0.0);
					    u_xlat0.y = float(0.0);
					    u_xlat0.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat1.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat3.x = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat3.x = u_xlat3.x * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat3.x = float(1.0) / u_xlat3.x;
					        u_xlat0.xyz = unity_LightColor[u_xlati_loop_1].xyz * u_xlat3.xxx + u_xlat0.xyz;
					    }
					    u_xlat0.xyz = u_xlat0.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat1.xyz = vec3(u_xlat12) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendMul2" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat12;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat2.xyz = vec3(u_xlat12) * u_xlat2.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat2.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					bool u_xlatb3;
					vec2 u_xlat4;
					float u_xlat12;
					int u_xlati12;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat1 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat1.x);
					    u_xlat0.x = float(0.0);
					    u_xlat0.y = float(0.0);
					    u_xlat0.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat1.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat3.x = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat3.x = u_xlat3.x * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat3.x = float(1.0) / u_xlat3.x;
					        u_xlat0.xyz = unity_LightColor[u_xlati_loop_1].xyz * u_xlat3.xxx + u_xlat0.xyz;
					    }
					    u_xlat0.xyz = u_xlat0.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat1.xyz = vec3(u_xlat12) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendMul2" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat12;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat2.xyz = vec3(u_xlat12) * u_xlat2.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat2.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					bool u_xlatb3;
					vec2 u_xlat4;
					float u_xlat12;
					int u_xlati12;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat1 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat1.x);
					    u_xlat0.x = float(0.0);
					    u_xlat0.y = float(0.0);
					    u_xlat0.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat1.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat3.x = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat3.x = u_xlat3.x * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat3.x = float(1.0) / u_xlat3.x;
					        u_xlat0.xyz = unity_LightColor[u_xlati_loop_1].xyz * u_xlat3.xxx + u_xlat0.xyz;
					    }
					    u_xlat0.xyz = u_xlat0.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat1.xyz = vec3(u_xlat12) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendMul2" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec2 u_xlat4;
					int u_xlati12;
					float u_xlat13;
					bool u_xlatb13;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat0 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat1.x = float(0.0);
					    u_xlat1.y = float(0.0);
					    u_xlat1.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat13 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat13 = u_xlat13 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat13 = float(1.0) / u_xlat13;
					        u_xlat1.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat13) + u_xlat1.xyz;
					    }
					    u_xlat0.xyz = u_xlat1.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendMul2" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec2 u_xlat4;
					int u_xlati12;
					float u_xlat13;
					bool u_xlatb13;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat0 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat1.x = float(0.0);
					    u_xlat1.y = float(0.0);
					    u_xlat1.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat13 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat13 = u_xlat13 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat13 = float(1.0) / u_xlat13;
					        u_xlat1.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat13) + u_xlat1.xyz;
					    }
					    u_xlat0.xyz = u_xlat1.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendMul2" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec2 u_xlat4;
					int u_xlati12;
					float u_xlat13;
					bool u_xlatb13;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat0 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat1.x = float(0.0);
					    u_xlat1.y = float(0.0);
					    u_xlat1.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat13 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat13 = u_xlat13 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat13 = float(1.0) / u_xlat13;
					        u_xlat1.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat13) + u_xlat1.xyz;
					    }
					    u_xlat0.xyz = u_xlat1.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendMul2" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec2 u_xlat4;
					int u_xlati12;
					float u_xlat13;
					bool u_xlatb13;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat0 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat1.x = float(0.0);
					    u_xlat1.y = float(0.0);
					    u_xlat1.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat13 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat13 = u_xlat13 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat13 = float(1.0) / u_xlat13;
					        u_xlat1.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat13) + u_xlat1.xyz;
					    }
					    u_xlat0.xyz = u_xlat1.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendMul2" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec2 u_xlat4;
					int u_xlati12;
					float u_xlat13;
					bool u_xlatb13;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat0 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat1.x = float(0.0);
					    u_xlat1.y = float(0.0);
					    u_xlat1.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat13 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat13 = u_xlat13 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat13 = float(1.0) / u_xlat13;
					        u_xlat1.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat13) + u_xlat1.xyz;
					    }
					    u_xlat0.xyz = u_xlat1.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendMul2" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec2 u_xlat4;
					int u_xlati12;
					float u_xlat13;
					bool u_xlatb13;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat0 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat1.x = float(0.0);
					    u_xlat1.y = float(0.0);
					    u_xlat1.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat13 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat13 = u_xlat13 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat13 = float(1.0) / u_xlat13;
					        u_xlat1.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat13) + u_xlat1.xyz;
					    }
					    u_xlat0.xyz = u_xlat1.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendMul2" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec2 u_xlat4;
					int u_xlati12;
					float u_xlat13;
					bool u_xlatb13;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat0 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat1.x = float(0.0);
					    u_xlat1.y = float(0.0);
					    u_xlat1.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat13 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat13 = u_xlat13 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat13 = float(1.0) / u_xlat13;
					        u_xlat1.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat13) + u_xlat1.xyz;
					    }
					    u_xlat0.xyz = u_xlat1.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendMul2" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec2 u_xlat4;
					int u_xlati12;
					float u_xlat13;
					bool u_xlatb13;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat0 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat1.x = float(0.0);
					    u_xlat1.y = float(0.0);
					    u_xlat1.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat13 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat13 = u_xlat13 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat13 = float(1.0) / u_xlat13;
					        u_xlat1.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat13) + u_xlat1.xyz;
					    }
					    u_xlat0.xyz = u_xlat1.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendMul2" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec2 u_xlat4;
					int u_xlati12;
					float u_xlat13;
					bool u_xlatb13;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat0 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat1.x = float(0.0);
					    u_xlat1.y = float(0.0);
					    u_xlat1.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat13 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat13 = u_xlat13 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat13 = float(1.0) / u_xlat13;
					        u_xlat1.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat13) + u_xlat1.xyz;
					    }
					    u_xlat0.xyz = u_xlat1.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendMul2" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec2 u_xlat4;
					int u_xlati12;
					float u_xlat13;
					bool u_xlatb13;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat0 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat1.x = float(0.0);
					    u_xlat1.y = float(0.0);
					    u_xlat1.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat13 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat13 = u_xlat13 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat13 = float(1.0) / u_xlat13;
					        u_xlat1.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat13) + u_xlat1.xyz;
					    }
					    u_xlat0.xyz = u_xlat1.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendMul2" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec2 u_xlat4;
					int u_xlati12;
					float u_xlat13;
					bool u_xlatb13;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat0 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat1.x = float(0.0);
					    u_xlat1.y = float(0.0);
					    u_xlat1.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat13 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat13 = u_xlat13 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat13 = float(1.0) / u_xlat13;
					        u_xlat1.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat13) + u_xlat1.xyz;
					    }
					    u_xlat0.xyz = u_xlat1.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendMul2" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec2 u_xlat4;
					int u_xlati12;
					float u_xlat13;
					bool u_xlatb13;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat0 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat1.x = float(0.0);
					    u_xlat1.y = float(0.0);
					    u_xlat1.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat13 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat13 = u_xlat13 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat13 = float(1.0) / u_xlat13;
					        u_xlat1.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat13) + u_xlat1.xyz;
					    }
					    u_xlat0.xyz = u_xlat1.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendMul2" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec2 u_xlat4;
					int u_xlati12;
					float u_xlat13;
					bool u_xlatb13;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat0 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat1.x = float(0.0);
					    u_xlat1.y = float(0.0);
					    u_xlat1.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat13 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat13 = u_xlat13 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat13 = float(1.0) / u_xlat13;
					        u_xlat1.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat13) + u_xlat1.xyz;
					    }
					    u_xlat0.xyz = u_xlat1.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendMul2" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec2 u_xlat4;
					int u_xlati12;
					float u_xlat13;
					bool u_xlatb13;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat0 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat1.x = float(0.0);
					    u_xlat1.y = float(0.0);
					    u_xlat1.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat13 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat13 = u_xlat13 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat13 = float(1.0) / u_xlat13;
					        u_xlat1.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat13) + u_xlat1.xyz;
					    }
					    u_xlat0.xyz = u_xlat1.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendMul2" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec2 u_xlat4;
					int u_xlati12;
					float u_xlat13;
					bool u_xlatb13;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat0 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat1.x = float(0.0);
					    u_xlat1.y = float(0.0);
					    u_xlat1.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat13 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat13 = u_xlat13 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat13 = float(1.0) / u_xlat13;
					        u_xlat1.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat13) + u_xlat1.xyz;
					    }
					    u_xlat0.xyz = u_xlat1.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendMul2" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec2 u_xlat4;
					int u_xlati12;
					float u_xlat13;
					bool u_xlatb13;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat0 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat1.x = float(0.0);
					    u_xlat1.y = float(0.0);
					    u_xlat1.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat13 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat13 = u_xlat13 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat13 = float(1.0) / u_xlat13;
					        u_xlat1.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat13) + u_xlat1.xyz;
					    }
					    u_xlat0.xyz = u_xlat1.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendMul2" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat12;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat2.xyz = vec3(u_xlat12) * u_xlat2.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat2.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					bool u_xlatb3;
					vec2 u_xlat4;
					float u_xlat12;
					int u_xlati12;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat1 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat1.x);
					    u_xlat0.x = float(0.0);
					    u_xlat0.y = float(0.0);
					    u_xlat0.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat1.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat3.x = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat3.x = u_xlat3.x * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat3.x = float(1.0) / u_xlat3.x;
					        u_xlat0.xyz = unity_LightColor[u_xlati_loop_1].xyz * u_xlat3.xxx + u_xlat0.xyz;
					    }
					    u_xlat0.xyz = u_xlat0.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat1.xyz = vec3(u_xlat12) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendMul2" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat12;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat2.xyz = vec3(u_xlat12) * u_xlat2.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat2.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					bool u_xlatb3;
					vec2 u_xlat4;
					float u_xlat12;
					int u_xlati12;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat1 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat1.x);
					    u_xlat0.x = float(0.0);
					    u_xlat0.y = float(0.0);
					    u_xlat0.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat1.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat3.x = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat3.x = u_xlat3.x * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat3.x = float(1.0) / u_xlat3.x;
					        u_xlat0.xyz = unity_LightColor[u_xlati_loop_1].xyz * u_xlat3.xxx + u_xlat0.xyz;
					    }
					    u_xlat0.xyz = u_xlat0.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat1.xyz = vec3(u_xlat12) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendMul2" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat12;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat2.xyz = vec3(u_xlat12) * u_xlat2.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat2.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					bool u_xlatb3;
					vec2 u_xlat4;
					float u_xlat12;
					int u_xlati12;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat1 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat1.x);
					    u_xlat0.x = float(0.0);
					    u_xlat0.y = float(0.0);
					    u_xlat0.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat1.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat3.x = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat3.x = u_xlat3.x * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat3.x = float(1.0) / u_xlat3.x;
					        u_xlat0.xyz = unity_LightColor[u_xlati_loop_1].xyz * u_xlat3.xxx + u_xlat0.xyz;
					    }
					    u_xlat0.xyz = u_xlat0.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat1.xyz = vec3(u_xlat12) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendMul2" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat12;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat2.xyz = vec3(u_xlat12) * u_xlat2.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat2.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					bool u_xlatb3;
					vec2 u_xlat4;
					float u_xlat12;
					int u_xlati12;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat1 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat1.x);
					    u_xlat0.x = float(0.0);
					    u_xlat0.y = float(0.0);
					    u_xlat0.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat1.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat3.x = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat3.x = u_xlat3.x * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat3.x = float(1.0) / u_xlat3.x;
					        u_xlat0.xyz = unity_LightColor[u_xlati_loop_1].xyz * u_xlat3.xxx + u_xlat0.xyz;
					    }
					    u_xlat0.xyz = u_xlat0.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat1.xyz = vec3(u_xlat12) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendMul2" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat12;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat2.xyz = vec3(u_xlat12) * u_xlat2.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat2.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					bool u_xlatb3;
					vec2 u_xlat4;
					float u_xlat12;
					int u_xlati12;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat1 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat1.x);
					    u_xlat0.x = float(0.0);
					    u_xlat0.y = float(0.0);
					    u_xlat0.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat1.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat3.x = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat3.x = u_xlat3.x * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat3.x = float(1.0) / u_xlat3.x;
					        u_xlat0.xyz = unity_LightColor[u_xlati_loop_1].xyz * u_xlat3.xxx + u_xlat0.xyz;
					    }
					    u_xlat0.xyz = u_xlat0.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat1.xyz = vec3(u_xlat12) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendMul2" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat12;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat2.xyz = vec3(u_xlat12) * u_xlat2.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat2.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					bool u_xlatb3;
					vec2 u_xlat4;
					float u_xlat12;
					int u_xlati12;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat1 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat1.x);
					    u_xlat0.x = float(0.0);
					    u_xlat0.y = float(0.0);
					    u_xlat0.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat1.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat3.x = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat3.x = u_xlat3.x * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat3.x = float(1.0) / u_xlat3.x;
					        u_xlat0.xyz = unity_LightColor[u_xlati_loop_1].xyz * u_xlat3.xxx + u_xlat0.xyz;
					    }
					    u_xlat0.xyz = u_xlat0.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat1.xyz = vec3(u_xlat12) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendMul2" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat12;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat2.xyz = vec3(u_xlat12) * u_xlat2.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat2.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					bool u_xlatb3;
					vec2 u_xlat4;
					float u_xlat12;
					int u_xlati12;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat1 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat1.x);
					    u_xlat0.x = float(0.0);
					    u_xlat0.y = float(0.0);
					    u_xlat0.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat1.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat3.x = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat3.x = u_xlat3.x * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat3.x = float(1.0) / u_xlat3.x;
					        u_xlat0.xyz = unity_LightColor[u_xlati_loop_1].xyz * u_xlat3.xxx + u_xlat0.xyz;
					    }
					    u_xlat0.xyz = u_xlat0.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat1.xyz = vec3(u_xlat12) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendMul2" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat12;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat2.xyz = vec3(u_xlat12) * u_xlat2.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat2.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					bool u_xlatb3;
					vec2 u_xlat4;
					float u_xlat12;
					int u_xlati12;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat1 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat1.x);
					    u_xlat0.x = float(0.0);
					    u_xlat0.y = float(0.0);
					    u_xlat0.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat1.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat3.x = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat3.x = u_xlat3.x * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat3.x = float(1.0) / u_xlat3.x;
					        u_xlat0.xyz = unity_LightColor[u_xlati_loop_1].xyz * u_xlat3.xxx + u_xlat0.xyz;
					    }
					    u_xlat0.xyz = u_xlat0.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat1.xyz = vec3(u_xlat12) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendMul2" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat12;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat2.xyz = vec3(u_xlat12) * u_xlat2.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat2.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					bool u_xlatb3;
					vec2 u_xlat4;
					float u_xlat12;
					int u_xlati12;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat1 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat1.x);
					    u_xlat0.x = float(0.0);
					    u_xlat0.y = float(0.0);
					    u_xlat0.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat1.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat3.x = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat3.x = u_xlat3.x * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat3.x = float(1.0) / u_xlat3.x;
					        u_xlat0.xyz = unity_LightColor[u_xlati_loop_1].xyz * u_xlat3.xxx + u_xlat0.xyz;
					    }
					    u_xlat0.xyz = u_xlat0.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat1.xyz = vec3(u_xlat12) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendMul2" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat12;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat2.xyz = vec3(u_xlat12) * u_xlat2.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat2.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					bool u_xlatb3;
					vec2 u_xlat4;
					float u_xlat12;
					int u_xlati12;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat1 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat1.x);
					    u_xlat0.x = float(0.0);
					    u_xlat0.y = float(0.0);
					    u_xlat0.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat1.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat3.x = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat3.x = u_xlat3.x * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat3.x = float(1.0) / u_xlat3.x;
					        u_xlat0.xyz = unity_LightColor[u_xlati_loop_1].xyz * u_xlat3.xxx + u_xlat0.xyz;
					    }
					    u_xlat0.xyz = u_xlat0.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat1.xyz = vec3(u_xlat12) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendMul2" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat12;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat2.xyz = vec3(u_xlat12) * u_xlat2.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat2.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					bool u_xlatb3;
					vec2 u_xlat4;
					float u_xlat12;
					int u_xlati12;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat1 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat1.x);
					    u_xlat0.x = float(0.0);
					    u_xlat0.y = float(0.0);
					    u_xlat0.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat1.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat3.x = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat3.x = u_xlat3.x * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat3.x = float(1.0) / u_xlat3.x;
					        u_xlat0.xyz = unity_LightColor[u_xlati_loop_1].xyz * u_xlat3.xxx + u_xlat0.xyz;
					    }
					    u_xlat0.xyz = u_xlat0.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat1.xyz = vec3(u_xlat12) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendMul2" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat12;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat2.xyz = vec3(u_xlat12) * u_xlat2.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat2.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					bool u_xlatb3;
					vec2 u_xlat4;
					float u_xlat12;
					int u_xlati12;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat1 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat1.x);
					    u_xlat0.x = float(0.0);
					    u_xlat0.y = float(0.0);
					    u_xlat0.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat1.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat3.x = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat3.x = u_xlat3.x * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat3.x = float(1.0) / u_xlat3.x;
					        u_xlat0.xyz = unity_LightColor[u_xlati_loop_1].xyz * u_xlat3.xxx + u_xlat0.xyz;
					    }
					    u_xlat0.xyz = u_xlat0.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat1.xyz = vec3(u_xlat12) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendMul2" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat12;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat2.xyz = vec3(u_xlat12) * u_xlat2.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat2.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					bool u_xlatb3;
					vec2 u_xlat4;
					float u_xlat12;
					int u_xlati12;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat1 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat1.x);
					    u_xlat0.x = float(0.0);
					    u_xlat0.y = float(0.0);
					    u_xlat0.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat1.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat3.x = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat3.x = u_xlat3.x * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat3.x = float(1.0) / u_xlat3.x;
					        u_xlat0.xyz = unity_LightColor[u_xlati_loop_1].xyz * u_xlat3.xxx + u_xlat0.xyz;
					    }
					    u_xlat0.xyz = u_xlat0.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat1.xyz = vec3(u_xlat12) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendMul2" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat12;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat2.xyz = vec3(u_xlat12) * u_xlat2.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat2.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					bool u_xlatb3;
					vec2 u_xlat4;
					float u_xlat12;
					int u_xlati12;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat1 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat1.x);
					    u_xlat0.x = float(0.0);
					    u_xlat0.y = float(0.0);
					    u_xlat0.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat1.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat3.x = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat3.x = u_xlat3.x * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat3.x = float(1.0) / u_xlat3.x;
					        u_xlat0.xyz = unity_LightColor[u_xlati_loop_1].xyz * u_xlat3.xxx + u_xlat0.xyz;
					    }
					    u_xlat0.xyz = u_xlat0.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat1.xyz = vec3(u_xlat12) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendMul2" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat12;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat2.xyz = vec3(u_xlat12) * u_xlat2.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat2.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					bool u_xlatb3;
					vec2 u_xlat4;
					float u_xlat12;
					int u_xlati12;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat1 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat1.x);
					    u_xlat0.x = float(0.0);
					    u_xlat0.y = float(0.0);
					    u_xlat0.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat1.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat3.x = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat3.x = u_xlat3.x * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat3.x = float(1.0) / u_xlat3.x;
					        u_xlat0.xyz = unity_LightColor[u_xlati_loop_1].xyz * u_xlat3.xxx + u_xlat0.xyz;
					    }
					    u_xlat0.xyz = u_xlat0.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat1.xyz = vec3(u_xlat12) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendMul2" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat12;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat2.xyz = vec3(u_xlat12) * u_xlat2.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat2.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					bool u_xlatb3;
					vec2 u_xlat4;
					float u_xlat12;
					int u_xlati12;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat1 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat1.x);
					    u_xlat0.x = float(0.0);
					    u_xlat0.y = float(0.0);
					    u_xlat0.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat1.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat3.x = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat3.x = u_xlat3.x * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat3.x = float(1.0) / u_xlat3.x;
					        u_xlat0.xyz = unity_LightColor[u_xlati_loop_1].xyz * u_xlat3.xxx + u_xlat0.xyz;
					    }
					    u_xlat0.xyz = u_xlat0.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat1.xyz = vec3(u_xlat12) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendMul2" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec2 u_xlat4;
					int u_xlati12;
					float u_xlat13;
					bool u_xlatb13;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat0 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat1.x = float(0.0);
					    u_xlat1.y = float(0.0);
					    u_xlat1.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat13 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat13 = u_xlat13 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat13 = float(1.0) / u_xlat13;
					        u_xlat1.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat13) + u_xlat1.xyz;
					    }
					    u_xlat0.xyz = u_xlat1.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendMul2" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec2 u_xlat4;
					int u_xlati12;
					float u_xlat13;
					bool u_xlatb13;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat0 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat1.x = float(0.0);
					    u_xlat1.y = float(0.0);
					    u_xlat1.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat13 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat13 = u_xlat13 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat13 = float(1.0) / u_xlat13;
					        u_xlat1.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat13) + u_xlat1.xyz;
					    }
					    u_xlat0.xyz = u_xlat1.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendMul2" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec2 u_xlat4;
					int u_xlati12;
					float u_xlat13;
					bool u_xlatb13;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat0 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat1.x = float(0.0);
					    u_xlat1.y = float(0.0);
					    u_xlat1.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat13 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat13 = u_xlat13 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat13 = float(1.0) / u_xlat13;
					        u_xlat1.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat13) + u_xlat1.xyz;
					    }
					    u_xlat0.xyz = u_xlat1.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendMul2" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec2 u_xlat4;
					int u_xlati12;
					float u_xlat13;
					bool u_xlatb13;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat0 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat1.x = float(0.0);
					    u_xlat1.y = float(0.0);
					    u_xlat1.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat13 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat13 = u_xlat13 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat13 = float(1.0) / u_xlat13;
					        u_xlat1.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat13) + u_xlat1.xyz;
					    }
					    u_xlat0.xyz = u_xlat1.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendMul2" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec2 u_xlat4;
					int u_xlati12;
					float u_xlat13;
					bool u_xlatb13;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat0 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat1.x = float(0.0);
					    u_xlat1.y = float(0.0);
					    u_xlat1.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat13 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat13 = u_xlat13 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat13 = float(1.0) / u_xlat13;
					        u_xlat1.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat13) + u_xlat1.xyz;
					    }
					    u_xlat0.xyz = u_xlat1.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendMul2" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec2 u_xlat4;
					int u_xlati12;
					float u_xlat13;
					bool u_xlatb13;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat0 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat1.x = float(0.0);
					    u_xlat1.y = float(0.0);
					    u_xlat1.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat13 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat13 = u_xlat13 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat13 = float(1.0) / u_xlat13;
					        u_xlat1.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat13) + u_xlat1.xyz;
					    }
					    u_xlat0.xyz = u_xlat1.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendMul2" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec2 u_xlat4;
					int u_xlati12;
					float u_xlat13;
					bool u_xlatb13;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat0 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat1.x = float(0.0);
					    u_xlat1.y = float(0.0);
					    u_xlat1.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat13 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat13 = u_xlat13 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat13 = float(1.0) / u_xlat13;
					        u_xlat1.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat13) + u_xlat1.xyz;
					    }
					    u_xlat0.xyz = u_xlat1.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendMul2" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec2 u_xlat4;
					int u_xlati12;
					float u_xlat13;
					bool u_xlatb13;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat0 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat1.x = float(0.0);
					    u_xlat1.y = float(0.0);
					    u_xlat1.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat13 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat13 = u_xlat13 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat13 = float(1.0) / u_xlat13;
					        u_xlat1.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat13) + u_xlat1.xyz;
					    }
					    u_xlat0.xyz = u_xlat1.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendMul2" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec2 u_xlat4;
					int u_xlati12;
					float u_xlat13;
					bool u_xlatb13;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat0 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat1.x = float(0.0);
					    u_xlat1.y = float(0.0);
					    u_xlat1.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat13 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat13 = u_xlat13 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat13 = float(1.0) / u_xlat13;
					        u_xlat1.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat13) + u_xlat1.xyz;
					    }
					    u_xlat0.xyz = u_xlat1.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendMul2" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec2 u_xlat4;
					int u_xlati12;
					float u_xlat13;
					bool u_xlatb13;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat0 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat1.x = float(0.0);
					    u_xlat1.y = float(0.0);
					    u_xlat1.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat13 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat13 = u_xlat13 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat13 = float(1.0) / u_xlat13;
					        u_xlat1.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat13) + u_xlat1.xyz;
					    }
					    u_xlat0.xyz = u_xlat1.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendMul2" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec2 u_xlat4;
					int u_xlati12;
					float u_xlat13;
					bool u_xlatb13;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat0 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat1.x = float(0.0);
					    u_xlat1.y = float(0.0);
					    u_xlat1.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat13 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat13 = u_xlat13 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat13 = float(1.0) / u_xlat13;
					        u_xlat1.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat13) + u_xlat1.xyz;
					    }
					    u_xlat0.xyz = u_xlat1.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendMul2" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec2 u_xlat4;
					int u_xlati12;
					float u_xlat13;
					bool u_xlatb13;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat0 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat1.x = float(0.0);
					    u_xlat1.y = float(0.0);
					    u_xlat1.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat13 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat13 = u_xlat13 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat13 = float(1.0) / u_xlat13;
					        u_xlat1.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat13) + u_xlat1.xyz;
					    }
					    u_xlat0.xyz = u_xlat1.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendMul2" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec2 u_xlat4;
					int u_xlati12;
					float u_xlat13;
					bool u_xlatb13;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat0 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat1.x = float(0.0);
					    u_xlat1.y = float(0.0);
					    u_xlat1.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat13 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat13 = u_xlat13 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat13 = float(1.0) / u_xlat13;
					        u_xlat1.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat13) + u_xlat1.xyz;
					    }
					    u_xlat0.xyz = u_xlat1.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendMul2" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec2 u_xlat4;
					int u_xlati12;
					float u_xlat13;
					bool u_xlatb13;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat0 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat1.x = float(0.0);
					    u_xlat1.y = float(0.0);
					    u_xlat1.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat13 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat13 = u_xlat13 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat13 = float(1.0) / u_xlat13;
					        u_xlat1.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat13) + u_xlat1.xyz;
					    }
					    u_xlat0.xyz = u_xlat1.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendMul2" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec2 u_xlat4;
					int u_xlati12;
					float u_xlat13;
					bool u_xlatb13;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat0 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat1.x = float(0.0);
					    u_xlat1.y = float(0.0);
					    u_xlat1.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat13 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat13 = u_xlat13 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat13 = float(1.0) / u_xlat13;
					        u_xlat1.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat13) + u_xlat1.xyz;
					    }
					    u_xlat0.xyz = u_xlat1.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendMul2" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec2 u_xlat4;
					int u_xlati12;
					float u_xlat13;
					bool u_xlatb13;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat0 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat1.x = float(0.0);
					    u_xlat1.y = float(0.0);
					    u_xlat1.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat13 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat13 = u_xlat13 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat13 = float(1.0) / u_xlat13;
					        u_xlat1.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat13) + u_xlat1.xyz;
					    }
					    u_xlat0.xyz = u_xlat1.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendMul2" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat12;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat2.xyz = vec3(u_xlat12) * u_xlat2.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat2.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					bool u_xlatb3;
					vec2 u_xlat4;
					float u_xlat12;
					int u_xlati12;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat1 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat1.x);
					    u_xlat0.x = float(0.0);
					    u_xlat0.y = float(0.0);
					    u_xlat0.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat1.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat3.x = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat3.x = u_xlat3.x * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat3.x = float(1.0) / u_xlat3.x;
					        u_xlat0.xyz = unity_LightColor[u_xlati_loop_1].xyz * u_xlat3.xxx + u_xlat0.xyz;
					    }
					    u_xlat0.xyz = u_xlat0.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat1.xyz = vec3(u_xlat12) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendMul2" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat12;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat2.xyz = vec3(u_xlat12) * u_xlat2.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat2.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					bool u_xlatb3;
					vec2 u_xlat4;
					float u_xlat12;
					int u_xlati12;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat1 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat1.x);
					    u_xlat0.x = float(0.0);
					    u_xlat0.y = float(0.0);
					    u_xlat0.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat1.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat3.x = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat3.x = u_xlat3.x * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat3.x = float(1.0) / u_xlat3.x;
					        u_xlat0.xyz = unity_LightColor[u_xlati_loop_1].xyz * u_xlat3.xxx + u_xlat0.xyz;
					    }
					    u_xlat0.xyz = u_xlat0.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat1.xyz = vec3(u_xlat12) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendMul2" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat12;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat2.xyz = vec3(u_xlat12) * u_xlat2.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat2.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					bool u_xlatb3;
					vec2 u_xlat4;
					float u_xlat12;
					int u_xlati12;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat1 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat1.x);
					    u_xlat0.x = float(0.0);
					    u_xlat0.y = float(0.0);
					    u_xlat0.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat1.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat3.x = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat3.x = u_xlat3.x * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat3.x = float(1.0) / u_xlat3.x;
					        u_xlat0.xyz = unity_LightColor[u_xlati_loop_1].xyz * u_xlat3.xxx + u_xlat0.xyz;
					    }
					    u_xlat0.xyz = u_xlat0.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat1.xyz = vec3(u_xlat12) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendMul2" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat12;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat2.xyz = vec3(u_xlat12) * u_xlat2.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat2.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					bool u_xlatb3;
					vec2 u_xlat4;
					float u_xlat12;
					int u_xlati12;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat1 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat1.x);
					    u_xlat0.x = float(0.0);
					    u_xlat0.y = float(0.0);
					    u_xlat0.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat1.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat3.x = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat3.x = u_xlat3.x * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat3.x = float(1.0) / u_xlat3.x;
					        u_xlat0.xyz = unity_LightColor[u_xlati_loop_1].xyz * u_xlat3.xxx + u_xlat0.xyz;
					    }
					    u_xlat0.xyz = u_xlat0.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat1.xyz = vec3(u_xlat12) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendMul2" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat12;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat2.xyz = vec3(u_xlat12) * u_xlat2.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat2.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					bool u_xlatb3;
					vec2 u_xlat4;
					float u_xlat12;
					int u_xlati12;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat1 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat1.x);
					    u_xlat0.x = float(0.0);
					    u_xlat0.y = float(0.0);
					    u_xlat0.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat1.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat3.x = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat3.x = u_xlat3.x * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat3.x = float(1.0) / u_xlat3.x;
					        u_xlat0.xyz = unity_LightColor[u_xlati_loop_1].xyz * u_xlat3.xxx + u_xlat0.xyz;
					    }
					    u_xlat0.xyz = u_xlat0.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat1.xyz = vec3(u_xlat12) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendMul2" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat12;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat2.xyz = vec3(u_xlat12) * u_xlat2.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat2.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					bool u_xlatb3;
					vec2 u_xlat4;
					float u_xlat12;
					int u_xlati12;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat1 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat1.x);
					    u_xlat0.x = float(0.0);
					    u_xlat0.y = float(0.0);
					    u_xlat0.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat1.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat3.x = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat3.x = u_xlat3.x * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat3.x = float(1.0) / u_xlat3.x;
					        u_xlat0.xyz = unity_LightColor[u_xlati_loop_1].xyz * u_xlat3.xxx + u_xlat0.xyz;
					    }
					    u_xlat0.xyz = u_xlat0.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat1.xyz = vec3(u_xlat12) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendMul2" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat12;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat2.xyz = vec3(u_xlat12) * u_xlat2.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat2.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					bool u_xlatb3;
					vec2 u_xlat4;
					float u_xlat12;
					int u_xlati12;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat1 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat1.x);
					    u_xlat0.x = float(0.0);
					    u_xlat0.y = float(0.0);
					    u_xlat0.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat1.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat3.x = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat3.x = u_xlat3.x * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat3.x = float(1.0) / u_xlat3.x;
					        u_xlat0.xyz = unity_LightColor[u_xlati_loop_1].xyz * u_xlat3.xxx + u_xlat0.xyz;
					    }
					    u_xlat0.xyz = u_xlat0.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat1.xyz = vec3(u_xlat12) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendMul2" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat12;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat2.xyz = vec3(u_xlat12) * u_xlat2.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat2.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					bool u_xlatb3;
					vec2 u_xlat4;
					float u_xlat12;
					int u_xlati12;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat1 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat1.x);
					    u_xlat0.x = float(0.0);
					    u_xlat0.y = float(0.0);
					    u_xlat0.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat1.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat3.x = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat3.x = u_xlat3.x * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat3.x = float(1.0) / u_xlat3.x;
					        u_xlat0.xyz = unity_LightColor[u_xlati_loop_1].xyz * u_xlat3.xxx + u_xlat0.xyz;
					    }
					    u_xlat0.xyz = u_xlat0.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat1.xyz = vec3(u_xlat12) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendMul2" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat12;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat2.xyz = vec3(u_xlat12) * u_xlat2.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat2.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					bool u_xlatb3;
					vec2 u_xlat4;
					float u_xlat12;
					int u_xlati12;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat1 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat1.x);
					    u_xlat0.x = float(0.0);
					    u_xlat0.y = float(0.0);
					    u_xlat0.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat1.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat3.x = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat3.x = u_xlat3.x * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat3.x = float(1.0) / u_xlat3.x;
					        u_xlat0.xyz = unity_LightColor[u_xlati_loop_1].xyz * u_xlat3.xxx + u_xlat0.xyz;
					    }
					    u_xlat0.xyz = u_xlat0.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat1.xyz = vec3(u_xlat12) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendMul2" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat12;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat2.xyz = vec3(u_xlat12) * u_xlat2.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat2.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					bool u_xlatb3;
					vec2 u_xlat4;
					float u_xlat12;
					int u_xlati12;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat1 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat1.x);
					    u_xlat0.x = float(0.0);
					    u_xlat0.y = float(0.0);
					    u_xlat0.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat1.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat3.x = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat3.x = u_xlat3.x * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat3.x = float(1.0) / u_xlat3.x;
					        u_xlat0.xyz = unity_LightColor[u_xlati_loop_1].xyz * u_xlat3.xxx + u_xlat0.xyz;
					    }
					    u_xlat0.xyz = u_xlat0.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat1.xyz = vec3(u_xlat12) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendMul2" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat12;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat2.xyz = vec3(u_xlat12) * u_xlat2.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat2.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					bool u_xlatb3;
					vec2 u_xlat4;
					float u_xlat12;
					int u_xlati12;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat1 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat1.x);
					    u_xlat0.x = float(0.0);
					    u_xlat0.y = float(0.0);
					    u_xlat0.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat1.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat3.x = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat3.x = u_xlat3.x * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat3.x = float(1.0) / u_xlat3.x;
					        u_xlat0.xyz = unity_LightColor[u_xlati_loop_1].xyz * u_xlat3.xxx + u_xlat0.xyz;
					    }
					    u_xlat0.xyz = u_xlat0.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat1.xyz = vec3(u_xlat12) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendMul2" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat12;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat2.xyz = vec3(u_xlat12) * u_xlat2.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat2.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					bool u_xlatb3;
					vec2 u_xlat4;
					float u_xlat12;
					int u_xlati12;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat1 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat1.x);
					    u_xlat0.x = float(0.0);
					    u_xlat0.y = float(0.0);
					    u_xlat0.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat1.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat3.x = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat3.x = u_xlat3.x * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat3.x = float(1.0) / u_xlat3.x;
					        u_xlat0.xyz = unity_LightColor[u_xlati_loop_1].xyz * u_xlat3.xxx + u_xlat0.xyz;
					    }
					    u_xlat0.xyz = u_xlat0.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat1.xyz = vec3(u_xlat12) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendMul2" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat12;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat2.xyz = vec3(u_xlat12) * u_xlat2.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat2.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					bool u_xlatb3;
					vec2 u_xlat4;
					float u_xlat12;
					int u_xlati12;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat1 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat1.x);
					    u_xlat0.x = float(0.0);
					    u_xlat0.y = float(0.0);
					    u_xlat0.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat1.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat3.x = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat3.x = u_xlat3.x * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat3.x = float(1.0) / u_xlat3.x;
					        u_xlat0.xyz = unity_LightColor[u_xlati_loop_1].xyz * u_xlat3.xxx + u_xlat0.xyz;
					    }
					    u_xlat0.xyz = u_xlat0.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat1.xyz = vec3(u_xlat12) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendMul2" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat12;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat2.xyz = vec3(u_xlat12) * u_xlat2.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat2.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					bool u_xlatb3;
					vec2 u_xlat4;
					float u_xlat12;
					int u_xlati12;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat1 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat1.x);
					    u_xlat0.x = float(0.0);
					    u_xlat0.y = float(0.0);
					    u_xlat0.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat1.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat3.x = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat3.x = u_xlat3.x * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat3.x = float(1.0) / u_xlat3.x;
					        u_xlat0.xyz = unity_LightColor[u_xlati_loop_1].xyz * u_xlat3.xxx + u_xlat0.xyz;
					    }
					    u_xlat0.xyz = u_xlat0.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat1.xyz = vec3(u_xlat12) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendMul2" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat12;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat2.xyz = vec3(u_xlat12) * u_xlat2.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat2.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					bool u_xlatb3;
					vec2 u_xlat4;
					float u_xlat12;
					int u_xlati12;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat1 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat1.x);
					    u_xlat0.x = float(0.0);
					    u_xlat0.y = float(0.0);
					    u_xlat0.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat1.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat3.x = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat3.x = u_xlat3.x * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat3.x = float(1.0) / u_xlat3.x;
					        u_xlat0.xyz = unity_LightColor[u_xlati_loop_1].xyz * u_xlat3.xxx + u_xlat0.xyz;
					    }
					    u_xlat0.xyz = u_xlat0.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat1.xyz = vec3(u_xlat12) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendMul2" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat12;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat2.xyz = vec3(u_xlat12) * u_xlat2.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat2.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					bool u_xlatb3;
					vec2 u_xlat4;
					float u_xlat12;
					int u_xlati12;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat1 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat1.x);
					    u_xlat0.x = float(0.0);
					    u_xlat0.y = float(0.0);
					    u_xlat0.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat1.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat3.x = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat3.x = u_xlat3.x * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat3.x = float(1.0) / u_xlat3.x;
					        u_xlat0.xyz = unity_LightColor[u_xlati_loop_1].xyz * u_xlat3.xxx + u_xlat0.xyz;
					    }
					    u_xlat0.xyz = u_xlat0.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat1.xyz = vec3(u_xlat12) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendMul2" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec2 u_xlat4;
					int u_xlati12;
					float u_xlat13;
					bool u_xlatb13;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat0 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat1.x = float(0.0);
					    u_xlat1.y = float(0.0);
					    u_xlat1.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat13 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat13 = u_xlat13 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat13 = float(1.0) / u_xlat13;
					        u_xlat1.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat13) + u_xlat1.xyz;
					    }
					    u_xlat0.xyz = u_xlat1.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendMul2" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec2 u_xlat4;
					int u_xlati12;
					float u_xlat13;
					bool u_xlatb13;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat0 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat1.x = float(0.0);
					    u_xlat1.y = float(0.0);
					    u_xlat1.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat13 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat13 = u_xlat13 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat13 = float(1.0) / u_xlat13;
					        u_xlat1.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat13) + u_xlat1.xyz;
					    }
					    u_xlat0.xyz = u_xlat1.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendMul2" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec2 u_xlat4;
					int u_xlati12;
					float u_xlat13;
					bool u_xlatb13;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat0 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat1.x = float(0.0);
					    u_xlat1.y = float(0.0);
					    u_xlat1.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat13 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat13 = u_xlat13 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat13 = float(1.0) / u_xlat13;
					        u_xlat1.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat13) + u_xlat1.xyz;
					    }
					    u_xlat0.xyz = u_xlat1.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendMul2" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec2 u_xlat4;
					int u_xlati12;
					float u_xlat13;
					bool u_xlatb13;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat0 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat1.x = float(0.0);
					    u_xlat1.y = float(0.0);
					    u_xlat1.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat13 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat13 = u_xlat13 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat13 = float(1.0) / u_xlat13;
					        u_xlat1.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat13) + u_xlat1.xyz;
					    }
					    u_xlat0.xyz = u_xlat1.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendMul2" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec2 u_xlat4;
					int u_xlati12;
					float u_xlat13;
					bool u_xlatb13;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat0 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat1.x = float(0.0);
					    u_xlat1.y = float(0.0);
					    u_xlat1.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat13 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat13 = u_xlat13 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat13 = float(1.0) / u_xlat13;
					        u_xlat1.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat13) + u_xlat1.xyz;
					    }
					    u_xlat0.xyz = u_xlat1.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendMul2" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec2 u_xlat4;
					int u_xlati12;
					float u_xlat13;
					bool u_xlatb13;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat0 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat1.x = float(0.0);
					    u_xlat1.y = float(0.0);
					    u_xlat1.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat13 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat13 = u_xlat13 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat13 = float(1.0) / u_xlat13;
					        u_xlat1.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat13) + u_xlat1.xyz;
					    }
					    u_xlat0.xyz = u_xlat1.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendMul2" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec2 u_xlat4;
					int u_xlati12;
					float u_xlat13;
					bool u_xlatb13;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat0 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat1.x = float(0.0);
					    u_xlat1.y = float(0.0);
					    u_xlat1.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat13 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat13 = u_xlat13 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat13 = float(1.0) / u_xlat13;
					        u_xlat1.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat13) + u_xlat1.xyz;
					    }
					    u_xlat0.xyz = u_xlat1.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendMul2" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec2 u_xlat4;
					int u_xlati12;
					float u_xlat13;
					bool u_xlatb13;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat0 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat1.x = float(0.0);
					    u_xlat1.y = float(0.0);
					    u_xlat1.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat13 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat13 = u_xlat13 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat13 = float(1.0) / u_xlat13;
					        u_xlat1.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat13) + u_xlat1.xyz;
					    }
					    u_xlat0.xyz = u_xlat1.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendMul2" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec2 u_xlat4;
					int u_xlati12;
					float u_xlat13;
					bool u_xlatb13;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat0 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat1.x = float(0.0);
					    u_xlat1.y = float(0.0);
					    u_xlat1.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat13 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat13 = u_xlat13 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat13 = float(1.0) / u_xlat13;
					        u_xlat1.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat13) + u_xlat1.xyz;
					    }
					    u_xlat0.xyz = u_xlat1.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendMul2" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec2 u_xlat4;
					int u_xlati12;
					float u_xlat13;
					bool u_xlatb13;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat0 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat1.x = float(0.0);
					    u_xlat1.y = float(0.0);
					    u_xlat1.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat13 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat13 = u_xlat13 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat13 = float(1.0) / u_xlat13;
					        u_xlat1.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat13) + u_xlat1.xyz;
					    }
					    u_xlat0.xyz = u_xlat1.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendMul2" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec2 u_xlat4;
					int u_xlati12;
					float u_xlat13;
					bool u_xlatb13;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat0 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat1.x = float(0.0);
					    u_xlat1.y = float(0.0);
					    u_xlat1.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat13 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat13 = u_xlat13 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat13 = float(1.0) / u_xlat13;
					        u_xlat1.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat13) + u_xlat1.xyz;
					    }
					    u_xlat0.xyz = u_xlat1.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendMul2" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec2 u_xlat4;
					int u_xlati12;
					float u_xlat13;
					bool u_xlatb13;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat0 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat1.x = float(0.0);
					    u_xlat1.y = float(0.0);
					    u_xlat1.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat13 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat13 = u_xlat13 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat13 = float(1.0) / u_xlat13;
					        u_xlat1.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat13) + u_xlat1.xyz;
					    }
					    u_xlat0.xyz = u_xlat1.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendMul2" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec2 u_xlat4;
					int u_xlati12;
					float u_xlat13;
					bool u_xlatb13;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat0 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat1.x = float(0.0);
					    u_xlat1.y = float(0.0);
					    u_xlat1.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat13 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat13 = u_xlat13 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat13 = float(1.0) / u_xlat13;
					        u_xlat1.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat13) + u_xlat1.xyz;
					    }
					    u_xlat0.xyz = u_xlat1.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendMul2" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec2 u_xlat4;
					int u_xlati12;
					float u_xlat13;
					bool u_xlatb13;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat0 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat1.x = float(0.0);
					    u_xlat1.y = float(0.0);
					    u_xlat1.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat13 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat13 = u_xlat13 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat13 = float(1.0) / u_xlat13;
					        u_xlat1.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat13) + u_xlat1.xyz;
					    }
					    u_xlat0.xyz = u_xlat1.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendMul2" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec2 u_xlat4;
					int u_xlati12;
					float u_xlat13;
					bool u_xlatb13;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat0 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat1.x = float(0.0);
					    u_xlat1.y = float(0.0);
					    u_xlat1.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat13 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat13 = u_xlat13 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat13 = float(1.0) / u_xlat13;
					        u_xlat1.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat13) + u_xlat1.xyz;
					    }
					    u_xlat0.xyz = u_xlat1.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendMul2" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec2 u_xlat4;
					int u_xlati12;
					float u_xlat13;
					bool u_xlatb13;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat0 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat1.x = float(0.0);
					    u_xlat1.y = float(0.0);
					    u_xlat1.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat13 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat13 = u_xlat13 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat13 = float(1.0) / u_xlat13;
					        u_xlat1.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat13) + u_xlat1.xyz;
					    }
					    u_xlat0.xyz = u_xlat1.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendMul2" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat12;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat2.xyz = vec3(u_xlat12) * u_xlat2.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat2.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					bool u_xlatb3;
					vec2 u_xlat4;
					float u_xlat12;
					int u_xlati12;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat1 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat1.x);
					    u_xlat0.x = float(0.0);
					    u_xlat0.y = float(0.0);
					    u_xlat0.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat1.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat3.x = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat3.x = u_xlat3.x * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat3.x = float(1.0) / u_xlat3.x;
					        u_xlat0.xyz = unity_LightColor[u_xlati_loop_1].xyz * u_xlat3.xxx + u_xlat0.xyz;
					    }
					    u_xlat0.xyz = u_xlat0.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat1.xyz = vec3(u_xlat12) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendMul2" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat12;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat2.xyz = vec3(u_xlat12) * u_xlat2.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat2.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					bool u_xlatb3;
					vec2 u_xlat4;
					float u_xlat12;
					int u_xlati12;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat1 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat1.x);
					    u_xlat0.x = float(0.0);
					    u_xlat0.y = float(0.0);
					    u_xlat0.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat1.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat3.x = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat3.x = u_xlat3.x * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat3.x = float(1.0) / u_xlat3.x;
					        u_xlat0.xyz = unity_LightColor[u_xlati_loop_1].xyz * u_xlat3.xxx + u_xlat0.xyz;
					    }
					    u_xlat0.xyz = u_xlat0.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat1.xyz = vec3(u_xlat12) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendMul2" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat12;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat2.xyz = vec3(u_xlat12) * u_xlat2.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat2.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					bool u_xlatb3;
					vec2 u_xlat4;
					float u_xlat12;
					int u_xlati12;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat1 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat1.x);
					    u_xlat0.x = float(0.0);
					    u_xlat0.y = float(0.0);
					    u_xlat0.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat1.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat3.x = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat3.x = u_xlat3.x * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat3.x = float(1.0) / u_xlat3.x;
					        u_xlat0.xyz = unity_LightColor[u_xlati_loop_1].xyz * u_xlat3.xxx + u_xlat0.xyz;
					    }
					    u_xlat0.xyz = u_xlat0.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat1.xyz = vec3(u_xlat12) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendMul2" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat12;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat2.xyz = vec3(u_xlat12) * u_xlat2.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat2.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					bool u_xlatb3;
					vec2 u_xlat4;
					float u_xlat12;
					int u_xlati12;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat1 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat1.x);
					    u_xlat0.x = float(0.0);
					    u_xlat0.y = float(0.0);
					    u_xlat0.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat1.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat3.x = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat3.x = u_xlat3.x * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat3.x = float(1.0) / u_xlat3.x;
					        u_xlat0.xyz = unity_LightColor[u_xlati_loop_1].xyz * u_xlat3.xxx + u_xlat0.xyz;
					    }
					    u_xlat0.xyz = u_xlat0.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat1.xyz = vec3(u_xlat12) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendMul2" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat12;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat2.xyz = vec3(u_xlat12) * u_xlat2.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat2.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					bool u_xlatb3;
					vec2 u_xlat4;
					float u_xlat12;
					int u_xlati12;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat1 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat1.x);
					    u_xlat0.x = float(0.0);
					    u_xlat0.y = float(0.0);
					    u_xlat0.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat1.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat3.x = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat3.x = u_xlat3.x * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat3.x = float(1.0) / u_xlat3.x;
					        u_xlat0.xyz = unity_LightColor[u_xlati_loop_1].xyz * u_xlat3.xxx + u_xlat0.xyz;
					    }
					    u_xlat0.xyz = u_xlat0.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat1.xyz = vec3(u_xlat12) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendMul2" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat12;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat2.xyz = vec3(u_xlat12) * u_xlat2.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat2.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					bool u_xlatb3;
					vec2 u_xlat4;
					float u_xlat12;
					int u_xlati12;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat1 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat1.x);
					    u_xlat0.x = float(0.0);
					    u_xlat0.y = float(0.0);
					    u_xlat0.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat1.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat3.x = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat3.x = u_xlat3.x * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat3.x = float(1.0) / u_xlat3.x;
					        u_xlat0.xyz = unity_LightColor[u_xlati_loop_1].xyz * u_xlat3.xxx + u_xlat0.xyz;
					    }
					    u_xlat0.xyz = u_xlat0.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat1.xyz = vec3(u_xlat12) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendMul2" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat12;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat2.xyz = vec3(u_xlat12) * u_xlat2.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat2.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					bool u_xlatb3;
					vec2 u_xlat4;
					float u_xlat12;
					int u_xlati12;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat1 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat1.x);
					    u_xlat0.x = float(0.0);
					    u_xlat0.y = float(0.0);
					    u_xlat0.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat1.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat3.x = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat3.x = u_xlat3.x * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat3.x = float(1.0) / u_xlat3.x;
					        u_xlat0.xyz = unity_LightColor[u_xlati_loop_1].xyz * u_xlat3.xxx + u_xlat0.xyz;
					    }
					    u_xlat0.xyz = u_xlat0.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat1.xyz = vec3(u_xlat12) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendMul2" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat12;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat2.xyz = vec3(u_xlat12) * u_xlat2.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat2.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					bool u_xlatb3;
					vec2 u_xlat4;
					float u_xlat12;
					int u_xlati12;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat1 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat1.x);
					    u_xlat0.x = float(0.0);
					    u_xlat0.y = float(0.0);
					    u_xlat0.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat1.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat3.x = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat3.x = u_xlat3.x * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat3.x = float(1.0) / u_xlat3.x;
					        u_xlat0.xyz = unity_LightColor[u_xlati_loop_1].xyz * u_xlat3.xxx + u_xlat0.xyz;
					    }
					    u_xlat0.xyz = u_xlat0.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat1.xyz = vec3(u_xlat12) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendMul2" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat12;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat2.xyz = vec3(u_xlat12) * u_xlat2.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat2.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					bool u_xlatb3;
					vec2 u_xlat4;
					float u_xlat12;
					int u_xlati12;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat1 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat1.x);
					    u_xlat0.x = float(0.0);
					    u_xlat0.y = float(0.0);
					    u_xlat0.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat1.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat3.x = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat3.x = u_xlat3.x * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat3.x = float(1.0) / u_xlat3.x;
					        u_xlat0.xyz = unity_LightColor[u_xlati_loop_1].xyz * u_xlat3.xxx + u_xlat0.xyz;
					    }
					    u_xlat0.xyz = u_xlat0.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat1.xyz = vec3(u_xlat12) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendMul2" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat12;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat2.xyz = vec3(u_xlat12) * u_xlat2.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat2.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					bool u_xlatb3;
					vec2 u_xlat4;
					float u_xlat12;
					int u_xlati12;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat1 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat1.x);
					    u_xlat0.x = float(0.0);
					    u_xlat0.y = float(0.0);
					    u_xlat0.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat1.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat3.x = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat3.x = u_xlat3.x * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat3.x = float(1.0) / u_xlat3.x;
					        u_xlat0.xyz = unity_LightColor[u_xlati_loop_1].xyz * u_xlat3.xxx + u_xlat0.xyz;
					    }
					    u_xlat0.xyz = u_xlat0.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat1.xyz = vec3(u_xlat12) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendMul2" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat12;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat2.xyz = vec3(u_xlat12) * u_xlat2.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat2.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					bool u_xlatb3;
					vec2 u_xlat4;
					float u_xlat12;
					int u_xlati12;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat1 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat1.x);
					    u_xlat0.x = float(0.0);
					    u_xlat0.y = float(0.0);
					    u_xlat0.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat1.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat3.x = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat3.x = u_xlat3.x * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat3.x = float(1.0) / u_xlat3.x;
					        u_xlat0.xyz = unity_LightColor[u_xlati_loop_1].xyz * u_xlat3.xxx + u_xlat0.xyz;
					    }
					    u_xlat0.xyz = u_xlat0.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat1.xyz = vec3(u_xlat12) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendMul2" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat12;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat2.xyz = vec3(u_xlat12) * u_xlat2.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat2.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					bool u_xlatb3;
					vec2 u_xlat4;
					float u_xlat12;
					int u_xlati12;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat1 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat1.x);
					    u_xlat0.x = float(0.0);
					    u_xlat0.y = float(0.0);
					    u_xlat0.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat1.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat3.x = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat3.x = u_xlat3.x * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat3.x = float(1.0) / u_xlat3.x;
					        u_xlat0.xyz = unity_LightColor[u_xlati_loop_1].xyz * u_xlat3.xxx + u_xlat0.xyz;
					    }
					    u_xlat0.xyz = u_xlat0.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat1.xyz = vec3(u_xlat12) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendMul2" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat12;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat2.xyz = vec3(u_xlat12) * u_xlat2.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat2.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					bool u_xlatb3;
					vec2 u_xlat4;
					float u_xlat12;
					int u_xlati12;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat1 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat1.x);
					    u_xlat0.x = float(0.0);
					    u_xlat0.y = float(0.0);
					    u_xlat0.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat1.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat3.x = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat3.x = u_xlat3.x * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat3.x = float(1.0) / u_xlat3.x;
					        u_xlat0.xyz = unity_LightColor[u_xlati_loop_1].xyz * u_xlat3.xxx + u_xlat0.xyz;
					    }
					    u_xlat0.xyz = u_xlat0.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat1.xyz = vec3(u_xlat12) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendMul2" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat12;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat2.xyz = vec3(u_xlat12) * u_xlat2.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat2.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					bool u_xlatb3;
					vec2 u_xlat4;
					float u_xlat12;
					int u_xlati12;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat1 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat1.x);
					    u_xlat0.x = float(0.0);
					    u_xlat0.y = float(0.0);
					    u_xlat0.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat1.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat3.x = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat3.x = u_xlat3.x * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat3.x = float(1.0) / u_xlat3.x;
					        u_xlat0.xyz = unity_LightColor[u_xlati_loop_1].xyz * u_xlat3.xxx + u_xlat0.xyz;
					    }
					    u_xlat0.xyz = u_xlat0.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat1.xyz = vec3(u_xlat12) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendMul2" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat12;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat2.xyz = vec3(u_xlat12) * u_xlat2.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat2.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					bool u_xlatb3;
					vec2 u_xlat4;
					float u_xlat12;
					int u_xlati12;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat1 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat1.x);
					    u_xlat0.x = float(0.0);
					    u_xlat0.y = float(0.0);
					    u_xlat0.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat1.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat3.x = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat3.x = u_xlat3.x * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat3.x = float(1.0) / u_xlat3.x;
					        u_xlat0.xyz = unity_LightColor[u_xlati_loop_1].xyz * u_xlat3.xxx + u_xlat0.xyz;
					    }
					    u_xlat0.xyz = u_xlat0.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat1.xyz = vec3(u_xlat12) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendMul2" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat12;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat2.xyz = vec3(u_xlat12) * u_xlat2.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat2.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					bool u_xlatb3;
					vec2 u_xlat4;
					float u_xlat12;
					int u_xlati12;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat1 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat1.x);
					    u_xlat0.x = float(0.0);
					    u_xlat0.y = float(0.0);
					    u_xlat0.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat1.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat3.x = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat3.x = u_xlat3.x * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat3.x = float(1.0) / u_xlat3.x;
					        u_xlat0.xyz = unity_LightColor[u_xlati_loop_1].xyz * u_xlat3.xxx + u_xlat0.xyz;
					    }
					    u_xlat0.xyz = u_xlat0.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat1.xyz = vec3(u_xlat12) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendMul2" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec2 u_xlat4;
					int u_xlati12;
					float u_xlat13;
					bool u_xlatb13;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat0 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat1.x = float(0.0);
					    u_xlat1.y = float(0.0);
					    u_xlat1.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat13 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat13 = u_xlat13 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat13 = float(1.0) / u_xlat13;
					        u_xlat1.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat13) + u_xlat1.xyz;
					    }
					    u_xlat0.xyz = u_xlat1.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendMul2" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec2 u_xlat4;
					int u_xlati12;
					float u_xlat13;
					bool u_xlatb13;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat0 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat1.x = float(0.0);
					    u_xlat1.y = float(0.0);
					    u_xlat1.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat13 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat13 = u_xlat13 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat13 = float(1.0) / u_xlat13;
					        u_xlat1.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat13) + u_xlat1.xyz;
					    }
					    u_xlat0.xyz = u_xlat1.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendMul2" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec2 u_xlat4;
					int u_xlati12;
					float u_xlat13;
					bool u_xlatb13;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat0 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat1.x = float(0.0);
					    u_xlat1.y = float(0.0);
					    u_xlat1.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat13 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat13 = u_xlat13 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat13 = float(1.0) / u_xlat13;
					        u_xlat1.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat13) + u_xlat1.xyz;
					    }
					    u_xlat0.xyz = u_xlat1.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendMul2" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec2 u_xlat4;
					int u_xlati12;
					float u_xlat13;
					bool u_xlatb13;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat0 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat1.x = float(0.0);
					    u_xlat1.y = float(0.0);
					    u_xlat1.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat13 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat13 = u_xlat13 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat13 = float(1.0) / u_xlat13;
					        u_xlat1.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat13) + u_xlat1.xyz;
					    }
					    u_xlat0.xyz = u_xlat1.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendMul2" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec2 u_xlat4;
					int u_xlati12;
					float u_xlat13;
					bool u_xlatb13;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat0 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat1.x = float(0.0);
					    u_xlat1.y = float(0.0);
					    u_xlat1.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat13 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat13 = u_xlat13 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat13 = float(1.0) / u_xlat13;
					        u_xlat1.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat13) + u_xlat1.xyz;
					    }
					    u_xlat0.xyz = u_xlat1.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendMul2" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec2 u_xlat4;
					int u_xlati12;
					float u_xlat13;
					bool u_xlatb13;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat0 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat1.x = float(0.0);
					    u_xlat1.y = float(0.0);
					    u_xlat1.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat13 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat13 = u_xlat13 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat13 = float(1.0) / u_xlat13;
					        u_xlat1.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat13) + u_xlat1.xyz;
					    }
					    u_xlat0.xyz = u_xlat1.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendMul2" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec2 u_xlat4;
					int u_xlati12;
					float u_xlat13;
					bool u_xlatb13;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat0 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat1.x = float(0.0);
					    u_xlat1.y = float(0.0);
					    u_xlat1.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat13 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat13 = u_xlat13 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat13 = float(1.0) / u_xlat13;
					        u_xlat1.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat13) + u_xlat1.xyz;
					    }
					    u_xlat0.xyz = u_xlat1.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendMul2" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec2 u_xlat4;
					int u_xlati12;
					float u_xlat13;
					bool u_xlatb13;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat0 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat1.x = float(0.0);
					    u_xlat1.y = float(0.0);
					    u_xlat1.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat13 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat13 = u_xlat13 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat13 = float(1.0) / u_xlat13;
					        u_xlat1.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat13) + u_xlat1.xyz;
					    }
					    u_xlat0.xyz = u_xlat1.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendMul2" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec2 u_xlat4;
					int u_xlati12;
					float u_xlat13;
					bool u_xlatb13;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat0 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat1.x = float(0.0);
					    u_xlat1.y = float(0.0);
					    u_xlat1.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat13 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat13 = u_xlat13 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat13 = float(1.0) / u_xlat13;
					        u_xlat1.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat13) + u_xlat1.xyz;
					    }
					    u_xlat0.xyz = u_xlat1.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendMul2" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec2 u_xlat4;
					int u_xlati12;
					float u_xlat13;
					bool u_xlatb13;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat0 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat1.x = float(0.0);
					    u_xlat1.y = float(0.0);
					    u_xlat1.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat13 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat13 = u_xlat13 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat13 = float(1.0) / u_xlat13;
					        u_xlat1.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat13) + u_xlat1.xyz;
					    }
					    u_xlat0.xyz = u_xlat1.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendMul2" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec2 u_xlat4;
					int u_xlati12;
					float u_xlat13;
					bool u_xlatb13;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat0 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat1.x = float(0.0);
					    u_xlat1.y = float(0.0);
					    u_xlat1.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat13 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat13 = u_xlat13 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat13 = float(1.0) / u_xlat13;
					        u_xlat1.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat13) + u_xlat1.xyz;
					    }
					    u_xlat0.xyz = u_xlat1.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendMul2" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec2 u_xlat4;
					int u_xlati12;
					float u_xlat13;
					bool u_xlatb13;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat0 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat1.x = float(0.0);
					    u_xlat1.y = float(0.0);
					    u_xlat1.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat13 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat13 = u_xlat13 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat13 = float(1.0) / u_xlat13;
					        u_xlat1.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat13) + u_xlat1.xyz;
					    }
					    u_xlat0.xyz = u_xlat1.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendMul2" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec2 u_xlat4;
					int u_xlati12;
					float u_xlat13;
					bool u_xlatb13;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat0 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat1.x = float(0.0);
					    u_xlat1.y = float(0.0);
					    u_xlat1.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat13 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat13 = u_xlat13 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat13 = float(1.0) / u_xlat13;
					        u_xlat1.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat13) + u_xlat1.xyz;
					    }
					    u_xlat0.xyz = u_xlat1.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendMul2" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec2 u_xlat4;
					int u_xlati12;
					float u_xlat13;
					bool u_xlatb13;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat0 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat1.x = float(0.0);
					    u_xlat1.y = float(0.0);
					    u_xlat1.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat13 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat13 = u_xlat13 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat13 = float(1.0) / u_xlat13;
					        u_xlat1.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat13) + u_xlat1.xyz;
					    }
					    u_xlat0.xyz = u_xlat1.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendMul2" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec2 u_xlat4;
					int u_xlati12;
					float u_xlat13;
					bool u_xlatb13;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat0 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat1.x = float(0.0);
					    u_xlat1.y = float(0.0);
					    u_xlat1.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat13 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat13 = u_xlat13 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat13 = float(1.0) / u_xlat13;
					        u_xlat1.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat13) + u_xlat1.xyz;
					    }
					    u_xlat0.xyz = u_xlat1.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendMul2" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_3_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_6;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec2 u_xlat4;
					int u_xlati12;
					float u_xlat13;
					bool u_xlatb13;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat0 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat1.x = float(0.0);
					    u_xlat1.y = float(0.0);
					    u_xlat1.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat13 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat13 = u_xlat13 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat13 = float(1.0) / u_xlat13;
					        u_xlat1.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat13) + u_xlat1.xyz;
					    }
					    u_xlat0.xyz = u_xlat1.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendMul2" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat12;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat2.xyz = vec3(u_xlat12) * u_xlat2.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat2.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					bool u_xlatb3;
					vec2 u_xlat4;
					float u_xlat12;
					int u_xlati12;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat1 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat1.x);
					    u_xlat0.x = float(0.0);
					    u_xlat0.y = float(0.0);
					    u_xlat0.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat1.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat3.x = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat3.x = u_xlat3.x * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat3.x = float(1.0) / u_xlat3.x;
					        u_xlat0.xyz = unity_LightColor[u_xlati_loop_1].xyz * u_xlat3.xxx + u_xlat0.xyz;
					    }
					    u_xlat0.xyz = u_xlat0.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat1.xyz = vec3(u_xlat12) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendMul2" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat12;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat2.xyz = vec3(u_xlat12) * u_xlat2.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat2.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					bool u_xlatb3;
					vec2 u_xlat4;
					float u_xlat12;
					int u_xlati12;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat1 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat1.x);
					    u_xlat0.x = float(0.0);
					    u_xlat0.y = float(0.0);
					    u_xlat0.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat1.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat3.x = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat3.x = u_xlat3.x * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat3.x = float(1.0) / u_xlat3.x;
					        u_xlat0.xyz = unity_LightColor[u_xlati_loop_1].xyz * u_xlat3.xxx + u_xlat0.xyz;
					    }
					    u_xlat0.xyz = u_xlat0.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat1.xyz = vec3(u_xlat12) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendMul2" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat12;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat2.xyz = vec3(u_xlat12) * u_xlat2.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat2.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					bool u_xlatb3;
					vec2 u_xlat4;
					float u_xlat12;
					int u_xlati12;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat1 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat1.x);
					    u_xlat0.x = float(0.0);
					    u_xlat0.y = float(0.0);
					    u_xlat0.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat1.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat3.x = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat3.x = u_xlat3.x * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat3.x = float(1.0) / u_xlat3.x;
					        u_xlat0.xyz = unity_LightColor[u_xlati_loop_1].xyz * u_xlat3.xxx + u_xlat0.xyz;
					    }
					    u_xlat0.xyz = u_xlat0.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat1.xyz = vec3(u_xlat12) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendMul2" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat12;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat2.xyz = vec3(u_xlat12) * u_xlat2.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat2.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					bool u_xlatb3;
					vec2 u_xlat4;
					float u_xlat12;
					int u_xlati12;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat1 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat1.x);
					    u_xlat0.x = float(0.0);
					    u_xlat0.y = float(0.0);
					    u_xlat0.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat1.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat3.x = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat3.x = u_xlat3.x * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat3.x = float(1.0) / u_xlat3.x;
					        u_xlat0.xyz = unity_LightColor[u_xlati_loop_1].xyz * u_xlat3.xxx + u_xlat0.xyz;
					    }
					    u_xlat0.xyz = u_xlat0.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat1.xyz = vec3(u_xlat12) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendMul2" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat12;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat2.xyz = vec3(u_xlat12) * u_xlat2.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat2.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					bool u_xlatb3;
					vec2 u_xlat4;
					float u_xlat12;
					int u_xlati12;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat1 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat1.x);
					    u_xlat0.x = float(0.0);
					    u_xlat0.y = float(0.0);
					    u_xlat0.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat1.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat3.x = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat3.x = u_xlat3.x * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat3.x = float(1.0) / u_xlat3.x;
					        u_xlat0.xyz = unity_LightColor[u_xlati_loop_1].xyz * u_xlat3.xxx + u_xlat0.xyz;
					    }
					    u_xlat0.xyz = u_xlat0.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat1.xyz = vec3(u_xlat12) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendMul2" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat12;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat2.xyz = vec3(u_xlat12) * u_xlat2.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat2.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					bool u_xlatb3;
					vec2 u_xlat4;
					float u_xlat12;
					int u_xlati12;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat1 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat1.x);
					    u_xlat0.x = float(0.0);
					    u_xlat0.y = float(0.0);
					    u_xlat0.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat1.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat3.x = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat3.x = u_xlat3.x * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat3.x = float(1.0) / u_xlat3.x;
					        u_xlat0.xyz = unity_LightColor[u_xlati_loop_1].xyz * u_xlat3.xxx + u_xlat0.xyz;
					    }
					    u_xlat0.xyz = u_xlat0.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat1.xyz = vec3(u_xlat12) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendMul2" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat12;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat2.xyz = vec3(u_xlat12) * u_xlat2.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat2.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					bool u_xlatb3;
					vec2 u_xlat4;
					float u_xlat12;
					int u_xlati12;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat1 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat1.x);
					    u_xlat0.x = float(0.0);
					    u_xlat0.y = float(0.0);
					    u_xlat0.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat1.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat3.x = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat3.x = u_xlat3.x * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat3.x = float(1.0) / u_xlat3.x;
					        u_xlat0.xyz = unity_LightColor[u_xlati_loop_1].xyz * u_xlat3.xxx + u_xlat0.xyz;
					    }
					    u_xlat0.xyz = u_xlat0.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat1.xyz = vec3(u_xlat12) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendMul2" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat12;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat2.xyz = vec3(u_xlat12) * u_xlat2.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat2.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					bool u_xlatb3;
					vec2 u_xlat4;
					float u_xlat12;
					int u_xlati12;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat1 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat1.x);
					    u_xlat0.x = float(0.0);
					    u_xlat0.y = float(0.0);
					    u_xlat0.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat1.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat3.x = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat3.x = u_xlat3.x * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat3.x = float(1.0) / u_xlat3.x;
					        u_xlat0.xyz = unity_LightColor[u_xlati_loop_1].xyz * u_xlat3.xxx + u_xlat0.xyz;
					    }
					    u_xlat0.xyz = u_xlat0.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat1.xyz = vec3(u_xlat12) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendMul2" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat12;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat2.xyz = vec3(u_xlat12) * u_xlat2.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat2.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					bool u_xlatb3;
					vec2 u_xlat4;
					float u_xlat12;
					int u_xlati12;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat1 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat1.x);
					    u_xlat0.x = float(0.0);
					    u_xlat0.y = float(0.0);
					    u_xlat0.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat1.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat3.x = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat3.x = u_xlat3.x * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat3.x = float(1.0) / u_xlat3.x;
					        u_xlat0.xyz = unity_LightColor[u_xlati_loop_1].xyz * u_xlat3.xxx + u_xlat0.xyz;
					    }
					    u_xlat0.xyz = u_xlat0.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat1.xyz = vec3(u_xlat12) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendMul2" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat12;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat2.xyz = vec3(u_xlat12) * u_xlat2.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat2.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					bool u_xlatb3;
					vec2 u_xlat4;
					float u_xlat12;
					int u_xlati12;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat1 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat1.x);
					    u_xlat0.x = float(0.0);
					    u_xlat0.y = float(0.0);
					    u_xlat0.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat1.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat3.x = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat3.x = u_xlat3.x * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat3.x = float(1.0) / u_xlat3.x;
					        u_xlat0.xyz = unity_LightColor[u_xlati_loop_1].xyz * u_xlat3.xxx + u_xlat0.xyz;
					    }
					    u_xlat0.xyz = u_xlat0.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat1.xyz = vec3(u_xlat12) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendMul2" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat12;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat2.xyz = vec3(u_xlat12) * u_xlat2.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat2.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					bool u_xlatb3;
					vec2 u_xlat4;
					float u_xlat12;
					int u_xlati12;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat1 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat1.x);
					    u_xlat0.x = float(0.0);
					    u_xlat0.y = float(0.0);
					    u_xlat0.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat1.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat3.x = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat3.x = u_xlat3.x * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat3.x = float(1.0) / u_xlat3.x;
					        u_xlat0.xyz = unity_LightColor[u_xlati_loop_1].xyz * u_xlat3.xxx + u_xlat0.xyz;
					    }
					    u_xlat0.xyz = u_xlat0.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat1.xyz = vec3(u_xlat12) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendMul2" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat12;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat2.xyz = vec3(u_xlat12) * u_xlat2.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat2.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					bool u_xlatb3;
					vec2 u_xlat4;
					float u_xlat12;
					int u_xlati12;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat1 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat1.x);
					    u_xlat0.x = float(0.0);
					    u_xlat0.y = float(0.0);
					    u_xlat0.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat1.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat3.x = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat3.x = u_xlat3.x * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat3.x = float(1.0) / u_xlat3.x;
					        u_xlat0.xyz = unity_LightColor[u_xlati_loop_1].xyz * u_xlat3.xxx + u_xlat0.xyz;
					    }
					    u_xlat0.xyz = u_xlat0.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat1.xyz = vec3(u_xlat12) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendMul2" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat12;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat2.xyz = vec3(u_xlat12) * u_xlat2.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat2.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					bool u_xlatb3;
					vec2 u_xlat4;
					float u_xlat12;
					int u_xlati12;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat1 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat1.x);
					    u_xlat0.x = float(0.0);
					    u_xlat0.y = float(0.0);
					    u_xlat0.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat1.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat3.x = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat3.x = u_xlat3.x * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat3.x = float(1.0) / u_xlat3.x;
					        u_xlat0.xyz = unity_LightColor[u_xlati_loop_1].xyz * u_xlat3.xxx + u_xlat0.xyz;
					    }
					    u_xlat0.xyz = u_xlat0.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat1.xyz = vec3(u_xlat12) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendMul2" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat12;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat2.xyz = vec3(u_xlat12) * u_xlat2.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat2.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					bool u_xlatb3;
					vec2 u_xlat4;
					float u_xlat12;
					int u_xlati12;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat1 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat1.x);
					    u_xlat0.x = float(0.0);
					    u_xlat0.y = float(0.0);
					    u_xlat0.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat1.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat3.x = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat3.x = u_xlat3.x * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat3.x = float(1.0) / u_xlat3.x;
					        u_xlat0.xyz = unity_LightColor[u_xlati_loop_1].xyz * u_xlat3.xxx + u_xlat0.xyz;
					    }
					    u_xlat0.xyz = u_xlat0.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat1.xyz = vec3(u_xlat12) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendMul2" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat12;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat2.xyz = vec3(u_xlat12) * u_xlat2.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat2.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					bool u_xlatb3;
					vec2 u_xlat4;
					float u_xlat12;
					int u_xlati12;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat1 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat1.x);
					    u_xlat0.x = float(0.0);
					    u_xlat0.y = float(0.0);
					    u_xlat0.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat1.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat3.x = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat3.x = u_xlat3.x * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat3.x = float(1.0) / u_xlat3.x;
					        u_xlat0.xyz = unity_LightColor[u_xlati_loop_1].xyz * u_xlat3.xxx + u_xlat0.xyz;
					    }
					    u_xlat0.xyz = u_xlat0.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat1.xyz = vec3(u_xlat12) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendMul2" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_4_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_4_4[5];
						mat4x4 unity_MatrixV;
						vec4 unused_4_6[4];
						mat4x4 unity_MatrixVP;
						vec4 unused_4_8[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat6;
					float u_xlat12;
					float u_xlat14;
					bool u_xlatb14;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    u_xlat1 = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlat2.xz = u_xlat1.xw * vec2(0.5, 0.5);
					    u_xlat6 = u_xlat1.y * _ProjectionParams.x;
					    u_xlat2.w = u_xlat6 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat2.zz + u_xlat2.xw;
					    u_xlat2 = u_xlat0.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat2 = unity_MatrixV[0].zxyz * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_MatrixV[2].zxyz * u_xlat0.zzzz + u_xlat2;
					    u_xlat0 = unity_MatrixV[3].zxyz * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD3.z = (-u_xlat0.x);
					    u_xlat2.x = float(0.0);
					    u_xlat2.y = float(0.0);
					    u_xlat2.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat0.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat14 = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat14 = u_xlat14 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat14 = float(1.0) / u_xlat14;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat14) + u_xlat2.xyz;
					    }
					    u_xlat0.xyz = u_xlat2.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat2.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat2.xyz;
					    u_xlat2.xyz = u_xlat2.xyz + unity_WorldToObject[3].xyz;
					    u_xlat2.xyz = u_xlat2.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat2.xyz = vec3(u_xlat12) * u_xlat2.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat2.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat1;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat1.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[12];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_4[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_6;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_6_0;
						vec4 unity_AmbientSky;
						vec4 unity_AmbientEquator;
						vec4 unity_AmbientGround;
						vec4 unused_6_4[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					bool u_xlatb3;
					vec2 u_xlat4;
					float u_xlat12;
					int u_xlati12;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    u_xlat3.xz = u_xlat2.xw * vec2(0.5, 0.5);
					    u_xlat4.x = u_xlat2.y * _ProjectionParams.x;
					    u_xlat3.w = u_xlat4.x * 0.5;
					    u_xlat4.xy = u_xlat3.zz + u_xlat3.xw;
					    u_xlati12 = unity_StereoEyeIndex;
					    u_xlat3.xy = u_xlat2.ww * unity_StereoScaleOffset[u_xlati12].zw;
					    vs_TEXCOORD3.xy = u_xlat4.xy * unity_StereoScaleOffset[u_xlati12].xy + u_xlat3.xy;
					    u_xlat3 = u_xlat1.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat3 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat1.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat1.zzzz + u_xlat3;
					    u_xlat1 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat1.wwww + u_xlat3;
					    vs_TEXCOORD3.z = (-u_xlat1.x);
					    u_xlat0.x = float(0.0);
					    u_xlat0.y = float(0.0);
					    u_xlat0.z = float(0.0);
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat3.xyz = (-u_xlat1.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat3.x = dot(u_xlat3.xyz, u_xlat3.xyz);
					        u_xlat3.x = u_xlat3.x * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat3.x = float(1.0) / u_xlat3.x;
					        u_xlat0.xyz = unity_LightColor[u_xlati_loop_1].xyz * u_xlat3.xxx + u_xlat0.xyz;
					    }
					    u_xlat0.xyz = u_xlat0.xyz + unity_AmbientSky.xyz;
					    u_xlat0.xyz = unity_AmbientEquator.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    u_xlat0.xyz = unity_AmbientGround.xyz * vec3(0.100000001, 0.100000001, 0.100000001) + u_xlat0.xyz;
					    vs_COLOR0.xyz = u_xlat0.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati12].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat12 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat1.xyz = vec3(u_xlat12) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat2;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat2.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat2.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendMul2" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendMul2" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendMul2" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_8;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_10;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					float u_xlat20;
					bool u_xlatb20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat20 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 9.99999997e-07);
					        u_xlat3.x = inversesqrt(u_xlat20);
					        u_xlat5.xyz = u_xlat3.xxx * u_xlat5.xyz;
					        u_xlat20 = u_xlat20 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat20 = float(1.0) / u_xlat20;
					        u_xlat3.x = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat3.x = max(u_xlat3.x, 0.0);
					        u_xlat20 = u_xlat20 * u_xlat3.x;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat20) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_8;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_10;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					float u_xlat20;
					bool u_xlatb20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat20 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 9.99999997e-07);
					        u_xlat3.x = inversesqrt(u_xlat20);
					        u_xlat5.xyz = u_xlat3.xxx * u_xlat5.xyz;
					        u_xlat20 = u_xlat20 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat20 = float(1.0) / u_xlat20;
					        u_xlat3.x = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat3.x = max(u_xlat3.x, 0.0);
					        u_xlat20 = u_xlat20 * u_xlat3.x;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat20) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_8;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_10;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					float u_xlat20;
					bool u_xlatb20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat20 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 9.99999997e-07);
					        u_xlat3.x = inversesqrt(u_xlat20);
					        u_xlat5.xyz = u_xlat3.xxx * u_xlat5.xyz;
					        u_xlat20 = u_xlat20 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat20 = float(1.0) / u_xlat20;
					        u_xlat3.x = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat3.x = max(u_xlat3.x, 0.0);
					        u_xlat20 = u_xlat20 * u_xlat3.x;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat20) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_8;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_10;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					float u_xlat20;
					bool u_xlatb20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat20 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 9.99999997e-07);
					        u_xlat3.x = inversesqrt(u_xlat20);
					        u_xlat5.xyz = u_xlat3.xxx * u_xlat5.xyz;
					        u_xlat20 = u_xlat20 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat20 = float(1.0) / u_xlat20;
					        u_xlat3.x = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat3.x = max(u_xlat3.x, 0.0);
					        u_xlat20 = u_xlat20 * u_xlat3.x;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat20) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_8;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_10;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					float u_xlat20;
					bool u_xlatb20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat20 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 9.99999997e-07);
					        u_xlat3.x = inversesqrt(u_xlat20);
					        u_xlat5.xyz = u_xlat3.xxx * u_xlat5.xyz;
					        u_xlat20 = u_xlat20 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat20 = float(1.0) / u_xlat20;
					        u_xlat3.x = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat3.x = max(u_xlat3.x, 0.0);
					        u_xlat20 = u_xlat20 * u_xlat3.x;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat20) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_8;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_10;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					float u_xlat20;
					bool u_xlatb20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat20 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 9.99999997e-07);
					        u_xlat3.x = inversesqrt(u_xlat20);
					        u_xlat5.xyz = u_xlat3.xxx * u_xlat5.xyz;
					        u_xlat20 = u_xlat20 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat20 = float(1.0) / u_xlat20;
					        u_xlat3.x = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat3.x = max(u_xlat3.x, 0.0);
					        u_xlat20 = u_xlat20 * u_xlat3.x;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat20) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_8;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_10;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					float u_xlat20;
					bool u_xlatb20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat20 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 9.99999997e-07);
					        u_xlat3.x = inversesqrt(u_xlat20);
					        u_xlat5.xyz = u_xlat3.xxx * u_xlat5.xyz;
					        u_xlat20 = u_xlat20 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat20 = float(1.0) / u_xlat20;
					        u_xlat3.x = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat3.x = max(u_xlat3.x, 0.0);
					        u_xlat20 = u_xlat20 * u_xlat3.x;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat20) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_8;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_10;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					float u_xlat20;
					bool u_xlatb20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat20 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 9.99999997e-07);
					        u_xlat3.x = inversesqrt(u_xlat20);
					        u_xlat5.xyz = u_xlat3.xxx * u_xlat5.xyz;
					        u_xlat20 = u_xlat20 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat20 = float(1.0) / u_xlat20;
					        u_xlat3.x = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat3.x = max(u_xlat3.x, 0.0);
					        u_xlat20 = u_xlat20 * u_xlat3.x;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat20) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendMul2" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_8;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_10;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					float u_xlat20;
					bool u_xlatb20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat20 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 9.99999997e-07);
					        u_xlat3.x = inversesqrt(u_xlat20);
					        u_xlat5.xyz = u_xlat3.xxx * u_xlat5.xyz;
					        u_xlat20 = u_xlat20 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat20 = float(1.0) / u_xlat20;
					        u_xlat3.x = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat3.x = max(u_xlat3.x, 0.0);
					        u_xlat20 = u_xlat20 * u_xlat3.x;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat20) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_8;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_10;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					float u_xlat20;
					bool u_xlatb20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat20 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 9.99999997e-07);
					        u_xlat3.x = inversesqrt(u_xlat20);
					        u_xlat5.xyz = u_xlat3.xxx * u_xlat5.xyz;
					        u_xlat20 = u_xlat20 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat20 = float(1.0) / u_xlat20;
					        u_xlat3.x = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat3.x = max(u_xlat3.x, 0.0);
					        u_xlat20 = u_xlat20 * u_xlat3.x;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat20) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_8;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_10;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					float u_xlat20;
					bool u_xlatb20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat20 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 9.99999997e-07);
					        u_xlat3.x = inversesqrt(u_xlat20);
					        u_xlat5.xyz = u_xlat3.xxx * u_xlat5.xyz;
					        u_xlat20 = u_xlat20 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat20 = float(1.0) / u_xlat20;
					        u_xlat3.x = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat3.x = max(u_xlat3.x, 0.0);
					        u_xlat20 = u_xlat20 * u_xlat3.x;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat20) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_8;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_10;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					float u_xlat20;
					bool u_xlatb20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat20 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 9.99999997e-07);
					        u_xlat3.x = inversesqrt(u_xlat20);
					        u_xlat5.xyz = u_xlat3.xxx * u_xlat5.xyz;
					        u_xlat20 = u_xlat20 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat20 = float(1.0) / u_xlat20;
					        u_xlat3.x = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat3.x = max(u_xlat3.x, 0.0);
					        u_xlat20 = u_xlat20 * u_xlat3.x;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat20) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_8;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_10;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					float u_xlat20;
					bool u_xlatb20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat20 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 9.99999997e-07);
					        u_xlat3.x = inversesqrt(u_xlat20);
					        u_xlat5.xyz = u_xlat3.xxx * u_xlat5.xyz;
					        u_xlat20 = u_xlat20 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat20 = float(1.0) / u_xlat20;
					        u_xlat3.x = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat3.x = max(u_xlat3.x, 0.0);
					        u_xlat20 = u_xlat20 * u_xlat3.x;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat20) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_8;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_10;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					float u_xlat20;
					bool u_xlatb20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat20 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 9.99999997e-07);
					        u_xlat3.x = inversesqrt(u_xlat20);
					        u_xlat5.xyz = u_xlat3.xxx * u_xlat5.xyz;
					        u_xlat20 = u_xlat20 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat20 = float(1.0) / u_xlat20;
					        u_xlat3.x = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat3.x = max(u_xlat3.x, 0.0);
					        u_xlat20 = u_xlat20 * u_xlat3.x;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat20) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_8;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_10;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					float u_xlat20;
					bool u_xlatb20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat20 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 9.99999997e-07);
					        u_xlat3.x = inversesqrt(u_xlat20);
					        u_xlat5.xyz = u_xlat3.xxx * u_xlat5.xyz;
					        u_xlat20 = u_xlat20 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat20 = float(1.0) / u_xlat20;
					        u_xlat3.x = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat3.x = max(u_xlat3.x, 0.0);
					        u_xlat20 = u_xlat20 * u_xlat3.x;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat20) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_8;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_10;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					float u_xlat20;
					bool u_xlatb20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat20 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 9.99999997e-07);
					        u_xlat3.x = inversesqrt(u_xlat20);
					        u_xlat5.xyz = u_xlat3.xxx * u_xlat5.xyz;
					        u_xlat20 = u_xlat20 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat20 = float(1.0) / u_xlat20;
					        u_xlat3.x = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat3.x = max(u_xlat3.x, 0.0);
					        u_xlat20 = u_xlat20 * u_xlat3.x;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat20) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendMul2" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendMul2" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendMul2" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_8;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_10;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					float u_xlat20;
					bool u_xlatb20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat20 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 9.99999997e-07);
					        u_xlat3.x = inversesqrt(u_xlat20);
					        u_xlat5.xyz = u_xlat3.xxx * u_xlat5.xyz;
					        u_xlat20 = u_xlat20 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat20 = float(1.0) / u_xlat20;
					        u_xlat3.x = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat3.x = max(u_xlat3.x, 0.0);
					        u_xlat20 = u_xlat20 * u_xlat3.x;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat20) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_8;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_10;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					float u_xlat20;
					bool u_xlatb20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat20 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 9.99999997e-07);
					        u_xlat3.x = inversesqrt(u_xlat20);
					        u_xlat5.xyz = u_xlat3.xxx * u_xlat5.xyz;
					        u_xlat20 = u_xlat20 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat20 = float(1.0) / u_xlat20;
					        u_xlat3.x = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat3.x = max(u_xlat3.x, 0.0);
					        u_xlat20 = u_xlat20 * u_xlat3.x;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat20) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_8;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_10;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					float u_xlat20;
					bool u_xlatb20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat20 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 9.99999997e-07);
					        u_xlat3.x = inversesqrt(u_xlat20);
					        u_xlat5.xyz = u_xlat3.xxx * u_xlat5.xyz;
					        u_xlat20 = u_xlat20 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat20 = float(1.0) / u_xlat20;
					        u_xlat3.x = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat3.x = max(u_xlat3.x, 0.0);
					        u_xlat20 = u_xlat20 * u_xlat3.x;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat20) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_8;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_10;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					float u_xlat20;
					bool u_xlatb20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat20 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 9.99999997e-07);
					        u_xlat3.x = inversesqrt(u_xlat20);
					        u_xlat5.xyz = u_xlat3.xxx * u_xlat5.xyz;
					        u_xlat20 = u_xlat20 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat20 = float(1.0) / u_xlat20;
					        u_xlat3.x = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat3.x = max(u_xlat3.x, 0.0);
					        u_xlat20 = u_xlat20 * u_xlat3.x;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat20) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_8;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_10;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					float u_xlat20;
					bool u_xlatb20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat20 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 9.99999997e-07);
					        u_xlat3.x = inversesqrt(u_xlat20);
					        u_xlat5.xyz = u_xlat3.xxx * u_xlat5.xyz;
					        u_xlat20 = u_xlat20 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat20 = float(1.0) / u_xlat20;
					        u_xlat3.x = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat3.x = max(u_xlat3.x, 0.0);
					        u_xlat20 = u_xlat20 * u_xlat3.x;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat20) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_8;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_10;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					float u_xlat20;
					bool u_xlatb20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat20 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 9.99999997e-07);
					        u_xlat3.x = inversesqrt(u_xlat20);
					        u_xlat5.xyz = u_xlat3.xxx * u_xlat5.xyz;
					        u_xlat20 = u_xlat20 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat20 = float(1.0) / u_xlat20;
					        u_xlat3.x = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat3.x = max(u_xlat3.x, 0.0);
					        u_xlat20 = u_xlat20 * u_xlat3.x;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat20) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_8;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_10;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					float u_xlat20;
					bool u_xlatb20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat20 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 9.99999997e-07);
					        u_xlat3.x = inversesqrt(u_xlat20);
					        u_xlat5.xyz = u_xlat3.xxx * u_xlat5.xyz;
					        u_xlat20 = u_xlat20 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat20 = float(1.0) / u_xlat20;
					        u_xlat3.x = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat3.x = max(u_xlat3.x, 0.0);
					        u_xlat20 = u_xlat20 * u_xlat3.x;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat20) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_8;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_10;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					float u_xlat20;
					bool u_xlatb20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat20 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 9.99999997e-07);
					        u_xlat3.x = inversesqrt(u_xlat20);
					        u_xlat5.xyz = u_xlat3.xxx * u_xlat5.xyz;
					        u_xlat20 = u_xlat20 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat20 = float(1.0) / u_xlat20;
					        u_xlat3.x = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat3.x = max(u_xlat3.x, 0.0);
					        u_xlat20 = u_xlat20 * u_xlat3.x;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat20) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendMul2" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_8;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_10;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					float u_xlat20;
					bool u_xlatb20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat20 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 9.99999997e-07);
					        u_xlat3.x = inversesqrt(u_xlat20);
					        u_xlat5.xyz = u_xlat3.xxx * u_xlat5.xyz;
					        u_xlat20 = u_xlat20 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat20 = float(1.0) / u_xlat20;
					        u_xlat3.x = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat3.x = max(u_xlat3.x, 0.0);
					        u_xlat20 = u_xlat20 * u_xlat3.x;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat20) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_8;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_10;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					float u_xlat20;
					bool u_xlatb20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat20 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 9.99999997e-07);
					        u_xlat3.x = inversesqrt(u_xlat20);
					        u_xlat5.xyz = u_xlat3.xxx * u_xlat5.xyz;
					        u_xlat20 = u_xlat20 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat20 = float(1.0) / u_xlat20;
					        u_xlat3.x = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat3.x = max(u_xlat3.x, 0.0);
					        u_xlat20 = u_xlat20 * u_xlat3.x;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat20) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_8;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_10;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					float u_xlat20;
					bool u_xlatb20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat20 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 9.99999997e-07);
					        u_xlat3.x = inversesqrt(u_xlat20);
					        u_xlat5.xyz = u_xlat3.xxx * u_xlat5.xyz;
					        u_xlat20 = u_xlat20 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat20 = float(1.0) / u_xlat20;
					        u_xlat3.x = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat3.x = max(u_xlat3.x, 0.0);
					        u_xlat20 = u_xlat20 * u_xlat3.x;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat20) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_8;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_10;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					float u_xlat20;
					bool u_xlatb20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat20 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 9.99999997e-07);
					        u_xlat3.x = inversesqrt(u_xlat20);
					        u_xlat5.xyz = u_xlat3.xxx * u_xlat5.xyz;
					        u_xlat20 = u_xlat20 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat20 = float(1.0) / u_xlat20;
					        u_xlat3.x = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat3.x = max(u_xlat3.x, 0.0);
					        u_xlat20 = u_xlat20 * u_xlat3.x;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat20) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_8;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_10;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					float u_xlat20;
					bool u_xlatb20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat20 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 9.99999997e-07);
					        u_xlat3.x = inversesqrt(u_xlat20);
					        u_xlat5.xyz = u_xlat3.xxx * u_xlat5.xyz;
					        u_xlat20 = u_xlat20 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat20 = float(1.0) / u_xlat20;
					        u_xlat3.x = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat3.x = max(u_xlat3.x, 0.0);
					        u_xlat20 = u_xlat20 * u_xlat3.x;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat20) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_8;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_10;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					float u_xlat20;
					bool u_xlatb20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat20 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 9.99999997e-07);
					        u_xlat3.x = inversesqrt(u_xlat20);
					        u_xlat5.xyz = u_xlat3.xxx * u_xlat5.xyz;
					        u_xlat20 = u_xlat20 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat20 = float(1.0) / u_xlat20;
					        u_xlat3.x = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat3.x = max(u_xlat3.x, 0.0);
					        u_xlat20 = u_xlat20 * u_xlat3.x;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat20) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_8;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_10;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					float u_xlat20;
					bool u_xlatb20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat20 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 9.99999997e-07);
					        u_xlat3.x = inversesqrt(u_xlat20);
					        u_xlat5.xyz = u_xlat3.xxx * u_xlat5.xyz;
					        u_xlat20 = u_xlat20 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat20 = float(1.0) / u_xlat20;
					        u_xlat3.x = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat3.x = max(u_xlat3.x, 0.0);
					        u_xlat20 = u_xlat20 * u_xlat3.x;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat20) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_8;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_10;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					float u_xlat20;
					bool u_xlatb20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat20 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 9.99999997e-07);
					        u_xlat3.x = inversesqrt(u_xlat20);
					        u_xlat5.xyz = u_xlat3.xxx * u_xlat5.xyz;
					        u_xlat20 = u_xlat20 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat20 = float(1.0) / u_xlat20;
					        u_xlat3.x = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat3.x = max(u_xlat3.x, 0.0);
					        u_xlat20 = u_xlat20 * u_xlat3.x;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat20) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendMul2" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendMul2" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendMul2" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_8;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_10;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					float u_xlat20;
					bool u_xlatb20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat20 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 9.99999997e-07);
					        u_xlat3.x = inversesqrt(u_xlat20);
					        u_xlat5.xyz = u_xlat3.xxx * u_xlat5.xyz;
					        u_xlat20 = u_xlat20 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat20 = float(1.0) / u_xlat20;
					        u_xlat3.x = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat3.x = max(u_xlat3.x, 0.0);
					        u_xlat20 = u_xlat20 * u_xlat3.x;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat20) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_8;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_10;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					float u_xlat20;
					bool u_xlatb20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat20 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 9.99999997e-07);
					        u_xlat3.x = inversesqrt(u_xlat20);
					        u_xlat5.xyz = u_xlat3.xxx * u_xlat5.xyz;
					        u_xlat20 = u_xlat20 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat20 = float(1.0) / u_xlat20;
					        u_xlat3.x = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat3.x = max(u_xlat3.x, 0.0);
					        u_xlat20 = u_xlat20 * u_xlat3.x;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat20) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_8;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_10;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					float u_xlat20;
					bool u_xlatb20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat20 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 9.99999997e-07);
					        u_xlat3.x = inversesqrt(u_xlat20);
					        u_xlat5.xyz = u_xlat3.xxx * u_xlat5.xyz;
					        u_xlat20 = u_xlat20 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat20 = float(1.0) / u_xlat20;
					        u_xlat3.x = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat3.x = max(u_xlat3.x, 0.0);
					        u_xlat20 = u_xlat20 * u_xlat3.x;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat20) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_8;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_10;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					float u_xlat20;
					bool u_xlatb20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat20 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 9.99999997e-07);
					        u_xlat3.x = inversesqrt(u_xlat20);
					        u_xlat5.xyz = u_xlat3.xxx * u_xlat5.xyz;
					        u_xlat20 = u_xlat20 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat20 = float(1.0) / u_xlat20;
					        u_xlat3.x = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat3.x = max(u_xlat3.x, 0.0);
					        u_xlat20 = u_xlat20 * u_xlat3.x;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat20) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_8;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_10;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					float u_xlat20;
					bool u_xlatb20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat20 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 9.99999997e-07);
					        u_xlat3.x = inversesqrt(u_xlat20);
					        u_xlat5.xyz = u_xlat3.xxx * u_xlat5.xyz;
					        u_xlat20 = u_xlat20 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat20 = float(1.0) / u_xlat20;
					        u_xlat3.x = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat3.x = max(u_xlat3.x, 0.0);
					        u_xlat20 = u_xlat20 * u_xlat3.x;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat20) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_8;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_10;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					float u_xlat20;
					bool u_xlatb20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat20 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 9.99999997e-07);
					        u_xlat3.x = inversesqrt(u_xlat20);
					        u_xlat5.xyz = u_xlat3.xxx * u_xlat5.xyz;
					        u_xlat20 = u_xlat20 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat20 = float(1.0) / u_xlat20;
					        u_xlat3.x = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat3.x = max(u_xlat3.x, 0.0);
					        u_xlat20 = u_xlat20 * u_xlat3.x;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat20) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_8;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_10;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					float u_xlat20;
					bool u_xlatb20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat20 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 9.99999997e-07);
					        u_xlat3.x = inversesqrt(u_xlat20);
					        u_xlat5.xyz = u_xlat3.xxx * u_xlat5.xyz;
					        u_xlat20 = u_xlat20 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat20 = float(1.0) / u_xlat20;
					        u_xlat3.x = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat3.x = max(u_xlat3.x, 0.0);
					        u_xlat20 = u_xlat20 * u_xlat3.x;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat20) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_8;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_10;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					float u_xlat20;
					bool u_xlatb20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat20 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 9.99999997e-07);
					        u_xlat3.x = inversesqrt(u_xlat20);
					        u_xlat5.xyz = u_xlat3.xxx * u_xlat5.xyz;
					        u_xlat20 = u_xlat20 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat20 = float(1.0) / u_xlat20;
					        u_xlat3.x = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat3.x = max(u_xlat3.x, 0.0);
					        u_xlat20 = u_xlat20 * u_xlat3.x;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat20) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendMul2" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_8;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_10;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					float u_xlat20;
					bool u_xlatb20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat20 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 9.99999997e-07);
					        u_xlat3.x = inversesqrt(u_xlat20);
					        u_xlat5.xyz = u_xlat3.xxx * u_xlat5.xyz;
					        u_xlat20 = u_xlat20 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat20 = float(1.0) / u_xlat20;
					        u_xlat3.x = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat3.x = max(u_xlat3.x, 0.0);
					        u_xlat20 = u_xlat20 * u_xlat3.x;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat20) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_8;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_10;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					float u_xlat20;
					bool u_xlatb20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat20 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 9.99999997e-07);
					        u_xlat3.x = inversesqrt(u_xlat20);
					        u_xlat5.xyz = u_xlat3.xxx * u_xlat5.xyz;
					        u_xlat20 = u_xlat20 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat20 = float(1.0) / u_xlat20;
					        u_xlat3.x = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat3.x = max(u_xlat3.x, 0.0);
					        u_xlat20 = u_xlat20 * u_xlat3.x;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat20) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_8;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_10;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					float u_xlat20;
					bool u_xlatb20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat20 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 9.99999997e-07);
					        u_xlat3.x = inversesqrt(u_xlat20);
					        u_xlat5.xyz = u_xlat3.xxx * u_xlat5.xyz;
					        u_xlat20 = u_xlat20 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat20 = float(1.0) / u_xlat20;
					        u_xlat3.x = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat3.x = max(u_xlat3.x, 0.0);
					        u_xlat20 = u_xlat20 * u_xlat3.x;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat20) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_8;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_10;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					float u_xlat20;
					bool u_xlatb20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat20 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 9.99999997e-07);
					        u_xlat3.x = inversesqrt(u_xlat20);
					        u_xlat5.xyz = u_xlat3.xxx * u_xlat5.xyz;
					        u_xlat20 = u_xlat20 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat20 = float(1.0) / u_xlat20;
					        u_xlat3.x = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat3.x = max(u_xlat3.x, 0.0);
					        u_xlat20 = u_xlat20 * u_xlat3.x;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat20) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_8;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_10;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					float u_xlat20;
					bool u_xlatb20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat20 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 9.99999997e-07);
					        u_xlat3.x = inversesqrt(u_xlat20);
					        u_xlat5.xyz = u_xlat3.xxx * u_xlat5.xyz;
					        u_xlat20 = u_xlat20 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat20 = float(1.0) / u_xlat20;
					        u_xlat3.x = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat3.x = max(u_xlat3.x, 0.0);
					        u_xlat20 = u_xlat20 * u_xlat3.x;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat20) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_8;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_10;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					float u_xlat20;
					bool u_xlatb20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat20 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 9.99999997e-07);
					        u_xlat3.x = inversesqrt(u_xlat20);
					        u_xlat5.xyz = u_xlat3.xxx * u_xlat5.xyz;
					        u_xlat20 = u_xlat20 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat20 = float(1.0) / u_xlat20;
					        u_xlat3.x = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat3.x = max(u_xlat3.x, 0.0);
					        u_xlat20 = u_xlat20 * u_xlat3.x;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat20) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_8;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_10;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					float u_xlat20;
					bool u_xlatb20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat20 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 9.99999997e-07);
					        u_xlat3.x = inversesqrt(u_xlat20);
					        u_xlat5.xyz = u_xlat3.xxx * u_xlat5.xyz;
					        u_xlat20 = u_xlat20 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat20 = float(1.0) / u_xlat20;
					        u_xlat3.x = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat3.x = max(u_xlat3.x, 0.0);
					        u_xlat20 = u_xlat20 * u_xlat3.x;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat20) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_8;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_10;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					float u_xlat20;
					bool u_xlatb20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat20 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 9.99999997e-07);
					        u_xlat3.x = inversesqrt(u_xlat20);
					        u_xlat5.xyz = u_xlat3.xxx * u_xlat5.xyz;
					        u_xlat20 = u_xlat20 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat20 = float(1.0) / u_xlat20;
					        u_xlat3.x = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat3.x = max(u_xlat3.x, 0.0);
					        u_xlat20 = u_xlat20 * u_xlat3.x;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat20) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendMul2" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendMul2" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendMul2" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_8;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_10;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					float u_xlat20;
					bool u_xlatb20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat20 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 9.99999997e-07);
					        u_xlat3.x = inversesqrt(u_xlat20);
					        u_xlat5.xyz = u_xlat3.xxx * u_xlat5.xyz;
					        u_xlat20 = u_xlat20 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat20 = float(1.0) / u_xlat20;
					        u_xlat3.x = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat3.x = max(u_xlat3.x, 0.0);
					        u_xlat20 = u_xlat20 * u_xlat3.x;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat20) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_8;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_10;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					float u_xlat20;
					bool u_xlatb20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat20 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 9.99999997e-07);
					        u_xlat3.x = inversesqrt(u_xlat20);
					        u_xlat5.xyz = u_xlat3.xxx * u_xlat5.xyz;
					        u_xlat20 = u_xlat20 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat20 = float(1.0) / u_xlat20;
					        u_xlat3.x = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat3.x = max(u_xlat3.x, 0.0);
					        u_xlat20 = u_xlat20 * u_xlat3.x;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat20) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_8;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_10;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					float u_xlat20;
					bool u_xlatb20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat20 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 9.99999997e-07);
					        u_xlat3.x = inversesqrt(u_xlat20);
					        u_xlat5.xyz = u_xlat3.xxx * u_xlat5.xyz;
					        u_xlat20 = u_xlat20 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat20 = float(1.0) / u_xlat20;
					        u_xlat3.x = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat3.x = max(u_xlat3.x, 0.0);
					        u_xlat20 = u_xlat20 * u_xlat3.x;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat20) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_8;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_10;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					float u_xlat20;
					bool u_xlatb20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat20 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 9.99999997e-07);
					        u_xlat3.x = inversesqrt(u_xlat20);
					        u_xlat5.xyz = u_xlat3.xxx * u_xlat5.xyz;
					        u_xlat20 = u_xlat20 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat20 = float(1.0) / u_xlat20;
					        u_xlat3.x = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat3.x = max(u_xlat3.x, 0.0);
					        u_xlat20 = u_xlat20 * u_xlat3.x;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat20) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_8;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_10;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					float u_xlat20;
					bool u_xlatb20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat20 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 9.99999997e-07);
					        u_xlat3.x = inversesqrt(u_xlat20);
					        u_xlat5.xyz = u_xlat3.xxx * u_xlat5.xyz;
					        u_xlat20 = u_xlat20 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat20 = float(1.0) / u_xlat20;
					        u_xlat3.x = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat3.x = max(u_xlat3.x, 0.0);
					        u_xlat20 = u_xlat20 * u_xlat3.x;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat20) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_8;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_10;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					float u_xlat20;
					bool u_xlatb20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat20 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 9.99999997e-07);
					        u_xlat3.x = inversesqrt(u_xlat20);
					        u_xlat5.xyz = u_xlat3.xxx * u_xlat5.xyz;
					        u_xlat20 = u_xlat20 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat20 = float(1.0) / u_xlat20;
					        u_xlat3.x = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat3.x = max(u_xlat3.x, 0.0);
					        u_xlat20 = u_xlat20 * u_xlat3.x;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat20) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_8;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_10;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					float u_xlat20;
					bool u_xlatb20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat20 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 9.99999997e-07);
					        u_xlat3.x = inversesqrt(u_xlat20);
					        u_xlat5.xyz = u_xlat3.xxx * u_xlat5.xyz;
					        u_xlat20 = u_xlat20 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat20 = float(1.0) / u_xlat20;
					        u_xlat3.x = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat3.x = max(u_xlat3.x, 0.0);
					        u_xlat20 = u_xlat20 * u_xlat3.x;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat20) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_8;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_10;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					float u_xlat20;
					bool u_xlatb20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat20 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 9.99999997e-07);
					        u_xlat3.x = inversesqrt(u_xlat20);
					        u_xlat5.xyz = u_xlat3.xxx * u_xlat5.xyz;
					        u_xlat20 = u_xlat20 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat20 = float(1.0) / u_xlat20;
					        u_xlat3.x = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat3.x = max(u_xlat3.x, 0.0);
					        u_xlat20 = u_xlat20 * u_xlat3.x;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat20) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendMul2" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_8;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_10;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					float u_xlat20;
					bool u_xlatb20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat20 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 9.99999997e-07);
					        u_xlat3.x = inversesqrt(u_xlat20);
					        u_xlat5.xyz = u_xlat3.xxx * u_xlat5.xyz;
					        u_xlat20 = u_xlat20 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat20 = float(1.0) / u_xlat20;
					        u_xlat3.x = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat3.x = max(u_xlat3.x, 0.0);
					        u_xlat20 = u_xlat20 * u_xlat3.x;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat20) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_8;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_10;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					float u_xlat20;
					bool u_xlatb20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat20 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 9.99999997e-07);
					        u_xlat3.x = inversesqrt(u_xlat20);
					        u_xlat5.xyz = u_xlat3.xxx * u_xlat5.xyz;
					        u_xlat20 = u_xlat20 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat20 = float(1.0) / u_xlat20;
					        u_xlat3.x = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat3.x = max(u_xlat3.x, 0.0);
					        u_xlat20 = u_xlat20 * u_xlat3.x;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat20) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_8;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_10;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					float u_xlat20;
					bool u_xlatb20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat20 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 9.99999997e-07);
					        u_xlat3.x = inversesqrt(u_xlat20);
					        u_xlat5.xyz = u_xlat3.xxx * u_xlat5.xyz;
					        u_xlat20 = u_xlat20 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat20 = float(1.0) / u_xlat20;
					        u_xlat3.x = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat3.x = max(u_xlat3.x, 0.0);
					        u_xlat20 = u_xlat20 * u_xlat3.x;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat20) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_8;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_10;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					float u_xlat20;
					bool u_xlatb20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat20 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 9.99999997e-07);
					        u_xlat3.x = inversesqrt(u_xlat20);
					        u_xlat5.xyz = u_xlat3.xxx * u_xlat5.xyz;
					        u_xlat20 = u_xlat20 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat20 = float(1.0) / u_xlat20;
					        u_xlat3.x = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat3.x = max(u_xlat3.x, 0.0);
					        u_xlat20 = u_xlat20 * u_xlat3.x;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat20) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_8;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_10;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					float u_xlat20;
					bool u_xlatb20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat20 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 9.99999997e-07);
					        u_xlat3.x = inversesqrt(u_xlat20);
					        u_xlat5.xyz = u_xlat3.xxx * u_xlat5.xyz;
					        u_xlat20 = u_xlat20 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat20 = float(1.0) / u_xlat20;
					        u_xlat3.x = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat3.x = max(u_xlat3.x, 0.0);
					        u_xlat20 = u_xlat20 * u_xlat3.x;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat20) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_8;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_10;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					float u_xlat20;
					bool u_xlatb20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat20 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 9.99999997e-07);
					        u_xlat3.x = inversesqrt(u_xlat20);
					        u_xlat5.xyz = u_xlat3.xxx * u_xlat5.xyz;
					        u_xlat20 = u_xlat20 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat20 = float(1.0) / u_xlat20;
					        u_xlat3.x = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat3.x = max(u_xlat3.x, 0.0);
					        u_xlat20 = u_xlat20 * u_xlat3.x;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat20) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_8;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_10;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					float u_xlat20;
					bool u_xlatb20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat20 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 9.99999997e-07);
					        u_xlat3.x = inversesqrt(u_xlat20);
					        u_xlat5.xyz = u_xlat3.xxx * u_xlat5.xyz;
					        u_xlat20 = u_xlat20 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat20 = float(1.0) / u_xlat20;
					        u_xlat3.x = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat3.x = max(u_xlat3.x, 0.0);
					        u_xlat20 = u_xlat20 * u_xlat3.x;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat20) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_8;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_10;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					float u_xlat20;
					bool u_xlatb20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat20 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 9.99999997e-07);
					        u_xlat3.x = inversesqrt(u_xlat20);
					        u_xlat5.xyz = u_xlat3.xxx * u_xlat5.xyz;
					        u_xlat20 = u_xlat20 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat20 = float(1.0) / u_xlat20;
					        u_xlat3.x = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat3.x = max(u_xlat3.x, 0.0);
					        u_xlat20 = u_xlat20 * u_xlat3.x;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat20) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendMul2" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendMul2" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendMul2" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_8;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_10;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					float u_xlat20;
					bool u_xlatb20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat20 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 9.99999997e-07);
					        u_xlat3.x = inversesqrt(u_xlat20);
					        u_xlat5.xyz = u_xlat3.xxx * u_xlat5.xyz;
					        u_xlat20 = u_xlat20 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat20 = float(1.0) / u_xlat20;
					        u_xlat3.x = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat3.x = max(u_xlat3.x, 0.0);
					        u_xlat20 = u_xlat20 * u_xlat3.x;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat20) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_8;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_10;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					float u_xlat20;
					bool u_xlatb20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat20 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 9.99999997e-07);
					        u_xlat3.x = inversesqrt(u_xlat20);
					        u_xlat5.xyz = u_xlat3.xxx * u_xlat5.xyz;
					        u_xlat20 = u_xlat20 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat20 = float(1.0) / u_xlat20;
					        u_xlat3.x = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat3.x = max(u_xlat3.x, 0.0);
					        u_xlat20 = u_xlat20 * u_xlat3.x;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat20) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_8;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_10;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					float u_xlat20;
					bool u_xlatb20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat20 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 9.99999997e-07);
					        u_xlat3.x = inversesqrt(u_xlat20);
					        u_xlat5.xyz = u_xlat3.xxx * u_xlat5.xyz;
					        u_xlat20 = u_xlat20 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat20 = float(1.0) / u_xlat20;
					        u_xlat3.x = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat3.x = max(u_xlat3.x, 0.0);
					        u_xlat20 = u_xlat20 * u_xlat3.x;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat20) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_8;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_10;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					float u_xlat20;
					bool u_xlatb20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat20 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 9.99999997e-07);
					        u_xlat3.x = inversesqrt(u_xlat20);
					        u_xlat5.xyz = u_xlat3.xxx * u_xlat5.xyz;
					        u_xlat20 = u_xlat20 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat20 = float(1.0) / u_xlat20;
					        u_xlat3.x = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat3.x = max(u_xlat3.x, 0.0);
					        u_xlat20 = u_xlat20 * u_xlat3.x;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat20) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_8;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_10;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					float u_xlat20;
					bool u_xlatb20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat20 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 9.99999997e-07);
					        u_xlat3.x = inversesqrt(u_xlat20);
					        u_xlat5.xyz = u_xlat3.xxx * u_xlat5.xyz;
					        u_xlat20 = u_xlat20 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat20 = float(1.0) / u_xlat20;
					        u_xlat3.x = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat3.x = max(u_xlat3.x, 0.0);
					        u_xlat20 = u_xlat20 * u_xlat3.x;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat20) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_8;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_10;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					float u_xlat20;
					bool u_xlatb20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat20 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 9.99999997e-07);
					        u_xlat3.x = inversesqrt(u_xlat20);
					        u_xlat5.xyz = u_xlat3.xxx * u_xlat5.xyz;
					        u_xlat20 = u_xlat20 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat20 = float(1.0) / u_xlat20;
					        u_xlat3.x = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat3.x = max(u_xlat3.x, 0.0);
					        u_xlat20 = u_xlat20 * u_xlat3.x;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat20) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_8;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_10;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					float u_xlat20;
					bool u_xlatb20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat20 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 9.99999997e-07);
					        u_xlat3.x = inversesqrt(u_xlat20);
					        u_xlat5.xyz = u_xlat3.xxx * u_xlat5.xyz;
					        u_xlat20 = u_xlat20 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat20 = float(1.0) / u_xlat20;
					        u_xlat3.x = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat3.x = max(u_xlat3.x, 0.0);
					        u_xlat20 = u_xlat20 * u_xlat3.x;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat20) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_8;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_10;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					float u_xlat20;
					bool u_xlatb20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat20 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 9.99999997e-07);
					        u_xlat3.x = inversesqrt(u_xlat20);
					        u_xlat5.xyz = u_xlat3.xxx * u_xlat5.xyz;
					        u_xlat20 = u_xlat20 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat20 = float(1.0) / u_xlat20;
					        u_xlat3.x = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat3.x = max(u_xlat3.x, 0.0);
					        u_xlat20 = u_xlat20 * u_xlat3.x;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat20) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendMul2" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_8;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_10;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					float u_xlat20;
					bool u_xlatb20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat20 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 9.99999997e-07);
					        u_xlat3.x = inversesqrt(u_xlat20);
					        u_xlat5.xyz = u_xlat3.xxx * u_xlat5.xyz;
					        u_xlat20 = u_xlat20 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat20 = float(1.0) / u_xlat20;
					        u_xlat3.x = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat3.x = max(u_xlat3.x, 0.0);
					        u_xlat20 = u_xlat20 * u_xlat3.x;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat20) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_8;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_10;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					float u_xlat20;
					bool u_xlatb20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat20 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 9.99999997e-07);
					        u_xlat3.x = inversesqrt(u_xlat20);
					        u_xlat5.xyz = u_xlat3.xxx * u_xlat5.xyz;
					        u_xlat20 = u_xlat20 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat20 = float(1.0) / u_xlat20;
					        u_xlat3.x = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat3.x = max(u_xlat3.x, 0.0);
					        u_xlat20 = u_xlat20 * u_xlat3.x;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat20) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_8;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_10;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					float u_xlat20;
					bool u_xlatb20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat20 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 9.99999997e-07);
					        u_xlat3.x = inversesqrt(u_xlat20);
					        u_xlat5.xyz = u_xlat3.xxx * u_xlat5.xyz;
					        u_xlat20 = u_xlat20 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat20 = float(1.0) / u_xlat20;
					        u_xlat3.x = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat3.x = max(u_xlat3.x, 0.0);
					        u_xlat20 = u_xlat20 * u_xlat3.x;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat20) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_8;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_10;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					float u_xlat20;
					bool u_xlatb20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat20 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 9.99999997e-07);
					        u_xlat3.x = inversesqrt(u_xlat20);
					        u_xlat5.xyz = u_xlat3.xxx * u_xlat5.xyz;
					        u_xlat20 = u_xlat20 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat20 = float(1.0) / u_xlat20;
					        u_xlat3.x = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat3.x = max(u_xlat3.x, 0.0);
					        u_xlat20 = u_xlat20 * u_xlat3.x;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat20) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_8;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_10;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					float u_xlat20;
					bool u_xlatb20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat20 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 9.99999997e-07);
					        u_xlat3.x = inversesqrt(u_xlat20);
					        u_xlat5.xyz = u_xlat3.xxx * u_xlat5.xyz;
					        u_xlat20 = u_xlat20 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat20 = float(1.0) / u_xlat20;
					        u_xlat3.x = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat3.x = max(u_xlat3.x, 0.0);
					        u_xlat20 = u_xlat20 * u_xlat3.x;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat20) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_8;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_10;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					float u_xlat20;
					bool u_xlatb20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat20 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 9.99999997e-07);
					        u_xlat3.x = inversesqrt(u_xlat20);
					        u_xlat5.xyz = u_xlat3.xxx * u_xlat5.xyz;
					        u_xlat20 = u_xlat20 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat20 = float(1.0) / u_xlat20;
					        u_xlat3.x = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat3.x = max(u_xlat3.x, 0.0);
					        u_xlat20 = u_xlat20 * u_xlat3.x;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat20) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_8;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_10;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					float u_xlat20;
					bool u_xlatb20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat20 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 9.99999997e-07);
					        u_xlat3.x = inversesqrt(u_xlat20);
					        u_xlat5.xyz = u_xlat3.xxx * u_xlat5.xyz;
					        u_xlat20 = u_xlat20 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat20 = float(1.0) / u_xlat20;
					        u_xlat3.x = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat3.x = max(u_xlat3.x, 0.0);
					        u_xlat20 = u_xlat20 * u_xlat3.x;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat20) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_8;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_10;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					float u_xlat20;
					bool u_xlatb20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat20 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 9.99999997e-07);
					        u_xlat3.x = inversesqrt(u_xlat20);
					        u_xlat5.xyz = u_xlat3.xxx * u_xlat5.xyz;
					        u_xlat20 = u_xlat20 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat20 = float(1.0) / u_xlat20;
					        u_xlat3.x = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat3.x = max(u_xlat3.x, 0.0);
					        u_xlat20 = u_xlat20 * u_xlat3.x;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat20) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendMul2" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendMul2" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendMul2" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_8;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_10;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					float u_xlat20;
					bool u_xlatb20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat20 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 9.99999997e-07);
					        u_xlat3.x = inversesqrt(u_xlat20);
					        u_xlat5.xyz = u_xlat3.xxx * u_xlat5.xyz;
					        u_xlat20 = u_xlat20 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat20 = float(1.0) / u_xlat20;
					        u_xlat3.x = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat3.x = max(u_xlat3.x, 0.0);
					        u_xlat20 = u_xlat20 * u_xlat3.x;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat20) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_8;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_10;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					float u_xlat20;
					bool u_xlatb20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat20 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 9.99999997e-07);
					        u_xlat3.x = inversesqrt(u_xlat20);
					        u_xlat5.xyz = u_xlat3.xxx * u_xlat5.xyz;
					        u_xlat20 = u_xlat20 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat20 = float(1.0) / u_xlat20;
					        u_xlat3.x = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat3.x = max(u_xlat3.x, 0.0);
					        u_xlat20 = u_xlat20 * u_xlat3.x;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat20) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_8;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_10;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					float u_xlat20;
					bool u_xlatb20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat20 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 9.99999997e-07);
					        u_xlat3.x = inversesqrt(u_xlat20);
					        u_xlat5.xyz = u_xlat3.xxx * u_xlat5.xyz;
					        u_xlat20 = u_xlat20 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat20 = float(1.0) / u_xlat20;
					        u_xlat3.x = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat3.x = max(u_xlat3.x, 0.0);
					        u_xlat20 = u_xlat20 * u_xlat3.x;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat20) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_8;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_10;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					float u_xlat20;
					bool u_xlatb20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat20 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 9.99999997e-07);
					        u_xlat3.x = inversesqrt(u_xlat20);
					        u_xlat5.xyz = u_xlat3.xxx * u_xlat5.xyz;
					        u_xlat20 = u_xlat20 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat20 = float(1.0) / u_xlat20;
					        u_xlat3.x = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat3.x = max(u_xlat3.x, 0.0);
					        u_xlat20 = u_xlat20 * u_xlat3.x;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat20) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_8;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_10;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					float u_xlat20;
					bool u_xlatb20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat20 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 9.99999997e-07);
					        u_xlat3.x = inversesqrt(u_xlat20);
					        u_xlat5.xyz = u_xlat3.xxx * u_xlat5.xyz;
					        u_xlat20 = u_xlat20 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat20 = float(1.0) / u_xlat20;
					        u_xlat3.x = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat3.x = max(u_xlat3.x, 0.0);
					        u_xlat20 = u_xlat20 * u_xlat3.x;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat20) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_8;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_10;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					float u_xlat20;
					bool u_xlatb20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat20 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 9.99999997e-07);
					        u_xlat3.x = inversesqrt(u_xlat20);
					        u_xlat5.xyz = u_xlat3.xxx * u_xlat5.xyz;
					        u_xlat20 = u_xlat20 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat20 = float(1.0) / u_xlat20;
					        u_xlat3.x = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat3.x = max(u_xlat3.x, 0.0);
					        u_xlat20 = u_xlat20 * u_xlat3.x;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat20) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_8;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_10;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					float u_xlat20;
					bool u_xlatb20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat20 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 9.99999997e-07);
					        u_xlat3.x = inversesqrt(u_xlat20);
					        u_xlat5.xyz = u_xlat3.xxx * u_xlat5.xyz;
					        u_xlat20 = u_xlat20 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat20 = float(1.0) / u_xlat20;
					        u_xlat3.x = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat3.x = max(u_xlat3.x, 0.0);
					        u_xlat20 = u_xlat20 * u_xlat3.x;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat20) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_8;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_10;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					float u_xlat20;
					bool u_xlatb20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat20 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 9.99999997e-07);
					        u_xlat3.x = inversesqrt(u_xlat20);
					        u_xlat5.xyz = u_xlat3.xxx * u_xlat5.xyz;
					        u_xlat20 = u_xlat20 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat20 = float(1.0) / u_xlat20;
					        u_xlat3.x = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat3.x = max(u_xlat3.x, 0.0);
					        u_xlat20 = u_xlat20 * u_xlat3.x;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat20) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendMul2" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_8;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_10;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					float u_xlat20;
					bool u_xlatb20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat20 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 9.99999997e-07);
					        u_xlat3.x = inversesqrt(u_xlat20);
					        u_xlat5.xyz = u_xlat3.xxx * u_xlat5.xyz;
					        u_xlat20 = u_xlat20 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat20 = float(1.0) / u_xlat20;
					        u_xlat3.x = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat3.x = max(u_xlat3.x, 0.0);
					        u_xlat20 = u_xlat20 * u_xlat3.x;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat20) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_8;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_10;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					float u_xlat20;
					bool u_xlatb20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat20 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 9.99999997e-07);
					        u_xlat3.x = inversesqrt(u_xlat20);
					        u_xlat5.xyz = u_xlat3.xxx * u_xlat5.xyz;
					        u_xlat20 = u_xlat20 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat20 = float(1.0) / u_xlat20;
					        u_xlat3.x = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat3.x = max(u_xlat3.x, 0.0);
					        u_xlat20 = u_xlat20 * u_xlat3.x;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat20) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_8;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_10;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					float u_xlat20;
					bool u_xlatb20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat20 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 9.99999997e-07);
					        u_xlat3.x = inversesqrt(u_xlat20);
					        u_xlat5.xyz = u_xlat3.xxx * u_xlat5.xyz;
					        u_xlat20 = u_xlat20 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat20 = float(1.0) / u_xlat20;
					        u_xlat3.x = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat3.x = max(u_xlat3.x, 0.0);
					        u_xlat20 = u_xlat20 * u_xlat3.x;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat20) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_8;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_10;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					float u_xlat20;
					bool u_xlatb20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat20 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 9.99999997e-07);
					        u_xlat3.x = inversesqrt(u_xlat20);
					        u_xlat5.xyz = u_xlat3.xxx * u_xlat5.xyz;
					        u_xlat20 = u_xlat20 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat20 = float(1.0) / u_xlat20;
					        u_xlat3.x = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat3.x = max(u_xlat3.x, 0.0);
					        u_xlat20 = u_xlat20 * u_xlat3.x;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat20) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_8;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_10;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					float u_xlat20;
					bool u_xlatb20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat20 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 9.99999997e-07);
					        u_xlat3.x = inversesqrt(u_xlat20);
					        u_xlat5.xyz = u_xlat3.xxx * u_xlat5.xyz;
					        u_xlat20 = u_xlat20 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat20 = float(1.0) / u_xlat20;
					        u_xlat3.x = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat3.x = max(u_xlat3.x, 0.0);
					        u_xlat20 = u_xlat20 * u_xlat3.x;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat20) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_8;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_10;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					float u_xlat20;
					bool u_xlatb20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat20 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 9.99999997e-07);
					        u_xlat3.x = inversesqrt(u_xlat20);
					        u_xlat5.xyz = u_xlat3.xxx * u_xlat5.xyz;
					        u_xlat20 = u_xlat20 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat20 = float(1.0) / u_xlat20;
					        u_xlat3.x = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat3.x = max(u_xlat3.x, 0.0);
					        u_xlat20 = u_xlat20 * u_xlat3.x;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat20) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_8;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_10;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					float u_xlat20;
					bool u_xlatb20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat20 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 9.99999997e-07);
					        u_xlat3.x = inversesqrt(u_xlat20);
					        u_xlat5.xyz = u_xlat3.xxx * u_xlat5.xyz;
					        u_xlat20 = u_xlat20 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat20 = float(1.0) / u_xlat20;
					        u_xlat3.x = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat3.x = max(u_xlat3.x, 0.0);
					        u_xlat20 = u_xlat20 * u_xlat3.x;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat20) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_8;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_10;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					out vec4 vs_COLOR0;
					out vec2 vs_TEXCOORD0;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					float u_xlat20;
					bool u_xlatb20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat20 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 9.99999997e-07);
					        u_xlat3.x = inversesqrt(u_xlat20);
					        u_xlat5.xyz = u_xlat3.xxx * u_xlat5.xyz;
					        u_xlat20 = u_xlat20 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat20 = float(1.0) / u_xlat20;
					        u_xlat3.x = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat3.x = max(u_xlat3.x, 0.0);
					        u_xlat20 = u_xlat20 * u_xlat3.x;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat20) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD2 = u_xlat4.z;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendMul2" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendMul2" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendMul2" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_8;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_10;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					float u_xlat20;
					bool u_xlatb20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat20 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 9.99999997e-07);
					        u_xlat3.x = inversesqrt(u_xlat20);
					        u_xlat5.xyz = u_xlat3.xxx * u_xlat5.xyz;
					        u_xlat20 = u_xlat20 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat20 = float(1.0) / u_xlat20;
					        u_xlat3.x = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat3.x = max(u_xlat3.x, 0.0);
					        u_xlat20 = u_xlat20 * u_xlat3.x;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat20) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_8;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_10;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					float u_xlat20;
					bool u_xlatb20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat20 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 9.99999997e-07);
					        u_xlat3.x = inversesqrt(u_xlat20);
					        u_xlat5.xyz = u_xlat3.xxx * u_xlat5.xyz;
					        u_xlat20 = u_xlat20 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat20 = float(1.0) / u_xlat20;
					        u_xlat3.x = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat3.x = max(u_xlat3.x, 0.0);
					        u_xlat20 = u_xlat20 * u_xlat3.x;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat20) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_8;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_10;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					float u_xlat20;
					bool u_xlatb20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat20 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 9.99999997e-07);
					        u_xlat3.x = inversesqrt(u_xlat20);
					        u_xlat5.xyz = u_xlat3.xxx * u_xlat5.xyz;
					        u_xlat20 = u_xlat20 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat20 = float(1.0) / u_xlat20;
					        u_xlat3.x = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat3.x = max(u_xlat3.x, 0.0);
					        u_xlat20 = u_xlat20 * u_xlat3.x;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat20) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_8;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_10;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					float u_xlat20;
					bool u_xlatb20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat20 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 9.99999997e-07);
					        u_xlat3.x = inversesqrt(u_xlat20);
					        u_xlat5.xyz = u_xlat3.xxx * u_xlat5.xyz;
					        u_xlat20 = u_xlat20 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat20 = float(1.0) / u_xlat20;
					        u_xlat3.x = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat3.x = max(u_xlat3.x, 0.0);
					        u_xlat20 = u_xlat20 * u_xlat3.x;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat20) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_8;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_10;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					float u_xlat20;
					bool u_xlatb20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat20 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 9.99999997e-07);
					        u_xlat3.x = inversesqrt(u_xlat20);
					        u_xlat5.xyz = u_xlat3.xxx * u_xlat5.xyz;
					        u_xlat20 = u_xlat20 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat20 = float(1.0) / u_xlat20;
					        u_xlat3.x = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat3.x = max(u_xlat3.x, 0.0);
					        u_xlat20 = u_xlat20 * u_xlat3.x;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat20) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_8;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_10;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					float u_xlat20;
					bool u_xlatb20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat20 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 9.99999997e-07);
					        u_xlat3.x = inversesqrt(u_xlat20);
					        u_xlat5.xyz = u_xlat3.xxx * u_xlat5.xyz;
					        u_xlat20 = u_xlat20 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat20 = float(1.0) / u_xlat20;
					        u_xlat3.x = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat3.x = max(u_xlat3.x, 0.0);
					        u_xlat20 = u_xlat20 * u_xlat3.x;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat20) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_8;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_10;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					float u_xlat20;
					bool u_xlatb20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat20 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 9.99999997e-07);
					        u_xlat3.x = inversesqrt(u_xlat20);
					        u_xlat5.xyz = u_xlat3.xxx * u_xlat5.xyz;
					        u_xlat20 = u_xlat20 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat20 = float(1.0) / u_xlat20;
					        u_xlat3.x = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat3.x = max(u_xlat3.x, 0.0);
					        u_xlat20 = u_xlat20 * u_xlat3.x;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat20) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_8;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_10;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					float u_xlat20;
					bool u_xlatb20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat20 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 9.99999997e-07);
					        u_xlat3.x = inversesqrt(u_xlat20);
					        u_xlat5.xyz = u_xlat3.xxx * u_xlat5.xyz;
					        u_xlat20 = u_xlat20 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat20 = float(1.0) / u_xlat20;
					        u_xlat3.x = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat3.x = max(u_xlat3.x, 0.0);
					        u_xlat20 = u_xlat20 * u_xlat3.x;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat20) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendMul2" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_8;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_10;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					float u_xlat20;
					bool u_xlatb20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat20 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 9.99999997e-07);
					        u_xlat3.x = inversesqrt(u_xlat20);
					        u_xlat5.xyz = u_xlat3.xxx * u_xlat5.xyz;
					        u_xlat20 = u_xlat20 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat20 = float(1.0) / u_xlat20;
					        u_xlat3.x = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat3.x = max(u_xlat3.x, 0.0);
					        u_xlat20 = u_xlat20 * u_xlat3.x;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat20) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_8;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_10;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					float u_xlat20;
					bool u_xlatb20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat20 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 9.99999997e-07);
					        u_xlat3.x = inversesqrt(u_xlat20);
					        u_xlat5.xyz = u_xlat3.xxx * u_xlat5.xyz;
					        u_xlat20 = u_xlat20 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat20 = float(1.0) / u_xlat20;
					        u_xlat3.x = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat3.x = max(u_xlat3.x, 0.0);
					        u_xlat20 = u_xlat20 * u_xlat3.x;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat20) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_8;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_10;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					float u_xlat20;
					bool u_xlatb20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat20 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 9.99999997e-07);
					        u_xlat3.x = inversesqrt(u_xlat20);
					        u_xlat5.xyz = u_xlat3.xxx * u_xlat5.xyz;
					        u_xlat20 = u_xlat20 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat20 = float(1.0) / u_xlat20;
					        u_xlat3.x = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat3.x = max(u_xlat3.x, 0.0);
					        u_xlat20 = u_xlat20 * u_xlat3.x;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat20) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_8;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_10;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					float u_xlat20;
					bool u_xlatb20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat20 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 9.99999997e-07);
					        u_xlat3.x = inversesqrt(u_xlat20);
					        u_xlat5.xyz = u_xlat3.xxx * u_xlat5.xyz;
					        u_xlat20 = u_xlat20 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat20 = float(1.0) / u_xlat20;
					        u_xlat3.x = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat3.x = max(u_xlat3.x, 0.0);
					        u_xlat20 = u_xlat20 * u_xlat3.x;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat20) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_8;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_10;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					float u_xlat20;
					bool u_xlatb20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat20 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 9.99999997e-07);
					        u_xlat3.x = inversesqrt(u_xlat20);
					        u_xlat5.xyz = u_xlat3.xxx * u_xlat5.xyz;
					        u_xlat20 = u_xlat20 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat20 = float(1.0) / u_xlat20;
					        u_xlat3.x = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat3.x = max(u_xlat3.x, 0.0);
					        u_xlat20 = u_xlat20 * u_xlat3.x;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat20) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_8;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_10;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					float u_xlat20;
					bool u_xlatb20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat20 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 9.99999997e-07);
					        u_xlat3.x = inversesqrt(u_xlat20);
					        u_xlat5.xyz = u_xlat3.xxx * u_xlat5.xyz;
					        u_xlat20 = u_xlat20 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat20 = float(1.0) / u_xlat20;
					        u_xlat3.x = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat3.x = max(u_xlat3.x, 0.0);
					        u_xlat20 = u_xlat20 * u_xlat3.x;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat20) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_8;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_10;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					float u_xlat20;
					bool u_xlatb20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat20 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 9.99999997e-07);
					        u_xlat3.x = inversesqrt(u_xlat20);
					        u_xlat5.xyz = u_xlat3.xxx * u_xlat5.xyz;
					        u_xlat20 = u_xlat20 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat20 = float(1.0) / u_xlat20;
					        u_xlat3.x = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat3.x = max(u_xlat3.x, 0.0);
					        u_xlat20 = u_xlat20 * u_xlat3.x;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat20) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_8;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_10;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					float u_xlat20;
					bool u_xlatb20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat20 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 9.99999997e-07);
					        u_xlat3.x = inversesqrt(u_xlat20);
					        u_xlat5.xyz = u_xlat3.xxx * u_xlat5.xyz;
					        u_xlat20 = u_xlat20 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat20 = float(1.0) / u_xlat20;
					        u_xlat3.x = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat3.x = max(u_xlat3.x, 0.0);
					        u_xlat20 = u_xlat20 * u_xlat3.x;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat20) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendMul2" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendMul2" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendMul2" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_8;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_10;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					float u_xlat20;
					bool u_xlatb20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat20 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 9.99999997e-07);
					        u_xlat3.x = inversesqrt(u_xlat20);
					        u_xlat5.xyz = u_xlat3.xxx * u_xlat5.xyz;
					        u_xlat20 = u_xlat20 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat20 = float(1.0) / u_xlat20;
					        u_xlat3.x = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat3.x = max(u_xlat3.x, 0.0);
					        u_xlat20 = u_xlat20 * u_xlat3.x;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat20) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_8;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_10;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					float u_xlat20;
					bool u_xlatb20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat20 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 9.99999997e-07);
					        u_xlat3.x = inversesqrt(u_xlat20);
					        u_xlat5.xyz = u_xlat3.xxx * u_xlat5.xyz;
					        u_xlat20 = u_xlat20 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat20 = float(1.0) / u_xlat20;
					        u_xlat3.x = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat3.x = max(u_xlat3.x, 0.0);
					        u_xlat20 = u_xlat20 * u_xlat3.x;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat20) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_8;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_10;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					float u_xlat20;
					bool u_xlatb20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat20 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 9.99999997e-07);
					        u_xlat3.x = inversesqrt(u_xlat20);
					        u_xlat5.xyz = u_xlat3.xxx * u_xlat5.xyz;
					        u_xlat20 = u_xlat20 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat20 = float(1.0) / u_xlat20;
					        u_xlat3.x = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat3.x = max(u_xlat3.x, 0.0);
					        u_xlat20 = u_xlat20 * u_xlat3.x;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat20) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_8;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_10;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					float u_xlat20;
					bool u_xlatb20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat20 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 9.99999997e-07);
					        u_xlat3.x = inversesqrt(u_xlat20);
					        u_xlat5.xyz = u_xlat3.xxx * u_xlat5.xyz;
					        u_xlat20 = u_xlat20 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat20 = float(1.0) / u_xlat20;
					        u_xlat3.x = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat3.x = max(u_xlat3.x, 0.0);
					        u_xlat20 = u_xlat20 * u_xlat3.x;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat20) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_8;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_10;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					float u_xlat20;
					bool u_xlatb20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat20 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 9.99999997e-07);
					        u_xlat3.x = inversesqrt(u_xlat20);
					        u_xlat5.xyz = u_xlat3.xxx * u_xlat5.xyz;
					        u_xlat20 = u_xlat20 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat20 = float(1.0) / u_xlat20;
					        u_xlat3.x = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat3.x = max(u_xlat3.x, 0.0);
					        u_xlat20 = u_xlat20 * u_xlat3.x;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat20) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_8;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_10;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					float u_xlat20;
					bool u_xlatb20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat20 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 9.99999997e-07);
					        u_xlat3.x = inversesqrt(u_xlat20);
					        u_xlat5.xyz = u_xlat3.xxx * u_xlat5.xyz;
					        u_xlat20 = u_xlat20 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat20 = float(1.0) / u_xlat20;
					        u_xlat3.x = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat3.x = max(u_xlat3.x, 0.0);
					        u_xlat20 = u_xlat20 * u_xlat3.x;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat20) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_8;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_10;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					float u_xlat20;
					bool u_xlatb20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat20 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 9.99999997e-07);
					        u_xlat3.x = inversesqrt(u_xlat20);
					        u_xlat5.xyz = u_xlat3.xxx * u_xlat5.xyz;
					        u_xlat20 = u_xlat20 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat20 = float(1.0) / u_xlat20;
					        u_xlat3.x = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat3.x = max(u_xlat3.x, 0.0);
					        u_xlat20 = u_xlat20 * u_xlat3.x;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat20) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_8;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_10;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					float u_xlat20;
					bool u_xlatb20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat20 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 9.99999997e-07);
					        u_xlat3.x = inversesqrt(u_xlat20);
					        u_xlat5.xyz = u_xlat3.xxx * u_xlat5.xyz;
					        u_xlat20 = u_xlat20 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat20 = float(1.0) / u_xlat20;
					        u_xlat3.x = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat3.x = max(u_xlat3.x, 0.0);
					        u_xlat20 = u_xlat20 * u_xlat3.x;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat20) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendMul2" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_8;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_10;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					float u_xlat20;
					bool u_xlatb20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat20 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 9.99999997e-07);
					        u_xlat3.x = inversesqrt(u_xlat20);
					        u_xlat5.xyz = u_xlat3.xxx * u_xlat5.xyz;
					        u_xlat20 = u_xlat20 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat20 = float(1.0) / u_xlat20;
					        u_xlat3.x = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat3.x = max(u_xlat3.x, 0.0);
					        u_xlat20 = u_xlat20 * u_xlat3.x;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat20) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_8;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_10;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					float u_xlat20;
					bool u_xlatb20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat20 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 9.99999997e-07);
					        u_xlat3.x = inversesqrt(u_xlat20);
					        u_xlat5.xyz = u_xlat3.xxx * u_xlat5.xyz;
					        u_xlat20 = u_xlat20 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat20 = float(1.0) / u_xlat20;
					        u_xlat3.x = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat3.x = max(u_xlat3.x, 0.0);
					        u_xlat20 = u_xlat20 * u_xlat3.x;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat20) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_8;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_10;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					float u_xlat20;
					bool u_xlatb20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat20 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 9.99999997e-07);
					        u_xlat3.x = inversesqrt(u_xlat20);
					        u_xlat5.xyz = u_xlat3.xxx * u_xlat5.xyz;
					        u_xlat20 = u_xlat20 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat20 = float(1.0) / u_xlat20;
					        u_xlat3.x = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat3.x = max(u_xlat3.x, 0.0);
					        u_xlat20 = u_xlat20 * u_xlat3.x;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat20) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_8;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_10;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					float u_xlat20;
					bool u_xlatb20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat20 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 9.99999997e-07);
					        u_xlat3.x = inversesqrt(u_xlat20);
					        u_xlat5.xyz = u_xlat3.xxx * u_xlat5.xyz;
					        u_xlat20 = u_xlat20 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat20 = float(1.0) / u_xlat20;
					        u_xlat3.x = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat3.x = max(u_xlat3.x, 0.0);
					        u_xlat20 = u_xlat20 * u_xlat3.x;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat20) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_8;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_10;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					float u_xlat20;
					bool u_xlatb20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat20 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 9.99999997e-07);
					        u_xlat3.x = inversesqrt(u_xlat20);
					        u_xlat5.xyz = u_xlat3.xxx * u_xlat5.xyz;
					        u_xlat20 = u_xlat20 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat20 = float(1.0) / u_xlat20;
					        u_xlat3.x = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat3.x = max(u_xlat3.x, 0.0);
					        u_xlat20 = u_xlat20 * u_xlat3.x;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat20) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_8;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_10;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					float u_xlat20;
					bool u_xlatb20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat20 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 9.99999997e-07);
					        u_xlat3.x = inversesqrt(u_xlat20);
					        u_xlat5.xyz = u_xlat3.xxx * u_xlat5.xyz;
					        u_xlat20 = u_xlat20 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat20 = float(1.0) / u_xlat20;
					        u_xlat3.x = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat3.x = max(u_xlat3.x, 0.0);
					        u_xlat20 = u_xlat20 * u_xlat3.x;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat20) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_8;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_10;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					float u_xlat20;
					bool u_xlatb20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat20 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 9.99999997e-07);
					        u_xlat3.x = inversesqrt(u_xlat20);
					        u_xlat5.xyz = u_xlat3.xxx * u_xlat5.xyz;
					        u_xlat20 = u_xlat20 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat20 = float(1.0) / u_xlat20;
					        u_xlat3.x = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat3.x = max(u_xlat3.x, 0.0);
					        u_xlat20 = u_xlat20 * u_xlat3.x;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat20) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_8;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_10;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					float u_xlat20;
					bool u_xlatb20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat20 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 9.99999997e-07);
					        u_xlat3.x = inversesqrt(u_xlat20);
					        u_xlat5.xyz = u_xlat3.xxx * u_xlat5.xyz;
					        u_xlat20 = u_xlat20 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat20 = float(1.0) / u_xlat20;
					        u_xlat3.x = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat3.x = max(u_xlat3.x, 0.0);
					        u_xlat20 = u_xlat20 * u_xlat3.x;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat20) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendMul2" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendMul2" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendMul2" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_8;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_10;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					float u_xlat20;
					bool u_xlatb20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat20 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 9.99999997e-07);
					        u_xlat3.x = inversesqrt(u_xlat20);
					        u_xlat5.xyz = u_xlat3.xxx * u_xlat5.xyz;
					        u_xlat20 = u_xlat20 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat20 = float(1.0) / u_xlat20;
					        u_xlat3.x = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat3.x = max(u_xlat3.x, 0.0);
					        u_xlat20 = u_xlat20 * u_xlat3.x;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat20) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_8;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_10;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					float u_xlat20;
					bool u_xlatb20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat20 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 9.99999997e-07);
					        u_xlat3.x = inversesqrt(u_xlat20);
					        u_xlat5.xyz = u_xlat3.xxx * u_xlat5.xyz;
					        u_xlat20 = u_xlat20 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat20 = float(1.0) / u_xlat20;
					        u_xlat3.x = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat3.x = max(u_xlat3.x, 0.0);
					        u_xlat20 = u_xlat20 * u_xlat3.x;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat20) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_8;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_10;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					float u_xlat20;
					bool u_xlatb20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat20 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 9.99999997e-07);
					        u_xlat3.x = inversesqrt(u_xlat20);
					        u_xlat5.xyz = u_xlat3.xxx * u_xlat5.xyz;
					        u_xlat20 = u_xlat20 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat20 = float(1.0) / u_xlat20;
					        u_xlat3.x = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat3.x = max(u_xlat3.x, 0.0);
					        u_xlat20 = u_xlat20 * u_xlat3.x;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat20) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_8;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_10;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					float u_xlat20;
					bool u_xlatb20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat20 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 9.99999997e-07);
					        u_xlat3.x = inversesqrt(u_xlat20);
					        u_xlat5.xyz = u_xlat3.xxx * u_xlat5.xyz;
					        u_xlat20 = u_xlat20 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat20 = float(1.0) / u_xlat20;
					        u_xlat3.x = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat3.x = max(u_xlat3.x, 0.0);
					        u_xlat20 = u_xlat20 * u_xlat3.x;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat20) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_8;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_10;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					float u_xlat20;
					bool u_xlatb20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat20 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 9.99999997e-07);
					        u_xlat3.x = inversesqrt(u_xlat20);
					        u_xlat5.xyz = u_xlat3.xxx * u_xlat5.xyz;
					        u_xlat20 = u_xlat20 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat20 = float(1.0) / u_xlat20;
					        u_xlat3.x = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat3.x = max(u_xlat3.x, 0.0);
					        u_xlat20 = u_xlat20 * u_xlat3.x;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat20) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_8;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_10;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					float u_xlat20;
					bool u_xlatb20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat20 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 9.99999997e-07);
					        u_xlat3.x = inversesqrt(u_xlat20);
					        u_xlat5.xyz = u_xlat3.xxx * u_xlat5.xyz;
					        u_xlat20 = u_xlat20 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat20 = float(1.0) / u_xlat20;
					        u_xlat3.x = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat3.x = max(u_xlat3.x, 0.0);
					        u_xlat20 = u_xlat20 * u_xlat3.x;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat20) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_8;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_10;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					float u_xlat20;
					bool u_xlatb20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat20 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 9.99999997e-07);
					        u_xlat3.x = inversesqrt(u_xlat20);
					        u_xlat5.xyz = u_xlat3.xxx * u_xlat5.xyz;
					        u_xlat20 = u_xlat20 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat20 = float(1.0) / u_xlat20;
					        u_xlat3.x = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat3.x = max(u_xlat3.x, 0.0);
					        u_xlat20 = u_xlat20 * u_xlat3.x;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat20) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_8;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_10;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					float u_xlat20;
					bool u_xlatb20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat20 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 9.99999997e-07);
					        u_xlat3.x = inversesqrt(u_xlat20);
					        u_xlat5.xyz = u_xlat3.xxx * u_xlat5.xyz;
					        u_xlat20 = u_xlat20 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat20 = float(1.0) / u_xlat20;
					        u_xlat3.x = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat3.x = max(u_xlat3.x, 0.0);
					        u_xlat20 = u_xlat20 * u_xlat3.x;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat20) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendMul2" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_8;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_10;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					float u_xlat20;
					bool u_xlatb20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat20 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 9.99999997e-07);
					        u_xlat3.x = inversesqrt(u_xlat20);
					        u_xlat5.xyz = u_xlat3.xxx * u_xlat5.xyz;
					        u_xlat20 = u_xlat20 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat20 = float(1.0) / u_xlat20;
					        u_xlat3.x = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat3.x = max(u_xlat3.x, 0.0);
					        u_xlat20 = u_xlat20 * u_xlat3.x;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat20) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_8;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_10;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					float u_xlat20;
					bool u_xlatb20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat20 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 9.99999997e-07);
					        u_xlat3.x = inversesqrt(u_xlat20);
					        u_xlat5.xyz = u_xlat3.xxx * u_xlat5.xyz;
					        u_xlat20 = u_xlat20 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat20 = float(1.0) / u_xlat20;
					        u_xlat3.x = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat3.x = max(u_xlat3.x, 0.0);
					        u_xlat20 = u_xlat20 * u_xlat3.x;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat20) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_8;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_10;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					float u_xlat20;
					bool u_xlatb20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat20 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 9.99999997e-07);
					        u_xlat3.x = inversesqrt(u_xlat20);
					        u_xlat5.xyz = u_xlat3.xxx * u_xlat5.xyz;
					        u_xlat20 = u_xlat20 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat20 = float(1.0) / u_xlat20;
					        u_xlat3.x = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat3.x = max(u_xlat3.x, 0.0);
					        u_xlat20 = u_xlat20 * u_xlat3.x;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat20) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_8;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_10;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					float u_xlat20;
					bool u_xlatb20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat20 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 9.99999997e-07);
					        u_xlat3.x = inversesqrt(u_xlat20);
					        u_xlat5.xyz = u_xlat3.xxx * u_xlat5.xyz;
					        u_xlat20 = u_xlat20 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat20 = float(1.0) / u_xlat20;
					        u_xlat3.x = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat3.x = max(u_xlat3.x, 0.0);
					        u_xlat20 = u_xlat20 * u_xlat3.x;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat20) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_8;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_10;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					float u_xlat20;
					bool u_xlatb20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat20 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 9.99999997e-07);
					        u_xlat3.x = inversesqrt(u_xlat20);
					        u_xlat5.xyz = u_xlat3.xxx * u_xlat5.xyz;
					        u_xlat20 = u_xlat20 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat20 = float(1.0) / u_xlat20;
					        u_xlat3.x = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat3.x = max(u_xlat3.x, 0.0);
					        u_xlat20 = u_xlat20 * u_xlat3.x;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat20) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_8;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_10;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					float u_xlat20;
					bool u_xlatb20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat20 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 9.99999997e-07);
					        u_xlat3.x = inversesqrt(u_xlat20);
					        u_xlat5.xyz = u_xlat3.xxx * u_xlat5.xyz;
					        u_xlat20 = u_xlat20 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat20 = float(1.0) / u_xlat20;
					        u_xlat3.x = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat3.x = max(u_xlat3.x, 0.0);
					        u_xlat20 = u_xlat20 * u_xlat3.x;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat20) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_8;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_10;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					float u_xlat20;
					bool u_xlatb20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat20 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 9.99999997e-07);
					        u_xlat3.x = inversesqrt(u_xlat20);
					        u_xlat5.xyz = u_xlat3.xxx * u_xlat5.xyz;
					        u_xlat20 = u_xlat20 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat20 = float(1.0) / u_xlat20;
					        u_xlat3.x = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat3.x = max(u_xlat3.x, 0.0);
					        u_xlat20 = u_xlat20 * u_xlat3.x;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat20) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_8;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_10;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					float u_xlat20;
					bool u_xlatb20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat20 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 9.99999997e-07);
					        u_xlat3.x = inversesqrt(u_xlat20);
					        u_xlat5.xyz = u_xlat3.xxx * u_xlat5.xyz;
					        u_xlat20 = u_xlat20 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat20 = float(1.0) / u_xlat20;
					        u_xlat3.x = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat3.x = max(u_xlat3.x, 0.0);
					        u_xlat20 = u_xlat20 * u_xlat3.x;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat20) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendMul2" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendMul2" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendMul2" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_8;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_10;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					float u_xlat20;
					bool u_xlatb20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat20 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 9.99999997e-07);
					        u_xlat3.x = inversesqrt(u_xlat20);
					        u_xlat5.xyz = u_xlat3.xxx * u_xlat5.xyz;
					        u_xlat20 = u_xlat20 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat20 = float(1.0) / u_xlat20;
					        u_xlat3.x = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat3.x = max(u_xlat3.x, 0.0);
					        u_xlat20 = u_xlat20 * u_xlat3.x;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat20) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_8;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_10;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					float u_xlat20;
					bool u_xlatb20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat20 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 9.99999997e-07);
					        u_xlat3.x = inversesqrt(u_xlat20);
					        u_xlat5.xyz = u_xlat3.xxx * u_xlat5.xyz;
					        u_xlat20 = u_xlat20 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat20 = float(1.0) / u_xlat20;
					        u_xlat3.x = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat3.x = max(u_xlat3.x, 0.0);
					        u_xlat20 = u_xlat20 * u_xlat3.x;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat20) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_8;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_10;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					float u_xlat20;
					bool u_xlatb20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat20 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 9.99999997e-07);
					        u_xlat3.x = inversesqrt(u_xlat20);
					        u_xlat5.xyz = u_xlat3.xxx * u_xlat5.xyz;
					        u_xlat20 = u_xlat20 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat20 = float(1.0) / u_xlat20;
					        u_xlat3.x = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat3.x = max(u_xlat3.x, 0.0);
					        u_xlat20 = u_xlat20 * u_xlat3.x;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat20) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_8;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_10;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					float u_xlat20;
					bool u_xlatb20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat20 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 9.99999997e-07);
					        u_xlat3.x = inversesqrt(u_xlat20);
					        u_xlat5.xyz = u_xlat3.xxx * u_xlat5.xyz;
					        u_xlat20 = u_xlat20 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat20 = float(1.0) / u_xlat20;
					        u_xlat3.x = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat3.x = max(u_xlat3.x, 0.0);
					        u_xlat20 = u_xlat20 * u_xlat3.x;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat20) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_8;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_10;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					float u_xlat20;
					bool u_xlatb20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat20 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 9.99999997e-07);
					        u_xlat3.x = inversesqrt(u_xlat20);
					        u_xlat5.xyz = u_xlat3.xxx * u_xlat5.xyz;
					        u_xlat20 = u_xlat20 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat20 = float(1.0) / u_xlat20;
					        u_xlat3.x = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat3.x = max(u_xlat3.x, 0.0);
					        u_xlat20 = u_xlat20 * u_xlat3.x;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat20) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_8;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_10;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					float u_xlat20;
					bool u_xlatb20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat20 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 9.99999997e-07);
					        u_xlat3.x = inversesqrt(u_xlat20);
					        u_xlat5.xyz = u_xlat3.xxx * u_xlat5.xyz;
					        u_xlat20 = u_xlat20 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat20 = float(1.0) / u_xlat20;
					        u_xlat3.x = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat3.x = max(u_xlat3.x, 0.0);
					        u_xlat20 = u_xlat20 * u_xlat3.x;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat20) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_8;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_10;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					float u_xlat20;
					bool u_xlatb20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat20 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 9.99999997e-07);
					        u_xlat3.x = inversesqrt(u_xlat20);
					        u_xlat5.xyz = u_xlat3.xxx * u_xlat5.xyz;
					        u_xlat20 = u_xlat20 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat20 = float(1.0) / u_xlat20;
					        u_xlat3.x = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat3.x = max(u_xlat3.x, 0.0);
					        u_xlat20 = u_xlat20 * u_xlat3.x;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat20) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_8;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_10;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					float u_xlat20;
					bool u_xlatb20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat20 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 9.99999997e-07);
					        u_xlat3.x = inversesqrt(u_xlat20);
					        u_xlat5.xyz = u_xlat3.xxx * u_xlat5.xyz;
					        u_xlat20 = u_xlat20 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat20 = float(1.0) / u_xlat20;
					        u_xlat3.x = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat3.x = max(u_xlat3.x, 0.0);
					        u_xlat20 = u_xlat20 * u_xlat3.x;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat20) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendMul2" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_8;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_10;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					float u_xlat20;
					bool u_xlatb20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat20 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 9.99999997e-07);
					        u_xlat3.x = inversesqrt(u_xlat20);
					        u_xlat5.xyz = u_xlat3.xxx * u_xlat5.xyz;
					        u_xlat20 = u_xlat20 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat20 = float(1.0) / u_xlat20;
					        u_xlat3.x = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat3.x = max(u_xlat3.x, 0.0);
					        u_xlat20 = u_xlat20 * u_xlat3.x;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat20) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_8;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_10;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					float u_xlat20;
					bool u_xlatb20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat20 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 9.99999997e-07);
					        u_xlat3.x = inversesqrt(u_xlat20);
					        u_xlat5.xyz = u_xlat3.xxx * u_xlat5.xyz;
					        u_xlat20 = u_xlat20 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat20 = float(1.0) / u_xlat20;
					        u_xlat3.x = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat3.x = max(u_xlat3.x, 0.0);
					        u_xlat20 = u_xlat20 * u_xlat3.x;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat20) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_8;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_10;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					float u_xlat20;
					bool u_xlatb20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat20 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 9.99999997e-07);
					        u_xlat3.x = inversesqrt(u_xlat20);
					        u_xlat5.xyz = u_xlat3.xxx * u_xlat5.xyz;
					        u_xlat20 = u_xlat20 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat20 = float(1.0) / u_xlat20;
					        u_xlat3.x = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat3.x = max(u_xlat3.x, 0.0);
					        u_xlat20 = u_xlat20 * u_xlat3.x;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat20) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_8;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_10;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					float u_xlat20;
					bool u_xlatb20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat20 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 9.99999997e-07);
					        u_xlat3.x = inversesqrt(u_xlat20);
					        u_xlat5.xyz = u_xlat3.xxx * u_xlat5.xyz;
					        u_xlat20 = u_xlat20 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat20 = float(1.0) / u_xlat20;
					        u_xlat3.x = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat3.x = max(u_xlat3.x, 0.0);
					        u_xlat20 = u_xlat20 * u_xlat3.x;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat20) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_8;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_10;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					float u_xlat20;
					bool u_xlatb20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat20 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 9.99999997e-07);
					        u_xlat3.x = inversesqrt(u_xlat20);
					        u_xlat5.xyz = u_xlat3.xxx * u_xlat5.xyz;
					        u_xlat20 = u_xlat20 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat20 = float(1.0) / u_xlat20;
					        u_xlat3.x = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat3.x = max(u_xlat3.x, 0.0);
					        u_xlat20 = u_xlat20 * u_xlat3.x;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat20) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_8;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_10;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					float u_xlat20;
					bool u_xlatb20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat20 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 9.99999997e-07);
					        u_xlat3.x = inversesqrt(u_xlat20);
					        u_xlat5.xyz = u_xlat3.xxx * u_xlat5.xyz;
					        u_xlat20 = u_xlat20 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat20 = float(1.0) / u_xlat20;
					        u_xlat3.x = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat3.x = max(u_xlat3.x, 0.0);
					        u_xlat20 = u_xlat20 * u_xlat3.x;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat20) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_8;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_10;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					float u_xlat20;
					bool u_xlatb20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat20 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 9.99999997e-07);
					        u_xlat3.x = inversesqrt(u_xlat20);
					        u_xlat5.xyz = u_xlat3.xxx * u_xlat5.xyz;
					        u_xlat20 = u_xlat20 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat20 = float(1.0) / u_xlat20;
					        u_xlat3.x = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat3.x = max(u_xlat3.x, 0.0);
					        u_xlat20 = u_xlat20 * u_xlat3.x;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat20) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_8;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_10;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					float u_xlat20;
					bool u_xlatb20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat20 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 9.99999997e-07);
					        u_xlat3.x = inversesqrt(u_xlat20);
					        u_xlat5.xyz = u_xlat3.xxx * u_xlat5.xyz;
					        u_xlat20 = u_xlat20 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat20 = float(1.0) / u_xlat20;
					        u_xlat3.x = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat3.x = max(u_xlat3.x, 0.0);
					        u_xlat20 = u_xlat20 * u_xlat3.x;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat20) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendMul2" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendMul2" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendMul2" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_8;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_10;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					float u_xlat20;
					bool u_xlatb20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat20 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 9.99999997e-07);
					        u_xlat3.x = inversesqrt(u_xlat20);
					        u_xlat5.xyz = u_xlat3.xxx * u_xlat5.xyz;
					        u_xlat20 = u_xlat20 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat20 = float(1.0) / u_xlat20;
					        u_xlat3.x = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat3.x = max(u_xlat3.x, 0.0);
					        u_xlat20 = u_xlat20 * u_xlat3.x;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat20) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_8;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_10;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					float u_xlat20;
					bool u_xlatb20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat20 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 9.99999997e-07);
					        u_xlat3.x = inversesqrt(u_xlat20);
					        u_xlat5.xyz = u_xlat3.xxx * u_xlat5.xyz;
					        u_xlat20 = u_xlat20 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat20 = float(1.0) / u_xlat20;
					        u_xlat3.x = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat3.x = max(u_xlat3.x, 0.0);
					        u_xlat20 = u_xlat20 * u_xlat3.x;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat20) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_8;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_10;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					float u_xlat20;
					bool u_xlatb20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat20 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 9.99999997e-07);
					        u_xlat3.x = inversesqrt(u_xlat20);
					        u_xlat5.xyz = u_xlat3.xxx * u_xlat5.xyz;
					        u_xlat20 = u_xlat20 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat20 = float(1.0) / u_xlat20;
					        u_xlat3.x = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat3.x = max(u_xlat3.x, 0.0);
					        u_xlat20 = u_xlat20 * u_xlat3.x;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat20) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_8;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_10;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					float u_xlat20;
					bool u_xlatb20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat20 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 9.99999997e-07);
					        u_xlat3.x = inversesqrt(u_xlat20);
					        u_xlat5.xyz = u_xlat3.xxx * u_xlat5.xyz;
					        u_xlat20 = u_xlat20 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat20 = float(1.0) / u_xlat20;
					        u_xlat3.x = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat3.x = max(u_xlat3.x, 0.0);
					        u_xlat20 = u_xlat20 * u_xlat3.x;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat20) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_8;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_10;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					float u_xlat20;
					bool u_xlatb20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat20 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 9.99999997e-07);
					        u_xlat3.x = inversesqrt(u_xlat20);
					        u_xlat5.xyz = u_xlat3.xxx * u_xlat5.xyz;
					        u_xlat20 = u_xlat20 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat20 = float(1.0) / u_xlat20;
					        u_xlat3.x = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat3.x = max(u_xlat3.x, 0.0);
					        u_xlat20 = u_xlat20 * u_xlat3.x;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat20) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_8;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_10;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					float u_xlat20;
					bool u_xlatb20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat20 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 9.99999997e-07);
					        u_xlat3.x = inversesqrt(u_xlat20);
					        u_xlat5.xyz = u_xlat3.xxx * u_xlat5.xyz;
					        u_xlat20 = u_xlat20 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat20 = float(1.0) / u_xlat20;
					        u_xlat3.x = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat3.x = max(u_xlat3.x, 0.0);
					        u_xlat20 = u_xlat20 * u_xlat3.x;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat20) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_8;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_10;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					float u_xlat20;
					bool u_xlatb20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat20 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 9.99999997e-07);
					        u_xlat3.x = inversesqrt(u_xlat20);
					        u_xlat5.xyz = u_xlat3.xxx * u_xlat5.xyz;
					        u_xlat20 = u_xlat20 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat20 = float(1.0) / u_xlat20;
					        u_xlat3.x = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat3.x = max(u_xlat3.x, 0.0);
					        u_xlat20 = u_xlat20 * u_xlat3.x;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat20) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_8;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_10;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					float u_xlat20;
					bool u_xlatb20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat20 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 9.99999997e-07);
					        u_xlat3.x = inversesqrt(u_xlat20);
					        u_xlat5.xyz = u_xlat3.xxx * u_xlat5.xyz;
					        u_xlat20 = u_xlat20 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat20 = float(1.0) / u_xlat20;
					        u_xlat3.x = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat3.x = max(u_xlat3.x, 0.0);
					        u_xlat20 = u_xlat20 * u_xlat3.x;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat20) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendMul2" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_8;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_10;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					float u_xlat20;
					bool u_xlatb20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat20 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 9.99999997e-07);
					        u_xlat3.x = inversesqrt(u_xlat20);
					        u_xlat5.xyz = u_xlat3.xxx * u_xlat5.xyz;
					        u_xlat20 = u_xlat20 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat20 = float(1.0) / u_xlat20;
					        u_xlat3.x = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat3.x = max(u_xlat3.x, 0.0);
					        u_xlat20 = u_xlat20 * u_xlat3.x;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat20) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_8;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_10;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					float u_xlat20;
					bool u_xlatb20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat20 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 9.99999997e-07);
					        u_xlat3.x = inversesqrt(u_xlat20);
					        u_xlat5.xyz = u_xlat3.xxx * u_xlat5.xyz;
					        u_xlat20 = u_xlat20 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat20 = float(1.0) / u_xlat20;
					        u_xlat3.x = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat3.x = max(u_xlat3.x, 0.0);
					        u_xlat20 = u_xlat20 * u_xlat3.x;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat20) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_8;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_10;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					float u_xlat20;
					bool u_xlatb20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat20 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 9.99999997e-07);
					        u_xlat3.x = inversesqrt(u_xlat20);
					        u_xlat5.xyz = u_xlat3.xxx * u_xlat5.xyz;
					        u_xlat20 = u_xlat20 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat20 = float(1.0) / u_xlat20;
					        u_xlat3.x = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat3.x = max(u_xlat3.x, 0.0);
					        u_xlat20 = u_xlat20 * u_xlat3.x;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat20) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_8;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_10;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					float u_xlat20;
					bool u_xlatb20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat20 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 9.99999997e-07);
					        u_xlat3.x = inversesqrt(u_xlat20);
					        u_xlat5.xyz = u_xlat3.xxx * u_xlat5.xyz;
					        u_xlat20 = u_xlat20 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat20 = float(1.0) / u_xlat20;
					        u_xlat3.x = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat3.x = max(u_xlat3.x, 0.0);
					        u_xlat20 = u_xlat20 * u_xlat3.x;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat20) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_8;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_10;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					float u_xlat20;
					bool u_xlatb20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat20 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 9.99999997e-07);
					        u_xlat3.x = inversesqrt(u_xlat20);
					        u_xlat5.xyz = u_xlat3.xxx * u_xlat5.xyz;
					        u_xlat20 = u_xlat20 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat20 = float(1.0) / u_xlat20;
					        u_xlat3.x = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat3.x = max(u_xlat3.x, 0.0);
					        u_xlat20 = u_xlat20 * u_xlat3.x;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat20) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_8;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_10;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					float u_xlat20;
					bool u_xlatb20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat20 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 9.99999997e-07);
					        u_xlat3.x = inversesqrt(u_xlat20);
					        u_xlat5.xyz = u_xlat3.xxx * u_xlat5.xyz;
					        u_xlat20 = u_xlat20 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat20 = float(1.0) / u_xlat20;
					        u_xlat3.x = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat3.x = max(u_xlat3.x, 0.0);
					        u_xlat20 = u_xlat20 * u_xlat3.x;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat20) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_8;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_10;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					float u_xlat20;
					bool u_xlatb20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat20 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 9.99999997e-07);
					        u_xlat3.x = inversesqrt(u_xlat20);
					        u_xlat5.xyz = u_xlat3.xxx * u_xlat5.xyz;
					        u_xlat20 = u_xlat20 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat20 = float(1.0) / u_xlat20;
					        u_xlat3.x = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat3.x = max(u_xlat3.x, 0.0);
					        u_xlat20 = u_xlat20 * u_xlat3.x;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat20) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_8;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_10;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					float u_xlat20;
					bool u_xlatb20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat20 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 9.99999997e-07);
					        u_xlat3.x = inversesqrt(u_xlat20);
					        u_xlat5.xyz = u_xlat3.xxx * u_xlat5.xyz;
					        u_xlat20 = u_xlat20 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat20 = float(1.0) / u_xlat20;
					        u_xlat3.x = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat3.x = max(u_xlat3.x, 0.0);
					        u_xlat20 = u_xlat20 * u_xlat3.x;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat20) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendMul2" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendMul2" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_8;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendMul2" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_8;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_10;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					float u_xlat20;
					bool u_xlatb20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat20 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 9.99999997e-07);
					        u_xlat3.x = inversesqrt(u_xlat20);
					        u_xlat5.xyz = u_xlat3.xxx * u_xlat5.xyz;
					        u_xlat20 = u_xlat20 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat20 = float(1.0) / u_xlat20;
					        u_xlat3.x = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat3.x = max(u_xlat3.x, 0.0);
					        u_xlat20 = u_xlat20 * u_xlat3.x;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat20) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_8;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_10;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					float u_xlat20;
					bool u_xlatb20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat20 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 9.99999997e-07);
					        u_xlat3.x = inversesqrt(u_xlat20);
					        u_xlat5.xyz = u_xlat3.xxx * u_xlat5.xyz;
					        u_xlat20 = u_xlat20 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat20 = float(1.0) / u_xlat20;
					        u_xlat3.x = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat3.x = max(u_xlat3.x, 0.0);
					        u_xlat20 = u_xlat20 * u_xlat3.x;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat20) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_8;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_10;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					float u_xlat20;
					bool u_xlatb20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat20 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 9.99999997e-07);
					        u_xlat3.x = inversesqrt(u_xlat20);
					        u_xlat5.xyz = u_xlat3.xxx * u_xlat5.xyz;
					        u_xlat20 = u_xlat20 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat20 = float(1.0) / u_xlat20;
					        u_xlat3.x = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat3.x = max(u_xlat3.x, 0.0);
					        u_xlat20 = u_xlat20 * u_xlat3.x;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat20) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_8;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_10;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					float u_xlat20;
					bool u_xlatb20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat20 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 9.99999997e-07);
					        u_xlat3.x = inversesqrt(u_xlat20);
					        u_xlat5.xyz = u_xlat3.xxx * u_xlat5.xyz;
					        u_xlat20 = u_xlat20 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat20 = float(1.0) / u_xlat20;
					        u_xlat3.x = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat3.x = max(u_xlat3.x, 0.0);
					        u_xlat20 = u_xlat20 * u_xlat3.x;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat20) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_8;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_10;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					float u_xlat20;
					bool u_xlatb20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat20 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 9.99999997e-07);
					        u_xlat3.x = inversesqrt(u_xlat20);
					        u_xlat5.xyz = u_xlat3.xxx * u_xlat5.xyz;
					        u_xlat20 = u_xlat20 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat20 = float(1.0) / u_xlat20;
					        u_xlat3.x = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat3.x = max(u_xlat3.x, 0.0);
					        u_xlat20 = u_xlat20 * u_xlat3.x;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat20) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_8;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_10;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					float u_xlat20;
					bool u_xlatb20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat20 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 9.99999997e-07);
					        u_xlat3.x = inversesqrt(u_xlat20);
					        u_xlat5.xyz = u_xlat3.xxx * u_xlat5.xyz;
					        u_xlat20 = u_xlat20 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat20 = float(1.0) / u_xlat20;
					        u_xlat3.x = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat3.x = max(u_xlat3.x, 0.0);
					        u_xlat20 = u_xlat20 * u_xlat3.x;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat20) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_8;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_10;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					float u_xlat20;
					bool u_xlatb20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat20 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 9.99999997e-07);
					        u_xlat3.x = inversesqrt(u_xlat20);
					        u_xlat5.xyz = u_xlat3.xxx * u_xlat5.xyz;
					        u_xlat20 = u_xlat20 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat20 = float(1.0) / u_xlat20;
					        u_xlat3.x = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat3.x = max(u_xlat3.x, 0.0);
					        u_xlat20 = u_xlat20 * u_xlat3.x;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat20) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_8;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_10;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					float u_xlat20;
					bool u_xlatb20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat20 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 9.99999997e-07);
					        u_xlat3.x = inversesqrt(u_xlat20);
					        u_xlat5.xyz = u_xlat3.xxx * u_xlat5.xyz;
					        u_xlat20 = u_xlat20 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat20 = float(1.0) / u_xlat20;
					        u_xlat3.x = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat3.x = max(u_xlat3.x, 0.0);
					        u_xlat20 = u_xlat20 * u_xlat3.x;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat20) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendMul2" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_8;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_10;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					float u_xlat20;
					bool u_xlatb20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat20 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 9.99999997e-07);
					        u_xlat3.x = inversesqrt(u_xlat20);
					        u_xlat5.xyz = u_xlat3.xxx * u_xlat5.xyz;
					        u_xlat20 = u_xlat20 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat20 = float(1.0) / u_xlat20;
					        u_xlat3.x = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat3.x = max(u_xlat3.x, 0.0);
					        u_xlat20 = u_xlat20 * u_xlat3.x;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat20) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_8;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_10;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					float u_xlat20;
					bool u_xlatb20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat20 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 9.99999997e-07);
					        u_xlat3.x = inversesqrt(u_xlat20);
					        u_xlat5.xyz = u_xlat3.xxx * u_xlat5.xyz;
					        u_xlat20 = u_xlat20 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat20 = float(1.0) / u_xlat20;
					        u_xlat3.x = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat3.x = max(u_xlat3.x, 0.0);
					        u_xlat20 = u_xlat20 * u_xlat3.x;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat20) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_8;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_10;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					float u_xlat20;
					bool u_xlatb20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat20 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 9.99999997e-07);
					        u_xlat3.x = inversesqrt(u_xlat20);
					        u_xlat5.xyz = u_xlat3.xxx * u_xlat5.xyz;
					        u_xlat20 = u_xlat20 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat20 = float(1.0) / u_xlat20;
					        u_xlat3.x = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat3.x = max(u_xlat3.x, 0.0);
					        u_xlat20 = u_xlat20 * u_xlat3.x;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat20) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_8;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_10;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					float u_xlat20;
					bool u_xlatb20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat20 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 9.99999997e-07);
					        u_xlat3.x = inversesqrt(u_xlat20);
					        u_xlat5.xyz = u_xlat3.xxx * u_xlat5.xyz;
					        u_xlat20 = u_xlat20 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat20 = float(1.0) / u_xlat20;
					        u_xlat3.x = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat3.x = max(u_xlat3.x, 0.0);
					        u_xlat20 = u_xlat20 * u_xlat3.x;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat20) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_8;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_10;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					float u_xlat20;
					bool u_xlatb20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat20 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 9.99999997e-07);
					        u_xlat3.x = inversesqrt(u_xlat20);
					        u_xlat5.xyz = u_xlat3.xxx * u_xlat5.xyz;
					        u_xlat20 = u_xlat20 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat20 = float(1.0) / u_xlat20;
					        u_xlat3.x = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat3.x = max(u_xlat3.x, 0.0);
					        u_xlat20 = u_xlat20 * u_xlat3.x;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat20) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_8;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_10;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					float u_xlat20;
					bool u_xlatb20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat20 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 9.99999997e-07);
					        u_xlat3.x = inversesqrt(u_xlat20);
					        u_xlat5.xyz = u_xlat3.xxx * u_xlat5.xyz;
					        u_xlat20 = u_xlat20 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat20 = float(1.0) / u_xlat20;
					        u_xlat3.x = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat3.x = max(u_xlat3.x, 0.0);
					        u_xlat20 = u_xlat20 * u_xlat3.x;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat20) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_8;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_10;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					float u_xlat20;
					bool u_xlatb20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat20 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 9.99999997e-07);
					        u_xlat3.x = inversesqrt(u_xlat20);
					        u_xlat5.xyz = u_xlat3.xxx * u_xlat5.xyz;
					        u_xlat20 = u_xlat20 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat20 = float(1.0) / u_xlat20;
					        u_xlat3.x = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat3.x = max(u_xlat3.x, 0.0);
					        u_xlat20 = u_xlat20 * u_xlat3.x;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat20) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 _ProjectionParams;
						vec4 unused_1_3[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_4_1[8];
						mat4x4 unity_MatrixV;
						mat4x4 unity_MatrixInvV;
						mat4x4 unity_MatrixVP;
						vec4 unused_4_5[2];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					bool u_xlatb19;
					float u_xlat20;
					void main()
					{
					    u_xlat0.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[0].yyy;
					    u_xlat0.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[0].xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[0].zzz + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[0].www + u_xlat0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[1].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[1].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[1].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[1].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_MatrixInvV[2].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_MatrixInvV[2].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_MatrixInvV[2].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_MatrixInvV[2].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_MatrixVP[1];
					    u_xlat4 = unity_MatrixVP[0] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_MatrixVP[2] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_MatrixVP[3] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat18 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat18 * 0.5;
					    vs_TEXCOORD3.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlat5 = u_xlat3.yyyy * unity_MatrixV[1].zxyz;
					    u_xlat5 = unity_MatrixV[0].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_MatrixV[2].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_MatrixV[3].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat0.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat19 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat19 = max(u_xlat19, 9.99999997e-07);
					        u_xlat20 = inversesqrt(u_xlat19);
					        u_xlat5.xyz = vec3(u_xlat20) * u_xlat5.xyz;
					        u_xlat19 = u_xlat19 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat19 = float(1.0) / u_xlat19;
					        u_xlat20 = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 0.0);
					        u_xlat19 = u_xlat19 * u_xlat20;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat19) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = _WorldSpaceCameraPos.yyy * unity_WorldToObject[1].xyz;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * _WorldSpaceCameraPos.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * _WorldSpaceCameraPos.zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[2];
						vec4 _MainTex_ST;
						vec4 unused_0_2;
						float _FresnelStr;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityLighting {
						vec4 unused_2_0[7];
						vec4 unity_LightColor[8];
						vec4 unused_2_2[7];
						vec4 unity_LightPosition[8];
						vec4 unused_2_4[7];
						vec4 unity_LightAtten[8];
						vec4 unused_2_6[24];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_3_2[3];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[4];
						mat4x4 unity_StereoMatrixInvV[2];
						vec4 unused_4_4[4];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_4_6[36];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_8;
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_4_10;
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(std140) uniform UnityPerFrame {
						vec4 glstate_lightmodel_ambient;
						vec4 unused_6_1[5];
					};
					in  vec4 in_POSITION0;
					in  vec4 in_NORMAL0;
					in  vec4 in_COLOR0;
					in  vec2 in_TEXCOORD0;
					in  vec4 in_TEXCOORD1;
					out vec4 vs_COLOR0;
					out vec4 vs_TEXCOORD0;
					out float vs_TEXCOORD1;
					out float vs_TEXCOORD2;
					out float vs_TEXCOORD4;
					out vec4 vs_TEXCOORD3;
					vec3 u_xlat0;
					int u_xlati0;
					vec3 u_xlat1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec3 u_xlat6;
					vec2 u_xlat17;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					int u_xlati19;
					float u_xlat20;
					bool u_xlatb20;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat6.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].yyy;
					    u_xlat6.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].xxx + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].zzz + u_xlat6.xyz;
					    u_xlat6.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[u_xlati0 / 4][u_xlati0 % 4].www + u_xlat6.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].www + u_xlat1.xyz;
					    u_xlat2.xyz = unity_WorldToObject[1].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].yyy;
					    u_xlat2.xyz = unity_WorldToObject[0].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xxx + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[2].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zzz + u_xlat2.xyz;
					    u_xlat2.xyz = unity_WorldToObject[3].xyz * unity_StereoMatrixInvV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].www + u_xlat2.xyz;
					    u_xlat3 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat3 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat3;
					    u_xlat3 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat3;
					    u_xlat3 = u_xlat3 + unity_ObjectToWorld[3];
					    u_xlat4 = u_xlat3.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat4 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat3.xxxx + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat3.zzzz + u_xlat4;
					    u_xlat4 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat3.wwww + u_xlat4;
					    u_xlat5.xz = u_xlat4.xw * vec2(0.5, 0.5);
					    u_xlat19 = u_xlat4.y * _ProjectionParams.x;
					    u_xlat5.w = u_xlat19 * 0.5;
					    u_xlat5.xy = u_xlat5.zz + u_xlat5.xw;
					    u_xlati19 = unity_StereoEyeIndex;
					    u_xlat17.xy = u_xlat4.ww * unity_StereoScaleOffset[u_xlati19].zw;
					    vs_TEXCOORD3.xy = u_xlat5.xy * unity_StereoScaleOffset[u_xlati19].xy + u_xlat17.xy;
					    u_xlat5 = u_xlat3.yyyy * unity_StereoMatrixV[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].zxyz;
					    u_xlat5 = unity_StereoMatrixV[u_xlati0 / 4][u_xlati0 % 4].zxyz * u_xlat3.xxxx + u_xlat5;
					    u_xlat5 = unity_StereoMatrixV[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].zxyz * u_xlat3.zzzz + u_xlat5;
					    u_xlat3 = unity_StereoMatrixV[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4].zxyz * u_xlat3.wwww + u_xlat5;
					    vs_TEXCOORD3.z = (-u_xlat3.x);
					    u_xlat0.x = dot(u_xlat6.xyz, in_NORMAL0.xyz);
					    u_xlat0.y = dot(u_xlat1.xyz, in_NORMAL0.xyz);
					    u_xlat0.z = dot(u_xlat2.xyz, in_NORMAL0.xyz);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat0.xyz = vec3(u_xlat18) * u_xlat0.xyz;
					    u_xlat1.xyz = glstate_lightmodel_ambient.xyz + glstate_lightmodel_ambient.xyz;
					    u_xlat2.xyz = u_xlat1.xyz;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<4 ; u_xlati_loop_1++)
					    {
					        u_xlat5.xyz = (-u_xlat3.yzw) * unity_LightPosition[u_xlati_loop_1].www + unity_LightPosition[u_xlati_loop_1].xyz;
					        u_xlat20 = dot(u_xlat5.xyz, u_xlat5.xyz);
					        u_xlat20 = max(u_xlat20, 9.99999997e-07);
					        u_xlat3.x = inversesqrt(u_xlat20);
					        u_xlat5.xyz = u_xlat3.xxx * u_xlat5.xyz;
					        u_xlat20 = u_xlat20 * unity_LightAtten[u_xlati_loop_1].z + 1.0;
					        u_xlat20 = float(1.0) / u_xlat20;
					        u_xlat3.x = dot(u_xlat0.xyz, u_xlat5.xyz);
					        u_xlat3.x = max(u_xlat3.x, 0.0);
					        u_xlat20 = u_xlat20 * u_xlat3.x;
					        u_xlat2.xyz = unity_LightColor[u_xlati_loop_1].xyz * vec3(u_xlat20) + u_xlat2.xyz;
					    }
					    vs_COLOR0.xyz = u_xlat2.xyz * in_COLOR0.xyz;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat0.x = dot(in_NORMAL0, in_NORMAL0);
					    u_xlat0.x = inversesqrt(u_xlat0.x);
					    u_xlat0.xyz = u_xlat0.xxx * in_NORMAL0.xyz;
					    u_xlat1.xyz = unity_WorldToObject[1].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].yyy;
					    u_xlat1.xyz = unity_WorldToObject[0].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_WorldToObject[2].xyz * unity_StereoWorldSpaceCameraPos[u_xlati19].zzz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + unity_WorldToObject[3].xyz;
					    u_xlat1.xyz = u_xlat1.xyz + (-in_POSITION0.xyz);
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat18 = inversesqrt(u_xlat18);
					    u_xlat1.xyz = vec3(u_xlat18) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = log2(abs(u_xlat0.x));
					    u_xlat0.x = u_xlat0.x * _FresnelStr;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x + u_xlat0.x;
					    vs_TEXCOORD4 = min(u_xlat0.x, 1.0);
					    gl_Position = u_xlat4;
					    vs_COLOR0.w = in_COLOR0.w;
					    vs_TEXCOORD3.w = u_xlat4.w;
					    vs_TEXCOORD1 = in_TEXCOORD1.z;
					    vs_TEXCOORD2 = u_xlat4.z;
					    return;
					}"
				}
			}
			Program "fp" {
				SubProgram "d3d11 " {
					Keywords { "BlendAdd" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat0 = u_xlat0 * vs_COLOR0;
					    SV_Target0.w = u_xlat0.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat0 = u_xlat0 * vs_COLOR0;
					    SV_Target0.w = u_xlat0.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendAdd" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat0 = u_xlat0 * vs_COLOR0;
					    SV_Target0.w = u_xlat0.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat0 = u_xlat0 * vs_COLOR0;
					    SV_Target0.w = u_xlat0.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendAdd" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat1.xyz;
					    SV_Target0.w = u_xlat1.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat1.xyz;
					    SV_Target0.w = u_xlat1.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendAdd" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat1.xyz;
					    SV_Target0.w = u_xlat1.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat1.xyz;
					    SV_Target0.w = u_xlat1.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendAdd" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat1.xyz;
					    SV_Target0.w = u_xlat1.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat1.xyz;
					    SV_Target0.w = u_xlat1.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendAdd" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat1.xyz;
					    SV_Target0.w = u_xlat1.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat1.xyz;
					    SV_Target0.w = u_xlat1.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendAdd" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat1.xyz;
					    SV_Target0.w = u_xlat1.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat1.xyz;
					    SV_Target0.w = u_xlat1.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendAdd" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat1.xyz;
					    SV_Target0.w = u_xlat1.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat1.xyz;
					    SV_Target0.w = u_xlat1.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendAdd" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat0 = u_xlat0 * vs_COLOR0;
					    SV_Target0.w = u_xlat0.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat0 = u_xlat0 * vs_COLOR0;
					    SV_Target0.w = u_xlat0.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendAdd" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat0 = u_xlat0 * vs_COLOR0;
					    SV_Target0.w = u_xlat0.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat0 = u_xlat0 * vs_COLOR0;
					    SV_Target0.w = u_xlat0.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendAdd" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat1.xyz;
					    SV_Target0.w = u_xlat1.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat1.xyz;
					    SV_Target0.w = u_xlat1.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendAdd" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat1.xyz;
					    SV_Target0.w = u_xlat1.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat1.xyz;
					    SV_Target0.w = u_xlat1.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendAdd" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat1.xyz;
					    SV_Target0.w = u_xlat1.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat1.xyz;
					    SV_Target0.w = u_xlat1.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendAdd" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat1.xyz;
					    SV_Target0.w = u_xlat1.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat1.xyz;
					    SV_Target0.w = u_xlat1.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendAdd" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat1.xyz;
					    SV_Target0.w = u_xlat1.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat1.xyz;
					    SV_Target0.w = u_xlat1.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendAdd" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat1.xyz;
					    SV_Target0.w = u_xlat1.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat1.xyz;
					    SV_Target0.w = u_xlat1.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendAdd" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat0 = u_xlat0.wxyz * vs_COLOR0.wxyz;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.yzw;
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat0 = u_xlat0.wxyz * vs_COLOR0.wxyz;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.yzw;
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendAdd" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat0 = u_xlat0.wxyz * vs_COLOR0.wxyz;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.yzw;
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat0 = u_xlat0.wxyz * vs_COLOR0.wxyz;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.yzw;
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendAdd" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1.wxyz * vs_COLOR0.wxyz;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat1.yzw;
					    u_xlat1.x = u_xlat1.x;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat1.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1.wxyz * vs_COLOR0.wxyz;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat1.yzw;
					    u_xlat1.x = u_xlat1.x;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat1.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendAdd" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1.wxyz * vs_COLOR0.wxyz;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat1.yzw;
					    u_xlat1.x = u_xlat1.x;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat1.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1.wxyz * vs_COLOR0.wxyz;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat1.yzw;
					    u_xlat1.x = u_xlat1.x;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat1.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendAdd" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1.wxyz * vs_COLOR0.wxyz;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat1.yzw;
					    u_xlat1.x = u_xlat1.x;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat1.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1.wxyz * vs_COLOR0.wxyz;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat1.yzw;
					    u_xlat1.x = u_xlat1.x;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat1.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendAdd" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1.wxyz * vs_COLOR0.wxyz;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat1.yzw;
					    u_xlat1.x = u_xlat1.x;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat1.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1.wxyz * vs_COLOR0.wxyz;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat1.yzw;
					    u_xlat1.x = u_xlat1.x;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat1.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendAdd" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1.wxyz * vs_COLOR0.wxyz;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat1.yzw;
					    u_xlat1.x = u_xlat1.x;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat1.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1.wxyz * vs_COLOR0.wxyz;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat1.yzw;
					    u_xlat1.x = u_xlat1.x;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat1.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendAdd" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1.wxyz * vs_COLOR0.wxyz;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat1.yzw;
					    u_xlat1.x = u_xlat1.x;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat1.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1.wxyz * vs_COLOR0.wxyz;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat1.yzw;
					    u_xlat1.x = u_xlat1.x;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat1.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendAdd" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat0 = u_xlat0.wxyz * vs_COLOR0.wxyz;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.yzw;
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat0 = u_xlat0.wxyz * vs_COLOR0.wxyz;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.yzw;
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendAdd" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat0 = u_xlat0.wxyz * vs_COLOR0.wxyz;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.yzw;
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat0 = u_xlat0.wxyz * vs_COLOR0.wxyz;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.yzw;
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendAdd" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1.wxyz * vs_COLOR0.wxyz;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat1.yzw;
					    u_xlat1.x = u_xlat1.x;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat1.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1.wxyz * vs_COLOR0.wxyz;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat1.yzw;
					    u_xlat1.x = u_xlat1.x;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat1.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendAdd" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1.wxyz * vs_COLOR0.wxyz;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat1.yzw;
					    u_xlat1.x = u_xlat1.x;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat1.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1.wxyz * vs_COLOR0.wxyz;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat1.yzw;
					    u_xlat1.x = u_xlat1.x;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat1.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendAdd" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1.wxyz * vs_COLOR0.wxyz;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat1.yzw;
					    u_xlat1.x = u_xlat1.x;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat1.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1.wxyz * vs_COLOR0.wxyz;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat1.yzw;
					    u_xlat1.x = u_xlat1.x;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat1.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendAdd" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1.wxyz * vs_COLOR0.wxyz;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat1.yzw;
					    u_xlat1.x = u_xlat1.x;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat1.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1.wxyz * vs_COLOR0.wxyz;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat1.yzw;
					    u_xlat1.x = u_xlat1.x;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat1.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendAdd" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1.wxyz * vs_COLOR0.wxyz;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat1.yzw;
					    u_xlat1.x = u_xlat1.x;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat1.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1.wxyz * vs_COLOR0.wxyz;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat1.yzw;
					    u_xlat1.x = u_xlat1.x;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat1.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendAdd" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1.wxyz * vs_COLOR0.wxyz;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat1.yzw;
					    u_xlat1.x = u_xlat1.x;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat1.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1.wxyz * vs_COLOR0.wxyz;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat1.yzw;
					    u_xlat1.x = u_xlat1.x;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat1.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendAdd" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					float u_xlat1;
					bool u_xlatb1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1 = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat0.w = u_xlat0.w * u_xlat1;
					    u_xlat0 = u_xlat0 * vs_COLOR0;
					    SV_Target0.w = u_xlat0.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					float u_xlat1;
					bool u_xlatb1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1 = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat0.w = u_xlat0.w * u_xlat1;
					    u_xlat0 = u_xlat0 * vs_COLOR0;
					    SV_Target0.w = u_xlat0.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendAdd" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					float u_xlat1;
					bool u_xlatb1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1 = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat0.w = u_xlat0.w * u_xlat1;
					    u_xlat0 = u_xlat0 * vs_COLOR0;
					    SV_Target0.w = u_xlat0.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					float u_xlat1;
					bool u_xlatb1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1 = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat0.w = u_xlat0.w * u_xlat1;
					    u_xlat0 = u_xlat0 * vs_COLOR0;
					    SV_Target0.w = u_xlat0.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendAdd" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					bool u_xlatb2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2 = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat1.xyz;
					    SV_Target0.w = u_xlat1.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					bool u_xlatb2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2 = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat1.xyz;
					    SV_Target0.w = u_xlat1.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendAdd" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					bool u_xlatb2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2 = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat1.xyz;
					    SV_Target0.w = u_xlat1.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					bool u_xlatb2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2 = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat1.xyz;
					    SV_Target0.w = u_xlat1.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendAdd" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					bool u_xlatb2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2 = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat1.xyz;
					    SV_Target0.w = u_xlat1.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					bool u_xlatb2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2 = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat1.xyz;
					    SV_Target0.w = u_xlat1.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendAdd" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					bool u_xlatb2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2 = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat1.xyz;
					    SV_Target0.w = u_xlat1.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					bool u_xlatb2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2 = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat1.xyz;
					    SV_Target0.w = u_xlat1.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendAdd" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					bool u_xlatb2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2 = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat1.xyz;
					    SV_Target0.w = u_xlat1.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					bool u_xlatb2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2 = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat1.xyz;
					    SV_Target0.w = u_xlat1.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendAdd" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					bool u_xlatb2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2 = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat1.xyz;
					    SV_Target0.w = u_xlat1.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					bool u_xlatb2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2 = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat1.xyz;
					    SV_Target0.w = u_xlat1.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendAdd" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					float u_xlat1;
					bool u_xlatb1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1 = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat0.w = u_xlat0.w * u_xlat1;
					    u_xlat0 = u_xlat0 * vs_COLOR0;
					    SV_Target0.w = u_xlat0.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					float u_xlat1;
					bool u_xlatb1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1 = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat0.w = u_xlat0.w * u_xlat1;
					    u_xlat0 = u_xlat0 * vs_COLOR0;
					    SV_Target0.w = u_xlat0.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendAdd" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					float u_xlat1;
					bool u_xlatb1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1 = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat0.w = u_xlat0.w * u_xlat1;
					    u_xlat0 = u_xlat0 * vs_COLOR0;
					    SV_Target0.w = u_xlat0.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					float u_xlat1;
					bool u_xlatb1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1 = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat0.w = u_xlat0.w * u_xlat1;
					    u_xlat0 = u_xlat0 * vs_COLOR0;
					    SV_Target0.w = u_xlat0.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendAdd" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					bool u_xlatb2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2 = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat1.xyz;
					    SV_Target0.w = u_xlat1.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					bool u_xlatb2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2 = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat1.xyz;
					    SV_Target0.w = u_xlat1.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendAdd" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					bool u_xlatb2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2 = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat1.xyz;
					    SV_Target0.w = u_xlat1.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					bool u_xlatb2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2 = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat1.xyz;
					    SV_Target0.w = u_xlat1.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendAdd" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					bool u_xlatb2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2 = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat1.xyz;
					    SV_Target0.w = u_xlat1.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					bool u_xlatb2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2 = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat1.xyz;
					    SV_Target0.w = u_xlat1.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendAdd" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					bool u_xlatb2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2 = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat1.xyz;
					    SV_Target0.w = u_xlat1.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					bool u_xlatb2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2 = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat1.xyz;
					    SV_Target0.w = u_xlat1.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendAdd" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					bool u_xlatb2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2 = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat1.xyz;
					    SV_Target0.w = u_xlat1.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					bool u_xlatb2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2 = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat1.xyz;
					    SV_Target0.w = u_xlat1.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendAdd" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					bool u_xlatb2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2 = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat1.xyz;
					    SV_Target0.w = u_xlat1.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					bool u_xlatb2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2 = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat1.xyz;
					    SV_Target0.w = u_xlat1.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendAdd" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					float u_xlat1;
					bool u_xlatb1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1 = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat0.w = u_xlat0.w * u_xlat1;
					    u_xlat0 = u_xlat0.wxyz * vs_COLOR0.wxyz;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.yzw;
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					float u_xlat1;
					bool u_xlatb1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1 = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat0.w = u_xlat0.w * u_xlat1;
					    u_xlat0 = u_xlat0.wxyz * vs_COLOR0.wxyz;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.yzw;
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendAdd" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					float u_xlat1;
					bool u_xlatb1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1 = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat0.w = u_xlat0.w * u_xlat1;
					    u_xlat0 = u_xlat0.wxyz * vs_COLOR0.wxyz;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.yzw;
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					float u_xlat1;
					bool u_xlatb1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1 = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat0.w = u_xlat0.w * u_xlat1;
					    u_xlat0 = u_xlat0.wxyz * vs_COLOR0.wxyz;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.yzw;
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendAdd" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					bool u_xlatb2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2 = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2;
					    u_xlat1 = u_xlat1.wxyz * vs_COLOR0.wxyz;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat1.yzw;
					    u_xlat1.x = u_xlat1.x;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat1.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					bool u_xlatb2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2 = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2;
					    u_xlat1 = u_xlat1.wxyz * vs_COLOR0.wxyz;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat1.yzw;
					    u_xlat1.x = u_xlat1.x;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat1.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendAdd" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					bool u_xlatb2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2 = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2;
					    u_xlat1 = u_xlat1.wxyz * vs_COLOR0.wxyz;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat1.yzw;
					    u_xlat1.x = u_xlat1.x;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat1.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					bool u_xlatb2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2 = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2;
					    u_xlat1 = u_xlat1.wxyz * vs_COLOR0.wxyz;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat1.yzw;
					    u_xlat1.x = u_xlat1.x;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat1.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendAdd" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					bool u_xlatb2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2 = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2;
					    u_xlat1 = u_xlat1.wxyz * vs_COLOR0.wxyz;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat1.yzw;
					    u_xlat1.x = u_xlat1.x;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat1.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					bool u_xlatb2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2 = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2;
					    u_xlat1 = u_xlat1.wxyz * vs_COLOR0.wxyz;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat1.yzw;
					    u_xlat1.x = u_xlat1.x;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat1.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendAdd" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					bool u_xlatb2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2 = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2;
					    u_xlat1 = u_xlat1.wxyz * vs_COLOR0.wxyz;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat1.yzw;
					    u_xlat1.x = u_xlat1.x;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat1.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					bool u_xlatb2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2 = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2;
					    u_xlat1 = u_xlat1.wxyz * vs_COLOR0.wxyz;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat1.yzw;
					    u_xlat1.x = u_xlat1.x;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat1.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendAdd" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					bool u_xlatb2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2 = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2;
					    u_xlat1 = u_xlat1.wxyz * vs_COLOR0.wxyz;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat1.yzw;
					    u_xlat1.x = u_xlat1.x;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat1.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					bool u_xlatb2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2 = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2;
					    u_xlat1 = u_xlat1.wxyz * vs_COLOR0.wxyz;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat1.yzw;
					    u_xlat1.x = u_xlat1.x;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat1.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendAdd" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					bool u_xlatb2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2 = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2;
					    u_xlat1 = u_xlat1.wxyz * vs_COLOR0.wxyz;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat1.yzw;
					    u_xlat1.x = u_xlat1.x;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat1.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					bool u_xlatb2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2 = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2;
					    u_xlat1 = u_xlat1.wxyz * vs_COLOR0.wxyz;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat1.yzw;
					    u_xlat1.x = u_xlat1.x;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat1.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendAdd" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					float u_xlat1;
					bool u_xlatb1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1 = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat0.w = u_xlat0.w * u_xlat1;
					    u_xlat0 = u_xlat0.wxyz * vs_COLOR0.wxyz;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.yzw;
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					float u_xlat1;
					bool u_xlatb1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1 = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat0.w = u_xlat0.w * u_xlat1;
					    u_xlat0 = u_xlat0.wxyz * vs_COLOR0.wxyz;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.yzw;
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendAdd" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					float u_xlat1;
					bool u_xlatb1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1 = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat0.w = u_xlat0.w * u_xlat1;
					    u_xlat0 = u_xlat0.wxyz * vs_COLOR0.wxyz;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.yzw;
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					float u_xlat1;
					bool u_xlatb1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1 = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat0.w = u_xlat0.w * u_xlat1;
					    u_xlat0 = u_xlat0.wxyz * vs_COLOR0.wxyz;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.yzw;
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendAdd" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					bool u_xlatb2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2 = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2;
					    u_xlat1 = u_xlat1.wxyz * vs_COLOR0.wxyz;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat1.yzw;
					    u_xlat1.x = u_xlat1.x;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat1.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					bool u_xlatb2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2 = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2;
					    u_xlat1 = u_xlat1.wxyz * vs_COLOR0.wxyz;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat1.yzw;
					    u_xlat1.x = u_xlat1.x;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat1.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendAdd" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					bool u_xlatb2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2 = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2;
					    u_xlat1 = u_xlat1.wxyz * vs_COLOR0.wxyz;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat1.yzw;
					    u_xlat1.x = u_xlat1.x;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat1.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					bool u_xlatb2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2 = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2;
					    u_xlat1 = u_xlat1.wxyz * vs_COLOR0.wxyz;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat1.yzw;
					    u_xlat1.x = u_xlat1.x;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat1.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendAdd" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					bool u_xlatb2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2 = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2;
					    u_xlat1 = u_xlat1.wxyz * vs_COLOR0.wxyz;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat1.yzw;
					    u_xlat1.x = u_xlat1.x;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat1.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					bool u_xlatb2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2 = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2;
					    u_xlat1 = u_xlat1.wxyz * vs_COLOR0.wxyz;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat1.yzw;
					    u_xlat1.x = u_xlat1.x;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat1.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendAdd" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					bool u_xlatb2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2 = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2;
					    u_xlat1 = u_xlat1.wxyz * vs_COLOR0.wxyz;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat1.yzw;
					    u_xlat1.x = u_xlat1.x;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat1.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					bool u_xlatb2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2 = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2;
					    u_xlat1 = u_xlat1.wxyz * vs_COLOR0.wxyz;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat1.yzw;
					    u_xlat1.x = u_xlat1.x;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat1.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendAdd" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					bool u_xlatb2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2 = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2;
					    u_xlat1 = u_xlat1.wxyz * vs_COLOR0.wxyz;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat1.yzw;
					    u_xlat1.x = u_xlat1.x;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat1.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					bool u_xlatb2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2 = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2;
					    u_xlat1 = u_xlat1.wxyz * vs_COLOR0.wxyz;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat1.yzw;
					    u_xlat1.x = u_xlat1.x;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat1.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendAdd" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					bool u_xlatb2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2 = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2;
					    u_xlat1 = u_xlat1.wxyz * vs_COLOR0.wxyz;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat1.yzw;
					    u_xlat1.x = u_xlat1.x;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat1.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					bool u_xlatb2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2 = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2;
					    u_xlat1 = u_xlat1.wxyz * vs_COLOR0.wxyz;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat1.yzw;
					    u_xlat1.x = u_xlat1.x;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat1.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendAdd" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    SV_Target0.xyz = u_xlat2.xyz * vs_COLOR0.xyz;
					    SV_Target0.w = u_xlatb0 ? 1.0 : float(0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    SV_Target0.xyz = u_xlat2.xyz * vs_COLOR0.xyz;
					    SV_Target0.w = u_xlatb0 ? 1.0 : float(0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendAdd" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    SV_Target0.xyz = u_xlat2.xyz * vs_COLOR0.xyz;
					    SV_Target0.w = u_xlatb0 ? 1.0 : float(0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    SV_Target0.xyz = u_xlat2.xyz * vs_COLOR0.xyz;
					    SV_Target0.w = u_xlatb0 ? 1.0 : float(0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendAdd" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * vs_COLOR0.xyz;
					    SV_Target0.xyz = u_xlat2.xyz * vec3(u_xlat0);
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    SV_Target0.w = u_xlatb0 ? 1.0 : float(0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * vs_COLOR0.xyz;
					    SV_Target0.xyz = u_xlat2.xyz * vec3(u_xlat0);
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    SV_Target0.w = u_xlatb0 ? 1.0 : float(0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendAdd" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * vs_COLOR0.xyz;
					    SV_Target0.xyz = u_xlat2.xyz * vec3(u_xlat0);
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    SV_Target0.w = u_xlatb0 ? 1.0 : float(0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * vs_COLOR0.xyz;
					    SV_Target0.xyz = u_xlat2.xyz * vec3(u_xlat0);
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    SV_Target0.w = u_xlatb0 ? 1.0 : float(0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendAdd" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * vs_COLOR0.xyz;
					    SV_Target0.xyz = u_xlat2.xyz * vec3(u_xlat0);
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    SV_Target0.w = u_xlatb0 ? 1.0 : float(0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * vs_COLOR0.xyz;
					    SV_Target0.xyz = u_xlat2.xyz * vec3(u_xlat0);
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    SV_Target0.w = u_xlatb0 ? 1.0 : float(0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendAdd" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * vs_COLOR0.xyz;
					    SV_Target0.xyz = u_xlat2.xyz * vec3(u_xlat0);
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    SV_Target0.w = u_xlatb0 ? 1.0 : float(0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * vs_COLOR0.xyz;
					    SV_Target0.xyz = u_xlat2.xyz * vec3(u_xlat0);
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    SV_Target0.w = u_xlatb0 ? 1.0 : float(0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendAdd" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * vs_COLOR0.xyz;
					    SV_Target0.xyz = u_xlat2.xyz * vec3(u_xlat0);
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    SV_Target0.w = u_xlatb0 ? 1.0 : float(0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * vs_COLOR0.xyz;
					    SV_Target0.xyz = u_xlat2.xyz * vec3(u_xlat0);
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    SV_Target0.w = u_xlatb0 ? 1.0 : float(0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendAdd" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * vs_COLOR0.xyz;
					    SV_Target0.xyz = u_xlat2.xyz * vec3(u_xlat0);
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    SV_Target0.w = u_xlatb0 ? 1.0 : float(0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * vs_COLOR0.xyz;
					    SV_Target0.xyz = u_xlat2.xyz * vec3(u_xlat0);
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    SV_Target0.w = u_xlatb0 ? 1.0 : float(0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendAdd" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    SV_Target0.xyz = u_xlat2.xyz * vs_COLOR0.xyz;
					    SV_Target0.w = u_xlatb0 ? 1.0 : float(0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    SV_Target0.xyz = u_xlat2.xyz * vs_COLOR0.xyz;
					    SV_Target0.w = u_xlatb0 ? 1.0 : float(0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendAdd" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    SV_Target0.xyz = u_xlat2.xyz * vs_COLOR0.xyz;
					    SV_Target0.w = u_xlatb0 ? 1.0 : float(0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    SV_Target0.xyz = u_xlat2.xyz * vs_COLOR0.xyz;
					    SV_Target0.w = u_xlatb0 ? 1.0 : float(0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendAdd" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * vs_COLOR0.xyz;
					    SV_Target0.xyz = u_xlat2.xyz * vec3(u_xlat0);
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    SV_Target0.w = u_xlatb0 ? 1.0 : float(0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * vs_COLOR0.xyz;
					    SV_Target0.xyz = u_xlat2.xyz * vec3(u_xlat0);
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    SV_Target0.w = u_xlatb0 ? 1.0 : float(0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendAdd" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * vs_COLOR0.xyz;
					    SV_Target0.xyz = u_xlat2.xyz * vec3(u_xlat0);
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    SV_Target0.w = u_xlatb0 ? 1.0 : float(0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * vs_COLOR0.xyz;
					    SV_Target0.xyz = u_xlat2.xyz * vec3(u_xlat0);
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    SV_Target0.w = u_xlatb0 ? 1.0 : float(0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendAdd" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * vs_COLOR0.xyz;
					    SV_Target0.xyz = u_xlat2.xyz * vec3(u_xlat0);
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    SV_Target0.w = u_xlatb0 ? 1.0 : float(0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * vs_COLOR0.xyz;
					    SV_Target0.xyz = u_xlat2.xyz * vec3(u_xlat0);
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    SV_Target0.w = u_xlatb0 ? 1.0 : float(0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendAdd" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * vs_COLOR0.xyz;
					    SV_Target0.xyz = u_xlat2.xyz * vec3(u_xlat0);
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    SV_Target0.w = u_xlatb0 ? 1.0 : float(0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * vs_COLOR0.xyz;
					    SV_Target0.xyz = u_xlat2.xyz * vec3(u_xlat0);
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    SV_Target0.w = u_xlatb0 ? 1.0 : float(0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendAdd" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * vs_COLOR0.xyz;
					    SV_Target0.xyz = u_xlat2.xyz * vec3(u_xlat0);
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    SV_Target0.w = u_xlatb0 ? 1.0 : float(0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * vs_COLOR0.xyz;
					    SV_Target0.xyz = u_xlat2.xyz * vec3(u_xlat0);
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    SV_Target0.w = u_xlatb0 ? 1.0 : float(0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendAdd" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * vs_COLOR0.xyz;
					    SV_Target0.xyz = u_xlat2.xyz * vec3(u_xlat0);
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    SV_Target0.w = u_xlatb0 ? 1.0 : float(0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * vs_COLOR0.xyz;
					    SV_Target0.xyz = u_xlat2.xyz * vec3(u_xlat0);
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    SV_Target0.w = u_xlatb0 ? 1.0 : float(0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendAdd" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    SV_Target0.xyz = u_xlat2.xyz * vs_COLOR0.xyz;
					    u_xlat0 = u_xlatb0 ? 1.0 : float(0.0);
					    SV_Target0.w = u_xlat0 * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    SV_Target0.xyz = u_xlat2.xyz * vs_COLOR0.xyz;
					    u_xlat0 = u_xlatb0 ? 1.0 : float(0.0);
					    SV_Target0.w = u_xlat0 * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendAdd" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    SV_Target0.xyz = u_xlat2.xyz * vs_COLOR0.xyz;
					    u_xlat0 = u_xlatb0 ? 1.0 : float(0.0);
					    SV_Target0.w = u_xlat0 * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    SV_Target0.xyz = u_xlat2.xyz * vs_COLOR0.xyz;
					    u_xlat0 = u_xlatb0 ? 1.0 : float(0.0);
					    SV_Target0.w = u_xlat0 * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendAdd" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * vs_COLOR0.xyz;
					    SV_Target0.xyz = u_xlat2.xyz * vec3(u_xlat0);
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    u_xlat0 = u_xlatb0 ? 1.0 : float(0.0);
					    SV_Target0.w = u_xlat0 * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * vs_COLOR0.xyz;
					    SV_Target0.xyz = u_xlat2.xyz * vec3(u_xlat0);
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    u_xlat0 = u_xlatb0 ? 1.0 : float(0.0);
					    SV_Target0.w = u_xlat0 * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendAdd" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * vs_COLOR0.xyz;
					    SV_Target0.xyz = u_xlat2.xyz * vec3(u_xlat0);
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    u_xlat0 = u_xlatb0 ? 1.0 : float(0.0);
					    SV_Target0.w = u_xlat0 * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * vs_COLOR0.xyz;
					    SV_Target0.xyz = u_xlat2.xyz * vec3(u_xlat0);
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    u_xlat0 = u_xlatb0 ? 1.0 : float(0.0);
					    SV_Target0.w = u_xlat0 * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendAdd" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * vs_COLOR0.xyz;
					    SV_Target0.xyz = u_xlat2.xyz * vec3(u_xlat0);
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    u_xlat0 = u_xlatb0 ? 1.0 : float(0.0);
					    SV_Target0.w = u_xlat0 * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * vs_COLOR0.xyz;
					    SV_Target0.xyz = u_xlat2.xyz * vec3(u_xlat0);
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    u_xlat0 = u_xlatb0 ? 1.0 : float(0.0);
					    SV_Target0.w = u_xlat0 * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendAdd" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * vs_COLOR0.xyz;
					    SV_Target0.xyz = u_xlat2.xyz * vec3(u_xlat0);
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    u_xlat0 = u_xlatb0 ? 1.0 : float(0.0);
					    SV_Target0.w = u_xlat0 * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * vs_COLOR0.xyz;
					    SV_Target0.xyz = u_xlat2.xyz * vec3(u_xlat0);
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    u_xlat0 = u_xlatb0 ? 1.0 : float(0.0);
					    SV_Target0.w = u_xlat0 * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendAdd" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * vs_COLOR0.xyz;
					    SV_Target0.xyz = u_xlat2.xyz * vec3(u_xlat0);
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    u_xlat0 = u_xlatb0 ? 1.0 : float(0.0);
					    SV_Target0.w = u_xlat0 * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * vs_COLOR0.xyz;
					    SV_Target0.xyz = u_xlat2.xyz * vec3(u_xlat0);
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    u_xlat0 = u_xlatb0 ? 1.0 : float(0.0);
					    SV_Target0.w = u_xlat0 * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendAdd" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * vs_COLOR0.xyz;
					    SV_Target0.xyz = u_xlat2.xyz * vec3(u_xlat0);
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    u_xlat0 = u_xlatb0 ? 1.0 : float(0.0);
					    SV_Target0.w = u_xlat0 * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * vs_COLOR0.xyz;
					    SV_Target0.xyz = u_xlat2.xyz * vec3(u_xlat0);
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    u_xlat0 = u_xlatb0 ? 1.0 : float(0.0);
					    SV_Target0.w = u_xlat0 * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendAdd" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    SV_Target0.xyz = u_xlat2.xyz * vs_COLOR0.xyz;
					    u_xlat0 = u_xlatb0 ? 1.0 : float(0.0);
					    SV_Target0.w = u_xlat0 * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    SV_Target0.xyz = u_xlat2.xyz * vs_COLOR0.xyz;
					    u_xlat0 = u_xlatb0 ? 1.0 : float(0.0);
					    SV_Target0.w = u_xlat0 * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendAdd" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    SV_Target0.xyz = u_xlat2.xyz * vs_COLOR0.xyz;
					    u_xlat0 = u_xlatb0 ? 1.0 : float(0.0);
					    SV_Target0.w = u_xlat0 * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    SV_Target0.xyz = u_xlat2.xyz * vs_COLOR0.xyz;
					    u_xlat0 = u_xlatb0 ? 1.0 : float(0.0);
					    SV_Target0.w = u_xlat0 * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendAdd" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * vs_COLOR0.xyz;
					    SV_Target0.xyz = u_xlat2.xyz * vec3(u_xlat0);
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    u_xlat0 = u_xlatb0 ? 1.0 : float(0.0);
					    SV_Target0.w = u_xlat0 * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * vs_COLOR0.xyz;
					    SV_Target0.xyz = u_xlat2.xyz * vec3(u_xlat0);
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    u_xlat0 = u_xlatb0 ? 1.0 : float(0.0);
					    SV_Target0.w = u_xlat0 * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendAdd" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * vs_COLOR0.xyz;
					    SV_Target0.xyz = u_xlat2.xyz * vec3(u_xlat0);
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    u_xlat0 = u_xlatb0 ? 1.0 : float(0.0);
					    SV_Target0.w = u_xlat0 * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * vs_COLOR0.xyz;
					    SV_Target0.xyz = u_xlat2.xyz * vec3(u_xlat0);
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    u_xlat0 = u_xlatb0 ? 1.0 : float(0.0);
					    SV_Target0.w = u_xlat0 * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendAdd" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * vs_COLOR0.xyz;
					    SV_Target0.xyz = u_xlat2.xyz * vec3(u_xlat0);
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    u_xlat0 = u_xlatb0 ? 1.0 : float(0.0);
					    SV_Target0.w = u_xlat0 * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * vs_COLOR0.xyz;
					    SV_Target0.xyz = u_xlat2.xyz * vec3(u_xlat0);
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    u_xlat0 = u_xlatb0 ? 1.0 : float(0.0);
					    SV_Target0.w = u_xlat0 * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendAdd" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * vs_COLOR0.xyz;
					    SV_Target0.xyz = u_xlat2.xyz * vec3(u_xlat0);
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    u_xlat0 = u_xlatb0 ? 1.0 : float(0.0);
					    SV_Target0.w = u_xlat0 * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * vs_COLOR0.xyz;
					    SV_Target0.xyz = u_xlat2.xyz * vec3(u_xlat0);
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    u_xlat0 = u_xlatb0 ? 1.0 : float(0.0);
					    SV_Target0.w = u_xlat0 * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendAdd" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * vs_COLOR0.xyz;
					    SV_Target0.xyz = u_xlat2.xyz * vec3(u_xlat0);
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    u_xlat0 = u_xlatb0 ? 1.0 : float(0.0);
					    SV_Target0.w = u_xlat0 * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * vs_COLOR0.xyz;
					    SV_Target0.xyz = u_xlat2.xyz * vec3(u_xlat0);
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    u_xlat0 = u_xlatb0 ? 1.0 : float(0.0);
					    SV_Target0.w = u_xlat0 * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendAdd" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * vs_COLOR0.xyz;
					    SV_Target0.xyz = u_xlat2.xyz * vec3(u_xlat0);
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    u_xlat0 = u_xlatb0 ? 1.0 : float(0.0);
					    SV_Target0.w = u_xlat0 * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * vs_COLOR0.xyz;
					    SV_Target0.xyz = u_xlat2.xyz * vec3(u_xlat0);
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    u_xlat0 = u_xlatb0 ? 1.0 : float(0.0);
					    SV_Target0.w = u_xlat0 * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendAdd" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat0 = u_xlat0 * vs_COLOR0;
					    SV_Target0.w = u_xlat0.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat0 = u_xlat0 * vs_COLOR0;
					    SV_Target0.w = u_xlat0.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendAdd" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[7];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    SV_Target0.w = u_xlat0.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[6];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    SV_Target0.w = u_xlat0.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendAdd" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat1.xyz;
					    SV_Target0.w = u_xlat1.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat1.xyz;
					    SV_Target0.w = u_xlat1.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendAdd" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat1.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat1.x = (-u_xlat1.x) + 1.0;
					    u_xlat1.x = u_xlat1.x * _ProjectionParams.z;
					    u_xlat1.x = max(u_xlat1.x, 0.0);
					    u_xlat1.x = u_xlat1.x * unity_FogParams.z + unity_FogParams.w;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.xyz * u_xlat1.xxx;
					    SV_Target0.w = u_xlat0.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat1.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat1.x = (-u_xlat1.x) + 1.0;
					    u_xlat1.x = u_xlat1.x * _ProjectionParams.z;
					    u_xlat1.x = max(u_xlat1.x, 0.0);
					    u_xlat1.x = u_xlat1.x * unity_FogParams.z + unity_FogParams.w;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.xyz * u_xlat1.xxx;
					    SV_Target0.w = u_xlat0.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendAdd" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat1.xyz;
					    SV_Target0.w = u_xlat1.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat1.xyz;
					    SV_Target0.w = u_xlat1.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendAdd" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec2 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat3.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat1 = texture(_CameraDepthTexture, u_xlat3.xy);
					    u_xlat3.x = _ZBufferParams.z * u_xlat1.x + _ZBufferParams.w;
					    u_xlat3.x = float(1.0) / u_xlat3.x;
					    u_xlat3.x = u_xlat3.x + (-vs_TEXCOORD3.z);
					    u_xlat3.x = u_xlat3.x * _InvFade;
					    u_xlat3.x = clamp(u_xlat3.x, 0.0, 1.0);
					    u_xlat1.w = u_xlat3.x * vs_COLOR0.w;
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2 = u_xlat2 + u_xlat2;
					    u_xlat2 = u_xlat2 * _TintColor;
					    u_xlat1.xyz = vs_COLOR0.xyz;
					    u_xlat1 = u_xlat1 * u_xlat2;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat1.xyz;
					    SV_Target0.w = u_xlat1.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec2 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat3.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat1 = texture(_CameraDepthTexture, u_xlat3.xy);
					    u_xlat3.x = _ZBufferParams.z * u_xlat1.x + _ZBufferParams.w;
					    u_xlat3.x = float(1.0) / u_xlat3.x;
					    u_xlat3.x = u_xlat3.x + (-vs_TEXCOORD3.z);
					    u_xlat3.x = u_xlat3.x * _InvFade;
					    u_xlat3.x = clamp(u_xlat3.x, 0.0, 1.0);
					    u_xlat1.w = u_xlat3.x * vs_COLOR0.w;
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2 = u_xlat2 + u_xlat2;
					    u_xlat2 = u_xlat2 * _TintColor;
					    u_xlat1.xyz = vs_COLOR0.xyz;
					    u_xlat1 = u_xlat1 * u_xlat2;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat1.xyz;
					    SV_Target0.w = u_xlat1.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendAdd" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat1.xyz;
					    SV_Target0.w = u_xlat1.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat1.xyz;
					    SV_Target0.w = u_xlat1.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendAdd" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec2 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat3.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat1 = texture(_CameraDepthTexture, u_xlat3.xy);
					    u_xlat3.x = _ZBufferParams.z * u_xlat1.x + _ZBufferParams.w;
					    u_xlat3.x = float(1.0) / u_xlat3.x;
					    u_xlat3.x = u_xlat3.x + (-vs_TEXCOORD3.z);
					    u_xlat3.x = u_xlat3.x * _InvFade;
					    u_xlat3.x = clamp(u_xlat3.x, 0.0, 1.0);
					    u_xlat1.w = u_xlat3.x * vs_COLOR0.w;
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2 = u_xlat2 + u_xlat2;
					    u_xlat2 = u_xlat2 * _TintColor;
					    u_xlat1.xyz = vs_COLOR0.xyz;
					    u_xlat1 = u_xlat1 * u_xlat2;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat1.xyz;
					    SV_Target0.w = u_xlat1.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec2 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat3.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat1 = texture(_CameraDepthTexture, u_xlat3.xy);
					    u_xlat3.x = _ZBufferParams.z * u_xlat1.x + _ZBufferParams.w;
					    u_xlat3.x = float(1.0) / u_xlat3.x;
					    u_xlat3.x = u_xlat3.x + (-vs_TEXCOORD3.z);
					    u_xlat3.x = u_xlat3.x * _InvFade;
					    u_xlat3.x = clamp(u_xlat3.x, 0.0, 1.0);
					    u_xlat1.w = u_xlat3.x * vs_COLOR0.w;
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2 = u_xlat2 + u_xlat2;
					    u_xlat2 = u_xlat2 * _TintColor;
					    u_xlat1.xyz = vs_COLOR0.xyz;
					    u_xlat1 = u_xlat1 * u_xlat2;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat1.xyz;
					    SV_Target0.w = u_xlat1.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendAdd" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[7];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    SV_Target0.w = u_xlat0.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[6];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    SV_Target0.w = u_xlat0.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendAdd" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[7];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    SV_Target0.w = u_xlat0.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[6];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    SV_Target0.w = u_xlat0.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendAdd" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat1.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat1.x = (-u_xlat1.x) + 1.0;
					    u_xlat1.x = u_xlat1.x * _ProjectionParams.z;
					    u_xlat1.x = max(u_xlat1.x, 0.0);
					    u_xlat1.x = u_xlat1.x * unity_FogParams.z + unity_FogParams.w;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.xyz * u_xlat1.xxx;
					    SV_Target0.w = u_xlat0.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat1.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat1.x = (-u_xlat1.x) + 1.0;
					    u_xlat1.x = u_xlat1.x * _ProjectionParams.z;
					    u_xlat1.x = max(u_xlat1.x, 0.0);
					    u_xlat1.x = u_xlat1.x * unity_FogParams.z + unity_FogParams.w;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.xyz * u_xlat1.xxx;
					    SV_Target0.w = u_xlat0.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendAdd" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat1.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat1.x = (-u_xlat1.x) + 1.0;
					    u_xlat1.x = u_xlat1.x * _ProjectionParams.z;
					    u_xlat1.x = max(u_xlat1.x, 0.0);
					    u_xlat1.x = u_xlat1.x * unity_FogParams.z + unity_FogParams.w;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.xyz * u_xlat1.xxx;
					    SV_Target0.w = u_xlat0.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat1.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat1.x = (-u_xlat1.x) + 1.0;
					    u_xlat1.x = u_xlat1.x * _ProjectionParams.z;
					    u_xlat1.x = max(u_xlat1.x, 0.0);
					    u_xlat1.x = u_xlat1.x * unity_FogParams.z + unity_FogParams.w;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.xyz * u_xlat1.xxx;
					    SV_Target0.w = u_xlat0.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendAdd" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec2 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat3.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat1 = texture(_CameraDepthTexture, u_xlat3.xy);
					    u_xlat3.x = _ZBufferParams.z * u_xlat1.x + _ZBufferParams.w;
					    u_xlat3.x = float(1.0) / u_xlat3.x;
					    u_xlat3.x = u_xlat3.x + (-vs_TEXCOORD3.z);
					    u_xlat3.x = u_xlat3.x * _InvFade;
					    u_xlat3.x = clamp(u_xlat3.x, 0.0, 1.0);
					    u_xlat1.w = u_xlat3.x * vs_COLOR0.w;
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2 = u_xlat2 + u_xlat2;
					    u_xlat2 = u_xlat2 * _TintColor;
					    u_xlat1.xyz = vs_COLOR0.xyz;
					    u_xlat1 = u_xlat1 * u_xlat2;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat1.xyz;
					    SV_Target0.w = u_xlat1.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec2 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat3.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat1 = texture(_CameraDepthTexture, u_xlat3.xy);
					    u_xlat3.x = _ZBufferParams.z * u_xlat1.x + _ZBufferParams.w;
					    u_xlat3.x = float(1.0) / u_xlat3.x;
					    u_xlat3.x = u_xlat3.x + (-vs_TEXCOORD3.z);
					    u_xlat3.x = u_xlat3.x * _InvFade;
					    u_xlat3.x = clamp(u_xlat3.x, 0.0, 1.0);
					    u_xlat1.w = u_xlat3.x * vs_COLOR0.w;
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2 = u_xlat2 + u_xlat2;
					    u_xlat2 = u_xlat2 * _TintColor;
					    u_xlat1.xyz = vs_COLOR0.xyz;
					    u_xlat1 = u_xlat1 * u_xlat2;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat1.xyz;
					    SV_Target0.w = u_xlat1.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendAdd" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec2 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat3.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat1 = texture(_CameraDepthTexture, u_xlat3.xy);
					    u_xlat3.x = _ZBufferParams.z * u_xlat1.x + _ZBufferParams.w;
					    u_xlat3.x = float(1.0) / u_xlat3.x;
					    u_xlat3.x = u_xlat3.x + (-vs_TEXCOORD3.z);
					    u_xlat3.x = u_xlat3.x * _InvFade;
					    u_xlat3.x = clamp(u_xlat3.x, 0.0, 1.0);
					    u_xlat1.w = u_xlat3.x * vs_COLOR0.w;
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2 = u_xlat2 + u_xlat2;
					    u_xlat2 = u_xlat2 * _TintColor;
					    u_xlat1.xyz = vs_COLOR0.xyz;
					    u_xlat1 = u_xlat1 * u_xlat2;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat1.xyz;
					    SV_Target0.w = u_xlat1.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec2 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat3.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat1 = texture(_CameraDepthTexture, u_xlat3.xy);
					    u_xlat3.x = _ZBufferParams.z * u_xlat1.x + _ZBufferParams.w;
					    u_xlat3.x = float(1.0) / u_xlat3.x;
					    u_xlat3.x = u_xlat3.x + (-vs_TEXCOORD3.z);
					    u_xlat3.x = u_xlat3.x * _InvFade;
					    u_xlat3.x = clamp(u_xlat3.x, 0.0, 1.0);
					    u_xlat1.w = u_xlat3.x * vs_COLOR0.w;
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2 = u_xlat2 + u_xlat2;
					    u_xlat2 = u_xlat2 * _TintColor;
					    u_xlat1.xyz = vs_COLOR0.xyz;
					    u_xlat1 = u_xlat1 * u_xlat2;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat1.xyz;
					    SV_Target0.w = u_xlat1.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendAdd" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec2 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat3.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat1 = texture(_CameraDepthTexture, u_xlat3.xy);
					    u_xlat3.x = _ZBufferParams.z * u_xlat1.x + _ZBufferParams.w;
					    u_xlat3.x = float(1.0) / u_xlat3.x;
					    u_xlat3.x = u_xlat3.x + (-vs_TEXCOORD3.z);
					    u_xlat3.x = u_xlat3.x * _InvFade;
					    u_xlat3.x = clamp(u_xlat3.x, 0.0, 1.0);
					    u_xlat1.w = u_xlat3.x * vs_COLOR0.w;
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2 = u_xlat2 + u_xlat2;
					    u_xlat2 = u_xlat2 * _TintColor;
					    u_xlat1.xyz = vs_COLOR0.xyz;
					    u_xlat1 = u_xlat1 * u_xlat2;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat1.xyz;
					    SV_Target0.w = u_xlat1.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec2 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat3.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat1 = texture(_CameraDepthTexture, u_xlat3.xy);
					    u_xlat3.x = _ZBufferParams.z * u_xlat1.x + _ZBufferParams.w;
					    u_xlat3.x = float(1.0) / u_xlat3.x;
					    u_xlat3.x = u_xlat3.x + (-vs_TEXCOORD3.z);
					    u_xlat3.x = u_xlat3.x * _InvFade;
					    u_xlat3.x = clamp(u_xlat3.x, 0.0, 1.0);
					    u_xlat1.w = u_xlat3.x * vs_COLOR0.w;
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2 = u_xlat2 + u_xlat2;
					    u_xlat2 = u_xlat2 * _TintColor;
					    u_xlat1.xyz = vs_COLOR0.xyz;
					    u_xlat1 = u_xlat1 * u_xlat2;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat1.xyz;
					    SV_Target0.w = u_xlat1.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendAdd" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec2 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat3.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat1 = texture(_CameraDepthTexture, u_xlat3.xy);
					    u_xlat3.x = _ZBufferParams.z * u_xlat1.x + _ZBufferParams.w;
					    u_xlat3.x = float(1.0) / u_xlat3.x;
					    u_xlat3.x = u_xlat3.x + (-vs_TEXCOORD3.z);
					    u_xlat3.x = u_xlat3.x * _InvFade;
					    u_xlat3.x = clamp(u_xlat3.x, 0.0, 1.0);
					    u_xlat1.w = u_xlat3.x * vs_COLOR0.w;
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2 = u_xlat2 + u_xlat2;
					    u_xlat2 = u_xlat2 * _TintColor;
					    u_xlat1.xyz = vs_COLOR0.xyz;
					    u_xlat1 = u_xlat1 * u_xlat2;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat1.xyz;
					    SV_Target0.w = u_xlat1.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec2 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat3.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat1 = texture(_CameraDepthTexture, u_xlat3.xy);
					    u_xlat3.x = _ZBufferParams.z * u_xlat1.x + _ZBufferParams.w;
					    u_xlat3.x = float(1.0) / u_xlat3.x;
					    u_xlat3.x = u_xlat3.x + (-vs_TEXCOORD3.z);
					    u_xlat3.x = u_xlat3.x * _InvFade;
					    u_xlat3.x = clamp(u_xlat3.x, 0.0, 1.0);
					    u_xlat1.w = u_xlat3.x * vs_COLOR0.w;
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2 = u_xlat2 + u_xlat2;
					    u_xlat2 = u_xlat2 * _TintColor;
					    u_xlat1.xyz = vs_COLOR0.xyz;
					    u_xlat1 = u_xlat1 * u_xlat2;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat1.xyz;
					    SV_Target0.w = u_xlat1.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendAdd" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat0 = u_xlat0.wxyz * vs_COLOR0.wxyz;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.yzw;
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat0 = u_xlat0.wxyz * vs_COLOR0.wxyz;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.yzw;
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendAdd" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[7];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0.wxyz * u_xlat1.wxyz;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.yzw;
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[6];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0.wxyz * u_xlat1.wxyz;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.yzw;
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendAdd" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1.wxyz * vs_COLOR0.wxyz;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat1.yzw;
					    u_xlat1.x = u_xlat1.x;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat1.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1.wxyz * vs_COLOR0.wxyz;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat1.yzw;
					    u_xlat1.x = u_xlat1.x;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat1.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendAdd" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0.wxyz * u_xlat1.wxyz;
					    u_xlat1.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat1.x = (-u_xlat1.x) + 1.0;
					    u_xlat1.x = u_xlat1.x * _ProjectionParams.z;
					    u_xlat1.x = max(u_xlat1.x, 0.0);
					    u_xlat1.x = u_xlat1.x * unity_FogParams.z + unity_FogParams.w;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.yzw * u_xlat1.xxx;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0.wxyz * u_xlat1.wxyz;
					    u_xlat1.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat1.x = (-u_xlat1.x) + 1.0;
					    u_xlat1.x = u_xlat1.x * _ProjectionParams.z;
					    u_xlat1.x = max(u_xlat1.x, 0.0);
					    u_xlat1.x = u_xlat1.x * unity_FogParams.z + unity_FogParams.w;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.yzw * u_xlat1.xxx;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendAdd" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1.wxyz * vs_COLOR0.wxyz;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat1.yzw;
					    u_xlat1.x = u_xlat1.x;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat1.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1.wxyz * vs_COLOR0.wxyz;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat1.yzw;
					    u_xlat1.x = u_xlat1.x;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat1.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendAdd" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec2 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat3.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat1 = texture(_CameraDepthTexture, u_xlat3.xy);
					    u_xlat3.x = _ZBufferParams.z * u_xlat1.x + _ZBufferParams.w;
					    u_xlat3.x = float(1.0) / u_xlat3.x;
					    u_xlat3.x = u_xlat3.x + (-vs_TEXCOORD3.z);
					    u_xlat3.x = u_xlat3.x * _InvFade;
					    u_xlat3.x = clamp(u_xlat3.x, 0.0, 1.0);
					    u_xlat1.w = u_xlat3.x * vs_COLOR0.w;
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2 = u_xlat2 + u_xlat2;
					    u_xlat2 = u_xlat2 * _TintColor;
					    u_xlat1.xyz = vs_COLOR0.xyz;
					    u_xlat1 = u_xlat1.wxyz * u_xlat2.wxyz;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat1.yzw;
					    u_xlat1.x = u_xlat1.x;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat1.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec2 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat3.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat1 = texture(_CameraDepthTexture, u_xlat3.xy);
					    u_xlat3.x = _ZBufferParams.z * u_xlat1.x + _ZBufferParams.w;
					    u_xlat3.x = float(1.0) / u_xlat3.x;
					    u_xlat3.x = u_xlat3.x + (-vs_TEXCOORD3.z);
					    u_xlat3.x = u_xlat3.x * _InvFade;
					    u_xlat3.x = clamp(u_xlat3.x, 0.0, 1.0);
					    u_xlat1.w = u_xlat3.x * vs_COLOR0.w;
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2 = u_xlat2 + u_xlat2;
					    u_xlat2 = u_xlat2 * _TintColor;
					    u_xlat1.xyz = vs_COLOR0.xyz;
					    u_xlat1 = u_xlat1.wxyz * u_xlat2.wxyz;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat1.yzw;
					    u_xlat1.x = u_xlat1.x;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat1.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendAdd" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1.wxyz * vs_COLOR0.wxyz;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat1.yzw;
					    u_xlat1.x = u_xlat1.x;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat1.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1.wxyz * vs_COLOR0.wxyz;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat1.yzw;
					    u_xlat1.x = u_xlat1.x;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat1.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendAdd" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec2 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat3.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat1 = texture(_CameraDepthTexture, u_xlat3.xy);
					    u_xlat3.x = _ZBufferParams.z * u_xlat1.x + _ZBufferParams.w;
					    u_xlat3.x = float(1.0) / u_xlat3.x;
					    u_xlat3.x = u_xlat3.x + (-vs_TEXCOORD3.z);
					    u_xlat3.x = u_xlat3.x * _InvFade;
					    u_xlat3.x = clamp(u_xlat3.x, 0.0, 1.0);
					    u_xlat1.w = u_xlat3.x * vs_COLOR0.w;
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2 = u_xlat2 + u_xlat2;
					    u_xlat2 = u_xlat2 * _TintColor;
					    u_xlat1.xyz = vs_COLOR0.xyz;
					    u_xlat1 = u_xlat1.wxyz * u_xlat2.wxyz;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat1.yzw;
					    u_xlat1.x = u_xlat1.x;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat1.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec2 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat3.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat1 = texture(_CameraDepthTexture, u_xlat3.xy);
					    u_xlat3.x = _ZBufferParams.z * u_xlat1.x + _ZBufferParams.w;
					    u_xlat3.x = float(1.0) / u_xlat3.x;
					    u_xlat3.x = u_xlat3.x + (-vs_TEXCOORD3.z);
					    u_xlat3.x = u_xlat3.x * _InvFade;
					    u_xlat3.x = clamp(u_xlat3.x, 0.0, 1.0);
					    u_xlat1.w = u_xlat3.x * vs_COLOR0.w;
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2 = u_xlat2 + u_xlat2;
					    u_xlat2 = u_xlat2 * _TintColor;
					    u_xlat1.xyz = vs_COLOR0.xyz;
					    u_xlat1 = u_xlat1.wxyz * u_xlat2.wxyz;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat1.yzw;
					    u_xlat1.x = u_xlat1.x;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat1.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendAdd" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[7];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0.wxyz * u_xlat1.wxyz;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.yzw;
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[6];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0.wxyz * u_xlat1.wxyz;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.yzw;
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendAdd" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[7];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0.wxyz * u_xlat1.wxyz;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.yzw;
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[6];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0.wxyz * u_xlat1.wxyz;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.yzw;
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendAdd" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0.wxyz * u_xlat1.wxyz;
					    u_xlat1.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat1.x = (-u_xlat1.x) + 1.0;
					    u_xlat1.x = u_xlat1.x * _ProjectionParams.z;
					    u_xlat1.x = max(u_xlat1.x, 0.0);
					    u_xlat1.x = u_xlat1.x * unity_FogParams.z + unity_FogParams.w;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.yzw * u_xlat1.xxx;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0.wxyz * u_xlat1.wxyz;
					    u_xlat1.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat1.x = (-u_xlat1.x) + 1.0;
					    u_xlat1.x = u_xlat1.x * _ProjectionParams.z;
					    u_xlat1.x = max(u_xlat1.x, 0.0);
					    u_xlat1.x = u_xlat1.x * unity_FogParams.z + unity_FogParams.w;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.yzw * u_xlat1.xxx;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendAdd" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0.wxyz * u_xlat1.wxyz;
					    u_xlat1.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat1.x = (-u_xlat1.x) + 1.0;
					    u_xlat1.x = u_xlat1.x * _ProjectionParams.z;
					    u_xlat1.x = max(u_xlat1.x, 0.0);
					    u_xlat1.x = u_xlat1.x * unity_FogParams.z + unity_FogParams.w;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.yzw * u_xlat1.xxx;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0.wxyz * u_xlat1.wxyz;
					    u_xlat1.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat1.x = (-u_xlat1.x) + 1.0;
					    u_xlat1.x = u_xlat1.x * _ProjectionParams.z;
					    u_xlat1.x = max(u_xlat1.x, 0.0);
					    u_xlat1.x = u_xlat1.x * unity_FogParams.z + unity_FogParams.w;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.yzw * u_xlat1.xxx;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendAdd" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec2 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat3.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat1 = texture(_CameraDepthTexture, u_xlat3.xy);
					    u_xlat3.x = _ZBufferParams.z * u_xlat1.x + _ZBufferParams.w;
					    u_xlat3.x = float(1.0) / u_xlat3.x;
					    u_xlat3.x = u_xlat3.x + (-vs_TEXCOORD3.z);
					    u_xlat3.x = u_xlat3.x * _InvFade;
					    u_xlat3.x = clamp(u_xlat3.x, 0.0, 1.0);
					    u_xlat1.w = u_xlat3.x * vs_COLOR0.w;
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2 = u_xlat2 + u_xlat2;
					    u_xlat2 = u_xlat2 * _TintColor;
					    u_xlat1.xyz = vs_COLOR0.xyz;
					    u_xlat1 = u_xlat1.wxyz * u_xlat2.wxyz;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat1.yzw;
					    u_xlat1.x = u_xlat1.x;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat1.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec2 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat3.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat1 = texture(_CameraDepthTexture, u_xlat3.xy);
					    u_xlat3.x = _ZBufferParams.z * u_xlat1.x + _ZBufferParams.w;
					    u_xlat3.x = float(1.0) / u_xlat3.x;
					    u_xlat3.x = u_xlat3.x + (-vs_TEXCOORD3.z);
					    u_xlat3.x = u_xlat3.x * _InvFade;
					    u_xlat3.x = clamp(u_xlat3.x, 0.0, 1.0);
					    u_xlat1.w = u_xlat3.x * vs_COLOR0.w;
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2 = u_xlat2 + u_xlat2;
					    u_xlat2 = u_xlat2 * _TintColor;
					    u_xlat1.xyz = vs_COLOR0.xyz;
					    u_xlat1 = u_xlat1.wxyz * u_xlat2.wxyz;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat1.yzw;
					    u_xlat1.x = u_xlat1.x;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat1.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendAdd" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec2 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat3.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat1 = texture(_CameraDepthTexture, u_xlat3.xy);
					    u_xlat3.x = _ZBufferParams.z * u_xlat1.x + _ZBufferParams.w;
					    u_xlat3.x = float(1.0) / u_xlat3.x;
					    u_xlat3.x = u_xlat3.x + (-vs_TEXCOORD3.z);
					    u_xlat3.x = u_xlat3.x * _InvFade;
					    u_xlat3.x = clamp(u_xlat3.x, 0.0, 1.0);
					    u_xlat1.w = u_xlat3.x * vs_COLOR0.w;
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2 = u_xlat2 + u_xlat2;
					    u_xlat2 = u_xlat2 * _TintColor;
					    u_xlat1.xyz = vs_COLOR0.xyz;
					    u_xlat1 = u_xlat1.wxyz * u_xlat2.wxyz;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat1.yzw;
					    u_xlat1.x = u_xlat1.x;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat1.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec2 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat3.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat1 = texture(_CameraDepthTexture, u_xlat3.xy);
					    u_xlat3.x = _ZBufferParams.z * u_xlat1.x + _ZBufferParams.w;
					    u_xlat3.x = float(1.0) / u_xlat3.x;
					    u_xlat3.x = u_xlat3.x + (-vs_TEXCOORD3.z);
					    u_xlat3.x = u_xlat3.x * _InvFade;
					    u_xlat3.x = clamp(u_xlat3.x, 0.0, 1.0);
					    u_xlat1.w = u_xlat3.x * vs_COLOR0.w;
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2 = u_xlat2 + u_xlat2;
					    u_xlat2 = u_xlat2 * _TintColor;
					    u_xlat1.xyz = vs_COLOR0.xyz;
					    u_xlat1 = u_xlat1.wxyz * u_xlat2.wxyz;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat1.yzw;
					    u_xlat1.x = u_xlat1.x;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat1.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendAdd" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec2 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat3.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat1 = texture(_CameraDepthTexture, u_xlat3.xy);
					    u_xlat3.x = _ZBufferParams.z * u_xlat1.x + _ZBufferParams.w;
					    u_xlat3.x = float(1.0) / u_xlat3.x;
					    u_xlat3.x = u_xlat3.x + (-vs_TEXCOORD3.z);
					    u_xlat3.x = u_xlat3.x * _InvFade;
					    u_xlat3.x = clamp(u_xlat3.x, 0.0, 1.0);
					    u_xlat1.w = u_xlat3.x * vs_COLOR0.w;
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2 = u_xlat2 + u_xlat2;
					    u_xlat2 = u_xlat2 * _TintColor;
					    u_xlat1.xyz = vs_COLOR0.xyz;
					    u_xlat1 = u_xlat1.wxyz * u_xlat2.wxyz;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat1.yzw;
					    u_xlat1.x = u_xlat1.x;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat1.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec2 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat3.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat1 = texture(_CameraDepthTexture, u_xlat3.xy);
					    u_xlat3.x = _ZBufferParams.z * u_xlat1.x + _ZBufferParams.w;
					    u_xlat3.x = float(1.0) / u_xlat3.x;
					    u_xlat3.x = u_xlat3.x + (-vs_TEXCOORD3.z);
					    u_xlat3.x = u_xlat3.x * _InvFade;
					    u_xlat3.x = clamp(u_xlat3.x, 0.0, 1.0);
					    u_xlat1.w = u_xlat3.x * vs_COLOR0.w;
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2 = u_xlat2 + u_xlat2;
					    u_xlat2 = u_xlat2 * _TintColor;
					    u_xlat1.xyz = vs_COLOR0.xyz;
					    u_xlat1 = u_xlat1.wxyz * u_xlat2.wxyz;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat1.yzw;
					    u_xlat1.x = u_xlat1.x;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat1.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendAdd" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec2 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat3.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat1 = texture(_CameraDepthTexture, u_xlat3.xy);
					    u_xlat3.x = _ZBufferParams.z * u_xlat1.x + _ZBufferParams.w;
					    u_xlat3.x = float(1.0) / u_xlat3.x;
					    u_xlat3.x = u_xlat3.x + (-vs_TEXCOORD3.z);
					    u_xlat3.x = u_xlat3.x * _InvFade;
					    u_xlat3.x = clamp(u_xlat3.x, 0.0, 1.0);
					    u_xlat1.w = u_xlat3.x * vs_COLOR0.w;
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2 = u_xlat2 + u_xlat2;
					    u_xlat2 = u_xlat2 * _TintColor;
					    u_xlat1.xyz = vs_COLOR0.xyz;
					    u_xlat1 = u_xlat1.wxyz * u_xlat2.wxyz;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat1.yzw;
					    u_xlat1.x = u_xlat1.x;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat1.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec2 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat3.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat1 = texture(_CameraDepthTexture, u_xlat3.xy);
					    u_xlat3.x = _ZBufferParams.z * u_xlat1.x + _ZBufferParams.w;
					    u_xlat3.x = float(1.0) / u_xlat3.x;
					    u_xlat3.x = u_xlat3.x + (-vs_TEXCOORD3.z);
					    u_xlat3.x = u_xlat3.x * _InvFade;
					    u_xlat3.x = clamp(u_xlat3.x, 0.0, 1.0);
					    u_xlat1.w = u_xlat3.x * vs_COLOR0.w;
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2 = u_xlat2 + u_xlat2;
					    u_xlat2 = u_xlat2 * _TintColor;
					    u_xlat1.xyz = vs_COLOR0.xyz;
					    u_xlat1 = u_xlat1.wxyz * u_xlat2.wxyz;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat1.yzw;
					    u_xlat1.x = u_xlat1.x;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat1.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendAdd" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					float u_xlat1;
					bool u_xlatb1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1 = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat0.w = u_xlat0.w * u_xlat1;
					    u_xlat0 = u_xlat0 * vs_COLOR0;
					    SV_Target0.w = u_xlat0.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					float u_xlat1;
					bool u_xlatb1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1 = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat0.w = u_xlat0.w * u_xlat1;
					    u_xlat0 = u_xlat0 * vs_COLOR0;
					    SV_Target0.w = u_xlat0.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendAdd" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[7];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					bool u_xlatb2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2 = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    SV_Target0.w = u_xlat0.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[6];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					bool u_xlatb2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2 = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    SV_Target0.w = u_xlat0.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendAdd" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					bool u_xlatb2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2 = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat1.xyz;
					    SV_Target0.w = u_xlat1.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					bool u_xlatb2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2 = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat1.xyz;
					    SV_Target0.w = u_xlat1.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendAdd" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					bool u_xlatb2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2 = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat1.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat1.x = (-u_xlat1.x) + 1.0;
					    u_xlat1.x = u_xlat1.x * _ProjectionParams.z;
					    u_xlat1.x = max(u_xlat1.x, 0.0);
					    u_xlat1.x = u_xlat1.x * unity_FogParams.z + unity_FogParams.w;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.xyz * u_xlat1.xxx;
					    SV_Target0.w = u_xlat0.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					bool u_xlatb2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2 = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat1.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat1.x = (-u_xlat1.x) + 1.0;
					    u_xlat1.x = u_xlat1.x * _ProjectionParams.z;
					    u_xlat1.x = max(u_xlat1.x, 0.0);
					    u_xlat1.x = u_xlat1.x * unity_FogParams.z + unity_FogParams.w;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.xyz * u_xlat1.xxx;
					    SV_Target0.w = u_xlat0.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendAdd" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					bool u_xlatb2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2 = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat1.xyz;
					    SV_Target0.w = u_xlat1.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					bool u_xlatb2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2 = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat1.xyz;
					    SV_Target0.w = u_xlat1.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendAdd" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					bool u_xlatb2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2 = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat1.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat1.x = (-u_xlat1.x) + 1.0;
					    u_xlat1.x = u_xlat1.x * _ProjectionParams.z;
					    u_xlat1.x = max(u_xlat1.x, 0.0);
					    u_xlat1.x = u_xlat1.x * unity_FogParams.y;
					    u_xlat1.x = exp2((-u_xlat1.x));
					    u_xlat1.x = min(u_xlat1.x, 1.0);
					    SV_Target0.xyz = u_xlat0.xyz * u_xlat1.xxx;
					    SV_Target0.w = u_xlat0.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					bool u_xlatb2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2 = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat1.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat1.x = (-u_xlat1.x) + 1.0;
					    u_xlat1.x = u_xlat1.x * _ProjectionParams.z;
					    u_xlat1.x = max(u_xlat1.x, 0.0);
					    u_xlat1.x = u_xlat1.x * unity_FogParams.y;
					    u_xlat1.x = exp2((-u_xlat1.x));
					    u_xlat1.x = min(u_xlat1.x, 1.0);
					    SV_Target0.xyz = u_xlat0.xyz * u_xlat1.xxx;
					    SV_Target0.w = u_xlat0.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendAdd" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					bool u_xlatb2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2 = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat1.xyz;
					    SV_Target0.w = u_xlat1.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					bool u_xlatb2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2 = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat1.xyz;
					    SV_Target0.w = u_xlat1.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendAdd" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					bool u_xlatb2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2 = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat1.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat1.x = (-u_xlat1.x) + 1.0;
					    u_xlat1.x = u_xlat1.x * _ProjectionParams.z;
					    u_xlat1.x = max(u_xlat1.x, 0.0);
					    u_xlat1.x = u_xlat1.x * unity_FogParams.x;
					    u_xlat1.x = u_xlat1.x * (-u_xlat1.x);
					    u_xlat1.x = exp2(u_xlat1.x);
					    SV_Target0.xyz = u_xlat0.xyz * u_xlat1.xxx;
					    SV_Target0.w = u_xlat0.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					bool u_xlatb2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2 = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat1.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat1.x = (-u_xlat1.x) + 1.0;
					    u_xlat1.x = u_xlat1.x * _ProjectionParams.z;
					    u_xlat1.x = max(u_xlat1.x, 0.0);
					    u_xlat1.x = u_xlat1.x * unity_FogParams.x;
					    u_xlat1.x = u_xlat1.x * (-u_xlat1.x);
					    u_xlat1.x = exp2(u_xlat1.x);
					    SV_Target0.xyz = u_xlat0.xyz * u_xlat1.xxx;
					    SV_Target0.w = u_xlat0.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendAdd" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[7];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					bool u_xlatb2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2 = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    SV_Target0.w = u_xlat0.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[6];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					bool u_xlatb2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2 = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    SV_Target0.w = u_xlat0.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendAdd" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[7];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					bool u_xlatb2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2 = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    SV_Target0.w = u_xlat0.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[6];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					bool u_xlatb2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2 = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    SV_Target0.w = u_xlat0.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendAdd" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					bool u_xlatb2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2 = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat1.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat1.x = (-u_xlat1.x) + 1.0;
					    u_xlat1.x = u_xlat1.x * _ProjectionParams.z;
					    u_xlat1.x = max(u_xlat1.x, 0.0);
					    u_xlat1.x = u_xlat1.x * unity_FogParams.z + unity_FogParams.w;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.xyz * u_xlat1.xxx;
					    SV_Target0.w = u_xlat0.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					bool u_xlatb2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2 = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat1.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat1.x = (-u_xlat1.x) + 1.0;
					    u_xlat1.x = u_xlat1.x * _ProjectionParams.z;
					    u_xlat1.x = max(u_xlat1.x, 0.0);
					    u_xlat1.x = u_xlat1.x * unity_FogParams.z + unity_FogParams.w;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.xyz * u_xlat1.xxx;
					    SV_Target0.w = u_xlat0.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendAdd" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					bool u_xlatb2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2 = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat1.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat1.x = (-u_xlat1.x) + 1.0;
					    u_xlat1.x = u_xlat1.x * _ProjectionParams.z;
					    u_xlat1.x = max(u_xlat1.x, 0.0);
					    u_xlat1.x = u_xlat1.x * unity_FogParams.z + unity_FogParams.w;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.xyz * u_xlat1.xxx;
					    SV_Target0.w = u_xlat0.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					bool u_xlatb2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2 = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat1.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat1.x = (-u_xlat1.x) + 1.0;
					    u_xlat1.x = u_xlat1.x * _ProjectionParams.z;
					    u_xlat1.x = max(u_xlat1.x, 0.0);
					    u_xlat1.x = u_xlat1.x * unity_FogParams.z + unity_FogParams.w;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.xyz * u_xlat1.xxx;
					    SV_Target0.w = u_xlat0.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendAdd" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					bool u_xlatb2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2 = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat1.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat1.x = (-u_xlat1.x) + 1.0;
					    u_xlat1.x = u_xlat1.x * _ProjectionParams.z;
					    u_xlat1.x = max(u_xlat1.x, 0.0);
					    u_xlat1.x = u_xlat1.x * unity_FogParams.y;
					    u_xlat1.x = exp2((-u_xlat1.x));
					    u_xlat1.x = min(u_xlat1.x, 1.0);
					    SV_Target0.xyz = u_xlat0.xyz * u_xlat1.xxx;
					    SV_Target0.w = u_xlat0.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					bool u_xlatb2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2 = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat1.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat1.x = (-u_xlat1.x) + 1.0;
					    u_xlat1.x = u_xlat1.x * _ProjectionParams.z;
					    u_xlat1.x = max(u_xlat1.x, 0.0);
					    u_xlat1.x = u_xlat1.x * unity_FogParams.y;
					    u_xlat1.x = exp2((-u_xlat1.x));
					    u_xlat1.x = min(u_xlat1.x, 1.0);
					    SV_Target0.xyz = u_xlat0.xyz * u_xlat1.xxx;
					    SV_Target0.w = u_xlat0.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendAdd" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					bool u_xlatb2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2 = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat1.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat1.x = (-u_xlat1.x) + 1.0;
					    u_xlat1.x = u_xlat1.x * _ProjectionParams.z;
					    u_xlat1.x = max(u_xlat1.x, 0.0);
					    u_xlat1.x = u_xlat1.x * unity_FogParams.y;
					    u_xlat1.x = exp2((-u_xlat1.x));
					    u_xlat1.x = min(u_xlat1.x, 1.0);
					    SV_Target0.xyz = u_xlat0.xyz * u_xlat1.xxx;
					    SV_Target0.w = u_xlat0.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					bool u_xlatb2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2 = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat1.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat1.x = (-u_xlat1.x) + 1.0;
					    u_xlat1.x = u_xlat1.x * _ProjectionParams.z;
					    u_xlat1.x = max(u_xlat1.x, 0.0);
					    u_xlat1.x = u_xlat1.x * unity_FogParams.y;
					    u_xlat1.x = exp2((-u_xlat1.x));
					    u_xlat1.x = min(u_xlat1.x, 1.0);
					    SV_Target0.xyz = u_xlat0.xyz * u_xlat1.xxx;
					    SV_Target0.w = u_xlat0.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendAdd" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					bool u_xlatb2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2 = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat1.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat1.x = (-u_xlat1.x) + 1.0;
					    u_xlat1.x = u_xlat1.x * _ProjectionParams.z;
					    u_xlat1.x = max(u_xlat1.x, 0.0);
					    u_xlat1.x = u_xlat1.x * unity_FogParams.x;
					    u_xlat1.x = u_xlat1.x * (-u_xlat1.x);
					    u_xlat1.x = exp2(u_xlat1.x);
					    SV_Target0.xyz = u_xlat0.xyz * u_xlat1.xxx;
					    SV_Target0.w = u_xlat0.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					bool u_xlatb2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2 = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat1.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat1.x = (-u_xlat1.x) + 1.0;
					    u_xlat1.x = u_xlat1.x * _ProjectionParams.z;
					    u_xlat1.x = max(u_xlat1.x, 0.0);
					    u_xlat1.x = u_xlat1.x * unity_FogParams.x;
					    u_xlat1.x = u_xlat1.x * (-u_xlat1.x);
					    u_xlat1.x = exp2(u_xlat1.x);
					    SV_Target0.xyz = u_xlat0.xyz * u_xlat1.xxx;
					    SV_Target0.w = u_xlat0.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendAdd" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					bool u_xlatb2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2 = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat1.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat1.x = (-u_xlat1.x) + 1.0;
					    u_xlat1.x = u_xlat1.x * _ProjectionParams.z;
					    u_xlat1.x = max(u_xlat1.x, 0.0);
					    u_xlat1.x = u_xlat1.x * unity_FogParams.x;
					    u_xlat1.x = u_xlat1.x * (-u_xlat1.x);
					    u_xlat1.x = exp2(u_xlat1.x);
					    SV_Target0.xyz = u_xlat0.xyz * u_xlat1.xxx;
					    SV_Target0.w = u_xlat0.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					bool u_xlatb2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2 = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat1.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat1.x = (-u_xlat1.x) + 1.0;
					    u_xlat1.x = u_xlat1.x * _ProjectionParams.z;
					    u_xlat1.x = max(u_xlat1.x, 0.0);
					    u_xlat1.x = u_xlat1.x * unity_FogParams.x;
					    u_xlat1.x = u_xlat1.x * (-u_xlat1.x);
					    u_xlat1.x = exp2(u_xlat1.x);
					    SV_Target0.xyz = u_xlat0.xyz * u_xlat1.xxx;
					    SV_Target0.w = u_xlat0.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendAdd" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					float u_xlat1;
					bool u_xlatb1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1 = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat0.w = u_xlat0.w * u_xlat1;
					    u_xlat0 = u_xlat0.wxyz * vs_COLOR0.wxyz;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.yzw;
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					float u_xlat1;
					bool u_xlatb1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1 = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat0.w = u_xlat0.w * u_xlat1;
					    u_xlat0 = u_xlat0.wxyz * vs_COLOR0.wxyz;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.yzw;
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendAdd" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[7];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					bool u_xlatb2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2 = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0.wxyz * u_xlat1.wxyz;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.yzw;
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[6];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					bool u_xlatb2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2 = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0.wxyz * u_xlat1.wxyz;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.yzw;
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendAdd" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					bool u_xlatb2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2 = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2;
					    u_xlat1 = u_xlat1.wxyz * vs_COLOR0.wxyz;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat1.yzw;
					    u_xlat1.x = u_xlat1.x;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat1.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					bool u_xlatb2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2 = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2;
					    u_xlat1 = u_xlat1.wxyz * vs_COLOR0.wxyz;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat1.yzw;
					    u_xlat1.x = u_xlat1.x;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat1.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendAdd" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					bool u_xlatb2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2 = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0.wxyz * u_xlat1.wxyz;
					    u_xlat1.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat1.x = (-u_xlat1.x) + 1.0;
					    u_xlat1.x = u_xlat1.x * _ProjectionParams.z;
					    u_xlat1.x = max(u_xlat1.x, 0.0);
					    u_xlat1.x = u_xlat1.x * unity_FogParams.z + unity_FogParams.w;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.yzw * u_xlat1.xxx;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					bool u_xlatb2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2 = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0.wxyz * u_xlat1.wxyz;
					    u_xlat1.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat1.x = (-u_xlat1.x) + 1.0;
					    u_xlat1.x = u_xlat1.x * _ProjectionParams.z;
					    u_xlat1.x = max(u_xlat1.x, 0.0);
					    u_xlat1.x = u_xlat1.x * unity_FogParams.z + unity_FogParams.w;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.yzw * u_xlat1.xxx;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendAdd" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					bool u_xlatb2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2 = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2;
					    u_xlat1 = u_xlat1.wxyz * vs_COLOR0.wxyz;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat1.yzw;
					    u_xlat1.x = u_xlat1.x;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat1.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					bool u_xlatb2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2 = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2;
					    u_xlat1 = u_xlat1.wxyz * vs_COLOR0.wxyz;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat1.yzw;
					    u_xlat1.x = u_xlat1.x;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat1.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendAdd" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					bool u_xlatb2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2 = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0.wxyz * u_xlat1.wxyz;
					    u_xlat1.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat1.x = (-u_xlat1.x) + 1.0;
					    u_xlat1.x = u_xlat1.x * _ProjectionParams.z;
					    u_xlat1.x = max(u_xlat1.x, 0.0);
					    u_xlat1.x = u_xlat1.x * unity_FogParams.y;
					    u_xlat1.x = exp2((-u_xlat1.x));
					    u_xlat1.x = min(u_xlat1.x, 1.0);
					    SV_Target0.xyz = u_xlat0.yzw * u_xlat1.xxx;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					bool u_xlatb2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2 = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0.wxyz * u_xlat1.wxyz;
					    u_xlat1.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat1.x = (-u_xlat1.x) + 1.0;
					    u_xlat1.x = u_xlat1.x * _ProjectionParams.z;
					    u_xlat1.x = max(u_xlat1.x, 0.0);
					    u_xlat1.x = u_xlat1.x * unity_FogParams.y;
					    u_xlat1.x = exp2((-u_xlat1.x));
					    u_xlat1.x = min(u_xlat1.x, 1.0);
					    SV_Target0.xyz = u_xlat0.yzw * u_xlat1.xxx;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendAdd" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					bool u_xlatb2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2 = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2;
					    u_xlat1 = u_xlat1.wxyz * vs_COLOR0.wxyz;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat1.yzw;
					    u_xlat1.x = u_xlat1.x;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat1.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					bool u_xlatb2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2 = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2;
					    u_xlat1 = u_xlat1.wxyz * vs_COLOR0.wxyz;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat1.yzw;
					    u_xlat1.x = u_xlat1.x;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat1.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendAdd" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					bool u_xlatb2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2 = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0.wxyz * u_xlat1.wxyz;
					    u_xlat1.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat1.x = (-u_xlat1.x) + 1.0;
					    u_xlat1.x = u_xlat1.x * _ProjectionParams.z;
					    u_xlat1.x = max(u_xlat1.x, 0.0);
					    u_xlat1.x = u_xlat1.x * unity_FogParams.x;
					    u_xlat1.x = u_xlat1.x * (-u_xlat1.x);
					    u_xlat1.x = exp2(u_xlat1.x);
					    SV_Target0.xyz = u_xlat0.yzw * u_xlat1.xxx;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					bool u_xlatb2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2 = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0.wxyz * u_xlat1.wxyz;
					    u_xlat1.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat1.x = (-u_xlat1.x) + 1.0;
					    u_xlat1.x = u_xlat1.x * _ProjectionParams.z;
					    u_xlat1.x = max(u_xlat1.x, 0.0);
					    u_xlat1.x = u_xlat1.x * unity_FogParams.x;
					    u_xlat1.x = u_xlat1.x * (-u_xlat1.x);
					    u_xlat1.x = exp2(u_xlat1.x);
					    SV_Target0.xyz = u_xlat0.yzw * u_xlat1.xxx;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendAdd" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[7];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					bool u_xlatb2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2 = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0.wxyz * u_xlat1.wxyz;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.yzw;
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[6];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					bool u_xlatb2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2 = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0.wxyz * u_xlat1.wxyz;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.yzw;
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendAdd" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[7];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					bool u_xlatb2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2 = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0.wxyz * u_xlat1.wxyz;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.yzw;
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[6];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					bool u_xlatb2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2 = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0.wxyz * u_xlat1.wxyz;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.yzw;
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendAdd" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					bool u_xlatb2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2 = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0.wxyz * u_xlat1.wxyz;
					    u_xlat1.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat1.x = (-u_xlat1.x) + 1.0;
					    u_xlat1.x = u_xlat1.x * _ProjectionParams.z;
					    u_xlat1.x = max(u_xlat1.x, 0.0);
					    u_xlat1.x = u_xlat1.x * unity_FogParams.z + unity_FogParams.w;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.yzw * u_xlat1.xxx;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					bool u_xlatb2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2 = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0.wxyz * u_xlat1.wxyz;
					    u_xlat1.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat1.x = (-u_xlat1.x) + 1.0;
					    u_xlat1.x = u_xlat1.x * _ProjectionParams.z;
					    u_xlat1.x = max(u_xlat1.x, 0.0);
					    u_xlat1.x = u_xlat1.x * unity_FogParams.z + unity_FogParams.w;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.yzw * u_xlat1.xxx;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendAdd" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					bool u_xlatb2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2 = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0.wxyz * u_xlat1.wxyz;
					    u_xlat1.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat1.x = (-u_xlat1.x) + 1.0;
					    u_xlat1.x = u_xlat1.x * _ProjectionParams.z;
					    u_xlat1.x = max(u_xlat1.x, 0.0);
					    u_xlat1.x = u_xlat1.x * unity_FogParams.z + unity_FogParams.w;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.yzw * u_xlat1.xxx;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					bool u_xlatb2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2 = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0.wxyz * u_xlat1.wxyz;
					    u_xlat1.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat1.x = (-u_xlat1.x) + 1.0;
					    u_xlat1.x = u_xlat1.x * _ProjectionParams.z;
					    u_xlat1.x = max(u_xlat1.x, 0.0);
					    u_xlat1.x = u_xlat1.x * unity_FogParams.z + unity_FogParams.w;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.yzw * u_xlat1.xxx;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendAdd" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					bool u_xlatb2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2 = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0.wxyz * u_xlat1.wxyz;
					    u_xlat1.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat1.x = (-u_xlat1.x) + 1.0;
					    u_xlat1.x = u_xlat1.x * _ProjectionParams.z;
					    u_xlat1.x = max(u_xlat1.x, 0.0);
					    u_xlat1.x = u_xlat1.x * unity_FogParams.y;
					    u_xlat1.x = exp2((-u_xlat1.x));
					    u_xlat1.x = min(u_xlat1.x, 1.0);
					    SV_Target0.xyz = u_xlat0.yzw * u_xlat1.xxx;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					bool u_xlatb2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2 = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0.wxyz * u_xlat1.wxyz;
					    u_xlat1.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat1.x = (-u_xlat1.x) + 1.0;
					    u_xlat1.x = u_xlat1.x * _ProjectionParams.z;
					    u_xlat1.x = max(u_xlat1.x, 0.0);
					    u_xlat1.x = u_xlat1.x * unity_FogParams.y;
					    u_xlat1.x = exp2((-u_xlat1.x));
					    u_xlat1.x = min(u_xlat1.x, 1.0);
					    SV_Target0.xyz = u_xlat0.yzw * u_xlat1.xxx;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendAdd" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					bool u_xlatb2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2 = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0.wxyz * u_xlat1.wxyz;
					    u_xlat1.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat1.x = (-u_xlat1.x) + 1.0;
					    u_xlat1.x = u_xlat1.x * _ProjectionParams.z;
					    u_xlat1.x = max(u_xlat1.x, 0.0);
					    u_xlat1.x = u_xlat1.x * unity_FogParams.y;
					    u_xlat1.x = exp2((-u_xlat1.x));
					    u_xlat1.x = min(u_xlat1.x, 1.0);
					    SV_Target0.xyz = u_xlat0.yzw * u_xlat1.xxx;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					bool u_xlatb2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2 = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0.wxyz * u_xlat1.wxyz;
					    u_xlat1.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat1.x = (-u_xlat1.x) + 1.0;
					    u_xlat1.x = u_xlat1.x * _ProjectionParams.z;
					    u_xlat1.x = max(u_xlat1.x, 0.0);
					    u_xlat1.x = u_xlat1.x * unity_FogParams.y;
					    u_xlat1.x = exp2((-u_xlat1.x));
					    u_xlat1.x = min(u_xlat1.x, 1.0);
					    SV_Target0.xyz = u_xlat0.yzw * u_xlat1.xxx;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendAdd" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					bool u_xlatb2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2 = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0.wxyz * u_xlat1.wxyz;
					    u_xlat1.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat1.x = (-u_xlat1.x) + 1.0;
					    u_xlat1.x = u_xlat1.x * _ProjectionParams.z;
					    u_xlat1.x = max(u_xlat1.x, 0.0);
					    u_xlat1.x = u_xlat1.x * unity_FogParams.x;
					    u_xlat1.x = u_xlat1.x * (-u_xlat1.x);
					    u_xlat1.x = exp2(u_xlat1.x);
					    SV_Target0.xyz = u_xlat0.yzw * u_xlat1.xxx;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					bool u_xlatb2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2 = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0.wxyz * u_xlat1.wxyz;
					    u_xlat1.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat1.x = (-u_xlat1.x) + 1.0;
					    u_xlat1.x = u_xlat1.x * _ProjectionParams.z;
					    u_xlat1.x = max(u_xlat1.x, 0.0);
					    u_xlat1.x = u_xlat1.x * unity_FogParams.x;
					    u_xlat1.x = u_xlat1.x * (-u_xlat1.x);
					    u_xlat1.x = exp2(u_xlat1.x);
					    SV_Target0.xyz = u_xlat0.yzw * u_xlat1.xxx;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendAdd" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					bool u_xlatb2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2 = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0.wxyz * u_xlat1.wxyz;
					    u_xlat1.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat1.x = (-u_xlat1.x) + 1.0;
					    u_xlat1.x = u_xlat1.x * _ProjectionParams.z;
					    u_xlat1.x = max(u_xlat1.x, 0.0);
					    u_xlat1.x = u_xlat1.x * unity_FogParams.x;
					    u_xlat1.x = u_xlat1.x * (-u_xlat1.x);
					    u_xlat1.x = exp2(u_xlat1.x);
					    SV_Target0.xyz = u_xlat0.yzw * u_xlat1.xxx;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					bool u_xlatb2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2 = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0.wxyz * u_xlat1.wxyz;
					    u_xlat1.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat1.x = (-u_xlat1.x) + 1.0;
					    u_xlat1.x = u_xlat1.x * _ProjectionParams.z;
					    u_xlat1.x = max(u_xlat1.x, 0.0);
					    u_xlat1.x = u_xlat1.x * unity_FogParams.x;
					    u_xlat1.x = u_xlat1.x * (-u_xlat1.x);
					    u_xlat1.x = exp2(u_xlat1.x);
					    SV_Target0.xyz = u_xlat0.yzw * u_xlat1.xxx;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendAdd" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    SV_Target0.xyz = u_xlat2.xyz * vs_COLOR0.xyz;
					    SV_Target0.w = u_xlatb0 ? 1.0 : float(0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    SV_Target0.xyz = u_xlat2.xyz * vs_COLOR0.xyz;
					    SV_Target0.w = u_xlatb0 ? 1.0 : float(0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendAdd" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[7];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb0 = u_xlat1.w>=u_xlat0.x;
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    SV_Target0.xyz = u_xlat2.xyz * vs_COLOR0.xyz;
					    SV_Target0.w = u_xlatb0 ? 1.0 : float(0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[6];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb0 = u_xlat1.w>=u_xlat0.x;
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    SV_Target0.xyz = u_xlat2.xyz * vs_COLOR0.xyz;
					    SV_Target0.w = u_xlatb0 ? 1.0 : float(0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendAdd" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * vs_COLOR0.xyz;
					    SV_Target0.xyz = u_xlat2.xyz * vec3(u_xlat0);
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    SV_Target0.w = u_xlatb0 ? 1.0 : float(0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * vs_COLOR0.xyz;
					    SV_Target0.xyz = u_xlat2.xyz * vec3(u_xlat0);
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    SV_Target0.w = u_xlatb0 ? 1.0 : float(0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendAdd" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb0 = u_xlat1.w>=u_xlat0.x;
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * vs_COLOR0.xyz;
					    SV_Target0.w = u_xlatb0 ? 1.0 : float(0.0);
					    u_xlat0.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0.x = (-u_xlat0.x) + 1.0;
					    u_xlat0.x = u_xlat0.x * _ProjectionParams.z;
					    u_xlat0.x = max(u_xlat0.x, 0.0);
					    u_xlat0.x = u_xlat0.x * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat2.xyz * u_xlat0.xxx;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb0 = u_xlat1.w>=u_xlat0.x;
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * vs_COLOR0.xyz;
					    SV_Target0.w = u_xlatb0 ? 1.0 : float(0.0);
					    u_xlat0.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0.x = (-u_xlat0.x) + 1.0;
					    u_xlat0.x = u_xlat0.x * _ProjectionParams.z;
					    u_xlat0.x = max(u_xlat0.x, 0.0);
					    u_xlat0.x = u_xlat0.x * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat2.xyz * u_xlat0.xxx;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendAdd" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * vs_COLOR0.xyz;
					    SV_Target0.xyz = u_xlat2.xyz * vec3(u_xlat0);
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    SV_Target0.w = u_xlatb0 ? 1.0 : float(0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * vs_COLOR0.xyz;
					    SV_Target0.xyz = u_xlat2.xyz * vec3(u_xlat0);
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    SV_Target0.w = u_xlatb0 ? 1.0 : float(0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendAdd" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0.x = (-u_xlat0.x) + 1.0;
					    u_xlat0.x = u_xlat0.x * _ProjectionParams.z;
					    u_xlat0.x = max(u_xlat0.x, 0.0);
					    u_xlat0.x = u_xlat0.x * unity_FogParams.y;
					    u_xlat0.x = exp2((-u_xlat0.x));
					    u_xlat0.x = min(u_xlat0.x, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * vs_COLOR0.xyz;
					    SV_Target0.xyz = u_xlat2.xyz * u_xlat0.xxx;
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0.x;
					    SV_Target0.w = u_xlatb0 ? 1.0 : float(0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0.x = (-u_xlat0.x) + 1.0;
					    u_xlat0.x = u_xlat0.x * _ProjectionParams.z;
					    u_xlat0.x = max(u_xlat0.x, 0.0);
					    u_xlat0.x = u_xlat0.x * unity_FogParams.y;
					    u_xlat0.x = exp2((-u_xlat0.x));
					    u_xlat0.x = min(u_xlat0.x, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * vs_COLOR0.xyz;
					    SV_Target0.xyz = u_xlat2.xyz * u_xlat0.xxx;
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0.x;
					    SV_Target0.w = u_xlatb0 ? 1.0 : float(0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendAdd" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * vs_COLOR0.xyz;
					    SV_Target0.xyz = u_xlat2.xyz * vec3(u_xlat0);
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    SV_Target0.w = u_xlatb0 ? 1.0 : float(0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * vs_COLOR0.xyz;
					    SV_Target0.xyz = u_xlat2.xyz * vec3(u_xlat0);
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    SV_Target0.w = u_xlatb0 ? 1.0 : float(0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendAdd" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0.x = (-u_xlat0.x) + 1.0;
					    u_xlat0.x = u_xlat0.x * _ProjectionParams.z;
					    u_xlat0.x = max(u_xlat0.x, 0.0);
					    u_xlat0.x = u_xlat0.x * unity_FogParams.x;
					    u_xlat0.x = u_xlat0.x * (-u_xlat0.x);
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * vs_COLOR0.xyz;
					    SV_Target0.xyz = u_xlat2.xyz * u_xlat0.xxx;
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0.x;
					    SV_Target0.w = u_xlatb0 ? 1.0 : float(0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0.x = (-u_xlat0.x) + 1.0;
					    u_xlat0.x = u_xlat0.x * _ProjectionParams.z;
					    u_xlat0.x = max(u_xlat0.x, 0.0);
					    u_xlat0.x = u_xlat0.x * unity_FogParams.x;
					    u_xlat0.x = u_xlat0.x * (-u_xlat0.x);
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * vs_COLOR0.xyz;
					    SV_Target0.xyz = u_xlat2.xyz * u_xlat0.xxx;
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0.x;
					    SV_Target0.w = u_xlatb0 ? 1.0 : float(0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendAdd" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[7];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb0 = u_xlat1.w>=u_xlat0.x;
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    SV_Target0.xyz = u_xlat2.xyz * vs_COLOR0.xyz;
					    SV_Target0.w = u_xlatb0 ? 1.0 : float(0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[6];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb0 = u_xlat1.w>=u_xlat0.x;
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    SV_Target0.xyz = u_xlat2.xyz * vs_COLOR0.xyz;
					    SV_Target0.w = u_xlatb0 ? 1.0 : float(0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendAdd" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[7];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb0 = u_xlat1.w>=u_xlat0.x;
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    SV_Target0.xyz = u_xlat2.xyz * vs_COLOR0.xyz;
					    SV_Target0.w = u_xlatb0 ? 1.0 : float(0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[6];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb0 = u_xlat1.w>=u_xlat0.x;
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    SV_Target0.xyz = u_xlat2.xyz * vs_COLOR0.xyz;
					    SV_Target0.w = u_xlatb0 ? 1.0 : float(0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendAdd" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb0 = u_xlat1.w>=u_xlat0.x;
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * vs_COLOR0.xyz;
					    SV_Target0.w = u_xlatb0 ? 1.0 : float(0.0);
					    u_xlat0.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0.x = (-u_xlat0.x) + 1.0;
					    u_xlat0.x = u_xlat0.x * _ProjectionParams.z;
					    u_xlat0.x = max(u_xlat0.x, 0.0);
					    u_xlat0.x = u_xlat0.x * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat2.xyz * u_xlat0.xxx;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb0 = u_xlat1.w>=u_xlat0.x;
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * vs_COLOR0.xyz;
					    SV_Target0.w = u_xlatb0 ? 1.0 : float(0.0);
					    u_xlat0.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0.x = (-u_xlat0.x) + 1.0;
					    u_xlat0.x = u_xlat0.x * _ProjectionParams.z;
					    u_xlat0.x = max(u_xlat0.x, 0.0);
					    u_xlat0.x = u_xlat0.x * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat2.xyz * u_xlat0.xxx;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendAdd" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb0 = u_xlat1.w>=u_xlat0.x;
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * vs_COLOR0.xyz;
					    SV_Target0.w = u_xlatb0 ? 1.0 : float(0.0);
					    u_xlat0.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0.x = (-u_xlat0.x) + 1.0;
					    u_xlat0.x = u_xlat0.x * _ProjectionParams.z;
					    u_xlat0.x = max(u_xlat0.x, 0.0);
					    u_xlat0.x = u_xlat0.x * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat2.xyz * u_xlat0.xxx;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb0 = u_xlat1.w>=u_xlat0.x;
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * vs_COLOR0.xyz;
					    SV_Target0.w = u_xlatb0 ? 1.0 : float(0.0);
					    u_xlat0.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0.x = (-u_xlat0.x) + 1.0;
					    u_xlat0.x = u_xlat0.x * _ProjectionParams.z;
					    u_xlat0.x = max(u_xlat0.x, 0.0);
					    u_xlat0.x = u_xlat0.x * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat2.xyz * u_xlat0.xxx;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendAdd" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0.x = (-u_xlat0.x) + 1.0;
					    u_xlat0.x = u_xlat0.x * _ProjectionParams.z;
					    u_xlat0.x = max(u_xlat0.x, 0.0);
					    u_xlat0.x = u_xlat0.x * unity_FogParams.y;
					    u_xlat0.x = exp2((-u_xlat0.x));
					    u_xlat0.x = min(u_xlat0.x, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * vs_COLOR0.xyz;
					    SV_Target0.xyz = u_xlat2.xyz * u_xlat0.xxx;
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0.x;
					    SV_Target0.w = u_xlatb0 ? 1.0 : float(0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0.x = (-u_xlat0.x) + 1.0;
					    u_xlat0.x = u_xlat0.x * _ProjectionParams.z;
					    u_xlat0.x = max(u_xlat0.x, 0.0);
					    u_xlat0.x = u_xlat0.x * unity_FogParams.y;
					    u_xlat0.x = exp2((-u_xlat0.x));
					    u_xlat0.x = min(u_xlat0.x, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * vs_COLOR0.xyz;
					    SV_Target0.xyz = u_xlat2.xyz * u_xlat0.xxx;
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0.x;
					    SV_Target0.w = u_xlatb0 ? 1.0 : float(0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendAdd" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0.x = (-u_xlat0.x) + 1.0;
					    u_xlat0.x = u_xlat0.x * _ProjectionParams.z;
					    u_xlat0.x = max(u_xlat0.x, 0.0);
					    u_xlat0.x = u_xlat0.x * unity_FogParams.y;
					    u_xlat0.x = exp2((-u_xlat0.x));
					    u_xlat0.x = min(u_xlat0.x, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * vs_COLOR0.xyz;
					    SV_Target0.xyz = u_xlat2.xyz * u_xlat0.xxx;
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0.x;
					    SV_Target0.w = u_xlatb0 ? 1.0 : float(0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0.x = (-u_xlat0.x) + 1.0;
					    u_xlat0.x = u_xlat0.x * _ProjectionParams.z;
					    u_xlat0.x = max(u_xlat0.x, 0.0);
					    u_xlat0.x = u_xlat0.x * unity_FogParams.y;
					    u_xlat0.x = exp2((-u_xlat0.x));
					    u_xlat0.x = min(u_xlat0.x, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * vs_COLOR0.xyz;
					    SV_Target0.xyz = u_xlat2.xyz * u_xlat0.xxx;
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0.x;
					    SV_Target0.w = u_xlatb0 ? 1.0 : float(0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendAdd" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0.x = (-u_xlat0.x) + 1.0;
					    u_xlat0.x = u_xlat0.x * _ProjectionParams.z;
					    u_xlat0.x = max(u_xlat0.x, 0.0);
					    u_xlat0.x = u_xlat0.x * unity_FogParams.x;
					    u_xlat0.x = u_xlat0.x * (-u_xlat0.x);
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * vs_COLOR0.xyz;
					    SV_Target0.xyz = u_xlat2.xyz * u_xlat0.xxx;
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0.x;
					    SV_Target0.w = u_xlatb0 ? 1.0 : float(0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0.x = (-u_xlat0.x) + 1.0;
					    u_xlat0.x = u_xlat0.x * _ProjectionParams.z;
					    u_xlat0.x = max(u_xlat0.x, 0.0);
					    u_xlat0.x = u_xlat0.x * unity_FogParams.x;
					    u_xlat0.x = u_xlat0.x * (-u_xlat0.x);
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * vs_COLOR0.xyz;
					    SV_Target0.xyz = u_xlat2.xyz * u_xlat0.xxx;
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0.x;
					    SV_Target0.w = u_xlatb0 ? 1.0 : float(0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendAdd" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0.x = (-u_xlat0.x) + 1.0;
					    u_xlat0.x = u_xlat0.x * _ProjectionParams.z;
					    u_xlat0.x = max(u_xlat0.x, 0.0);
					    u_xlat0.x = u_xlat0.x * unity_FogParams.x;
					    u_xlat0.x = u_xlat0.x * (-u_xlat0.x);
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * vs_COLOR0.xyz;
					    SV_Target0.xyz = u_xlat2.xyz * u_xlat0.xxx;
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0.x;
					    SV_Target0.w = u_xlatb0 ? 1.0 : float(0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0.x = (-u_xlat0.x) + 1.0;
					    u_xlat0.x = u_xlat0.x * _ProjectionParams.z;
					    u_xlat0.x = max(u_xlat0.x, 0.0);
					    u_xlat0.x = u_xlat0.x * unity_FogParams.x;
					    u_xlat0.x = u_xlat0.x * (-u_xlat0.x);
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * vs_COLOR0.xyz;
					    SV_Target0.xyz = u_xlat2.xyz * u_xlat0.xxx;
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0.x;
					    SV_Target0.w = u_xlatb0 ? 1.0 : float(0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendAdd" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    SV_Target0.xyz = u_xlat2.xyz * vs_COLOR0.xyz;
					    u_xlat0 = u_xlatb0 ? 1.0 : float(0.0);
					    SV_Target0.w = u_xlat0 * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    SV_Target0.xyz = u_xlat2.xyz * vs_COLOR0.xyz;
					    u_xlat0 = u_xlatb0 ? 1.0 : float(0.0);
					    SV_Target0.w = u_xlat0 * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendAdd" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[7];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb0 = u_xlat1.w>=u_xlat0.x;
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    SV_Target0.xyz = u_xlat2.xyz * vs_COLOR0.xyz;
					    u_xlat0.x = u_xlatb0 ? 1.0 : float(0.0);
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[6];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb0 = u_xlat1.w>=u_xlat0.x;
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    SV_Target0.xyz = u_xlat2.xyz * vs_COLOR0.xyz;
					    u_xlat0.x = u_xlatb0 ? 1.0 : float(0.0);
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendAdd" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * vs_COLOR0.xyz;
					    SV_Target0.xyz = u_xlat2.xyz * vec3(u_xlat0);
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    u_xlat0 = u_xlatb0 ? 1.0 : float(0.0);
					    SV_Target0.w = u_xlat0 * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * vs_COLOR0.xyz;
					    SV_Target0.xyz = u_xlat2.xyz * vec3(u_xlat0);
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    u_xlat0 = u_xlatb0 ? 1.0 : float(0.0);
					    SV_Target0.w = u_xlat0 * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendAdd" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb0 = u_xlat1.w>=u_xlat0.x;
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * vs_COLOR0.xyz;
					    u_xlat0.x = u_xlatb0 ? 1.0 : float(0.0);
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    u_xlat0.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0.x = (-u_xlat0.x) + 1.0;
					    u_xlat0.x = u_xlat0.x * _ProjectionParams.z;
					    u_xlat0.x = max(u_xlat0.x, 0.0);
					    u_xlat0.x = u_xlat0.x * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat2.xyz * u_xlat0.xxx;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb0 = u_xlat1.w>=u_xlat0.x;
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * vs_COLOR0.xyz;
					    u_xlat0.x = u_xlatb0 ? 1.0 : float(0.0);
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    u_xlat0.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0.x = (-u_xlat0.x) + 1.0;
					    u_xlat0.x = u_xlat0.x * _ProjectionParams.z;
					    u_xlat0.x = max(u_xlat0.x, 0.0);
					    u_xlat0.x = u_xlat0.x * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat2.xyz * u_xlat0.xxx;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendAdd" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * vs_COLOR0.xyz;
					    SV_Target0.xyz = u_xlat2.xyz * vec3(u_xlat0);
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    u_xlat0 = u_xlatb0 ? 1.0 : float(0.0);
					    SV_Target0.w = u_xlat0 * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * vs_COLOR0.xyz;
					    SV_Target0.xyz = u_xlat2.xyz * vec3(u_xlat0);
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    u_xlat0 = u_xlatb0 ? 1.0 : float(0.0);
					    SV_Target0.w = u_xlat0 * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendAdd" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb0 = u_xlat1.w>=u_xlat0.x;
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * vs_COLOR0.xyz;
					    u_xlat0.x = u_xlatb0 ? 1.0 : float(0.0);
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    u_xlat0.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0.x = (-u_xlat0.x) + 1.0;
					    u_xlat0.x = u_xlat0.x * _ProjectionParams.z;
					    u_xlat0.x = max(u_xlat0.x, 0.0);
					    u_xlat0.x = u_xlat0.x * unity_FogParams.y;
					    u_xlat0.x = exp2((-u_xlat0.x));
					    u_xlat0.x = min(u_xlat0.x, 1.0);
					    SV_Target0.xyz = u_xlat2.xyz * u_xlat0.xxx;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb0 = u_xlat1.w>=u_xlat0.x;
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * vs_COLOR0.xyz;
					    u_xlat0.x = u_xlatb0 ? 1.0 : float(0.0);
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    u_xlat0.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0.x = (-u_xlat0.x) + 1.0;
					    u_xlat0.x = u_xlat0.x * _ProjectionParams.z;
					    u_xlat0.x = max(u_xlat0.x, 0.0);
					    u_xlat0.x = u_xlat0.x * unity_FogParams.y;
					    u_xlat0.x = exp2((-u_xlat0.x));
					    u_xlat0.x = min(u_xlat0.x, 1.0);
					    SV_Target0.xyz = u_xlat2.xyz * u_xlat0.xxx;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendAdd" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * vs_COLOR0.xyz;
					    SV_Target0.xyz = u_xlat2.xyz * vec3(u_xlat0);
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    u_xlat0 = u_xlatb0 ? 1.0 : float(0.0);
					    SV_Target0.w = u_xlat0 * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * vs_COLOR0.xyz;
					    SV_Target0.xyz = u_xlat2.xyz * vec3(u_xlat0);
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    u_xlat0 = u_xlatb0 ? 1.0 : float(0.0);
					    SV_Target0.w = u_xlat0 * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendAdd" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb0 = u_xlat1.w>=u_xlat0.x;
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * vs_COLOR0.xyz;
					    u_xlat0.x = u_xlatb0 ? 1.0 : float(0.0);
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    u_xlat0.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0.x = (-u_xlat0.x) + 1.0;
					    u_xlat0.x = u_xlat0.x * _ProjectionParams.z;
					    u_xlat0.x = max(u_xlat0.x, 0.0);
					    u_xlat0.x = u_xlat0.x * unity_FogParams.x;
					    u_xlat0.x = u_xlat0.x * (-u_xlat0.x);
					    u_xlat0.x = exp2(u_xlat0.x);
					    SV_Target0.xyz = u_xlat2.xyz * u_xlat0.xxx;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb0 = u_xlat1.w>=u_xlat0.x;
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * vs_COLOR0.xyz;
					    u_xlat0.x = u_xlatb0 ? 1.0 : float(0.0);
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    u_xlat0.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0.x = (-u_xlat0.x) + 1.0;
					    u_xlat0.x = u_xlat0.x * _ProjectionParams.z;
					    u_xlat0.x = max(u_xlat0.x, 0.0);
					    u_xlat0.x = u_xlat0.x * unity_FogParams.x;
					    u_xlat0.x = u_xlat0.x * (-u_xlat0.x);
					    u_xlat0.x = exp2(u_xlat0.x);
					    SV_Target0.xyz = u_xlat2.xyz * u_xlat0.xxx;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendAdd" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[7];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb0 = u_xlat1.w>=u_xlat0.x;
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    SV_Target0.xyz = u_xlat2.xyz * vs_COLOR0.xyz;
					    u_xlat0.x = u_xlatb0 ? 1.0 : float(0.0);
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[6];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb0 = u_xlat1.w>=u_xlat0.x;
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    SV_Target0.xyz = u_xlat2.xyz * vs_COLOR0.xyz;
					    u_xlat0.x = u_xlatb0 ? 1.0 : float(0.0);
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendAdd" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[7];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb0 = u_xlat1.w>=u_xlat0.x;
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    SV_Target0.xyz = u_xlat2.xyz * vs_COLOR0.xyz;
					    u_xlat0.x = u_xlatb0 ? 1.0 : float(0.0);
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[6];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb0 = u_xlat1.w>=u_xlat0.x;
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    SV_Target0.xyz = u_xlat2.xyz * vs_COLOR0.xyz;
					    u_xlat0.x = u_xlatb0 ? 1.0 : float(0.0);
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendAdd" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb0 = u_xlat1.w>=u_xlat0.x;
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * vs_COLOR0.xyz;
					    u_xlat0.x = u_xlatb0 ? 1.0 : float(0.0);
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    u_xlat0.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0.x = (-u_xlat0.x) + 1.0;
					    u_xlat0.x = u_xlat0.x * _ProjectionParams.z;
					    u_xlat0.x = max(u_xlat0.x, 0.0);
					    u_xlat0.x = u_xlat0.x * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat2.xyz * u_xlat0.xxx;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb0 = u_xlat1.w>=u_xlat0.x;
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * vs_COLOR0.xyz;
					    u_xlat0.x = u_xlatb0 ? 1.0 : float(0.0);
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    u_xlat0.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0.x = (-u_xlat0.x) + 1.0;
					    u_xlat0.x = u_xlat0.x * _ProjectionParams.z;
					    u_xlat0.x = max(u_xlat0.x, 0.0);
					    u_xlat0.x = u_xlat0.x * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat2.xyz * u_xlat0.xxx;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendAdd" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb0 = u_xlat1.w>=u_xlat0.x;
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * vs_COLOR0.xyz;
					    u_xlat0.x = u_xlatb0 ? 1.0 : float(0.0);
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    u_xlat0.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0.x = (-u_xlat0.x) + 1.0;
					    u_xlat0.x = u_xlat0.x * _ProjectionParams.z;
					    u_xlat0.x = max(u_xlat0.x, 0.0);
					    u_xlat0.x = u_xlat0.x * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat2.xyz * u_xlat0.xxx;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb0 = u_xlat1.w>=u_xlat0.x;
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * vs_COLOR0.xyz;
					    u_xlat0.x = u_xlatb0 ? 1.0 : float(0.0);
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    u_xlat0.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0.x = (-u_xlat0.x) + 1.0;
					    u_xlat0.x = u_xlat0.x * _ProjectionParams.z;
					    u_xlat0.x = max(u_xlat0.x, 0.0);
					    u_xlat0.x = u_xlat0.x * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat2.xyz * u_xlat0.xxx;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendAdd" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb0 = u_xlat1.w>=u_xlat0.x;
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * vs_COLOR0.xyz;
					    u_xlat0.x = u_xlatb0 ? 1.0 : float(0.0);
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    u_xlat0.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0.x = (-u_xlat0.x) + 1.0;
					    u_xlat0.x = u_xlat0.x * _ProjectionParams.z;
					    u_xlat0.x = max(u_xlat0.x, 0.0);
					    u_xlat0.x = u_xlat0.x * unity_FogParams.y;
					    u_xlat0.x = exp2((-u_xlat0.x));
					    u_xlat0.x = min(u_xlat0.x, 1.0);
					    SV_Target0.xyz = u_xlat2.xyz * u_xlat0.xxx;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb0 = u_xlat1.w>=u_xlat0.x;
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * vs_COLOR0.xyz;
					    u_xlat0.x = u_xlatb0 ? 1.0 : float(0.0);
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    u_xlat0.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0.x = (-u_xlat0.x) + 1.0;
					    u_xlat0.x = u_xlat0.x * _ProjectionParams.z;
					    u_xlat0.x = max(u_xlat0.x, 0.0);
					    u_xlat0.x = u_xlat0.x * unity_FogParams.y;
					    u_xlat0.x = exp2((-u_xlat0.x));
					    u_xlat0.x = min(u_xlat0.x, 1.0);
					    SV_Target0.xyz = u_xlat2.xyz * u_xlat0.xxx;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendAdd" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb0 = u_xlat1.w>=u_xlat0.x;
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * vs_COLOR0.xyz;
					    u_xlat0.x = u_xlatb0 ? 1.0 : float(0.0);
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    u_xlat0.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0.x = (-u_xlat0.x) + 1.0;
					    u_xlat0.x = u_xlat0.x * _ProjectionParams.z;
					    u_xlat0.x = max(u_xlat0.x, 0.0);
					    u_xlat0.x = u_xlat0.x * unity_FogParams.y;
					    u_xlat0.x = exp2((-u_xlat0.x));
					    u_xlat0.x = min(u_xlat0.x, 1.0);
					    SV_Target0.xyz = u_xlat2.xyz * u_xlat0.xxx;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb0 = u_xlat1.w>=u_xlat0.x;
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * vs_COLOR0.xyz;
					    u_xlat0.x = u_xlatb0 ? 1.0 : float(0.0);
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    u_xlat0.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0.x = (-u_xlat0.x) + 1.0;
					    u_xlat0.x = u_xlat0.x * _ProjectionParams.z;
					    u_xlat0.x = max(u_xlat0.x, 0.0);
					    u_xlat0.x = u_xlat0.x * unity_FogParams.y;
					    u_xlat0.x = exp2((-u_xlat0.x));
					    u_xlat0.x = min(u_xlat0.x, 1.0);
					    SV_Target0.xyz = u_xlat2.xyz * u_xlat0.xxx;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendAdd" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb0 = u_xlat1.w>=u_xlat0.x;
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * vs_COLOR0.xyz;
					    u_xlat0.x = u_xlatb0 ? 1.0 : float(0.0);
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    u_xlat0.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0.x = (-u_xlat0.x) + 1.0;
					    u_xlat0.x = u_xlat0.x * _ProjectionParams.z;
					    u_xlat0.x = max(u_xlat0.x, 0.0);
					    u_xlat0.x = u_xlat0.x * unity_FogParams.x;
					    u_xlat0.x = u_xlat0.x * (-u_xlat0.x);
					    u_xlat0.x = exp2(u_xlat0.x);
					    SV_Target0.xyz = u_xlat2.xyz * u_xlat0.xxx;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb0 = u_xlat1.w>=u_xlat0.x;
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * vs_COLOR0.xyz;
					    u_xlat0.x = u_xlatb0 ? 1.0 : float(0.0);
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    u_xlat0.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0.x = (-u_xlat0.x) + 1.0;
					    u_xlat0.x = u_xlat0.x * _ProjectionParams.z;
					    u_xlat0.x = max(u_xlat0.x, 0.0);
					    u_xlat0.x = u_xlat0.x * unity_FogParams.x;
					    u_xlat0.x = u_xlat0.x * (-u_xlat0.x);
					    u_xlat0.x = exp2(u_xlat0.x);
					    SV_Target0.xyz = u_xlat2.xyz * u_xlat0.xxx;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendAdd" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb0 = u_xlat1.w>=u_xlat0.x;
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * vs_COLOR0.xyz;
					    u_xlat0.x = u_xlatb0 ? 1.0 : float(0.0);
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    u_xlat0.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0.x = (-u_xlat0.x) + 1.0;
					    u_xlat0.x = u_xlat0.x * _ProjectionParams.z;
					    u_xlat0.x = max(u_xlat0.x, 0.0);
					    u_xlat0.x = u_xlat0.x * unity_FogParams.x;
					    u_xlat0.x = u_xlat0.x * (-u_xlat0.x);
					    u_xlat0.x = exp2(u_xlat0.x);
					    SV_Target0.xyz = u_xlat2.xyz * u_xlat0.xxx;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb0 = u_xlat1.w>=u_xlat0.x;
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * vs_COLOR0.xyz;
					    u_xlat0.x = u_xlatb0 ? 1.0 : float(0.0);
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    u_xlat0.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0.x = (-u_xlat0.x) + 1.0;
					    u_xlat0.x = u_xlat0.x * _ProjectionParams.z;
					    u_xlat0.x = max(u_xlat0.x, 0.0);
					    u_xlat0.x = u_xlat0.x * unity_FogParams.x;
					    u_xlat0.x = u_xlat0.x * (-u_xlat0.x);
					    u_xlat0.x = exp2(u_xlat0.x);
					    SV_Target0.xyz = u_xlat2.xyz * u_xlat0.xxx;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendAdd" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat0 = u_xlat0 * vs_COLOR0;
					    SV_Target0.w = u_xlat0.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat0 = u_xlat0 * vs_COLOR0;
					    SV_Target0.w = u_xlat0.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendAdd" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat0 = u_xlat0 * vs_COLOR0;
					    SV_Target0.w = u_xlat0.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat0 = u_xlat0 * vs_COLOR0;
					    SV_Target0.w = u_xlat0.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendAdd" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat1.xyz;
					    SV_Target0.w = u_xlat1.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat1.xyz;
					    SV_Target0.w = u_xlat1.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendAdd" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat1.xyz;
					    SV_Target0.w = u_xlat1.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat1.xyz;
					    SV_Target0.w = u_xlat1.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendAdd" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat1.xyz;
					    SV_Target0.w = u_xlat1.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat1.xyz;
					    SV_Target0.w = u_xlat1.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendAdd" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat1.xyz;
					    SV_Target0.w = u_xlat1.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat1.xyz;
					    SV_Target0.w = u_xlat1.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendAdd" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat1.xyz;
					    SV_Target0.w = u_xlat1.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat1.xyz;
					    SV_Target0.w = u_xlat1.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendAdd" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat1.xyz;
					    SV_Target0.w = u_xlat1.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat1.xyz;
					    SV_Target0.w = u_xlat1.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendAdd" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat0 = u_xlat0 * vs_COLOR0;
					    SV_Target0.w = u_xlat0.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat0 = u_xlat0 * vs_COLOR0;
					    SV_Target0.w = u_xlat0.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendAdd" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat0 = u_xlat0 * vs_COLOR0;
					    SV_Target0.w = u_xlat0.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat0 = u_xlat0 * vs_COLOR0;
					    SV_Target0.w = u_xlat0.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendAdd" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat1.xyz;
					    SV_Target0.w = u_xlat1.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat1.xyz;
					    SV_Target0.w = u_xlat1.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendAdd" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat1.xyz;
					    SV_Target0.w = u_xlat1.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat1.xyz;
					    SV_Target0.w = u_xlat1.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendAdd" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat1.xyz;
					    SV_Target0.w = u_xlat1.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat1.xyz;
					    SV_Target0.w = u_xlat1.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendAdd" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat1.xyz;
					    SV_Target0.w = u_xlat1.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat1.xyz;
					    SV_Target0.w = u_xlat1.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendAdd" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat1.xyz;
					    SV_Target0.w = u_xlat1.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat1.xyz;
					    SV_Target0.w = u_xlat1.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendAdd" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat1.xyz;
					    SV_Target0.w = u_xlat1.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat1.xyz;
					    SV_Target0.w = u_xlat1.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendAdd" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat0 = u_xlat0.wxyz * vs_COLOR0.wxyz;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.yzw;
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat0 = u_xlat0.wxyz * vs_COLOR0.wxyz;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.yzw;
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendAdd" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat0 = u_xlat0.wxyz * vs_COLOR0.wxyz;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.yzw;
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat0 = u_xlat0.wxyz * vs_COLOR0.wxyz;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.yzw;
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendAdd" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1.wxyz * vs_COLOR0.wxyz;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat1.yzw;
					    u_xlat1.x = u_xlat1.x;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat1.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1.wxyz * vs_COLOR0.wxyz;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat1.yzw;
					    u_xlat1.x = u_xlat1.x;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat1.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendAdd" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1.wxyz * vs_COLOR0.wxyz;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat1.yzw;
					    u_xlat1.x = u_xlat1.x;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat1.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1.wxyz * vs_COLOR0.wxyz;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat1.yzw;
					    u_xlat1.x = u_xlat1.x;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat1.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendAdd" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1.wxyz * vs_COLOR0.wxyz;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat1.yzw;
					    u_xlat1.x = u_xlat1.x;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat1.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1.wxyz * vs_COLOR0.wxyz;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat1.yzw;
					    u_xlat1.x = u_xlat1.x;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat1.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendAdd" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1.wxyz * vs_COLOR0.wxyz;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat1.yzw;
					    u_xlat1.x = u_xlat1.x;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat1.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1.wxyz * vs_COLOR0.wxyz;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat1.yzw;
					    u_xlat1.x = u_xlat1.x;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat1.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendAdd" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1.wxyz * vs_COLOR0.wxyz;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat1.yzw;
					    u_xlat1.x = u_xlat1.x;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat1.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1.wxyz * vs_COLOR0.wxyz;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat1.yzw;
					    u_xlat1.x = u_xlat1.x;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat1.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendAdd" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1.wxyz * vs_COLOR0.wxyz;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat1.yzw;
					    u_xlat1.x = u_xlat1.x;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat1.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1.wxyz * vs_COLOR0.wxyz;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat1.yzw;
					    u_xlat1.x = u_xlat1.x;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat1.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendAdd" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat0 = u_xlat0.wxyz * vs_COLOR0.wxyz;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.yzw;
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat0 = u_xlat0.wxyz * vs_COLOR0.wxyz;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.yzw;
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendAdd" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat0 = u_xlat0.wxyz * vs_COLOR0.wxyz;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.yzw;
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat0 = u_xlat0.wxyz * vs_COLOR0.wxyz;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.yzw;
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendAdd" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1.wxyz * vs_COLOR0.wxyz;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat1.yzw;
					    u_xlat1.x = u_xlat1.x;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat1.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1.wxyz * vs_COLOR0.wxyz;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat1.yzw;
					    u_xlat1.x = u_xlat1.x;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat1.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendAdd" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1.wxyz * vs_COLOR0.wxyz;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat1.yzw;
					    u_xlat1.x = u_xlat1.x;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat1.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1.wxyz * vs_COLOR0.wxyz;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat1.yzw;
					    u_xlat1.x = u_xlat1.x;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat1.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendAdd" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1.wxyz * vs_COLOR0.wxyz;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat1.yzw;
					    u_xlat1.x = u_xlat1.x;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat1.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1.wxyz * vs_COLOR0.wxyz;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat1.yzw;
					    u_xlat1.x = u_xlat1.x;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat1.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendAdd" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1.wxyz * vs_COLOR0.wxyz;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat1.yzw;
					    u_xlat1.x = u_xlat1.x;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat1.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1.wxyz * vs_COLOR0.wxyz;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat1.yzw;
					    u_xlat1.x = u_xlat1.x;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat1.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendAdd" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1.wxyz * vs_COLOR0.wxyz;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat1.yzw;
					    u_xlat1.x = u_xlat1.x;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat1.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1.wxyz * vs_COLOR0.wxyz;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat1.yzw;
					    u_xlat1.x = u_xlat1.x;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat1.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendAdd" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1.wxyz * vs_COLOR0.wxyz;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat1.yzw;
					    u_xlat1.x = u_xlat1.x;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat1.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1.wxyz * vs_COLOR0.wxyz;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat1.yzw;
					    u_xlat1.x = u_xlat1.x;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat1.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendAdd" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					bool u_xlatb1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1.x = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat0.w = u_xlat0.w * u_xlat1.x;
					    u_xlat0 = u_xlat0 * vs_COLOR0;
					    SV_Target0.w = u_xlat0.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					bool u_xlatb1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1.x = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat0.w = u_xlat0.w * u_xlat1.x;
					    u_xlat0 = u_xlat0 * vs_COLOR0;
					    SV_Target0.w = u_xlat0.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendAdd" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					bool u_xlatb1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1.x = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat0.w = u_xlat0.w * u_xlat1.x;
					    u_xlat0 = u_xlat0 * vs_COLOR0;
					    SV_Target0.w = u_xlat0.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					bool u_xlatb1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1.x = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat0.w = u_xlat0.w * u_xlat1.x;
					    u_xlat0 = u_xlat0 * vs_COLOR0;
					    SV_Target0.w = u_xlat0.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendAdd" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					bool u_xlatb1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1.x = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat0.w = u_xlat0.w * u_xlat1.x;
					    u_xlat0 = u_xlat0 * vs_COLOR0;
					    u_xlat1.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat1.x = (-u_xlat1.x) + 1.0;
					    u_xlat1.x = u_xlat1.x * _ProjectionParams.z;
					    u_xlat1.x = max(u_xlat1.x, 0.0);
					    u_xlat1.x = u_xlat1.x * unity_FogParams.z + unity_FogParams.w;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.xyz * u_xlat1.xxx;
					    SV_Target0.w = u_xlat0.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					bool u_xlatb1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1.x = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat0.w = u_xlat0.w * u_xlat1.x;
					    u_xlat0 = u_xlat0 * vs_COLOR0;
					    u_xlat1.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat1.x = (-u_xlat1.x) + 1.0;
					    u_xlat1.x = u_xlat1.x * _ProjectionParams.z;
					    u_xlat1.x = max(u_xlat1.x, 0.0);
					    u_xlat1.x = u_xlat1.x * unity_FogParams.z + unity_FogParams.w;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.xyz * u_xlat1.xxx;
					    SV_Target0.w = u_xlat0.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendAdd" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					bool u_xlatb1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1.x = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat0.w = u_xlat0.w * u_xlat1.x;
					    u_xlat0 = u_xlat0 * vs_COLOR0;
					    u_xlat1.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat1.x = (-u_xlat1.x) + 1.0;
					    u_xlat1.x = u_xlat1.x * _ProjectionParams.z;
					    u_xlat1.x = max(u_xlat1.x, 0.0);
					    u_xlat1.x = u_xlat1.x * unity_FogParams.z + unity_FogParams.w;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.xyz * u_xlat1.xxx;
					    SV_Target0.w = u_xlat0.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					bool u_xlatb1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1.x = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat0.w = u_xlat0.w * u_xlat1.x;
					    u_xlat0 = u_xlat0 * vs_COLOR0;
					    u_xlat1.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat1.x = (-u_xlat1.x) + 1.0;
					    u_xlat1.x = u_xlat1.x * _ProjectionParams.z;
					    u_xlat1.x = max(u_xlat1.x, 0.0);
					    u_xlat1.x = u_xlat1.x * unity_FogParams.z + unity_FogParams.w;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.xyz * u_xlat1.xxx;
					    SV_Target0.w = u_xlat0.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendAdd" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					float u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3 = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat1.xyz;
					    SV_Target0.w = u_xlat1.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					float u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3 = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat1.xyz;
					    SV_Target0.w = u_xlat1.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendAdd" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					float u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3 = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat1.xyz;
					    SV_Target0.w = u_xlat1.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					float u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3 = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat1.xyz;
					    SV_Target0.w = u_xlat1.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendAdd" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					float u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3 = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat1.xyz;
					    SV_Target0.w = u_xlat1.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					float u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3 = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat1.xyz;
					    SV_Target0.w = u_xlat1.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendAdd" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					float u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3 = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat1.xyz;
					    SV_Target0.w = u_xlat1.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					float u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3 = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat1.xyz;
					    SV_Target0.w = u_xlat1.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendAdd" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					bool u_xlatb1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1.x = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat0.w = u_xlat0.w * u_xlat1.x;
					    u_xlat0 = u_xlat0 * vs_COLOR0;
					    SV_Target0.w = u_xlat0.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					bool u_xlatb1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1.x = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat0.w = u_xlat0.w * u_xlat1.x;
					    u_xlat0 = u_xlat0 * vs_COLOR0;
					    SV_Target0.w = u_xlat0.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendAdd" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					bool u_xlatb1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1.x = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat0.w = u_xlat0.w * u_xlat1.x;
					    u_xlat0 = u_xlat0 * vs_COLOR0;
					    SV_Target0.w = u_xlat0.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					bool u_xlatb1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1.x = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat0.w = u_xlat0.w * u_xlat1.x;
					    u_xlat0 = u_xlat0 * vs_COLOR0;
					    SV_Target0.w = u_xlat0.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendAdd" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					bool u_xlatb1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1.x = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat0.w = u_xlat0.w * u_xlat1.x;
					    u_xlat0 = u_xlat0 * vs_COLOR0;
					    u_xlat1.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat1.x = (-u_xlat1.x) + 1.0;
					    u_xlat1.x = u_xlat1.x * _ProjectionParams.z;
					    u_xlat1.x = max(u_xlat1.x, 0.0);
					    u_xlat1.x = u_xlat1.x * unity_FogParams.z + unity_FogParams.w;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.xyz * u_xlat1.xxx;
					    SV_Target0.w = u_xlat0.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					bool u_xlatb1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1.x = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat0.w = u_xlat0.w * u_xlat1.x;
					    u_xlat0 = u_xlat0 * vs_COLOR0;
					    u_xlat1.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat1.x = (-u_xlat1.x) + 1.0;
					    u_xlat1.x = u_xlat1.x * _ProjectionParams.z;
					    u_xlat1.x = max(u_xlat1.x, 0.0);
					    u_xlat1.x = u_xlat1.x * unity_FogParams.z + unity_FogParams.w;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.xyz * u_xlat1.xxx;
					    SV_Target0.w = u_xlat0.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendAdd" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					bool u_xlatb1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1.x = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat0.w = u_xlat0.w * u_xlat1.x;
					    u_xlat0 = u_xlat0 * vs_COLOR0;
					    u_xlat1.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat1.x = (-u_xlat1.x) + 1.0;
					    u_xlat1.x = u_xlat1.x * _ProjectionParams.z;
					    u_xlat1.x = max(u_xlat1.x, 0.0);
					    u_xlat1.x = u_xlat1.x * unity_FogParams.z + unity_FogParams.w;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.xyz * u_xlat1.xxx;
					    SV_Target0.w = u_xlat0.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					bool u_xlatb1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1.x = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat0.w = u_xlat0.w * u_xlat1.x;
					    u_xlat0 = u_xlat0 * vs_COLOR0;
					    u_xlat1.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat1.x = (-u_xlat1.x) + 1.0;
					    u_xlat1.x = u_xlat1.x * _ProjectionParams.z;
					    u_xlat1.x = max(u_xlat1.x, 0.0);
					    u_xlat1.x = u_xlat1.x * unity_FogParams.z + unity_FogParams.w;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.xyz * u_xlat1.xxx;
					    SV_Target0.w = u_xlat0.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendAdd" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					float u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3 = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat1.xyz;
					    SV_Target0.w = u_xlat1.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					float u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3 = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat1.xyz;
					    SV_Target0.w = u_xlat1.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendAdd" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					float u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3 = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat1.xyz;
					    SV_Target0.w = u_xlat1.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					float u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3 = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat1.xyz;
					    SV_Target0.w = u_xlat1.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendAdd" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					float u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3 = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat1.xyz;
					    SV_Target0.w = u_xlat1.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					float u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3 = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat1.xyz;
					    SV_Target0.w = u_xlat1.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendAdd" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					float u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3 = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat1.xyz;
					    SV_Target0.w = u_xlat1.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					float u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3 = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat1.xyz;
					    SV_Target0.w = u_xlat1.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendAdd" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					bool u_xlatb1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1.x = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat0.w = u_xlat0.w * u_xlat1.x;
					    u_xlat0 = u_xlat0.wxyz * vs_COLOR0.wxyz;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.yzw;
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					bool u_xlatb1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1.x = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat0.w = u_xlat0.w * u_xlat1.x;
					    u_xlat0 = u_xlat0.wxyz * vs_COLOR0.wxyz;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.yzw;
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendAdd" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					bool u_xlatb1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1.x = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat0.w = u_xlat0.w * u_xlat1.x;
					    u_xlat0 = u_xlat0.wxyz * vs_COLOR0.wxyz;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.yzw;
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					bool u_xlatb1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1.x = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat0.w = u_xlat0.w * u_xlat1.x;
					    u_xlat0 = u_xlat0.wxyz * vs_COLOR0.wxyz;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.yzw;
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendAdd" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					bool u_xlatb1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1.x = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat0.w = u_xlat0.w * u_xlat1.x;
					    u_xlat0 = u_xlat0.wxyz * vs_COLOR0.wxyz;
					    u_xlat1.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat1.x = (-u_xlat1.x) + 1.0;
					    u_xlat1.x = u_xlat1.x * _ProjectionParams.z;
					    u_xlat1.x = max(u_xlat1.x, 0.0);
					    u_xlat1.x = u_xlat1.x * unity_FogParams.z + unity_FogParams.w;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.yzw * u_xlat1.xxx;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					bool u_xlatb1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1.x = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat0.w = u_xlat0.w * u_xlat1.x;
					    u_xlat0 = u_xlat0.wxyz * vs_COLOR0.wxyz;
					    u_xlat1.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat1.x = (-u_xlat1.x) + 1.0;
					    u_xlat1.x = u_xlat1.x * _ProjectionParams.z;
					    u_xlat1.x = max(u_xlat1.x, 0.0);
					    u_xlat1.x = u_xlat1.x * unity_FogParams.z + unity_FogParams.w;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.yzw * u_xlat1.xxx;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendAdd" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					bool u_xlatb1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1.x = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat0.w = u_xlat0.w * u_xlat1.x;
					    u_xlat0 = u_xlat0.wxyz * vs_COLOR0.wxyz;
					    u_xlat1.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat1.x = (-u_xlat1.x) + 1.0;
					    u_xlat1.x = u_xlat1.x * _ProjectionParams.z;
					    u_xlat1.x = max(u_xlat1.x, 0.0);
					    u_xlat1.x = u_xlat1.x * unity_FogParams.z + unity_FogParams.w;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.yzw * u_xlat1.xxx;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					bool u_xlatb1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1.x = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat0.w = u_xlat0.w * u_xlat1.x;
					    u_xlat0 = u_xlat0.wxyz * vs_COLOR0.wxyz;
					    u_xlat1.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat1.x = (-u_xlat1.x) + 1.0;
					    u_xlat1.x = u_xlat1.x * _ProjectionParams.z;
					    u_xlat1.x = max(u_xlat1.x, 0.0);
					    u_xlat1.x = u_xlat1.x * unity_FogParams.z + unity_FogParams.w;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.yzw * u_xlat1.xxx;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendAdd" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					float u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3 = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3;
					    u_xlat1 = u_xlat1.wxyz * vs_COLOR0.wxyz;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat1.yzw;
					    u_xlat1.x = u_xlat1.x;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat1.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					float u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3 = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3;
					    u_xlat1 = u_xlat1.wxyz * vs_COLOR0.wxyz;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat1.yzw;
					    u_xlat1.x = u_xlat1.x;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat1.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendAdd" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					float u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3 = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3;
					    u_xlat1 = u_xlat1.wxyz * vs_COLOR0.wxyz;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat1.yzw;
					    u_xlat1.x = u_xlat1.x;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat1.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					float u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3 = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3;
					    u_xlat1 = u_xlat1.wxyz * vs_COLOR0.wxyz;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat1.yzw;
					    u_xlat1.x = u_xlat1.x;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat1.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendAdd" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					float u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3 = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3;
					    u_xlat1 = u_xlat1.wxyz * vs_COLOR0.wxyz;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat1.yzw;
					    u_xlat1.x = u_xlat1.x;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat1.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					float u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3 = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3;
					    u_xlat1 = u_xlat1.wxyz * vs_COLOR0.wxyz;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat1.yzw;
					    u_xlat1.x = u_xlat1.x;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat1.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendAdd" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					float u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3 = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3;
					    u_xlat1 = u_xlat1.wxyz * vs_COLOR0.wxyz;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat1.yzw;
					    u_xlat1.x = u_xlat1.x;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat1.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					float u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3 = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3;
					    u_xlat1 = u_xlat1.wxyz * vs_COLOR0.wxyz;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat1.yzw;
					    u_xlat1.x = u_xlat1.x;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat1.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendAdd" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					bool u_xlatb1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1.x = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat0.w = u_xlat0.w * u_xlat1.x;
					    u_xlat0 = u_xlat0.wxyz * vs_COLOR0.wxyz;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.yzw;
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					bool u_xlatb1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1.x = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat0.w = u_xlat0.w * u_xlat1.x;
					    u_xlat0 = u_xlat0.wxyz * vs_COLOR0.wxyz;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.yzw;
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendAdd" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					bool u_xlatb1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1.x = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat0.w = u_xlat0.w * u_xlat1.x;
					    u_xlat0 = u_xlat0.wxyz * vs_COLOR0.wxyz;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.yzw;
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					bool u_xlatb1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1.x = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat0.w = u_xlat0.w * u_xlat1.x;
					    u_xlat0 = u_xlat0.wxyz * vs_COLOR0.wxyz;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.yzw;
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendAdd" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					bool u_xlatb1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1.x = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat0.w = u_xlat0.w * u_xlat1.x;
					    u_xlat0 = u_xlat0.wxyz * vs_COLOR0.wxyz;
					    u_xlat1.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat1.x = (-u_xlat1.x) + 1.0;
					    u_xlat1.x = u_xlat1.x * _ProjectionParams.z;
					    u_xlat1.x = max(u_xlat1.x, 0.0);
					    u_xlat1.x = u_xlat1.x * unity_FogParams.z + unity_FogParams.w;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.yzw * u_xlat1.xxx;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					bool u_xlatb1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1.x = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat0.w = u_xlat0.w * u_xlat1.x;
					    u_xlat0 = u_xlat0.wxyz * vs_COLOR0.wxyz;
					    u_xlat1.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat1.x = (-u_xlat1.x) + 1.0;
					    u_xlat1.x = u_xlat1.x * _ProjectionParams.z;
					    u_xlat1.x = max(u_xlat1.x, 0.0);
					    u_xlat1.x = u_xlat1.x * unity_FogParams.z + unity_FogParams.w;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.yzw * u_xlat1.xxx;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendAdd" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					bool u_xlatb1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1.x = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat0.w = u_xlat0.w * u_xlat1.x;
					    u_xlat0 = u_xlat0.wxyz * vs_COLOR0.wxyz;
					    u_xlat1.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat1.x = (-u_xlat1.x) + 1.0;
					    u_xlat1.x = u_xlat1.x * _ProjectionParams.z;
					    u_xlat1.x = max(u_xlat1.x, 0.0);
					    u_xlat1.x = u_xlat1.x * unity_FogParams.z + unity_FogParams.w;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.yzw * u_xlat1.xxx;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					bool u_xlatb1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1.x = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat0.w = u_xlat0.w * u_xlat1.x;
					    u_xlat0 = u_xlat0.wxyz * vs_COLOR0.wxyz;
					    u_xlat1.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat1.x = (-u_xlat1.x) + 1.0;
					    u_xlat1.x = u_xlat1.x * _ProjectionParams.z;
					    u_xlat1.x = max(u_xlat1.x, 0.0);
					    u_xlat1.x = u_xlat1.x * unity_FogParams.z + unity_FogParams.w;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.yzw * u_xlat1.xxx;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendAdd" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					float u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3 = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3;
					    u_xlat1 = u_xlat1.wxyz * vs_COLOR0.wxyz;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat1.yzw;
					    u_xlat1.x = u_xlat1.x;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat1.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					float u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3 = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3;
					    u_xlat1 = u_xlat1.wxyz * vs_COLOR0.wxyz;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat1.yzw;
					    u_xlat1.x = u_xlat1.x;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat1.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendAdd" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					float u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3 = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3;
					    u_xlat1 = u_xlat1.wxyz * vs_COLOR0.wxyz;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat1.yzw;
					    u_xlat1.x = u_xlat1.x;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat1.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					float u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3 = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3;
					    u_xlat1 = u_xlat1.wxyz * vs_COLOR0.wxyz;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat1.yzw;
					    u_xlat1.x = u_xlat1.x;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat1.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendAdd" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					float u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3 = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3;
					    u_xlat1 = u_xlat1.wxyz * vs_COLOR0.wxyz;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat1.yzw;
					    u_xlat1.x = u_xlat1.x;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat1.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					float u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3 = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3;
					    u_xlat1 = u_xlat1.wxyz * vs_COLOR0.wxyz;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat1.yzw;
					    u_xlat1.x = u_xlat1.x;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat1.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendAdd" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					float u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3 = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3;
					    u_xlat1 = u_xlat1.wxyz * vs_COLOR0.wxyz;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat1.yzw;
					    u_xlat1.x = u_xlat1.x;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat1.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					float u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3 = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3;
					    u_xlat1 = u_xlat1.wxyz * vs_COLOR0.wxyz;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat1.yzw;
					    u_xlat1.x = u_xlat1.x;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat1.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendAdd" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    SV_Target0.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    SV_Target0.w = u_xlatb0 ? 1.0 : float(0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    SV_Target0.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    SV_Target0.w = u_xlatb0 ? 1.0 : float(0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendAdd" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    SV_Target0.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    SV_Target0.w = u_xlatb0 ? 1.0 : float(0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    SV_Target0.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    SV_Target0.w = u_xlatb0 ? 1.0 : float(0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendAdd" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    SV_Target0.xyz = u_xlat3.xyz * vec3(u_xlat0);
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    SV_Target0.w = u_xlatb0 ? 1.0 : float(0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    SV_Target0.xyz = u_xlat3.xyz * vec3(u_xlat0);
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    SV_Target0.w = u_xlatb0 ? 1.0 : float(0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendAdd" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    SV_Target0.xyz = u_xlat3.xyz * vec3(u_xlat0);
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    SV_Target0.w = u_xlatb0 ? 1.0 : float(0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    SV_Target0.xyz = u_xlat3.xyz * vec3(u_xlat0);
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    SV_Target0.w = u_xlatb0 ? 1.0 : float(0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendAdd" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    SV_Target0.xyz = u_xlat3.xyz * vec3(u_xlat0);
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    SV_Target0.w = u_xlatb0 ? 1.0 : float(0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    SV_Target0.xyz = u_xlat3.xyz * vec3(u_xlat0);
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    SV_Target0.w = u_xlatb0 ? 1.0 : float(0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendAdd" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    SV_Target0.xyz = u_xlat3.xyz * vec3(u_xlat0);
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    SV_Target0.w = u_xlatb0 ? 1.0 : float(0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    SV_Target0.xyz = u_xlat3.xyz * vec3(u_xlat0);
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    SV_Target0.w = u_xlatb0 ? 1.0 : float(0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendAdd" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    SV_Target0.xyz = u_xlat3.xyz * vec3(u_xlat0);
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    SV_Target0.w = u_xlatb0 ? 1.0 : float(0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    SV_Target0.xyz = u_xlat3.xyz * vec3(u_xlat0);
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    SV_Target0.w = u_xlatb0 ? 1.0 : float(0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendAdd" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    SV_Target0.xyz = u_xlat3.xyz * vec3(u_xlat0);
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    SV_Target0.w = u_xlatb0 ? 1.0 : float(0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    SV_Target0.xyz = u_xlat3.xyz * vec3(u_xlat0);
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    SV_Target0.w = u_xlatb0 ? 1.0 : float(0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendAdd" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    SV_Target0.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    SV_Target0.w = u_xlatb0 ? 1.0 : float(0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    SV_Target0.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    SV_Target0.w = u_xlatb0 ? 1.0 : float(0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendAdd" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    SV_Target0.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    SV_Target0.w = u_xlatb0 ? 1.0 : float(0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    SV_Target0.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    SV_Target0.w = u_xlatb0 ? 1.0 : float(0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendAdd" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    SV_Target0.xyz = u_xlat3.xyz * vec3(u_xlat0);
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    SV_Target0.w = u_xlatb0 ? 1.0 : float(0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    SV_Target0.xyz = u_xlat3.xyz * vec3(u_xlat0);
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    SV_Target0.w = u_xlatb0 ? 1.0 : float(0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendAdd" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    SV_Target0.xyz = u_xlat3.xyz * vec3(u_xlat0);
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    SV_Target0.w = u_xlatb0 ? 1.0 : float(0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    SV_Target0.xyz = u_xlat3.xyz * vec3(u_xlat0);
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    SV_Target0.w = u_xlatb0 ? 1.0 : float(0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendAdd" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    SV_Target0.xyz = u_xlat3.xyz * vec3(u_xlat0);
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    SV_Target0.w = u_xlatb0 ? 1.0 : float(0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    SV_Target0.xyz = u_xlat3.xyz * vec3(u_xlat0);
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    SV_Target0.w = u_xlatb0 ? 1.0 : float(0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendAdd" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    SV_Target0.xyz = u_xlat3.xyz * vec3(u_xlat0);
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    SV_Target0.w = u_xlatb0 ? 1.0 : float(0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    SV_Target0.xyz = u_xlat3.xyz * vec3(u_xlat0);
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    SV_Target0.w = u_xlatb0 ? 1.0 : float(0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendAdd" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    SV_Target0.xyz = u_xlat3.xyz * vec3(u_xlat0);
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    SV_Target0.w = u_xlatb0 ? 1.0 : float(0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    SV_Target0.xyz = u_xlat3.xyz * vec3(u_xlat0);
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    SV_Target0.w = u_xlatb0 ? 1.0 : float(0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendAdd" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    SV_Target0.xyz = u_xlat3.xyz * vec3(u_xlat0);
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    SV_Target0.w = u_xlatb0 ? 1.0 : float(0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    SV_Target0.xyz = u_xlat3.xyz * vec3(u_xlat0);
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    SV_Target0.w = u_xlatb0 ? 1.0 : float(0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendAdd" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    SV_Target0.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat0 = u_xlatb0 ? 1.0 : float(0.0);
					    SV_Target0.w = u_xlat0 * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    SV_Target0.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat0 = u_xlatb0 ? 1.0 : float(0.0);
					    SV_Target0.w = u_xlat0 * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendAdd" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    SV_Target0.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat0 = u_xlatb0 ? 1.0 : float(0.0);
					    SV_Target0.w = u_xlat0 * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    SV_Target0.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat0 = u_xlatb0 ? 1.0 : float(0.0);
					    SV_Target0.w = u_xlat0 * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendAdd" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    SV_Target0.xyz = u_xlat3.xyz * vec3(u_xlat0);
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    u_xlat0 = u_xlatb0 ? 1.0 : float(0.0);
					    SV_Target0.w = u_xlat0 * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    SV_Target0.xyz = u_xlat3.xyz * vec3(u_xlat0);
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    u_xlat0 = u_xlatb0 ? 1.0 : float(0.0);
					    SV_Target0.w = u_xlat0 * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendAdd" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    SV_Target0.xyz = u_xlat3.xyz * vec3(u_xlat0);
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    u_xlat0 = u_xlatb0 ? 1.0 : float(0.0);
					    SV_Target0.w = u_xlat0 * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    SV_Target0.xyz = u_xlat3.xyz * vec3(u_xlat0);
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    u_xlat0 = u_xlatb0 ? 1.0 : float(0.0);
					    SV_Target0.w = u_xlat0 * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendAdd" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    SV_Target0.xyz = u_xlat3.xyz * vec3(u_xlat0);
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    u_xlat0 = u_xlatb0 ? 1.0 : float(0.0);
					    SV_Target0.w = u_xlat0 * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    SV_Target0.xyz = u_xlat3.xyz * vec3(u_xlat0);
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    u_xlat0 = u_xlatb0 ? 1.0 : float(0.0);
					    SV_Target0.w = u_xlat0 * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendAdd" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    SV_Target0.xyz = u_xlat3.xyz * vec3(u_xlat0);
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    u_xlat0 = u_xlatb0 ? 1.0 : float(0.0);
					    SV_Target0.w = u_xlat0 * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    SV_Target0.xyz = u_xlat3.xyz * vec3(u_xlat0);
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    u_xlat0 = u_xlatb0 ? 1.0 : float(0.0);
					    SV_Target0.w = u_xlat0 * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendAdd" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    SV_Target0.xyz = u_xlat3.xyz * vec3(u_xlat0);
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    u_xlat0 = u_xlatb0 ? 1.0 : float(0.0);
					    SV_Target0.w = u_xlat0 * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    SV_Target0.xyz = u_xlat3.xyz * vec3(u_xlat0);
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    u_xlat0 = u_xlatb0 ? 1.0 : float(0.0);
					    SV_Target0.w = u_xlat0 * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendAdd" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    SV_Target0.xyz = u_xlat3.xyz * vec3(u_xlat0);
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    u_xlat0 = u_xlatb0 ? 1.0 : float(0.0);
					    SV_Target0.w = u_xlat0 * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    SV_Target0.xyz = u_xlat3.xyz * vec3(u_xlat0);
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    u_xlat0 = u_xlatb0 ? 1.0 : float(0.0);
					    SV_Target0.w = u_xlat0 * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendAdd" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    SV_Target0.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat0 = u_xlatb0 ? 1.0 : float(0.0);
					    SV_Target0.w = u_xlat0 * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    SV_Target0.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat0 = u_xlatb0 ? 1.0 : float(0.0);
					    SV_Target0.w = u_xlat0 * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendAdd" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    SV_Target0.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat0 = u_xlatb0 ? 1.0 : float(0.0);
					    SV_Target0.w = u_xlat0 * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    SV_Target0.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat0 = u_xlatb0 ? 1.0 : float(0.0);
					    SV_Target0.w = u_xlat0 * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendAdd" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    SV_Target0.xyz = u_xlat3.xyz * vec3(u_xlat0);
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    u_xlat0 = u_xlatb0 ? 1.0 : float(0.0);
					    SV_Target0.w = u_xlat0 * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    SV_Target0.xyz = u_xlat3.xyz * vec3(u_xlat0);
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    u_xlat0 = u_xlatb0 ? 1.0 : float(0.0);
					    SV_Target0.w = u_xlat0 * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendAdd" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    SV_Target0.xyz = u_xlat3.xyz * vec3(u_xlat0);
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    u_xlat0 = u_xlatb0 ? 1.0 : float(0.0);
					    SV_Target0.w = u_xlat0 * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    SV_Target0.xyz = u_xlat3.xyz * vec3(u_xlat0);
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    u_xlat0 = u_xlatb0 ? 1.0 : float(0.0);
					    SV_Target0.w = u_xlat0 * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendAdd" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    SV_Target0.xyz = u_xlat3.xyz * vec3(u_xlat0);
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    u_xlat0 = u_xlatb0 ? 1.0 : float(0.0);
					    SV_Target0.w = u_xlat0 * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    SV_Target0.xyz = u_xlat3.xyz * vec3(u_xlat0);
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    u_xlat0 = u_xlatb0 ? 1.0 : float(0.0);
					    SV_Target0.w = u_xlat0 * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendAdd" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    SV_Target0.xyz = u_xlat3.xyz * vec3(u_xlat0);
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    u_xlat0 = u_xlatb0 ? 1.0 : float(0.0);
					    SV_Target0.w = u_xlat0 * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    SV_Target0.xyz = u_xlat3.xyz * vec3(u_xlat0);
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    u_xlat0 = u_xlatb0 ? 1.0 : float(0.0);
					    SV_Target0.w = u_xlat0 * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendAdd" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    SV_Target0.xyz = u_xlat3.xyz * vec3(u_xlat0);
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    u_xlat0 = u_xlatb0 ? 1.0 : float(0.0);
					    SV_Target0.w = u_xlat0 * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    SV_Target0.xyz = u_xlat3.xyz * vec3(u_xlat0);
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    u_xlat0 = u_xlatb0 ? 1.0 : float(0.0);
					    SV_Target0.w = u_xlat0 * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendAdd" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    SV_Target0.xyz = u_xlat3.xyz * vec3(u_xlat0);
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    u_xlat0 = u_xlatb0 ? 1.0 : float(0.0);
					    SV_Target0.w = u_xlat0 * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    SV_Target0.xyz = u_xlat3.xyz * vec3(u_xlat0);
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    u_xlat0 = u_xlatb0 ? 1.0 : float(0.0);
					    SV_Target0.w = u_xlat0 * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendAdd" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat0 = u_xlat0 * vs_COLOR0;
					    SV_Target0.w = u_xlat0.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat0 = u_xlat0 * vs_COLOR0;
					    SV_Target0.w = u_xlat0.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendAdd" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[7];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    SV_Target0.w = u_xlat0.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[6];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    SV_Target0.w = u_xlat0.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendAdd" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat1.xyz;
					    SV_Target0.w = u_xlat1.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat1.xyz;
					    SV_Target0.w = u_xlat1.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendAdd" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat1.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat1.x = (-u_xlat1.x) + 1.0;
					    u_xlat1.x = u_xlat1.x * _ProjectionParams.z;
					    u_xlat1.x = max(u_xlat1.x, 0.0);
					    u_xlat1.x = u_xlat1.x * unity_FogParams.z + unity_FogParams.w;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.xyz * u_xlat1.xxx;
					    SV_Target0.w = u_xlat0.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat1.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat1.x = (-u_xlat1.x) + 1.0;
					    u_xlat1.x = u_xlat1.x * _ProjectionParams.z;
					    u_xlat1.x = max(u_xlat1.x, 0.0);
					    u_xlat1.x = u_xlat1.x * unity_FogParams.z + unity_FogParams.w;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.xyz * u_xlat1.xxx;
					    SV_Target0.w = u_xlat0.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendAdd" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat1.xyz;
					    SV_Target0.w = u_xlat1.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat1.xyz;
					    SV_Target0.w = u_xlat1.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendAdd" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat1.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat1.x = (-u_xlat1.x) + 1.0;
					    u_xlat1.x = u_xlat1.x * _ProjectionParams.z;
					    u_xlat1.x = max(u_xlat1.x, 0.0);
					    u_xlat1.x = u_xlat1.x * unity_FogParams.y;
					    u_xlat1.x = exp2((-u_xlat1.x));
					    u_xlat1.x = min(u_xlat1.x, 1.0);
					    SV_Target0.xyz = u_xlat0.xyz * u_xlat1.xxx;
					    SV_Target0.w = u_xlat0.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat1.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat1.x = (-u_xlat1.x) + 1.0;
					    u_xlat1.x = u_xlat1.x * _ProjectionParams.z;
					    u_xlat1.x = max(u_xlat1.x, 0.0);
					    u_xlat1.x = u_xlat1.x * unity_FogParams.y;
					    u_xlat1.x = exp2((-u_xlat1.x));
					    u_xlat1.x = min(u_xlat1.x, 1.0);
					    SV_Target0.xyz = u_xlat0.xyz * u_xlat1.xxx;
					    SV_Target0.w = u_xlat0.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendAdd" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat1.xyz;
					    SV_Target0.w = u_xlat1.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat1.xyz;
					    SV_Target0.w = u_xlat1.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendAdd" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat1.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat1.x = (-u_xlat1.x) + 1.0;
					    u_xlat1.x = u_xlat1.x * _ProjectionParams.z;
					    u_xlat1.x = max(u_xlat1.x, 0.0);
					    u_xlat1.x = u_xlat1.x * unity_FogParams.x;
					    u_xlat1.x = u_xlat1.x * (-u_xlat1.x);
					    u_xlat1.x = exp2(u_xlat1.x);
					    SV_Target0.xyz = u_xlat0.xyz * u_xlat1.xxx;
					    SV_Target0.w = u_xlat0.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat1.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat1.x = (-u_xlat1.x) + 1.0;
					    u_xlat1.x = u_xlat1.x * _ProjectionParams.z;
					    u_xlat1.x = max(u_xlat1.x, 0.0);
					    u_xlat1.x = u_xlat1.x * unity_FogParams.x;
					    u_xlat1.x = u_xlat1.x * (-u_xlat1.x);
					    u_xlat1.x = exp2(u_xlat1.x);
					    SV_Target0.xyz = u_xlat0.xyz * u_xlat1.xxx;
					    SV_Target0.w = u_xlat0.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendAdd" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[7];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    SV_Target0.w = u_xlat0.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[6];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    SV_Target0.w = u_xlat0.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendAdd" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[7];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    SV_Target0.w = u_xlat0.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[6];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    SV_Target0.w = u_xlat0.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendAdd" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat1.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat1.x = (-u_xlat1.x) + 1.0;
					    u_xlat1.x = u_xlat1.x * _ProjectionParams.z;
					    u_xlat1.x = max(u_xlat1.x, 0.0);
					    u_xlat1.x = u_xlat1.x * unity_FogParams.z + unity_FogParams.w;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.xyz * u_xlat1.xxx;
					    SV_Target0.w = u_xlat0.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat1.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat1.x = (-u_xlat1.x) + 1.0;
					    u_xlat1.x = u_xlat1.x * _ProjectionParams.z;
					    u_xlat1.x = max(u_xlat1.x, 0.0);
					    u_xlat1.x = u_xlat1.x * unity_FogParams.z + unity_FogParams.w;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.xyz * u_xlat1.xxx;
					    SV_Target0.w = u_xlat0.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendAdd" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat1.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat1.x = (-u_xlat1.x) + 1.0;
					    u_xlat1.x = u_xlat1.x * _ProjectionParams.z;
					    u_xlat1.x = max(u_xlat1.x, 0.0);
					    u_xlat1.x = u_xlat1.x * unity_FogParams.z + unity_FogParams.w;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.xyz * u_xlat1.xxx;
					    SV_Target0.w = u_xlat0.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat1.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat1.x = (-u_xlat1.x) + 1.0;
					    u_xlat1.x = u_xlat1.x * _ProjectionParams.z;
					    u_xlat1.x = max(u_xlat1.x, 0.0);
					    u_xlat1.x = u_xlat1.x * unity_FogParams.z + unity_FogParams.w;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.xyz * u_xlat1.xxx;
					    SV_Target0.w = u_xlat0.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendAdd" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat1.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat1.x = (-u_xlat1.x) + 1.0;
					    u_xlat1.x = u_xlat1.x * _ProjectionParams.z;
					    u_xlat1.x = max(u_xlat1.x, 0.0);
					    u_xlat1.x = u_xlat1.x * unity_FogParams.y;
					    u_xlat1.x = exp2((-u_xlat1.x));
					    u_xlat1.x = min(u_xlat1.x, 1.0);
					    SV_Target0.xyz = u_xlat0.xyz * u_xlat1.xxx;
					    SV_Target0.w = u_xlat0.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat1.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat1.x = (-u_xlat1.x) + 1.0;
					    u_xlat1.x = u_xlat1.x * _ProjectionParams.z;
					    u_xlat1.x = max(u_xlat1.x, 0.0);
					    u_xlat1.x = u_xlat1.x * unity_FogParams.y;
					    u_xlat1.x = exp2((-u_xlat1.x));
					    u_xlat1.x = min(u_xlat1.x, 1.0);
					    SV_Target0.xyz = u_xlat0.xyz * u_xlat1.xxx;
					    SV_Target0.w = u_xlat0.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendAdd" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat1.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat1.x = (-u_xlat1.x) + 1.0;
					    u_xlat1.x = u_xlat1.x * _ProjectionParams.z;
					    u_xlat1.x = max(u_xlat1.x, 0.0);
					    u_xlat1.x = u_xlat1.x * unity_FogParams.y;
					    u_xlat1.x = exp2((-u_xlat1.x));
					    u_xlat1.x = min(u_xlat1.x, 1.0);
					    SV_Target0.xyz = u_xlat0.xyz * u_xlat1.xxx;
					    SV_Target0.w = u_xlat0.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat1.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat1.x = (-u_xlat1.x) + 1.0;
					    u_xlat1.x = u_xlat1.x * _ProjectionParams.z;
					    u_xlat1.x = max(u_xlat1.x, 0.0);
					    u_xlat1.x = u_xlat1.x * unity_FogParams.y;
					    u_xlat1.x = exp2((-u_xlat1.x));
					    u_xlat1.x = min(u_xlat1.x, 1.0);
					    SV_Target0.xyz = u_xlat0.xyz * u_xlat1.xxx;
					    SV_Target0.w = u_xlat0.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendAdd" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat1.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat1.x = (-u_xlat1.x) + 1.0;
					    u_xlat1.x = u_xlat1.x * _ProjectionParams.z;
					    u_xlat1.x = max(u_xlat1.x, 0.0);
					    u_xlat1.x = u_xlat1.x * unity_FogParams.x;
					    u_xlat1.x = u_xlat1.x * (-u_xlat1.x);
					    u_xlat1.x = exp2(u_xlat1.x);
					    SV_Target0.xyz = u_xlat0.xyz * u_xlat1.xxx;
					    SV_Target0.w = u_xlat0.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat1.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat1.x = (-u_xlat1.x) + 1.0;
					    u_xlat1.x = u_xlat1.x * _ProjectionParams.z;
					    u_xlat1.x = max(u_xlat1.x, 0.0);
					    u_xlat1.x = u_xlat1.x * unity_FogParams.x;
					    u_xlat1.x = u_xlat1.x * (-u_xlat1.x);
					    u_xlat1.x = exp2(u_xlat1.x);
					    SV_Target0.xyz = u_xlat0.xyz * u_xlat1.xxx;
					    SV_Target0.w = u_xlat0.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendAdd" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat1.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat1.x = (-u_xlat1.x) + 1.0;
					    u_xlat1.x = u_xlat1.x * _ProjectionParams.z;
					    u_xlat1.x = max(u_xlat1.x, 0.0);
					    u_xlat1.x = u_xlat1.x * unity_FogParams.x;
					    u_xlat1.x = u_xlat1.x * (-u_xlat1.x);
					    u_xlat1.x = exp2(u_xlat1.x);
					    SV_Target0.xyz = u_xlat0.xyz * u_xlat1.xxx;
					    SV_Target0.w = u_xlat0.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat1.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat1.x = (-u_xlat1.x) + 1.0;
					    u_xlat1.x = u_xlat1.x * _ProjectionParams.z;
					    u_xlat1.x = max(u_xlat1.x, 0.0);
					    u_xlat1.x = u_xlat1.x * unity_FogParams.x;
					    u_xlat1.x = u_xlat1.x * (-u_xlat1.x);
					    u_xlat1.x = exp2(u_xlat1.x);
					    SV_Target0.xyz = u_xlat0.xyz * u_xlat1.xxx;
					    SV_Target0.w = u_xlat0.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendAdd" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat0 = u_xlat0.wxyz * vs_COLOR0.wxyz;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.yzw;
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat0 = u_xlat0.wxyz * vs_COLOR0.wxyz;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.yzw;
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendAdd" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[7];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0.wxyz * u_xlat1.wxyz;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.yzw;
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[6];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0.wxyz * u_xlat1.wxyz;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.yzw;
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendAdd" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1.wxyz * vs_COLOR0.wxyz;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat1.yzw;
					    u_xlat1.x = u_xlat1.x;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat1.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1.wxyz * vs_COLOR0.wxyz;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat1.yzw;
					    u_xlat1.x = u_xlat1.x;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat1.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendAdd" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0.wxyz * u_xlat1.wxyz;
					    u_xlat1.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat1.x = (-u_xlat1.x) + 1.0;
					    u_xlat1.x = u_xlat1.x * _ProjectionParams.z;
					    u_xlat1.x = max(u_xlat1.x, 0.0);
					    u_xlat1.x = u_xlat1.x * unity_FogParams.z + unity_FogParams.w;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.yzw * u_xlat1.xxx;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0.wxyz * u_xlat1.wxyz;
					    u_xlat1.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat1.x = (-u_xlat1.x) + 1.0;
					    u_xlat1.x = u_xlat1.x * _ProjectionParams.z;
					    u_xlat1.x = max(u_xlat1.x, 0.0);
					    u_xlat1.x = u_xlat1.x * unity_FogParams.z + unity_FogParams.w;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.yzw * u_xlat1.xxx;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendAdd" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1.wxyz * vs_COLOR0.wxyz;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat1.yzw;
					    u_xlat1.x = u_xlat1.x;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat1.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1.wxyz * vs_COLOR0.wxyz;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat1.yzw;
					    u_xlat1.x = u_xlat1.x;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat1.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendAdd" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0.wxyz * u_xlat1.wxyz;
					    u_xlat1.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat1.x = (-u_xlat1.x) + 1.0;
					    u_xlat1.x = u_xlat1.x * _ProjectionParams.z;
					    u_xlat1.x = max(u_xlat1.x, 0.0);
					    u_xlat1.x = u_xlat1.x * unity_FogParams.y;
					    u_xlat1.x = exp2((-u_xlat1.x));
					    u_xlat1.x = min(u_xlat1.x, 1.0);
					    SV_Target0.xyz = u_xlat0.yzw * u_xlat1.xxx;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0.wxyz * u_xlat1.wxyz;
					    u_xlat1.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat1.x = (-u_xlat1.x) + 1.0;
					    u_xlat1.x = u_xlat1.x * _ProjectionParams.z;
					    u_xlat1.x = max(u_xlat1.x, 0.0);
					    u_xlat1.x = u_xlat1.x * unity_FogParams.y;
					    u_xlat1.x = exp2((-u_xlat1.x));
					    u_xlat1.x = min(u_xlat1.x, 1.0);
					    SV_Target0.xyz = u_xlat0.yzw * u_xlat1.xxx;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendAdd" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1.wxyz * vs_COLOR0.wxyz;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat1.yzw;
					    u_xlat1.x = u_xlat1.x;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat1.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1.wxyz * vs_COLOR0.wxyz;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat1.yzw;
					    u_xlat1.x = u_xlat1.x;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat1.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendAdd" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0.wxyz * u_xlat1.wxyz;
					    u_xlat1.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat1.x = (-u_xlat1.x) + 1.0;
					    u_xlat1.x = u_xlat1.x * _ProjectionParams.z;
					    u_xlat1.x = max(u_xlat1.x, 0.0);
					    u_xlat1.x = u_xlat1.x * unity_FogParams.x;
					    u_xlat1.x = u_xlat1.x * (-u_xlat1.x);
					    u_xlat1.x = exp2(u_xlat1.x);
					    SV_Target0.xyz = u_xlat0.yzw * u_xlat1.xxx;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0.wxyz * u_xlat1.wxyz;
					    u_xlat1.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat1.x = (-u_xlat1.x) + 1.0;
					    u_xlat1.x = u_xlat1.x * _ProjectionParams.z;
					    u_xlat1.x = max(u_xlat1.x, 0.0);
					    u_xlat1.x = u_xlat1.x * unity_FogParams.x;
					    u_xlat1.x = u_xlat1.x * (-u_xlat1.x);
					    u_xlat1.x = exp2(u_xlat1.x);
					    SV_Target0.xyz = u_xlat0.yzw * u_xlat1.xxx;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendAdd" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[7];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0.wxyz * u_xlat1.wxyz;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.yzw;
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[6];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0.wxyz * u_xlat1.wxyz;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.yzw;
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendAdd" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[7];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0.wxyz * u_xlat1.wxyz;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.yzw;
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[6];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0.wxyz * u_xlat1.wxyz;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.yzw;
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendAdd" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0.wxyz * u_xlat1.wxyz;
					    u_xlat1.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat1.x = (-u_xlat1.x) + 1.0;
					    u_xlat1.x = u_xlat1.x * _ProjectionParams.z;
					    u_xlat1.x = max(u_xlat1.x, 0.0);
					    u_xlat1.x = u_xlat1.x * unity_FogParams.z + unity_FogParams.w;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.yzw * u_xlat1.xxx;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0.wxyz * u_xlat1.wxyz;
					    u_xlat1.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat1.x = (-u_xlat1.x) + 1.0;
					    u_xlat1.x = u_xlat1.x * _ProjectionParams.z;
					    u_xlat1.x = max(u_xlat1.x, 0.0);
					    u_xlat1.x = u_xlat1.x * unity_FogParams.z + unity_FogParams.w;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.yzw * u_xlat1.xxx;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendAdd" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0.wxyz * u_xlat1.wxyz;
					    u_xlat1.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat1.x = (-u_xlat1.x) + 1.0;
					    u_xlat1.x = u_xlat1.x * _ProjectionParams.z;
					    u_xlat1.x = max(u_xlat1.x, 0.0);
					    u_xlat1.x = u_xlat1.x * unity_FogParams.z + unity_FogParams.w;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.yzw * u_xlat1.xxx;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0.wxyz * u_xlat1.wxyz;
					    u_xlat1.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat1.x = (-u_xlat1.x) + 1.0;
					    u_xlat1.x = u_xlat1.x * _ProjectionParams.z;
					    u_xlat1.x = max(u_xlat1.x, 0.0);
					    u_xlat1.x = u_xlat1.x * unity_FogParams.z + unity_FogParams.w;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.yzw * u_xlat1.xxx;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendAdd" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0.wxyz * u_xlat1.wxyz;
					    u_xlat1.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat1.x = (-u_xlat1.x) + 1.0;
					    u_xlat1.x = u_xlat1.x * _ProjectionParams.z;
					    u_xlat1.x = max(u_xlat1.x, 0.0);
					    u_xlat1.x = u_xlat1.x * unity_FogParams.y;
					    u_xlat1.x = exp2((-u_xlat1.x));
					    u_xlat1.x = min(u_xlat1.x, 1.0);
					    SV_Target0.xyz = u_xlat0.yzw * u_xlat1.xxx;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0.wxyz * u_xlat1.wxyz;
					    u_xlat1.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat1.x = (-u_xlat1.x) + 1.0;
					    u_xlat1.x = u_xlat1.x * _ProjectionParams.z;
					    u_xlat1.x = max(u_xlat1.x, 0.0);
					    u_xlat1.x = u_xlat1.x * unity_FogParams.y;
					    u_xlat1.x = exp2((-u_xlat1.x));
					    u_xlat1.x = min(u_xlat1.x, 1.0);
					    SV_Target0.xyz = u_xlat0.yzw * u_xlat1.xxx;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendAdd" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0.wxyz * u_xlat1.wxyz;
					    u_xlat1.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat1.x = (-u_xlat1.x) + 1.0;
					    u_xlat1.x = u_xlat1.x * _ProjectionParams.z;
					    u_xlat1.x = max(u_xlat1.x, 0.0);
					    u_xlat1.x = u_xlat1.x * unity_FogParams.y;
					    u_xlat1.x = exp2((-u_xlat1.x));
					    u_xlat1.x = min(u_xlat1.x, 1.0);
					    SV_Target0.xyz = u_xlat0.yzw * u_xlat1.xxx;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0.wxyz * u_xlat1.wxyz;
					    u_xlat1.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat1.x = (-u_xlat1.x) + 1.0;
					    u_xlat1.x = u_xlat1.x * _ProjectionParams.z;
					    u_xlat1.x = max(u_xlat1.x, 0.0);
					    u_xlat1.x = u_xlat1.x * unity_FogParams.y;
					    u_xlat1.x = exp2((-u_xlat1.x));
					    u_xlat1.x = min(u_xlat1.x, 1.0);
					    SV_Target0.xyz = u_xlat0.yzw * u_xlat1.xxx;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendAdd" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0.wxyz * u_xlat1.wxyz;
					    u_xlat1.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat1.x = (-u_xlat1.x) + 1.0;
					    u_xlat1.x = u_xlat1.x * _ProjectionParams.z;
					    u_xlat1.x = max(u_xlat1.x, 0.0);
					    u_xlat1.x = u_xlat1.x * unity_FogParams.x;
					    u_xlat1.x = u_xlat1.x * (-u_xlat1.x);
					    u_xlat1.x = exp2(u_xlat1.x);
					    SV_Target0.xyz = u_xlat0.yzw * u_xlat1.xxx;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0.wxyz * u_xlat1.wxyz;
					    u_xlat1.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat1.x = (-u_xlat1.x) + 1.0;
					    u_xlat1.x = u_xlat1.x * _ProjectionParams.z;
					    u_xlat1.x = max(u_xlat1.x, 0.0);
					    u_xlat1.x = u_xlat1.x * unity_FogParams.x;
					    u_xlat1.x = u_xlat1.x * (-u_xlat1.x);
					    u_xlat1.x = exp2(u_xlat1.x);
					    SV_Target0.xyz = u_xlat0.yzw * u_xlat1.xxx;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendAdd" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0.wxyz * u_xlat1.wxyz;
					    u_xlat1.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat1.x = (-u_xlat1.x) + 1.0;
					    u_xlat1.x = u_xlat1.x * _ProjectionParams.z;
					    u_xlat1.x = max(u_xlat1.x, 0.0);
					    u_xlat1.x = u_xlat1.x * unity_FogParams.x;
					    u_xlat1.x = u_xlat1.x * (-u_xlat1.x);
					    u_xlat1.x = exp2(u_xlat1.x);
					    SV_Target0.xyz = u_xlat0.yzw * u_xlat1.xxx;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0.wxyz * u_xlat1.wxyz;
					    u_xlat1.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat1.x = (-u_xlat1.x) + 1.0;
					    u_xlat1.x = u_xlat1.x * _ProjectionParams.z;
					    u_xlat1.x = max(u_xlat1.x, 0.0);
					    u_xlat1.x = u_xlat1.x * unity_FogParams.x;
					    u_xlat1.x = u_xlat1.x * (-u_xlat1.x);
					    u_xlat1.x = exp2(u_xlat1.x);
					    SV_Target0.xyz = u_xlat0.yzw * u_xlat1.xxx;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendAdd" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					bool u_xlatb1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1.x = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat0.w = u_xlat0.w * u_xlat1.x;
					    u_xlat0 = u_xlat0 * vs_COLOR0;
					    SV_Target0.w = u_xlat0.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					bool u_xlatb1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1.x = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat0.w = u_xlat0.w * u_xlat1.x;
					    u_xlat0 = u_xlat0 * vs_COLOR0;
					    SV_Target0.w = u_xlat0.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendAdd" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[7];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					bool u_xlatb2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2.x = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2.x;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    SV_Target0.w = u_xlat0.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[6];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					bool u_xlatb2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2.x = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2.x;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    SV_Target0.w = u_xlat0.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendAdd" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					bool u_xlatb1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1.x = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat0.w = u_xlat0.w * u_xlat1.x;
					    u_xlat0 = u_xlat0 * vs_COLOR0;
					    u_xlat1.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat1.x = (-u_xlat1.x) + 1.0;
					    u_xlat1.x = u_xlat1.x * _ProjectionParams.z;
					    u_xlat1.x = max(u_xlat1.x, 0.0);
					    u_xlat1.x = u_xlat1.x * unity_FogParams.z + unity_FogParams.w;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.xyz * u_xlat1.xxx;
					    SV_Target0.w = u_xlat0.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					bool u_xlatb1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1.x = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat0.w = u_xlat0.w * u_xlat1.x;
					    u_xlat0 = u_xlat0 * vs_COLOR0;
					    u_xlat1.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat1.x = (-u_xlat1.x) + 1.0;
					    u_xlat1.x = u_xlat1.x * _ProjectionParams.z;
					    u_xlat1.x = max(u_xlat1.x, 0.0);
					    u_xlat1.x = u_xlat1.x * unity_FogParams.z + unity_FogParams.w;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.xyz * u_xlat1.xxx;
					    SV_Target0.w = u_xlat0.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendAdd" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					bool u_xlatb2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2.x = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2.x;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat1.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat1.x = (-u_xlat1.x) + 1.0;
					    u_xlat1.x = u_xlat1.x * _ProjectionParams.z;
					    u_xlat1.x = max(u_xlat1.x, 0.0);
					    u_xlat1.x = u_xlat1.x * unity_FogParams.z + unity_FogParams.w;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.xyz * u_xlat1.xxx;
					    SV_Target0.w = u_xlat0.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					bool u_xlatb2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2.x = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2.x;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat1.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat1.x = (-u_xlat1.x) + 1.0;
					    u_xlat1.x = u_xlat1.x * _ProjectionParams.z;
					    u_xlat1.x = max(u_xlat1.x, 0.0);
					    u_xlat1.x = u_xlat1.x * unity_FogParams.z + unity_FogParams.w;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.xyz * u_xlat1.xxx;
					    SV_Target0.w = u_xlat0.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendAdd" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					float u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3 = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat1.xyz;
					    SV_Target0.w = u_xlat1.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					float u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3 = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat1.xyz;
					    SV_Target0.w = u_xlat1.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendAdd" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					bool u_xlatb2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2.x = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2.x;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat1.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat1.x = (-u_xlat1.x) + 1.0;
					    u_xlat1.x = u_xlat1.x * _ProjectionParams.z;
					    u_xlat1.x = max(u_xlat1.x, 0.0);
					    u_xlat1.x = u_xlat1.x * unity_FogParams.y;
					    u_xlat1.x = exp2((-u_xlat1.x));
					    u_xlat1.x = min(u_xlat1.x, 1.0);
					    SV_Target0.xyz = u_xlat0.xyz * u_xlat1.xxx;
					    SV_Target0.w = u_xlat0.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					bool u_xlatb2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2.x = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2.x;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat1.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat1.x = (-u_xlat1.x) + 1.0;
					    u_xlat1.x = u_xlat1.x * _ProjectionParams.z;
					    u_xlat1.x = max(u_xlat1.x, 0.0);
					    u_xlat1.x = u_xlat1.x * unity_FogParams.y;
					    u_xlat1.x = exp2((-u_xlat1.x));
					    u_xlat1.x = min(u_xlat1.x, 1.0);
					    SV_Target0.xyz = u_xlat0.xyz * u_xlat1.xxx;
					    SV_Target0.w = u_xlat0.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendAdd" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					float u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3 = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat1.xyz;
					    SV_Target0.w = u_xlat1.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					float u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3 = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat1.xyz;
					    SV_Target0.w = u_xlat1.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendAdd" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					bool u_xlatb2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2.x = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2.x;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat1.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat1.x = (-u_xlat1.x) + 1.0;
					    u_xlat1.x = u_xlat1.x * _ProjectionParams.z;
					    u_xlat1.x = max(u_xlat1.x, 0.0);
					    u_xlat1.x = u_xlat1.x * unity_FogParams.x;
					    u_xlat1.x = u_xlat1.x * (-u_xlat1.x);
					    u_xlat1.x = exp2(u_xlat1.x);
					    SV_Target0.xyz = u_xlat0.xyz * u_xlat1.xxx;
					    SV_Target0.w = u_xlat0.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					bool u_xlatb2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2.x = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2.x;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat1.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat1.x = (-u_xlat1.x) + 1.0;
					    u_xlat1.x = u_xlat1.x * _ProjectionParams.z;
					    u_xlat1.x = max(u_xlat1.x, 0.0);
					    u_xlat1.x = u_xlat1.x * unity_FogParams.x;
					    u_xlat1.x = u_xlat1.x * (-u_xlat1.x);
					    u_xlat1.x = exp2(u_xlat1.x);
					    SV_Target0.xyz = u_xlat0.xyz * u_xlat1.xxx;
					    SV_Target0.w = u_xlat0.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendAdd" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[7];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					bool u_xlatb2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2.x = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2.x;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    SV_Target0.w = u_xlat0.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[6];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					bool u_xlatb2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2.x = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2.x;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    SV_Target0.w = u_xlat0.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendAdd" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[7];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					bool u_xlatb2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2.x = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2.x;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    SV_Target0.w = u_xlat0.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[6];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					bool u_xlatb2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2.x = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2.x;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    SV_Target0.w = u_xlat0.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendAdd" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					bool u_xlatb2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2.x = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2.x;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat1.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat1.x = (-u_xlat1.x) + 1.0;
					    u_xlat1.x = u_xlat1.x * _ProjectionParams.z;
					    u_xlat1.x = max(u_xlat1.x, 0.0);
					    u_xlat1.x = u_xlat1.x * unity_FogParams.z + unity_FogParams.w;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.xyz * u_xlat1.xxx;
					    SV_Target0.w = u_xlat0.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					bool u_xlatb2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2.x = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2.x;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat1.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat1.x = (-u_xlat1.x) + 1.0;
					    u_xlat1.x = u_xlat1.x * _ProjectionParams.z;
					    u_xlat1.x = max(u_xlat1.x, 0.0);
					    u_xlat1.x = u_xlat1.x * unity_FogParams.z + unity_FogParams.w;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.xyz * u_xlat1.xxx;
					    SV_Target0.w = u_xlat0.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendAdd" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					bool u_xlatb2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2.x = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2.x;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat1.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat1.x = (-u_xlat1.x) + 1.0;
					    u_xlat1.x = u_xlat1.x * _ProjectionParams.z;
					    u_xlat1.x = max(u_xlat1.x, 0.0);
					    u_xlat1.x = u_xlat1.x * unity_FogParams.z + unity_FogParams.w;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.xyz * u_xlat1.xxx;
					    SV_Target0.w = u_xlat0.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					bool u_xlatb2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2.x = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2.x;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat1.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat1.x = (-u_xlat1.x) + 1.0;
					    u_xlat1.x = u_xlat1.x * _ProjectionParams.z;
					    u_xlat1.x = max(u_xlat1.x, 0.0);
					    u_xlat1.x = u_xlat1.x * unity_FogParams.z + unity_FogParams.w;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.xyz * u_xlat1.xxx;
					    SV_Target0.w = u_xlat0.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendAdd" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					bool u_xlatb2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2.x = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2.x;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat1.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat1.x = (-u_xlat1.x) + 1.0;
					    u_xlat1.x = u_xlat1.x * _ProjectionParams.z;
					    u_xlat1.x = max(u_xlat1.x, 0.0);
					    u_xlat1.x = u_xlat1.x * unity_FogParams.y;
					    u_xlat1.x = exp2((-u_xlat1.x));
					    u_xlat1.x = min(u_xlat1.x, 1.0);
					    SV_Target0.xyz = u_xlat0.xyz * u_xlat1.xxx;
					    SV_Target0.w = u_xlat0.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					bool u_xlatb2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2.x = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2.x;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat1.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat1.x = (-u_xlat1.x) + 1.0;
					    u_xlat1.x = u_xlat1.x * _ProjectionParams.z;
					    u_xlat1.x = max(u_xlat1.x, 0.0);
					    u_xlat1.x = u_xlat1.x * unity_FogParams.y;
					    u_xlat1.x = exp2((-u_xlat1.x));
					    u_xlat1.x = min(u_xlat1.x, 1.0);
					    SV_Target0.xyz = u_xlat0.xyz * u_xlat1.xxx;
					    SV_Target0.w = u_xlat0.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendAdd" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					bool u_xlatb2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2.x = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2.x;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat1.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat1.x = (-u_xlat1.x) + 1.0;
					    u_xlat1.x = u_xlat1.x * _ProjectionParams.z;
					    u_xlat1.x = max(u_xlat1.x, 0.0);
					    u_xlat1.x = u_xlat1.x * unity_FogParams.y;
					    u_xlat1.x = exp2((-u_xlat1.x));
					    u_xlat1.x = min(u_xlat1.x, 1.0);
					    SV_Target0.xyz = u_xlat0.xyz * u_xlat1.xxx;
					    SV_Target0.w = u_xlat0.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					bool u_xlatb2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2.x = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2.x;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat1.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat1.x = (-u_xlat1.x) + 1.0;
					    u_xlat1.x = u_xlat1.x * _ProjectionParams.z;
					    u_xlat1.x = max(u_xlat1.x, 0.0);
					    u_xlat1.x = u_xlat1.x * unity_FogParams.y;
					    u_xlat1.x = exp2((-u_xlat1.x));
					    u_xlat1.x = min(u_xlat1.x, 1.0);
					    SV_Target0.xyz = u_xlat0.xyz * u_xlat1.xxx;
					    SV_Target0.w = u_xlat0.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendAdd" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					bool u_xlatb2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2.x = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2.x;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat1.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat1.x = (-u_xlat1.x) + 1.0;
					    u_xlat1.x = u_xlat1.x * _ProjectionParams.z;
					    u_xlat1.x = max(u_xlat1.x, 0.0);
					    u_xlat1.x = u_xlat1.x * unity_FogParams.x;
					    u_xlat1.x = u_xlat1.x * (-u_xlat1.x);
					    u_xlat1.x = exp2(u_xlat1.x);
					    SV_Target0.xyz = u_xlat0.xyz * u_xlat1.xxx;
					    SV_Target0.w = u_xlat0.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					bool u_xlatb2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2.x = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2.x;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat1.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat1.x = (-u_xlat1.x) + 1.0;
					    u_xlat1.x = u_xlat1.x * _ProjectionParams.z;
					    u_xlat1.x = max(u_xlat1.x, 0.0);
					    u_xlat1.x = u_xlat1.x * unity_FogParams.x;
					    u_xlat1.x = u_xlat1.x * (-u_xlat1.x);
					    u_xlat1.x = exp2(u_xlat1.x);
					    SV_Target0.xyz = u_xlat0.xyz * u_xlat1.xxx;
					    SV_Target0.w = u_xlat0.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendAdd" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					bool u_xlatb2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2.x = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2.x;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat1.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat1.x = (-u_xlat1.x) + 1.0;
					    u_xlat1.x = u_xlat1.x * _ProjectionParams.z;
					    u_xlat1.x = max(u_xlat1.x, 0.0);
					    u_xlat1.x = u_xlat1.x * unity_FogParams.x;
					    u_xlat1.x = u_xlat1.x * (-u_xlat1.x);
					    u_xlat1.x = exp2(u_xlat1.x);
					    SV_Target0.xyz = u_xlat0.xyz * u_xlat1.xxx;
					    SV_Target0.w = u_xlat0.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					bool u_xlatb2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2.x = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2.x;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat1.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat1.x = (-u_xlat1.x) + 1.0;
					    u_xlat1.x = u_xlat1.x * _ProjectionParams.z;
					    u_xlat1.x = max(u_xlat1.x, 0.0);
					    u_xlat1.x = u_xlat1.x * unity_FogParams.x;
					    u_xlat1.x = u_xlat1.x * (-u_xlat1.x);
					    u_xlat1.x = exp2(u_xlat1.x);
					    SV_Target0.xyz = u_xlat0.xyz * u_xlat1.xxx;
					    SV_Target0.w = u_xlat0.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendAdd" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					bool u_xlatb1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1.x = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat0.w = u_xlat0.w * u_xlat1.x;
					    u_xlat0 = u_xlat0.wxyz * vs_COLOR0.wxyz;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.yzw;
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					bool u_xlatb1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1.x = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat0.w = u_xlat0.w * u_xlat1.x;
					    u_xlat0 = u_xlat0.wxyz * vs_COLOR0.wxyz;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.yzw;
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendAdd" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[7];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					bool u_xlatb2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2.x = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2.x;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0.wxyz * u_xlat1.wxyz;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.yzw;
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[6];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					bool u_xlatb2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2.x = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2.x;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0.wxyz * u_xlat1.wxyz;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.yzw;
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendAdd" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					bool u_xlatb1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1.x = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat0.w = u_xlat0.w * u_xlat1.x;
					    u_xlat0 = u_xlat0.wxyz * vs_COLOR0.wxyz;
					    u_xlat1.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat1.x = (-u_xlat1.x) + 1.0;
					    u_xlat1.x = u_xlat1.x * _ProjectionParams.z;
					    u_xlat1.x = max(u_xlat1.x, 0.0);
					    u_xlat1.x = u_xlat1.x * unity_FogParams.z + unity_FogParams.w;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.yzw * u_xlat1.xxx;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					bool u_xlatb1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1.x = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat0.w = u_xlat0.w * u_xlat1.x;
					    u_xlat0 = u_xlat0.wxyz * vs_COLOR0.wxyz;
					    u_xlat1.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat1.x = (-u_xlat1.x) + 1.0;
					    u_xlat1.x = u_xlat1.x * _ProjectionParams.z;
					    u_xlat1.x = max(u_xlat1.x, 0.0);
					    u_xlat1.x = u_xlat1.x * unity_FogParams.z + unity_FogParams.w;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.yzw * u_xlat1.xxx;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendAdd" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					bool u_xlatb2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2.x = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2.x;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0.wxyz * u_xlat1.wxyz;
					    u_xlat1.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat1.x = (-u_xlat1.x) + 1.0;
					    u_xlat1.x = u_xlat1.x * _ProjectionParams.z;
					    u_xlat1.x = max(u_xlat1.x, 0.0);
					    u_xlat1.x = u_xlat1.x * unity_FogParams.z + unity_FogParams.w;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.yzw * u_xlat1.xxx;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					bool u_xlatb2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2.x = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2.x;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0.wxyz * u_xlat1.wxyz;
					    u_xlat1.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat1.x = (-u_xlat1.x) + 1.0;
					    u_xlat1.x = u_xlat1.x * _ProjectionParams.z;
					    u_xlat1.x = max(u_xlat1.x, 0.0);
					    u_xlat1.x = u_xlat1.x * unity_FogParams.z + unity_FogParams.w;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.yzw * u_xlat1.xxx;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendAdd" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					float u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3 = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3;
					    u_xlat1 = u_xlat1.wxyz * vs_COLOR0.wxyz;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat1.yzw;
					    u_xlat1.x = u_xlat1.x;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat1.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					float u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3 = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3;
					    u_xlat1 = u_xlat1.wxyz * vs_COLOR0.wxyz;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat1.yzw;
					    u_xlat1.x = u_xlat1.x;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat1.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendAdd" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					bool u_xlatb2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2.x = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2.x;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0.wxyz * u_xlat1.wxyz;
					    u_xlat1.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat1.x = (-u_xlat1.x) + 1.0;
					    u_xlat1.x = u_xlat1.x * _ProjectionParams.z;
					    u_xlat1.x = max(u_xlat1.x, 0.0);
					    u_xlat1.x = u_xlat1.x * unity_FogParams.y;
					    u_xlat1.x = exp2((-u_xlat1.x));
					    u_xlat1.x = min(u_xlat1.x, 1.0);
					    SV_Target0.xyz = u_xlat0.yzw * u_xlat1.xxx;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					bool u_xlatb2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2.x = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2.x;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0.wxyz * u_xlat1.wxyz;
					    u_xlat1.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat1.x = (-u_xlat1.x) + 1.0;
					    u_xlat1.x = u_xlat1.x * _ProjectionParams.z;
					    u_xlat1.x = max(u_xlat1.x, 0.0);
					    u_xlat1.x = u_xlat1.x * unity_FogParams.y;
					    u_xlat1.x = exp2((-u_xlat1.x));
					    u_xlat1.x = min(u_xlat1.x, 1.0);
					    SV_Target0.xyz = u_xlat0.yzw * u_xlat1.xxx;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendAdd" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					float u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3 = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3;
					    u_xlat1 = u_xlat1.wxyz * vs_COLOR0.wxyz;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat1.yzw;
					    u_xlat1.x = u_xlat1.x;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat1.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					float u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3 = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3;
					    u_xlat1 = u_xlat1.wxyz * vs_COLOR0.wxyz;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat1.yzw;
					    u_xlat1.x = u_xlat1.x;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat1.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendAdd" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					bool u_xlatb2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2.x = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2.x;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0.wxyz * u_xlat1.wxyz;
					    u_xlat1.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat1.x = (-u_xlat1.x) + 1.0;
					    u_xlat1.x = u_xlat1.x * _ProjectionParams.z;
					    u_xlat1.x = max(u_xlat1.x, 0.0);
					    u_xlat1.x = u_xlat1.x * unity_FogParams.x;
					    u_xlat1.x = u_xlat1.x * (-u_xlat1.x);
					    u_xlat1.x = exp2(u_xlat1.x);
					    SV_Target0.xyz = u_xlat0.yzw * u_xlat1.xxx;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					bool u_xlatb2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2.x = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2.x;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0.wxyz * u_xlat1.wxyz;
					    u_xlat1.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat1.x = (-u_xlat1.x) + 1.0;
					    u_xlat1.x = u_xlat1.x * _ProjectionParams.z;
					    u_xlat1.x = max(u_xlat1.x, 0.0);
					    u_xlat1.x = u_xlat1.x * unity_FogParams.x;
					    u_xlat1.x = u_xlat1.x * (-u_xlat1.x);
					    u_xlat1.x = exp2(u_xlat1.x);
					    SV_Target0.xyz = u_xlat0.yzw * u_xlat1.xxx;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendAdd" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[7];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					bool u_xlatb2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2.x = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2.x;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0.wxyz * u_xlat1.wxyz;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.yzw;
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[6];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					bool u_xlatb2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2.x = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2.x;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0.wxyz * u_xlat1.wxyz;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.yzw;
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendAdd" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[7];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					bool u_xlatb2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2.x = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2.x;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0.wxyz * u_xlat1.wxyz;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.yzw;
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[6];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					bool u_xlatb2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2.x = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2.x;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0.wxyz * u_xlat1.wxyz;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.yzw;
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendAdd" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					bool u_xlatb2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2.x = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2.x;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0.wxyz * u_xlat1.wxyz;
					    u_xlat1.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat1.x = (-u_xlat1.x) + 1.0;
					    u_xlat1.x = u_xlat1.x * _ProjectionParams.z;
					    u_xlat1.x = max(u_xlat1.x, 0.0);
					    u_xlat1.x = u_xlat1.x * unity_FogParams.z + unity_FogParams.w;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.yzw * u_xlat1.xxx;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					bool u_xlatb2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2.x = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2.x;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0.wxyz * u_xlat1.wxyz;
					    u_xlat1.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat1.x = (-u_xlat1.x) + 1.0;
					    u_xlat1.x = u_xlat1.x * _ProjectionParams.z;
					    u_xlat1.x = max(u_xlat1.x, 0.0);
					    u_xlat1.x = u_xlat1.x * unity_FogParams.z + unity_FogParams.w;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.yzw * u_xlat1.xxx;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendAdd" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					bool u_xlatb2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2.x = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2.x;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0.wxyz * u_xlat1.wxyz;
					    u_xlat1.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat1.x = (-u_xlat1.x) + 1.0;
					    u_xlat1.x = u_xlat1.x * _ProjectionParams.z;
					    u_xlat1.x = max(u_xlat1.x, 0.0);
					    u_xlat1.x = u_xlat1.x * unity_FogParams.z + unity_FogParams.w;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.yzw * u_xlat1.xxx;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					bool u_xlatb2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2.x = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2.x;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0.wxyz * u_xlat1.wxyz;
					    u_xlat1.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat1.x = (-u_xlat1.x) + 1.0;
					    u_xlat1.x = u_xlat1.x * _ProjectionParams.z;
					    u_xlat1.x = max(u_xlat1.x, 0.0);
					    u_xlat1.x = u_xlat1.x * unity_FogParams.z + unity_FogParams.w;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.yzw * u_xlat1.xxx;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendAdd" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					bool u_xlatb2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2.x = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2.x;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0.wxyz * u_xlat1.wxyz;
					    u_xlat1.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat1.x = (-u_xlat1.x) + 1.0;
					    u_xlat1.x = u_xlat1.x * _ProjectionParams.z;
					    u_xlat1.x = max(u_xlat1.x, 0.0);
					    u_xlat1.x = u_xlat1.x * unity_FogParams.y;
					    u_xlat1.x = exp2((-u_xlat1.x));
					    u_xlat1.x = min(u_xlat1.x, 1.0);
					    SV_Target0.xyz = u_xlat0.yzw * u_xlat1.xxx;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					bool u_xlatb2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2.x = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2.x;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0.wxyz * u_xlat1.wxyz;
					    u_xlat1.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat1.x = (-u_xlat1.x) + 1.0;
					    u_xlat1.x = u_xlat1.x * _ProjectionParams.z;
					    u_xlat1.x = max(u_xlat1.x, 0.0);
					    u_xlat1.x = u_xlat1.x * unity_FogParams.y;
					    u_xlat1.x = exp2((-u_xlat1.x));
					    u_xlat1.x = min(u_xlat1.x, 1.0);
					    SV_Target0.xyz = u_xlat0.yzw * u_xlat1.xxx;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendAdd" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					bool u_xlatb2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2.x = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2.x;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0.wxyz * u_xlat1.wxyz;
					    u_xlat1.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat1.x = (-u_xlat1.x) + 1.0;
					    u_xlat1.x = u_xlat1.x * _ProjectionParams.z;
					    u_xlat1.x = max(u_xlat1.x, 0.0);
					    u_xlat1.x = u_xlat1.x * unity_FogParams.y;
					    u_xlat1.x = exp2((-u_xlat1.x));
					    u_xlat1.x = min(u_xlat1.x, 1.0);
					    SV_Target0.xyz = u_xlat0.yzw * u_xlat1.xxx;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					bool u_xlatb2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2.x = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2.x;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0.wxyz * u_xlat1.wxyz;
					    u_xlat1.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat1.x = (-u_xlat1.x) + 1.0;
					    u_xlat1.x = u_xlat1.x * _ProjectionParams.z;
					    u_xlat1.x = max(u_xlat1.x, 0.0);
					    u_xlat1.x = u_xlat1.x * unity_FogParams.y;
					    u_xlat1.x = exp2((-u_xlat1.x));
					    u_xlat1.x = min(u_xlat1.x, 1.0);
					    SV_Target0.xyz = u_xlat0.yzw * u_xlat1.xxx;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendAdd" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					bool u_xlatb2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2.x = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2.x;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0.wxyz * u_xlat1.wxyz;
					    u_xlat1.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat1.x = (-u_xlat1.x) + 1.0;
					    u_xlat1.x = u_xlat1.x * _ProjectionParams.z;
					    u_xlat1.x = max(u_xlat1.x, 0.0);
					    u_xlat1.x = u_xlat1.x * unity_FogParams.x;
					    u_xlat1.x = u_xlat1.x * (-u_xlat1.x);
					    u_xlat1.x = exp2(u_xlat1.x);
					    SV_Target0.xyz = u_xlat0.yzw * u_xlat1.xxx;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					bool u_xlatb2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2.x = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2.x;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0.wxyz * u_xlat1.wxyz;
					    u_xlat1.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat1.x = (-u_xlat1.x) + 1.0;
					    u_xlat1.x = u_xlat1.x * _ProjectionParams.z;
					    u_xlat1.x = max(u_xlat1.x, 0.0);
					    u_xlat1.x = u_xlat1.x * unity_FogParams.x;
					    u_xlat1.x = u_xlat1.x * (-u_xlat1.x);
					    u_xlat1.x = exp2(u_xlat1.x);
					    SV_Target0.xyz = u_xlat0.yzw * u_xlat1.xxx;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendAdd" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					bool u_xlatb2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2.x = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2.x;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0.wxyz * u_xlat1.wxyz;
					    u_xlat1.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat1.x = (-u_xlat1.x) + 1.0;
					    u_xlat1.x = u_xlat1.x * _ProjectionParams.z;
					    u_xlat1.x = max(u_xlat1.x, 0.0);
					    u_xlat1.x = u_xlat1.x * unity_FogParams.x;
					    u_xlat1.x = u_xlat1.x * (-u_xlat1.x);
					    u_xlat1.x = exp2(u_xlat1.x);
					    SV_Target0.xyz = u_xlat0.yzw * u_xlat1.xxx;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					bool u_xlatb2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2.x = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2.x;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0.wxyz * u_xlat1.wxyz;
					    u_xlat1.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat1.x = (-u_xlat1.x) + 1.0;
					    u_xlat1.x = u_xlat1.x * _ProjectionParams.z;
					    u_xlat1.x = max(u_xlat1.x, 0.0);
					    u_xlat1.x = u_xlat1.x * unity_FogParams.x;
					    u_xlat1.x = u_xlat1.x * (-u_xlat1.x);
					    u_xlat1.x = exp2(u_xlat1.x);
					    SV_Target0.xyz = u_xlat0.yzw * u_xlat1.xxx;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendAdd" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    SV_Target0.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    SV_Target0.w = u_xlatb0 ? 1.0 : float(0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    SV_Target0.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    SV_Target0.w = u_xlatb0 ? 1.0 : float(0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendAdd" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[7];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb0 = u_xlat1.w>=u_xlat0.x;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    SV_Target0.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    SV_Target0.w = u_xlatb0 ? 1.0 : float(0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[6];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb0 = u_xlat1.w>=u_xlat0.x;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    SV_Target0.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    SV_Target0.w = u_xlatb0 ? 1.0 : float(0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendAdd" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    SV_Target0.xyz = u_xlat3.xyz * vec3(u_xlat0);
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    SV_Target0.w = u_xlatb0 ? 1.0 : float(0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    SV_Target0.xyz = u_xlat3.xyz * vec3(u_xlat0);
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    SV_Target0.w = u_xlatb0 ? 1.0 : float(0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendAdd" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb0 = u_xlat1.w>=u_xlat0.x;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    SV_Target0.w = u_xlatb0 ? 1.0 : float(0.0);
					    u_xlat0.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0.x = (-u_xlat0.x) + 1.0;
					    u_xlat0.x = u_xlat0.x * _ProjectionParams.z;
					    u_xlat0.x = max(u_xlat0.x, 0.0);
					    u_xlat0.x = u_xlat0.x * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat3.xyz * u_xlat0.xxx;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb0 = u_xlat1.w>=u_xlat0.x;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    SV_Target0.w = u_xlatb0 ? 1.0 : float(0.0);
					    u_xlat0.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0.x = (-u_xlat0.x) + 1.0;
					    u_xlat0.x = u_xlat0.x * _ProjectionParams.z;
					    u_xlat0.x = max(u_xlat0.x, 0.0);
					    u_xlat0.x = u_xlat0.x * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat3.xyz * u_xlat0.xxx;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendAdd" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    SV_Target0.xyz = u_xlat3.xyz * vec3(u_xlat0);
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    SV_Target0.w = u_xlatb0 ? 1.0 : float(0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    SV_Target0.xyz = u_xlat3.xyz * vec3(u_xlat0);
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    SV_Target0.w = u_xlatb0 ? 1.0 : float(0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendAdd" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0.x = (-u_xlat0.x) + 1.0;
					    u_xlat0.x = u_xlat0.x * _ProjectionParams.z;
					    u_xlat0.x = max(u_xlat0.x, 0.0);
					    u_xlat0.x = u_xlat0.x * unity_FogParams.y;
					    u_xlat0.x = exp2((-u_xlat0.x));
					    u_xlat0.x = min(u_xlat0.x, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    SV_Target0.xyz = u_xlat3.xyz * u_xlat0.xxx;
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0.x;
					    SV_Target0.w = u_xlatb0 ? 1.0 : float(0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0.x = (-u_xlat0.x) + 1.0;
					    u_xlat0.x = u_xlat0.x * _ProjectionParams.z;
					    u_xlat0.x = max(u_xlat0.x, 0.0);
					    u_xlat0.x = u_xlat0.x * unity_FogParams.y;
					    u_xlat0.x = exp2((-u_xlat0.x));
					    u_xlat0.x = min(u_xlat0.x, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    SV_Target0.xyz = u_xlat3.xyz * u_xlat0.xxx;
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0.x;
					    SV_Target0.w = u_xlatb0 ? 1.0 : float(0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendAdd" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    SV_Target0.xyz = u_xlat3.xyz * vec3(u_xlat0);
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    SV_Target0.w = u_xlatb0 ? 1.0 : float(0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    SV_Target0.xyz = u_xlat3.xyz * vec3(u_xlat0);
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    SV_Target0.w = u_xlatb0 ? 1.0 : float(0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendAdd" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0.x = (-u_xlat0.x) + 1.0;
					    u_xlat0.x = u_xlat0.x * _ProjectionParams.z;
					    u_xlat0.x = max(u_xlat0.x, 0.0);
					    u_xlat0.x = u_xlat0.x * unity_FogParams.x;
					    u_xlat0.x = u_xlat0.x * (-u_xlat0.x);
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    SV_Target0.xyz = u_xlat3.xyz * u_xlat0.xxx;
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0.x;
					    SV_Target0.w = u_xlatb0 ? 1.0 : float(0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0.x = (-u_xlat0.x) + 1.0;
					    u_xlat0.x = u_xlat0.x * _ProjectionParams.z;
					    u_xlat0.x = max(u_xlat0.x, 0.0);
					    u_xlat0.x = u_xlat0.x * unity_FogParams.x;
					    u_xlat0.x = u_xlat0.x * (-u_xlat0.x);
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    SV_Target0.xyz = u_xlat3.xyz * u_xlat0.xxx;
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0.x;
					    SV_Target0.w = u_xlatb0 ? 1.0 : float(0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendAdd" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[7];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb0 = u_xlat1.w>=u_xlat0.x;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    SV_Target0.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    SV_Target0.w = u_xlatb0 ? 1.0 : float(0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[6];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb0 = u_xlat1.w>=u_xlat0.x;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    SV_Target0.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    SV_Target0.w = u_xlatb0 ? 1.0 : float(0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendAdd" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[7];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb0 = u_xlat1.w>=u_xlat0.x;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    SV_Target0.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    SV_Target0.w = u_xlatb0 ? 1.0 : float(0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[6];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb0 = u_xlat1.w>=u_xlat0.x;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    SV_Target0.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    SV_Target0.w = u_xlatb0 ? 1.0 : float(0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendAdd" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb0 = u_xlat1.w>=u_xlat0.x;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    SV_Target0.w = u_xlatb0 ? 1.0 : float(0.0);
					    u_xlat0.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0.x = (-u_xlat0.x) + 1.0;
					    u_xlat0.x = u_xlat0.x * _ProjectionParams.z;
					    u_xlat0.x = max(u_xlat0.x, 0.0);
					    u_xlat0.x = u_xlat0.x * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat3.xyz * u_xlat0.xxx;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb0 = u_xlat1.w>=u_xlat0.x;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    SV_Target0.w = u_xlatb0 ? 1.0 : float(0.0);
					    u_xlat0.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0.x = (-u_xlat0.x) + 1.0;
					    u_xlat0.x = u_xlat0.x * _ProjectionParams.z;
					    u_xlat0.x = max(u_xlat0.x, 0.0);
					    u_xlat0.x = u_xlat0.x * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat3.xyz * u_xlat0.xxx;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendAdd" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb0 = u_xlat1.w>=u_xlat0.x;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    SV_Target0.w = u_xlatb0 ? 1.0 : float(0.0);
					    u_xlat0.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0.x = (-u_xlat0.x) + 1.0;
					    u_xlat0.x = u_xlat0.x * _ProjectionParams.z;
					    u_xlat0.x = max(u_xlat0.x, 0.0);
					    u_xlat0.x = u_xlat0.x * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat3.xyz * u_xlat0.xxx;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb0 = u_xlat1.w>=u_xlat0.x;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    SV_Target0.w = u_xlatb0 ? 1.0 : float(0.0);
					    u_xlat0.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0.x = (-u_xlat0.x) + 1.0;
					    u_xlat0.x = u_xlat0.x * _ProjectionParams.z;
					    u_xlat0.x = max(u_xlat0.x, 0.0);
					    u_xlat0.x = u_xlat0.x * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat3.xyz * u_xlat0.xxx;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendAdd" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0.x = (-u_xlat0.x) + 1.0;
					    u_xlat0.x = u_xlat0.x * _ProjectionParams.z;
					    u_xlat0.x = max(u_xlat0.x, 0.0);
					    u_xlat0.x = u_xlat0.x * unity_FogParams.y;
					    u_xlat0.x = exp2((-u_xlat0.x));
					    u_xlat0.x = min(u_xlat0.x, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    SV_Target0.xyz = u_xlat3.xyz * u_xlat0.xxx;
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0.x;
					    SV_Target0.w = u_xlatb0 ? 1.0 : float(0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0.x = (-u_xlat0.x) + 1.0;
					    u_xlat0.x = u_xlat0.x * _ProjectionParams.z;
					    u_xlat0.x = max(u_xlat0.x, 0.0);
					    u_xlat0.x = u_xlat0.x * unity_FogParams.y;
					    u_xlat0.x = exp2((-u_xlat0.x));
					    u_xlat0.x = min(u_xlat0.x, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    SV_Target0.xyz = u_xlat3.xyz * u_xlat0.xxx;
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0.x;
					    SV_Target0.w = u_xlatb0 ? 1.0 : float(0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendAdd" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0.x = (-u_xlat0.x) + 1.0;
					    u_xlat0.x = u_xlat0.x * _ProjectionParams.z;
					    u_xlat0.x = max(u_xlat0.x, 0.0);
					    u_xlat0.x = u_xlat0.x * unity_FogParams.y;
					    u_xlat0.x = exp2((-u_xlat0.x));
					    u_xlat0.x = min(u_xlat0.x, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    SV_Target0.xyz = u_xlat3.xyz * u_xlat0.xxx;
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0.x;
					    SV_Target0.w = u_xlatb0 ? 1.0 : float(0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0.x = (-u_xlat0.x) + 1.0;
					    u_xlat0.x = u_xlat0.x * _ProjectionParams.z;
					    u_xlat0.x = max(u_xlat0.x, 0.0);
					    u_xlat0.x = u_xlat0.x * unity_FogParams.y;
					    u_xlat0.x = exp2((-u_xlat0.x));
					    u_xlat0.x = min(u_xlat0.x, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    SV_Target0.xyz = u_xlat3.xyz * u_xlat0.xxx;
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0.x;
					    SV_Target0.w = u_xlatb0 ? 1.0 : float(0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendAdd" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0.x = (-u_xlat0.x) + 1.0;
					    u_xlat0.x = u_xlat0.x * _ProjectionParams.z;
					    u_xlat0.x = max(u_xlat0.x, 0.0);
					    u_xlat0.x = u_xlat0.x * unity_FogParams.x;
					    u_xlat0.x = u_xlat0.x * (-u_xlat0.x);
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    SV_Target0.xyz = u_xlat3.xyz * u_xlat0.xxx;
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0.x;
					    SV_Target0.w = u_xlatb0 ? 1.0 : float(0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0.x = (-u_xlat0.x) + 1.0;
					    u_xlat0.x = u_xlat0.x * _ProjectionParams.z;
					    u_xlat0.x = max(u_xlat0.x, 0.0);
					    u_xlat0.x = u_xlat0.x * unity_FogParams.x;
					    u_xlat0.x = u_xlat0.x * (-u_xlat0.x);
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    SV_Target0.xyz = u_xlat3.xyz * u_xlat0.xxx;
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0.x;
					    SV_Target0.w = u_xlatb0 ? 1.0 : float(0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendAdd" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0.x = (-u_xlat0.x) + 1.0;
					    u_xlat0.x = u_xlat0.x * _ProjectionParams.z;
					    u_xlat0.x = max(u_xlat0.x, 0.0);
					    u_xlat0.x = u_xlat0.x * unity_FogParams.x;
					    u_xlat0.x = u_xlat0.x * (-u_xlat0.x);
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    SV_Target0.xyz = u_xlat3.xyz * u_xlat0.xxx;
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0.x;
					    SV_Target0.w = u_xlatb0 ? 1.0 : float(0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0.x = (-u_xlat0.x) + 1.0;
					    u_xlat0.x = u_xlat0.x * _ProjectionParams.z;
					    u_xlat0.x = max(u_xlat0.x, 0.0);
					    u_xlat0.x = u_xlat0.x * unity_FogParams.x;
					    u_xlat0.x = u_xlat0.x * (-u_xlat0.x);
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    SV_Target0.xyz = u_xlat3.xyz * u_xlat0.xxx;
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0.x;
					    SV_Target0.w = u_xlatb0 ? 1.0 : float(0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendAdd" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    SV_Target0.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat0 = u_xlatb0 ? 1.0 : float(0.0);
					    SV_Target0.w = u_xlat0 * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    SV_Target0.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat0 = u_xlatb0 ? 1.0 : float(0.0);
					    SV_Target0.w = u_xlat0 * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendAdd" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[7];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb0 = u_xlat1.w>=u_xlat0.x;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    SV_Target0.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat0.x = u_xlatb0 ? 1.0 : float(0.0);
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[6];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb0 = u_xlat1.w>=u_xlat0.x;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    SV_Target0.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat0.x = u_xlatb0 ? 1.0 : float(0.0);
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendAdd" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    SV_Target0.xyz = u_xlat3.xyz * vec3(u_xlat0);
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    u_xlat0 = u_xlatb0 ? 1.0 : float(0.0);
					    SV_Target0.w = u_xlat0 * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    SV_Target0.xyz = u_xlat3.xyz * vec3(u_xlat0);
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    u_xlat0 = u_xlatb0 ? 1.0 : float(0.0);
					    SV_Target0.w = u_xlat0 * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendAdd" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb0 = u_xlat1.w>=u_xlat0.x;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat0.x = u_xlatb0 ? 1.0 : float(0.0);
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    u_xlat0.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0.x = (-u_xlat0.x) + 1.0;
					    u_xlat0.x = u_xlat0.x * _ProjectionParams.z;
					    u_xlat0.x = max(u_xlat0.x, 0.0);
					    u_xlat0.x = u_xlat0.x * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat3.xyz * u_xlat0.xxx;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb0 = u_xlat1.w>=u_xlat0.x;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat0.x = u_xlatb0 ? 1.0 : float(0.0);
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    u_xlat0.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0.x = (-u_xlat0.x) + 1.0;
					    u_xlat0.x = u_xlat0.x * _ProjectionParams.z;
					    u_xlat0.x = max(u_xlat0.x, 0.0);
					    u_xlat0.x = u_xlat0.x * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat3.xyz * u_xlat0.xxx;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendAdd" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    SV_Target0.xyz = u_xlat3.xyz * vec3(u_xlat0);
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    u_xlat0 = u_xlatb0 ? 1.0 : float(0.0);
					    SV_Target0.w = u_xlat0 * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    SV_Target0.xyz = u_xlat3.xyz * vec3(u_xlat0);
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    u_xlat0 = u_xlatb0 ? 1.0 : float(0.0);
					    SV_Target0.w = u_xlat0 * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendAdd" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb0 = u_xlat1.w>=u_xlat0.x;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat0.x = u_xlatb0 ? 1.0 : float(0.0);
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    u_xlat0.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0.x = (-u_xlat0.x) + 1.0;
					    u_xlat0.x = u_xlat0.x * _ProjectionParams.z;
					    u_xlat0.x = max(u_xlat0.x, 0.0);
					    u_xlat0.x = u_xlat0.x * unity_FogParams.y;
					    u_xlat0.x = exp2((-u_xlat0.x));
					    u_xlat0.x = min(u_xlat0.x, 1.0);
					    SV_Target0.xyz = u_xlat3.xyz * u_xlat0.xxx;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb0 = u_xlat1.w>=u_xlat0.x;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat0.x = u_xlatb0 ? 1.0 : float(0.0);
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    u_xlat0.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0.x = (-u_xlat0.x) + 1.0;
					    u_xlat0.x = u_xlat0.x * _ProjectionParams.z;
					    u_xlat0.x = max(u_xlat0.x, 0.0);
					    u_xlat0.x = u_xlat0.x * unity_FogParams.y;
					    u_xlat0.x = exp2((-u_xlat0.x));
					    u_xlat0.x = min(u_xlat0.x, 1.0);
					    SV_Target0.xyz = u_xlat3.xyz * u_xlat0.xxx;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendAdd" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    SV_Target0.xyz = u_xlat3.xyz * vec3(u_xlat0);
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    u_xlat0 = u_xlatb0 ? 1.0 : float(0.0);
					    SV_Target0.w = u_xlat0 * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    SV_Target0.xyz = u_xlat3.xyz * vec3(u_xlat0);
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    u_xlat0 = u_xlatb0 ? 1.0 : float(0.0);
					    SV_Target0.w = u_xlat0 * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendAdd" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb0 = u_xlat1.w>=u_xlat0.x;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat0.x = u_xlatb0 ? 1.0 : float(0.0);
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    u_xlat0.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0.x = (-u_xlat0.x) + 1.0;
					    u_xlat0.x = u_xlat0.x * _ProjectionParams.z;
					    u_xlat0.x = max(u_xlat0.x, 0.0);
					    u_xlat0.x = u_xlat0.x * unity_FogParams.x;
					    u_xlat0.x = u_xlat0.x * (-u_xlat0.x);
					    u_xlat0.x = exp2(u_xlat0.x);
					    SV_Target0.xyz = u_xlat3.xyz * u_xlat0.xxx;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb0 = u_xlat1.w>=u_xlat0.x;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat0.x = u_xlatb0 ? 1.0 : float(0.0);
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    u_xlat0.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0.x = (-u_xlat0.x) + 1.0;
					    u_xlat0.x = u_xlat0.x * _ProjectionParams.z;
					    u_xlat0.x = max(u_xlat0.x, 0.0);
					    u_xlat0.x = u_xlat0.x * unity_FogParams.x;
					    u_xlat0.x = u_xlat0.x * (-u_xlat0.x);
					    u_xlat0.x = exp2(u_xlat0.x);
					    SV_Target0.xyz = u_xlat3.xyz * u_xlat0.xxx;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendAdd" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[7];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb0 = u_xlat1.w>=u_xlat0.x;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    SV_Target0.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat0.x = u_xlatb0 ? 1.0 : float(0.0);
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[6];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb0 = u_xlat1.w>=u_xlat0.x;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    SV_Target0.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat0.x = u_xlatb0 ? 1.0 : float(0.0);
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendAdd" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[7];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb0 = u_xlat1.w>=u_xlat0.x;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    SV_Target0.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat0.x = u_xlatb0 ? 1.0 : float(0.0);
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[6];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb0 = u_xlat1.w>=u_xlat0.x;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    SV_Target0.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat0.x = u_xlatb0 ? 1.0 : float(0.0);
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendAdd" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb0 = u_xlat1.w>=u_xlat0.x;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat0.x = u_xlatb0 ? 1.0 : float(0.0);
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    u_xlat0.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0.x = (-u_xlat0.x) + 1.0;
					    u_xlat0.x = u_xlat0.x * _ProjectionParams.z;
					    u_xlat0.x = max(u_xlat0.x, 0.0);
					    u_xlat0.x = u_xlat0.x * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat3.xyz * u_xlat0.xxx;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb0 = u_xlat1.w>=u_xlat0.x;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat0.x = u_xlatb0 ? 1.0 : float(0.0);
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    u_xlat0.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0.x = (-u_xlat0.x) + 1.0;
					    u_xlat0.x = u_xlat0.x * _ProjectionParams.z;
					    u_xlat0.x = max(u_xlat0.x, 0.0);
					    u_xlat0.x = u_xlat0.x * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat3.xyz * u_xlat0.xxx;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendAdd" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb0 = u_xlat1.w>=u_xlat0.x;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat0.x = u_xlatb0 ? 1.0 : float(0.0);
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    u_xlat0.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0.x = (-u_xlat0.x) + 1.0;
					    u_xlat0.x = u_xlat0.x * _ProjectionParams.z;
					    u_xlat0.x = max(u_xlat0.x, 0.0);
					    u_xlat0.x = u_xlat0.x * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat3.xyz * u_xlat0.xxx;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb0 = u_xlat1.w>=u_xlat0.x;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat0.x = u_xlatb0 ? 1.0 : float(0.0);
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    u_xlat0.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0.x = (-u_xlat0.x) + 1.0;
					    u_xlat0.x = u_xlat0.x * _ProjectionParams.z;
					    u_xlat0.x = max(u_xlat0.x, 0.0);
					    u_xlat0.x = u_xlat0.x * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat3.xyz * u_xlat0.xxx;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendAdd" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb0 = u_xlat1.w>=u_xlat0.x;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat0.x = u_xlatb0 ? 1.0 : float(0.0);
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    u_xlat0.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0.x = (-u_xlat0.x) + 1.0;
					    u_xlat0.x = u_xlat0.x * _ProjectionParams.z;
					    u_xlat0.x = max(u_xlat0.x, 0.0);
					    u_xlat0.x = u_xlat0.x * unity_FogParams.y;
					    u_xlat0.x = exp2((-u_xlat0.x));
					    u_xlat0.x = min(u_xlat0.x, 1.0);
					    SV_Target0.xyz = u_xlat3.xyz * u_xlat0.xxx;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb0 = u_xlat1.w>=u_xlat0.x;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat0.x = u_xlatb0 ? 1.0 : float(0.0);
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    u_xlat0.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0.x = (-u_xlat0.x) + 1.0;
					    u_xlat0.x = u_xlat0.x * _ProjectionParams.z;
					    u_xlat0.x = max(u_xlat0.x, 0.0);
					    u_xlat0.x = u_xlat0.x * unity_FogParams.y;
					    u_xlat0.x = exp2((-u_xlat0.x));
					    u_xlat0.x = min(u_xlat0.x, 1.0);
					    SV_Target0.xyz = u_xlat3.xyz * u_xlat0.xxx;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendAdd" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb0 = u_xlat1.w>=u_xlat0.x;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat0.x = u_xlatb0 ? 1.0 : float(0.0);
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    u_xlat0.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0.x = (-u_xlat0.x) + 1.0;
					    u_xlat0.x = u_xlat0.x * _ProjectionParams.z;
					    u_xlat0.x = max(u_xlat0.x, 0.0);
					    u_xlat0.x = u_xlat0.x * unity_FogParams.y;
					    u_xlat0.x = exp2((-u_xlat0.x));
					    u_xlat0.x = min(u_xlat0.x, 1.0);
					    SV_Target0.xyz = u_xlat3.xyz * u_xlat0.xxx;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb0 = u_xlat1.w>=u_xlat0.x;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat0.x = u_xlatb0 ? 1.0 : float(0.0);
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    u_xlat0.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0.x = (-u_xlat0.x) + 1.0;
					    u_xlat0.x = u_xlat0.x * _ProjectionParams.z;
					    u_xlat0.x = max(u_xlat0.x, 0.0);
					    u_xlat0.x = u_xlat0.x * unity_FogParams.y;
					    u_xlat0.x = exp2((-u_xlat0.x));
					    u_xlat0.x = min(u_xlat0.x, 1.0);
					    SV_Target0.xyz = u_xlat3.xyz * u_xlat0.xxx;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendAdd" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb0 = u_xlat1.w>=u_xlat0.x;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat0.x = u_xlatb0 ? 1.0 : float(0.0);
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    u_xlat0.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0.x = (-u_xlat0.x) + 1.0;
					    u_xlat0.x = u_xlat0.x * _ProjectionParams.z;
					    u_xlat0.x = max(u_xlat0.x, 0.0);
					    u_xlat0.x = u_xlat0.x * unity_FogParams.x;
					    u_xlat0.x = u_xlat0.x * (-u_xlat0.x);
					    u_xlat0.x = exp2(u_xlat0.x);
					    SV_Target0.xyz = u_xlat3.xyz * u_xlat0.xxx;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb0 = u_xlat1.w>=u_xlat0.x;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat0.x = u_xlatb0 ? 1.0 : float(0.0);
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    u_xlat0.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0.x = (-u_xlat0.x) + 1.0;
					    u_xlat0.x = u_xlat0.x * _ProjectionParams.z;
					    u_xlat0.x = max(u_xlat0.x, 0.0);
					    u_xlat0.x = u_xlat0.x * unity_FogParams.x;
					    u_xlat0.x = u_xlat0.x * (-u_xlat0.x);
					    u_xlat0.x = exp2(u_xlat0.x);
					    SV_Target0.xyz = u_xlat3.xyz * u_xlat0.xxx;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendAdd" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb0 = u_xlat1.w>=u_xlat0.x;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat0.x = u_xlatb0 ? 1.0 : float(0.0);
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    u_xlat0.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0.x = (-u_xlat0.x) + 1.0;
					    u_xlat0.x = u_xlat0.x * _ProjectionParams.z;
					    u_xlat0.x = max(u_xlat0.x, 0.0);
					    u_xlat0.x = u_xlat0.x * unity_FogParams.x;
					    u_xlat0.x = u_xlat0.x * (-u_xlat0.x);
					    u_xlat0.x = exp2(u_xlat0.x);
					    SV_Target0.xyz = u_xlat3.xyz * u_xlat0.xxx;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb0 = u_xlat1.w>=u_xlat0.x;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat0.x = u_xlatb0 ? 1.0 : float(0.0);
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    u_xlat0.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0.x = (-u_xlat0.x) + 1.0;
					    u_xlat0.x = u_xlat0.x * _ProjectionParams.z;
					    u_xlat0.x = max(u_xlat0.x, 0.0);
					    u_xlat0.x = u_xlat0.x * unity_FogParams.x;
					    u_xlat0.x = u_xlat0.x * (-u_xlat0.x);
					    u_xlat0.x = exp2(u_xlat0.x);
					    SV_Target0.xyz = u_xlat3.xyz * u_xlat0.xxx;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendAdd" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat0 = u_xlat0 * vs_COLOR0;
					    SV_Target0.w = u_xlat0.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat0 = u_xlat0 * vs_COLOR0;
					    SV_Target0.w = u_xlat0.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendAdd" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat0 = u_xlat0 * vs_COLOR0;
					    SV_Target0.w = u_xlat0.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat0 = u_xlat0 * vs_COLOR0;
					    SV_Target0.w = u_xlat0.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendAdd" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat1.xyz;
					    SV_Target0.w = u_xlat1.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat1.xyz;
					    SV_Target0.w = u_xlat1.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendAdd" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat1.xyz;
					    SV_Target0.w = u_xlat1.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat1.xyz;
					    SV_Target0.w = u_xlat1.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendAdd" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat1.xyz;
					    SV_Target0.w = u_xlat1.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat1.xyz;
					    SV_Target0.w = u_xlat1.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendAdd" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat1.xyz;
					    SV_Target0.w = u_xlat1.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat1.xyz;
					    SV_Target0.w = u_xlat1.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendAdd" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat1.xyz;
					    SV_Target0.w = u_xlat1.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat1.xyz;
					    SV_Target0.w = u_xlat1.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendAdd" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat1.xyz;
					    SV_Target0.w = u_xlat1.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat1.xyz;
					    SV_Target0.w = u_xlat1.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendAdd" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat0 = u_xlat0 * vs_COLOR0;
					    SV_Target0.w = u_xlat0.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat0 = u_xlat0 * vs_COLOR0;
					    SV_Target0.w = u_xlat0.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendAdd" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat0 = u_xlat0 * vs_COLOR0;
					    SV_Target0.w = u_xlat0.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat0 = u_xlat0 * vs_COLOR0;
					    SV_Target0.w = u_xlat0.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendAdd" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat1.xyz;
					    SV_Target0.w = u_xlat1.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat1.xyz;
					    SV_Target0.w = u_xlat1.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendAdd" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat1.xyz;
					    SV_Target0.w = u_xlat1.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat1.xyz;
					    SV_Target0.w = u_xlat1.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendAdd" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat1.xyz;
					    SV_Target0.w = u_xlat1.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat1.xyz;
					    SV_Target0.w = u_xlat1.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendAdd" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat1.xyz;
					    SV_Target0.w = u_xlat1.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat1.xyz;
					    SV_Target0.w = u_xlat1.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendAdd" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat1.xyz;
					    SV_Target0.w = u_xlat1.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat1.xyz;
					    SV_Target0.w = u_xlat1.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendAdd" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat1.xyz;
					    SV_Target0.w = u_xlat1.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat1.xyz;
					    SV_Target0.w = u_xlat1.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendAdd" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat0 = u_xlat0.wxyz * vs_COLOR0.wxyz;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.yzw;
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat0 = u_xlat0.wxyz * vs_COLOR0.wxyz;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.yzw;
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendAdd" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat0 = u_xlat0.wxyz * vs_COLOR0.wxyz;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.yzw;
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat0 = u_xlat0.wxyz * vs_COLOR0.wxyz;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.yzw;
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendAdd" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1.wxyz * vs_COLOR0.wxyz;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat1.yzw;
					    u_xlat1.x = u_xlat1.x;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat1.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1.wxyz * vs_COLOR0.wxyz;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat1.yzw;
					    u_xlat1.x = u_xlat1.x;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat1.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendAdd" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1.wxyz * vs_COLOR0.wxyz;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat1.yzw;
					    u_xlat1.x = u_xlat1.x;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat1.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1.wxyz * vs_COLOR0.wxyz;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat1.yzw;
					    u_xlat1.x = u_xlat1.x;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat1.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendAdd" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1.wxyz * vs_COLOR0.wxyz;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat1.yzw;
					    u_xlat1.x = u_xlat1.x;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat1.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1.wxyz * vs_COLOR0.wxyz;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat1.yzw;
					    u_xlat1.x = u_xlat1.x;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat1.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendAdd" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1.wxyz * vs_COLOR0.wxyz;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat1.yzw;
					    u_xlat1.x = u_xlat1.x;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat1.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1.wxyz * vs_COLOR0.wxyz;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat1.yzw;
					    u_xlat1.x = u_xlat1.x;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat1.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendAdd" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1.wxyz * vs_COLOR0.wxyz;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat1.yzw;
					    u_xlat1.x = u_xlat1.x;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat1.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1.wxyz * vs_COLOR0.wxyz;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat1.yzw;
					    u_xlat1.x = u_xlat1.x;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat1.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendAdd" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1.wxyz * vs_COLOR0.wxyz;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat1.yzw;
					    u_xlat1.x = u_xlat1.x;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat1.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1.wxyz * vs_COLOR0.wxyz;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat1.yzw;
					    u_xlat1.x = u_xlat1.x;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat1.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendAdd" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat0 = u_xlat0.wxyz * vs_COLOR0.wxyz;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.yzw;
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat0 = u_xlat0.wxyz * vs_COLOR0.wxyz;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.yzw;
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendAdd" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat0 = u_xlat0.wxyz * vs_COLOR0.wxyz;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.yzw;
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat0 = u_xlat0.wxyz * vs_COLOR0.wxyz;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.yzw;
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendAdd" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1.wxyz * vs_COLOR0.wxyz;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat1.yzw;
					    u_xlat1.x = u_xlat1.x;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat1.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1.wxyz * vs_COLOR0.wxyz;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat1.yzw;
					    u_xlat1.x = u_xlat1.x;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat1.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendAdd" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1.wxyz * vs_COLOR0.wxyz;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat1.yzw;
					    u_xlat1.x = u_xlat1.x;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat1.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1.wxyz * vs_COLOR0.wxyz;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat1.yzw;
					    u_xlat1.x = u_xlat1.x;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat1.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendAdd" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1.wxyz * vs_COLOR0.wxyz;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat1.yzw;
					    u_xlat1.x = u_xlat1.x;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat1.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1.wxyz * vs_COLOR0.wxyz;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat1.yzw;
					    u_xlat1.x = u_xlat1.x;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat1.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendAdd" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1.wxyz * vs_COLOR0.wxyz;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat1.yzw;
					    u_xlat1.x = u_xlat1.x;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat1.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1.wxyz * vs_COLOR0.wxyz;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat1.yzw;
					    u_xlat1.x = u_xlat1.x;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat1.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendAdd" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1.wxyz * vs_COLOR0.wxyz;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat1.yzw;
					    u_xlat1.x = u_xlat1.x;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat1.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1.wxyz * vs_COLOR0.wxyz;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat1.yzw;
					    u_xlat1.x = u_xlat1.x;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat1.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendAdd" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1.wxyz * vs_COLOR0.wxyz;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat1.yzw;
					    u_xlat1.x = u_xlat1.x;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat1.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1.wxyz * vs_COLOR0.wxyz;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat1.yzw;
					    u_xlat1.x = u_xlat1.x;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat1.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendAdd" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					float u_xlat1;
					bool u_xlatb1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1 = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat0.w = u_xlat0.w * u_xlat1;
					    u_xlat0 = u_xlat0 * vs_COLOR0;
					    SV_Target0.w = u_xlat0.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					float u_xlat1;
					bool u_xlatb1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1 = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat0.w = u_xlat0.w * u_xlat1;
					    u_xlat0 = u_xlat0 * vs_COLOR0;
					    SV_Target0.w = u_xlat0.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendAdd" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					float u_xlat1;
					bool u_xlatb1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1 = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat0.w = u_xlat0.w * u_xlat1;
					    u_xlat0 = u_xlat0 * vs_COLOR0;
					    SV_Target0.w = u_xlat0.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					float u_xlat1;
					bool u_xlatb1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1 = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat0.w = u_xlat0.w * u_xlat1;
					    u_xlat0 = u_xlat0 * vs_COLOR0;
					    SV_Target0.w = u_xlat0.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendAdd" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					bool u_xlatb2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2 = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat1.xyz;
					    SV_Target0.w = u_xlat1.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					bool u_xlatb2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2 = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat1.xyz;
					    SV_Target0.w = u_xlat1.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendAdd" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					bool u_xlatb2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2 = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat1.xyz;
					    SV_Target0.w = u_xlat1.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					bool u_xlatb2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2 = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat1.xyz;
					    SV_Target0.w = u_xlat1.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendAdd" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					bool u_xlatb2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2 = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat1.xyz;
					    SV_Target0.w = u_xlat1.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					bool u_xlatb2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2 = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat1.xyz;
					    SV_Target0.w = u_xlat1.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendAdd" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					bool u_xlatb2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2 = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat1.xyz;
					    SV_Target0.w = u_xlat1.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					bool u_xlatb2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2 = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat1.xyz;
					    SV_Target0.w = u_xlat1.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendAdd" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					bool u_xlatb2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2 = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat1.xyz;
					    SV_Target0.w = u_xlat1.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					bool u_xlatb2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2 = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat1.xyz;
					    SV_Target0.w = u_xlat1.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendAdd" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					bool u_xlatb2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2 = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat1.xyz;
					    SV_Target0.w = u_xlat1.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					bool u_xlatb2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2 = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat1.xyz;
					    SV_Target0.w = u_xlat1.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendAdd" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					float u_xlat1;
					bool u_xlatb1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1 = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat0.w = u_xlat0.w * u_xlat1;
					    u_xlat0 = u_xlat0 * vs_COLOR0;
					    SV_Target0.w = u_xlat0.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					float u_xlat1;
					bool u_xlatb1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1 = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat0.w = u_xlat0.w * u_xlat1;
					    u_xlat0 = u_xlat0 * vs_COLOR0;
					    SV_Target0.w = u_xlat0.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendAdd" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					float u_xlat1;
					bool u_xlatb1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1 = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat0.w = u_xlat0.w * u_xlat1;
					    u_xlat0 = u_xlat0 * vs_COLOR0;
					    SV_Target0.w = u_xlat0.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					float u_xlat1;
					bool u_xlatb1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1 = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat0.w = u_xlat0.w * u_xlat1;
					    u_xlat0 = u_xlat0 * vs_COLOR0;
					    SV_Target0.w = u_xlat0.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendAdd" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					bool u_xlatb2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2 = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat1.xyz;
					    SV_Target0.w = u_xlat1.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					bool u_xlatb2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2 = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat1.xyz;
					    SV_Target0.w = u_xlat1.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendAdd" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					bool u_xlatb2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2 = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat1.xyz;
					    SV_Target0.w = u_xlat1.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					bool u_xlatb2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2 = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat1.xyz;
					    SV_Target0.w = u_xlat1.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendAdd" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					bool u_xlatb2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2 = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat1.xyz;
					    SV_Target0.w = u_xlat1.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					bool u_xlatb2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2 = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat1.xyz;
					    SV_Target0.w = u_xlat1.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendAdd" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					bool u_xlatb2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2 = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat1.xyz;
					    SV_Target0.w = u_xlat1.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					bool u_xlatb2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2 = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat1.xyz;
					    SV_Target0.w = u_xlat1.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendAdd" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					bool u_xlatb2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2 = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat1.xyz;
					    SV_Target0.w = u_xlat1.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					bool u_xlatb2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2 = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat1.xyz;
					    SV_Target0.w = u_xlat1.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendAdd" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					bool u_xlatb2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2 = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat1.xyz;
					    SV_Target0.w = u_xlat1.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					bool u_xlatb2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2 = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat1.xyz;
					    SV_Target0.w = u_xlat1.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendAdd" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					float u_xlat1;
					bool u_xlatb1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1 = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat0.w = u_xlat0.w * u_xlat1;
					    u_xlat0 = u_xlat0.wxyz * vs_COLOR0.wxyz;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.yzw;
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					float u_xlat1;
					bool u_xlatb1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1 = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat0.w = u_xlat0.w * u_xlat1;
					    u_xlat0 = u_xlat0.wxyz * vs_COLOR0.wxyz;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.yzw;
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendAdd" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					float u_xlat1;
					bool u_xlatb1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1 = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat0.w = u_xlat0.w * u_xlat1;
					    u_xlat0 = u_xlat0.wxyz * vs_COLOR0.wxyz;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.yzw;
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					float u_xlat1;
					bool u_xlatb1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1 = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat0.w = u_xlat0.w * u_xlat1;
					    u_xlat0 = u_xlat0.wxyz * vs_COLOR0.wxyz;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.yzw;
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendAdd" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					bool u_xlatb2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2 = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2;
					    u_xlat1 = u_xlat1.wxyz * vs_COLOR0.wxyz;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat1.yzw;
					    u_xlat1.x = u_xlat1.x;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat1.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					bool u_xlatb2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2 = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2;
					    u_xlat1 = u_xlat1.wxyz * vs_COLOR0.wxyz;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat1.yzw;
					    u_xlat1.x = u_xlat1.x;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat1.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendAdd" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					bool u_xlatb2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2 = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2;
					    u_xlat1 = u_xlat1.wxyz * vs_COLOR0.wxyz;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat1.yzw;
					    u_xlat1.x = u_xlat1.x;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat1.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					bool u_xlatb2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2 = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2;
					    u_xlat1 = u_xlat1.wxyz * vs_COLOR0.wxyz;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat1.yzw;
					    u_xlat1.x = u_xlat1.x;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat1.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendAdd" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					bool u_xlatb2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2 = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2;
					    u_xlat1 = u_xlat1.wxyz * vs_COLOR0.wxyz;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat1.yzw;
					    u_xlat1.x = u_xlat1.x;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat1.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					bool u_xlatb2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2 = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2;
					    u_xlat1 = u_xlat1.wxyz * vs_COLOR0.wxyz;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat1.yzw;
					    u_xlat1.x = u_xlat1.x;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat1.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendAdd" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					bool u_xlatb2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2 = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2;
					    u_xlat1 = u_xlat1.wxyz * vs_COLOR0.wxyz;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat1.yzw;
					    u_xlat1.x = u_xlat1.x;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat1.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					bool u_xlatb2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2 = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2;
					    u_xlat1 = u_xlat1.wxyz * vs_COLOR0.wxyz;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat1.yzw;
					    u_xlat1.x = u_xlat1.x;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat1.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendAdd" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					bool u_xlatb2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2 = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2;
					    u_xlat1 = u_xlat1.wxyz * vs_COLOR0.wxyz;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat1.yzw;
					    u_xlat1.x = u_xlat1.x;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat1.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					bool u_xlatb2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2 = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2;
					    u_xlat1 = u_xlat1.wxyz * vs_COLOR0.wxyz;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat1.yzw;
					    u_xlat1.x = u_xlat1.x;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat1.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendAdd" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					bool u_xlatb2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2 = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2;
					    u_xlat1 = u_xlat1.wxyz * vs_COLOR0.wxyz;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat1.yzw;
					    u_xlat1.x = u_xlat1.x;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat1.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					bool u_xlatb2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2 = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2;
					    u_xlat1 = u_xlat1.wxyz * vs_COLOR0.wxyz;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat1.yzw;
					    u_xlat1.x = u_xlat1.x;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat1.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendAdd" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					float u_xlat1;
					bool u_xlatb1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1 = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat0.w = u_xlat0.w * u_xlat1;
					    u_xlat0 = u_xlat0.wxyz * vs_COLOR0.wxyz;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.yzw;
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					float u_xlat1;
					bool u_xlatb1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1 = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat0.w = u_xlat0.w * u_xlat1;
					    u_xlat0 = u_xlat0.wxyz * vs_COLOR0.wxyz;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.yzw;
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendAdd" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					float u_xlat1;
					bool u_xlatb1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1 = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat0.w = u_xlat0.w * u_xlat1;
					    u_xlat0 = u_xlat0.wxyz * vs_COLOR0.wxyz;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.yzw;
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					float u_xlat1;
					bool u_xlatb1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1 = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat0.w = u_xlat0.w * u_xlat1;
					    u_xlat0 = u_xlat0.wxyz * vs_COLOR0.wxyz;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.yzw;
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendAdd" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					bool u_xlatb2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2 = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2;
					    u_xlat1 = u_xlat1.wxyz * vs_COLOR0.wxyz;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat1.yzw;
					    u_xlat1.x = u_xlat1.x;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat1.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					bool u_xlatb2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2 = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2;
					    u_xlat1 = u_xlat1.wxyz * vs_COLOR0.wxyz;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat1.yzw;
					    u_xlat1.x = u_xlat1.x;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat1.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendAdd" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					bool u_xlatb2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2 = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2;
					    u_xlat1 = u_xlat1.wxyz * vs_COLOR0.wxyz;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat1.yzw;
					    u_xlat1.x = u_xlat1.x;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat1.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					bool u_xlatb2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2 = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2;
					    u_xlat1 = u_xlat1.wxyz * vs_COLOR0.wxyz;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat1.yzw;
					    u_xlat1.x = u_xlat1.x;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat1.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendAdd" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					bool u_xlatb2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2 = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2;
					    u_xlat1 = u_xlat1.wxyz * vs_COLOR0.wxyz;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat1.yzw;
					    u_xlat1.x = u_xlat1.x;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat1.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					bool u_xlatb2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2 = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2;
					    u_xlat1 = u_xlat1.wxyz * vs_COLOR0.wxyz;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat1.yzw;
					    u_xlat1.x = u_xlat1.x;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat1.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendAdd" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					bool u_xlatb2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2 = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2;
					    u_xlat1 = u_xlat1.wxyz * vs_COLOR0.wxyz;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat1.yzw;
					    u_xlat1.x = u_xlat1.x;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat1.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					bool u_xlatb2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2 = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2;
					    u_xlat1 = u_xlat1.wxyz * vs_COLOR0.wxyz;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat1.yzw;
					    u_xlat1.x = u_xlat1.x;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat1.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendAdd" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					bool u_xlatb2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2 = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2;
					    u_xlat1 = u_xlat1.wxyz * vs_COLOR0.wxyz;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat1.yzw;
					    u_xlat1.x = u_xlat1.x;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat1.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					bool u_xlatb2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2 = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2;
					    u_xlat1 = u_xlat1.wxyz * vs_COLOR0.wxyz;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat1.yzw;
					    u_xlat1.x = u_xlat1.x;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat1.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendAdd" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					bool u_xlatb2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2 = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2;
					    u_xlat1 = u_xlat1.wxyz * vs_COLOR0.wxyz;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat1.yzw;
					    u_xlat1.x = u_xlat1.x;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat1.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					bool u_xlatb2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2 = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2;
					    u_xlat1 = u_xlat1.wxyz * vs_COLOR0.wxyz;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat1.yzw;
					    u_xlat1.x = u_xlat1.x;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat1.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendAdd" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    SV_Target0.xyz = u_xlat2.xyz * vs_COLOR0.xyz;
					    SV_Target0.w = u_xlatb0 ? 1.0 : float(0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    SV_Target0.xyz = u_xlat2.xyz * vs_COLOR0.xyz;
					    SV_Target0.w = u_xlatb0 ? 1.0 : float(0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendAdd" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    SV_Target0.xyz = u_xlat2.xyz * vs_COLOR0.xyz;
					    SV_Target0.w = u_xlatb0 ? 1.0 : float(0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    SV_Target0.xyz = u_xlat2.xyz * vs_COLOR0.xyz;
					    SV_Target0.w = u_xlatb0 ? 1.0 : float(0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendAdd" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * vs_COLOR0.xyz;
					    SV_Target0.xyz = u_xlat2.xyz * vec3(u_xlat0);
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    SV_Target0.w = u_xlatb0 ? 1.0 : float(0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * vs_COLOR0.xyz;
					    SV_Target0.xyz = u_xlat2.xyz * vec3(u_xlat0);
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    SV_Target0.w = u_xlatb0 ? 1.0 : float(0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendAdd" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * vs_COLOR0.xyz;
					    SV_Target0.xyz = u_xlat2.xyz * vec3(u_xlat0);
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    SV_Target0.w = u_xlatb0 ? 1.0 : float(0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * vs_COLOR0.xyz;
					    SV_Target0.xyz = u_xlat2.xyz * vec3(u_xlat0);
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    SV_Target0.w = u_xlatb0 ? 1.0 : float(0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendAdd" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * vs_COLOR0.xyz;
					    SV_Target0.xyz = u_xlat2.xyz * vec3(u_xlat0);
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    SV_Target0.w = u_xlatb0 ? 1.0 : float(0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * vs_COLOR0.xyz;
					    SV_Target0.xyz = u_xlat2.xyz * vec3(u_xlat0);
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    SV_Target0.w = u_xlatb0 ? 1.0 : float(0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendAdd" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * vs_COLOR0.xyz;
					    SV_Target0.xyz = u_xlat2.xyz * vec3(u_xlat0);
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    SV_Target0.w = u_xlatb0 ? 1.0 : float(0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * vs_COLOR0.xyz;
					    SV_Target0.xyz = u_xlat2.xyz * vec3(u_xlat0);
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    SV_Target0.w = u_xlatb0 ? 1.0 : float(0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendAdd" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * vs_COLOR0.xyz;
					    SV_Target0.xyz = u_xlat2.xyz * vec3(u_xlat0);
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    SV_Target0.w = u_xlatb0 ? 1.0 : float(0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * vs_COLOR0.xyz;
					    SV_Target0.xyz = u_xlat2.xyz * vec3(u_xlat0);
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    SV_Target0.w = u_xlatb0 ? 1.0 : float(0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendAdd" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * vs_COLOR0.xyz;
					    SV_Target0.xyz = u_xlat2.xyz * vec3(u_xlat0);
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    SV_Target0.w = u_xlatb0 ? 1.0 : float(0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * vs_COLOR0.xyz;
					    SV_Target0.xyz = u_xlat2.xyz * vec3(u_xlat0);
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    SV_Target0.w = u_xlatb0 ? 1.0 : float(0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendAdd" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    SV_Target0.xyz = u_xlat2.xyz * vs_COLOR0.xyz;
					    SV_Target0.w = u_xlatb0 ? 1.0 : float(0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    SV_Target0.xyz = u_xlat2.xyz * vs_COLOR0.xyz;
					    SV_Target0.w = u_xlatb0 ? 1.0 : float(0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendAdd" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    SV_Target0.xyz = u_xlat2.xyz * vs_COLOR0.xyz;
					    SV_Target0.w = u_xlatb0 ? 1.0 : float(0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    SV_Target0.xyz = u_xlat2.xyz * vs_COLOR0.xyz;
					    SV_Target0.w = u_xlatb0 ? 1.0 : float(0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendAdd" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * vs_COLOR0.xyz;
					    SV_Target0.xyz = u_xlat2.xyz * vec3(u_xlat0);
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    SV_Target0.w = u_xlatb0 ? 1.0 : float(0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * vs_COLOR0.xyz;
					    SV_Target0.xyz = u_xlat2.xyz * vec3(u_xlat0);
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    SV_Target0.w = u_xlatb0 ? 1.0 : float(0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendAdd" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * vs_COLOR0.xyz;
					    SV_Target0.xyz = u_xlat2.xyz * vec3(u_xlat0);
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    SV_Target0.w = u_xlatb0 ? 1.0 : float(0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * vs_COLOR0.xyz;
					    SV_Target0.xyz = u_xlat2.xyz * vec3(u_xlat0);
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    SV_Target0.w = u_xlatb0 ? 1.0 : float(0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendAdd" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * vs_COLOR0.xyz;
					    SV_Target0.xyz = u_xlat2.xyz * vec3(u_xlat0);
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    SV_Target0.w = u_xlatb0 ? 1.0 : float(0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * vs_COLOR0.xyz;
					    SV_Target0.xyz = u_xlat2.xyz * vec3(u_xlat0);
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    SV_Target0.w = u_xlatb0 ? 1.0 : float(0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendAdd" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * vs_COLOR0.xyz;
					    SV_Target0.xyz = u_xlat2.xyz * vec3(u_xlat0);
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    SV_Target0.w = u_xlatb0 ? 1.0 : float(0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * vs_COLOR0.xyz;
					    SV_Target0.xyz = u_xlat2.xyz * vec3(u_xlat0);
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    SV_Target0.w = u_xlatb0 ? 1.0 : float(0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendAdd" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * vs_COLOR0.xyz;
					    SV_Target0.xyz = u_xlat2.xyz * vec3(u_xlat0);
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    SV_Target0.w = u_xlatb0 ? 1.0 : float(0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * vs_COLOR0.xyz;
					    SV_Target0.xyz = u_xlat2.xyz * vec3(u_xlat0);
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    SV_Target0.w = u_xlatb0 ? 1.0 : float(0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendAdd" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * vs_COLOR0.xyz;
					    SV_Target0.xyz = u_xlat2.xyz * vec3(u_xlat0);
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    SV_Target0.w = u_xlatb0 ? 1.0 : float(0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * vs_COLOR0.xyz;
					    SV_Target0.xyz = u_xlat2.xyz * vec3(u_xlat0);
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    SV_Target0.w = u_xlatb0 ? 1.0 : float(0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendAdd" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    SV_Target0.xyz = u_xlat2.xyz * vs_COLOR0.xyz;
					    u_xlat0 = u_xlatb0 ? 1.0 : float(0.0);
					    SV_Target0.w = u_xlat0 * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    SV_Target0.xyz = u_xlat2.xyz * vs_COLOR0.xyz;
					    u_xlat0 = u_xlatb0 ? 1.0 : float(0.0);
					    SV_Target0.w = u_xlat0 * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendAdd" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    SV_Target0.xyz = u_xlat2.xyz * vs_COLOR0.xyz;
					    u_xlat0 = u_xlatb0 ? 1.0 : float(0.0);
					    SV_Target0.w = u_xlat0 * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    SV_Target0.xyz = u_xlat2.xyz * vs_COLOR0.xyz;
					    u_xlat0 = u_xlatb0 ? 1.0 : float(0.0);
					    SV_Target0.w = u_xlat0 * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendAdd" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * vs_COLOR0.xyz;
					    SV_Target0.xyz = u_xlat2.xyz * vec3(u_xlat0);
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    u_xlat0 = u_xlatb0 ? 1.0 : float(0.0);
					    SV_Target0.w = u_xlat0 * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * vs_COLOR0.xyz;
					    SV_Target0.xyz = u_xlat2.xyz * vec3(u_xlat0);
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    u_xlat0 = u_xlatb0 ? 1.0 : float(0.0);
					    SV_Target0.w = u_xlat0 * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendAdd" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * vs_COLOR0.xyz;
					    SV_Target0.xyz = u_xlat2.xyz * vec3(u_xlat0);
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    u_xlat0 = u_xlatb0 ? 1.0 : float(0.0);
					    SV_Target0.w = u_xlat0 * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * vs_COLOR0.xyz;
					    SV_Target0.xyz = u_xlat2.xyz * vec3(u_xlat0);
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    u_xlat0 = u_xlatb0 ? 1.0 : float(0.0);
					    SV_Target0.w = u_xlat0 * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendAdd" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * vs_COLOR0.xyz;
					    SV_Target0.xyz = u_xlat2.xyz * vec3(u_xlat0);
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    u_xlat0 = u_xlatb0 ? 1.0 : float(0.0);
					    SV_Target0.w = u_xlat0 * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * vs_COLOR0.xyz;
					    SV_Target0.xyz = u_xlat2.xyz * vec3(u_xlat0);
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    u_xlat0 = u_xlatb0 ? 1.0 : float(0.0);
					    SV_Target0.w = u_xlat0 * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendAdd" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * vs_COLOR0.xyz;
					    SV_Target0.xyz = u_xlat2.xyz * vec3(u_xlat0);
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    u_xlat0 = u_xlatb0 ? 1.0 : float(0.0);
					    SV_Target0.w = u_xlat0 * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * vs_COLOR0.xyz;
					    SV_Target0.xyz = u_xlat2.xyz * vec3(u_xlat0);
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    u_xlat0 = u_xlatb0 ? 1.0 : float(0.0);
					    SV_Target0.w = u_xlat0 * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendAdd" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * vs_COLOR0.xyz;
					    SV_Target0.xyz = u_xlat2.xyz * vec3(u_xlat0);
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    u_xlat0 = u_xlatb0 ? 1.0 : float(0.0);
					    SV_Target0.w = u_xlat0 * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * vs_COLOR0.xyz;
					    SV_Target0.xyz = u_xlat2.xyz * vec3(u_xlat0);
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    u_xlat0 = u_xlatb0 ? 1.0 : float(0.0);
					    SV_Target0.w = u_xlat0 * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendAdd" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * vs_COLOR0.xyz;
					    SV_Target0.xyz = u_xlat2.xyz * vec3(u_xlat0);
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    u_xlat0 = u_xlatb0 ? 1.0 : float(0.0);
					    SV_Target0.w = u_xlat0 * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * vs_COLOR0.xyz;
					    SV_Target0.xyz = u_xlat2.xyz * vec3(u_xlat0);
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    u_xlat0 = u_xlatb0 ? 1.0 : float(0.0);
					    SV_Target0.w = u_xlat0 * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendAdd" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    SV_Target0.xyz = u_xlat2.xyz * vs_COLOR0.xyz;
					    u_xlat0 = u_xlatb0 ? 1.0 : float(0.0);
					    SV_Target0.w = u_xlat0 * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    SV_Target0.xyz = u_xlat2.xyz * vs_COLOR0.xyz;
					    u_xlat0 = u_xlatb0 ? 1.0 : float(0.0);
					    SV_Target0.w = u_xlat0 * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendAdd" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    SV_Target0.xyz = u_xlat2.xyz * vs_COLOR0.xyz;
					    u_xlat0 = u_xlatb0 ? 1.0 : float(0.0);
					    SV_Target0.w = u_xlat0 * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    SV_Target0.xyz = u_xlat2.xyz * vs_COLOR0.xyz;
					    u_xlat0 = u_xlatb0 ? 1.0 : float(0.0);
					    SV_Target0.w = u_xlat0 * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendAdd" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * vs_COLOR0.xyz;
					    SV_Target0.xyz = u_xlat2.xyz * vec3(u_xlat0);
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    u_xlat0 = u_xlatb0 ? 1.0 : float(0.0);
					    SV_Target0.w = u_xlat0 * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * vs_COLOR0.xyz;
					    SV_Target0.xyz = u_xlat2.xyz * vec3(u_xlat0);
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    u_xlat0 = u_xlatb0 ? 1.0 : float(0.0);
					    SV_Target0.w = u_xlat0 * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendAdd" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * vs_COLOR0.xyz;
					    SV_Target0.xyz = u_xlat2.xyz * vec3(u_xlat0);
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    u_xlat0 = u_xlatb0 ? 1.0 : float(0.0);
					    SV_Target0.w = u_xlat0 * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * vs_COLOR0.xyz;
					    SV_Target0.xyz = u_xlat2.xyz * vec3(u_xlat0);
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    u_xlat0 = u_xlatb0 ? 1.0 : float(0.0);
					    SV_Target0.w = u_xlat0 * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendAdd" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * vs_COLOR0.xyz;
					    SV_Target0.xyz = u_xlat2.xyz * vec3(u_xlat0);
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    u_xlat0 = u_xlatb0 ? 1.0 : float(0.0);
					    SV_Target0.w = u_xlat0 * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * vs_COLOR0.xyz;
					    SV_Target0.xyz = u_xlat2.xyz * vec3(u_xlat0);
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    u_xlat0 = u_xlatb0 ? 1.0 : float(0.0);
					    SV_Target0.w = u_xlat0 * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendAdd" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * vs_COLOR0.xyz;
					    SV_Target0.xyz = u_xlat2.xyz * vec3(u_xlat0);
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    u_xlat0 = u_xlatb0 ? 1.0 : float(0.0);
					    SV_Target0.w = u_xlat0 * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * vs_COLOR0.xyz;
					    SV_Target0.xyz = u_xlat2.xyz * vec3(u_xlat0);
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    u_xlat0 = u_xlatb0 ? 1.0 : float(0.0);
					    SV_Target0.w = u_xlat0 * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendAdd" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * vs_COLOR0.xyz;
					    SV_Target0.xyz = u_xlat2.xyz * vec3(u_xlat0);
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    u_xlat0 = u_xlatb0 ? 1.0 : float(0.0);
					    SV_Target0.w = u_xlat0 * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * vs_COLOR0.xyz;
					    SV_Target0.xyz = u_xlat2.xyz * vec3(u_xlat0);
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    u_xlat0 = u_xlatb0 ? 1.0 : float(0.0);
					    SV_Target0.w = u_xlat0 * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendAdd" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * vs_COLOR0.xyz;
					    SV_Target0.xyz = u_xlat2.xyz * vec3(u_xlat0);
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    u_xlat0 = u_xlatb0 ? 1.0 : float(0.0);
					    SV_Target0.w = u_xlat0 * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * vs_COLOR0.xyz;
					    SV_Target0.xyz = u_xlat2.xyz * vec3(u_xlat0);
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    u_xlat0 = u_xlatb0 ? 1.0 : float(0.0);
					    SV_Target0.w = u_xlat0 * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendAdd" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat0 = u_xlat0 * vs_COLOR0;
					    SV_Target0.w = u_xlat0.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat0 = u_xlat0 * vs_COLOR0;
					    SV_Target0.w = u_xlat0.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendAdd" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[7];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    SV_Target0.w = u_xlat0.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[6];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    SV_Target0.w = u_xlat0.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendAdd" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat1.xyz;
					    SV_Target0.w = u_xlat1.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat1.xyz;
					    SV_Target0.w = u_xlat1.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendAdd" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat1.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat1.x = (-u_xlat1.x) + 1.0;
					    u_xlat1.x = u_xlat1.x * _ProjectionParams.z;
					    u_xlat1.x = max(u_xlat1.x, 0.0);
					    u_xlat1.x = u_xlat1.x * unity_FogParams.z + unity_FogParams.w;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.xyz * u_xlat1.xxx;
					    SV_Target0.w = u_xlat0.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat1.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat1.x = (-u_xlat1.x) + 1.0;
					    u_xlat1.x = u_xlat1.x * _ProjectionParams.z;
					    u_xlat1.x = max(u_xlat1.x, 0.0);
					    u_xlat1.x = u_xlat1.x * unity_FogParams.z + unity_FogParams.w;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.xyz * u_xlat1.xxx;
					    SV_Target0.w = u_xlat0.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendAdd" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat1.xyz;
					    SV_Target0.w = u_xlat1.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat1.xyz;
					    SV_Target0.w = u_xlat1.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendAdd" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec2 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat3.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat1 = texture(_CameraDepthTexture, u_xlat3.xy);
					    u_xlat3.x = _ZBufferParams.z * u_xlat1.x + _ZBufferParams.w;
					    u_xlat3.x = float(1.0) / u_xlat3.x;
					    u_xlat3.x = u_xlat3.x + (-vs_TEXCOORD3.z);
					    u_xlat3.x = u_xlat3.x * _InvFade;
					    u_xlat3.x = clamp(u_xlat3.x, 0.0, 1.0);
					    u_xlat1.w = u_xlat3.x * vs_COLOR0.w;
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2 = u_xlat2 + u_xlat2;
					    u_xlat2 = u_xlat2 * _TintColor;
					    u_xlat1.xyz = vs_COLOR0.xyz;
					    u_xlat1 = u_xlat1 * u_xlat2;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat1.xyz;
					    SV_Target0.w = u_xlat1.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec2 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat3.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat1 = texture(_CameraDepthTexture, u_xlat3.xy);
					    u_xlat3.x = _ZBufferParams.z * u_xlat1.x + _ZBufferParams.w;
					    u_xlat3.x = float(1.0) / u_xlat3.x;
					    u_xlat3.x = u_xlat3.x + (-vs_TEXCOORD3.z);
					    u_xlat3.x = u_xlat3.x * _InvFade;
					    u_xlat3.x = clamp(u_xlat3.x, 0.0, 1.0);
					    u_xlat1.w = u_xlat3.x * vs_COLOR0.w;
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2 = u_xlat2 + u_xlat2;
					    u_xlat2 = u_xlat2 * _TintColor;
					    u_xlat1.xyz = vs_COLOR0.xyz;
					    u_xlat1 = u_xlat1 * u_xlat2;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat1.xyz;
					    SV_Target0.w = u_xlat1.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendAdd" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat1.xyz;
					    SV_Target0.w = u_xlat1.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat1.xyz;
					    SV_Target0.w = u_xlat1.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendAdd" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec2 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat3.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat1 = texture(_CameraDepthTexture, u_xlat3.xy);
					    u_xlat3.x = _ZBufferParams.z * u_xlat1.x + _ZBufferParams.w;
					    u_xlat3.x = float(1.0) / u_xlat3.x;
					    u_xlat3.x = u_xlat3.x + (-vs_TEXCOORD3.z);
					    u_xlat3.x = u_xlat3.x * _InvFade;
					    u_xlat3.x = clamp(u_xlat3.x, 0.0, 1.0);
					    u_xlat1.w = u_xlat3.x * vs_COLOR0.w;
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2 = u_xlat2 + u_xlat2;
					    u_xlat2 = u_xlat2 * _TintColor;
					    u_xlat1.xyz = vs_COLOR0.xyz;
					    u_xlat1 = u_xlat1 * u_xlat2;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat1.xyz;
					    SV_Target0.w = u_xlat1.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec2 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat3.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat1 = texture(_CameraDepthTexture, u_xlat3.xy);
					    u_xlat3.x = _ZBufferParams.z * u_xlat1.x + _ZBufferParams.w;
					    u_xlat3.x = float(1.0) / u_xlat3.x;
					    u_xlat3.x = u_xlat3.x + (-vs_TEXCOORD3.z);
					    u_xlat3.x = u_xlat3.x * _InvFade;
					    u_xlat3.x = clamp(u_xlat3.x, 0.0, 1.0);
					    u_xlat1.w = u_xlat3.x * vs_COLOR0.w;
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2 = u_xlat2 + u_xlat2;
					    u_xlat2 = u_xlat2 * _TintColor;
					    u_xlat1.xyz = vs_COLOR0.xyz;
					    u_xlat1 = u_xlat1 * u_xlat2;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat1.xyz;
					    SV_Target0.w = u_xlat1.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendAdd" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[7];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    SV_Target0.w = u_xlat0.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[6];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    SV_Target0.w = u_xlat0.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendAdd" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[7];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    SV_Target0.w = u_xlat0.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[6];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    SV_Target0.w = u_xlat0.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendAdd" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat1.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat1.x = (-u_xlat1.x) + 1.0;
					    u_xlat1.x = u_xlat1.x * _ProjectionParams.z;
					    u_xlat1.x = max(u_xlat1.x, 0.0);
					    u_xlat1.x = u_xlat1.x * unity_FogParams.z + unity_FogParams.w;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.xyz * u_xlat1.xxx;
					    SV_Target0.w = u_xlat0.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat1.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat1.x = (-u_xlat1.x) + 1.0;
					    u_xlat1.x = u_xlat1.x * _ProjectionParams.z;
					    u_xlat1.x = max(u_xlat1.x, 0.0);
					    u_xlat1.x = u_xlat1.x * unity_FogParams.z + unity_FogParams.w;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.xyz * u_xlat1.xxx;
					    SV_Target0.w = u_xlat0.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendAdd" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat1.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat1.x = (-u_xlat1.x) + 1.0;
					    u_xlat1.x = u_xlat1.x * _ProjectionParams.z;
					    u_xlat1.x = max(u_xlat1.x, 0.0);
					    u_xlat1.x = u_xlat1.x * unity_FogParams.z + unity_FogParams.w;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.xyz * u_xlat1.xxx;
					    SV_Target0.w = u_xlat0.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat1.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat1.x = (-u_xlat1.x) + 1.0;
					    u_xlat1.x = u_xlat1.x * _ProjectionParams.z;
					    u_xlat1.x = max(u_xlat1.x, 0.0);
					    u_xlat1.x = u_xlat1.x * unity_FogParams.z + unity_FogParams.w;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.xyz * u_xlat1.xxx;
					    SV_Target0.w = u_xlat0.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendAdd" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec2 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat3.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat1 = texture(_CameraDepthTexture, u_xlat3.xy);
					    u_xlat3.x = _ZBufferParams.z * u_xlat1.x + _ZBufferParams.w;
					    u_xlat3.x = float(1.0) / u_xlat3.x;
					    u_xlat3.x = u_xlat3.x + (-vs_TEXCOORD3.z);
					    u_xlat3.x = u_xlat3.x * _InvFade;
					    u_xlat3.x = clamp(u_xlat3.x, 0.0, 1.0);
					    u_xlat1.w = u_xlat3.x * vs_COLOR0.w;
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2 = u_xlat2 + u_xlat2;
					    u_xlat2 = u_xlat2 * _TintColor;
					    u_xlat1.xyz = vs_COLOR0.xyz;
					    u_xlat1 = u_xlat1 * u_xlat2;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat1.xyz;
					    SV_Target0.w = u_xlat1.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec2 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat3.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat1 = texture(_CameraDepthTexture, u_xlat3.xy);
					    u_xlat3.x = _ZBufferParams.z * u_xlat1.x + _ZBufferParams.w;
					    u_xlat3.x = float(1.0) / u_xlat3.x;
					    u_xlat3.x = u_xlat3.x + (-vs_TEXCOORD3.z);
					    u_xlat3.x = u_xlat3.x * _InvFade;
					    u_xlat3.x = clamp(u_xlat3.x, 0.0, 1.0);
					    u_xlat1.w = u_xlat3.x * vs_COLOR0.w;
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2 = u_xlat2 + u_xlat2;
					    u_xlat2 = u_xlat2 * _TintColor;
					    u_xlat1.xyz = vs_COLOR0.xyz;
					    u_xlat1 = u_xlat1 * u_xlat2;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat1.xyz;
					    SV_Target0.w = u_xlat1.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendAdd" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec2 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat3.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat1 = texture(_CameraDepthTexture, u_xlat3.xy);
					    u_xlat3.x = _ZBufferParams.z * u_xlat1.x + _ZBufferParams.w;
					    u_xlat3.x = float(1.0) / u_xlat3.x;
					    u_xlat3.x = u_xlat3.x + (-vs_TEXCOORD3.z);
					    u_xlat3.x = u_xlat3.x * _InvFade;
					    u_xlat3.x = clamp(u_xlat3.x, 0.0, 1.0);
					    u_xlat1.w = u_xlat3.x * vs_COLOR0.w;
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2 = u_xlat2 + u_xlat2;
					    u_xlat2 = u_xlat2 * _TintColor;
					    u_xlat1.xyz = vs_COLOR0.xyz;
					    u_xlat1 = u_xlat1 * u_xlat2;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat1.xyz;
					    SV_Target0.w = u_xlat1.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec2 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat3.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat1 = texture(_CameraDepthTexture, u_xlat3.xy);
					    u_xlat3.x = _ZBufferParams.z * u_xlat1.x + _ZBufferParams.w;
					    u_xlat3.x = float(1.0) / u_xlat3.x;
					    u_xlat3.x = u_xlat3.x + (-vs_TEXCOORD3.z);
					    u_xlat3.x = u_xlat3.x * _InvFade;
					    u_xlat3.x = clamp(u_xlat3.x, 0.0, 1.0);
					    u_xlat1.w = u_xlat3.x * vs_COLOR0.w;
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2 = u_xlat2 + u_xlat2;
					    u_xlat2 = u_xlat2 * _TintColor;
					    u_xlat1.xyz = vs_COLOR0.xyz;
					    u_xlat1 = u_xlat1 * u_xlat2;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat1.xyz;
					    SV_Target0.w = u_xlat1.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendAdd" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec2 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat3.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat1 = texture(_CameraDepthTexture, u_xlat3.xy);
					    u_xlat3.x = _ZBufferParams.z * u_xlat1.x + _ZBufferParams.w;
					    u_xlat3.x = float(1.0) / u_xlat3.x;
					    u_xlat3.x = u_xlat3.x + (-vs_TEXCOORD3.z);
					    u_xlat3.x = u_xlat3.x * _InvFade;
					    u_xlat3.x = clamp(u_xlat3.x, 0.0, 1.0);
					    u_xlat1.w = u_xlat3.x * vs_COLOR0.w;
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2 = u_xlat2 + u_xlat2;
					    u_xlat2 = u_xlat2 * _TintColor;
					    u_xlat1.xyz = vs_COLOR0.xyz;
					    u_xlat1 = u_xlat1 * u_xlat2;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat1.xyz;
					    SV_Target0.w = u_xlat1.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec2 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat3.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat1 = texture(_CameraDepthTexture, u_xlat3.xy);
					    u_xlat3.x = _ZBufferParams.z * u_xlat1.x + _ZBufferParams.w;
					    u_xlat3.x = float(1.0) / u_xlat3.x;
					    u_xlat3.x = u_xlat3.x + (-vs_TEXCOORD3.z);
					    u_xlat3.x = u_xlat3.x * _InvFade;
					    u_xlat3.x = clamp(u_xlat3.x, 0.0, 1.0);
					    u_xlat1.w = u_xlat3.x * vs_COLOR0.w;
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2 = u_xlat2 + u_xlat2;
					    u_xlat2 = u_xlat2 * _TintColor;
					    u_xlat1.xyz = vs_COLOR0.xyz;
					    u_xlat1 = u_xlat1 * u_xlat2;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat1.xyz;
					    SV_Target0.w = u_xlat1.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendAdd" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec2 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat3.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat1 = texture(_CameraDepthTexture, u_xlat3.xy);
					    u_xlat3.x = _ZBufferParams.z * u_xlat1.x + _ZBufferParams.w;
					    u_xlat3.x = float(1.0) / u_xlat3.x;
					    u_xlat3.x = u_xlat3.x + (-vs_TEXCOORD3.z);
					    u_xlat3.x = u_xlat3.x * _InvFade;
					    u_xlat3.x = clamp(u_xlat3.x, 0.0, 1.0);
					    u_xlat1.w = u_xlat3.x * vs_COLOR0.w;
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2 = u_xlat2 + u_xlat2;
					    u_xlat2 = u_xlat2 * _TintColor;
					    u_xlat1.xyz = vs_COLOR0.xyz;
					    u_xlat1 = u_xlat1 * u_xlat2;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat1.xyz;
					    SV_Target0.w = u_xlat1.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec2 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat3.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat1 = texture(_CameraDepthTexture, u_xlat3.xy);
					    u_xlat3.x = _ZBufferParams.z * u_xlat1.x + _ZBufferParams.w;
					    u_xlat3.x = float(1.0) / u_xlat3.x;
					    u_xlat3.x = u_xlat3.x + (-vs_TEXCOORD3.z);
					    u_xlat3.x = u_xlat3.x * _InvFade;
					    u_xlat3.x = clamp(u_xlat3.x, 0.0, 1.0);
					    u_xlat1.w = u_xlat3.x * vs_COLOR0.w;
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2 = u_xlat2 + u_xlat2;
					    u_xlat2 = u_xlat2 * _TintColor;
					    u_xlat1.xyz = vs_COLOR0.xyz;
					    u_xlat1 = u_xlat1 * u_xlat2;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat1.xyz;
					    SV_Target0.w = u_xlat1.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendAdd" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat0 = u_xlat0.wxyz * vs_COLOR0.wxyz;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.yzw;
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat0 = u_xlat0.wxyz * vs_COLOR0.wxyz;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.yzw;
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendAdd" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[7];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0.wxyz * u_xlat1.wxyz;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.yzw;
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[6];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0.wxyz * u_xlat1.wxyz;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.yzw;
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendAdd" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1.wxyz * vs_COLOR0.wxyz;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat1.yzw;
					    u_xlat1.x = u_xlat1.x;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat1.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1.wxyz * vs_COLOR0.wxyz;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat1.yzw;
					    u_xlat1.x = u_xlat1.x;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat1.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendAdd" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0.wxyz * u_xlat1.wxyz;
					    u_xlat1.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat1.x = (-u_xlat1.x) + 1.0;
					    u_xlat1.x = u_xlat1.x * _ProjectionParams.z;
					    u_xlat1.x = max(u_xlat1.x, 0.0);
					    u_xlat1.x = u_xlat1.x * unity_FogParams.z + unity_FogParams.w;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.yzw * u_xlat1.xxx;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0.wxyz * u_xlat1.wxyz;
					    u_xlat1.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat1.x = (-u_xlat1.x) + 1.0;
					    u_xlat1.x = u_xlat1.x * _ProjectionParams.z;
					    u_xlat1.x = max(u_xlat1.x, 0.0);
					    u_xlat1.x = u_xlat1.x * unity_FogParams.z + unity_FogParams.w;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.yzw * u_xlat1.xxx;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendAdd" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1.wxyz * vs_COLOR0.wxyz;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat1.yzw;
					    u_xlat1.x = u_xlat1.x;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat1.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1.wxyz * vs_COLOR0.wxyz;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat1.yzw;
					    u_xlat1.x = u_xlat1.x;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat1.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendAdd" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec2 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat3.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat1 = texture(_CameraDepthTexture, u_xlat3.xy);
					    u_xlat3.x = _ZBufferParams.z * u_xlat1.x + _ZBufferParams.w;
					    u_xlat3.x = float(1.0) / u_xlat3.x;
					    u_xlat3.x = u_xlat3.x + (-vs_TEXCOORD3.z);
					    u_xlat3.x = u_xlat3.x * _InvFade;
					    u_xlat3.x = clamp(u_xlat3.x, 0.0, 1.0);
					    u_xlat1.w = u_xlat3.x * vs_COLOR0.w;
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2 = u_xlat2 + u_xlat2;
					    u_xlat2 = u_xlat2 * _TintColor;
					    u_xlat1.xyz = vs_COLOR0.xyz;
					    u_xlat1 = u_xlat1.wxyz * u_xlat2.wxyz;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat1.yzw;
					    u_xlat1.x = u_xlat1.x;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat1.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec2 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat3.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat1 = texture(_CameraDepthTexture, u_xlat3.xy);
					    u_xlat3.x = _ZBufferParams.z * u_xlat1.x + _ZBufferParams.w;
					    u_xlat3.x = float(1.0) / u_xlat3.x;
					    u_xlat3.x = u_xlat3.x + (-vs_TEXCOORD3.z);
					    u_xlat3.x = u_xlat3.x * _InvFade;
					    u_xlat3.x = clamp(u_xlat3.x, 0.0, 1.0);
					    u_xlat1.w = u_xlat3.x * vs_COLOR0.w;
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2 = u_xlat2 + u_xlat2;
					    u_xlat2 = u_xlat2 * _TintColor;
					    u_xlat1.xyz = vs_COLOR0.xyz;
					    u_xlat1 = u_xlat1.wxyz * u_xlat2.wxyz;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat1.yzw;
					    u_xlat1.x = u_xlat1.x;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat1.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendAdd" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1.wxyz * vs_COLOR0.wxyz;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat1.yzw;
					    u_xlat1.x = u_xlat1.x;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat1.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1.wxyz * vs_COLOR0.wxyz;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat1.yzw;
					    u_xlat1.x = u_xlat1.x;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat1.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendAdd" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec2 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat3.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat1 = texture(_CameraDepthTexture, u_xlat3.xy);
					    u_xlat3.x = _ZBufferParams.z * u_xlat1.x + _ZBufferParams.w;
					    u_xlat3.x = float(1.0) / u_xlat3.x;
					    u_xlat3.x = u_xlat3.x + (-vs_TEXCOORD3.z);
					    u_xlat3.x = u_xlat3.x * _InvFade;
					    u_xlat3.x = clamp(u_xlat3.x, 0.0, 1.0);
					    u_xlat1.w = u_xlat3.x * vs_COLOR0.w;
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2 = u_xlat2 + u_xlat2;
					    u_xlat2 = u_xlat2 * _TintColor;
					    u_xlat1.xyz = vs_COLOR0.xyz;
					    u_xlat1 = u_xlat1.wxyz * u_xlat2.wxyz;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat1.yzw;
					    u_xlat1.x = u_xlat1.x;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat1.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec2 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat3.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat1 = texture(_CameraDepthTexture, u_xlat3.xy);
					    u_xlat3.x = _ZBufferParams.z * u_xlat1.x + _ZBufferParams.w;
					    u_xlat3.x = float(1.0) / u_xlat3.x;
					    u_xlat3.x = u_xlat3.x + (-vs_TEXCOORD3.z);
					    u_xlat3.x = u_xlat3.x * _InvFade;
					    u_xlat3.x = clamp(u_xlat3.x, 0.0, 1.0);
					    u_xlat1.w = u_xlat3.x * vs_COLOR0.w;
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2 = u_xlat2 + u_xlat2;
					    u_xlat2 = u_xlat2 * _TintColor;
					    u_xlat1.xyz = vs_COLOR0.xyz;
					    u_xlat1 = u_xlat1.wxyz * u_xlat2.wxyz;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat1.yzw;
					    u_xlat1.x = u_xlat1.x;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat1.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendAdd" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[7];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0.wxyz * u_xlat1.wxyz;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.yzw;
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[6];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0.wxyz * u_xlat1.wxyz;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.yzw;
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendAdd" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[7];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0.wxyz * u_xlat1.wxyz;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.yzw;
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[6];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0.wxyz * u_xlat1.wxyz;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.yzw;
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendAdd" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0.wxyz * u_xlat1.wxyz;
					    u_xlat1.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat1.x = (-u_xlat1.x) + 1.0;
					    u_xlat1.x = u_xlat1.x * _ProjectionParams.z;
					    u_xlat1.x = max(u_xlat1.x, 0.0);
					    u_xlat1.x = u_xlat1.x * unity_FogParams.z + unity_FogParams.w;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.yzw * u_xlat1.xxx;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0.wxyz * u_xlat1.wxyz;
					    u_xlat1.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat1.x = (-u_xlat1.x) + 1.0;
					    u_xlat1.x = u_xlat1.x * _ProjectionParams.z;
					    u_xlat1.x = max(u_xlat1.x, 0.0);
					    u_xlat1.x = u_xlat1.x * unity_FogParams.z + unity_FogParams.w;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.yzw * u_xlat1.xxx;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendAdd" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0.wxyz * u_xlat1.wxyz;
					    u_xlat1.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat1.x = (-u_xlat1.x) + 1.0;
					    u_xlat1.x = u_xlat1.x * _ProjectionParams.z;
					    u_xlat1.x = max(u_xlat1.x, 0.0);
					    u_xlat1.x = u_xlat1.x * unity_FogParams.z + unity_FogParams.w;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.yzw * u_xlat1.xxx;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0.wxyz * u_xlat1.wxyz;
					    u_xlat1.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat1.x = (-u_xlat1.x) + 1.0;
					    u_xlat1.x = u_xlat1.x * _ProjectionParams.z;
					    u_xlat1.x = max(u_xlat1.x, 0.0);
					    u_xlat1.x = u_xlat1.x * unity_FogParams.z + unity_FogParams.w;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.yzw * u_xlat1.xxx;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendAdd" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec2 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat3.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat1 = texture(_CameraDepthTexture, u_xlat3.xy);
					    u_xlat3.x = _ZBufferParams.z * u_xlat1.x + _ZBufferParams.w;
					    u_xlat3.x = float(1.0) / u_xlat3.x;
					    u_xlat3.x = u_xlat3.x + (-vs_TEXCOORD3.z);
					    u_xlat3.x = u_xlat3.x * _InvFade;
					    u_xlat3.x = clamp(u_xlat3.x, 0.0, 1.0);
					    u_xlat1.w = u_xlat3.x * vs_COLOR0.w;
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2 = u_xlat2 + u_xlat2;
					    u_xlat2 = u_xlat2 * _TintColor;
					    u_xlat1.xyz = vs_COLOR0.xyz;
					    u_xlat1 = u_xlat1.wxyz * u_xlat2.wxyz;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat1.yzw;
					    u_xlat1.x = u_xlat1.x;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat1.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec2 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat3.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat1 = texture(_CameraDepthTexture, u_xlat3.xy);
					    u_xlat3.x = _ZBufferParams.z * u_xlat1.x + _ZBufferParams.w;
					    u_xlat3.x = float(1.0) / u_xlat3.x;
					    u_xlat3.x = u_xlat3.x + (-vs_TEXCOORD3.z);
					    u_xlat3.x = u_xlat3.x * _InvFade;
					    u_xlat3.x = clamp(u_xlat3.x, 0.0, 1.0);
					    u_xlat1.w = u_xlat3.x * vs_COLOR0.w;
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2 = u_xlat2 + u_xlat2;
					    u_xlat2 = u_xlat2 * _TintColor;
					    u_xlat1.xyz = vs_COLOR0.xyz;
					    u_xlat1 = u_xlat1.wxyz * u_xlat2.wxyz;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat1.yzw;
					    u_xlat1.x = u_xlat1.x;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat1.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendAdd" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec2 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat3.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat1 = texture(_CameraDepthTexture, u_xlat3.xy);
					    u_xlat3.x = _ZBufferParams.z * u_xlat1.x + _ZBufferParams.w;
					    u_xlat3.x = float(1.0) / u_xlat3.x;
					    u_xlat3.x = u_xlat3.x + (-vs_TEXCOORD3.z);
					    u_xlat3.x = u_xlat3.x * _InvFade;
					    u_xlat3.x = clamp(u_xlat3.x, 0.0, 1.0);
					    u_xlat1.w = u_xlat3.x * vs_COLOR0.w;
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2 = u_xlat2 + u_xlat2;
					    u_xlat2 = u_xlat2 * _TintColor;
					    u_xlat1.xyz = vs_COLOR0.xyz;
					    u_xlat1 = u_xlat1.wxyz * u_xlat2.wxyz;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat1.yzw;
					    u_xlat1.x = u_xlat1.x;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat1.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec2 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat3.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat1 = texture(_CameraDepthTexture, u_xlat3.xy);
					    u_xlat3.x = _ZBufferParams.z * u_xlat1.x + _ZBufferParams.w;
					    u_xlat3.x = float(1.0) / u_xlat3.x;
					    u_xlat3.x = u_xlat3.x + (-vs_TEXCOORD3.z);
					    u_xlat3.x = u_xlat3.x * _InvFade;
					    u_xlat3.x = clamp(u_xlat3.x, 0.0, 1.0);
					    u_xlat1.w = u_xlat3.x * vs_COLOR0.w;
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2 = u_xlat2 + u_xlat2;
					    u_xlat2 = u_xlat2 * _TintColor;
					    u_xlat1.xyz = vs_COLOR0.xyz;
					    u_xlat1 = u_xlat1.wxyz * u_xlat2.wxyz;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat1.yzw;
					    u_xlat1.x = u_xlat1.x;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat1.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendAdd" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec2 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat3.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat1 = texture(_CameraDepthTexture, u_xlat3.xy);
					    u_xlat3.x = _ZBufferParams.z * u_xlat1.x + _ZBufferParams.w;
					    u_xlat3.x = float(1.0) / u_xlat3.x;
					    u_xlat3.x = u_xlat3.x + (-vs_TEXCOORD3.z);
					    u_xlat3.x = u_xlat3.x * _InvFade;
					    u_xlat3.x = clamp(u_xlat3.x, 0.0, 1.0);
					    u_xlat1.w = u_xlat3.x * vs_COLOR0.w;
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2 = u_xlat2 + u_xlat2;
					    u_xlat2 = u_xlat2 * _TintColor;
					    u_xlat1.xyz = vs_COLOR0.xyz;
					    u_xlat1 = u_xlat1.wxyz * u_xlat2.wxyz;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat1.yzw;
					    u_xlat1.x = u_xlat1.x;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat1.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec2 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat3.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat1 = texture(_CameraDepthTexture, u_xlat3.xy);
					    u_xlat3.x = _ZBufferParams.z * u_xlat1.x + _ZBufferParams.w;
					    u_xlat3.x = float(1.0) / u_xlat3.x;
					    u_xlat3.x = u_xlat3.x + (-vs_TEXCOORD3.z);
					    u_xlat3.x = u_xlat3.x * _InvFade;
					    u_xlat3.x = clamp(u_xlat3.x, 0.0, 1.0);
					    u_xlat1.w = u_xlat3.x * vs_COLOR0.w;
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2 = u_xlat2 + u_xlat2;
					    u_xlat2 = u_xlat2 * _TintColor;
					    u_xlat1.xyz = vs_COLOR0.xyz;
					    u_xlat1 = u_xlat1.wxyz * u_xlat2.wxyz;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat1.yzw;
					    u_xlat1.x = u_xlat1.x;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat1.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendAdd" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec2 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat3.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat1 = texture(_CameraDepthTexture, u_xlat3.xy);
					    u_xlat3.x = _ZBufferParams.z * u_xlat1.x + _ZBufferParams.w;
					    u_xlat3.x = float(1.0) / u_xlat3.x;
					    u_xlat3.x = u_xlat3.x + (-vs_TEXCOORD3.z);
					    u_xlat3.x = u_xlat3.x * _InvFade;
					    u_xlat3.x = clamp(u_xlat3.x, 0.0, 1.0);
					    u_xlat1.w = u_xlat3.x * vs_COLOR0.w;
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2 = u_xlat2 + u_xlat2;
					    u_xlat2 = u_xlat2 * _TintColor;
					    u_xlat1.xyz = vs_COLOR0.xyz;
					    u_xlat1 = u_xlat1.wxyz * u_xlat2.wxyz;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat1.yzw;
					    u_xlat1.x = u_xlat1.x;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat1.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec2 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat3.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat1 = texture(_CameraDepthTexture, u_xlat3.xy);
					    u_xlat3.x = _ZBufferParams.z * u_xlat1.x + _ZBufferParams.w;
					    u_xlat3.x = float(1.0) / u_xlat3.x;
					    u_xlat3.x = u_xlat3.x + (-vs_TEXCOORD3.z);
					    u_xlat3.x = u_xlat3.x * _InvFade;
					    u_xlat3.x = clamp(u_xlat3.x, 0.0, 1.0);
					    u_xlat1.w = u_xlat3.x * vs_COLOR0.w;
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2 = u_xlat2 + u_xlat2;
					    u_xlat2 = u_xlat2 * _TintColor;
					    u_xlat1.xyz = vs_COLOR0.xyz;
					    u_xlat1 = u_xlat1.wxyz * u_xlat2.wxyz;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat1.yzw;
					    u_xlat1.x = u_xlat1.x;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat1.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendAdd" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					float u_xlat1;
					bool u_xlatb1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1 = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat0.w = u_xlat0.w * u_xlat1;
					    u_xlat0 = u_xlat0 * vs_COLOR0;
					    SV_Target0.w = u_xlat0.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					float u_xlat1;
					bool u_xlatb1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1 = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat0.w = u_xlat0.w * u_xlat1;
					    u_xlat0 = u_xlat0 * vs_COLOR0;
					    SV_Target0.w = u_xlat0.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendAdd" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[7];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					bool u_xlatb2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2 = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    SV_Target0.w = u_xlat0.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[6];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					bool u_xlatb2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2 = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    SV_Target0.w = u_xlat0.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendAdd" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					bool u_xlatb2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2 = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat1.xyz;
					    SV_Target0.w = u_xlat1.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					bool u_xlatb2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2 = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat1.xyz;
					    SV_Target0.w = u_xlat1.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendAdd" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					bool u_xlatb2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2 = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat1.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat1.x = (-u_xlat1.x) + 1.0;
					    u_xlat1.x = u_xlat1.x * _ProjectionParams.z;
					    u_xlat1.x = max(u_xlat1.x, 0.0);
					    u_xlat1.x = u_xlat1.x * unity_FogParams.z + unity_FogParams.w;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.xyz * u_xlat1.xxx;
					    SV_Target0.w = u_xlat0.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					bool u_xlatb2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2 = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat1.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat1.x = (-u_xlat1.x) + 1.0;
					    u_xlat1.x = u_xlat1.x * _ProjectionParams.z;
					    u_xlat1.x = max(u_xlat1.x, 0.0);
					    u_xlat1.x = u_xlat1.x * unity_FogParams.z + unity_FogParams.w;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.xyz * u_xlat1.xxx;
					    SV_Target0.w = u_xlat0.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendAdd" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					bool u_xlatb2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2 = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat1.xyz;
					    SV_Target0.w = u_xlat1.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					bool u_xlatb2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2 = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat1.xyz;
					    SV_Target0.w = u_xlat1.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendAdd" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					bool u_xlatb2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2 = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat1.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat1.x = (-u_xlat1.x) + 1.0;
					    u_xlat1.x = u_xlat1.x * _ProjectionParams.z;
					    u_xlat1.x = max(u_xlat1.x, 0.0);
					    u_xlat1.x = u_xlat1.x * unity_FogParams.y;
					    u_xlat1.x = exp2((-u_xlat1.x));
					    u_xlat1.x = min(u_xlat1.x, 1.0);
					    SV_Target0.xyz = u_xlat0.xyz * u_xlat1.xxx;
					    SV_Target0.w = u_xlat0.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					bool u_xlatb2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2 = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat1.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat1.x = (-u_xlat1.x) + 1.0;
					    u_xlat1.x = u_xlat1.x * _ProjectionParams.z;
					    u_xlat1.x = max(u_xlat1.x, 0.0);
					    u_xlat1.x = u_xlat1.x * unity_FogParams.y;
					    u_xlat1.x = exp2((-u_xlat1.x));
					    u_xlat1.x = min(u_xlat1.x, 1.0);
					    SV_Target0.xyz = u_xlat0.xyz * u_xlat1.xxx;
					    SV_Target0.w = u_xlat0.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendAdd" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					bool u_xlatb2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2 = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat1.xyz;
					    SV_Target0.w = u_xlat1.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					bool u_xlatb2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2 = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat1.xyz;
					    SV_Target0.w = u_xlat1.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendAdd" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					bool u_xlatb2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2 = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat1.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat1.x = (-u_xlat1.x) + 1.0;
					    u_xlat1.x = u_xlat1.x * _ProjectionParams.z;
					    u_xlat1.x = max(u_xlat1.x, 0.0);
					    u_xlat1.x = u_xlat1.x * unity_FogParams.x;
					    u_xlat1.x = u_xlat1.x * (-u_xlat1.x);
					    u_xlat1.x = exp2(u_xlat1.x);
					    SV_Target0.xyz = u_xlat0.xyz * u_xlat1.xxx;
					    SV_Target0.w = u_xlat0.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					bool u_xlatb2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2 = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat1.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat1.x = (-u_xlat1.x) + 1.0;
					    u_xlat1.x = u_xlat1.x * _ProjectionParams.z;
					    u_xlat1.x = max(u_xlat1.x, 0.0);
					    u_xlat1.x = u_xlat1.x * unity_FogParams.x;
					    u_xlat1.x = u_xlat1.x * (-u_xlat1.x);
					    u_xlat1.x = exp2(u_xlat1.x);
					    SV_Target0.xyz = u_xlat0.xyz * u_xlat1.xxx;
					    SV_Target0.w = u_xlat0.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendAdd" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[7];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					bool u_xlatb2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2 = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    SV_Target0.w = u_xlat0.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[6];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					bool u_xlatb2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2 = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    SV_Target0.w = u_xlat0.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendAdd" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[7];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					bool u_xlatb2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2 = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    SV_Target0.w = u_xlat0.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[6];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					bool u_xlatb2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2 = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    SV_Target0.w = u_xlat0.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendAdd" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					bool u_xlatb2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2 = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat1.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat1.x = (-u_xlat1.x) + 1.0;
					    u_xlat1.x = u_xlat1.x * _ProjectionParams.z;
					    u_xlat1.x = max(u_xlat1.x, 0.0);
					    u_xlat1.x = u_xlat1.x * unity_FogParams.z + unity_FogParams.w;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.xyz * u_xlat1.xxx;
					    SV_Target0.w = u_xlat0.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					bool u_xlatb2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2 = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat1.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat1.x = (-u_xlat1.x) + 1.0;
					    u_xlat1.x = u_xlat1.x * _ProjectionParams.z;
					    u_xlat1.x = max(u_xlat1.x, 0.0);
					    u_xlat1.x = u_xlat1.x * unity_FogParams.z + unity_FogParams.w;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.xyz * u_xlat1.xxx;
					    SV_Target0.w = u_xlat0.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendAdd" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					bool u_xlatb2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2 = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat1.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat1.x = (-u_xlat1.x) + 1.0;
					    u_xlat1.x = u_xlat1.x * _ProjectionParams.z;
					    u_xlat1.x = max(u_xlat1.x, 0.0);
					    u_xlat1.x = u_xlat1.x * unity_FogParams.z + unity_FogParams.w;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.xyz * u_xlat1.xxx;
					    SV_Target0.w = u_xlat0.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					bool u_xlatb2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2 = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat1.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat1.x = (-u_xlat1.x) + 1.0;
					    u_xlat1.x = u_xlat1.x * _ProjectionParams.z;
					    u_xlat1.x = max(u_xlat1.x, 0.0);
					    u_xlat1.x = u_xlat1.x * unity_FogParams.z + unity_FogParams.w;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.xyz * u_xlat1.xxx;
					    SV_Target0.w = u_xlat0.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendAdd" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					bool u_xlatb2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2 = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat1.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat1.x = (-u_xlat1.x) + 1.0;
					    u_xlat1.x = u_xlat1.x * _ProjectionParams.z;
					    u_xlat1.x = max(u_xlat1.x, 0.0);
					    u_xlat1.x = u_xlat1.x * unity_FogParams.y;
					    u_xlat1.x = exp2((-u_xlat1.x));
					    u_xlat1.x = min(u_xlat1.x, 1.0);
					    SV_Target0.xyz = u_xlat0.xyz * u_xlat1.xxx;
					    SV_Target0.w = u_xlat0.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					bool u_xlatb2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2 = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat1.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat1.x = (-u_xlat1.x) + 1.0;
					    u_xlat1.x = u_xlat1.x * _ProjectionParams.z;
					    u_xlat1.x = max(u_xlat1.x, 0.0);
					    u_xlat1.x = u_xlat1.x * unity_FogParams.y;
					    u_xlat1.x = exp2((-u_xlat1.x));
					    u_xlat1.x = min(u_xlat1.x, 1.0);
					    SV_Target0.xyz = u_xlat0.xyz * u_xlat1.xxx;
					    SV_Target0.w = u_xlat0.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendAdd" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					bool u_xlatb2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2 = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat1.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat1.x = (-u_xlat1.x) + 1.0;
					    u_xlat1.x = u_xlat1.x * _ProjectionParams.z;
					    u_xlat1.x = max(u_xlat1.x, 0.0);
					    u_xlat1.x = u_xlat1.x * unity_FogParams.y;
					    u_xlat1.x = exp2((-u_xlat1.x));
					    u_xlat1.x = min(u_xlat1.x, 1.0);
					    SV_Target0.xyz = u_xlat0.xyz * u_xlat1.xxx;
					    SV_Target0.w = u_xlat0.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					bool u_xlatb2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2 = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat1.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat1.x = (-u_xlat1.x) + 1.0;
					    u_xlat1.x = u_xlat1.x * _ProjectionParams.z;
					    u_xlat1.x = max(u_xlat1.x, 0.0);
					    u_xlat1.x = u_xlat1.x * unity_FogParams.y;
					    u_xlat1.x = exp2((-u_xlat1.x));
					    u_xlat1.x = min(u_xlat1.x, 1.0);
					    SV_Target0.xyz = u_xlat0.xyz * u_xlat1.xxx;
					    SV_Target0.w = u_xlat0.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendAdd" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					bool u_xlatb2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2 = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat1.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat1.x = (-u_xlat1.x) + 1.0;
					    u_xlat1.x = u_xlat1.x * _ProjectionParams.z;
					    u_xlat1.x = max(u_xlat1.x, 0.0);
					    u_xlat1.x = u_xlat1.x * unity_FogParams.x;
					    u_xlat1.x = u_xlat1.x * (-u_xlat1.x);
					    u_xlat1.x = exp2(u_xlat1.x);
					    SV_Target0.xyz = u_xlat0.xyz * u_xlat1.xxx;
					    SV_Target0.w = u_xlat0.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					bool u_xlatb2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2 = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat1.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat1.x = (-u_xlat1.x) + 1.0;
					    u_xlat1.x = u_xlat1.x * _ProjectionParams.z;
					    u_xlat1.x = max(u_xlat1.x, 0.0);
					    u_xlat1.x = u_xlat1.x * unity_FogParams.x;
					    u_xlat1.x = u_xlat1.x * (-u_xlat1.x);
					    u_xlat1.x = exp2(u_xlat1.x);
					    SV_Target0.xyz = u_xlat0.xyz * u_xlat1.xxx;
					    SV_Target0.w = u_xlat0.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendAdd" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					bool u_xlatb2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2 = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat1.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat1.x = (-u_xlat1.x) + 1.0;
					    u_xlat1.x = u_xlat1.x * _ProjectionParams.z;
					    u_xlat1.x = max(u_xlat1.x, 0.0);
					    u_xlat1.x = u_xlat1.x * unity_FogParams.x;
					    u_xlat1.x = u_xlat1.x * (-u_xlat1.x);
					    u_xlat1.x = exp2(u_xlat1.x);
					    SV_Target0.xyz = u_xlat0.xyz * u_xlat1.xxx;
					    SV_Target0.w = u_xlat0.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					bool u_xlatb2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2 = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat1.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat1.x = (-u_xlat1.x) + 1.0;
					    u_xlat1.x = u_xlat1.x * _ProjectionParams.z;
					    u_xlat1.x = max(u_xlat1.x, 0.0);
					    u_xlat1.x = u_xlat1.x * unity_FogParams.x;
					    u_xlat1.x = u_xlat1.x * (-u_xlat1.x);
					    u_xlat1.x = exp2(u_xlat1.x);
					    SV_Target0.xyz = u_xlat0.xyz * u_xlat1.xxx;
					    SV_Target0.w = u_xlat0.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendAdd" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					float u_xlat1;
					bool u_xlatb1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1 = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat0.w = u_xlat0.w * u_xlat1;
					    u_xlat0 = u_xlat0.wxyz * vs_COLOR0.wxyz;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.yzw;
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					float u_xlat1;
					bool u_xlatb1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1 = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat0.w = u_xlat0.w * u_xlat1;
					    u_xlat0 = u_xlat0.wxyz * vs_COLOR0.wxyz;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.yzw;
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendAdd" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[7];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					bool u_xlatb2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2 = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0.wxyz * u_xlat1.wxyz;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.yzw;
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[6];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					bool u_xlatb2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2 = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0.wxyz * u_xlat1.wxyz;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.yzw;
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendAdd" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					bool u_xlatb2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2 = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2;
					    u_xlat1 = u_xlat1.wxyz * vs_COLOR0.wxyz;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat1.yzw;
					    u_xlat1.x = u_xlat1.x;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat1.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					bool u_xlatb2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2 = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2;
					    u_xlat1 = u_xlat1.wxyz * vs_COLOR0.wxyz;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat1.yzw;
					    u_xlat1.x = u_xlat1.x;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat1.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendAdd" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					bool u_xlatb2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2 = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0.wxyz * u_xlat1.wxyz;
					    u_xlat1.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat1.x = (-u_xlat1.x) + 1.0;
					    u_xlat1.x = u_xlat1.x * _ProjectionParams.z;
					    u_xlat1.x = max(u_xlat1.x, 0.0);
					    u_xlat1.x = u_xlat1.x * unity_FogParams.z + unity_FogParams.w;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.yzw * u_xlat1.xxx;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					bool u_xlatb2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2 = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0.wxyz * u_xlat1.wxyz;
					    u_xlat1.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat1.x = (-u_xlat1.x) + 1.0;
					    u_xlat1.x = u_xlat1.x * _ProjectionParams.z;
					    u_xlat1.x = max(u_xlat1.x, 0.0);
					    u_xlat1.x = u_xlat1.x * unity_FogParams.z + unity_FogParams.w;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.yzw * u_xlat1.xxx;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendAdd" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					bool u_xlatb2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2 = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2;
					    u_xlat1 = u_xlat1.wxyz * vs_COLOR0.wxyz;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat1.yzw;
					    u_xlat1.x = u_xlat1.x;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat1.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					bool u_xlatb2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2 = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2;
					    u_xlat1 = u_xlat1.wxyz * vs_COLOR0.wxyz;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat1.yzw;
					    u_xlat1.x = u_xlat1.x;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat1.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendAdd" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					bool u_xlatb2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2 = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0.wxyz * u_xlat1.wxyz;
					    u_xlat1.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat1.x = (-u_xlat1.x) + 1.0;
					    u_xlat1.x = u_xlat1.x * _ProjectionParams.z;
					    u_xlat1.x = max(u_xlat1.x, 0.0);
					    u_xlat1.x = u_xlat1.x * unity_FogParams.y;
					    u_xlat1.x = exp2((-u_xlat1.x));
					    u_xlat1.x = min(u_xlat1.x, 1.0);
					    SV_Target0.xyz = u_xlat0.yzw * u_xlat1.xxx;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					bool u_xlatb2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2 = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0.wxyz * u_xlat1.wxyz;
					    u_xlat1.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat1.x = (-u_xlat1.x) + 1.0;
					    u_xlat1.x = u_xlat1.x * _ProjectionParams.z;
					    u_xlat1.x = max(u_xlat1.x, 0.0);
					    u_xlat1.x = u_xlat1.x * unity_FogParams.y;
					    u_xlat1.x = exp2((-u_xlat1.x));
					    u_xlat1.x = min(u_xlat1.x, 1.0);
					    SV_Target0.xyz = u_xlat0.yzw * u_xlat1.xxx;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendAdd" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					bool u_xlatb2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2 = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2;
					    u_xlat1 = u_xlat1.wxyz * vs_COLOR0.wxyz;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat1.yzw;
					    u_xlat1.x = u_xlat1.x;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat1.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					bool u_xlatb2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2 = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2;
					    u_xlat1 = u_xlat1.wxyz * vs_COLOR0.wxyz;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat1.yzw;
					    u_xlat1.x = u_xlat1.x;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat1.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendAdd" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					bool u_xlatb2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2 = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0.wxyz * u_xlat1.wxyz;
					    u_xlat1.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat1.x = (-u_xlat1.x) + 1.0;
					    u_xlat1.x = u_xlat1.x * _ProjectionParams.z;
					    u_xlat1.x = max(u_xlat1.x, 0.0);
					    u_xlat1.x = u_xlat1.x * unity_FogParams.x;
					    u_xlat1.x = u_xlat1.x * (-u_xlat1.x);
					    u_xlat1.x = exp2(u_xlat1.x);
					    SV_Target0.xyz = u_xlat0.yzw * u_xlat1.xxx;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					bool u_xlatb2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2 = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0.wxyz * u_xlat1.wxyz;
					    u_xlat1.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat1.x = (-u_xlat1.x) + 1.0;
					    u_xlat1.x = u_xlat1.x * _ProjectionParams.z;
					    u_xlat1.x = max(u_xlat1.x, 0.0);
					    u_xlat1.x = u_xlat1.x * unity_FogParams.x;
					    u_xlat1.x = u_xlat1.x * (-u_xlat1.x);
					    u_xlat1.x = exp2(u_xlat1.x);
					    SV_Target0.xyz = u_xlat0.yzw * u_xlat1.xxx;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendAdd" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[7];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					bool u_xlatb2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2 = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0.wxyz * u_xlat1.wxyz;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.yzw;
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[6];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					bool u_xlatb2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2 = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0.wxyz * u_xlat1.wxyz;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.yzw;
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendAdd" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[7];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					bool u_xlatb2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2 = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0.wxyz * u_xlat1.wxyz;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.yzw;
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[6];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					bool u_xlatb2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2 = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0.wxyz * u_xlat1.wxyz;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.yzw;
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendAdd" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					bool u_xlatb2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2 = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0.wxyz * u_xlat1.wxyz;
					    u_xlat1.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat1.x = (-u_xlat1.x) + 1.0;
					    u_xlat1.x = u_xlat1.x * _ProjectionParams.z;
					    u_xlat1.x = max(u_xlat1.x, 0.0);
					    u_xlat1.x = u_xlat1.x * unity_FogParams.z + unity_FogParams.w;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.yzw * u_xlat1.xxx;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					bool u_xlatb2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2 = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0.wxyz * u_xlat1.wxyz;
					    u_xlat1.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat1.x = (-u_xlat1.x) + 1.0;
					    u_xlat1.x = u_xlat1.x * _ProjectionParams.z;
					    u_xlat1.x = max(u_xlat1.x, 0.0);
					    u_xlat1.x = u_xlat1.x * unity_FogParams.z + unity_FogParams.w;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.yzw * u_xlat1.xxx;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendAdd" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					bool u_xlatb2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2 = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0.wxyz * u_xlat1.wxyz;
					    u_xlat1.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat1.x = (-u_xlat1.x) + 1.0;
					    u_xlat1.x = u_xlat1.x * _ProjectionParams.z;
					    u_xlat1.x = max(u_xlat1.x, 0.0);
					    u_xlat1.x = u_xlat1.x * unity_FogParams.z + unity_FogParams.w;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.yzw * u_xlat1.xxx;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					bool u_xlatb2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2 = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0.wxyz * u_xlat1.wxyz;
					    u_xlat1.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat1.x = (-u_xlat1.x) + 1.0;
					    u_xlat1.x = u_xlat1.x * _ProjectionParams.z;
					    u_xlat1.x = max(u_xlat1.x, 0.0);
					    u_xlat1.x = u_xlat1.x * unity_FogParams.z + unity_FogParams.w;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.yzw * u_xlat1.xxx;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendAdd" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					bool u_xlatb2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2 = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0.wxyz * u_xlat1.wxyz;
					    u_xlat1.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat1.x = (-u_xlat1.x) + 1.0;
					    u_xlat1.x = u_xlat1.x * _ProjectionParams.z;
					    u_xlat1.x = max(u_xlat1.x, 0.0);
					    u_xlat1.x = u_xlat1.x * unity_FogParams.y;
					    u_xlat1.x = exp2((-u_xlat1.x));
					    u_xlat1.x = min(u_xlat1.x, 1.0);
					    SV_Target0.xyz = u_xlat0.yzw * u_xlat1.xxx;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					bool u_xlatb2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2 = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0.wxyz * u_xlat1.wxyz;
					    u_xlat1.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat1.x = (-u_xlat1.x) + 1.0;
					    u_xlat1.x = u_xlat1.x * _ProjectionParams.z;
					    u_xlat1.x = max(u_xlat1.x, 0.0);
					    u_xlat1.x = u_xlat1.x * unity_FogParams.y;
					    u_xlat1.x = exp2((-u_xlat1.x));
					    u_xlat1.x = min(u_xlat1.x, 1.0);
					    SV_Target0.xyz = u_xlat0.yzw * u_xlat1.xxx;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendAdd" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					bool u_xlatb2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2 = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0.wxyz * u_xlat1.wxyz;
					    u_xlat1.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat1.x = (-u_xlat1.x) + 1.0;
					    u_xlat1.x = u_xlat1.x * _ProjectionParams.z;
					    u_xlat1.x = max(u_xlat1.x, 0.0);
					    u_xlat1.x = u_xlat1.x * unity_FogParams.y;
					    u_xlat1.x = exp2((-u_xlat1.x));
					    u_xlat1.x = min(u_xlat1.x, 1.0);
					    SV_Target0.xyz = u_xlat0.yzw * u_xlat1.xxx;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					bool u_xlatb2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2 = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0.wxyz * u_xlat1.wxyz;
					    u_xlat1.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat1.x = (-u_xlat1.x) + 1.0;
					    u_xlat1.x = u_xlat1.x * _ProjectionParams.z;
					    u_xlat1.x = max(u_xlat1.x, 0.0);
					    u_xlat1.x = u_xlat1.x * unity_FogParams.y;
					    u_xlat1.x = exp2((-u_xlat1.x));
					    u_xlat1.x = min(u_xlat1.x, 1.0);
					    SV_Target0.xyz = u_xlat0.yzw * u_xlat1.xxx;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendAdd" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					bool u_xlatb2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2 = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0.wxyz * u_xlat1.wxyz;
					    u_xlat1.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat1.x = (-u_xlat1.x) + 1.0;
					    u_xlat1.x = u_xlat1.x * _ProjectionParams.z;
					    u_xlat1.x = max(u_xlat1.x, 0.0);
					    u_xlat1.x = u_xlat1.x * unity_FogParams.x;
					    u_xlat1.x = u_xlat1.x * (-u_xlat1.x);
					    u_xlat1.x = exp2(u_xlat1.x);
					    SV_Target0.xyz = u_xlat0.yzw * u_xlat1.xxx;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					bool u_xlatb2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2 = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0.wxyz * u_xlat1.wxyz;
					    u_xlat1.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat1.x = (-u_xlat1.x) + 1.0;
					    u_xlat1.x = u_xlat1.x * _ProjectionParams.z;
					    u_xlat1.x = max(u_xlat1.x, 0.0);
					    u_xlat1.x = u_xlat1.x * unity_FogParams.x;
					    u_xlat1.x = u_xlat1.x * (-u_xlat1.x);
					    u_xlat1.x = exp2(u_xlat1.x);
					    SV_Target0.xyz = u_xlat0.yzw * u_xlat1.xxx;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendAdd" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					bool u_xlatb2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2 = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0.wxyz * u_xlat1.wxyz;
					    u_xlat1.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat1.x = (-u_xlat1.x) + 1.0;
					    u_xlat1.x = u_xlat1.x * _ProjectionParams.z;
					    u_xlat1.x = max(u_xlat1.x, 0.0);
					    u_xlat1.x = u_xlat1.x * unity_FogParams.x;
					    u_xlat1.x = u_xlat1.x * (-u_xlat1.x);
					    u_xlat1.x = exp2(u_xlat1.x);
					    SV_Target0.xyz = u_xlat0.yzw * u_xlat1.xxx;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					bool u_xlatb2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2 = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0.wxyz * u_xlat1.wxyz;
					    u_xlat1.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat1.x = (-u_xlat1.x) + 1.0;
					    u_xlat1.x = u_xlat1.x * _ProjectionParams.z;
					    u_xlat1.x = max(u_xlat1.x, 0.0);
					    u_xlat1.x = u_xlat1.x * unity_FogParams.x;
					    u_xlat1.x = u_xlat1.x * (-u_xlat1.x);
					    u_xlat1.x = exp2(u_xlat1.x);
					    SV_Target0.xyz = u_xlat0.yzw * u_xlat1.xxx;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendAdd" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    SV_Target0.xyz = u_xlat2.xyz * vs_COLOR0.xyz;
					    SV_Target0.w = u_xlatb0 ? 1.0 : float(0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    SV_Target0.xyz = u_xlat2.xyz * vs_COLOR0.xyz;
					    SV_Target0.w = u_xlatb0 ? 1.0 : float(0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendAdd" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[7];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb0 = u_xlat1.w>=u_xlat0.x;
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    SV_Target0.xyz = u_xlat2.xyz * vs_COLOR0.xyz;
					    SV_Target0.w = u_xlatb0 ? 1.0 : float(0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[6];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb0 = u_xlat1.w>=u_xlat0.x;
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    SV_Target0.xyz = u_xlat2.xyz * vs_COLOR0.xyz;
					    SV_Target0.w = u_xlatb0 ? 1.0 : float(0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendAdd" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * vs_COLOR0.xyz;
					    SV_Target0.xyz = u_xlat2.xyz * vec3(u_xlat0);
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    SV_Target0.w = u_xlatb0 ? 1.0 : float(0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * vs_COLOR0.xyz;
					    SV_Target0.xyz = u_xlat2.xyz * vec3(u_xlat0);
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    SV_Target0.w = u_xlatb0 ? 1.0 : float(0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendAdd" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb0 = u_xlat1.w>=u_xlat0.x;
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * vs_COLOR0.xyz;
					    SV_Target0.w = u_xlatb0 ? 1.0 : float(0.0);
					    u_xlat0.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0.x = (-u_xlat0.x) + 1.0;
					    u_xlat0.x = u_xlat0.x * _ProjectionParams.z;
					    u_xlat0.x = max(u_xlat0.x, 0.0);
					    u_xlat0.x = u_xlat0.x * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat2.xyz * u_xlat0.xxx;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb0 = u_xlat1.w>=u_xlat0.x;
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * vs_COLOR0.xyz;
					    SV_Target0.w = u_xlatb0 ? 1.0 : float(0.0);
					    u_xlat0.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0.x = (-u_xlat0.x) + 1.0;
					    u_xlat0.x = u_xlat0.x * _ProjectionParams.z;
					    u_xlat0.x = max(u_xlat0.x, 0.0);
					    u_xlat0.x = u_xlat0.x * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat2.xyz * u_xlat0.xxx;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendAdd" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * vs_COLOR0.xyz;
					    SV_Target0.xyz = u_xlat2.xyz * vec3(u_xlat0);
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    SV_Target0.w = u_xlatb0 ? 1.0 : float(0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * vs_COLOR0.xyz;
					    SV_Target0.xyz = u_xlat2.xyz * vec3(u_xlat0);
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    SV_Target0.w = u_xlatb0 ? 1.0 : float(0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendAdd" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0.x = (-u_xlat0.x) + 1.0;
					    u_xlat0.x = u_xlat0.x * _ProjectionParams.z;
					    u_xlat0.x = max(u_xlat0.x, 0.0);
					    u_xlat0.x = u_xlat0.x * unity_FogParams.y;
					    u_xlat0.x = exp2((-u_xlat0.x));
					    u_xlat0.x = min(u_xlat0.x, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * vs_COLOR0.xyz;
					    SV_Target0.xyz = u_xlat2.xyz * u_xlat0.xxx;
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0.x;
					    SV_Target0.w = u_xlatb0 ? 1.0 : float(0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0.x = (-u_xlat0.x) + 1.0;
					    u_xlat0.x = u_xlat0.x * _ProjectionParams.z;
					    u_xlat0.x = max(u_xlat0.x, 0.0);
					    u_xlat0.x = u_xlat0.x * unity_FogParams.y;
					    u_xlat0.x = exp2((-u_xlat0.x));
					    u_xlat0.x = min(u_xlat0.x, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * vs_COLOR0.xyz;
					    SV_Target0.xyz = u_xlat2.xyz * u_xlat0.xxx;
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0.x;
					    SV_Target0.w = u_xlatb0 ? 1.0 : float(0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendAdd" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * vs_COLOR0.xyz;
					    SV_Target0.xyz = u_xlat2.xyz * vec3(u_xlat0);
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    SV_Target0.w = u_xlatb0 ? 1.0 : float(0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * vs_COLOR0.xyz;
					    SV_Target0.xyz = u_xlat2.xyz * vec3(u_xlat0);
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    SV_Target0.w = u_xlatb0 ? 1.0 : float(0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendAdd" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0.x = (-u_xlat0.x) + 1.0;
					    u_xlat0.x = u_xlat0.x * _ProjectionParams.z;
					    u_xlat0.x = max(u_xlat0.x, 0.0);
					    u_xlat0.x = u_xlat0.x * unity_FogParams.x;
					    u_xlat0.x = u_xlat0.x * (-u_xlat0.x);
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * vs_COLOR0.xyz;
					    SV_Target0.xyz = u_xlat2.xyz * u_xlat0.xxx;
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0.x;
					    SV_Target0.w = u_xlatb0 ? 1.0 : float(0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0.x = (-u_xlat0.x) + 1.0;
					    u_xlat0.x = u_xlat0.x * _ProjectionParams.z;
					    u_xlat0.x = max(u_xlat0.x, 0.0);
					    u_xlat0.x = u_xlat0.x * unity_FogParams.x;
					    u_xlat0.x = u_xlat0.x * (-u_xlat0.x);
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * vs_COLOR0.xyz;
					    SV_Target0.xyz = u_xlat2.xyz * u_xlat0.xxx;
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0.x;
					    SV_Target0.w = u_xlatb0 ? 1.0 : float(0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendAdd" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[7];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb0 = u_xlat1.w>=u_xlat0.x;
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    SV_Target0.xyz = u_xlat2.xyz * vs_COLOR0.xyz;
					    SV_Target0.w = u_xlatb0 ? 1.0 : float(0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[6];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb0 = u_xlat1.w>=u_xlat0.x;
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    SV_Target0.xyz = u_xlat2.xyz * vs_COLOR0.xyz;
					    SV_Target0.w = u_xlatb0 ? 1.0 : float(0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendAdd" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[7];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb0 = u_xlat1.w>=u_xlat0.x;
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    SV_Target0.xyz = u_xlat2.xyz * vs_COLOR0.xyz;
					    SV_Target0.w = u_xlatb0 ? 1.0 : float(0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[6];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb0 = u_xlat1.w>=u_xlat0.x;
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    SV_Target0.xyz = u_xlat2.xyz * vs_COLOR0.xyz;
					    SV_Target0.w = u_xlatb0 ? 1.0 : float(0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendAdd" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb0 = u_xlat1.w>=u_xlat0.x;
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * vs_COLOR0.xyz;
					    SV_Target0.w = u_xlatb0 ? 1.0 : float(0.0);
					    u_xlat0.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0.x = (-u_xlat0.x) + 1.0;
					    u_xlat0.x = u_xlat0.x * _ProjectionParams.z;
					    u_xlat0.x = max(u_xlat0.x, 0.0);
					    u_xlat0.x = u_xlat0.x * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat2.xyz * u_xlat0.xxx;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb0 = u_xlat1.w>=u_xlat0.x;
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * vs_COLOR0.xyz;
					    SV_Target0.w = u_xlatb0 ? 1.0 : float(0.0);
					    u_xlat0.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0.x = (-u_xlat0.x) + 1.0;
					    u_xlat0.x = u_xlat0.x * _ProjectionParams.z;
					    u_xlat0.x = max(u_xlat0.x, 0.0);
					    u_xlat0.x = u_xlat0.x * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat2.xyz * u_xlat0.xxx;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendAdd" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb0 = u_xlat1.w>=u_xlat0.x;
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * vs_COLOR0.xyz;
					    SV_Target0.w = u_xlatb0 ? 1.0 : float(0.0);
					    u_xlat0.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0.x = (-u_xlat0.x) + 1.0;
					    u_xlat0.x = u_xlat0.x * _ProjectionParams.z;
					    u_xlat0.x = max(u_xlat0.x, 0.0);
					    u_xlat0.x = u_xlat0.x * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat2.xyz * u_xlat0.xxx;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb0 = u_xlat1.w>=u_xlat0.x;
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * vs_COLOR0.xyz;
					    SV_Target0.w = u_xlatb0 ? 1.0 : float(0.0);
					    u_xlat0.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0.x = (-u_xlat0.x) + 1.0;
					    u_xlat0.x = u_xlat0.x * _ProjectionParams.z;
					    u_xlat0.x = max(u_xlat0.x, 0.0);
					    u_xlat0.x = u_xlat0.x * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat2.xyz * u_xlat0.xxx;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendAdd" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0.x = (-u_xlat0.x) + 1.0;
					    u_xlat0.x = u_xlat0.x * _ProjectionParams.z;
					    u_xlat0.x = max(u_xlat0.x, 0.0);
					    u_xlat0.x = u_xlat0.x * unity_FogParams.y;
					    u_xlat0.x = exp2((-u_xlat0.x));
					    u_xlat0.x = min(u_xlat0.x, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * vs_COLOR0.xyz;
					    SV_Target0.xyz = u_xlat2.xyz * u_xlat0.xxx;
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0.x;
					    SV_Target0.w = u_xlatb0 ? 1.0 : float(0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0.x = (-u_xlat0.x) + 1.0;
					    u_xlat0.x = u_xlat0.x * _ProjectionParams.z;
					    u_xlat0.x = max(u_xlat0.x, 0.0);
					    u_xlat0.x = u_xlat0.x * unity_FogParams.y;
					    u_xlat0.x = exp2((-u_xlat0.x));
					    u_xlat0.x = min(u_xlat0.x, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * vs_COLOR0.xyz;
					    SV_Target0.xyz = u_xlat2.xyz * u_xlat0.xxx;
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0.x;
					    SV_Target0.w = u_xlatb0 ? 1.0 : float(0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendAdd" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0.x = (-u_xlat0.x) + 1.0;
					    u_xlat0.x = u_xlat0.x * _ProjectionParams.z;
					    u_xlat0.x = max(u_xlat0.x, 0.0);
					    u_xlat0.x = u_xlat0.x * unity_FogParams.y;
					    u_xlat0.x = exp2((-u_xlat0.x));
					    u_xlat0.x = min(u_xlat0.x, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * vs_COLOR0.xyz;
					    SV_Target0.xyz = u_xlat2.xyz * u_xlat0.xxx;
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0.x;
					    SV_Target0.w = u_xlatb0 ? 1.0 : float(0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0.x = (-u_xlat0.x) + 1.0;
					    u_xlat0.x = u_xlat0.x * _ProjectionParams.z;
					    u_xlat0.x = max(u_xlat0.x, 0.0);
					    u_xlat0.x = u_xlat0.x * unity_FogParams.y;
					    u_xlat0.x = exp2((-u_xlat0.x));
					    u_xlat0.x = min(u_xlat0.x, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * vs_COLOR0.xyz;
					    SV_Target0.xyz = u_xlat2.xyz * u_xlat0.xxx;
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0.x;
					    SV_Target0.w = u_xlatb0 ? 1.0 : float(0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendAdd" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0.x = (-u_xlat0.x) + 1.0;
					    u_xlat0.x = u_xlat0.x * _ProjectionParams.z;
					    u_xlat0.x = max(u_xlat0.x, 0.0);
					    u_xlat0.x = u_xlat0.x * unity_FogParams.x;
					    u_xlat0.x = u_xlat0.x * (-u_xlat0.x);
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * vs_COLOR0.xyz;
					    SV_Target0.xyz = u_xlat2.xyz * u_xlat0.xxx;
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0.x;
					    SV_Target0.w = u_xlatb0 ? 1.0 : float(0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0.x = (-u_xlat0.x) + 1.0;
					    u_xlat0.x = u_xlat0.x * _ProjectionParams.z;
					    u_xlat0.x = max(u_xlat0.x, 0.0);
					    u_xlat0.x = u_xlat0.x * unity_FogParams.x;
					    u_xlat0.x = u_xlat0.x * (-u_xlat0.x);
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * vs_COLOR0.xyz;
					    SV_Target0.xyz = u_xlat2.xyz * u_xlat0.xxx;
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0.x;
					    SV_Target0.w = u_xlatb0 ? 1.0 : float(0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendAdd" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0.x = (-u_xlat0.x) + 1.0;
					    u_xlat0.x = u_xlat0.x * _ProjectionParams.z;
					    u_xlat0.x = max(u_xlat0.x, 0.0);
					    u_xlat0.x = u_xlat0.x * unity_FogParams.x;
					    u_xlat0.x = u_xlat0.x * (-u_xlat0.x);
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * vs_COLOR0.xyz;
					    SV_Target0.xyz = u_xlat2.xyz * u_xlat0.xxx;
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0.x;
					    SV_Target0.w = u_xlatb0 ? 1.0 : float(0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0.x = (-u_xlat0.x) + 1.0;
					    u_xlat0.x = u_xlat0.x * _ProjectionParams.z;
					    u_xlat0.x = max(u_xlat0.x, 0.0);
					    u_xlat0.x = u_xlat0.x * unity_FogParams.x;
					    u_xlat0.x = u_xlat0.x * (-u_xlat0.x);
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * vs_COLOR0.xyz;
					    SV_Target0.xyz = u_xlat2.xyz * u_xlat0.xxx;
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0.x;
					    SV_Target0.w = u_xlatb0 ? 1.0 : float(0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendAdd" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    SV_Target0.xyz = u_xlat2.xyz * vs_COLOR0.xyz;
					    u_xlat0 = u_xlatb0 ? 1.0 : float(0.0);
					    SV_Target0.w = u_xlat0 * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    SV_Target0.xyz = u_xlat2.xyz * vs_COLOR0.xyz;
					    u_xlat0 = u_xlatb0 ? 1.0 : float(0.0);
					    SV_Target0.w = u_xlat0 * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendAdd" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[7];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb0 = u_xlat1.w>=u_xlat0.x;
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    SV_Target0.xyz = u_xlat2.xyz * vs_COLOR0.xyz;
					    u_xlat0.x = u_xlatb0 ? 1.0 : float(0.0);
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[6];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb0 = u_xlat1.w>=u_xlat0.x;
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    SV_Target0.xyz = u_xlat2.xyz * vs_COLOR0.xyz;
					    u_xlat0.x = u_xlatb0 ? 1.0 : float(0.0);
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendAdd" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * vs_COLOR0.xyz;
					    SV_Target0.xyz = u_xlat2.xyz * vec3(u_xlat0);
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    u_xlat0 = u_xlatb0 ? 1.0 : float(0.0);
					    SV_Target0.w = u_xlat0 * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * vs_COLOR0.xyz;
					    SV_Target0.xyz = u_xlat2.xyz * vec3(u_xlat0);
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    u_xlat0 = u_xlatb0 ? 1.0 : float(0.0);
					    SV_Target0.w = u_xlat0 * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendAdd" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb0 = u_xlat1.w>=u_xlat0.x;
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * vs_COLOR0.xyz;
					    u_xlat0.x = u_xlatb0 ? 1.0 : float(0.0);
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    u_xlat0.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0.x = (-u_xlat0.x) + 1.0;
					    u_xlat0.x = u_xlat0.x * _ProjectionParams.z;
					    u_xlat0.x = max(u_xlat0.x, 0.0);
					    u_xlat0.x = u_xlat0.x * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat2.xyz * u_xlat0.xxx;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb0 = u_xlat1.w>=u_xlat0.x;
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * vs_COLOR0.xyz;
					    u_xlat0.x = u_xlatb0 ? 1.0 : float(0.0);
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    u_xlat0.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0.x = (-u_xlat0.x) + 1.0;
					    u_xlat0.x = u_xlat0.x * _ProjectionParams.z;
					    u_xlat0.x = max(u_xlat0.x, 0.0);
					    u_xlat0.x = u_xlat0.x * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat2.xyz * u_xlat0.xxx;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendAdd" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * vs_COLOR0.xyz;
					    SV_Target0.xyz = u_xlat2.xyz * vec3(u_xlat0);
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    u_xlat0 = u_xlatb0 ? 1.0 : float(0.0);
					    SV_Target0.w = u_xlat0 * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * vs_COLOR0.xyz;
					    SV_Target0.xyz = u_xlat2.xyz * vec3(u_xlat0);
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    u_xlat0 = u_xlatb0 ? 1.0 : float(0.0);
					    SV_Target0.w = u_xlat0 * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendAdd" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb0 = u_xlat1.w>=u_xlat0.x;
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * vs_COLOR0.xyz;
					    u_xlat0.x = u_xlatb0 ? 1.0 : float(0.0);
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    u_xlat0.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0.x = (-u_xlat0.x) + 1.0;
					    u_xlat0.x = u_xlat0.x * _ProjectionParams.z;
					    u_xlat0.x = max(u_xlat0.x, 0.0);
					    u_xlat0.x = u_xlat0.x * unity_FogParams.y;
					    u_xlat0.x = exp2((-u_xlat0.x));
					    u_xlat0.x = min(u_xlat0.x, 1.0);
					    SV_Target0.xyz = u_xlat2.xyz * u_xlat0.xxx;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb0 = u_xlat1.w>=u_xlat0.x;
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * vs_COLOR0.xyz;
					    u_xlat0.x = u_xlatb0 ? 1.0 : float(0.0);
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    u_xlat0.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0.x = (-u_xlat0.x) + 1.0;
					    u_xlat0.x = u_xlat0.x * _ProjectionParams.z;
					    u_xlat0.x = max(u_xlat0.x, 0.0);
					    u_xlat0.x = u_xlat0.x * unity_FogParams.y;
					    u_xlat0.x = exp2((-u_xlat0.x));
					    u_xlat0.x = min(u_xlat0.x, 1.0);
					    SV_Target0.xyz = u_xlat2.xyz * u_xlat0.xxx;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendAdd" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * vs_COLOR0.xyz;
					    SV_Target0.xyz = u_xlat2.xyz * vec3(u_xlat0);
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    u_xlat0 = u_xlatb0 ? 1.0 : float(0.0);
					    SV_Target0.w = u_xlat0 * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * vs_COLOR0.xyz;
					    SV_Target0.xyz = u_xlat2.xyz * vec3(u_xlat0);
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    u_xlat0 = u_xlatb0 ? 1.0 : float(0.0);
					    SV_Target0.w = u_xlat0 * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendAdd" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb0 = u_xlat1.w>=u_xlat0.x;
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * vs_COLOR0.xyz;
					    u_xlat0.x = u_xlatb0 ? 1.0 : float(0.0);
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    u_xlat0.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0.x = (-u_xlat0.x) + 1.0;
					    u_xlat0.x = u_xlat0.x * _ProjectionParams.z;
					    u_xlat0.x = max(u_xlat0.x, 0.0);
					    u_xlat0.x = u_xlat0.x * unity_FogParams.x;
					    u_xlat0.x = u_xlat0.x * (-u_xlat0.x);
					    u_xlat0.x = exp2(u_xlat0.x);
					    SV_Target0.xyz = u_xlat2.xyz * u_xlat0.xxx;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb0 = u_xlat1.w>=u_xlat0.x;
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * vs_COLOR0.xyz;
					    u_xlat0.x = u_xlatb0 ? 1.0 : float(0.0);
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    u_xlat0.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0.x = (-u_xlat0.x) + 1.0;
					    u_xlat0.x = u_xlat0.x * _ProjectionParams.z;
					    u_xlat0.x = max(u_xlat0.x, 0.0);
					    u_xlat0.x = u_xlat0.x * unity_FogParams.x;
					    u_xlat0.x = u_xlat0.x * (-u_xlat0.x);
					    u_xlat0.x = exp2(u_xlat0.x);
					    SV_Target0.xyz = u_xlat2.xyz * u_xlat0.xxx;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendAdd" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[7];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb0 = u_xlat1.w>=u_xlat0.x;
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    SV_Target0.xyz = u_xlat2.xyz * vs_COLOR0.xyz;
					    u_xlat0.x = u_xlatb0 ? 1.0 : float(0.0);
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[6];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb0 = u_xlat1.w>=u_xlat0.x;
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    SV_Target0.xyz = u_xlat2.xyz * vs_COLOR0.xyz;
					    u_xlat0.x = u_xlatb0 ? 1.0 : float(0.0);
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendAdd" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[7];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb0 = u_xlat1.w>=u_xlat0.x;
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    SV_Target0.xyz = u_xlat2.xyz * vs_COLOR0.xyz;
					    u_xlat0.x = u_xlatb0 ? 1.0 : float(0.0);
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[6];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb0 = u_xlat1.w>=u_xlat0.x;
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    SV_Target0.xyz = u_xlat2.xyz * vs_COLOR0.xyz;
					    u_xlat0.x = u_xlatb0 ? 1.0 : float(0.0);
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendAdd" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb0 = u_xlat1.w>=u_xlat0.x;
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * vs_COLOR0.xyz;
					    u_xlat0.x = u_xlatb0 ? 1.0 : float(0.0);
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    u_xlat0.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0.x = (-u_xlat0.x) + 1.0;
					    u_xlat0.x = u_xlat0.x * _ProjectionParams.z;
					    u_xlat0.x = max(u_xlat0.x, 0.0);
					    u_xlat0.x = u_xlat0.x * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat2.xyz * u_xlat0.xxx;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb0 = u_xlat1.w>=u_xlat0.x;
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * vs_COLOR0.xyz;
					    u_xlat0.x = u_xlatb0 ? 1.0 : float(0.0);
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    u_xlat0.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0.x = (-u_xlat0.x) + 1.0;
					    u_xlat0.x = u_xlat0.x * _ProjectionParams.z;
					    u_xlat0.x = max(u_xlat0.x, 0.0);
					    u_xlat0.x = u_xlat0.x * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat2.xyz * u_xlat0.xxx;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendAdd" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb0 = u_xlat1.w>=u_xlat0.x;
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * vs_COLOR0.xyz;
					    u_xlat0.x = u_xlatb0 ? 1.0 : float(0.0);
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    u_xlat0.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0.x = (-u_xlat0.x) + 1.0;
					    u_xlat0.x = u_xlat0.x * _ProjectionParams.z;
					    u_xlat0.x = max(u_xlat0.x, 0.0);
					    u_xlat0.x = u_xlat0.x * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat2.xyz * u_xlat0.xxx;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb0 = u_xlat1.w>=u_xlat0.x;
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * vs_COLOR0.xyz;
					    u_xlat0.x = u_xlatb0 ? 1.0 : float(0.0);
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    u_xlat0.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0.x = (-u_xlat0.x) + 1.0;
					    u_xlat0.x = u_xlat0.x * _ProjectionParams.z;
					    u_xlat0.x = max(u_xlat0.x, 0.0);
					    u_xlat0.x = u_xlat0.x * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat2.xyz * u_xlat0.xxx;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendAdd" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb0 = u_xlat1.w>=u_xlat0.x;
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * vs_COLOR0.xyz;
					    u_xlat0.x = u_xlatb0 ? 1.0 : float(0.0);
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    u_xlat0.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0.x = (-u_xlat0.x) + 1.0;
					    u_xlat0.x = u_xlat0.x * _ProjectionParams.z;
					    u_xlat0.x = max(u_xlat0.x, 0.0);
					    u_xlat0.x = u_xlat0.x * unity_FogParams.y;
					    u_xlat0.x = exp2((-u_xlat0.x));
					    u_xlat0.x = min(u_xlat0.x, 1.0);
					    SV_Target0.xyz = u_xlat2.xyz * u_xlat0.xxx;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb0 = u_xlat1.w>=u_xlat0.x;
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * vs_COLOR0.xyz;
					    u_xlat0.x = u_xlatb0 ? 1.0 : float(0.0);
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    u_xlat0.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0.x = (-u_xlat0.x) + 1.0;
					    u_xlat0.x = u_xlat0.x * _ProjectionParams.z;
					    u_xlat0.x = max(u_xlat0.x, 0.0);
					    u_xlat0.x = u_xlat0.x * unity_FogParams.y;
					    u_xlat0.x = exp2((-u_xlat0.x));
					    u_xlat0.x = min(u_xlat0.x, 1.0);
					    SV_Target0.xyz = u_xlat2.xyz * u_xlat0.xxx;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendAdd" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb0 = u_xlat1.w>=u_xlat0.x;
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * vs_COLOR0.xyz;
					    u_xlat0.x = u_xlatb0 ? 1.0 : float(0.0);
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    u_xlat0.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0.x = (-u_xlat0.x) + 1.0;
					    u_xlat0.x = u_xlat0.x * _ProjectionParams.z;
					    u_xlat0.x = max(u_xlat0.x, 0.0);
					    u_xlat0.x = u_xlat0.x * unity_FogParams.y;
					    u_xlat0.x = exp2((-u_xlat0.x));
					    u_xlat0.x = min(u_xlat0.x, 1.0);
					    SV_Target0.xyz = u_xlat2.xyz * u_xlat0.xxx;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb0 = u_xlat1.w>=u_xlat0.x;
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * vs_COLOR0.xyz;
					    u_xlat0.x = u_xlatb0 ? 1.0 : float(0.0);
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    u_xlat0.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0.x = (-u_xlat0.x) + 1.0;
					    u_xlat0.x = u_xlat0.x * _ProjectionParams.z;
					    u_xlat0.x = max(u_xlat0.x, 0.0);
					    u_xlat0.x = u_xlat0.x * unity_FogParams.y;
					    u_xlat0.x = exp2((-u_xlat0.x));
					    u_xlat0.x = min(u_xlat0.x, 1.0);
					    SV_Target0.xyz = u_xlat2.xyz * u_xlat0.xxx;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendAdd" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb0 = u_xlat1.w>=u_xlat0.x;
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * vs_COLOR0.xyz;
					    u_xlat0.x = u_xlatb0 ? 1.0 : float(0.0);
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    u_xlat0.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0.x = (-u_xlat0.x) + 1.0;
					    u_xlat0.x = u_xlat0.x * _ProjectionParams.z;
					    u_xlat0.x = max(u_xlat0.x, 0.0);
					    u_xlat0.x = u_xlat0.x * unity_FogParams.x;
					    u_xlat0.x = u_xlat0.x * (-u_xlat0.x);
					    u_xlat0.x = exp2(u_xlat0.x);
					    SV_Target0.xyz = u_xlat2.xyz * u_xlat0.xxx;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb0 = u_xlat1.w>=u_xlat0.x;
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * vs_COLOR0.xyz;
					    u_xlat0.x = u_xlatb0 ? 1.0 : float(0.0);
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    u_xlat0.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0.x = (-u_xlat0.x) + 1.0;
					    u_xlat0.x = u_xlat0.x * _ProjectionParams.z;
					    u_xlat0.x = max(u_xlat0.x, 0.0);
					    u_xlat0.x = u_xlat0.x * unity_FogParams.x;
					    u_xlat0.x = u_xlat0.x * (-u_xlat0.x);
					    u_xlat0.x = exp2(u_xlat0.x);
					    SV_Target0.xyz = u_xlat2.xyz * u_xlat0.xxx;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendAdd" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb0 = u_xlat1.w>=u_xlat0.x;
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * vs_COLOR0.xyz;
					    u_xlat0.x = u_xlatb0 ? 1.0 : float(0.0);
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    u_xlat0.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0.x = (-u_xlat0.x) + 1.0;
					    u_xlat0.x = u_xlat0.x * _ProjectionParams.z;
					    u_xlat0.x = max(u_xlat0.x, 0.0);
					    u_xlat0.x = u_xlat0.x * unity_FogParams.x;
					    u_xlat0.x = u_xlat0.x * (-u_xlat0.x);
					    u_xlat0.x = exp2(u_xlat0.x);
					    SV_Target0.xyz = u_xlat2.xyz * u_xlat0.xxx;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb0 = u_xlat1.w>=u_xlat0.x;
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * vs_COLOR0.xyz;
					    u_xlat0.x = u_xlatb0 ? 1.0 : float(0.0);
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    u_xlat0.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0.x = (-u_xlat0.x) + 1.0;
					    u_xlat0.x = u_xlat0.x * _ProjectionParams.z;
					    u_xlat0.x = max(u_xlat0.x, 0.0);
					    u_xlat0.x = u_xlat0.x * unity_FogParams.x;
					    u_xlat0.x = u_xlat0.x * (-u_xlat0.x);
					    u_xlat0.x = exp2(u_xlat0.x);
					    SV_Target0.xyz = u_xlat2.xyz * u_xlat0.xxx;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendAdd" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat0 = u_xlat0 * vs_COLOR0;
					    SV_Target0.w = u_xlat0.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat0 = u_xlat0 * vs_COLOR0;
					    SV_Target0.w = u_xlat0.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendAdd" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat0 = u_xlat0 * vs_COLOR0;
					    SV_Target0.w = u_xlat0.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat0 = u_xlat0 * vs_COLOR0;
					    SV_Target0.w = u_xlat0.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendAdd" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat1.xyz;
					    SV_Target0.w = u_xlat1.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat1.xyz;
					    SV_Target0.w = u_xlat1.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendAdd" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat1.xyz;
					    SV_Target0.w = u_xlat1.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat1.xyz;
					    SV_Target0.w = u_xlat1.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendAdd" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat1.xyz;
					    SV_Target0.w = u_xlat1.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat1.xyz;
					    SV_Target0.w = u_xlat1.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendAdd" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat1.xyz;
					    SV_Target0.w = u_xlat1.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat1.xyz;
					    SV_Target0.w = u_xlat1.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendAdd" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat1.xyz;
					    SV_Target0.w = u_xlat1.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat1.xyz;
					    SV_Target0.w = u_xlat1.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendAdd" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat1.xyz;
					    SV_Target0.w = u_xlat1.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat1.xyz;
					    SV_Target0.w = u_xlat1.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendAdd" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat0 = u_xlat0 * vs_COLOR0;
					    SV_Target0.w = u_xlat0.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat0 = u_xlat0 * vs_COLOR0;
					    SV_Target0.w = u_xlat0.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendAdd" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat0 = u_xlat0 * vs_COLOR0;
					    SV_Target0.w = u_xlat0.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat0 = u_xlat0 * vs_COLOR0;
					    SV_Target0.w = u_xlat0.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendAdd" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat1.xyz;
					    SV_Target0.w = u_xlat1.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat1.xyz;
					    SV_Target0.w = u_xlat1.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendAdd" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat1.xyz;
					    SV_Target0.w = u_xlat1.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat1.xyz;
					    SV_Target0.w = u_xlat1.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendAdd" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat1.xyz;
					    SV_Target0.w = u_xlat1.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat1.xyz;
					    SV_Target0.w = u_xlat1.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendAdd" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat1.xyz;
					    SV_Target0.w = u_xlat1.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat1.xyz;
					    SV_Target0.w = u_xlat1.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendAdd" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat1.xyz;
					    SV_Target0.w = u_xlat1.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat1.xyz;
					    SV_Target0.w = u_xlat1.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendAdd" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat1.xyz;
					    SV_Target0.w = u_xlat1.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat1.xyz;
					    SV_Target0.w = u_xlat1.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendAdd" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat0 = u_xlat0.wxyz * vs_COLOR0.wxyz;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.yzw;
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat0 = u_xlat0.wxyz * vs_COLOR0.wxyz;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.yzw;
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendAdd" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat0 = u_xlat0.wxyz * vs_COLOR0.wxyz;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.yzw;
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat0 = u_xlat0.wxyz * vs_COLOR0.wxyz;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.yzw;
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendAdd" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1.wxyz * vs_COLOR0.wxyz;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat1.yzw;
					    u_xlat1.x = u_xlat1.x;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat1.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1.wxyz * vs_COLOR0.wxyz;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat1.yzw;
					    u_xlat1.x = u_xlat1.x;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat1.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendAdd" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1.wxyz * vs_COLOR0.wxyz;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat1.yzw;
					    u_xlat1.x = u_xlat1.x;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat1.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1.wxyz * vs_COLOR0.wxyz;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat1.yzw;
					    u_xlat1.x = u_xlat1.x;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat1.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendAdd" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1.wxyz * vs_COLOR0.wxyz;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat1.yzw;
					    u_xlat1.x = u_xlat1.x;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat1.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1.wxyz * vs_COLOR0.wxyz;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat1.yzw;
					    u_xlat1.x = u_xlat1.x;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat1.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendAdd" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1.wxyz * vs_COLOR0.wxyz;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat1.yzw;
					    u_xlat1.x = u_xlat1.x;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat1.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1.wxyz * vs_COLOR0.wxyz;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat1.yzw;
					    u_xlat1.x = u_xlat1.x;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat1.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendAdd" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1.wxyz * vs_COLOR0.wxyz;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat1.yzw;
					    u_xlat1.x = u_xlat1.x;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat1.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1.wxyz * vs_COLOR0.wxyz;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat1.yzw;
					    u_xlat1.x = u_xlat1.x;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat1.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendAdd" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1.wxyz * vs_COLOR0.wxyz;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat1.yzw;
					    u_xlat1.x = u_xlat1.x;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat1.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1.wxyz * vs_COLOR0.wxyz;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat1.yzw;
					    u_xlat1.x = u_xlat1.x;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat1.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendAdd" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat0 = u_xlat0.wxyz * vs_COLOR0.wxyz;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.yzw;
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat0 = u_xlat0.wxyz * vs_COLOR0.wxyz;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.yzw;
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendAdd" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat0 = u_xlat0.wxyz * vs_COLOR0.wxyz;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.yzw;
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat0 = u_xlat0.wxyz * vs_COLOR0.wxyz;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.yzw;
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendAdd" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1.wxyz * vs_COLOR0.wxyz;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat1.yzw;
					    u_xlat1.x = u_xlat1.x;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat1.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1.wxyz * vs_COLOR0.wxyz;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat1.yzw;
					    u_xlat1.x = u_xlat1.x;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat1.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendAdd" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1.wxyz * vs_COLOR0.wxyz;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat1.yzw;
					    u_xlat1.x = u_xlat1.x;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat1.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1.wxyz * vs_COLOR0.wxyz;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat1.yzw;
					    u_xlat1.x = u_xlat1.x;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat1.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendAdd" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1.wxyz * vs_COLOR0.wxyz;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat1.yzw;
					    u_xlat1.x = u_xlat1.x;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat1.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1.wxyz * vs_COLOR0.wxyz;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat1.yzw;
					    u_xlat1.x = u_xlat1.x;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat1.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendAdd" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1.wxyz * vs_COLOR0.wxyz;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat1.yzw;
					    u_xlat1.x = u_xlat1.x;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat1.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1.wxyz * vs_COLOR0.wxyz;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat1.yzw;
					    u_xlat1.x = u_xlat1.x;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat1.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendAdd" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1.wxyz * vs_COLOR0.wxyz;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat1.yzw;
					    u_xlat1.x = u_xlat1.x;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat1.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1.wxyz * vs_COLOR0.wxyz;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat1.yzw;
					    u_xlat1.x = u_xlat1.x;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat1.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendAdd" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1.wxyz * vs_COLOR0.wxyz;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat1.yzw;
					    u_xlat1.x = u_xlat1.x;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat1.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1.wxyz * vs_COLOR0.wxyz;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat1.yzw;
					    u_xlat1.x = u_xlat1.x;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat1.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendAdd" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					bool u_xlatb1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1.x = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat0.w = u_xlat0.w * u_xlat1.x;
					    u_xlat0 = u_xlat0 * vs_COLOR0;
					    SV_Target0.w = u_xlat0.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					bool u_xlatb1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1.x = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat0.w = u_xlat0.w * u_xlat1.x;
					    u_xlat0 = u_xlat0 * vs_COLOR0;
					    SV_Target0.w = u_xlat0.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendAdd" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					bool u_xlatb1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1.x = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat0.w = u_xlat0.w * u_xlat1.x;
					    u_xlat0 = u_xlat0 * vs_COLOR0;
					    SV_Target0.w = u_xlat0.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					bool u_xlatb1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1.x = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat0.w = u_xlat0.w * u_xlat1.x;
					    u_xlat0 = u_xlat0 * vs_COLOR0;
					    SV_Target0.w = u_xlat0.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendAdd" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					bool u_xlatb1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1.x = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat0.w = u_xlat0.w * u_xlat1.x;
					    u_xlat0 = u_xlat0 * vs_COLOR0;
					    u_xlat1.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat1.x = (-u_xlat1.x) + 1.0;
					    u_xlat1.x = u_xlat1.x * _ProjectionParams.z;
					    u_xlat1.x = max(u_xlat1.x, 0.0);
					    u_xlat1.x = u_xlat1.x * unity_FogParams.z + unity_FogParams.w;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.xyz * u_xlat1.xxx;
					    SV_Target0.w = u_xlat0.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					bool u_xlatb1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1.x = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat0.w = u_xlat0.w * u_xlat1.x;
					    u_xlat0 = u_xlat0 * vs_COLOR0;
					    u_xlat1.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat1.x = (-u_xlat1.x) + 1.0;
					    u_xlat1.x = u_xlat1.x * _ProjectionParams.z;
					    u_xlat1.x = max(u_xlat1.x, 0.0);
					    u_xlat1.x = u_xlat1.x * unity_FogParams.z + unity_FogParams.w;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.xyz * u_xlat1.xxx;
					    SV_Target0.w = u_xlat0.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendAdd" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					bool u_xlatb1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1.x = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat0.w = u_xlat0.w * u_xlat1.x;
					    u_xlat0 = u_xlat0 * vs_COLOR0;
					    u_xlat1.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat1.x = (-u_xlat1.x) + 1.0;
					    u_xlat1.x = u_xlat1.x * _ProjectionParams.z;
					    u_xlat1.x = max(u_xlat1.x, 0.0);
					    u_xlat1.x = u_xlat1.x * unity_FogParams.z + unity_FogParams.w;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.xyz * u_xlat1.xxx;
					    SV_Target0.w = u_xlat0.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					bool u_xlatb1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1.x = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat0.w = u_xlat0.w * u_xlat1.x;
					    u_xlat0 = u_xlat0 * vs_COLOR0;
					    u_xlat1.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat1.x = (-u_xlat1.x) + 1.0;
					    u_xlat1.x = u_xlat1.x * _ProjectionParams.z;
					    u_xlat1.x = max(u_xlat1.x, 0.0);
					    u_xlat1.x = u_xlat1.x * unity_FogParams.z + unity_FogParams.w;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.xyz * u_xlat1.xxx;
					    SV_Target0.w = u_xlat0.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendAdd" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					float u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3 = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat1.xyz;
					    SV_Target0.w = u_xlat1.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					float u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3 = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat1.xyz;
					    SV_Target0.w = u_xlat1.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendAdd" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					float u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3 = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat1.xyz;
					    SV_Target0.w = u_xlat1.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					float u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3 = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat1.xyz;
					    SV_Target0.w = u_xlat1.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendAdd" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					float u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3 = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat1.xyz;
					    SV_Target0.w = u_xlat1.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					float u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3 = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat1.xyz;
					    SV_Target0.w = u_xlat1.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendAdd" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					float u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3 = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat1.xyz;
					    SV_Target0.w = u_xlat1.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					float u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3 = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat1.xyz;
					    SV_Target0.w = u_xlat1.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendAdd" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					bool u_xlatb1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1.x = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat0.w = u_xlat0.w * u_xlat1.x;
					    u_xlat0 = u_xlat0 * vs_COLOR0;
					    SV_Target0.w = u_xlat0.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					bool u_xlatb1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1.x = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat0.w = u_xlat0.w * u_xlat1.x;
					    u_xlat0 = u_xlat0 * vs_COLOR0;
					    SV_Target0.w = u_xlat0.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendAdd" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					bool u_xlatb1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1.x = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat0.w = u_xlat0.w * u_xlat1.x;
					    u_xlat0 = u_xlat0 * vs_COLOR0;
					    SV_Target0.w = u_xlat0.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					bool u_xlatb1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1.x = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat0.w = u_xlat0.w * u_xlat1.x;
					    u_xlat0 = u_xlat0 * vs_COLOR0;
					    SV_Target0.w = u_xlat0.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendAdd" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					bool u_xlatb1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1.x = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat0.w = u_xlat0.w * u_xlat1.x;
					    u_xlat0 = u_xlat0 * vs_COLOR0;
					    u_xlat1.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat1.x = (-u_xlat1.x) + 1.0;
					    u_xlat1.x = u_xlat1.x * _ProjectionParams.z;
					    u_xlat1.x = max(u_xlat1.x, 0.0);
					    u_xlat1.x = u_xlat1.x * unity_FogParams.z + unity_FogParams.w;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.xyz * u_xlat1.xxx;
					    SV_Target0.w = u_xlat0.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					bool u_xlatb1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1.x = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat0.w = u_xlat0.w * u_xlat1.x;
					    u_xlat0 = u_xlat0 * vs_COLOR0;
					    u_xlat1.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat1.x = (-u_xlat1.x) + 1.0;
					    u_xlat1.x = u_xlat1.x * _ProjectionParams.z;
					    u_xlat1.x = max(u_xlat1.x, 0.0);
					    u_xlat1.x = u_xlat1.x * unity_FogParams.z + unity_FogParams.w;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.xyz * u_xlat1.xxx;
					    SV_Target0.w = u_xlat0.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendAdd" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					bool u_xlatb1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1.x = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat0.w = u_xlat0.w * u_xlat1.x;
					    u_xlat0 = u_xlat0 * vs_COLOR0;
					    u_xlat1.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat1.x = (-u_xlat1.x) + 1.0;
					    u_xlat1.x = u_xlat1.x * _ProjectionParams.z;
					    u_xlat1.x = max(u_xlat1.x, 0.0);
					    u_xlat1.x = u_xlat1.x * unity_FogParams.z + unity_FogParams.w;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.xyz * u_xlat1.xxx;
					    SV_Target0.w = u_xlat0.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					bool u_xlatb1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1.x = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat0.w = u_xlat0.w * u_xlat1.x;
					    u_xlat0 = u_xlat0 * vs_COLOR0;
					    u_xlat1.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat1.x = (-u_xlat1.x) + 1.0;
					    u_xlat1.x = u_xlat1.x * _ProjectionParams.z;
					    u_xlat1.x = max(u_xlat1.x, 0.0);
					    u_xlat1.x = u_xlat1.x * unity_FogParams.z + unity_FogParams.w;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.xyz * u_xlat1.xxx;
					    SV_Target0.w = u_xlat0.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendAdd" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					float u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3 = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat1.xyz;
					    SV_Target0.w = u_xlat1.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					float u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3 = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat1.xyz;
					    SV_Target0.w = u_xlat1.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendAdd" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					float u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3 = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat1.xyz;
					    SV_Target0.w = u_xlat1.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					float u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3 = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat1.xyz;
					    SV_Target0.w = u_xlat1.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendAdd" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					float u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3 = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat1.xyz;
					    SV_Target0.w = u_xlat1.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					float u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3 = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat1.xyz;
					    SV_Target0.w = u_xlat1.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendAdd" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					float u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3 = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat1.xyz;
					    SV_Target0.w = u_xlat1.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					float u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3 = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat1.xyz;
					    SV_Target0.w = u_xlat1.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendAdd" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					bool u_xlatb1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1.x = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat0.w = u_xlat0.w * u_xlat1.x;
					    u_xlat0 = u_xlat0.wxyz * vs_COLOR0.wxyz;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.yzw;
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					bool u_xlatb1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1.x = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat0.w = u_xlat0.w * u_xlat1.x;
					    u_xlat0 = u_xlat0.wxyz * vs_COLOR0.wxyz;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.yzw;
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendAdd" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					bool u_xlatb1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1.x = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat0.w = u_xlat0.w * u_xlat1.x;
					    u_xlat0 = u_xlat0.wxyz * vs_COLOR0.wxyz;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.yzw;
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					bool u_xlatb1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1.x = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat0.w = u_xlat0.w * u_xlat1.x;
					    u_xlat0 = u_xlat0.wxyz * vs_COLOR0.wxyz;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.yzw;
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendAdd" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					bool u_xlatb1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1.x = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat0.w = u_xlat0.w * u_xlat1.x;
					    u_xlat0 = u_xlat0.wxyz * vs_COLOR0.wxyz;
					    u_xlat1.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat1.x = (-u_xlat1.x) + 1.0;
					    u_xlat1.x = u_xlat1.x * _ProjectionParams.z;
					    u_xlat1.x = max(u_xlat1.x, 0.0);
					    u_xlat1.x = u_xlat1.x * unity_FogParams.z + unity_FogParams.w;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.yzw * u_xlat1.xxx;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					bool u_xlatb1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1.x = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat0.w = u_xlat0.w * u_xlat1.x;
					    u_xlat0 = u_xlat0.wxyz * vs_COLOR0.wxyz;
					    u_xlat1.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat1.x = (-u_xlat1.x) + 1.0;
					    u_xlat1.x = u_xlat1.x * _ProjectionParams.z;
					    u_xlat1.x = max(u_xlat1.x, 0.0);
					    u_xlat1.x = u_xlat1.x * unity_FogParams.z + unity_FogParams.w;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.yzw * u_xlat1.xxx;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendAdd" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					bool u_xlatb1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1.x = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat0.w = u_xlat0.w * u_xlat1.x;
					    u_xlat0 = u_xlat0.wxyz * vs_COLOR0.wxyz;
					    u_xlat1.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat1.x = (-u_xlat1.x) + 1.0;
					    u_xlat1.x = u_xlat1.x * _ProjectionParams.z;
					    u_xlat1.x = max(u_xlat1.x, 0.0);
					    u_xlat1.x = u_xlat1.x * unity_FogParams.z + unity_FogParams.w;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.yzw * u_xlat1.xxx;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					bool u_xlatb1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1.x = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat0.w = u_xlat0.w * u_xlat1.x;
					    u_xlat0 = u_xlat0.wxyz * vs_COLOR0.wxyz;
					    u_xlat1.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat1.x = (-u_xlat1.x) + 1.0;
					    u_xlat1.x = u_xlat1.x * _ProjectionParams.z;
					    u_xlat1.x = max(u_xlat1.x, 0.0);
					    u_xlat1.x = u_xlat1.x * unity_FogParams.z + unity_FogParams.w;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.yzw * u_xlat1.xxx;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendAdd" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					float u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3 = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3;
					    u_xlat1 = u_xlat1.wxyz * vs_COLOR0.wxyz;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat1.yzw;
					    u_xlat1.x = u_xlat1.x;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat1.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					float u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3 = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3;
					    u_xlat1 = u_xlat1.wxyz * vs_COLOR0.wxyz;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat1.yzw;
					    u_xlat1.x = u_xlat1.x;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat1.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendAdd" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					float u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3 = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3;
					    u_xlat1 = u_xlat1.wxyz * vs_COLOR0.wxyz;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat1.yzw;
					    u_xlat1.x = u_xlat1.x;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat1.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					float u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3 = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3;
					    u_xlat1 = u_xlat1.wxyz * vs_COLOR0.wxyz;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat1.yzw;
					    u_xlat1.x = u_xlat1.x;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat1.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendAdd" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					float u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3 = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3;
					    u_xlat1 = u_xlat1.wxyz * vs_COLOR0.wxyz;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat1.yzw;
					    u_xlat1.x = u_xlat1.x;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat1.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					float u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3 = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3;
					    u_xlat1 = u_xlat1.wxyz * vs_COLOR0.wxyz;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat1.yzw;
					    u_xlat1.x = u_xlat1.x;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat1.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendAdd" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					float u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3 = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3;
					    u_xlat1 = u_xlat1.wxyz * vs_COLOR0.wxyz;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat1.yzw;
					    u_xlat1.x = u_xlat1.x;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat1.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					float u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3 = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3;
					    u_xlat1 = u_xlat1.wxyz * vs_COLOR0.wxyz;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat1.yzw;
					    u_xlat1.x = u_xlat1.x;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat1.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendAdd" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					bool u_xlatb1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1.x = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat0.w = u_xlat0.w * u_xlat1.x;
					    u_xlat0 = u_xlat0.wxyz * vs_COLOR0.wxyz;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.yzw;
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					bool u_xlatb1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1.x = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat0.w = u_xlat0.w * u_xlat1.x;
					    u_xlat0 = u_xlat0.wxyz * vs_COLOR0.wxyz;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.yzw;
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendAdd" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					bool u_xlatb1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1.x = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat0.w = u_xlat0.w * u_xlat1.x;
					    u_xlat0 = u_xlat0.wxyz * vs_COLOR0.wxyz;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.yzw;
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					bool u_xlatb1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1.x = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat0.w = u_xlat0.w * u_xlat1.x;
					    u_xlat0 = u_xlat0.wxyz * vs_COLOR0.wxyz;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.yzw;
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendAdd" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					bool u_xlatb1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1.x = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat0.w = u_xlat0.w * u_xlat1.x;
					    u_xlat0 = u_xlat0.wxyz * vs_COLOR0.wxyz;
					    u_xlat1.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat1.x = (-u_xlat1.x) + 1.0;
					    u_xlat1.x = u_xlat1.x * _ProjectionParams.z;
					    u_xlat1.x = max(u_xlat1.x, 0.0);
					    u_xlat1.x = u_xlat1.x * unity_FogParams.z + unity_FogParams.w;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.yzw * u_xlat1.xxx;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					bool u_xlatb1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1.x = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat0.w = u_xlat0.w * u_xlat1.x;
					    u_xlat0 = u_xlat0.wxyz * vs_COLOR0.wxyz;
					    u_xlat1.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat1.x = (-u_xlat1.x) + 1.0;
					    u_xlat1.x = u_xlat1.x * _ProjectionParams.z;
					    u_xlat1.x = max(u_xlat1.x, 0.0);
					    u_xlat1.x = u_xlat1.x * unity_FogParams.z + unity_FogParams.w;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.yzw * u_xlat1.xxx;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendAdd" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					bool u_xlatb1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1.x = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat0.w = u_xlat0.w * u_xlat1.x;
					    u_xlat0 = u_xlat0.wxyz * vs_COLOR0.wxyz;
					    u_xlat1.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat1.x = (-u_xlat1.x) + 1.0;
					    u_xlat1.x = u_xlat1.x * _ProjectionParams.z;
					    u_xlat1.x = max(u_xlat1.x, 0.0);
					    u_xlat1.x = u_xlat1.x * unity_FogParams.z + unity_FogParams.w;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.yzw * u_xlat1.xxx;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					bool u_xlatb1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1.x = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat0.w = u_xlat0.w * u_xlat1.x;
					    u_xlat0 = u_xlat0.wxyz * vs_COLOR0.wxyz;
					    u_xlat1.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat1.x = (-u_xlat1.x) + 1.0;
					    u_xlat1.x = u_xlat1.x * _ProjectionParams.z;
					    u_xlat1.x = max(u_xlat1.x, 0.0);
					    u_xlat1.x = u_xlat1.x * unity_FogParams.z + unity_FogParams.w;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.yzw * u_xlat1.xxx;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendAdd" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					float u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3 = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3;
					    u_xlat1 = u_xlat1.wxyz * vs_COLOR0.wxyz;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat1.yzw;
					    u_xlat1.x = u_xlat1.x;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat1.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					float u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3 = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3;
					    u_xlat1 = u_xlat1.wxyz * vs_COLOR0.wxyz;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat1.yzw;
					    u_xlat1.x = u_xlat1.x;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat1.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendAdd" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					float u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3 = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3;
					    u_xlat1 = u_xlat1.wxyz * vs_COLOR0.wxyz;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat1.yzw;
					    u_xlat1.x = u_xlat1.x;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat1.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					float u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3 = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3;
					    u_xlat1 = u_xlat1.wxyz * vs_COLOR0.wxyz;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat1.yzw;
					    u_xlat1.x = u_xlat1.x;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat1.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendAdd" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					float u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3 = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3;
					    u_xlat1 = u_xlat1.wxyz * vs_COLOR0.wxyz;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat1.yzw;
					    u_xlat1.x = u_xlat1.x;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat1.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					float u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3 = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3;
					    u_xlat1 = u_xlat1.wxyz * vs_COLOR0.wxyz;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat1.yzw;
					    u_xlat1.x = u_xlat1.x;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat1.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendAdd" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					float u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3 = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3;
					    u_xlat1 = u_xlat1.wxyz * vs_COLOR0.wxyz;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat1.yzw;
					    u_xlat1.x = u_xlat1.x;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat1.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					float u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3 = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3;
					    u_xlat1 = u_xlat1.wxyz * vs_COLOR0.wxyz;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat1.yzw;
					    u_xlat1.x = u_xlat1.x;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat1.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendAdd" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    SV_Target0.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    SV_Target0.w = u_xlatb0 ? 1.0 : float(0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    SV_Target0.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    SV_Target0.w = u_xlatb0 ? 1.0 : float(0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendAdd" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    SV_Target0.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    SV_Target0.w = u_xlatb0 ? 1.0 : float(0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    SV_Target0.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    SV_Target0.w = u_xlatb0 ? 1.0 : float(0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendAdd" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    SV_Target0.xyz = u_xlat3.xyz * vec3(u_xlat0);
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    SV_Target0.w = u_xlatb0 ? 1.0 : float(0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    SV_Target0.xyz = u_xlat3.xyz * vec3(u_xlat0);
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    SV_Target0.w = u_xlatb0 ? 1.0 : float(0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendAdd" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    SV_Target0.xyz = u_xlat3.xyz * vec3(u_xlat0);
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    SV_Target0.w = u_xlatb0 ? 1.0 : float(0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    SV_Target0.xyz = u_xlat3.xyz * vec3(u_xlat0);
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    SV_Target0.w = u_xlatb0 ? 1.0 : float(0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendAdd" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    SV_Target0.xyz = u_xlat3.xyz * vec3(u_xlat0);
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    SV_Target0.w = u_xlatb0 ? 1.0 : float(0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    SV_Target0.xyz = u_xlat3.xyz * vec3(u_xlat0);
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    SV_Target0.w = u_xlatb0 ? 1.0 : float(0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendAdd" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    SV_Target0.xyz = u_xlat3.xyz * vec3(u_xlat0);
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    SV_Target0.w = u_xlatb0 ? 1.0 : float(0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    SV_Target0.xyz = u_xlat3.xyz * vec3(u_xlat0);
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    SV_Target0.w = u_xlatb0 ? 1.0 : float(0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendAdd" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    SV_Target0.xyz = u_xlat3.xyz * vec3(u_xlat0);
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    SV_Target0.w = u_xlatb0 ? 1.0 : float(0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    SV_Target0.xyz = u_xlat3.xyz * vec3(u_xlat0);
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    SV_Target0.w = u_xlatb0 ? 1.0 : float(0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendAdd" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    SV_Target0.xyz = u_xlat3.xyz * vec3(u_xlat0);
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    SV_Target0.w = u_xlatb0 ? 1.0 : float(0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    SV_Target0.xyz = u_xlat3.xyz * vec3(u_xlat0);
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    SV_Target0.w = u_xlatb0 ? 1.0 : float(0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendAdd" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    SV_Target0.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    SV_Target0.w = u_xlatb0 ? 1.0 : float(0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    SV_Target0.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    SV_Target0.w = u_xlatb0 ? 1.0 : float(0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendAdd" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    SV_Target0.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    SV_Target0.w = u_xlatb0 ? 1.0 : float(0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    SV_Target0.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    SV_Target0.w = u_xlatb0 ? 1.0 : float(0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendAdd" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    SV_Target0.xyz = u_xlat3.xyz * vec3(u_xlat0);
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    SV_Target0.w = u_xlatb0 ? 1.0 : float(0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    SV_Target0.xyz = u_xlat3.xyz * vec3(u_xlat0);
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    SV_Target0.w = u_xlatb0 ? 1.0 : float(0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendAdd" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    SV_Target0.xyz = u_xlat3.xyz * vec3(u_xlat0);
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    SV_Target0.w = u_xlatb0 ? 1.0 : float(0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    SV_Target0.xyz = u_xlat3.xyz * vec3(u_xlat0);
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    SV_Target0.w = u_xlatb0 ? 1.0 : float(0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendAdd" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    SV_Target0.xyz = u_xlat3.xyz * vec3(u_xlat0);
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    SV_Target0.w = u_xlatb0 ? 1.0 : float(0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    SV_Target0.xyz = u_xlat3.xyz * vec3(u_xlat0);
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    SV_Target0.w = u_xlatb0 ? 1.0 : float(0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendAdd" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    SV_Target0.xyz = u_xlat3.xyz * vec3(u_xlat0);
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    SV_Target0.w = u_xlatb0 ? 1.0 : float(0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    SV_Target0.xyz = u_xlat3.xyz * vec3(u_xlat0);
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    SV_Target0.w = u_xlatb0 ? 1.0 : float(0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendAdd" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    SV_Target0.xyz = u_xlat3.xyz * vec3(u_xlat0);
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    SV_Target0.w = u_xlatb0 ? 1.0 : float(0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    SV_Target0.xyz = u_xlat3.xyz * vec3(u_xlat0);
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    SV_Target0.w = u_xlatb0 ? 1.0 : float(0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendAdd" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    SV_Target0.xyz = u_xlat3.xyz * vec3(u_xlat0);
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    SV_Target0.w = u_xlatb0 ? 1.0 : float(0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    SV_Target0.xyz = u_xlat3.xyz * vec3(u_xlat0);
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    SV_Target0.w = u_xlatb0 ? 1.0 : float(0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendAdd" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    SV_Target0.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat0 = u_xlatb0 ? 1.0 : float(0.0);
					    SV_Target0.w = u_xlat0 * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    SV_Target0.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat0 = u_xlatb0 ? 1.0 : float(0.0);
					    SV_Target0.w = u_xlat0 * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendAdd" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    SV_Target0.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat0 = u_xlatb0 ? 1.0 : float(0.0);
					    SV_Target0.w = u_xlat0 * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    SV_Target0.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat0 = u_xlatb0 ? 1.0 : float(0.0);
					    SV_Target0.w = u_xlat0 * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendAdd" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    SV_Target0.xyz = u_xlat3.xyz * vec3(u_xlat0);
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    u_xlat0 = u_xlatb0 ? 1.0 : float(0.0);
					    SV_Target0.w = u_xlat0 * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    SV_Target0.xyz = u_xlat3.xyz * vec3(u_xlat0);
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    u_xlat0 = u_xlatb0 ? 1.0 : float(0.0);
					    SV_Target0.w = u_xlat0 * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendAdd" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    SV_Target0.xyz = u_xlat3.xyz * vec3(u_xlat0);
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    u_xlat0 = u_xlatb0 ? 1.0 : float(0.0);
					    SV_Target0.w = u_xlat0 * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    SV_Target0.xyz = u_xlat3.xyz * vec3(u_xlat0);
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    u_xlat0 = u_xlatb0 ? 1.0 : float(0.0);
					    SV_Target0.w = u_xlat0 * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendAdd" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    SV_Target0.xyz = u_xlat3.xyz * vec3(u_xlat0);
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    u_xlat0 = u_xlatb0 ? 1.0 : float(0.0);
					    SV_Target0.w = u_xlat0 * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    SV_Target0.xyz = u_xlat3.xyz * vec3(u_xlat0);
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    u_xlat0 = u_xlatb0 ? 1.0 : float(0.0);
					    SV_Target0.w = u_xlat0 * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendAdd" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    SV_Target0.xyz = u_xlat3.xyz * vec3(u_xlat0);
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    u_xlat0 = u_xlatb0 ? 1.0 : float(0.0);
					    SV_Target0.w = u_xlat0 * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    SV_Target0.xyz = u_xlat3.xyz * vec3(u_xlat0);
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    u_xlat0 = u_xlatb0 ? 1.0 : float(0.0);
					    SV_Target0.w = u_xlat0 * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendAdd" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    SV_Target0.xyz = u_xlat3.xyz * vec3(u_xlat0);
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    u_xlat0 = u_xlatb0 ? 1.0 : float(0.0);
					    SV_Target0.w = u_xlat0 * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    SV_Target0.xyz = u_xlat3.xyz * vec3(u_xlat0);
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    u_xlat0 = u_xlatb0 ? 1.0 : float(0.0);
					    SV_Target0.w = u_xlat0 * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendAdd" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    SV_Target0.xyz = u_xlat3.xyz * vec3(u_xlat0);
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    u_xlat0 = u_xlatb0 ? 1.0 : float(0.0);
					    SV_Target0.w = u_xlat0 * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    SV_Target0.xyz = u_xlat3.xyz * vec3(u_xlat0);
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    u_xlat0 = u_xlatb0 ? 1.0 : float(0.0);
					    SV_Target0.w = u_xlat0 * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendAdd" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    SV_Target0.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat0 = u_xlatb0 ? 1.0 : float(0.0);
					    SV_Target0.w = u_xlat0 * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    SV_Target0.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat0 = u_xlatb0 ? 1.0 : float(0.0);
					    SV_Target0.w = u_xlat0 * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendAdd" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    SV_Target0.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat0 = u_xlatb0 ? 1.0 : float(0.0);
					    SV_Target0.w = u_xlat0 * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    SV_Target0.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat0 = u_xlatb0 ? 1.0 : float(0.0);
					    SV_Target0.w = u_xlat0 * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendAdd" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    SV_Target0.xyz = u_xlat3.xyz * vec3(u_xlat0);
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    u_xlat0 = u_xlatb0 ? 1.0 : float(0.0);
					    SV_Target0.w = u_xlat0 * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    SV_Target0.xyz = u_xlat3.xyz * vec3(u_xlat0);
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    u_xlat0 = u_xlatb0 ? 1.0 : float(0.0);
					    SV_Target0.w = u_xlat0 * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendAdd" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    SV_Target0.xyz = u_xlat3.xyz * vec3(u_xlat0);
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    u_xlat0 = u_xlatb0 ? 1.0 : float(0.0);
					    SV_Target0.w = u_xlat0 * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    SV_Target0.xyz = u_xlat3.xyz * vec3(u_xlat0);
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    u_xlat0 = u_xlatb0 ? 1.0 : float(0.0);
					    SV_Target0.w = u_xlat0 * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendAdd" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    SV_Target0.xyz = u_xlat3.xyz * vec3(u_xlat0);
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    u_xlat0 = u_xlatb0 ? 1.0 : float(0.0);
					    SV_Target0.w = u_xlat0 * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    SV_Target0.xyz = u_xlat3.xyz * vec3(u_xlat0);
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    u_xlat0 = u_xlatb0 ? 1.0 : float(0.0);
					    SV_Target0.w = u_xlat0 * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendAdd" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    SV_Target0.xyz = u_xlat3.xyz * vec3(u_xlat0);
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    u_xlat0 = u_xlatb0 ? 1.0 : float(0.0);
					    SV_Target0.w = u_xlat0 * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    SV_Target0.xyz = u_xlat3.xyz * vec3(u_xlat0);
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    u_xlat0 = u_xlatb0 ? 1.0 : float(0.0);
					    SV_Target0.w = u_xlat0 * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendAdd" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    SV_Target0.xyz = u_xlat3.xyz * vec3(u_xlat0);
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    u_xlat0 = u_xlatb0 ? 1.0 : float(0.0);
					    SV_Target0.w = u_xlat0 * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    SV_Target0.xyz = u_xlat3.xyz * vec3(u_xlat0);
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    u_xlat0 = u_xlatb0 ? 1.0 : float(0.0);
					    SV_Target0.w = u_xlat0 * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendAdd" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    SV_Target0.xyz = u_xlat3.xyz * vec3(u_xlat0);
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    u_xlat0 = u_xlatb0 ? 1.0 : float(0.0);
					    SV_Target0.w = u_xlat0 * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    SV_Target0.xyz = u_xlat3.xyz * vec3(u_xlat0);
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    u_xlat0 = u_xlatb0 ? 1.0 : float(0.0);
					    SV_Target0.w = u_xlat0 * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendAdd" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat0 = u_xlat0 * vs_COLOR0;
					    SV_Target0.w = u_xlat0.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat0 = u_xlat0 * vs_COLOR0;
					    SV_Target0.w = u_xlat0.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendAdd" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[7];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    SV_Target0.w = u_xlat0.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[6];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    SV_Target0.w = u_xlat0.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendAdd" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat1.xyz;
					    SV_Target0.w = u_xlat1.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat1.xyz;
					    SV_Target0.w = u_xlat1.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendAdd" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat1.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat1.x = (-u_xlat1.x) + 1.0;
					    u_xlat1.x = u_xlat1.x * _ProjectionParams.z;
					    u_xlat1.x = max(u_xlat1.x, 0.0);
					    u_xlat1.x = u_xlat1.x * unity_FogParams.z + unity_FogParams.w;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.xyz * u_xlat1.xxx;
					    SV_Target0.w = u_xlat0.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat1.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat1.x = (-u_xlat1.x) + 1.0;
					    u_xlat1.x = u_xlat1.x * _ProjectionParams.z;
					    u_xlat1.x = max(u_xlat1.x, 0.0);
					    u_xlat1.x = u_xlat1.x * unity_FogParams.z + unity_FogParams.w;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.xyz * u_xlat1.xxx;
					    SV_Target0.w = u_xlat0.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendAdd" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat1.xyz;
					    SV_Target0.w = u_xlat1.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat1.xyz;
					    SV_Target0.w = u_xlat1.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendAdd" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat1.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat1.x = (-u_xlat1.x) + 1.0;
					    u_xlat1.x = u_xlat1.x * _ProjectionParams.z;
					    u_xlat1.x = max(u_xlat1.x, 0.0);
					    u_xlat1.x = u_xlat1.x * unity_FogParams.y;
					    u_xlat1.x = exp2((-u_xlat1.x));
					    u_xlat1.x = min(u_xlat1.x, 1.0);
					    SV_Target0.xyz = u_xlat0.xyz * u_xlat1.xxx;
					    SV_Target0.w = u_xlat0.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat1.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat1.x = (-u_xlat1.x) + 1.0;
					    u_xlat1.x = u_xlat1.x * _ProjectionParams.z;
					    u_xlat1.x = max(u_xlat1.x, 0.0);
					    u_xlat1.x = u_xlat1.x * unity_FogParams.y;
					    u_xlat1.x = exp2((-u_xlat1.x));
					    u_xlat1.x = min(u_xlat1.x, 1.0);
					    SV_Target0.xyz = u_xlat0.xyz * u_xlat1.xxx;
					    SV_Target0.w = u_xlat0.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendAdd" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat1.xyz;
					    SV_Target0.w = u_xlat1.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat1.xyz;
					    SV_Target0.w = u_xlat1.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendAdd" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat1.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat1.x = (-u_xlat1.x) + 1.0;
					    u_xlat1.x = u_xlat1.x * _ProjectionParams.z;
					    u_xlat1.x = max(u_xlat1.x, 0.0);
					    u_xlat1.x = u_xlat1.x * unity_FogParams.x;
					    u_xlat1.x = u_xlat1.x * (-u_xlat1.x);
					    u_xlat1.x = exp2(u_xlat1.x);
					    SV_Target0.xyz = u_xlat0.xyz * u_xlat1.xxx;
					    SV_Target0.w = u_xlat0.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat1.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat1.x = (-u_xlat1.x) + 1.0;
					    u_xlat1.x = u_xlat1.x * _ProjectionParams.z;
					    u_xlat1.x = max(u_xlat1.x, 0.0);
					    u_xlat1.x = u_xlat1.x * unity_FogParams.x;
					    u_xlat1.x = u_xlat1.x * (-u_xlat1.x);
					    u_xlat1.x = exp2(u_xlat1.x);
					    SV_Target0.xyz = u_xlat0.xyz * u_xlat1.xxx;
					    SV_Target0.w = u_xlat0.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendAdd" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[7];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    SV_Target0.w = u_xlat0.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[6];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    SV_Target0.w = u_xlat0.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendAdd" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[7];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    SV_Target0.w = u_xlat0.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[6];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    SV_Target0.w = u_xlat0.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendAdd" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat1.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat1.x = (-u_xlat1.x) + 1.0;
					    u_xlat1.x = u_xlat1.x * _ProjectionParams.z;
					    u_xlat1.x = max(u_xlat1.x, 0.0);
					    u_xlat1.x = u_xlat1.x * unity_FogParams.z + unity_FogParams.w;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.xyz * u_xlat1.xxx;
					    SV_Target0.w = u_xlat0.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat1.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat1.x = (-u_xlat1.x) + 1.0;
					    u_xlat1.x = u_xlat1.x * _ProjectionParams.z;
					    u_xlat1.x = max(u_xlat1.x, 0.0);
					    u_xlat1.x = u_xlat1.x * unity_FogParams.z + unity_FogParams.w;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.xyz * u_xlat1.xxx;
					    SV_Target0.w = u_xlat0.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendAdd" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat1.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat1.x = (-u_xlat1.x) + 1.0;
					    u_xlat1.x = u_xlat1.x * _ProjectionParams.z;
					    u_xlat1.x = max(u_xlat1.x, 0.0);
					    u_xlat1.x = u_xlat1.x * unity_FogParams.z + unity_FogParams.w;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.xyz * u_xlat1.xxx;
					    SV_Target0.w = u_xlat0.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat1.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat1.x = (-u_xlat1.x) + 1.0;
					    u_xlat1.x = u_xlat1.x * _ProjectionParams.z;
					    u_xlat1.x = max(u_xlat1.x, 0.0);
					    u_xlat1.x = u_xlat1.x * unity_FogParams.z + unity_FogParams.w;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.xyz * u_xlat1.xxx;
					    SV_Target0.w = u_xlat0.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendAdd" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat1.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat1.x = (-u_xlat1.x) + 1.0;
					    u_xlat1.x = u_xlat1.x * _ProjectionParams.z;
					    u_xlat1.x = max(u_xlat1.x, 0.0);
					    u_xlat1.x = u_xlat1.x * unity_FogParams.y;
					    u_xlat1.x = exp2((-u_xlat1.x));
					    u_xlat1.x = min(u_xlat1.x, 1.0);
					    SV_Target0.xyz = u_xlat0.xyz * u_xlat1.xxx;
					    SV_Target0.w = u_xlat0.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat1.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat1.x = (-u_xlat1.x) + 1.0;
					    u_xlat1.x = u_xlat1.x * _ProjectionParams.z;
					    u_xlat1.x = max(u_xlat1.x, 0.0);
					    u_xlat1.x = u_xlat1.x * unity_FogParams.y;
					    u_xlat1.x = exp2((-u_xlat1.x));
					    u_xlat1.x = min(u_xlat1.x, 1.0);
					    SV_Target0.xyz = u_xlat0.xyz * u_xlat1.xxx;
					    SV_Target0.w = u_xlat0.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendAdd" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat1.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat1.x = (-u_xlat1.x) + 1.0;
					    u_xlat1.x = u_xlat1.x * _ProjectionParams.z;
					    u_xlat1.x = max(u_xlat1.x, 0.0);
					    u_xlat1.x = u_xlat1.x * unity_FogParams.y;
					    u_xlat1.x = exp2((-u_xlat1.x));
					    u_xlat1.x = min(u_xlat1.x, 1.0);
					    SV_Target0.xyz = u_xlat0.xyz * u_xlat1.xxx;
					    SV_Target0.w = u_xlat0.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat1.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat1.x = (-u_xlat1.x) + 1.0;
					    u_xlat1.x = u_xlat1.x * _ProjectionParams.z;
					    u_xlat1.x = max(u_xlat1.x, 0.0);
					    u_xlat1.x = u_xlat1.x * unity_FogParams.y;
					    u_xlat1.x = exp2((-u_xlat1.x));
					    u_xlat1.x = min(u_xlat1.x, 1.0);
					    SV_Target0.xyz = u_xlat0.xyz * u_xlat1.xxx;
					    SV_Target0.w = u_xlat0.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendAdd" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat1.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat1.x = (-u_xlat1.x) + 1.0;
					    u_xlat1.x = u_xlat1.x * _ProjectionParams.z;
					    u_xlat1.x = max(u_xlat1.x, 0.0);
					    u_xlat1.x = u_xlat1.x * unity_FogParams.x;
					    u_xlat1.x = u_xlat1.x * (-u_xlat1.x);
					    u_xlat1.x = exp2(u_xlat1.x);
					    SV_Target0.xyz = u_xlat0.xyz * u_xlat1.xxx;
					    SV_Target0.w = u_xlat0.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat1.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat1.x = (-u_xlat1.x) + 1.0;
					    u_xlat1.x = u_xlat1.x * _ProjectionParams.z;
					    u_xlat1.x = max(u_xlat1.x, 0.0);
					    u_xlat1.x = u_xlat1.x * unity_FogParams.x;
					    u_xlat1.x = u_xlat1.x * (-u_xlat1.x);
					    u_xlat1.x = exp2(u_xlat1.x);
					    SV_Target0.xyz = u_xlat0.xyz * u_xlat1.xxx;
					    SV_Target0.w = u_xlat0.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendAdd" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat1.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat1.x = (-u_xlat1.x) + 1.0;
					    u_xlat1.x = u_xlat1.x * _ProjectionParams.z;
					    u_xlat1.x = max(u_xlat1.x, 0.0);
					    u_xlat1.x = u_xlat1.x * unity_FogParams.x;
					    u_xlat1.x = u_xlat1.x * (-u_xlat1.x);
					    u_xlat1.x = exp2(u_xlat1.x);
					    SV_Target0.xyz = u_xlat0.xyz * u_xlat1.xxx;
					    SV_Target0.w = u_xlat0.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat1.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat1.x = (-u_xlat1.x) + 1.0;
					    u_xlat1.x = u_xlat1.x * _ProjectionParams.z;
					    u_xlat1.x = max(u_xlat1.x, 0.0);
					    u_xlat1.x = u_xlat1.x * unity_FogParams.x;
					    u_xlat1.x = u_xlat1.x * (-u_xlat1.x);
					    u_xlat1.x = exp2(u_xlat1.x);
					    SV_Target0.xyz = u_xlat0.xyz * u_xlat1.xxx;
					    SV_Target0.w = u_xlat0.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendAdd" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat0 = u_xlat0.wxyz * vs_COLOR0.wxyz;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.yzw;
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat0 = u_xlat0.wxyz * vs_COLOR0.wxyz;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.yzw;
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendAdd" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[7];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0.wxyz * u_xlat1.wxyz;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.yzw;
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[6];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0.wxyz * u_xlat1.wxyz;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.yzw;
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendAdd" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1.wxyz * vs_COLOR0.wxyz;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat1.yzw;
					    u_xlat1.x = u_xlat1.x;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat1.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1.wxyz * vs_COLOR0.wxyz;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat1.yzw;
					    u_xlat1.x = u_xlat1.x;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat1.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendAdd" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0.wxyz * u_xlat1.wxyz;
					    u_xlat1.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat1.x = (-u_xlat1.x) + 1.0;
					    u_xlat1.x = u_xlat1.x * _ProjectionParams.z;
					    u_xlat1.x = max(u_xlat1.x, 0.0);
					    u_xlat1.x = u_xlat1.x * unity_FogParams.z + unity_FogParams.w;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.yzw * u_xlat1.xxx;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0.wxyz * u_xlat1.wxyz;
					    u_xlat1.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat1.x = (-u_xlat1.x) + 1.0;
					    u_xlat1.x = u_xlat1.x * _ProjectionParams.z;
					    u_xlat1.x = max(u_xlat1.x, 0.0);
					    u_xlat1.x = u_xlat1.x * unity_FogParams.z + unity_FogParams.w;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.yzw * u_xlat1.xxx;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendAdd" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1.wxyz * vs_COLOR0.wxyz;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat1.yzw;
					    u_xlat1.x = u_xlat1.x;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat1.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1.wxyz * vs_COLOR0.wxyz;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat1.yzw;
					    u_xlat1.x = u_xlat1.x;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat1.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendAdd" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0.wxyz * u_xlat1.wxyz;
					    u_xlat1.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat1.x = (-u_xlat1.x) + 1.0;
					    u_xlat1.x = u_xlat1.x * _ProjectionParams.z;
					    u_xlat1.x = max(u_xlat1.x, 0.0);
					    u_xlat1.x = u_xlat1.x * unity_FogParams.y;
					    u_xlat1.x = exp2((-u_xlat1.x));
					    u_xlat1.x = min(u_xlat1.x, 1.0);
					    SV_Target0.xyz = u_xlat0.yzw * u_xlat1.xxx;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0.wxyz * u_xlat1.wxyz;
					    u_xlat1.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat1.x = (-u_xlat1.x) + 1.0;
					    u_xlat1.x = u_xlat1.x * _ProjectionParams.z;
					    u_xlat1.x = max(u_xlat1.x, 0.0);
					    u_xlat1.x = u_xlat1.x * unity_FogParams.y;
					    u_xlat1.x = exp2((-u_xlat1.x));
					    u_xlat1.x = min(u_xlat1.x, 1.0);
					    SV_Target0.xyz = u_xlat0.yzw * u_xlat1.xxx;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendAdd" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1.wxyz * vs_COLOR0.wxyz;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat1.yzw;
					    u_xlat1.x = u_xlat1.x;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat1.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1.wxyz * vs_COLOR0.wxyz;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat1.yzw;
					    u_xlat1.x = u_xlat1.x;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat1.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendAdd" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0.wxyz * u_xlat1.wxyz;
					    u_xlat1.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat1.x = (-u_xlat1.x) + 1.0;
					    u_xlat1.x = u_xlat1.x * _ProjectionParams.z;
					    u_xlat1.x = max(u_xlat1.x, 0.0);
					    u_xlat1.x = u_xlat1.x * unity_FogParams.x;
					    u_xlat1.x = u_xlat1.x * (-u_xlat1.x);
					    u_xlat1.x = exp2(u_xlat1.x);
					    SV_Target0.xyz = u_xlat0.yzw * u_xlat1.xxx;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0.wxyz * u_xlat1.wxyz;
					    u_xlat1.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat1.x = (-u_xlat1.x) + 1.0;
					    u_xlat1.x = u_xlat1.x * _ProjectionParams.z;
					    u_xlat1.x = max(u_xlat1.x, 0.0);
					    u_xlat1.x = u_xlat1.x * unity_FogParams.x;
					    u_xlat1.x = u_xlat1.x * (-u_xlat1.x);
					    u_xlat1.x = exp2(u_xlat1.x);
					    SV_Target0.xyz = u_xlat0.yzw * u_xlat1.xxx;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendAdd" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[7];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0.wxyz * u_xlat1.wxyz;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.yzw;
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[6];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0.wxyz * u_xlat1.wxyz;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.yzw;
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendAdd" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[7];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0.wxyz * u_xlat1.wxyz;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.yzw;
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[6];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0.wxyz * u_xlat1.wxyz;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.yzw;
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendAdd" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0.wxyz * u_xlat1.wxyz;
					    u_xlat1.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat1.x = (-u_xlat1.x) + 1.0;
					    u_xlat1.x = u_xlat1.x * _ProjectionParams.z;
					    u_xlat1.x = max(u_xlat1.x, 0.0);
					    u_xlat1.x = u_xlat1.x * unity_FogParams.z + unity_FogParams.w;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.yzw * u_xlat1.xxx;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0.wxyz * u_xlat1.wxyz;
					    u_xlat1.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat1.x = (-u_xlat1.x) + 1.0;
					    u_xlat1.x = u_xlat1.x * _ProjectionParams.z;
					    u_xlat1.x = max(u_xlat1.x, 0.0);
					    u_xlat1.x = u_xlat1.x * unity_FogParams.z + unity_FogParams.w;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.yzw * u_xlat1.xxx;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendAdd" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0.wxyz * u_xlat1.wxyz;
					    u_xlat1.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat1.x = (-u_xlat1.x) + 1.0;
					    u_xlat1.x = u_xlat1.x * _ProjectionParams.z;
					    u_xlat1.x = max(u_xlat1.x, 0.0);
					    u_xlat1.x = u_xlat1.x * unity_FogParams.z + unity_FogParams.w;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.yzw * u_xlat1.xxx;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0.wxyz * u_xlat1.wxyz;
					    u_xlat1.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat1.x = (-u_xlat1.x) + 1.0;
					    u_xlat1.x = u_xlat1.x * _ProjectionParams.z;
					    u_xlat1.x = max(u_xlat1.x, 0.0);
					    u_xlat1.x = u_xlat1.x * unity_FogParams.z + unity_FogParams.w;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.yzw * u_xlat1.xxx;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendAdd" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0.wxyz * u_xlat1.wxyz;
					    u_xlat1.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat1.x = (-u_xlat1.x) + 1.0;
					    u_xlat1.x = u_xlat1.x * _ProjectionParams.z;
					    u_xlat1.x = max(u_xlat1.x, 0.0);
					    u_xlat1.x = u_xlat1.x * unity_FogParams.y;
					    u_xlat1.x = exp2((-u_xlat1.x));
					    u_xlat1.x = min(u_xlat1.x, 1.0);
					    SV_Target0.xyz = u_xlat0.yzw * u_xlat1.xxx;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0.wxyz * u_xlat1.wxyz;
					    u_xlat1.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat1.x = (-u_xlat1.x) + 1.0;
					    u_xlat1.x = u_xlat1.x * _ProjectionParams.z;
					    u_xlat1.x = max(u_xlat1.x, 0.0);
					    u_xlat1.x = u_xlat1.x * unity_FogParams.y;
					    u_xlat1.x = exp2((-u_xlat1.x));
					    u_xlat1.x = min(u_xlat1.x, 1.0);
					    SV_Target0.xyz = u_xlat0.yzw * u_xlat1.xxx;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendAdd" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0.wxyz * u_xlat1.wxyz;
					    u_xlat1.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat1.x = (-u_xlat1.x) + 1.0;
					    u_xlat1.x = u_xlat1.x * _ProjectionParams.z;
					    u_xlat1.x = max(u_xlat1.x, 0.0);
					    u_xlat1.x = u_xlat1.x * unity_FogParams.y;
					    u_xlat1.x = exp2((-u_xlat1.x));
					    u_xlat1.x = min(u_xlat1.x, 1.0);
					    SV_Target0.xyz = u_xlat0.yzw * u_xlat1.xxx;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0.wxyz * u_xlat1.wxyz;
					    u_xlat1.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat1.x = (-u_xlat1.x) + 1.0;
					    u_xlat1.x = u_xlat1.x * _ProjectionParams.z;
					    u_xlat1.x = max(u_xlat1.x, 0.0);
					    u_xlat1.x = u_xlat1.x * unity_FogParams.y;
					    u_xlat1.x = exp2((-u_xlat1.x));
					    u_xlat1.x = min(u_xlat1.x, 1.0);
					    SV_Target0.xyz = u_xlat0.yzw * u_xlat1.xxx;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendAdd" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0.wxyz * u_xlat1.wxyz;
					    u_xlat1.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat1.x = (-u_xlat1.x) + 1.0;
					    u_xlat1.x = u_xlat1.x * _ProjectionParams.z;
					    u_xlat1.x = max(u_xlat1.x, 0.0);
					    u_xlat1.x = u_xlat1.x * unity_FogParams.x;
					    u_xlat1.x = u_xlat1.x * (-u_xlat1.x);
					    u_xlat1.x = exp2(u_xlat1.x);
					    SV_Target0.xyz = u_xlat0.yzw * u_xlat1.xxx;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0.wxyz * u_xlat1.wxyz;
					    u_xlat1.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat1.x = (-u_xlat1.x) + 1.0;
					    u_xlat1.x = u_xlat1.x * _ProjectionParams.z;
					    u_xlat1.x = max(u_xlat1.x, 0.0);
					    u_xlat1.x = u_xlat1.x * unity_FogParams.x;
					    u_xlat1.x = u_xlat1.x * (-u_xlat1.x);
					    u_xlat1.x = exp2(u_xlat1.x);
					    SV_Target0.xyz = u_xlat0.yzw * u_xlat1.xxx;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendAdd" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0.wxyz * u_xlat1.wxyz;
					    u_xlat1.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat1.x = (-u_xlat1.x) + 1.0;
					    u_xlat1.x = u_xlat1.x * _ProjectionParams.z;
					    u_xlat1.x = max(u_xlat1.x, 0.0);
					    u_xlat1.x = u_xlat1.x * unity_FogParams.x;
					    u_xlat1.x = u_xlat1.x * (-u_xlat1.x);
					    u_xlat1.x = exp2(u_xlat1.x);
					    SV_Target0.xyz = u_xlat0.yzw * u_xlat1.xxx;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0.wxyz * u_xlat1.wxyz;
					    u_xlat1.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat1.x = (-u_xlat1.x) + 1.0;
					    u_xlat1.x = u_xlat1.x * _ProjectionParams.z;
					    u_xlat1.x = max(u_xlat1.x, 0.0);
					    u_xlat1.x = u_xlat1.x * unity_FogParams.x;
					    u_xlat1.x = u_xlat1.x * (-u_xlat1.x);
					    u_xlat1.x = exp2(u_xlat1.x);
					    SV_Target0.xyz = u_xlat0.yzw * u_xlat1.xxx;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendAdd" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					bool u_xlatb1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1.x = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat0.w = u_xlat0.w * u_xlat1.x;
					    u_xlat0 = u_xlat0 * vs_COLOR0;
					    SV_Target0.w = u_xlat0.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					bool u_xlatb1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1.x = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat0.w = u_xlat0.w * u_xlat1.x;
					    u_xlat0 = u_xlat0 * vs_COLOR0;
					    SV_Target0.w = u_xlat0.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendAdd" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[7];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					bool u_xlatb2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2.x = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2.x;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    SV_Target0.w = u_xlat0.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[6];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					bool u_xlatb2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2.x = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2.x;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    SV_Target0.w = u_xlat0.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendAdd" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					bool u_xlatb1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1.x = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat0.w = u_xlat0.w * u_xlat1.x;
					    u_xlat0 = u_xlat0 * vs_COLOR0;
					    u_xlat1.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat1.x = (-u_xlat1.x) + 1.0;
					    u_xlat1.x = u_xlat1.x * _ProjectionParams.z;
					    u_xlat1.x = max(u_xlat1.x, 0.0);
					    u_xlat1.x = u_xlat1.x * unity_FogParams.z + unity_FogParams.w;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.xyz * u_xlat1.xxx;
					    SV_Target0.w = u_xlat0.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					bool u_xlatb1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1.x = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat0.w = u_xlat0.w * u_xlat1.x;
					    u_xlat0 = u_xlat0 * vs_COLOR0;
					    u_xlat1.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat1.x = (-u_xlat1.x) + 1.0;
					    u_xlat1.x = u_xlat1.x * _ProjectionParams.z;
					    u_xlat1.x = max(u_xlat1.x, 0.0);
					    u_xlat1.x = u_xlat1.x * unity_FogParams.z + unity_FogParams.w;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.xyz * u_xlat1.xxx;
					    SV_Target0.w = u_xlat0.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendAdd" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					bool u_xlatb2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2.x = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2.x;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat1.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat1.x = (-u_xlat1.x) + 1.0;
					    u_xlat1.x = u_xlat1.x * _ProjectionParams.z;
					    u_xlat1.x = max(u_xlat1.x, 0.0);
					    u_xlat1.x = u_xlat1.x * unity_FogParams.z + unity_FogParams.w;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.xyz * u_xlat1.xxx;
					    SV_Target0.w = u_xlat0.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					bool u_xlatb2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2.x = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2.x;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat1.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat1.x = (-u_xlat1.x) + 1.0;
					    u_xlat1.x = u_xlat1.x * _ProjectionParams.z;
					    u_xlat1.x = max(u_xlat1.x, 0.0);
					    u_xlat1.x = u_xlat1.x * unity_FogParams.z + unity_FogParams.w;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.xyz * u_xlat1.xxx;
					    SV_Target0.w = u_xlat0.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendAdd" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					float u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3 = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat1.xyz;
					    SV_Target0.w = u_xlat1.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					float u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3 = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat1.xyz;
					    SV_Target0.w = u_xlat1.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendAdd" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					bool u_xlatb2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2.x = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2.x;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat1.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat1.x = (-u_xlat1.x) + 1.0;
					    u_xlat1.x = u_xlat1.x * _ProjectionParams.z;
					    u_xlat1.x = max(u_xlat1.x, 0.0);
					    u_xlat1.x = u_xlat1.x * unity_FogParams.y;
					    u_xlat1.x = exp2((-u_xlat1.x));
					    u_xlat1.x = min(u_xlat1.x, 1.0);
					    SV_Target0.xyz = u_xlat0.xyz * u_xlat1.xxx;
					    SV_Target0.w = u_xlat0.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					bool u_xlatb2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2.x = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2.x;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat1.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat1.x = (-u_xlat1.x) + 1.0;
					    u_xlat1.x = u_xlat1.x * _ProjectionParams.z;
					    u_xlat1.x = max(u_xlat1.x, 0.0);
					    u_xlat1.x = u_xlat1.x * unity_FogParams.y;
					    u_xlat1.x = exp2((-u_xlat1.x));
					    u_xlat1.x = min(u_xlat1.x, 1.0);
					    SV_Target0.xyz = u_xlat0.xyz * u_xlat1.xxx;
					    SV_Target0.w = u_xlat0.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendAdd" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					float u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3 = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat1.xyz;
					    SV_Target0.w = u_xlat1.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					float u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3 = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat1.xyz;
					    SV_Target0.w = u_xlat1.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendAdd" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					bool u_xlatb2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2.x = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2.x;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat1.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat1.x = (-u_xlat1.x) + 1.0;
					    u_xlat1.x = u_xlat1.x * _ProjectionParams.z;
					    u_xlat1.x = max(u_xlat1.x, 0.0);
					    u_xlat1.x = u_xlat1.x * unity_FogParams.x;
					    u_xlat1.x = u_xlat1.x * (-u_xlat1.x);
					    u_xlat1.x = exp2(u_xlat1.x);
					    SV_Target0.xyz = u_xlat0.xyz * u_xlat1.xxx;
					    SV_Target0.w = u_xlat0.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					bool u_xlatb2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2.x = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2.x;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat1.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat1.x = (-u_xlat1.x) + 1.0;
					    u_xlat1.x = u_xlat1.x * _ProjectionParams.z;
					    u_xlat1.x = max(u_xlat1.x, 0.0);
					    u_xlat1.x = u_xlat1.x * unity_FogParams.x;
					    u_xlat1.x = u_xlat1.x * (-u_xlat1.x);
					    u_xlat1.x = exp2(u_xlat1.x);
					    SV_Target0.xyz = u_xlat0.xyz * u_xlat1.xxx;
					    SV_Target0.w = u_xlat0.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendAdd" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[7];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					bool u_xlatb2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2.x = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2.x;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    SV_Target0.w = u_xlat0.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[6];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					bool u_xlatb2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2.x = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2.x;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    SV_Target0.w = u_xlat0.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendAdd" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[7];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					bool u_xlatb2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2.x = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2.x;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    SV_Target0.w = u_xlat0.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[6];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					bool u_xlatb2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2.x = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2.x;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    SV_Target0.w = u_xlat0.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendAdd" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					bool u_xlatb2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2.x = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2.x;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat1.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat1.x = (-u_xlat1.x) + 1.0;
					    u_xlat1.x = u_xlat1.x * _ProjectionParams.z;
					    u_xlat1.x = max(u_xlat1.x, 0.0);
					    u_xlat1.x = u_xlat1.x * unity_FogParams.z + unity_FogParams.w;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.xyz * u_xlat1.xxx;
					    SV_Target0.w = u_xlat0.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					bool u_xlatb2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2.x = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2.x;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat1.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat1.x = (-u_xlat1.x) + 1.0;
					    u_xlat1.x = u_xlat1.x * _ProjectionParams.z;
					    u_xlat1.x = max(u_xlat1.x, 0.0);
					    u_xlat1.x = u_xlat1.x * unity_FogParams.z + unity_FogParams.w;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.xyz * u_xlat1.xxx;
					    SV_Target0.w = u_xlat0.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendAdd" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					bool u_xlatb2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2.x = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2.x;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat1.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat1.x = (-u_xlat1.x) + 1.0;
					    u_xlat1.x = u_xlat1.x * _ProjectionParams.z;
					    u_xlat1.x = max(u_xlat1.x, 0.0);
					    u_xlat1.x = u_xlat1.x * unity_FogParams.z + unity_FogParams.w;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.xyz * u_xlat1.xxx;
					    SV_Target0.w = u_xlat0.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					bool u_xlatb2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2.x = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2.x;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat1.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat1.x = (-u_xlat1.x) + 1.0;
					    u_xlat1.x = u_xlat1.x * _ProjectionParams.z;
					    u_xlat1.x = max(u_xlat1.x, 0.0);
					    u_xlat1.x = u_xlat1.x * unity_FogParams.z + unity_FogParams.w;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.xyz * u_xlat1.xxx;
					    SV_Target0.w = u_xlat0.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendAdd" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					bool u_xlatb2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2.x = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2.x;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat1.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat1.x = (-u_xlat1.x) + 1.0;
					    u_xlat1.x = u_xlat1.x * _ProjectionParams.z;
					    u_xlat1.x = max(u_xlat1.x, 0.0);
					    u_xlat1.x = u_xlat1.x * unity_FogParams.y;
					    u_xlat1.x = exp2((-u_xlat1.x));
					    u_xlat1.x = min(u_xlat1.x, 1.0);
					    SV_Target0.xyz = u_xlat0.xyz * u_xlat1.xxx;
					    SV_Target0.w = u_xlat0.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					bool u_xlatb2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2.x = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2.x;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat1.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat1.x = (-u_xlat1.x) + 1.0;
					    u_xlat1.x = u_xlat1.x * _ProjectionParams.z;
					    u_xlat1.x = max(u_xlat1.x, 0.0);
					    u_xlat1.x = u_xlat1.x * unity_FogParams.y;
					    u_xlat1.x = exp2((-u_xlat1.x));
					    u_xlat1.x = min(u_xlat1.x, 1.0);
					    SV_Target0.xyz = u_xlat0.xyz * u_xlat1.xxx;
					    SV_Target0.w = u_xlat0.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendAdd" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					bool u_xlatb2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2.x = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2.x;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat1.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat1.x = (-u_xlat1.x) + 1.0;
					    u_xlat1.x = u_xlat1.x * _ProjectionParams.z;
					    u_xlat1.x = max(u_xlat1.x, 0.0);
					    u_xlat1.x = u_xlat1.x * unity_FogParams.y;
					    u_xlat1.x = exp2((-u_xlat1.x));
					    u_xlat1.x = min(u_xlat1.x, 1.0);
					    SV_Target0.xyz = u_xlat0.xyz * u_xlat1.xxx;
					    SV_Target0.w = u_xlat0.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					bool u_xlatb2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2.x = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2.x;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat1.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat1.x = (-u_xlat1.x) + 1.0;
					    u_xlat1.x = u_xlat1.x * _ProjectionParams.z;
					    u_xlat1.x = max(u_xlat1.x, 0.0);
					    u_xlat1.x = u_xlat1.x * unity_FogParams.y;
					    u_xlat1.x = exp2((-u_xlat1.x));
					    u_xlat1.x = min(u_xlat1.x, 1.0);
					    SV_Target0.xyz = u_xlat0.xyz * u_xlat1.xxx;
					    SV_Target0.w = u_xlat0.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendAdd" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					bool u_xlatb2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2.x = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2.x;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat1.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat1.x = (-u_xlat1.x) + 1.0;
					    u_xlat1.x = u_xlat1.x * _ProjectionParams.z;
					    u_xlat1.x = max(u_xlat1.x, 0.0);
					    u_xlat1.x = u_xlat1.x * unity_FogParams.x;
					    u_xlat1.x = u_xlat1.x * (-u_xlat1.x);
					    u_xlat1.x = exp2(u_xlat1.x);
					    SV_Target0.xyz = u_xlat0.xyz * u_xlat1.xxx;
					    SV_Target0.w = u_xlat0.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					bool u_xlatb2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2.x = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2.x;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat1.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat1.x = (-u_xlat1.x) + 1.0;
					    u_xlat1.x = u_xlat1.x * _ProjectionParams.z;
					    u_xlat1.x = max(u_xlat1.x, 0.0);
					    u_xlat1.x = u_xlat1.x * unity_FogParams.x;
					    u_xlat1.x = u_xlat1.x * (-u_xlat1.x);
					    u_xlat1.x = exp2(u_xlat1.x);
					    SV_Target0.xyz = u_xlat0.xyz * u_xlat1.xxx;
					    SV_Target0.w = u_xlat0.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendAdd" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					bool u_xlatb2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2.x = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2.x;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat1.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat1.x = (-u_xlat1.x) + 1.0;
					    u_xlat1.x = u_xlat1.x * _ProjectionParams.z;
					    u_xlat1.x = max(u_xlat1.x, 0.0);
					    u_xlat1.x = u_xlat1.x * unity_FogParams.x;
					    u_xlat1.x = u_xlat1.x * (-u_xlat1.x);
					    u_xlat1.x = exp2(u_xlat1.x);
					    SV_Target0.xyz = u_xlat0.xyz * u_xlat1.xxx;
					    SV_Target0.w = u_xlat0.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					bool u_xlatb2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2.x = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2.x;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat1.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat1.x = (-u_xlat1.x) + 1.0;
					    u_xlat1.x = u_xlat1.x * _ProjectionParams.z;
					    u_xlat1.x = max(u_xlat1.x, 0.0);
					    u_xlat1.x = u_xlat1.x * unity_FogParams.x;
					    u_xlat1.x = u_xlat1.x * (-u_xlat1.x);
					    u_xlat1.x = exp2(u_xlat1.x);
					    SV_Target0.xyz = u_xlat0.xyz * u_xlat1.xxx;
					    SV_Target0.w = u_xlat0.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendAdd" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					bool u_xlatb1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1.x = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat0.w = u_xlat0.w * u_xlat1.x;
					    u_xlat0 = u_xlat0.wxyz * vs_COLOR0.wxyz;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.yzw;
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					bool u_xlatb1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1.x = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat0.w = u_xlat0.w * u_xlat1.x;
					    u_xlat0 = u_xlat0.wxyz * vs_COLOR0.wxyz;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.yzw;
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendAdd" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[7];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					bool u_xlatb2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2.x = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2.x;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0.wxyz * u_xlat1.wxyz;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.yzw;
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[6];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					bool u_xlatb2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2.x = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2.x;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0.wxyz * u_xlat1.wxyz;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.yzw;
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendAdd" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					bool u_xlatb1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1.x = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat0.w = u_xlat0.w * u_xlat1.x;
					    u_xlat0 = u_xlat0.wxyz * vs_COLOR0.wxyz;
					    u_xlat1.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat1.x = (-u_xlat1.x) + 1.0;
					    u_xlat1.x = u_xlat1.x * _ProjectionParams.z;
					    u_xlat1.x = max(u_xlat1.x, 0.0);
					    u_xlat1.x = u_xlat1.x * unity_FogParams.z + unity_FogParams.w;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.yzw * u_xlat1.xxx;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					bool u_xlatb1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1.x = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat0.w = u_xlat0.w * u_xlat1.x;
					    u_xlat0 = u_xlat0.wxyz * vs_COLOR0.wxyz;
					    u_xlat1.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat1.x = (-u_xlat1.x) + 1.0;
					    u_xlat1.x = u_xlat1.x * _ProjectionParams.z;
					    u_xlat1.x = max(u_xlat1.x, 0.0);
					    u_xlat1.x = u_xlat1.x * unity_FogParams.z + unity_FogParams.w;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.yzw * u_xlat1.xxx;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendAdd" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					bool u_xlatb2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2.x = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2.x;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0.wxyz * u_xlat1.wxyz;
					    u_xlat1.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat1.x = (-u_xlat1.x) + 1.0;
					    u_xlat1.x = u_xlat1.x * _ProjectionParams.z;
					    u_xlat1.x = max(u_xlat1.x, 0.0);
					    u_xlat1.x = u_xlat1.x * unity_FogParams.z + unity_FogParams.w;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.yzw * u_xlat1.xxx;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					bool u_xlatb2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2.x = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2.x;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0.wxyz * u_xlat1.wxyz;
					    u_xlat1.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat1.x = (-u_xlat1.x) + 1.0;
					    u_xlat1.x = u_xlat1.x * _ProjectionParams.z;
					    u_xlat1.x = max(u_xlat1.x, 0.0);
					    u_xlat1.x = u_xlat1.x * unity_FogParams.z + unity_FogParams.w;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.yzw * u_xlat1.xxx;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendAdd" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					float u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3 = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3;
					    u_xlat1 = u_xlat1.wxyz * vs_COLOR0.wxyz;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat1.yzw;
					    u_xlat1.x = u_xlat1.x;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat1.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					float u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3 = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3;
					    u_xlat1 = u_xlat1.wxyz * vs_COLOR0.wxyz;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat1.yzw;
					    u_xlat1.x = u_xlat1.x;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat1.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendAdd" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					bool u_xlatb2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2.x = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2.x;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0.wxyz * u_xlat1.wxyz;
					    u_xlat1.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat1.x = (-u_xlat1.x) + 1.0;
					    u_xlat1.x = u_xlat1.x * _ProjectionParams.z;
					    u_xlat1.x = max(u_xlat1.x, 0.0);
					    u_xlat1.x = u_xlat1.x * unity_FogParams.y;
					    u_xlat1.x = exp2((-u_xlat1.x));
					    u_xlat1.x = min(u_xlat1.x, 1.0);
					    SV_Target0.xyz = u_xlat0.yzw * u_xlat1.xxx;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					bool u_xlatb2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2.x = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2.x;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0.wxyz * u_xlat1.wxyz;
					    u_xlat1.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat1.x = (-u_xlat1.x) + 1.0;
					    u_xlat1.x = u_xlat1.x * _ProjectionParams.z;
					    u_xlat1.x = max(u_xlat1.x, 0.0);
					    u_xlat1.x = u_xlat1.x * unity_FogParams.y;
					    u_xlat1.x = exp2((-u_xlat1.x));
					    u_xlat1.x = min(u_xlat1.x, 1.0);
					    SV_Target0.xyz = u_xlat0.yzw * u_xlat1.xxx;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendAdd" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					float u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3 = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3;
					    u_xlat1 = u_xlat1.wxyz * vs_COLOR0.wxyz;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat1.yzw;
					    u_xlat1.x = u_xlat1.x;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat1.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					float u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3 = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3;
					    u_xlat1 = u_xlat1.wxyz * vs_COLOR0.wxyz;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat1.yzw;
					    u_xlat1.x = u_xlat1.x;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat1.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendAdd" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					bool u_xlatb2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2.x = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2.x;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0.wxyz * u_xlat1.wxyz;
					    u_xlat1.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat1.x = (-u_xlat1.x) + 1.0;
					    u_xlat1.x = u_xlat1.x * _ProjectionParams.z;
					    u_xlat1.x = max(u_xlat1.x, 0.0);
					    u_xlat1.x = u_xlat1.x * unity_FogParams.x;
					    u_xlat1.x = u_xlat1.x * (-u_xlat1.x);
					    u_xlat1.x = exp2(u_xlat1.x);
					    SV_Target0.xyz = u_xlat0.yzw * u_xlat1.xxx;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					bool u_xlatb2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2.x = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2.x;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0.wxyz * u_xlat1.wxyz;
					    u_xlat1.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat1.x = (-u_xlat1.x) + 1.0;
					    u_xlat1.x = u_xlat1.x * _ProjectionParams.z;
					    u_xlat1.x = max(u_xlat1.x, 0.0);
					    u_xlat1.x = u_xlat1.x * unity_FogParams.x;
					    u_xlat1.x = u_xlat1.x * (-u_xlat1.x);
					    u_xlat1.x = exp2(u_xlat1.x);
					    SV_Target0.xyz = u_xlat0.yzw * u_xlat1.xxx;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendAdd" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[7];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					bool u_xlatb2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2.x = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2.x;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0.wxyz * u_xlat1.wxyz;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.yzw;
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[6];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					bool u_xlatb2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2.x = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2.x;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0.wxyz * u_xlat1.wxyz;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.yzw;
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendAdd" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[7];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					bool u_xlatb2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2.x = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2.x;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0.wxyz * u_xlat1.wxyz;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.yzw;
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[6];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					bool u_xlatb2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2.x = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2.x;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0.wxyz * u_xlat1.wxyz;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.yzw;
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendAdd" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					bool u_xlatb2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2.x = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2.x;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0.wxyz * u_xlat1.wxyz;
					    u_xlat1.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat1.x = (-u_xlat1.x) + 1.0;
					    u_xlat1.x = u_xlat1.x * _ProjectionParams.z;
					    u_xlat1.x = max(u_xlat1.x, 0.0);
					    u_xlat1.x = u_xlat1.x * unity_FogParams.z + unity_FogParams.w;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.yzw * u_xlat1.xxx;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					bool u_xlatb2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2.x = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2.x;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0.wxyz * u_xlat1.wxyz;
					    u_xlat1.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat1.x = (-u_xlat1.x) + 1.0;
					    u_xlat1.x = u_xlat1.x * _ProjectionParams.z;
					    u_xlat1.x = max(u_xlat1.x, 0.0);
					    u_xlat1.x = u_xlat1.x * unity_FogParams.z + unity_FogParams.w;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.yzw * u_xlat1.xxx;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendAdd" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					bool u_xlatb2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2.x = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2.x;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0.wxyz * u_xlat1.wxyz;
					    u_xlat1.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat1.x = (-u_xlat1.x) + 1.0;
					    u_xlat1.x = u_xlat1.x * _ProjectionParams.z;
					    u_xlat1.x = max(u_xlat1.x, 0.0);
					    u_xlat1.x = u_xlat1.x * unity_FogParams.z + unity_FogParams.w;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.yzw * u_xlat1.xxx;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					bool u_xlatb2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2.x = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2.x;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0.wxyz * u_xlat1.wxyz;
					    u_xlat1.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat1.x = (-u_xlat1.x) + 1.0;
					    u_xlat1.x = u_xlat1.x * _ProjectionParams.z;
					    u_xlat1.x = max(u_xlat1.x, 0.0);
					    u_xlat1.x = u_xlat1.x * unity_FogParams.z + unity_FogParams.w;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.yzw * u_xlat1.xxx;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendAdd" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					bool u_xlatb2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2.x = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2.x;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0.wxyz * u_xlat1.wxyz;
					    u_xlat1.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat1.x = (-u_xlat1.x) + 1.0;
					    u_xlat1.x = u_xlat1.x * _ProjectionParams.z;
					    u_xlat1.x = max(u_xlat1.x, 0.0);
					    u_xlat1.x = u_xlat1.x * unity_FogParams.y;
					    u_xlat1.x = exp2((-u_xlat1.x));
					    u_xlat1.x = min(u_xlat1.x, 1.0);
					    SV_Target0.xyz = u_xlat0.yzw * u_xlat1.xxx;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					bool u_xlatb2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2.x = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2.x;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0.wxyz * u_xlat1.wxyz;
					    u_xlat1.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat1.x = (-u_xlat1.x) + 1.0;
					    u_xlat1.x = u_xlat1.x * _ProjectionParams.z;
					    u_xlat1.x = max(u_xlat1.x, 0.0);
					    u_xlat1.x = u_xlat1.x * unity_FogParams.y;
					    u_xlat1.x = exp2((-u_xlat1.x));
					    u_xlat1.x = min(u_xlat1.x, 1.0);
					    SV_Target0.xyz = u_xlat0.yzw * u_xlat1.xxx;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendAdd" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					bool u_xlatb2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2.x = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2.x;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0.wxyz * u_xlat1.wxyz;
					    u_xlat1.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat1.x = (-u_xlat1.x) + 1.0;
					    u_xlat1.x = u_xlat1.x * _ProjectionParams.z;
					    u_xlat1.x = max(u_xlat1.x, 0.0);
					    u_xlat1.x = u_xlat1.x * unity_FogParams.y;
					    u_xlat1.x = exp2((-u_xlat1.x));
					    u_xlat1.x = min(u_xlat1.x, 1.0);
					    SV_Target0.xyz = u_xlat0.yzw * u_xlat1.xxx;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					bool u_xlatb2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2.x = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2.x;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0.wxyz * u_xlat1.wxyz;
					    u_xlat1.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat1.x = (-u_xlat1.x) + 1.0;
					    u_xlat1.x = u_xlat1.x * _ProjectionParams.z;
					    u_xlat1.x = max(u_xlat1.x, 0.0);
					    u_xlat1.x = u_xlat1.x * unity_FogParams.y;
					    u_xlat1.x = exp2((-u_xlat1.x));
					    u_xlat1.x = min(u_xlat1.x, 1.0);
					    SV_Target0.xyz = u_xlat0.yzw * u_xlat1.xxx;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendAdd" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					bool u_xlatb2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2.x = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2.x;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0.wxyz * u_xlat1.wxyz;
					    u_xlat1.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat1.x = (-u_xlat1.x) + 1.0;
					    u_xlat1.x = u_xlat1.x * _ProjectionParams.z;
					    u_xlat1.x = max(u_xlat1.x, 0.0);
					    u_xlat1.x = u_xlat1.x * unity_FogParams.x;
					    u_xlat1.x = u_xlat1.x * (-u_xlat1.x);
					    u_xlat1.x = exp2(u_xlat1.x);
					    SV_Target0.xyz = u_xlat0.yzw * u_xlat1.xxx;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					bool u_xlatb2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2.x = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2.x;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0.wxyz * u_xlat1.wxyz;
					    u_xlat1.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat1.x = (-u_xlat1.x) + 1.0;
					    u_xlat1.x = u_xlat1.x * _ProjectionParams.z;
					    u_xlat1.x = max(u_xlat1.x, 0.0);
					    u_xlat1.x = u_xlat1.x * unity_FogParams.x;
					    u_xlat1.x = u_xlat1.x * (-u_xlat1.x);
					    u_xlat1.x = exp2(u_xlat1.x);
					    SV_Target0.xyz = u_xlat0.yzw * u_xlat1.xxx;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendAdd" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					bool u_xlatb2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2.x = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2.x;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0.wxyz * u_xlat1.wxyz;
					    u_xlat1.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat1.x = (-u_xlat1.x) + 1.0;
					    u_xlat1.x = u_xlat1.x * _ProjectionParams.z;
					    u_xlat1.x = max(u_xlat1.x, 0.0);
					    u_xlat1.x = u_xlat1.x * unity_FogParams.x;
					    u_xlat1.x = u_xlat1.x * (-u_xlat1.x);
					    u_xlat1.x = exp2(u_xlat1.x);
					    SV_Target0.xyz = u_xlat0.yzw * u_xlat1.xxx;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					bool u_xlatb2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2.x = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2.x;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0.wxyz * u_xlat1.wxyz;
					    u_xlat1.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat1.x = (-u_xlat1.x) + 1.0;
					    u_xlat1.x = u_xlat1.x * _ProjectionParams.z;
					    u_xlat1.x = max(u_xlat1.x, 0.0);
					    u_xlat1.x = u_xlat1.x * unity_FogParams.x;
					    u_xlat1.x = u_xlat1.x * (-u_xlat1.x);
					    u_xlat1.x = exp2(u_xlat1.x);
					    SV_Target0.xyz = u_xlat0.yzw * u_xlat1.xxx;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendAdd" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    SV_Target0.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    SV_Target0.w = u_xlatb0 ? 1.0 : float(0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    SV_Target0.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    SV_Target0.w = u_xlatb0 ? 1.0 : float(0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendAdd" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[7];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb0 = u_xlat1.w>=u_xlat0.x;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    SV_Target0.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    SV_Target0.w = u_xlatb0 ? 1.0 : float(0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[6];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb0 = u_xlat1.w>=u_xlat0.x;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    SV_Target0.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    SV_Target0.w = u_xlatb0 ? 1.0 : float(0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendAdd" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    SV_Target0.xyz = u_xlat3.xyz * vec3(u_xlat0);
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    SV_Target0.w = u_xlatb0 ? 1.0 : float(0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    SV_Target0.xyz = u_xlat3.xyz * vec3(u_xlat0);
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    SV_Target0.w = u_xlatb0 ? 1.0 : float(0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendAdd" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb0 = u_xlat1.w>=u_xlat0.x;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    SV_Target0.w = u_xlatb0 ? 1.0 : float(0.0);
					    u_xlat0.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0.x = (-u_xlat0.x) + 1.0;
					    u_xlat0.x = u_xlat0.x * _ProjectionParams.z;
					    u_xlat0.x = max(u_xlat0.x, 0.0);
					    u_xlat0.x = u_xlat0.x * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat3.xyz * u_xlat0.xxx;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb0 = u_xlat1.w>=u_xlat0.x;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    SV_Target0.w = u_xlatb0 ? 1.0 : float(0.0);
					    u_xlat0.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0.x = (-u_xlat0.x) + 1.0;
					    u_xlat0.x = u_xlat0.x * _ProjectionParams.z;
					    u_xlat0.x = max(u_xlat0.x, 0.0);
					    u_xlat0.x = u_xlat0.x * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat3.xyz * u_xlat0.xxx;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendAdd" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    SV_Target0.xyz = u_xlat3.xyz * vec3(u_xlat0);
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    SV_Target0.w = u_xlatb0 ? 1.0 : float(0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    SV_Target0.xyz = u_xlat3.xyz * vec3(u_xlat0);
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    SV_Target0.w = u_xlatb0 ? 1.0 : float(0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendAdd" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0.x = (-u_xlat0.x) + 1.0;
					    u_xlat0.x = u_xlat0.x * _ProjectionParams.z;
					    u_xlat0.x = max(u_xlat0.x, 0.0);
					    u_xlat0.x = u_xlat0.x * unity_FogParams.y;
					    u_xlat0.x = exp2((-u_xlat0.x));
					    u_xlat0.x = min(u_xlat0.x, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    SV_Target0.xyz = u_xlat3.xyz * u_xlat0.xxx;
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0.x;
					    SV_Target0.w = u_xlatb0 ? 1.0 : float(0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0.x = (-u_xlat0.x) + 1.0;
					    u_xlat0.x = u_xlat0.x * _ProjectionParams.z;
					    u_xlat0.x = max(u_xlat0.x, 0.0);
					    u_xlat0.x = u_xlat0.x * unity_FogParams.y;
					    u_xlat0.x = exp2((-u_xlat0.x));
					    u_xlat0.x = min(u_xlat0.x, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    SV_Target0.xyz = u_xlat3.xyz * u_xlat0.xxx;
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0.x;
					    SV_Target0.w = u_xlatb0 ? 1.0 : float(0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendAdd" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    SV_Target0.xyz = u_xlat3.xyz * vec3(u_xlat0);
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    SV_Target0.w = u_xlatb0 ? 1.0 : float(0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    SV_Target0.xyz = u_xlat3.xyz * vec3(u_xlat0);
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    SV_Target0.w = u_xlatb0 ? 1.0 : float(0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendAdd" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0.x = (-u_xlat0.x) + 1.0;
					    u_xlat0.x = u_xlat0.x * _ProjectionParams.z;
					    u_xlat0.x = max(u_xlat0.x, 0.0);
					    u_xlat0.x = u_xlat0.x * unity_FogParams.x;
					    u_xlat0.x = u_xlat0.x * (-u_xlat0.x);
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    SV_Target0.xyz = u_xlat3.xyz * u_xlat0.xxx;
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0.x;
					    SV_Target0.w = u_xlatb0 ? 1.0 : float(0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0.x = (-u_xlat0.x) + 1.0;
					    u_xlat0.x = u_xlat0.x * _ProjectionParams.z;
					    u_xlat0.x = max(u_xlat0.x, 0.0);
					    u_xlat0.x = u_xlat0.x * unity_FogParams.x;
					    u_xlat0.x = u_xlat0.x * (-u_xlat0.x);
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    SV_Target0.xyz = u_xlat3.xyz * u_xlat0.xxx;
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0.x;
					    SV_Target0.w = u_xlatb0 ? 1.0 : float(0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendAdd" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[7];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb0 = u_xlat1.w>=u_xlat0.x;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    SV_Target0.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    SV_Target0.w = u_xlatb0 ? 1.0 : float(0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[6];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb0 = u_xlat1.w>=u_xlat0.x;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    SV_Target0.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    SV_Target0.w = u_xlatb0 ? 1.0 : float(0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendAdd" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[7];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb0 = u_xlat1.w>=u_xlat0.x;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    SV_Target0.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    SV_Target0.w = u_xlatb0 ? 1.0 : float(0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[6];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb0 = u_xlat1.w>=u_xlat0.x;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    SV_Target0.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    SV_Target0.w = u_xlatb0 ? 1.0 : float(0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendAdd" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb0 = u_xlat1.w>=u_xlat0.x;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    SV_Target0.w = u_xlatb0 ? 1.0 : float(0.0);
					    u_xlat0.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0.x = (-u_xlat0.x) + 1.0;
					    u_xlat0.x = u_xlat0.x * _ProjectionParams.z;
					    u_xlat0.x = max(u_xlat0.x, 0.0);
					    u_xlat0.x = u_xlat0.x * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat3.xyz * u_xlat0.xxx;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb0 = u_xlat1.w>=u_xlat0.x;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    SV_Target0.w = u_xlatb0 ? 1.0 : float(0.0);
					    u_xlat0.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0.x = (-u_xlat0.x) + 1.0;
					    u_xlat0.x = u_xlat0.x * _ProjectionParams.z;
					    u_xlat0.x = max(u_xlat0.x, 0.0);
					    u_xlat0.x = u_xlat0.x * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat3.xyz * u_xlat0.xxx;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendAdd" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb0 = u_xlat1.w>=u_xlat0.x;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    SV_Target0.w = u_xlatb0 ? 1.0 : float(0.0);
					    u_xlat0.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0.x = (-u_xlat0.x) + 1.0;
					    u_xlat0.x = u_xlat0.x * _ProjectionParams.z;
					    u_xlat0.x = max(u_xlat0.x, 0.0);
					    u_xlat0.x = u_xlat0.x * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat3.xyz * u_xlat0.xxx;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb0 = u_xlat1.w>=u_xlat0.x;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    SV_Target0.w = u_xlatb0 ? 1.0 : float(0.0);
					    u_xlat0.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0.x = (-u_xlat0.x) + 1.0;
					    u_xlat0.x = u_xlat0.x * _ProjectionParams.z;
					    u_xlat0.x = max(u_xlat0.x, 0.0);
					    u_xlat0.x = u_xlat0.x * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat3.xyz * u_xlat0.xxx;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendAdd" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0.x = (-u_xlat0.x) + 1.0;
					    u_xlat0.x = u_xlat0.x * _ProjectionParams.z;
					    u_xlat0.x = max(u_xlat0.x, 0.0);
					    u_xlat0.x = u_xlat0.x * unity_FogParams.y;
					    u_xlat0.x = exp2((-u_xlat0.x));
					    u_xlat0.x = min(u_xlat0.x, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    SV_Target0.xyz = u_xlat3.xyz * u_xlat0.xxx;
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0.x;
					    SV_Target0.w = u_xlatb0 ? 1.0 : float(0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0.x = (-u_xlat0.x) + 1.0;
					    u_xlat0.x = u_xlat0.x * _ProjectionParams.z;
					    u_xlat0.x = max(u_xlat0.x, 0.0);
					    u_xlat0.x = u_xlat0.x * unity_FogParams.y;
					    u_xlat0.x = exp2((-u_xlat0.x));
					    u_xlat0.x = min(u_xlat0.x, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    SV_Target0.xyz = u_xlat3.xyz * u_xlat0.xxx;
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0.x;
					    SV_Target0.w = u_xlatb0 ? 1.0 : float(0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendAdd" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0.x = (-u_xlat0.x) + 1.0;
					    u_xlat0.x = u_xlat0.x * _ProjectionParams.z;
					    u_xlat0.x = max(u_xlat0.x, 0.0);
					    u_xlat0.x = u_xlat0.x * unity_FogParams.y;
					    u_xlat0.x = exp2((-u_xlat0.x));
					    u_xlat0.x = min(u_xlat0.x, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    SV_Target0.xyz = u_xlat3.xyz * u_xlat0.xxx;
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0.x;
					    SV_Target0.w = u_xlatb0 ? 1.0 : float(0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0.x = (-u_xlat0.x) + 1.0;
					    u_xlat0.x = u_xlat0.x * _ProjectionParams.z;
					    u_xlat0.x = max(u_xlat0.x, 0.0);
					    u_xlat0.x = u_xlat0.x * unity_FogParams.y;
					    u_xlat0.x = exp2((-u_xlat0.x));
					    u_xlat0.x = min(u_xlat0.x, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    SV_Target0.xyz = u_xlat3.xyz * u_xlat0.xxx;
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0.x;
					    SV_Target0.w = u_xlatb0 ? 1.0 : float(0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendAdd" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0.x = (-u_xlat0.x) + 1.0;
					    u_xlat0.x = u_xlat0.x * _ProjectionParams.z;
					    u_xlat0.x = max(u_xlat0.x, 0.0);
					    u_xlat0.x = u_xlat0.x * unity_FogParams.x;
					    u_xlat0.x = u_xlat0.x * (-u_xlat0.x);
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    SV_Target0.xyz = u_xlat3.xyz * u_xlat0.xxx;
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0.x;
					    SV_Target0.w = u_xlatb0 ? 1.0 : float(0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0.x = (-u_xlat0.x) + 1.0;
					    u_xlat0.x = u_xlat0.x * _ProjectionParams.z;
					    u_xlat0.x = max(u_xlat0.x, 0.0);
					    u_xlat0.x = u_xlat0.x * unity_FogParams.x;
					    u_xlat0.x = u_xlat0.x * (-u_xlat0.x);
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    SV_Target0.xyz = u_xlat3.xyz * u_xlat0.xxx;
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0.x;
					    SV_Target0.w = u_xlatb0 ? 1.0 : float(0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendAdd" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0.x = (-u_xlat0.x) + 1.0;
					    u_xlat0.x = u_xlat0.x * _ProjectionParams.z;
					    u_xlat0.x = max(u_xlat0.x, 0.0);
					    u_xlat0.x = u_xlat0.x * unity_FogParams.x;
					    u_xlat0.x = u_xlat0.x * (-u_xlat0.x);
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    SV_Target0.xyz = u_xlat3.xyz * u_xlat0.xxx;
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0.x;
					    SV_Target0.w = u_xlatb0 ? 1.0 : float(0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0.x = (-u_xlat0.x) + 1.0;
					    u_xlat0.x = u_xlat0.x * _ProjectionParams.z;
					    u_xlat0.x = max(u_xlat0.x, 0.0);
					    u_xlat0.x = u_xlat0.x * unity_FogParams.x;
					    u_xlat0.x = u_xlat0.x * (-u_xlat0.x);
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    SV_Target0.xyz = u_xlat3.xyz * u_xlat0.xxx;
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0.x;
					    SV_Target0.w = u_xlatb0 ? 1.0 : float(0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendAdd" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    SV_Target0.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat0 = u_xlatb0 ? 1.0 : float(0.0);
					    SV_Target0.w = u_xlat0 * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    SV_Target0.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat0 = u_xlatb0 ? 1.0 : float(0.0);
					    SV_Target0.w = u_xlat0 * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendAdd" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[7];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb0 = u_xlat1.w>=u_xlat0.x;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    SV_Target0.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat0.x = u_xlatb0 ? 1.0 : float(0.0);
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[6];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb0 = u_xlat1.w>=u_xlat0.x;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    SV_Target0.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat0.x = u_xlatb0 ? 1.0 : float(0.0);
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendAdd" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    SV_Target0.xyz = u_xlat3.xyz * vec3(u_xlat0);
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    u_xlat0 = u_xlatb0 ? 1.0 : float(0.0);
					    SV_Target0.w = u_xlat0 * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    SV_Target0.xyz = u_xlat3.xyz * vec3(u_xlat0);
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    u_xlat0 = u_xlatb0 ? 1.0 : float(0.0);
					    SV_Target0.w = u_xlat0 * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendAdd" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb0 = u_xlat1.w>=u_xlat0.x;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat0.x = u_xlatb0 ? 1.0 : float(0.0);
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    u_xlat0.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0.x = (-u_xlat0.x) + 1.0;
					    u_xlat0.x = u_xlat0.x * _ProjectionParams.z;
					    u_xlat0.x = max(u_xlat0.x, 0.0);
					    u_xlat0.x = u_xlat0.x * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat3.xyz * u_xlat0.xxx;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb0 = u_xlat1.w>=u_xlat0.x;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat0.x = u_xlatb0 ? 1.0 : float(0.0);
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    u_xlat0.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0.x = (-u_xlat0.x) + 1.0;
					    u_xlat0.x = u_xlat0.x * _ProjectionParams.z;
					    u_xlat0.x = max(u_xlat0.x, 0.0);
					    u_xlat0.x = u_xlat0.x * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat3.xyz * u_xlat0.xxx;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendAdd" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    SV_Target0.xyz = u_xlat3.xyz * vec3(u_xlat0);
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    u_xlat0 = u_xlatb0 ? 1.0 : float(0.0);
					    SV_Target0.w = u_xlat0 * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    SV_Target0.xyz = u_xlat3.xyz * vec3(u_xlat0);
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    u_xlat0 = u_xlatb0 ? 1.0 : float(0.0);
					    SV_Target0.w = u_xlat0 * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendAdd" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb0 = u_xlat1.w>=u_xlat0.x;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat0.x = u_xlatb0 ? 1.0 : float(0.0);
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    u_xlat0.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0.x = (-u_xlat0.x) + 1.0;
					    u_xlat0.x = u_xlat0.x * _ProjectionParams.z;
					    u_xlat0.x = max(u_xlat0.x, 0.0);
					    u_xlat0.x = u_xlat0.x * unity_FogParams.y;
					    u_xlat0.x = exp2((-u_xlat0.x));
					    u_xlat0.x = min(u_xlat0.x, 1.0);
					    SV_Target0.xyz = u_xlat3.xyz * u_xlat0.xxx;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb0 = u_xlat1.w>=u_xlat0.x;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat0.x = u_xlatb0 ? 1.0 : float(0.0);
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    u_xlat0.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0.x = (-u_xlat0.x) + 1.0;
					    u_xlat0.x = u_xlat0.x * _ProjectionParams.z;
					    u_xlat0.x = max(u_xlat0.x, 0.0);
					    u_xlat0.x = u_xlat0.x * unity_FogParams.y;
					    u_xlat0.x = exp2((-u_xlat0.x));
					    u_xlat0.x = min(u_xlat0.x, 1.0);
					    SV_Target0.xyz = u_xlat3.xyz * u_xlat0.xxx;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendAdd" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    SV_Target0.xyz = u_xlat3.xyz * vec3(u_xlat0);
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    u_xlat0 = u_xlatb0 ? 1.0 : float(0.0);
					    SV_Target0.w = u_xlat0 * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    SV_Target0.xyz = u_xlat3.xyz * vec3(u_xlat0);
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    u_xlat0 = u_xlatb0 ? 1.0 : float(0.0);
					    SV_Target0.w = u_xlat0 * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendAdd" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb0 = u_xlat1.w>=u_xlat0.x;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat0.x = u_xlatb0 ? 1.0 : float(0.0);
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    u_xlat0.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0.x = (-u_xlat0.x) + 1.0;
					    u_xlat0.x = u_xlat0.x * _ProjectionParams.z;
					    u_xlat0.x = max(u_xlat0.x, 0.0);
					    u_xlat0.x = u_xlat0.x * unity_FogParams.x;
					    u_xlat0.x = u_xlat0.x * (-u_xlat0.x);
					    u_xlat0.x = exp2(u_xlat0.x);
					    SV_Target0.xyz = u_xlat3.xyz * u_xlat0.xxx;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb0 = u_xlat1.w>=u_xlat0.x;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat0.x = u_xlatb0 ? 1.0 : float(0.0);
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    u_xlat0.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0.x = (-u_xlat0.x) + 1.0;
					    u_xlat0.x = u_xlat0.x * _ProjectionParams.z;
					    u_xlat0.x = max(u_xlat0.x, 0.0);
					    u_xlat0.x = u_xlat0.x * unity_FogParams.x;
					    u_xlat0.x = u_xlat0.x * (-u_xlat0.x);
					    u_xlat0.x = exp2(u_xlat0.x);
					    SV_Target0.xyz = u_xlat3.xyz * u_xlat0.xxx;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendAdd" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[7];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb0 = u_xlat1.w>=u_xlat0.x;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    SV_Target0.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat0.x = u_xlatb0 ? 1.0 : float(0.0);
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[6];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb0 = u_xlat1.w>=u_xlat0.x;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    SV_Target0.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat0.x = u_xlatb0 ? 1.0 : float(0.0);
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendAdd" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[7];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb0 = u_xlat1.w>=u_xlat0.x;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    SV_Target0.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat0.x = u_xlatb0 ? 1.0 : float(0.0);
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[6];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb0 = u_xlat1.w>=u_xlat0.x;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    SV_Target0.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat0.x = u_xlatb0 ? 1.0 : float(0.0);
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendAdd" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb0 = u_xlat1.w>=u_xlat0.x;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat0.x = u_xlatb0 ? 1.0 : float(0.0);
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    u_xlat0.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0.x = (-u_xlat0.x) + 1.0;
					    u_xlat0.x = u_xlat0.x * _ProjectionParams.z;
					    u_xlat0.x = max(u_xlat0.x, 0.0);
					    u_xlat0.x = u_xlat0.x * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat3.xyz * u_xlat0.xxx;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb0 = u_xlat1.w>=u_xlat0.x;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat0.x = u_xlatb0 ? 1.0 : float(0.0);
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    u_xlat0.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0.x = (-u_xlat0.x) + 1.0;
					    u_xlat0.x = u_xlat0.x * _ProjectionParams.z;
					    u_xlat0.x = max(u_xlat0.x, 0.0);
					    u_xlat0.x = u_xlat0.x * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat3.xyz * u_xlat0.xxx;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendAdd" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb0 = u_xlat1.w>=u_xlat0.x;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat0.x = u_xlatb0 ? 1.0 : float(0.0);
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    u_xlat0.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0.x = (-u_xlat0.x) + 1.0;
					    u_xlat0.x = u_xlat0.x * _ProjectionParams.z;
					    u_xlat0.x = max(u_xlat0.x, 0.0);
					    u_xlat0.x = u_xlat0.x * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat3.xyz * u_xlat0.xxx;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb0 = u_xlat1.w>=u_xlat0.x;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat0.x = u_xlatb0 ? 1.0 : float(0.0);
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    u_xlat0.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0.x = (-u_xlat0.x) + 1.0;
					    u_xlat0.x = u_xlat0.x * _ProjectionParams.z;
					    u_xlat0.x = max(u_xlat0.x, 0.0);
					    u_xlat0.x = u_xlat0.x * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat3.xyz * u_xlat0.xxx;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendAdd" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb0 = u_xlat1.w>=u_xlat0.x;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat0.x = u_xlatb0 ? 1.0 : float(0.0);
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    u_xlat0.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0.x = (-u_xlat0.x) + 1.0;
					    u_xlat0.x = u_xlat0.x * _ProjectionParams.z;
					    u_xlat0.x = max(u_xlat0.x, 0.0);
					    u_xlat0.x = u_xlat0.x * unity_FogParams.y;
					    u_xlat0.x = exp2((-u_xlat0.x));
					    u_xlat0.x = min(u_xlat0.x, 1.0);
					    SV_Target0.xyz = u_xlat3.xyz * u_xlat0.xxx;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb0 = u_xlat1.w>=u_xlat0.x;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat0.x = u_xlatb0 ? 1.0 : float(0.0);
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    u_xlat0.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0.x = (-u_xlat0.x) + 1.0;
					    u_xlat0.x = u_xlat0.x * _ProjectionParams.z;
					    u_xlat0.x = max(u_xlat0.x, 0.0);
					    u_xlat0.x = u_xlat0.x * unity_FogParams.y;
					    u_xlat0.x = exp2((-u_xlat0.x));
					    u_xlat0.x = min(u_xlat0.x, 1.0);
					    SV_Target0.xyz = u_xlat3.xyz * u_xlat0.xxx;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendAdd" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb0 = u_xlat1.w>=u_xlat0.x;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat0.x = u_xlatb0 ? 1.0 : float(0.0);
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    u_xlat0.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0.x = (-u_xlat0.x) + 1.0;
					    u_xlat0.x = u_xlat0.x * _ProjectionParams.z;
					    u_xlat0.x = max(u_xlat0.x, 0.0);
					    u_xlat0.x = u_xlat0.x * unity_FogParams.y;
					    u_xlat0.x = exp2((-u_xlat0.x));
					    u_xlat0.x = min(u_xlat0.x, 1.0);
					    SV_Target0.xyz = u_xlat3.xyz * u_xlat0.xxx;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb0 = u_xlat1.w>=u_xlat0.x;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat0.x = u_xlatb0 ? 1.0 : float(0.0);
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    u_xlat0.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0.x = (-u_xlat0.x) + 1.0;
					    u_xlat0.x = u_xlat0.x * _ProjectionParams.z;
					    u_xlat0.x = max(u_xlat0.x, 0.0);
					    u_xlat0.x = u_xlat0.x * unity_FogParams.y;
					    u_xlat0.x = exp2((-u_xlat0.x));
					    u_xlat0.x = min(u_xlat0.x, 1.0);
					    SV_Target0.xyz = u_xlat3.xyz * u_xlat0.xxx;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendAdd" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb0 = u_xlat1.w>=u_xlat0.x;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat0.x = u_xlatb0 ? 1.0 : float(0.0);
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    u_xlat0.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0.x = (-u_xlat0.x) + 1.0;
					    u_xlat0.x = u_xlat0.x * _ProjectionParams.z;
					    u_xlat0.x = max(u_xlat0.x, 0.0);
					    u_xlat0.x = u_xlat0.x * unity_FogParams.x;
					    u_xlat0.x = u_xlat0.x * (-u_xlat0.x);
					    u_xlat0.x = exp2(u_xlat0.x);
					    SV_Target0.xyz = u_xlat3.xyz * u_xlat0.xxx;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb0 = u_xlat1.w>=u_xlat0.x;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat0.x = u_xlatb0 ? 1.0 : float(0.0);
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    u_xlat0.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0.x = (-u_xlat0.x) + 1.0;
					    u_xlat0.x = u_xlat0.x * _ProjectionParams.z;
					    u_xlat0.x = max(u_xlat0.x, 0.0);
					    u_xlat0.x = u_xlat0.x * unity_FogParams.x;
					    u_xlat0.x = u_xlat0.x * (-u_xlat0.x);
					    u_xlat0.x = exp2(u_xlat0.x);
					    SV_Target0.xyz = u_xlat3.xyz * u_xlat0.xxx;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendAdd" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb0 = u_xlat1.w>=u_xlat0.x;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat0.x = u_xlatb0 ? 1.0 : float(0.0);
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    u_xlat0.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0.x = (-u_xlat0.x) + 1.0;
					    u_xlat0.x = u_xlat0.x * _ProjectionParams.z;
					    u_xlat0.x = max(u_xlat0.x, 0.0);
					    u_xlat0.x = u_xlat0.x * unity_FogParams.x;
					    u_xlat0.x = u_xlat0.x * (-u_xlat0.x);
					    u_xlat0.x = exp2(u_xlat0.x);
					    SV_Target0.xyz = u_xlat3.xyz * u_xlat0.xxx;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb0 = u_xlat1.w>=u_xlat0.x;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat0.x = u_xlatb0 ? 1.0 : float(0.0);
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    u_xlat0.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0.x = (-u_xlat0.x) + 1.0;
					    u_xlat0.x = u_xlat0.x * _ProjectionParams.z;
					    u_xlat0.x = max(u_xlat0.x, 0.0);
					    u_xlat0.x = u_xlat0.x * unity_FogParams.x;
					    u_xlat0.x = u_xlat0.x * (-u_xlat0.x);
					    u_xlat0.x = exp2(u_xlat0.x);
					    SV_Target0.xyz = u_xlat3.xyz * u_xlat0.xxx;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendAdd" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat0 = u_xlat0 * vs_COLOR0;
					    SV_Target0.w = u_xlat0.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat0 = u_xlat0 * vs_COLOR0;
					    SV_Target0.w = u_xlat0.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat0 = u_xlat0 * vs_COLOR0;
					    SV_Target0.w = u_xlat0.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat0 = u_xlat0 * vs_COLOR0;
					    SV_Target0.w = u_xlat0.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat1.xyz;
					    SV_Target0.w = u_xlat1.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat1.xyz;
					    SV_Target0.w = u_xlat1.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat1.xyz;
					    SV_Target0.w = u_xlat1.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat1.xyz;
					    SV_Target0.w = u_xlat1.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat1.xyz;
					    SV_Target0.w = u_xlat1.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat1.xyz;
					    SV_Target0.w = u_xlat1.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat1.xyz;
					    SV_Target0.w = u_xlat1.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat1.xyz;
					    SV_Target0.w = u_xlat1.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat1.xyz;
					    SV_Target0.w = u_xlat1.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat1.xyz;
					    SV_Target0.w = u_xlat1.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat1.xyz;
					    SV_Target0.w = u_xlat1.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat1.xyz;
					    SV_Target0.w = u_xlat1.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendAdd" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat0 = u_xlat0 * vs_COLOR0;
					    SV_Target0.w = u_xlat0.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat0 = u_xlat0 * vs_COLOR0;
					    SV_Target0.w = u_xlat0.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat0 = u_xlat0 * vs_COLOR0;
					    SV_Target0.w = u_xlat0.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat0 = u_xlat0 * vs_COLOR0;
					    SV_Target0.w = u_xlat0.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat1.xyz;
					    SV_Target0.w = u_xlat1.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat1.xyz;
					    SV_Target0.w = u_xlat1.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat1.xyz;
					    SV_Target0.w = u_xlat1.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat1.xyz;
					    SV_Target0.w = u_xlat1.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat1.xyz;
					    SV_Target0.w = u_xlat1.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat1.xyz;
					    SV_Target0.w = u_xlat1.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat1.xyz;
					    SV_Target0.w = u_xlat1.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat1.xyz;
					    SV_Target0.w = u_xlat1.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat1.xyz;
					    SV_Target0.w = u_xlat1.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat1.xyz;
					    SV_Target0.w = u_xlat1.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat1.xyz;
					    SV_Target0.w = u_xlat1.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat1.xyz;
					    SV_Target0.w = u_xlat1.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendAdd" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat0 = u_xlat0.wxyz * vs_COLOR0.wxyz;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.yzw;
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat0 = u_xlat0.wxyz * vs_COLOR0.wxyz;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.yzw;
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat0 = u_xlat0.wxyz * vs_COLOR0.wxyz;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.yzw;
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat0 = u_xlat0.wxyz * vs_COLOR0.wxyz;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.yzw;
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1.wxyz * vs_COLOR0.wxyz;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat1.yzw;
					    u_xlat1.x = u_xlat1.x;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat1.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1.wxyz * vs_COLOR0.wxyz;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat1.yzw;
					    u_xlat1.x = u_xlat1.x;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat1.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1.wxyz * vs_COLOR0.wxyz;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat1.yzw;
					    u_xlat1.x = u_xlat1.x;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat1.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1.wxyz * vs_COLOR0.wxyz;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat1.yzw;
					    u_xlat1.x = u_xlat1.x;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat1.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1.wxyz * vs_COLOR0.wxyz;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat1.yzw;
					    u_xlat1.x = u_xlat1.x;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat1.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1.wxyz * vs_COLOR0.wxyz;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat1.yzw;
					    u_xlat1.x = u_xlat1.x;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat1.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1.wxyz * vs_COLOR0.wxyz;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat1.yzw;
					    u_xlat1.x = u_xlat1.x;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat1.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1.wxyz * vs_COLOR0.wxyz;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat1.yzw;
					    u_xlat1.x = u_xlat1.x;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat1.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1.wxyz * vs_COLOR0.wxyz;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat1.yzw;
					    u_xlat1.x = u_xlat1.x;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat1.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1.wxyz * vs_COLOR0.wxyz;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat1.yzw;
					    u_xlat1.x = u_xlat1.x;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat1.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1.wxyz * vs_COLOR0.wxyz;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat1.yzw;
					    u_xlat1.x = u_xlat1.x;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat1.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1.wxyz * vs_COLOR0.wxyz;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat1.yzw;
					    u_xlat1.x = u_xlat1.x;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat1.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendAdd" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat0 = u_xlat0.wxyz * vs_COLOR0.wxyz;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.yzw;
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat0 = u_xlat0.wxyz * vs_COLOR0.wxyz;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.yzw;
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat0 = u_xlat0.wxyz * vs_COLOR0.wxyz;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.yzw;
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat0 = u_xlat0.wxyz * vs_COLOR0.wxyz;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.yzw;
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1.wxyz * vs_COLOR0.wxyz;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat1.yzw;
					    u_xlat1.x = u_xlat1.x;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat1.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1.wxyz * vs_COLOR0.wxyz;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat1.yzw;
					    u_xlat1.x = u_xlat1.x;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat1.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1.wxyz * vs_COLOR0.wxyz;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat1.yzw;
					    u_xlat1.x = u_xlat1.x;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat1.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1.wxyz * vs_COLOR0.wxyz;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat1.yzw;
					    u_xlat1.x = u_xlat1.x;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat1.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1.wxyz * vs_COLOR0.wxyz;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat1.yzw;
					    u_xlat1.x = u_xlat1.x;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat1.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1.wxyz * vs_COLOR0.wxyz;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat1.yzw;
					    u_xlat1.x = u_xlat1.x;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat1.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1.wxyz * vs_COLOR0.wxyz;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat1.yzw;
					    u_xlat1.x = u_xlat1.x;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat1.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1.wxyz * vs_COLOR0.wxyz;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat1.yzw;
					    u_xlat1.x = u_xlat1.x;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat1.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1.wxyz * vs_COLOR0.wxyz;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat1.yzw;
					    u_xlat1.x = u_xlat1.x;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat1.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1.wxyz * vs_COLOR0.wxyz;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat1.yzw;
					    u_xlat1.x = u_xlat1.x;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat1.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1.wxyz * vs_COLOR0.wxyz;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat1.yzw;
					    u_xlat1.x = u_xlat1.x;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat1.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1.wxyz * vs_COLOR0.wxyz;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat1.yzw;
					    u_xlat1.x = u_xlat1.x;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat1.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendAdd" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					float u_xlat1;
					bool u_xlatb1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1 = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat0.w = u_xlat0.w * u_xlat1;
					    u_xlat0 = u_xlat0 * vs_COLOR0;
					    SV_Target0.w = u_xlat0.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					float u_xlat1;
					bool u_xlatb1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1 = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat0.w = u_xlat0.w * u_xlat1;
					    u_xlat0 = u_xlat0 * vs_COLOR0;
					    SV_Target0.w = u_xlat0.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					float u_xlat1;
					bool u_xlatb1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1 = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat0.w = u_xlat0.w * u_xlat1;
					    u_xlat0 = u_xlat0 * vs_COLOR0;
					    SV_Target0.w = u_xlat0.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					float u_xlat1;
					bool u_xlatb1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1 = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat0.w = u_xlat0.w * u_xlat1;
					    u_xlat0 = u_xlat0 * vs_COLOR0;
					    SV_Target0.w = u_xlat0.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					bool u_xlatb2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2 = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat1.xyz;
					    SV_Target0.w = u_xlat1.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					bool u_xlatb2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2 = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat1.xyz;
					    SV_Target0.w = u_xlat1.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					bool u_xlatb2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2 = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat1.xyz;
					    SV_Target0.w = u_xlat1.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					bool u_xlatb2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2 = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat1.xyz;
					    SV_Target0.w = u_xlat1.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					bool u_xlatb2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2 = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat1.xyz;
					    SV_Target0.w = u_xlat1.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					bool u_xlatb2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2 = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat1.xyz;
					    SV_Target0.w = u_xlat1.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					bool u_xlatb2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2 = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat1.xyz;
					    SV_Target0.w = u_xlat1.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					bool u_xlatb2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2 = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat1.xyz;
					    SV_Target0.w = u_xlat1.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					bool u_xlatb2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2 = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat1.xyz;
					    SV_Target0.w = u_xlat1.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					bool u_xlatb2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2 = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat1.xyz;
					    SV_Target0.w = u_xlat1.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					bool u_xlatb2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2 = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat1.xyz;
					    SV_Target0.w = u_xlat1.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					bool u_xlatb2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2 = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat1.xyz;
					    SV_Target0.w = u_xlat1.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendAdd" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					float u_xlat1;
					bool u_xlatb1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1 = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat0.w = u_xlat0.w * u_xlat1;
					    u_xlat0 = u_xlat0 * vs_COLOR0;
					    SV_Target0.w = u_xlat0.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					float u_xlat1;
					bool u_xlatb1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1 = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat0.w = u_xlat0.w * u_xlat1;
					    u_xlat0 = u_xlat0 * vs_COLOR0;
					    SV_Target0.w = u_xlat0.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					float u_xlat1;
					bool u_xlatb1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1 = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat0.w = u_xlat0.w * u_xlat1;
					    u_xlat0 = u_xlat0 * vs_COLOR0;
					    SV_Target0.w = u_xlat0.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					float u_xlat1;
					bool u_xlatb1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1 = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat0.w = u_xlat0.w * u_xlat1;
					    u_xlat0 = u_xlat0 * vs_COLOR0;
					    SV_Target0.w = u_xlat0.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					bool u_xlatb2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2 = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat1.xyz;
					    SV_Target0.w = u_xlat1.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					bool u_xlatb2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2 = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat1.xyz;
					    SV_Target0.w = u_xlat1.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					bool u_xlatb2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2 = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat1.xyz;
					    SV_Target0.w = u_xlat1.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					bool u_xlatb2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2 = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat1.xyz;
					    SV_Target0.w = u_xlat1.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					bool u_xlatb2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2 = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat1.xyz;
					    SV_Target0.w = u_xlat1.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					bool u_xlatb2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2 = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat1.xyz;
					    SV_Target0.w = u_xlat1.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					bool u_xlatb2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2 = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat1.xyz;
					    SV_Target0.w = u_xlat1.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					bool u_xlatb2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2 = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat1.xyz;
					    SV_Target0.w = u_xlat1.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					bool u_xlatb2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2 = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat1.xyz;
					    SV_Target0.w = u_xlat1.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					bool u_xlatb2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2 = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat1.xyz;
					    SV_Target0.w = u_xlat1.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					bool u_xlatb2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2 = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat1.xyz;
					    SV_Target0.w = u_xlat1.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					bool u_xlatb2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2 = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat1.xyz;
					    SV_Target0.w = u_xlat1.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendAdd" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					float u_xlat1;
					bool u_xlatb1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1 = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat0.w = u_xlat0.w * u_xlat1;
					    u_xlat0 = u_xlat0.wxyz * vs_COLOR0.wxyz;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.yzw;
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					float u_xlat1;
					bool u_xlatb1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1 = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat0.w = u_xlat0.w * u_xlat1;
					    u_xlat0 = u_xlat0.wxyz * vs_COLOR0.wxyz;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.yzw;
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					float u_xlat1;
					bool u_xlatb1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1 = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat0.w = u_xlat0.w * u_xlat1;
					    u_xlat0 = u_xlat0.wxyz * vs_COLOR0.wxyz;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.yzw;
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					float u_xlat1;
					bool u_xlatb1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1 = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat0.w = u_xlat0.w * u_xlat1;
					    u_xlat0 = u_xlat0.wxyz * vs_COLOR0.wxyz;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.yzw;
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					bool u_xlatb2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2 = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2;
					    u_xlat1 = u_xlat1.wxyz * vs_COLOR0.wxyz;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat1.yzw;
					    u_xlat1.x = u_xlat1.x;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat1.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					bool u_xlatb2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2 = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2;
					    u_xlat1 = u_xlat1.wxyz * vs_COLOR0.wxyz;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat1.yzw;
					    u_xlat1.x = u_xlat1.x;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat1.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					bool u_xlatb2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2 = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2;
					    u_xlat1 = u_xlat1.wxyz * vs_COLOR0.wxyz;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat1.yzw;
					    u_xlat1.x = u_xlat1.x;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat1.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					bool u_xlatb2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2 = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2;
					    u_xlat1 = u_xlat1.wxyz * vs_COLOR0.wxyz;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat1.yzw;
					    u_xlat1.x = u_xlat1.x;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat1.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					bool u_xlatb2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2 = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2;
					    u_xlat1 = u_xlat1.wxyz * vs_COLOR0.wxyz;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat1.yzw;
					    u_xlat1.x = u_xlat1.x;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat1.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					bool u_xlatb2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2 = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2;
					    u_xlat1 = u_xlat1.wxyz * vs_COLOR0.wxyz;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat1.yzw;
					    u_xlat1.x = u_xlat1.x;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat1.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					bool u_xlatb2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2 = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2;
					    u_xlat1 = u_xlat1.wxyz * vs_COLOR0.wxyz;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat1.yzw;
					    u_xlat1.x = u_xlat1.x;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat1.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					bool u_xlatb2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2 = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2;
					    u_xlat1 = u_xlat1.wxyz * vs_COLOR0.wxyz;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat1.yzw;
					    u_xlat1.x = u_xlat1.x;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat1.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					bool u_xlatb2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2 = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2;
					    u_xlat1 = u_xlat1.wxyz * vs_COLOR0.wxyz;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat1.yzw;
					    u_xlat1.x = u_xlat1.x;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat1.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					bool u_xlatb2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2 = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2;
					    u_xlat1 = u_xlat1.wxyz * vs_COLOR0.wxyz;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat1.yzw;
					    u_xlat1.x = u_xlat1.x;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat1.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					bool u_xlatb2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2 = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2;
					    u_xlat1 = u_xlat1.wxyz * vs_COLOR0.wxyz;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat1.yzw;
					    u_xlat1.x = u_xlat1.x;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat1.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					bool u_xlatb2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2 = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2;
					    u_xlat1 = u_xlat1.wxyz * vs_COLOR0.wxyz;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat1.yzw;
					    u_xlat1.x = u_xlat1.x;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat1.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendAdd" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					float u_xlat1;
					bool u_xlatb1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1 = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat0.w = u_xlat0.w * u_xlat1;
					    u_xlat0 = u_xlat0.wxyz * vs_COLOR0.wxyz;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.yzw;
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					float u_xlat1;
					bool u_xlatb1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1 = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat0.w = u_xlat0.w * u_xlat1;
					    u_xlat0 = u_xlat0.wxyz * vs_COLOR0.wxyz;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.yzw;
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					float u_xlat1;
					bool u_xlatb1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1 = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat0.w = u_xlat0.w * u_xlat1;
					    u_xlat0 = u_xlat0.wxyz * vs_COLOR0.wxyz;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.yzw;
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					float u_xlat1;
					bool u_xlatb1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1 = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat0.w = u_xlat0.w * u_xlat1;
					    u_xlat0 = u_xlat0.wxyz * vs_COLOR0.wxyz;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.yzw;
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					bool u_xlatb2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2 = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2;
					    u_xlat1 = u_xlat1.wxyz * vs_COLOR0.wxyz;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat1.yzw;
					    u_xlat1.x = u_xlat1.x;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat1.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					bool u_xlatb2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2 = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2;
					    u_xlat1 = u_xlat1.wxyz * vs_COLOR0.wxyz;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat1.yzw;
					    u_xlat1.x = u_xlat1.x;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat1.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					bool u_xlatb2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2 = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2;
					    u_xlat1 = u_xlat1.wxyz * vs_COLOR0.wxyz;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat1.yzw;
					    u_xlat1.x = u_xlat1.x;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat1.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					bool u_xlatb2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2 = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2;
					    u_xlat1 = u_xlat1.wxyz * vs_COLOR0.wxyz;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat1.yzw;
					    u_xlat1.x = u_xlat1.x;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat1.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					bool u_xlatb2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2 = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2;
					    u_xlat1 = u_xlat1.wxyz * vs_COLOR0.wxyz;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat1.yzw;
					    u_xlat1.x = u_xlat1.x;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat1.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					bool u_xlatb2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2 = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2;
					    u_xlat1 = u_xlat1.wxyz * vs_COLOR0.wxyz;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat1.yzw;
					    u_xlat1.x = u_xlat1.x;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat1.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					bool u_xlatb2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2 = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2;
					    u_xlat1 = u_xlat1.wxyz * vs_COLOR0.wxyz;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat1.yzw;
					    u_xlat1.x = u_xlat1.x;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat1.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					bool u_xlatb2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2 = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2;
					    u_xlat1 = u_xlat1.wxyz * vs_COLOR0.wxyz;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat1.yzw;
					    u_xlat1.x = u_xlat1.x;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat1.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					bool u_xlatb2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2 = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2;
					    u_xlat1 = u_xlat1.wxyz * vs_COLOR0.wxyz;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat1.yzw;
					    u_xlat1.x = u_xlat1.x;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat1.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					bool u_xlatb2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2 = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2;
					    u_xlat1 = u_xlat1.wxyz * vs_COLOR0.wxyz;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat1.yzw;
					    u_xlat1.x = u_xlat1.x;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat1.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					bool u_xlatb2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2 = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2;
					    u_xlat1 = u_xlat1.wxyz * vs_COLOR0.wxyz;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat1.yzw;
					    u_xlat1.x = u_xlat1.x;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat1.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					bool u_xlatb2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2 = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2;
					    u_xlat1 = u_xlat1.wxyz * vs_COLOR0.wxyz;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat1.yzw;
					    u_xlat1.x = u_xlat1.x;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat1.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendAdd" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    SV_Target0.xyz = u_xlat2.xyz * vs_COLOR0.xyz;
					    SV_Target0.w = u_xlatb0 ? 1.0 : float(0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    SV_Target0.xyz = u_xlat2.xyz * vs_COLOR0.xyz;
					    SV_Target0.w = u_xlatb0 ? 1.0 : float(0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    SV_Target0.xyz = u_xlat2.xyz * vs_COLOR0.xyz;
					    SV_Target0.w = u_xlatb0 ? 1.0 : float(0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    SV_Target0.xyz = u_xlat2.xyz * vs_COLOR0.xyz;
					    SV_Target0.w = u_xlatb0 ? 1.0 : float(0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * vs_COLOR0.xyz;
					    SV_Target0.xyz = u_xlat2.xyz * vec3(u_xlat0);
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    SV_Target0.w = u_xlatb0 ? 1.0 : float(0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * vs_COLOR0.xyz;
					    SV_Target0.xyz = u_xlat2.xyz * vec3(u_xlat0);
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    SV_Target0.w = u_xlatb0 ? 1.0 : float(0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * vs_COLOR0.xyz;
					    SV_Target0.xyz = u_xlat2.xyz * vec3(u_xlat0);
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    SV_Target0.w = u_xlatb0 ? 1.0 : float(0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * vs_COLOR0.xyz;
					    SV_Target0.xyz = u_xlat2.xyz * vec3(u_xlat0);
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    SV_Target0.w = u_xlatb0 ? 1.0 : float(0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * vs_COLOR0.xyz;
					    SV_Target0.xyz = u_xlat2.xyz * vec3(u_xlat0);
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    SV_Target0.w = u_xlatb0 ? 1.0 : float(0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * vs_COLOR0.xyz;
					    SV_Target0.xyz = u_xlat2.xyz * vec3(u_xlat0);
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    SV_Target0.w = u_xlatb0 ? 1.0 : float(0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * vs_COLOR0.xyz;
					    SV_Target0.xyz = u_xlat2.xyz * vec3(u_xlat0);
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    SV_Target0.w = u_xlatb0 ? 1.0 : float(0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * vs_COLOR0.xyz;
					    SV_Target0.xyz = u_xlat2.xyz * vec3(u_xlat0);
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    SV_Target0.w = u_xlatb0 ? 1.0 : float(0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * vs_COLOR0.xyz;
					    SV_Target0.xyz = u_xlat2.xyz * vec3(u_xlat0);
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    SV_Target0.w = u_xlatb0 ? 1.0 : float(0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * vs_COLOR0.xyz;
					    SV_Target0.xyz = u_xlat2.xyz * vec3(u_xlat0);
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    SV_Target0.w = u_xlatb0 ? 1.0 : float(0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * vs_COLOR0.xyz;
					    SV_Target0.xyz = u_xlat2.xyz * vec3(u_xlat0);
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    SV_Target0.w = u_xlatb0 ? 1.0 : float(0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * vs_COLOR0.xyz;
					    SV_Target0.xyz = u_xlat2.xyz * vec3(u_xlat0);
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    SV_Target0.w = u_xlatb0 ? 1.0 : float(0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendAdd" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    SV_Target0.xyz = u_xlat2.xyz * vs_COLOR0.xyz;
					    SV_Target0.w = u_xlatb0 ? 1.0 : float(0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    SV_Target0.xyz = u_xlat2.xyz * vs_COLOR0.xyz;
					    SV_Target0.w = u_xlatb0 ? 1.0 : float(0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    SV_Target0.xyz = u_xlat2.xyz * vs_COLOR0.xyz;
					    SV_Target0.w = u_xlatb0 ? 1.0 : float(0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    SV_Target0.xyz = u_xlat2.xyz * vs_COLOR0.xyz;
					    SV_Target0.w = u_xlatb0 ? 1.0 : float(0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * vs_COLOR0.xyz;
					    SV_Target0.xyz = u_xlat2.xyz * vec3(u_xlat0);
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    SV_Target0.w = u_xlatb0 ? 1.0 : float(0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * vs_COLOR0.xyz;
					    SV_Target0.xyz = u_xlat2.xyz * vec3(u_xlat0);
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    SV_Target0.w = u_xlatb0 ? 1.0 : float(0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * vs_COLOR0.xyz;
					    SV_Target0.xyz = u_xlat2.xyz * vec3(u_xlat0);
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    SV_Target0.w = u_xlatb0 ? 1.0 : float(0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * vs_COLOR0.xyz;
					    SV_Target0.xyz = u_xlat2.xyz * vec3(u_xlat0);
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    SV_Target0.w = u_xlatb0 ? 1.0 : float(0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * vs_COLOR0.xyz;
					    SV_Target0.xyz = u_xlat2.xyz * vec3(u_xlat0);
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    SV_Target0.w = u_xlatb0 ? 1.0 : float(0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * vs_COLOR0.xyz;
					    SV_Target0.xyz = u_xlat2.xyz * vec3(u_xlat0);
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    SV_Target0.w = u_xlatb0 ? 1.0 : float(0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * vs_COLOR0.xyz;
					    SV_Target0.xyz = u_xlat2.xyz * vec3(u_xlat0);
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    SV_Target0.w = u_xlatb0 ? 1.0 : float(0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * vs_COLOR0.xyz;
					    SV_Target0.xyz = u_xlat2.xyz * vec3(u_xlat0);
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    SV_Target0.w = u_xlatb0 ? 1.0 : float(0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * vs_COLOR0.xyz;
					    SV_Target0.xyz = u_xlat2.xyz * vec3(u_xlat0);
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    SV_Target0.w = u_xlatb0 ? 1.0 : float(0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * vs_COLOR0.xyz;
					    SV_Target0.xyz = u_xlat2.xyz * vec3(u_xlat0);
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    SV_Target0.w = u_xlatb0 ? 1.0 : float(0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * vs_COLOR0.xyz;
					    SV_Target0.xyz = u_xlat2.xyz * vec3(u_xlat0);
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    SV_Target0.w = u_xlatb0 ? 1.0 : float(0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * vs_COLOR0.xyz;
					    SV_Target0.xyz = u_xlat2.xyz * vec3(u_xlat0);
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    SV_Target0.w = u_xlatb0 ? 1.0 : float(0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendAdd" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    SV_Target0.xyz = u_xlat2.xyz * vs_COLOR0.xyz;
					    u_xlat0 = u_xlatb0 ? 1.0 : float(0.0);
					    SV_Target0.w = u_xlat0 * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    SV_Target0.xyz = u_xlat2.xyz * vs_COLOR0.xyz;
					    u_xlat0 = u_xlatb0 ? 1.0 : float(0.0);
					    SV_Target0.w = u_xlat0 * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    SV_Target0.xyz = u_xlat2.xyz * vs_COLOR0.xyz;
					    u_xlat0 = u_xlatb0 ? 1.0 : float(0.0);
					    SV_Target0.w = u_xlat0 * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    SV_Target0.xyz = u_xlat2.xyz * vs_COLOR0.xyz;
					    u_xlat0 = u_xlatb0 ? 1.0 : float(0.0);
					    SV_Target0.w = u_xlat0 * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * vs_COLOR0.xyz;
					    SV_Target0.xyz = u_xlat2.xyz * vec3(u_xlat0);
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    u_xlat0 = u_xlatb0 ? 1.0 : float(0.0);
					    SV_Target0.w = u_xlat0 * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * vs_COLOR0.xyz;
					    SV_Target0.xyz = u_xlat2.xyz * vec3(u_xlat0);
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    u_xlat0 = u_xlatb0 ? 1.0 : float(0.0);
					    SV_Target0.w = u_xlat0 * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * vs_COLOR0.xyz;
					    SV_Target0.xyz = u_xlat2.xyz * vec3(u_xlat0);
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    u_xlat0 = u_xlatb0 ? 1.0 : float(0.0);
					    SV_Target0.w = u_xlat0 * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * vs_COLOR0.xyz;
					    SV_Target0.xyz = u_xlat2.xyz * vec3(u_xlat0);
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    u_xlat0 = u_xlatb0 ? 1.0 : float(0.0);
					    SV_Target0.w = u_xlat0 * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * vs_COLOR0.xyz;
					    SV_Target0.xyz = u_xlat2.xyz * vec3(u_xlat0);
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    u_xlat0 = u_xlatb0 ? 1.0 : float(0.0);
					    SV_Target0.w = u_xlat0 * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * vs_COLOR0.xyz;
					    SV_Target0.xyz = u_xlat2.xyz * vec3(u_xlat0);
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    u_xlat0 = u_xlatb0 ? 1.0 : float(0.0);
					    SV_Target0.w = u_xlat0 * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * vs_COLOR0.xyz;
					    SV_Target0.xyz = u_xlat2.xyz * vec3(u_xlat0);
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    u_xlat0 = u_xlatb0 ? 1.0 : float(0.0);
					    SV_Target0.w = u_xlat0 * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * vs_COLOR0.xyz;
					    SV_Target0.xyz = u_xlat2.xyz * vec3(u_xlat0);
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    u_xlat0 = u_xlatb0 ? 1.0 : float(0.0);
					    SV_Target0.w = u_xlat0 * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * vs_COLOR0.xyz;
					    SV_Target0.xyz = u_xlat2.xyz * vec3(u_xlat0);
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    u_xlat0 = u_xlatb0 ? 1.0 : float(0.0);
					    SV_Target0.w = u_xlat0 * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * vs_COLOR0.xyz;
					    SV_Target0.xyz = u_xlat2.xyz * vec3(u_xlat0);
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    u_xlat0 = u_xlatb0 ? 1.0 : float(0.0);
					    SV_Target0.w = u_xlat0 * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * vs_COLOR0.xyz;
					    SV_Target0.xyz = u_xlat2.xyz * vec3(u_xlat0);
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    u_xlat0 = u_xlatb0 ? 1.0 : float(0.0);
					    SV_Target0.w = u_xlat0 * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * vs_COLOR0.xyz;
					    SV_Target0.xyz = u_xlat2.xyz * vec3(u_xlat0);
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    u_xlat0 = u_xlatb0 ? 1.0 : float(0.0);
					    SV_Target0.w = u_xlat0 * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendAdd" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    SV_Target0.xyz = u_xlat2.xyz * vs_COLOR0.xyz;
					    u_xlat0 = u_xlatb0 ? 1.0 : float(0.0);
					    SV_Target0.w = u_xlat0 * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    SV_Target0.xyz = u_xlat2.xyz * vs_COLOR0.xyz;
					    u_xlat0 = u_xlatb0 ? 1.0 : float(0.0);
					    SV_Target0.w = u_xlat0 * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    SV_Target0.xyz = u_xlat2.xyz * vs_COLOR0.xyz;
					    u_xlat0 = u_xlatb0 ? 1.0 : float(0.0);
					    SV_Target0.w = u_xlat0 * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    SV_Target0.xyz = u_xlat2.xyz * vs_COLOR0.xyz;
					    u_xlat0 = u_xlatb0 ? 1.0 : float(0.0);
					    SV_Target0.w = u_xlat0 * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * vs_COLOR0.xyz;
					    SV_Target0.xyz = u_xlat2.xyz * vec3(u_xlat0);
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    u_xlat0 = u_xlatb0 ? 1.0 : float(0.0);
					    SV_Target0.w = u_xlat0 * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * vs_COLOR0.xyz;
					    SV_Target0.xyz = u_xlat2.xyz * vec3(u_xlat0);
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    u_xlat0 = u_xlatb0 ? 1.0 : float(0.0);
					    SV_Target0.w = u_xlat0 * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * vs_COLOR0.xyz;
					    SV_Target0.xyz = u_xlat2.xyz * vec3(u_xlat0);
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    u_xlat0 = u_xlatb0 ? 1.0 : float(0.0);
					    SV_Target0.w = u_xlat0 * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * vs_COLOR0.xyz;
					    SV_Target0.xyz = u_xlat2.xyz * vec3(u_xlat0);
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    u_xlat0 = u_xlatb0 ? 1.0 : float(0.0);
					    SV_Target0.w = u_xlat0 * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * vs_COLOR0.xyz;
					    SV_Target0.xyz = u_xlat2.xyz * vec3(u_xlat0);
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    u_xlat0 = u_xlatb0 ? 1.0 : float(0.0);
					    SV_Target0.w = u_xlat0 * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * vs_COLOR0.xyz;
					    SV_Target0.xyz = u_xlat2.xyz * vec3(u_xlat0);
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    u_xlat0 = u_xlatb0 ? 1.0 : float(0.0);
					    SV_Target0.w = u_xlat0 * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * vs_COLOR0.xyz;
					    SV_Target0.xyz = u_xlat2.xyz * vec3(u_xlat0);
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    u_xlat0 = u_xlatb0 ? 1.0 : float(0.0);
					    SV_Target0.w = u_xlat0 * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * vs_COLOR0.xyz;
					    SV_Target0.xyz = u_xlat2.xyz * vec3(u_xlat0);
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    u_xlat0 = u_xlatb0 ? 1.0 : float(0.0);
					    SV_Target0.w = u_xlat0 * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * vs_COLOR0.xyz;
					    SV_Target0.xyz = u_xlat2.xyz * vec3(u_xlat0);
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    u_xlat0 = u_xlatb0 ? 1.0 : float(0.0);
					    SV_Target0.w = u_xlat0 * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * vs_COLOR0.xyz;
					    SV_Target0.xyz = u_xlat2.xyz * vec3(u_xlat0);
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    u_xlat0 = u_xlatb0 ? 1.0 : float(0.0);
					    SV_Target0.w = u_xlat0 * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * vs_COLOR0.xyz;
					    SV_Target0.xyz = u_xlat2.xyz * vec3(u_xlat0);
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    u_xlat0 = u_xlatb0 ? 1.0 : float(0.0);
					    SV_Target0.w = u_xlat0 * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * vs_COLOR0.xyz;
					    SV_Target0.xyz = u_xlat2.xyz * vec3(u_xlat0);
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    u_xlat0 = u_xlatb0 ? 1.0 : float(0.0);
					    SV_Target0.w = u_xlat0 * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendAdd" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat0 = u_xlat0 * vs_COLOR0;
					    SV_Target0.w = u_xlat0.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat0 = u_xlat0 * vs_COLOR0;
					    SV_Target0.w = u_xlat0.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[7];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    SV_Target0.w = u_xlat0.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[6];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    SV_Target0.w = u_xlat0.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat1.xyz;
					    SV_Target0.w = u_xlat1.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat1.xyz;
					    SV_Target0.w = u_xlat1.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat1.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat1.x = (-u_xlat1.x) + 1.0;
					    u_xlat1.x = u_xlat1.x * _ProjectionParams.z;
					    u_xlat1.x = max(u_xlat1.x, 0.0);
					    u_xlat1.x = u_xlat1.x * unity_FogParams.z + unity_FogParams.w;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.xyz * u_xlat1.xxx;
					    SV_Target0.w = u_xlat0.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat1.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat1.x = (-u_xlat1.x) + 1.0;
					    u_xlat1.x = u_xlat1.x * _ProjectionParams.z;
					    u_xlat1.x = max(u_xlat1.x, 0.0);
					    u_xlat1.x = u_xlat1.x * unity_FogParams.z + unity_FogParams.w;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.xyz * u_xlat1.xxx;
					    SV_Target0.w = u_xlat0.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat1.xyz;
					    SV_Target0.w = u_xlat1.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat1.xyz;
					    SV_Target0.w = u_xlat1.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec2 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat3.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat1 = texture(_CameraDepthTexture, u_xlat3.xy);
					    u_xlat3.x = _ZBufferParams.z * u_xlat1.x + _ZBufferParams.w;
					    u_xlat3.x = float(1.0) / u_xlat3.x;
					    u_xlat3.x = u_xlat3.x + (-vs_TEXCOORD3.z);
					    u_xlat3.x = u_xlat3.x * _InvFade;
					    u_xlat3.x = clamp(u_xlat3.x, 0.0, 1.0);
					    u_xlat1.w = u_xlat3.x * vs_COLOR0.w;
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2 = u_xlat2 + u_xlat2;
					    u_xlat2 = u_xlat2 * _TintColor;
					    u_xlat1.xyz = vs_COLOR0.xyz;
					    u_xlat1 = u_xlat1 * u_xlat2;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat1.xyz;
					    SV_Target0.w = u_xlat1.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec2 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat3.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat1 = texture(_CameraDepthTexture, u_xlat3.xy);
					    u_xlat3.x = _ZBufferParams.z * u_xlat1.x + _ZBufferParams.w;
					    u_xlat3.x = float(1.0) / u_xlat3.x;
					    u_xlat3.x = u_xlat3.x + (-vs_TEXCOORD3.z);
					    u_xlat3.x = u_xlat3.x * _InvFade;
					    u_xlat3.x = clamp(u_xlat3.x, 0.0, 1.0);
					    u_xlat1.w = u_xlat3.x * vs_COLOR0.w;
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2 = u_xlat2 + u_xlat2;
					    u_xlat2 = u_xlat2 * _TintColor;
					    u_xlat1.xyz = vs_COLOR0.xyz;
					    u_xlat1 = u_xlat1 * u_xlat2;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat1.xyz;
					    SV_Target0.w = u_xlat1.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat1.xyz;
					    SV_Target0.w = u_xlat1.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat1.xyz;
					    SV_Target0.w = u_xlat1.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec2 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat3.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat1 = texture(_CameraDepthTexture, u_xlat3.xy);
					    u_xlat3.x = _ZBufferParams.z * u_xlat1.x + _ZBufferParams.w;
					    u_xlat3.x = float(1.0) / u_xlat3.x;
					    u_xlat3.x = u_xlat3.x + (-vs_TEXCOORD3.z);
					    u_xlat3.x = u_xlat3.x * _InvFade;
					    u_xlat3.x = clamp(u_xlat3.x, 0.0, 1.0);
					    u_xlat1.w = u_xlat3.x * vs_COLOR0.w;
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2 = u_xlat2 + u_xlat2;
					    u_xlat2 = u_xlat2 * _TintColor;
					    u_xlat1.xyz = vs_COLOR0.xyz;
					    u_xlat1 = u_xlat1 * u_xlat2;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat1.xyz;
					    SV_Target0.w = u_xlat1.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec2 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat3.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat1 = texture(_CameraDepthTexture, u_xlat3.xy);
					    u_xlat3.x = _ZBufferParams.z * u_xlat1.x + _ZBufferParams.w;
					    u_xlat3.x = float(1.0) / u_xlat3.x;
					    u_xlat3.x = u_xlat3.x + (-vs_TEXCOORD3.z);
					    u_xlat3.x = u_xlat3.x * _InvFade;
					    u_xlat3.x = clamp(u_xlat3.x, 0.0, 1.0);
					    u_xlat1.w = u_xlat3.x * vs_COLOR0.w;
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2 = u_xlat2 + u_xlat2;
					    u_xlat2 = u_xlat2 * _TintColor;
					    u_xlat1.xyz = vs_COLOR0.xyz;
					    u_xlat1 = u_xlat1 * u_xlat2;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat1.xyz;
					    SV_Target0.w = u_xlat1.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendAdd" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[7];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    SV_Target0.w = u_xlat0.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[6];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    SV_Target0.w = u_xlat0.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[7];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    SV_Target0.w = u_xlat0.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[6];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    SV_Target0.w = u_xlat0.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat1.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat1.x = (-u_xlat1.x) + 1.0;
					    u_xlat1.x = u_xlat1.x * _ProjectionParams.z;
					    u_xlat1.x = max(u_xlat1.x, 0.0);
					    u_xlat1.x = u_xlat1.x * unity_FogParams.z + unity_FogParams.w;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.xyz * u_xlat1.xxx;
					    SV_Target0.w = u_xlat0.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat1.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat1.x = (-u_xlat1.x) + 1.0;
					    u_xlat1.x = u_xlat1.x * _ProjectionParams.z;
					    u_xlat1.x = max(u_xlat1.x, 0.0);
					    u_xlat1.x = u_xlat1.x * unity_FogParams.z + unity_FogParams.w;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.xyz * u_xlat1.xxx;
					    SV_Target0.w = u_xlat0.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat1.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat1.x = (-u_xlat1.x) + 1.0;
					    u_xlat1.x = u_xlat1.x * _ProjectionParams.z;
					    u_xlat1.x = max(u_xlat1.x, 0.0);
					    u_xlat1.x = u_xlat1.x * unity_FogParams.z + unity_FogParams.w;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.xyz * u_xlat1.xxx;
					    SV_Target0.w = u_xlat0.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat1.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat1.x = (-u_xlat1.x) + 1.0;
					    u_xlat1.x = u_xlat1.x * _ProjectionParams.z;
					    u_xlat1.x = max(u_xlat1.x, 0.0);
					    u_xlat1.x = u_xlat1.x * unity_FogParams.z + unity_FogParams.w;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.xyz * u_xlat1.xxx;
					    SV_Target0.w = u_xlat0.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec2 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat3.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat1 = texture(_CameraDepthTexture, u_xlat3.xy);
					    u_xlat3.x = _ZBufferParams.z * u_xlat1.x + _ZBufferParams.w;
					    u_xlat3.x = float(1.0) / u_xlat3.x;
					    u_xlat3.x = u_xlat3.x + (-vs_TEXCOORD3.z);
					    u_xlat3.x = u_xlat3.x * _InvFade;
					    u_xlat3.x = clamp(u_xlat3.x, 0.0, 1.0);
					    u_xlat1.w = u_xlat3.x * vs_COLOR0.w;
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2 = u_xlat2 + u_xlat2;
					    u_xlat2 = u_xlat2 * _TintColor;
					    u_xlat1.xyz = vs_COLOR0.xyz;
					    u_xlat1 = u_xlat1 * u_xlat2;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat1.xyz;
					    SV_Target0.w = u_xlat1.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec2 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat3.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat1 = texture(_CameraDepthTexture, u_xlat3.xy);
					    u_xlat3.x = _ZBufferParams.z * u_xlat1.x + _ZBufferParams.w;
					    u_xlat3.x = float(1.0) / u_xlat3.x;
					    u_xlat3.x = u_xlat3.x + (-vs_TEXCOORD3.z);
					    u_xlat3.x = u_xlat3.x * _InvFade;
					    u_xlat3.x = clamp(u_xlat3.x, 0.0, 1.0);
					    u_xlat1.w = u_xlat3.x * vs_COLOR0.w;
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2 = u_xlat2 + u_xlat2;
					    u_xlat2 = u_xlat2 * _TintColor;
					    u_xlat1.xyz = vs_COLOR0.xyz;
					    u_xlat1 = u_xlat1 * u_xlat2;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat1.xyz;
					    SV_Target0.w = u_xlat1.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec2 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat3.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat1 = texture(_CameraDepthTexture, u_xlat3.xy);
					    u_xlat3.x = _ZBufferParams.z * u_xlat1.x + _ZBufferParams.w;
					    u_xlat3.x = float(1.0) / u_xlat3.x;
					    u_xlat3.x = u_xlat3.x + (-vs_TEXCOORD3.z);
					    u_xlat3.x = u_xlat3.x * _InvFade;
					    u_xlat3.x = clamp(u_xlat3.x, 0.0, 1.0);
					    u_xlat1.w = u_xlat3.x * vs_COLOR0.w;
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2 = u_xlat2 + u_xlat2;
					    u_xlat2 = u_xlat2 * _TintColor;
					    u_xlat1.xyz = vs_COLOR0.xyz;
					    u_xlat1 = u_xlat1 * u_xlat2;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat1.xyz;
					    SV_Target0.w = u_xlat1.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec2 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat3.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat1 = texture(_CameraDepthTexture, u_xlat3.xy);
					    u_xlat3.x = _ZBufferParams.z * u_xlat1.x + _ZBufferParams.w;
					    u_xlat3.x = float(1.0) / u_xlat3.x;
					    u_xlat3.x = u_xlat3.x + (-vs_TEXCOORD3.z);
					    u_xlat3.x = u_xlat3.x * _InvFade;
					    u_xlat3.x = clamp(u_xlat3.x, 0.0, 1.0);
					    u_xlat1.w = u_xlat3.x * vs_COLOR0.w;
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2 = u_xlat2 + u_xlat2;
					    u_xlat2 = u_xlat2 * _TintColor;
					    u_xlat1.xyz = vs_COLOR0.xyz;
					    u_xlat1 = u_xlat1 * u_xlat2;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat1.xyz;
					    SV_Target0.w = u_xlat1.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec2 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat3.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat1 = texture(_CameraDepthTexture, u_xlat3.xy);
					    u_xlat3.x = _ZBufferParams.z * u_xlat1.x + _ZBufferParams.w;
					    u_xlat3.x = float(1.0) / u_xlat3.x;
					    u_xlat3.x = u_xlat3.x + (-vs_TEXCOORD3.z);
					    u_xlat3.x = u_xlat3.x * _InvFade;
					    u_xlat3.x = clamp(u_xlat3.x, 0.0, 1.0);
					    u_xlat1.w = u_xlat3.x * vs_COLOR0.w;
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2 = u_xlat2 + u_xlat2;
					    u_xlat2 = u_xlat2 * _TintColor;
					    u_xlat1.xyz = vs_COLOR0.xyz;
					    u_xlat1 = u_xlat1 * u_xlat2;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat1.xyz;
					    SV_Target0.w = u_xlat1.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec2 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat3.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat1 = texture(_CameraDepthTexture, u_xlat3.xy);
					    u_xlat3.x = _ZBufferParams.z * u_xlat1.x + _ZBufferParams.w;
					    u_xlat3.x = float(1.0) / u_xlat3.x;
					    u_xlat3.x = u_xlat3.x + (-vs_TEXCOORD3.z);
					    u_xlat3.x = u_xlat3.x * _InvFade;
					    u_xlat3.x = clamp(u_xlat3.x, 0.0, 1.0);
					    u_xlat1.w = u_xlat3.x * vs_COLOR0.w;
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2 = u_xlat2 + u_xlat2;
					    u_xlat2 = u_xlat2 * _TintColor;
					    u_xlat1.xyz = vs_COLOR0.xyz;
					    u_xlat1 = u_xlat1 * u_xlat2;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat1.xyz;
					    SV_Target0.w = u_xlat1.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec2 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat3.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat1 = texture(_CameraDepthTexture, u_xlat3.xy);
					    u_xlat3.x = _ZBufferParams.z * u_xlat1.x + _ZBufferParams.w;
					    u_xlat3.x = float(1.0) / u_xlat3.x;
					    u_xlat3.x = u_xlat3.x + (-vs_TEXCOORD3.z);
					    u_xlat3.x = u_xlat3.x * _InvFade;
					    u_xlat3.x = clamp(u_xlat3.x, 0.0, 1.0);
					    u_xlat1.w = u_xlat3.x * vs_COLOR0.w;
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2 = u_xlat2 + u_xlat2;
					    u_xlat2 = u_xlat2 * _TintColor;
					    u_xlat1.xyz = vs_COLOR0.xyz;
					    u_xlat1 = u_xlat1 * u_xlat2;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat1.xyz;
					    SV_Target0.w = u_xlat1.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec2 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat3.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat1 = texture(_CameraDepthTexture, u_xlat3.xy);
					    u_xlat3.x = _ZBufferParams.z * u_xlat1.x + _ZBufferParams.w;
					    u_xlat3.x = float(1.0) / u_xlat3.x;
					    u_xlat3.x = u_xlat3.x + (-vs_TEXCOORD3.z);
					    u_xlat3.x = u_xlat3.x * _InvFade;
					    u_xlat3.x = clamp(u_xlat3.x, 0.0, 1.0);
					    u_xlat1.w = u_xlat3.x * vs_COLOR0.w;
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2 = u_xlat2 + u_xlat2;
					    u_xlat2 = u_xlat2 * _TintColor;
					    u_xlat1.xyz = vs_COLOR0.xyz;
					    u_xlat1 = u_xlat1 * u_xlat2;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat1.xyz;
					    SV_Target0.w = u_xlat1.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendAdd" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat0 = u_xlat0.wxyz * vs_COLOR0.wxyz;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.yzw;
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat0 = u_xlat0.wxyz * vs_COLOR0.wxyz;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.yzw;
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[7];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0.wxyz * u_xlat1.wxyz;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.yzw;
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[6];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0.wxyz * u_xlat1.wxyz;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.yzw;
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1.wxyz * vs_COLOR0.wxyz;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat1.yzw;
					    u_xlat1.x = u_xlat1.x;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat1.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1.wxyz * vs_COLOR0.wxyz;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat1.yzw;
					    u_xlat1.x = u_xlat1.x;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat1.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0.wxyz * u_xlat1.wxyz;
					    u_xlat1.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat1.x = (-u_xlat1.x) + 1.0;
					    u_xlat1.x = u_xlat1.x * _ProjectionParams.z;
					    u_xlat1.x = max(u_xlat1.x, 0.0);
					    u_xlat1.x = u_xlat1.x * unity_FogParams.z + unity_FogParams.w;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.yzw * u_xlat1.xxx;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0.wxyz * u_xlat1.wxyz;
					    u_xlat1.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat1.x = (-u_xlat1.x) + 1.0;
					    u_xlat1.x = u_xlat1.x * _ProjectionParams.z;
					    u_xlat1.x = max(u_xlat1.x, 0.0);
					    u_xlat1.x = u_xlat1.x * unity_FogParams.z + unity_FogParams.w;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.yzw * u_xlat1.xxx;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1.wxyz * vs_COLOR0.wxyz;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat1.yzw;
					    u_xlat1.x = u_xlat1.x;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat1.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1.wxyz * vs_COLOR0.wxyz;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat1.yzw;
					    u_xlat1.x = u_xlat1.x;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat1.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec2 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat3.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat1 = texture(_CameraDepthTexture, u_xlat3.xy);
					    u_xlat3.x = _ZBufferParams.z * u_xlat1.x + _ZBufferParams.w;
					    u_xlat3.x = float(1.0) / u_xlat3.x;
					    u_xlat3.x = u_xlat3.x + (-vs_TEXCOORD3.z);
					    u_xlat3.x = u_xlat3.x * _InvFade;
					    u_xlat3.x = clamp(u_xlat3.x, 0.0, 1.0);
					    u_xlat1.w = u_xlat3.x * vs_COLOR0.w;
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2 = u_xlat2 + u_xlat2;
					    u_xlat2 = u_xlat2 * _TintColor;
					    u_xlat1.xyz = vs_COLOR0.xyz;
					    u_xlat1 = u_xlat1.wxyz * u_xlat2.wxyz;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat1.yzw;
					    u_xlat1.x = u_xlat1.x;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat1.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec2 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat3.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat1 = texture(_CameraDepthTexture, u_xlat3.xy);
					    u_xlat3.x = _ZBufferParams.z * u_xlat1.x + _ZBufferParams.w;
					    u_xlat3.x = float(1.0) / u_xlat3.x;
					    u_xlat3.x = u_xlat3.x + (-vs_TEXCOORD3.z);
					    u_xlat3.x = u_xlat3.x * _InvFade;
					    u_xlat3.x = clamp(u_xlat3.x, 0.0, 1.0);
					    u_xlat1.w = u_xlat3.x * vs_COLOR0.w;
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2 = u_xlat2 + u_xlat2;
					    u_xlat2 = u_xlat2 * _TintColor;
					    u_xlat1.xyz = vs_COLOR0.xyz;
					    u_xlat1 = u_xlat1.wxyz * u_xlat2.wxyz;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat1.yzw;
					    u_xlat1.x = u_xlat1.x;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat1.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1.wxyz * vs_COLOR0.wxyz;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat1.yzw;
					    u_xlat1.x = u_xlat1.x;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat1.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1.wxyz * vs_COLOR0.wxyz;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat1.yzw;
					    u_xlat1.x = u_xlat1.x;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat1.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec2 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat3.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat1 = texture(_CameraDepthTexture, u_xlat3.xy);
					    u_xlat3.x = _ZBufferParams.z * u_xlat1.x + _ZBufferParams.w;
					    u_xlat3.x = float(1.0) / u_xlat3.x;
					    u_xlat3.x = u_xlat3.x + (-vs_TEXCOORD3.z);
					    u_xlat3.x = u_xlat3.x * _InvFade;
					    u_xlat3.x = clamp(u_xlat3.x, 0.0, 1.0);
					    u_xlat1.w = u_xlat3.x * vs_COLOR0.w;
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2 = u_xlat2 + u_xlat2;
					    u_xlat2 = u_xlat2 * _TintColor;
					    u_xlat1.xyz = vs_COLOR0.xyz;
					    u_xlat1 = u_xlat1.wxyz * u_xlat2.wxyz;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat1.yzw;
					    u_xlat1.x = u_xlat1.x;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat1.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec2 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat3.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat1 = texture(_CameraDepthTexture, u_xlat3.xy);
					    u_xlat3.x = _ZBufferParams.z * u_xlat1.x + _ZBufferParams.w;
					    u_xlat3.x = float(1.0) / u_xlat3.x;
					    u_xlat3.x = u_xlat3.x + (-vs_TEXCOORD3.z);
					    u_xlat3.x = u_xlat3.x * _InvFade;
					    u_xlat3.x = clamp(u_xlat3.x, 0.0, 1.0);
					    u_xlat1.w = u_xlat3.x * vs_COLOR0.w;
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2 = u_xlat2 + u_xlat2;
					    u_xlat2 = u_xlat2 * _TintColor;
					    u_xlat1.xyz = vs_COLOR0.xyz;
					    u_xlat1 = u_xlat1.wxyz * u_xlat2.wxyz;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat1.yzw;
					    u_xlat1.x = u_xlat1.x;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat1.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendAdd" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[7];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0.wxyz * u_xlat1.wxyz;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.yzw;
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[6];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0.wxyz * u_xlat1.wxyz;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.yzw;
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[7];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0.wxyz * u_xlat1.wxyz;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.yzw;
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[6];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0.wxyz * u_xlat1.wxyz;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.yzw;
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0.wxyz * u_xlat1.wxyz;
					    u_xlat1.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat1.x = (-u_xlat1.x) + 1.0;
					    u_xlat1.x = u_xlat1.x * _ProjectionParams.z;
					    u_xlat1.x = max(u_xlat1.x, 0.0);
					    u_xlat1.x = u_xlat1.x * unity_FogParams.z + unity_FogParams.w;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.yzw * u_xlat1.xxx;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0.wxyz * u_xlat1.wxyz;
					    u_xlat1.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat1.x = (-u_xlat1.x) + 1.0;
					    u_xlat1.x = u_xlat1.x * _ProjectionParams.z;
					    u_xlat1.x = max(u_xlat1.x, 0.0);
					    u_xlat1.x = u_xlat1.x * unity_FogParams.z + unity_FogParams.w;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.yzw * u_xlat1.xxx;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0.wxyz * u_xlat1.wxyz;
					    u_xlat1.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat1.x = (-u_xlat1.x) + 1.0;
					    u_xlat1.x = u_xlat1.x * _ProjectionParams.z;
					    u_xlat1.x = max(u_xlat1.x, 0.0);
					    u_xlat1.x = u_xlat1.x * unity_FogParams.z + unity_FogParams.w;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.yzw * u_xlat1.xxx;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0.wxyz * u_xlat1.wxyz;
					    u_xlat1.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat1.x = (-u_xlat1.x) + 1.0;
					    u_xlat1.x = u_xlat1.x * _ProjectionParams.z;
					    u_xlat1.x = max(u_xlat1.x, 0.0);
					    u_xlat1.x = u_xlat1.x * unity_FogParams.z + unity_FogParams.w;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.yzw * u_xlat1.xxx;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec2 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat3.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat1 = texture(_CameraDepthTexture, u_xlat3.xy);
					    u_xlat3.x = _ZBufferParams.z * u_xlat1.x + _ZBufferParams.w;
					    u_xlat3.x = float(1.0) / u_xlat3.x;
					    u_xlat3.x = u_xlat3.x + (-vs_TEXCOORD3.z);
					    u_xlat3.x = u_xlat3.x * _InvFade;
					    u_xlat3.x = clamp(u_xlat3.x, 0.0, 1.0);
					    u_xlat1.w = u_xlat3.x * vs_COLOR0.w;
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2 = u_xlat2 + u_xlat2;
					    u_xlat2 = u_xlat2 * _TintColor;
					    u_xlat1.xyz = vs_COLOR0.xyz;
					    u_xlat1 = u_xlat1.wxyz * u_xlat2.wxyz;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat1.yzw;
					    u_xlat1.x = u_xlat1.x;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat1.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec2 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat3.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat1 = texture(_CameraDepthTexture, u_xlat3.xy);
					    u_xlat3.x = _ZBufferParams.z * u_xlat1.x + _ZBufferParams.w;
					    u_xlat3.x = float(1.0) / u_xlat3.x;
					    u_xlat3.x = u_xlat3.x + (-vs_TEXCOORD3.z);
					    u_xlat3.x = u_xlat3.x * _InvFade;
					    u_xlat3.x = clamp(u_xlat3.x, 0.0, 1.0);
					    u_xlat1.w = u_xlat3.x * vs_COLOR0.w;
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2 = u_xlat2 + u_xlat2;
					    u_xlat2 = u_xlat2 * _TintColor;
					    u_xlat1.xyz = vs_COLOR0.xyz;
					    u_xlat1 = u_xlat1.wxyz * u_xlat2.wxyz;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat1.yzw;
					    u_xlat1.x = u_xlat1.x;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat1.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec2 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat3.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat1 = texture(_CameraDepthTexture, u_xlat3.xy);
					    u_xlat3.x = _ZBufferParams.z * u_xlat1.x + _ZBufferParams.w;
					    u_xlat3.x = float(1.0) / u_xlat3.x;
					    u_xlat3.x = u_xlat3.x + (-vs_TEXCOORD3.z);
					    u_xlat3.x = u_xlat3.x * _InvFade;
					    u_xlat3.x = clamp(u_xlat3.x, 0.0, 1.0);
					    u_xlat1.w = u_xlat3.x * vs_COLOR0.w;
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2 = u_xlat2 + u_xlat2;
					    u_xlat2 = u_xlat2 * _TintColor;
					    u_xlat1.xyz = vs_COLOR0.xyz;
					    u_xlat1 = u_xlat1.wxyz * u_xlat2.wxyz;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat1.yzw;
					    u_xlat1.x = u_xlat1.x;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat1.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec2 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat3.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat1 = texture(_CameraDepthTexture, u_xlat3.xy);
					    u_xlat3.x = _ZBufferParams.z * u_xlat1.x + _ZBufferParams.w;
					    u_xlat3.x = float(1.0) / u_xlat3.x;
					    u_xlat3.x = u_xlat3.x + (-vs_TEXCOORD3.z);
					    u_xlat3.x = u_xlat3.x * _InvFade;
					    u_xlat3.x = clamp(u_xlat3.x, 0.0, 1.0);
					    u_xlat1.w = u_xlat3.x * vs_COLOR0.w;
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2 = u_xlat2 + u_xlat2;
					    u_xlat2 = u_xlat2 * _TintColor;
					    u_xlat1.xyz = vs_COLOR0.xyz;
					    u_xlat1 = u_xlat1.wxyz * u_xlat2.wxyz;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat1.yzw;
					    u_xlat1.x = u_xlat1.x;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat1.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec2 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat3.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat1 = texture(_CameraDepthTexture, u_xlat3.xy);
					    u_xlat3.x = _ZBufferParams.z * u_xlat1.x + _ZBufferParams.w;
					    u_xlat3.x = float(1.0) / u_xlat3.x;
					    u_xlat3.x = u_xlat3.x + (-vs_TEXCOORD3.z);
					    u_xlat3.x = u_xlat3.x * _InvFade;
					    u_xlat3.x = clamp(u_xlat3.x, 0.0, 1.0);
					    u_xlat1.w = u_xlat3.x * vs_COLOR0.w;
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2 = u_xlat2 + u_xlat2;
					    u_xlat2 = u_xlat2 * _TintColor;
					    u_xlat1.xyz = vs_COLOR0.xyz;
					    u_xlat1 = u_xlat1.wxyz * u_xlat2.wxyz;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat1.yzw;
					    u_xlat1.x = u_xlat1.x;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat1.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec2 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat3.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat1 = texture(_CameraDepthTexture, u_xlat3.xy);
					    u_xlat3.x = _ZBufferParams.z * u_xlat1.x + _ZBufferParams.w;
					    u_xlat3.x = float(1.0) / u_xlat3.x;
					    u_xlat3.x = u_xlat3.x + (-vs_TEXCOORD3.z);
					    u_xlat3.x = u_xlat3.x * _InvFade;
					    u_xlat3.x = clamp(u_xlat3.x, 0.0, 1.0);
					    u_xlat1.w = u_xlat3.x * vs_COLOR0.w;
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2 = u_xlat2 + u_xlat2;
					    u_xlat2 = u_xlat2 * _TintColor;
					    u_xlat1.xyz = vs_COLOR0.xyz;
					    u_xlat1 = u_xlat1.wxyz * u_xlat2.wxyz;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat1.yzw;
					    u_xlat1.x = u_xlat1.x;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat1.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec2 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat3.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat1 = texture(_CameraDepthTexture, u_xlat3.xy);
					    u_xlat3.x = _ZBufferParams.z * u_xlat1.x + _ZBufferParams.w;
					    u_xlat3.x = float(1.0) / u_xlat3.x;
					    u_xlat3.x = u_xlat3.x + (-vs_TEXCOORD3.z);
					    u_xlat3.x = u_xlat3.x * _InvFade;
					    u_xlat3.x = clamp(u_xlat3.x, 0.0, 1.0);
					    u_xlat1.w = u_xlat3.x * vs_COLOR0.w;
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2 = u_xlat2 + u_xlat2;
					    u_xlat2 = u_xlat2 * _TintColor;
					    u_xlat1.xyz = vs_COLOR0.xyz;
					    u_xlat1 = u_xlat1.wxyz * u_xlat2.wxyz;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat1.yzw;
					    u_xlat1.x = u_xlat1.x;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat1.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec2 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat3.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat1 = texture(_CameraDepthTexture, u_xlat3.xy);
					    u_xlat3.x = _ZBufferParams.z * u_xlat1.x + _ZBufferParams.w;
					    u_xlat3.x = float(1.0) / u_xlat3.x;
					    u_xlat3.x = u_xlat3.x + (-vs_TEXCOORD3.z);
					    u_xlat3.x = u_xlat3.x * _InvFade;
					    u_xlat3.x = clamp(u_xlat3.x, 0.0, 1.0);
					    u_xlat1.w = u_xlat3.x * vs_COLOR0.w;
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2 = u_xlat2 + u_xlat2;
					    u_xlat2 = u_xlat2 * _TintColor;
					    u_xlat1.xyz = vs_COLOR0.xyz;
					    u_xlat1 = u_xlat1.wxyz * u_xlat2.wxyz;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat1.yzw;
					    u_xlat1.x = u_xlat1.x;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat1.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendAdd" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					float u_xlat1;
					bool u_xlatb1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1 = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat0.w = u_xlat0.w * u_xlat1;
					    u_xlat0 = u_xlat0 * vs_COLOR0;
					    SV_Target0.w = u_xlat0.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					float u_xlat1;
					bool u_xlatb1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1 = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat0.w = u_xlat0.w * u_xlat1;
					    u_xlat0 = u_xlat0 * vs_COLOR0;
					    SV_Target0.w = u_xlat0.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[7];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					bool u_xlatb2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2 = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    SV_Target0.w = u_xlat0.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[6];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					bool u_xlatb2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2 = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    SV_Target0.w = u_xlat0.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					bool u_xlatb2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2 = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat1.xyz;
					    SV_Target0.w = u_xlat1.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					bool u_xlatb2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2 = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat1.xyz;
					    SV_Target0.w = u_xlat1.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					bool u_xlatb2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2 = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat1.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat1.x = (-u_xlat1.x) + 1.0;
					    u_xlat1.x = u_xlat1.x * _ProjectionParams.z;
					    u_xlat1.x = max(u_xlat1.x, 0.0);
					    u_xlat1.x = u_xlat1.x * unity_FogParams.z + unity_FogParams.w;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.xyz * u_xlat1.xxx;
					    SV_Target0.w = u_xlat0.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					bool u_xlatb2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2 = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat1.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat1.x = (-u_xlat1.x) + 1.0;
					    u_xlat1.x = u_xlat1.x * _ProjectionParams.z;
					    u_xlat1.x = max(u_xlat1.x, 0.0);
					    u_xlat1.x = u_xlat1.x * unity_FogParams.z + unity_FogParams.w;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.xyz * u_xlat1.xxx;
					    SV_Target0.w = u_xlat0.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					bool u_xlatb2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2 = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat1.xyz;
					    SV_Target0.w = u_xlat1.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					bool u_xlatb2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2 = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat1.xyz;
					    SV_Target0.w = u_xlat1.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					bool u_xlatb2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2 = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat1.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat1.x = (-u_xlat1.x) + 1.0;
					    u_xlat1.x = u_xlat1.x * _ProjectionParams.z;
					    u_xlat1.x = max(u_xlat1.x, 0.0);
					    u_xlat1.x = u_xlat1.x * unity_FogParams.y;
					    u_xlat1.x = exp2((-u_xlat1.x));
					    u_xlat1.x = min(u_xlat1.x, 1.0);
					    SV_Target0.xyz = u_xlat0.xyz * u_xlat1.xxx;
					    SV_Target0.w = u_xlat0.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					bool u_xlatb2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2 = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat1.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat1.x = (-u_xlat1.x) + 1.0;
					    u_xlat1.x = u_xlat1.x * _ProjectionParams.z;
					    u_xlat1.x = max(u_xlat1.x, 0.0);
					    u_xlat1.x = u_xlat1.x * unity_FogParams.y;
					    u_xlat1.x = exp2((-u_xlat1.x));
					    u_xlat1.x = min(u_xlat1.x, 1.0);
					    SV_Target0.xyz = u_xlat0.xyz * u_xlat1.xxx;
					    SV_Target0.w = u_xlat0.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					bool u_xlatb2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2 = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat1.xyz;
					    SV_Target0.w = u_xlat1.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					bool u_xlatb2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2 = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat1.xyz;
					    SV_Target0.w = u_xlat1.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					bool u_xlatb2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2 = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat1.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat1.x = (-u_xlat1.x) + 1.0;
					    u_xlat1.x = u_xlat1.x * _ProjectionParams.z;
					    u_xlat1.x = max(u_xlat1.x, 0.0);
					    u_xlat1.x = u_xlat1.x * unity_FogParams.x;
					    u_xlat1.x = u_xlat1.x * (-u_xlat1.x);
					    u_xlat1.x = exp2(u_xlat1.x);
					    SV_Target0.xyz = u_xlat0.xyz * u_xlat1.xxx;
					    SV_Target0.w = u_xlat0.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					bool u_xlatb2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2 = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat1.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat1.x = (-u_xlat1.x) + 1.0;
					    u_xlat1.x = u_xlat1.x * _ProjectionParams.z;
					    u_xlat1.x = max(u_xlat1.x, 0.0);
					    u_xlat1.x = u_xlat1.x * unity_FogParams.x;
					    u_xlat1.x = u_xlat1.x * (-u_xlat1.x);
					    u_xlat1.x = exp2(u_xlat1.x);
					    SV_Target0.xyz = u_xlat0.xyz * u_xlat1.xxx;
					    SV_Target0.w = u_xlat0.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendAdd" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[7];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					bool u_xlatb2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2 = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    SV_Target0.w = u_xlat0.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[6];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					bool u_xlatb2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2 = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    SV_Target0.w = u_xlat0.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[7];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					bool u_xlatb2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2 = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    SV_Target0.w = u_xlat0.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[6];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					bool u_xlatb2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2 = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    SV_Target0.w = u_xlat0.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					bool u_xlatb2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2 = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat1.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat1.x = (-u_xlat1.x) + 1.0;
					    u_xlat1.x = u_xlat1.x * _ProjectionParams.z;
					    u_xlat1.x = max(u_xlat1.x, 0.0);
					    u_xlat1.x = u_xlat1.x * unity_FogParams.z + unity_FogParams.w;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.xyz * u_xlat1.xxx;
					    SV_Target0.w = u_xlat0.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					bool u_xlatb2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2 = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat1.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat1.x = (-u_xlat1.x) + 1.0;
					    u_xlat1.x = u_xlat1.x * _ProjectionParams.z;
					    u_xlat1.x = max(u_xlat1.x, 0.0);
					    u_xlat1.x = u_xlat1.x * unity_FogParams.z + unity_FogParams.w;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.xyz * u_xlat1.xxx;
					    SV_Target0.w = u_xlat0.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					bool u_xlatb2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2 = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat1.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat1.x = (-u_xlat1.x) + 1.0;
					    u_xlat1.x = u_xlat1.x * _ProjectionParams.z;
					    u_xlat1.x = max(u_xlat1.x, 0.0);
					    u_xlat1.x = u_xlat1.x * unity_FogParams.z + unity_FogParams.w;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.xyz * u_xlat1.xxx;
					    SV_Target0.w = u_xlat0.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					bool u_xlatb2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2 = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat1.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat1.x = (-u_xlat1.x) + 1.0;
					    u_xlat1.x = u_xlat1.x * _ProjectionParams.z;
					    u_xlat1.x = max(u_xlat1.x, 0.0);
					    u_xlat1.x = u_xlat1.x * unity_FogParams.z + unity_FogParams.w;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.xyz * u_xlat1.xxx;
					    SV_Target0.w = u_xlat0.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					bool u_xlatb2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2 = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat1.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat1.x = (-u_xlat1.x) + 1.0;
					    u_xlat1.x = u_xlat1.x * _ProjectionParams.z;
					    u_xlat1.x = max(u_xlat1.x, 0.0);
					    u_xlat1.x = u_xlat1.x * unity_FogParams.y;
					    u_xlat1.x = exp2((-u_xlat1.x));
					    u_xlat1.x = min(u_xlat1.x, 1.0);
					    SV_Target0.xyz = u_xlat0.xyz * u_xlat1.xxx;
					    SV_Target0.w = u_xlat0.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					bool u_xlatb2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2 = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat1.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat1.x = (-u_xlat1.x) + 1.0;
					    u_xlat1.x = u_xlat1.x * _ProjectionParams.z;
					    u_xlat1.x = max(u_xlat1.x, 0.0);
					    u_xlat1.x = u_xlat1.x * unity_FogParams.y;
					    u_xlat1.x = exp2((-u_xlat1.x));
					    u_xlat1.x = min(u_xlat1.x, 1.0);
					    SV_Target0.xyz = u_xlat0.xyz * u_xlat1.xxx;
					    SV_Target0.w = u_xlat0.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					bool u_xlatb2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2 = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat1.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat1.x = (-u_xlat1.x) + 1.0;
					    u_xlat1.x = u_xlat1.x * _ProjectionParams.z;
					    u_xlat1.x = max(u_xlat1.x, 0.0);
					    u_xlat1.x = u_xlat1.x * unity_FogParams.y;
					    u_xlat1.x = exp2((-u_xlat1.x));
					    u_xlat1.x = min(u_xlat1.x, 1.0);
					    SV_Target0.xyz = u_xlat0.xyz * u_xlat1.xxx;
					    SV_Target0.w = u_xlat0.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					bool u_xlatb2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2 = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat1.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat1.x = (-u_xlat1.x) + 1.0;
					    u_xlat1.x = u_xlat1.x * _ProjectionParams.z;
					    u_xlat1.x = max(u_xlat1.x, 0.0);
					    u_xlat1.x = u_xlat1.x * unity_FogParams.y;
					    u_xlat1.x = exp2((-u_xlat1.x));
					    u_xlat1.x = min(u_xlat1.x, 1.0);
					    SV_Target0.xyz = u_xlat0.xyz * u_xlat1.xxx;
					    SV_Target0.w = u_xlat0.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					bool u_xlatb2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2 = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat1.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat1.x = (-u_xlat1.x) + 1.0;
					    u_xlat1.x = u_xlat1.x * _ProjectionParams.z;
					    u_xlat1.x = max(u_xlat1.x, 0.0);
					    u_xlat1.x = u_xlat1.x * unity_FogParams.x;
					    u_xlat1.x = u_xlat1.x * (-u_xlat1.x);
					    u_xlat1.x = exp2(u_xlat1.x);
					    SV_Target0.xyz = u_xlat0.xyz * u_xlat1.xxx;
					    SV_Target0.w = u_xlat0.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					bool u_xlatb2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2 = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat1.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat1.x = (-u_xlat1.x) + 1.0;
					    u_xlat1.x = u_xlat1.x * _ProjectionParams.z;
					    u_xlat1.x = max(u_xlat1.x, 0.0);
					    u_xlat1.x = u_xlat1.x * unity_FogParams.x;
					    u_xlat1.x = u_xlat1.x * (-u_xlat1.x);
					    u_xlat1.x = exp2(u_xlat1.x);
					    SV_Target0.xyz = u_xlat0.xyz * u_xlat1.xxx;
					    SV_Target0.w = u_xlat0.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					bool u_xlatb2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2 = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat1.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat1.x = (-u_xlat1.x) + 1.0;
					    u_xlat1.x = u_xlat1.x * _ProjectionParams.z;
					    u_xlat1.x = max(u_xlat1.x, 0.0);
					    u_xlat1.x = u_xlat1.x * unity_FogParams.x;
					    u_xlat1.x = u_xlat1.x * (-u_xlat1.x);
					    u_xlat1.x = exp2(u_xlat1.x);
					    SV_Target0.xyz = u_xlat0.xyz * u_xlat1.xxx;
					    SV_Target0.w = u_xlat0.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					bool u_xlatb2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2 = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat1.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat1.x = (-u_xlat1.x) + 1.0;
					    u_xlat1.x = u_xlat1.x * _ProjectionParams.z;
					    u_xlat1.x = max(u_xlat1.x, 0.0);
					    u_xlat1.x = u_xlat1.x * unity_FogParams.x;
					    u_xlat1.x = u_xlat1.x * (-u_xlat1.x);
					    u_xlat1.x = exp2(u_xlat1.x);
					    SV_Target0.xyz = u_xlat0.xyz * u_xlat1.xxx;
					    SV_Target0.w = u_xlat0.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendAdd" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					float u_xlat1;
					bool u_xlatb1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1 = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat0.w = u_xlat0.w * u_xlat1;
					    u_xlat0 = u_xlat0.wxyz * vs_COLOR0.wxyz;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.yzw;
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					float u_xlat1;
					bool u_xlatb1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1 = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat0.w = u_xlat0.w * u_xlat1;
					    u_xlat0 = u_xlat0.wxyz * vs_COLOR0.wxyz;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.yzw;
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[7];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					bool u_xlatb2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2 = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0.wxyz * u_xlat1.wxyz;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.yzw;
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[6];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					bool u_xlatb2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2 = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0.wxyz * u_xlat1.wxyz;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.yzw;
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					bool u_xlatb2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2 = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2;
					    u_xlat1 = u_xlat1.wxyz * vs_COLOR0.wxyz;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat1.yzw;
					    u_xlat1.x = u_xlat1.x;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat1.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					bool u_xlatb2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2 = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2;
					    u_xlat1 = u_xlat1.wxyz * vs_COLOR0.wxyz;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat1.yzw;
					    u_xlat1.x = u_xlat1.x;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat1.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					bool u_xlatb2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2 = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0.wxyz * u_xlat1.wxyz;
					    u_xlat1.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat1.x = (-u_xlat1.x) + 1.0;
					    u_xlat1.x = u_xlat1.x * _ProjectionParams.z;
					    u_xlat1.x = max(u_xlat1.x, 0.0);
					    u_xlat1.x = u_xlat1.x * unity_FogParams.z + unity_FogParams.w;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.yzw * u_xlat1.xxx;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					bool u_xlatb2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2 = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0.wxyz * u_xlat1.wxyz;
					    u_xlat1.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat1.x = (-u_xlat1.x) + 1.0;
					    u_xlat1.x = u_xlat1.x * _ProjectionParams.z;
					    u_xlat1.x = max(u_xlat1.x, 0.0);
					    u_xlat1.x = u_xlat1.x * unity_FogParams.z + unity_FogParams.w;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.yzw * u_xlat1.xxx;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					bool u_xlatb2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2 = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2;
					    u_xlat1 = u_xlat1.wxyz * vs_COLOR0.wxyz;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat1.yzw;
					    u_xlat1.x = u_xlat1.x;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat1.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					bool u_xlatb2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2 = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2;
					    u_xlat1 = u_xlat1.wxyz * vs_COLOR0.wxyz;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat1.yzw;
					    u_xlat1.x = u_xlat1.x;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat1.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					bool u_xlatb2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2 = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0.wxyz * u_xlat1.wxyz;
					    u_xlat1.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat1.x = (-u_xlat1.x) + 1.0;
					    u_xlat1.x = u_xlat1.x * _ProjectionParams.z;
					    u_xlat1.x = max(u_xlat1.x, 0.0);
					    u_xlat1.x = u_xlat1.x * unity_FogParams.y;
					    u_xlat1.x = exp2((-u_xlat1.x));
					    u_xlat1.x = min(u_xlat1.x, 1.0);
					    SV_Target0.xyz = u_xlat0.yzw * u_xlat1.xxx;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					bool u_xlatb2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2 = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0.wxyz * u_xlat1.wxyz;
					    u_xlat1.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat1.x = (-u_xlat1.x) + 1.0;
					    u_xlat1.x = u_xlat1.x * _ProjectionParams.z;
					    u_xlat1.x = max(u_xlat1.x, 0.0);
					    u_xlat1.x = u_xlat1.x * unity_FogParams.y;
					    u_xlat1.x = exp2((-u_xlat1.x));
					    u_xlat1.x = min(u_xlat1.x, 1.0);
					    SV_Target0.xyz = u_xlat0.yzw * u_xlat1.xxx;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					bool u_xlatb2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2 = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2;
					    u_xlat1 = u_xlat1.wxyz * vs_COLOR0.wxyz;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat1.yzw;
					    u_xlat1.x = u_xlat1.x;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat1.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					bool u_xlatb2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2 = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2;
					    u_xlat1 = u_xlat1.wxyz * vs_COLOR0.wxyz;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat1.yzw;
					    u_xlat1.x = u_xlat1.x;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat1.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					bool u_xlatb2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2 = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0.wxyz * u_xlat1.wxyz;
					    u_xlat1.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat1.x = (-u_xlat1.x) + 1.0;
					    u_xlat1.x = u_xlat1.x * _ProjectionParams.z;
					    u_xlat1.x = max(u_xlat1.x, 0.0);
					    u_xlat1.x = u_xlat1.x * unity_FogParams.x;
					    u_xlat1.x = u_xlat1.x * (-u_xlat1.x);
					    u_xlat1.x = exp2(u_xlat1.x);
					    SV_Target0.xyz = u_xlat0.yzw * u_xlat1.xxx;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					bool u_xlatb2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2 = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0.wxyz * u_xlat1.wxyz;
					    u_xlat1.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat1.x = (-u_xlat1.x) + 1.0;
					    u_xlat1.x = u_xlat1.x * _ProjectionParams.z;
					    u_xlat1.x = max(u_xlat1.x, 0.0);
					    u_xlat1.x = u_xlat1.x * unity_FogParams.x;
					    u_xlat1.x = u_xlat1.x * (-u_xlat1.x);
					    u_xlat1.x = exp2(u_xlat1.x);
					    SV_Target0.xyz = u_xlat0.yzw * u_xlat1.xxx;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendAdd" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[7];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					bool u_xlatb2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2 = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0.wxyz * u_xlat1.wxyz;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.yzw;
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[6];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					bool u_xlatb2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2 = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0.wxyz * u_xlat1.wxyz;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.yzw;
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[7];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					bool u_xlatb2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2 = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0.wxyz * u_xlat1.wxyz;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.yzw;
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[6];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					bool u_xlatb2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2 = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0.wxyz * u_xlat1.wxyz;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.yzw;
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					bool u_xlatb2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2 = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0.wxyz * u_xlat1.wxyz;
					    u_xlat1.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat1.x = (-u_xlat1.x) + 1.0;
					    u_xlat1.x = u_xlat1.x * _ProjectionParams.z;
					    u_xlat1.x = max(u_xlat1.x, 0.0);
					    u_xlat1.x = u_xlat1.x * unity_FogParams.z + unity_FogParams.w;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.yzw * u_xlat1.xxx;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					bool u_xlatb2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2 = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0.wxyz * u_xlat1.wxyz;
					    u_xlat1.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat1.x = (-u_xlat1.x) + 1.0;
					    u_xlat1.x = u_xlat1.x * _ProjectionParams.z;
					    u_xlat1.x = max(u_xlat1.x, 0.0);
					    u_xlat1.x = u_xlat1.x * unity_FogParams.z + unity_FogParams.w;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.yzw * u_xlat1.xxx;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					bool u_xlatb2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2 = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0.wxyz * u_xlat1.wxyz;
					    u_xlat1.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat1.x = (-u_xlat1.x) + 1.0;
					    u_xlat1.x = u_xlat1.x * _ProjectionParams.z;
					    u_xlat1.x = max(u_xlat1.x, 0.0);
					    u_xlat1.x = u_xlat1.x * unity_FogParams.z + unity_FogParams.w;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.yzw * u_xlat1.xxx;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					bool u_xlatb2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2 = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0.wxyz * u_xlat1.wxyz;
					    u_xlat1.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat1.x = (-u_xlat1.x) + 1.0;
					    u_xlat1.x = u_xlat1.x * _ProjectionParams.z;
					    u_xlat1.x = max(u_xlat1.x, 0.0);
					    u_xlat1.x = u_xlat1.x * unity_FogParams.z + unity_FogParams.w;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.yzw * u_xlat1.xxx;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					bool u_xlatb2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2 = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0.wxyz * u_xlat1.wxyz;
					    u_xlat1.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat1.x = (-u_xlat1.x) + 1.0;
					    u_xlat1.x = u_xlat1.x * _ProjectionParams.z;
					    u_xlat1.x = max(u_xlat1.x, 0.0);
					    u_xlat1.x = u_xlat1.x * unity_FogParams.y;
					    u_xlat1.x = exp2((-u_xlat1.x));
					    u_xlat1.x = min(u_xlat1.x, 1.0);
					    SV_Target0.xyz = u_xlat0.yzw * u_xlat1.xxx;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					bool u_xlatb2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2 = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0.wxyz * u_xlat1.wxyz;
					    u_xlat1.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat1.x = (-u_xlat1.x) + 1.0;
					    u_xlat1.x = u_xlat1.x * _ProjectionParams.z;
					    u_xlat1.x = max(u_xlat1.x, 0.0);
					    u_xlat1.x = u_xlat1.x * unity_FogParams.y;
					    u_xlat1.x = exp2((-u_xlat1.x));
					    u_xlat1.x = min(u_xlat1.x, 1.0);
					    SV_Target0.xyz = u_xlat0.yzw * u_xlat1.xxx;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					bool u_xlatb2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2 = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0.wxyz * u_xlat1.wxyz;
					    u_xlat1.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat1.x = (-u_xlat1.x) + 1.0;
					    u_xlat1.x = u_xlat1.x * _ProjectionParams.z;
					    u_xlat1.x = max(u_xlat1.x, 0.0);
					    u_xlat1.x = u_xlat1.x * unity_FogParams.y;
					    u_xlat1.x = exp2((-u_xlat1.x));
					    u_xlat1.x = min(u_xlat1.x, 1.0);
					    SV_Target0.xyz = u_xlat0.yzw * u_xlat1.xxx;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					bool u_xlatb2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2 = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0.wxyz * u_xlat1.wxyz;
					    u_xlat1.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat1.x = (-u_xlat1.x) + 1.0;
					    u_xlat1.x = u_xlat1.x * _ProjectionParams.z;
					    u_xlat1.x = max(u_xlat1.x, 0.0);
					    u_xlat1.x = u_xlat1.x * unity_FogParams.y;
					    u_xlat1.x = exp2((-u_xlat1.x));
					    u_xlat1.x = min(u_xlat1.x, 1.0);
					    SV_Target0.xyz = u_xlat0.yzw * u_xlat1.xxx;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					bool u_xlatb2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2 = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0.wxyz * u_xlat1.wxyz;
					    u_xlat1.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat1.x = (-u_xlat1.x) + 1.0;
					    u_xlat1.x = u_xlat1.x * _ProjectionParams.z;
					    u_xlat1.x = max(u_xlat1.x, 0.0);
					    u_xlat1.x = u_xlat1.x * unity_FogParams.x;
					    u_xlat1.x = u_xlat1.x * (-u_xlat1.x);
					    u_xlat1.x = exp2(u_xlat1.x);
					    SV_Target0.xyz = u_xlat0.yzw * u_xlat1.xxx;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					bool u_xlatb2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2 = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0.wxyz * u_xlat1.wxyz;
					    u_xlat1.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat1.x = (-u_xlat1.x) + 1.0;
					    u_xlat1.x = u_xlat1.x * _ProjectionParams.z;
					    u_xlat1.x = max(u_xlat1.x, 0.0);
					    u_xlat1.x = u_xlat1.x * unity_FogParams.x;
					    u_xlat1.x = u_xlat1.x * (-u_xlat1.x);
					    u_xlat1.x = exp2(u_xlat1.x);
					    SV_Target0.xyz = u_xlat0.yzw * u_xlat1.xxx;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					bool u_xlatb2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2 = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0.wxyz * u_xlat1.wxyz;
					    u_xlat1.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat1.x = (-u_xlat1.x) + 1.0;
					    u_xlat1.x = u_xlat1.x * _ProjectionParams.z;
					    u_xlat1.x = max(u_xlat1.x, 0.0);
					    u_xlat1.x = u_xlat1.x * unity_FogParams.x;
					    u_xlat1.x = u_xlat1.x * (-u_xlat1.x);
					    u_xlat1.x = exp2(u_xlat1.x);
					    SV_Target0.xyz = u_xlat0.yzw * u_xlat1.xxx;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					bool u_xlatb2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2 = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0.wxyz * u_xlat1.wxyz;
					    u_xlat1.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat1.x = (-u_xlat1.x) + 1.0;
					    u_xlat1.x = u_xlat1.x * _ProjectionParams.z;
					    u_xlat1.x = max(u_xlat1.x, 0.0);
					    u_xlat1.x = u_xlat1.x * unity_FogParams.x;
					    u_xlat1.x = u_xlat1.x * (-u_xlat1.x);
					    u_xlat1.x = exp2(u_xlat1.x);
					    SV_Target0.xyz = u_xlat0.yzw * u_xlat1.xxx;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendAdd" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    SV_Target0.xyz = u_xlat2.xyz * vs_COLOR0.xyz;
					    SV_Target0.w = u_xlatb0 ? 1.0 : float(0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    SV_Target0.xyz = u_xlat2.xyz * vs_COLOR0.xyz;
					    SV_Target0.w = u_xlatb0 ? 1.0 : float(0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[7];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb0 = u_xlat1.w>=u_xlat0.x;
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    SV_Target0.xyz = u_xlat2.xyz * vs_COLOR0.xyz;
					    SV_Target0.w = u_xlatb0 ? 1.0 : float(0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[6];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb0 = u_xlat1.w>=u_xlat0.x;
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    SV_Target0.xyz = u_xlat2.xyz * vs_COLOR0.xyz;
					    SV_Target0.w = u_xlatb0 ? 1.0 : float(0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * vs_COLOR0.xyz;
					    SV_Target0.xyz = u_xlat2.xyz * vec3(u_xlat0);
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    SV_Target0.w = u_xlatb0 ? 1.0 : float(0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * vs_COLOR0.xyz;
					    SV_Target0.xyz = u_xlat2.xyz * vec3(u_xlat0);
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    SV_Target0.w = u_xlatb0 ? 1.0 : float(0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb0 = u_xlat1.w>=u_xlat0.x;
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * vs_COLOR0.xyz;
					    SV_Target0.w = u_xlatb0 ? 1.0 : float(0.0);
					    u_xlat0.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0.x = (-u_xlat0.x) + 1.0;
					    u_xlat0.x = u_xlat0.x * _ProjectionParams.z;
					    u_xlat0.x = max(u_xlat0.x, 0.0);
					    u_xlat0.x = u_xlat0.x * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat2.xyz * u_xlat0.xxx;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb0 = u_xlat1.w>=u_xlat0.x;
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * vs_COLOR0.xyz;
					    SV_Target0.w = u_xlatb0 ? 1.0 : float(0.0);
					    u_xlat0.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0.x = (-u_xlat0.x) + 1.0;
					    u_xlat0.x = u_xlat0.x * _ProjectionParams.z;
					    u_xlat0.x = max(u_xlat0.x, 0.0);
					    u_xlat0.x = u_xlat0.x * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat2.xyz * u_xlat0.xxx;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * vs_COLOR0.xyz;
					    SV_Target0.xyz = u_xlat2.xyz * vec3(u_xlat0);
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    SV_Target0.w = u_xlatb0 ? 1.0 : float(0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * vs_COLOR0.xyz;
					    SV_Target0.xyz = u_xlat2.xyz * vec3(u_xlat0);
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    SV_Target0.w = u_xlatb0 ? 1.0 : float(0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0.x = (-u_xlat0.x) + 1.0;
					    u_xlat0.x = u_xlat0.x * _ProjectionParams.z;
					    u_xlat0.x = max(u_xlat0.x, 0.0);
					    u_xlat0.x = u_xlat0.x * unity_FogParams.y;
					    u_xlat0.x = exp2((-u_xlat0.x));
					    u_xlat0.x = min(u_xlat0.x, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * vs_COLOR0.xyz;
					    SV_Target0.xyz = u_xlat2.xyz * u_xlat0.xxx;
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0.x;
					    SV_Target0.w = u_xlatb0 ? 1.0 : float(0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0.x = (-u_xlat0.x) + 1.0;
					    u_xlat0.x = u_xlat0.x * _ProjectionParams.z;
					    u_xlat0.x = max(u_xlat0.x, 0.0);
					    u_xlat0.x = u_xlat0.x * unity_FogParams.y;
					    u_xlat0.x = exp2((-u_xlat0.x));
					    u_xlat0.x = min(u_xlat0.x, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * vs_COLOR0.xyz;
					    SV_Target0.xyz = u_xlat2.xyz * u_xlat0.xxx;
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0.x;
					    SV_Target0.w = u_xlatb0 ? 1.0 : float(0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * vs_COLOR0.xyz;
					    SV_Target0.xyz = u_xlat2.xyz * vec3(u_xlat0);
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    SV_Target0.w = u_xlatb0 ? 1.0 : float(0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * vs_COLOR0.xyz;
					    SV_Target0.xyz = u_xlat2.xyz * vec3(u_xlat0);
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    SV_Target0.w = u_xlatb0 ? 1.0 : float(0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0.x = (-u_xlat0.x) + 1.0;
					    u_xlat0.x = u_xlat0.x * _ProjectionParams.z;
					    u_xlat0.x = max(u_xlat0.x, 0.0);
					    u_xlat0.x = u_xlat0.x * unity_FogParams.x;
					    u_xlat0.x = u_xlat0.x * (-u_xlat0.x);
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * vs_COLOR0.xyz;
					    SV_Target0.xyz = u_xlat2.xyz * u_xlat0.xxx;
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0.x;
					    SV_Target0.w = u_xlatb0 ? 1.0 : float(0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0.x = (-u_xlat0.x) + 1.0;
					    u_xlat0.x = u_xlat0.x * _ProjectionParams.z;
					    u_xlat0.x = max(u_xlat0.x, 0.0);
					    u_xlat0.x = u_xlat0.x * unity_FogParams.x;
					    u_xlat0.x = u_xlat0.x * (-u_xlat0.x);
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * vs_COLOR0.xyz;
					    SV_Target0.xyz = u_xlat2.xyz * u_xlat0.xxx;
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0.x;
					    SV_Target0.w = u_xlatb0 ? 1.0 : float(0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendAdd" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[7];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb0 = u_xlat1.w>=u_xlat0.x;
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    SV_Target0.xyz = u_xlat2.xyz * vs_COLOR0.xyz;
					    SV_Target0.w = u_xlatb0 ? 1.0 : float(0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[6];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb0 = u_xlat1.w>=u_xlat0.x;
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    SV_Target0.xyz = u_xlat2.xyz * vs_COLOR0.xyz;
					    SV_Target0.w = u_xlatb0 ? 1.0 : float(0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[7];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb0 = u_xlat1.w>=u_xlat0.x;
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    SV_Target0.xyz = u_xlat2.xyz * vs_COLOR0.xyz;
					    SV_Target0.w = u_xlatb0 ? 1.0 : float(0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[6];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb0 = u_xlat1.w>=u_xlat0.x;
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    SV_Target0.xyz = u_xlat2.xyz * vs_COLOR0.xyz;
					    SV_Target0.w = u_xlatb0 ? 1.0 : float(0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb0 = u_xlat1.w>=u_xlat0.x;
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * vs_COLOR0.xyz;
					    SV_Target0.w = u_xlatb0 ? 1.0 : float(0.0);
					    u_xlat0.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0.x = (-u_xlat0.x) + 1.0;
					    u_xlat0.x = u_xlat0.x * _ProjectionParams.z;
					    u_xlat0.x = max(u_xlat0.x, 0.0);
					    u_xlat0.x = u_xlat0.x * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat2.xyz * u_xlat0.xxx;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb0 = u_xlat1.w>=u_xlat0.x;
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * vs_COLOR0.xyz;
					    SV_Target0.w = u_xlatb0 ? 1.0 : float(0.0);
					    u_xlat0.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0.x = (-u_xlat0.x) + 1.0;
					    u_xlat0.x = u_xlat0.x * _ProjectionParams.z;
					    u_xlat0.x = max(u_xlat0.x, 0.0);
					    u_xlat0.x = u_xlat0.x * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat2.xyz * u_xlat0.xxx;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb0 = u_xlat1.w>=u_xlat0.x;
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * vs_COLOR0.xyz;
					    SV_Target0.w = u_xlatb0 ? 1.0 : float(0.0);
					    u_xlat0.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0.x = (-u_xlat0.x) + 1.0;
					    u_xlat0.x = u_xlat0.x * _ProjectionParams.z;
					    u_xlat0.x = max(u_xlat0.x, 0.0);
					    u_xlat0.x = u_xlat0.x * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat2.xyz * u_xlat0.xxx;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb0 = u_xlat1.w>=u_xlat0.x;
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * vs_COLOR0.xyz;
					    SV_Target0.w = u_xlatb0 ? 1.0 : float(0.0);
					    u_xlat0.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0.x = (-u_xlat0.x) + 1.0;
					    u_xlat0.x = u_xlat0.x * _ProjectionParams.z;
					    u_xlat0.x = max(u_xlat0.x, 0.0);
					    u_xlat0.x = u_xlat0.x * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat2.xyz * u_xlat0.xxx;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0.x = (-u_xlat0.x) + 1.0;
					    u_xlat0.x = u_xlat0.x * _ProjectionParams.z;
					    u_xlat0.x = max(u_xlat0.x, 0.0);
					    u_xlat0.x = u_xlat0.x * unity_FogParams.y;
					    u_xlat0.x = exp2((-u_xlat0.x));
					    u_xlat0.x = min(u_xlat0.x, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * vs_COLOR0.xyz;
					    SV_Target0.xyz = u_xlat2.xyz * u_xlat0.xxx;
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0.x;
					    SV_Target0.w = u_xlatb0 ? 1.0 : float(0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0.x = (-u_xlat0.x) + 1.0;
					    u_xlat0.x = u_xlat0.x * _ProjectionParams.z;
					    u_xlat0.x = max(u_xlat0.x, 0.0);
					    u_xlat0.x = u_xlat0.x * unity_FogParams.y;
					    u_xlat0.x = exp2((-u_xlat0.x));
					    u_xlat0.x = min(u_xlat0.x, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * vs_COLOR0.xyz;
					    SV_Target0.xyz = u_xlat2.xyz * u_xlat0.xxx;
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0.x;
					    SV_Target0.w = u_xlatb0 ? 1.0 : float(0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0.x = (-u_xlat0.x) + 1.0;
					    u_xlat0.x = u_xlat0.x * _ProjectionParams.z;
					    u_xlat0.x = max(u_xlat0.x, 0.0);
					    u_xlat0.x = u_xlat0.x * unity_FogParams.y;
					    u_xlat0.x = exp2((-u_xlat0.x));
					    u_xlat0.x = min(u_xlat0.x, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * vs_COLOR0.xyz;
					    SV_Target0.xyz = u_xlat2.xyz * u_xlat0.xxx;
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0.x;
					    SV_Target0.w = u_xlatb0 ? 1.0 : float(0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0.x = (-u_xlat0.x) + 1.0;
					    u_xlat0.x = u_xlat0.x * _ProjectionParams.z;
					    u_xlat0.x = max(u_xlat0.x, 0.0);
					    u_xlat0.x = u_xlat0.x * unity_FogParams.y;
					    u_xlat0.x = exp2((-u_xlat0.x));
					    u_xlat0.x = min(u_xlat0.x, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * vs_COLOR0.xyz;
					    SV_Target0.xyz = u_xlat2.xyz * u_xlat0.xxx;
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0.x;
					    SV_Target0.w = u_xlatb0 ? 1.0 : float(0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0.x = (-u_xlat0.x) + 1.0;
					    u_xlat0.x = u_xlat0.x * _ProjectionParams.z;
					    u_xlat0.x = max(u_xlat0.x, 0.0);
					    u_xlat0.x = u_xlat0.x * unity_FogParams.x;
					    u_xlat0.x = u_xlat0.x * (-u_xlat0.x);
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * vs_COLOR0.xyz;
					    SV_Target0.xyz = u_xlat2.xyz * u_xlat0.xxx;
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0.x;
					    SV_Target0.w = u_xlatb0 ? 1.0 : float(0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0.x = (-u_xlat0.x) + 1.0;
					    u_xlat0.x = u_xlat0.x * _ProjectionParams.z;
					    u_xlat0.x = max(u_xlat0.x, 0.0);
					    u_xlat0.x = u_xlat0.x * unity_FogParams.x;
					    u_xlat0.x = u_xlat0.x * (-u_xlat0.x);
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * vs_COLOR0.xyz;
					    SV_Target0.xyz = u_xlat2.xyz * u_xlat0.xxx;
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0.x;
					    SV_Target0.w = u_xlatb0 ? 1.0 : float(0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0.x = (-u_xlat0.x) + 1.0;
					    u_xlat0.x = u_xlat0.x * _ProjectionParams.z;
					    u_xlat0.x = max(u_xlat0.x, 0.0);
					    u_xlat0.x = u_xlat0.x * unity_FogParams.x;
					    u_xlat0.x = u_xlat0.x * (-u_xlat0.x);
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * vs_COLOR0.xyz;
					    SV_Target0.xyz = u_xlat2.xyz * u_xlat0.xxx;
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0.x;
					    SV_Target0.w = u_xlatb0 ? 1.0 : float(0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0.x = (-u_xlat0.x) + 1.0;
					    u_xlat0.x = u_xlat0.x * _ProjectionParams.z;
					    u_xlat0.x = max(u_xlat0.x, 0.0);
					    u_xlat0.x = u_xlat0.x * unity_FogParams.x;
					    u_xlat0.x = u_xlat0.x * (-u_xlat0.x);
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * vs_COLOR0.xyz;
					    SV_Target0.xyz = u_xlat2.xyz * u_xlat0.xxx;
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0.x;
					    SV_Target0.w = u_xlatb0 ? 1.0 : float(0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendAdd" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    SV_Target0.xyz = u_xlat2.xyz * vs_COLOR0.xyz;
					    u_xlat0 = u_xlatb0 ? 1.0 : float(0.0);
					    SV_Target0.w = u_xlat0 * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    SV_Target0.xyz = u_xlat2.xyz * vs_COLOR0.xyz;
					    u_xlat0 = u_xlatb0 ? 1.0 : float(0.0);
					    SV_Target0.w = u_xlat0 * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[7];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb0 = u_xlat1.w>=u_xlat0.x;
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    SV_Target0.xyz = u_xlat2.xyz * vs_COLOR0.xyz;
					    u_xlat0.x = u_xlatb0 ? 1.0 : float(0.0);
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[6];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb0 = u_xlat1.w>=u_xlat0.x;
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    SV_Target0.xyz = u_xlat2.xyz * vs_COLOR0.xyz;
					    u_xlat0.x = u_xlatb0 ? 1.0 : float(0.0);
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * vs_COLOR0.xyz;
					    SV_Target0.xyz = u_xlat2.xyz * vec3(u_xlat0);
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    u_xlat0 = u_xlatb0 ? 1.0 : float(0.0);
					    SV_Target0.w = u_xlat0 * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * vs_COLOR0.xyz;
					    SV_Target0.xyz = u_xlat2.xyz * vec3(u_xlat0);
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    u_xlat0 = u_xlatb0 ? 1.0 : float(0.0);
					    SV_Target0.w = u_xlat0 * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb0 = u_xlat1.w>=u_xlat0.x;
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * vs_COLOR0.xyz;
					    u_xlat0.x = u_xlatb0 ? 1.0 : float(0.0);
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    u_xlat0.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0.x = (-u_xlat0.x) + 1.0;
					    u_xlat0.x = u_xlat0.x * _ProjectionParams.z;
					    u_xlat0.x = max(u_xlat0.x, 0.0);
					    u_xlat0.x = u_xlat0.x * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat2.xyz * u_xlat0.xxx;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb0 = u_xlat1.w>=u_xlat0.x;
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * vs_COLOR0.xyz;
					    u_xlat0.x = u_xlatb0 ? 1.0 : float(0.0);
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    u_xlat0.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0.x = (-u_xlat0.x) + 1.0;
					    u_xlat0.x = u_xlat0.x * _ProjectionParams.z;
					    u_xlat0.x = max(u_xlat0.x, 0.0);
					    u_xlat0.x = u_xlat0.x * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat2.xyz * u_xlat0.xxx;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * vs_COLOR0.xyz;
					    SV_Target0.xyz = u_xlat2.xyz * vec3(u_xlat0);
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    u_xlat0 = u_xlatb0 ? 1.0 : float(0.0);
					    SV_Target0.w = u_xlat0 * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * vs_COLOR0.xyz;
					    SV_Target0.xyz = u_xlat2.xyz * vec3(u_xlat0);
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    u_xlat0 = u_xlatb0 ? 1.0 : float(0.0);
					    SV_Target0.w = u_xlat0 * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb0 = u_xlat1.w>=u_xlat0.x;
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * vs_COLOR0.xyz;
					    u_xlat0.x = u_xlatb0 ? 1.0 : float(0.0);
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    u_xlat0.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0.x = (-u_xlat0.x) + 1.0;
					    u_xlat0.x = u_xlat0.x * _ProjectionParams.z;
					    u_xlat0.x = max(u_xlat0.x, 0.0);
					    u_xlat0.x = u_xlat0.x * unity_FogParams.y;
					    u_xlat0.x = exp2((-u_xlat0.x));
					    u_xlat0.x = min(u_xlat0.x, 1.0);
					    SV_Target0.xyz = u_xlat2.xyz * u_xlat0.xxx;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb0 = u_xlat1.w>=u_xlat0.x;
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * vs_COLOR0.xyz;
					    u_xlat0.x = u_xlatb0 ? 1.0 : float(0.0);
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    u_xlat0.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0.x = (-u_xlat0.x) + 1.0;
					    u_xlat0.x = u_xlat0.x * _ProjectionParams.z;
					    u_xlat0.x = max(u_xlat0.x, 0.0);
					    u_xlat0.x = u_xlat0.x * unity_FogParams.y;
					    u_xlat0.x = exp2((-u_xlat0.x));
					    u_xlat0.x = min(u_xlat0.x, 1.0);
					    SV_Target0.xyz = u_xlat2.xyz * u_xlat0.xxx;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * vs_COLOR0.xyz;
					    SV_Target0.xyz = u_xlat2.xyz * vec3(u_xlat0);
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    u_xlat0 = u_xlatb0 ? 1.0 : float(0.0);
					    SV_Target0.w = u_xlat0 * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * vs_COLOR0.xyz;
					    SV_Target0.xyz = u_xlat2.xyz * vec3(u_xlat0);
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    u_xlat0 = u_xlatb0 ? 1.0 : float(0.0);
					    SV_Target0.w = u_xlat0 * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb0 = u_xlat1.w>=u_xlat0.x;
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * vs_COLOR0.xyz;
					    u_xlat0.x = u_xlatb0 ? 1.0 : float(0.0);
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    u_xlat0.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0.x = (-u_xlat0.x) + 1.0;
					    u_xlat0.x = u_xlat0.x * _ProjectionParams.z;
					    u_xlat0.x = max(u_xlat0.x, 0.0);
					    u_xlat0.x = u_xlat0.x * unity_FogParams.x;
					    u_xlat0.x = u_xlat0.x * (-u_xlat0.x);
					    u_xlat0.x = exp2(u_xlat0.x);
					    SV_Target0.xyz = u_xlat2.xyz * u_xlat0.xxx;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb0 = u_xlat1.w>=u_xlat0.x;
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * vs_COLOR0.xyz;
					    u_xlat0.x = u_xlatb0 ? 1.0 : float(0.0);
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    u_xlat0.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0.x = (-u_xlat0.x) + 1.0;
					    u_xlat0.x = u_xlat0.x * _ProjectionParams.z;
					    u_xlat0.x = max(u_xlat0.x, 0.0);
					    u_xlat0.x = u_xlat0.x * unity_FogParams.x;
					    u_xlat0.x = u_xlat0.x * (-u_xlat0.x);
					    u_xlat0.x = exp2(u_xlat0.x);
					    SV_Target0.xyz = u_xlat2.xyz * u_xlat0.xxx;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendAdd" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[7];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb0 = u_xlat1.w>=u_xlat0.x;
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    SV_Target0.xyz = u_xlat2.xyz * vs_COLOR0.xyz;
					    u_xlat0.x = u_xlatb0 ? 1.0 : float(0.0);
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[6];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb0 = u_xlat1.w>=u_xlat0.x;
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    SV_Target0.xyz = u_xlat2.xyz * vs_COLOR0.xyz;
					    u_xlat0.x = u_xlatb0 ? 1.0 : float(0.0);
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[7];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb0 = u_xlat1.w>=u_xlat0.x;
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    SV_Target0.xyz = u_xlat2.xyz * vs_COLOR0.xyz;
					    u_xlat0.x = u_xlatb0 ? 1.0 : float(0.0);
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[6];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb0 = u_xlat1.w>=u_xlat0.x;
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    SV_Target0.xyz = u_xlat2.xyz * vs_COLOR0.xyz;
					    u_xlat0.x = u_xlatb0 ? 1.0 : float(0.0);
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb0 = u_xlat1.w>=u_xlat0.x;
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * vs_COLOR0.xyz;
					    u_xlat0.x = u_xlatb0 ? 1.0 : float(0.0);
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    u_xlat0.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0.x = (-u_xlat0.x) + 1.0;
					    u_xlat0.x = u_xlat0.x * _ProjectionParams.z;
					    u_xlat0.x = max(u_xlat0.x, 0.0);
					    u_xlat0.x = u_xlat0.x * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat2.xyz * u_xlat0.xxx;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb0 = u_xlat1.w>=u_xlat0.x;
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * vs_COLOR0.xyz;
					    u_xlat0.x = u_xlatb0 ? 1.0 : float(0.0);
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    u_xlat0.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0.x = (-u_xlat0.x) + 1.0;
					    u_xlat0.x = u_xlat0.x * _ProjectionParams.z;
					    u_xlat0.x = max(u_xlat0.x, 0.0);
					    u_xlat0.x = u_xlat0.x * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat2.xyz * u_xlat0.xxx;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb0 = u_xlat1.w>=u_xlat0.x;
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * vs_COLOR0.xyz;
					    u_xlat0.x = u_xlatb0 ? 1.0 : float(0.0);
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    u_xlat0.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0.x = (-u_xlat0.x) + 1.0;
					    u_xlat0.x = u_xlat0.x * _ProjectionParams.z;
					    u_xlat0.x = max(u_xlat0.x, 0.0);
					    u_xlat0.x = u_xlat0.x * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat2.xyz * u_xlat0.xxx;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb0 = u_xlat1.w>=u_xlat0.x;
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * vs_COLOR0.xyz;
					    u_xlat0.x = u_xlatb0 ? 1.0 : float(0.0);
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    u_xlat0.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0.x = (-u_xlat0.x) + 1.0;
					    u_xlat0.x = u_xlat0.x * _ProjectionParams.z;
					    u_xlat0.x = max(u_xlat0.x, 0.0);
					    u_xlat0.x = u_xlat0.x * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat2.xyz * u_xlat0.xxx;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb0 = u_xlat1.w>=u_xlat0.x;
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * vs_COLOR0.xyz;
					    u_xlat0.x = u_xlatb0 ? 1.0 : float(0.0);
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    u_xlat0.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0.x = (-u_xlat0.x) + 1.0;
					    u_xlat0.x = u_xlat0.x * _ProjectionParams.z;
					    u_xlat0.x = max(u_xlat0.x, 0.0);
					    u_xlat0.x = u_xlat0.x * unity_FogParams.y;
					    u_xlat0.x = exp2((-u_xlat0.x));
					    u_xlat0.x = min(u_xlat0.x, 1.0);
					    SV_Target0.xyz = u_xlat2.xyz * u_xlat0.xxx;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb0 = u_xlat1.w>=u_xlat0.x;
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * vs_COLOR0.xyz;
					    u_xlat0.x = u_xlatb0 ? 1.0 : float(0.0);
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    u_xlat0.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0.x = (-u_xlat0.x) + 1.0;
					    u_xlat0.x = u_xlat0.x * _ProjectionParams.z;
					    u_xlat0.x = max(u_xlat0.x, 0.0);
					    u_xlat0.x = u_xlat0.x * unity_FogParams.y;
					    u_xlat0.x = exp2((-u_xlat0.x));
					    u_xlat0.x = min(u_xlat0.x, 1.0);
					    SV_Target0.xyz = u_xlat2.xyz * u_xlat0.xxx;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb0 = u_xlat1.w>=u_xlat0.x;
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * vs_COLOR0.xyz;
					    u_xlat0.x = u_xlatb0 ? 1.0 : float(0.0);
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    u_xlat0.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0.x = (-u_xlat0.x) + 1.0;
					    u_xlat0.x = u_xlat0.x * _ProjectionParams.z;
					    u_xlat0.x = max(u_xlat0.x, 0.0);
					    u_xlat0.x = u_xlat0.x * unity_FogParams.y;
					    u_xlat0.x = exp2((-u_xlat0.x));
					    u_xlat0.x = min(u_xlat0.x, 1.0);
					    SV_Target0.xyz = u_xlat2.xyz * u_xlat0.xxx;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb0 = u_xlat1.w>=u_xlat0.x;
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * vs_COLOR0.xyz;
					    u_xlat0.x = u_xlatb0 ? 1.0 : float(0.0);
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    u_xlat0.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0.x = (-u_xlat0.x) + 1.0;
					    u_xlat0.x = u_xlat0.x * _ProjectionParams.z;
					    u_xlat0.x = max(u_xlat0.x, 0.0);
					    u_xlat0.x = u_xlat0.x * unity_FogParams.y;
					    u_xlat0.x = exp2((-u_xlat0.x));
					    u_xlat0.x = min(u_xlat0.x, 1.0);
					    SV_Target0.xyz = u_xlat2.xyz * u_xlat0.xxx;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb0 = u_xlat1.w>=u_xlat0.x;
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * vs_COLOR0.xyz;
					    u_xlat0.x = u_xlatb0 ? 1.0 : float(0.0);
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    u_xlat0.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0.x = (-u_xlat0.x) + 1.0;
					    u_xlat0.x = u_xlat0.x * _ProjectionParams.z;
					    u_xlat0.x = max(u_xlat0.x, 0.0);
					    u_xlat0.x = u_xlat0.x * unity_FogParams.x;
					    u_xlat0.x = u_xlat0.x * (-u_xlat0.x);
					    u_xlat0.x = exp2(u_xlat0.x);
					    SV_Target0.xyz = u_xlat2.xyz * u_xlat0.xxx;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb0 = u_xlat1.w>=u_xlat0.x;
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * vs_COLOR0.xyz;
					    u_xlat0.x = u_xlatb0 ? 1.0 : float(0.0);
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    u_xlat0.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0.x = (-u_xlat0.x) + 1.0;
					    u_xlat0.x = u_xlat0.x * _ProjectionParams.z;
					    u_xlat0.x = max(u_xlat0.x, 0.0);
					    u_xlat0.x = u_xlat0.x * unity_FogParams.x;
					    u_xlat0.x = u_xlat0.x * (-u_xlat0.x);
					    u_xlat0.x = exp2(u_xlat0.x);
					    SV_Target0.xyz = u_xlat2.xyz * u_xlat0.xxx;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb0 = u_xlat1.w>=u_xlat0.x;
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * vs_COLOR0.xyz;
					    u_xlat0.x = u_xlatb0 ? 1.0 : float(0.0);
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    u_xlat0.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0.x = (-u_xlat0.x) + 1.0;
					    u_xlat0.x = u_xlat0.x * _ProjectionParams.z;
					    u_xlat0.x = max(u_xlat0.x, 0.0);
					    u_xlat0.x = u_xlat0.x * unity_FogParams.x;
					    u_xlat0.x = u_xlat0.x * (-u_xlat0.x);
					    u_xlat0.x = exp2(u_xlat0.x);
					    SV_Target0.xyz = u_xlat2.xyz * u_xlat0.xxx;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb0 = u_xlat1.w>=u_xlat0.x;
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * vs_COLOR0.xyz;
					    u_xlat0.x = u_xlatb0 ? 1.0 : float(0.0);
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    u_xlat0.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0.x = (-u_xlat0.x) + 1.0;
					    u_xlat0.x = u_xlat0.x * _ProjectionParams.z;
					    u_xlat0.x = max(u_xlat0.x, 0.0);
					    u_xlat0.x = u_xlat0.x * unity_FogParams.x;
					    u_xlat0.x = u_xlat0.x * (-u_xlat0.x);
					    u_xlat0.x = exp2(u_xlat0.x);
					    SV_Target0.xyz = u_xlat2.xyz * u_xlat0.xxx;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendAdd" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat0 = u_xlat0 * vs_COLOR0;
					    SV_Target0.w = u_xlat0.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat0 = u_xlat0 * vs_COLOR0;
					    SV_Target0.w = u_xlat0.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat0 = u_xlat0 * vs_COLOR0;
					    SV_Target0.w = u_xlat0.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat0 = u_xlat0 * vs_COLOR0;
					    SV_Target0.w = u_xlat0.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat1.xyz;
					    SV_Target0.w = u_xlat1.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat1.xyz;
					    SV_Target0.w = u_xlat1.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat1.xyz;
					    SV_Target0.w = u_xlat1.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat1.xyz;
					    SV_Target0.w = u_xlat1.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat1.xyz;
					    SV_Target0.w = u_xlat1.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat1.xyz;
					    SV_Target0.w = u_xlat1.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat1.xyz;
					    SV_Target0.w = u_xlat1.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat1.xyz;
					    SV_Target0.w = u_xlat1.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat1.xyz;
					    SV_Target0.w = u_xlat1.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat1.xyz;
					    SV_Target0.w = u_xlat1.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat1.xyz;
					    SV_Target0.w = u_xlat1.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat1.xyz;
					    SV_Target0.w = u_xlat1.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendAdd" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat0 = u_xlat0 * vs_COLOR0;
					    SV_Target0.w = u_xlat0.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat0 = u_xlat0 * vs_COLOR0;
					    SV_Target0.w = u_xlat0.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat0 = u_xlat0 * vs_COLOR0;
					    SV_Target0.w = u_xlat0.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat0 = u_xlat0 * vs_COLOR0;
					    SV_Target0.w = u_xlat0.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat1.xyz;
					    SV_Target0.w = u_xlat1.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat1.xyz;
					    SV_Target0.w = u_xlat1.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat1.xyz;
					    SV_Target0.w = u_xlat1.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat1.xyz;
					    SV_Target0.w = u_xlat1.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat1.xyz;
					    SV_Target0.w = u_xlat1.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat1.xyz;
					    SV_Target0.w = u_xlat1.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat1.xyz;
					    SV_Target0.w = u_xlat1.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat1.xyz;
					    SV_Target0.w = u_xlat1.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat1.xyz;
					    SV_Target0.w = u_xlat1.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat1.xyz;
					    SV_Target0.w = u_xlat1.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat1.xyz;
					    SV_Target0.w = u_xlat1.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat1.xyz;
					    SV_Target0.w = u_xlat1.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendAdd" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat0 = u_xlat0.wxyz * vs_COLOR0.wxyz;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.yzw;
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat0 = u_xlat0.wxyz * vs_COLOR0.wxyz;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.yzw;
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat0 = u_xlat0.wxyz * vs_COLOR0.wxyz;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.yzw;
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat0 = u_xlat0.wxyz * vs_COLOR0.wxyz;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.yzw;
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1.wxyz * vs_COLOR0.wxyz;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat1.yzw;
					    u_xlat1.x = u_xlat1.x;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat1.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1.wxyz * vs_COLOR0.wxyz;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat1.yzw;
					    u_xlat1.x = u_xlat1.x;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat1.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1.wxyz * vs_COLOR0.wxyz;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat1.yzw;
					    u_xlat1.x = u_xlat1.x;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat1.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1.wxyz * vs_COLOR0.wxyz;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat1.yzw;
					    u_xlat1.x = u_xlat1.x;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat1.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1.wxyz * vs_COLOR0.wxyz;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat1.yzw;
					    u_xlat1.x = u_xlat1.x;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat1.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1.wxyz * vs_COLOR0.wxyz;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat1.yzw;
					    u_xlat1.x = u_xlat1.x;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat1.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1.wxyz * vs_COLOR0.wxyz;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat1.yzw;
					    u_xlat1.x = u_xlat1.x;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat1.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1.wxyz * vs_COLOR0.wxyz;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat1.yzw;
					    u_xlat1.x = u_xlat1.x;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat1.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1.wxyz * vs_COLOR0.wxyz;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat1.yzw;
					    u_xlat1.x = u_xlat1.x;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat1.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1.wxyz * vs_COLOR0.wxyz;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat1.yzw;
					    u_xlat1.x = u_xlat1.x;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat1.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1.wxyz * vs_COLOR0.wxyz;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat1.yzw;
					    u_xlat1.x = u_xlat1.x;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat1.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1.wxyz * vs_COLOR0.wxyz;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat1.yzw;
					    u_xlat1.x = u_xlat1.x;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat1.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendAdd" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat0 = u_xlat0.wxyz * vs_COLOR0.wxyz;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.yzw;
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat0 = u_xlat0.wxyz * vs_COLOR0.wxyz;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.yzw;
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat0 = u_xlat0.wxyz * vs_COLOR0.wxyz;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.yzw;
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat0 = u_xlat0.wxyz * vs_COLOR0.wxyz;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.yzw;
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1.wxyz * vs_COLOR0.wxyz;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat1.yzw;
					    u_xlat1.x = u_xlat1.x;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat1.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1.wxyz * vs_COLOR0.wxyz;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat1.yzw;
					    u_xlat1.x = u_xlat1.x;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat1.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1.wxyz * vs_COLOR0.wxyz;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat1.yzw;
					    u_xlat1.x = u_xlat1.x;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat1.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1.wxyz * vs_COLOR0.wxyz;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat1.yzw;
					    u_xlat1.x = u_xlat1.x;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat1.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1.wxyz * vs_COLOR0.wxyz;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat1.yzw;
					    u_xlat1.x = u_xlat1.x;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat1.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1.wxyz * vs_COLOR0.wxyz;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat1.yzw;
					    u_xlat1.x = u_xlat1.x;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat1.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1.wxyz * vs_COLOR0.wxyz;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat1.yzw;
					    u_xlat1.x = u_xlat1.x;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat1.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1.wxyz * vs_COLOR0.wxyz;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat1.yzw;
					    u_xlat1.x = u_xlat1.x;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat1.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1.wxyz * vs_COLOR0.wxyz;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat1.yzw;
					    u_xlat1.x = u_xlat1.x;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat1.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1.wxyz * vs_COLOR0.wxyz;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat1.yzw;
					    u_xlat1.x = u_xlat1.x;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat1.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1.wxyz * vs_COLOR0.wxyz;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat1.yzw;
					    u_xlat1.x = u_xlat1.x;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat1.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1.wxyz * vs_COLOR0.wxyz;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat1.yzw;
					    u_xlat1.x = u_xlat1.x;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat1.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendAdd" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					bool u_xlatb1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1.x = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat0.w = u_xlat0.w * u_xlat1.x;
					    u_xlat0 = u_xlat0 * vs_COLOR0;
					    SV_Target0.w = u_xlat0.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					bool u_xlatb1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1.x = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat0.w = u_xlat0.w * u_xlat1.x;
					    u_xlat0 = u_xlat0 * vs_COLOR0;
					    SV_Target0.w = u_xlat0.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					bool u_xlatb1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1.x = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat0.w = u_xlat0.w * u_xlat1.x;
					    u_xlat0 = u_xlat0 * vs_COLOR0;
					    SV_Target0.w = u_xlat0.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					bool u_xlatb1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1.x = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat0.w = u_xlat0.w * u_xlat1.x;
					    u_xlat0 = u_xlat0 * vs_COLOR0;
					    SV_Target0.w = u_xlat0.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					bool u_xlatb1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1.x = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat0.w = u_xlat0.w * u_xlat1.x;
					    u_xlat0 = u_xlat0 * vs_COLOR0;
					    u_xlat1.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat1.x = (-u_xlat1.x) + 1.0;
					    u_xlat1.x = u_xlat1.x * _ProjectionParams.z;
					    u_xlat1.x = max(u_xlat1.x, 0.0);
					    u_xlat1.x = u_xlat1.x * unity_FogParams.z + unity_FogParams.w;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.xyz * u_xlat1.xxx;
					    SV_Target0.w = u_xlat0.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					bool u_xlatb1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1.x = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat0.w = u_xlat0.w * u_xlat1.x;
					    u_xlat0 = u_xlat0 * vs_COLOR0;
					    u_xlat1.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat1.x = (-u_xlat1.x) + 1.0;
					    u_xlat1.x = u_xlat1.x * _ProjectionParams.z;
					    u_xlat1.x = max(u_xlat1.x, 0.0);
					    u_xlat1.x = u_xlat1.x * unity_FogParams.z + unity_FogParams.w;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.xyz * u_xlat1.xxx;
					    SV_Target0.w = u_xlat0.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					bool u_xlatb1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1.x = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat0.w = u_xlat0.w * u_xlat1.x;
					    u_xlat0 = u_xlat0 * vs_COLOR0;
					    u_xlat1.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat1.x = (-u_xlat1.x) + 1.0;
					    u_xlat1.x = u_xlat1.x * _ProjectionParams.z;
					    u_xlat1.x = max(u_xlat1.x, 0.0);
					    u_xlat1.x = u_xlat1.x * unity_FogParams.z + unity_FogParams.w;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.xyz * u_xlat1.xxx;
					    SV_Target0.w = u_xlat0.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					bool u_xlatb1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1.x = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat0.w = u_xlat0.w * u_xlat1.x;
					    u_xlat0 = u_xlat0 * vs_COLOR0;
					    u_xlat1.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat1.x = (-u_xlat1.x) + 1.0;
					    u_xlat1.x = u_xlat1.x * _ProjectionParams.z;
					    u_xlat1.x = max(u_xlat1.x, 0.0);
					    u_xlat1.x = u_xlat1.x * unity_FogParams.z + unity_FogParams.w;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.xyz * u_xlat1.xxx;
					    SV_Target0.w = u_xlat0.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					float u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3 = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat1.xyz;
					    SV_Target0.w = u_xlat1.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					float u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3 = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat1.xyz;
					    SV_Target0.w = u_xlat1.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					float u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3 = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat1.xyz;
					    SV_Target0.w = u_xlat1.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					float u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3 = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat1.xyz;
					    SV_Target0.w = u_xlat1.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					float u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3 = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat1.xyz;
					    SV_Target0.w = u_xlat1.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					float u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3 = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat1.xyz;
					    SV_Target0.w = u_xlat1.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					float u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3 = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat1.xyz;
					    SV_Target0.w = u_xlat1.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					float u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3 = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat1.xyz;
					    SV_Target0.w = u_xlat1.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendAdd" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					bool u_xlatb1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1.x = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat0.w = u_xlat0.w * u_xlat1.x;
					    u_xlat0 = u_xlat0 * vs_COLOR0;
					    SV_Target0.w = u_xlat0.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					bool u_xlatb1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1.x = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat0.w = u_xlat0.w * u_xlat1.x;
					    u_xlat0 = u_xlat0 * vs_COLOR0;
					    SV_Target0.w = u_xlat0.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					bool u_xlatb1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1.x = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat0.w = u_xlat0.w * u_xlat1.x;
					    u_xlat0 = u_xlat0 * vs_COLOR0;
					    SV_Target0.w = u_xlat0.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					bool u_xlatb1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1.x = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat0.w = u_xlat0.w * u_xlat1.x;
					    u_xlat0 = u_xlat0 * vs_COLOR0;
					    SV_Target0.w = u_xlat0.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					bool u_xlatb1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1.x = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat0.w = u_xlat0.w * u_xlat1.x;
					    u_xlat0 = u_xlat0 * vs_COLOR0;
					    u_xlat1.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat1.x = (-u_xlat1.x) + 1.0;
					    u_xlat1.x = u_xlat1.x * _ProjectionParams.z;
					    u_xlat1.x = max(u_xlat1.x, 0.0);
					    u_xlat1.x = u_xlat1.x * unity_FogParams.z + unity_FogParams.w;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.xyz * u_xlat1.xxx;
					    SV_Target0.w = u_xlat0.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					bool u_xlatb1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1.x = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat0.w = u_xlat0.w * u_xlat1.x;
					    u_xlat0 = u_xlat0 * vs_COLOR0;
					    u_xlat1.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat1.x = (-u_xlat1.x) + 1.0;
					    u_xlat1.x = u_xlat1.x * _ProjectionParams.z;
					    u_xlat1.x = max(u_xlat1.x, 0.0);
					    u_xlat1.x = u_xlat1.x * unity_FogParams.z + unity_FogParams.w;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.xyz * u_xlat1.xxx;
					    SV_Target0.w = u_xlat0.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					bool u_xlatb1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1.x = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat0.w = u_xlat0.w * u_xlat1.x;
					    u_xlat0 = u_xlat0 * vs_COLOR0;
					    u_xlat1.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat1.x = (-u_xlat1.x) + 1.0;
					    u_xlat1.x = u_xlat1.x * _ProjectionParams.z;
					    u_xlat1.x = max(u_xlat1.x, 0.0);
					    u_xlat1.x = u_xlat1.x * unity_FogParams.z + unity_FogParams.w;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.xyz * u_xlat1.xxx;
					    SV_Target0.w = u_xlat0.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					bool u_xlatb1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1.x = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat0.w = u_xlat0.w * u_xlat1.x;
					    u_xlat0 = u_xlat0 * vs_COLOR0;
					    u_xlat1.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat1.x = (-u_xlat1.x) + 1.0;
					    u_xlat1.x = u_xlat1.x * _ProjectionParams.z;
					    u_xlat1.x = max(u_xlat1.x, 0.0);
					    u_xlat1.x = u_xlat1.x * unity_FogParams.z + unity_FogParams.w;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.xyz * u_xlat1.xxx;
					    SV_Target0.w = u_xlat0.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					float u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3 = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat1.xyz;
					    SV_Target0.w = u_xlat1.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					float u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3 = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat1.xyz;
					    SV_Target0.w = u_xlat1.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					float u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3 = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat1.xyz;
					    SV_Target0.w = u_xlat1.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					float u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3 = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat1.xyz;
					    SV_Target0.w = u_xlat1.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					float u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3 = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat1.xyz;
					    SV_Target0.w = u_xlat1.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					float u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3 = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat1.xyz;
					    SV_Target0.w = u_xlat1.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					float u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3 = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat1.xyz;
					    SV_Target0.w = u_xlat1.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					float u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3 = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat1.xyz;
					    SV_Target0.w = u_xlat1.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendAdd" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					bool u_xlatb1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1.x = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat0.w = u_xlat0.w * u_xlat1.x;
					    u_xlat0 = u_xlat0.wxyz * vs_COLOR0.wxyz;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.yzw;
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					bool u_xlatb1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1.x = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat0.w = u_xlat0.w * u_xlat1.x;
					    u_xlat0 = u_xlat0.wxyz * vs_COLOR0.wxyz;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.yzw;
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					bool u_xlatb1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1.x = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat0.w = u_xlat0.w * u_xlat1.x;
					    u_xlat0 = u_xlat0.wxyz * vs_COLOR0.wxyz;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.yzw;
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					bool u_xlatb1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1.x = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat0.w = u_xlat0.w * u_xlat1.x;
					    u_xlat0 = u_xlat0.wxyz * vs_COLOR0.wxyz;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.yzw;
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					bool u_xlatb1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1.x = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat0.w = u_xlat0.w * u_xlat1.x;
					    u_xlat0 = u_xlat0.wxyz * vs_COLOR0.wxyz;
					    u_xlat1.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat1.x = (-u_xlat1.x) + 1.0;
					    u_xlat1.x = u_xlat1.x * _ProjectionParams.z;
					    u_xlat1.x = max(u_xlat1.x, 0.0);
					    u_xlat1.x = u_xlat1.x * unity_FogParams.z + unity_FogParams.w;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.yzw * u_xlat1.xxx;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					bool u_xlatb1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1.x = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat0.w = u_xlat0.w * u_xlat1.x;
					    u_xlat0 = u_xlat0.wxyz * vs_COLOR0.wxyz;
					    u_xlat1.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat1.x = (-u_xlat1.x) + 1.0;
					    u_xlat1.x = u_xlat1.x * _ProjectionParams.z;
					    u_xlat1.x = max(u_xlat1.x, 0.0);
					    u_xlat1.x = u_xlat1.x * unity_FogParams.z + unity_FogParams.w;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.yzw * u_xlat1.xxx;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					bool u_xlatb1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1.x = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat0.w = u_xlat0.w * u_xlat1.x;
					    u_xlat0 = u_xlat0.wxyz * vs_COLOR0.wxyz;
					    u_xlat1.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat1.x = (-u_xlat1.x) + 1.0;
					    u_xlat1.x = u_xlat1.x * _ProjectionParams.z;
					    u_xlat1.x = max(u_xlat1.x, 0.0);
					    u_xlat1.x = u_xlat1.x * unity_FogParams.z + unity_FogParams.w;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.yzw * u_xlat1.xxx;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					bool u_xlatb1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1.x = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat0.w = u_xlat0.w * u_xlat1.x;
					    u_xlat0 = u_xlat0.wxyz * vs_COLOR0.wxyz;
					    u_xlat1.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat1.x = (-u_xlat1.x) + 1.0;
					    u_xlat1.x = u_xlat1.x * _ProjectionParams.z;
					    u_xlat1.x = max(u_xlat1.x, 0.0);
					    u_xlat1.x = u_xlat1.x * unity_FogParams.z + unity_FogParams.w;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.yzw * u_xlat1.xxx;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					float u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3 = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3;
					    u_xlat1 = u_xlat1.wxyz * vs_COLOR0.wxyz;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat1.yzw;
					    u_xlat1.x = u_xlat1.x;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat1.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					float u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3 = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3;
					    u_xlat1 = u_xlat1.wxyz * vs_COLOR0.wxyz;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat1.yzw;
					    u_xlat1.x = u_xlat1.x;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat1.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					float u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3 = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3;
					    u_xlat1 = u_xlat1.wxyz * vs_COLOR0.wxyz;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat1.yzw;
					    u_xlat1.x = u_xlat1.x;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat1.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					float u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3 = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3;
					    u_xlat1 = u_xlat1.wxyz * vs_COLOR0.wxyz;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat1.yzw;
					    u_xlat1.x = u_xlat1.x;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat1.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					float u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3 = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3;
					    u_xlat1 = u_xlat1.wxyz * vs_COLOR0.wxyz;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat1.yzw;
					    u_xlat1.x = u_xlat1.x;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat1.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					float u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3 = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3;
					    u_xlat1 = u_xlat1.wxyz * vs_COLOR0.wxyz;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat1.yzw;
					    u_xlat1.x = u_xlat1.x;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat1.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					float u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3 = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3;
					    u_xlat1 = u_xlat1.wxyz * vs_COLOR0.wxyz;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat1.yzw;
					    u_xlat1.x = u_xlat1.x;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat1.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					float u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3 = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3;
					    u_xlat1 = u_xlat1.wxyz * vs_COLOR0.wxyz;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat1.yzw;
					    u_xlat1.x = u_xlat1.x;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat1.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendAdd" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					bool u_xlatb1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1.x = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat0.w = u_xlat0.w * u_xlat1.x;
					    u_xlat0 = u_xlat0.wxyz * vs_COLOR0.wxyz;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.yzw;
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					bool u_xlatb1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1.x = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat0.w = u_xlat0.w * u_xlat1.x;
					    u_xlat0 = u_xlat0.wxyz * vs_COLOR0.wxyz;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.yzw;
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					bool u_xlatb1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1.x = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat0.w = u_xlat0.w * u_xlat1.x;
					    u_xlat0 = u_xlat0.wxyz * vs_COLOR0.wxyz;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.yzw;
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					bool u_xlatb1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1.x = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat0.w = u_xlat0.w * u_xlat1.x;
					    u_xlat0 = u_xlat0.wxyz * vs_COLOR0.wxyz;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.yzw;
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					bool u_xlatb1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1.x = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat0.w = u_xlat0.w * u_xlat1.x;
					    u_xlat0 = u_xlat0.wxyz * vs_COLOR0.wxyz;
					    u_xlat1.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat1.x = (-u_xlat1.x) + 1.0;
					    u_xlat1.x = u_xlat1.x * _ProjectionParams.z;
					    u_xlat1.x = max(u_xlat1.x, 0.0);
					    u_xlat1.x = u_xlat1.x * unity_FogParams.z + unity_FogParams.w;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.yzw * u_xlat1.xxx;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					bool u_xlatb1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1.x = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat0.w = u_xlat0.w * u_xlat1.x;
					    u_xlat0 = u_xlat0.wxyz * vs_COLOR0.wxyz;
					    u_xlat1.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat1.x = (-u_xlat1.x) + 1.0;
					    u_xlat1.x = u_xlat1.x * _ProjectionParams.z;
					    u_xlat1.x = max(u_xlat1.x, 0.0);
					    u_xlat1.x = u_xlat1.x * unity_FogParams.z + unity_FogParams.w;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.yzw * u_xlat1.xxx;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					bool u_xlatb1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1.x = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat0.w = u_xlat0.w * u_xlat1.x;
					    u_xlat0 = u_xlat0.wxyz * vs_COLOR0.wxyz;
					    u_xlat1.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat1.x = (-u_xlat1.x) + 1.0;
					    u_xlat1.x = u_xlat1.x * _ProjectionParams.z;
					    u_xlat1.x = max(u_xlat1.x, 0.0);
					    u_xlat1.x = u_xlat1.x * unity_FogParams.z + unity_FogParams.w;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.yzw * u_xlat1.xxx;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					bool u_xlatb1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1.x = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat0.w = u_xlat0.w * u_xlat1.x;
					    u_xlat0 = u_xlat0.wxyz * vs_COLOR0.wxyz;
					    u_xlat1.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat1.x = (-u_xlat1.x) + 1.0;
					    u_xlat1.x = u_xlat1.x * _ProjectionParams.z;
					    u_xlat1.x = max(u_xlat1.x, 0.0);
					    u_xlat1.x = u_xlat1.x * unity_FogParams.z + unity_FogParams.w;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.yzw * u_xlat1.xxx;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					float u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3 = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3;
					    u_xlat1 = u_xlat1.wxyz * vs_COLOR0.wxyz;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat1.yzw;
					    u_xlat1.x = u_xlat1.x;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat1.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					float u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3 = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3;
					    u_xlat1 = u_xlat1.wxyz * vs_COLOR0.wxyz;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat1.yzw;
					    u_xlat1.x = u_xlat1.x;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat1.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					float u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3 = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3;
					    u_xlat1 = u_xlat1.wxyz * vs_COLOR0.wxyz;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat1.yzw;
					    u_xlat1.x = u_xlat1.x;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat1.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					float u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3 = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3;
					    u_xlat1 = u_xlat1.wxyz * vs_COLOR0.wxyz;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat1.yzw;
					    u_xlat1.x = u_xlat1.x;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat1.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					float u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3 = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3;
					    u_xlat1 = u_xlat1.wxyz * vs_COLOR0.wxyz;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat1.yzw;
					    u_xlat1.x = u_xlat1.x;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat1.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					float u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3 = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3;
					    u_xlat1 = u_xlat1.wxyz * vs_COLOR0.wxyz;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat1.yzw;
					    u_xlat1.x = u_xlat1.x;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat1.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					float u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3 = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3;
					    u_xlat1 = u_xlat1.wxyz * vs_COLOR0.wxyz;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat1.yzw;
					    u_xlat1.x = u_xlat1.x;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat1.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					float u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3 = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3;
					    u_xlat1 = u_xlat1.wxyz * vs_COLOR0.wxyz;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat1.yzw;
					    u_xlat1.x = u_xlat1.x;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat1.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendAdd" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    SV_Target0.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    SV_Target0.w = u_xlatb0 ? 1.0 : float(0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    SV_Target0.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    SV_Target0.w = u_xlatb0 ? 1.0 : float(0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    SV_Target0.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    SV_Target0.w = u_xlatb0 ? 1.0 : float(0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    SV_Target0.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    SV_Target0.w = u_xlatb0 ? 1.0 : float(0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    SV_Target0.xyz = u_xlat3.xyz * vec3(u_xlat0);
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    SV_Target0.w = u_xlatb0 ? 1.0 : float(0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    SV_Target0.xyz = u_xlat3.xyz * vec3(u_xlat0);
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    SV_Target0.w = u_xlatb0 ? 1.0 : float(0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    SV_Target0.xyz = u_xlat3.xyz * vec3(u_xlat0);
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    SV_Target0.w = u_xlatb0 ? 1.0 : float(0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    SV_Target0.xyz = u_xlat3.xyz * vec3(u_xlat0);
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    SV_Target0.w = u_xlatb0 ? 1.0 : float(0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    SV_Target0.xyz = u_xlat3.xyz * vec3(u_xlat0);
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    SV_Target0.w = u_xlatb0 ? 1.0 : float(0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    SV_Target0.xyz = u_xlat3.xyz * vec3(u_xlat0);
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    SV_Target0.w = u_xlatb0 ? 1.0 : float(0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    SV_Target0.xyz = u_xlat3.xyz * vec3(u_xlat0);
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    SV_Target0.w = u_xlatb0 ? 1.0 : float(0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    SV_Target0.xyz = u_xlat3.xyz * vec3(u_xlat0);
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    SV_Target0.w = u_xlatb0 ? 1.0 : float(0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    SV_Target0.xyz = u_xlat3.xyz * vec3(u_xlat0);
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    SV_Target0.w = u_xlatb0 ? 1.0 : float(0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    SV_Target0.xyz = u_xlat3.xyz * vec3(u_xlat0);
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    SV_Target0.w = u_xlatb0 ? 1.0 : float(0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    SV_Target0.xyz = u_xlat3.xyz * vec3(u_xlat0);
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    SV_Target0.w = u_xlatb0 ? 1.0 : float(0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    SV_Target0.xyz = u_xlat3.xyz * vec3(u_xlat0);
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    SV_Target0.w = u_xlatb0 ? 1.0 : float(0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendAdd" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    SV_Target0.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    SV_Target0.w = u_xlatb0 ? 1.0 : float(0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    SV_Target0.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    SV_Target0.w = u_xlatb0 ? 1.0 : float(0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    SV_Target0.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    SV_Target0.w = u_xlatb0 ? 1.0 : float(0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    SV_Target0.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    SV_Target0.w = u_xlatb0 ? 1.0 : float(0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    SV_Target0.xyz = u_xlat3.xyz * vec3(u_xlat0);
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    SV_Target0.w = u_xlatb0 ? 1.0 : float(0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    SV_Target0.xyz = u_xlat3.xyz * vec3(u_xlat0);
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    SV_Target0.w = u_xlatb0 ? 1.0 : float(0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    SV_Target0.xyz = u_xlat3.xyz * vec3(u_xlat0);
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    SV_Target0.w = u_xlatb0 ? 1.0 : float(0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    SV_Target0.xyz = u_xlat3.xyz * vec3(u_xlat0);
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    SV_Target0.w = u_xlatb0 ? 1.0 : float(0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    SV_Target0.xyz = u_xlat3.xyz * vec3(u_xlat0);
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    SV_Target0.w = u_xlatb0 ? 1.0 : float(0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    SV_Target0.xyz = u_xlat3.xyz * vec3(u_xlat0);
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    SV_Target0.w = u_xlatb0 ? 1.0 : float(0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    SV_Target0.xyz = u_xlat3.xyz * vec3(u_xlat0);
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    SV_Target0.w = u_xlatb0 ? 1.0 : float(0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    SV_Target0.xyz = u_xlat3.xyz * vec3(u_xlat0);
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    SV_Target0.w = u_xlatb0 ? 1.0 : float(0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    SV_Target0.xyz = u_xlat3.xyz * vec3(u_xlat0);
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    SV_Target0.w = u_xlatb0 ? 1.0 : float(0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    SV_Target0.xyz = u_xlat3.xyz * vec3(u_xlat0);
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    SV_Target0.w = u_xlatb0 ? 1.0 : float(0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    SV_Target0.xyz = u_xlat3.xyz * vec3(u_xlat0);
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    SV_Target0.w = u_xlatb0 ? 1.0 : float(0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    SV_Target0.xyz = u_xlat3.xyz * vec3(u_xlat0);
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    SV_Target0.w = u_xlatb0 ? 1.0 : float(0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendAdd" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    SV_Target0.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat0 = u_xlatb0 ? 1.0 : float(0.0);
					    SV_Target0.w = u_xlat0 * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    SV_Target0.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat0 = u_xlatb0 ? 1.0 : float(0.0);
					    SV_Target0.w = u_xlat0 * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    SV_Target0.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat0 = u_xlatb0 ? 1.0 : float(0.0);
					    SV_Target0.w = u_xlat0 * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    SV_Target0.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat0 = u_xlatb0 ? 1.0 : float(0.0);
					    SV_Target0.w = u_xlat0 * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    SV_Target0.xyz = u_xlat3.xyz * vec3(u_xlat0);
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    u_xlat0 = u_xlatb0 ? 1.0 : float(0.0);
					    SV_Target0.w = u_xlat0 * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    SV_Target0.xyz = u_xlat3.xyz * vec3(u_xlat0);
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    u_xlat0 = u_xlatb0 ? 1.0 : float(0.0);
					    SV_Target0.w = u_xlat0 * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    SV_Target0.xyz = u_xlat3.xyz * vec3(u_xlat0);
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    u_xlat0 = u_xlatb0 ? 1.0 : float(0.0);
					    SV_Target0.w = u_xlat0 * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    SV_Target0.xyz = u_xlat3.xyz * vec3(u_xlat0);
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    u_xlat0 = u_xlatb0 ? 1.0 : float(0.0);
					    SV_Target0.w = u_xlat0 * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    SV_Target0.xyz = u_xlat3.xyz * vec3(u_xlat0);
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    u_xlat0 = u_xlatb0 ? 1.0 : float(0.0);
					    SV_Target0.w = u_xlat0 * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    SV_Target0.xyz = u_xlat3.xyz * vec3(u_xlat0);
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    u_xlat0 = u_xlatb0 ? 1.0 : float(0.0);
					    SV_Target0.w = u_xlat0 * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    SV_Target0.xyz = u_xlat3.xyz * vec3(u_xlat0);
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    u_xlat0 = u_xlatb0 ? 1.0 : float(0.0);
					    SV_Target0.w = u_xlat0 * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    SV_Target0.xyz = u_xlat3.xyz * vec3(u_xlat0);
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    u_xlat0 = u_xlatb0 ? 1.0 : float(0.0);
					    SV_Target0.w = u_xlat0 * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    SV_Target0.xyz = u_xlat3.xyz * vec3(u_xlat0);
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    u_xlat0 = u_xlatb0 ? 1.0 : float(0.0);
					    SV_Target0.w = u_xlat0 * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    SV_Target0.xyz = u_xlat3.xyz * vec3(u_xlat0);
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    u_xlat0 = u_xlatb0 ? 1.0 : float(0.0);
					    SV_Target0.w = u_xlat0 * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    SV_Target0.xyz = u_xlat3.xyz * vec3(u_xlat0);
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    u_xlat0 = u_xlatb0 ? 1.0 : float(0.0);
					    SV_Target0.w = u_xlat0 * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    SV_Target0.xyz = u_xlat3.xyz * vec3(u_xlat0);
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    u_xlat0 = u_xlatb0 ? 1.0 : float(0.0);
					    SV_Target0.w = u_xlat0 * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendAdd" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    SV_Target0.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat0 = u_xlatb0 ? 1.0 : float(0.0);
					    SV_Target0.w = u_xlat0 * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    SV_Target0.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat0 = u_xlatb0 ? 1.0 : float(0.0);
					    SV_Target0.w = u_xlat0 * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    SV_Target0.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat0 = u_xlatb0 ? 1.0 : float(0.0);
					    SV_Target0.w = u_xlat0 * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    SV_Target0.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat0 = u_xlatb0 ? 1.0 : float(0.0);
					    SV_Target0.w = u_xlat0 * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    SV_Target0.xyz = u_xlat3.xyz * vec3(u_xlat0);
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    u_xlat0 = u_xlatb0 ? 1.0 : float(0.0);
					    SV_Target0.w = u_xlat0 * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    SV_Target0.xyz = u_xlat3.xyz * vec3(u_xlat0);
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    u_xlat0 = u_xlatb0 ? 1.0 : float(0.0);
					    SV_Target0.w = u_xlat0 * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    SV_Target0.xyz = u_xlat3.xyz * vec3(u_xlat0);
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    u_xlat0 = u_xlatb0 ? 1.0 : float(0.0);
					    SV_Target0.w = u_xlat0 * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    SV_Target0.xyz = u_xlat3.xyz * vec3(u_xlat0);
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    u_xlat0 = u_xlatb0 ? 1.0 : float(0.0);
					    SV_Target0.w = u_xlat0 * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    SV_Target0.xyz = u_xlat3.xyz * vec3(u_xlat0);
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    u_xlat0 = u_xlatb0 ? 1.0 : float(0.0);
					    SV_Target0.w = u_xlat0 * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    SV_Target0.xyz = u_xlat3.xyz * vec3(u_xlat0);
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    u_xlat0 = u_xlatb0 ? 1.0 : float(0.0);
					    SV_Target0.w = u_xlat0 * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    SV_Target0.xyz = u_xlat3.xyz * vec3(u_xlat0);
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    u_xlat0 = u_xlatb0 ? 1.0 : float(0.0);
					    SV_Target0.w = u_xlat0 * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    SV_Target0.xyz = u_xlat3.xyz * vec3(u_xlat0);
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    u_xlat0 = u_xlatb0 ? 1.0 : float(0.0);
					    SV_Target0.w = u_xlat0 * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    SV_Target0.xyz = u_xlat3.xyz * vec3(u_xlat0);
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    u_xlat0 = u_xlatb0 ? 1.0 : float(0.0);
					    SV_Target0.w = u_xlat0 * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    SV_Target0.xyz = u_xlat3.xyz * vec3(u_xlat0);
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    u_xlat0 = u_xlatb0 ? 1.0 : float(0.0);
					    SV_Target0.w = u_xlat0 * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    SV_Target0.xyz = u_xlat3.xyz * vec3(u_xlat0);
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    u_xlat0 = u_xlatb0 ? 1.0 : float(0.0);
					    SV_Target0.w = u_xlat0 * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    SV_Target0.xyz = u_xlat3.xyz * vec3(u_xlat0);
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    u_xlat0 = u_xlatb0 ? 1.0 : float(0.0);
					    SV_Target0.w = u_xlat0 * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendAdd" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat0 = u_xlat0 * vs_COLOR0;
					    SV_Target0.w = u_xlat0.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat0 = u_xlat0 * vs_COLOR0;
					    SV_Target0.w = u_xlat0.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[7];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    SV_Target0.w = u_xlat0.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[6];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    SV_Target0.w = u_xlat0.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat1.xyz;
					    SV_Target0.w = u_xlat1.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat1.xyz;
					    SV_Target0.w = u_xlat1.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat1.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat1.x = (-u_xlat1.x) + 1.0;
					    u_xlat1.x = u_xlat1.x * _ProjectionParams.z;
					    u_xlat1.x = max(u_xlat1.x, 0.0);
					    u_xlat1.x = u_xlat1.x * unity_FogParams.z + unity_FogParams.w;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.xyz * u_xlat1.xxx;
					    SV_Target0.w = u_xlat0.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat1.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat1.x = (-u_xlat1.x) + 1.0;
					    u_xlat1.x = u_xlat1.x * _ProjectionParams.z;
					    u_xlat1.x = max(u_xlat1.x, 0.0);
					    u_xlat1.x = u_xlat1.x * unity_FogParams.z + unity_FogParams.w;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.xyz * u_xlat1.xxx;
					    SV_Target0.w = u_xlat0.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat1.xyz;
					    SV_Target0.w = u_xlat1.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat1.xyz;
					    SV_Target0.w = u_xlat1.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat1.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat1.x = (-u_xlat1.x) + 1.0;
					    u_xlat1.x = u_xlat1.x * _ProjectionParams.z;
					    u_xlat1.x = max(u_xlat1.x, 0.0);
					    u_xlat1.x = u_xlat1.x * unity_FogParams.y;
					    u_xlat1.x = exp2((-u_xlat1.x));
					    u_xlat1.x = min(u_xlat1.x, 1.0);
					    SV_Target0.xyz = u_xlat0.xyz * u_xlat1.xxx;
					    SV_Target0.w = u_xlat0.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat1.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat1.x = (-u_xlat1.x) + 1.0;
					    u_xlat1.x = u_xlat1.x * _ProjectionParams.z;
					    u_xlat1.x = max(u_xlat1.x, 0.0);
					    u_xlat1.x = u_xlat1.x * unity_FogParams.y;
					    u_xlat1.x = exp2((-u_xlat1.x));
					    u_xlat1.x = min(u_xlat1.x, 1.0);
					    SV_Target0.xyz = u_xlat0.xyz * u_xlat1.xxx;
					    SV_Target0.w = u_xlat0.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat1.xyz;
					    SV_Target0.w = u_xlat1.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat1.xyz;
					    SV_Target0.w = u_xlat1.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat1.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat1.x = (-u_xlat1.x) + 1.0;
					    u_xlat1.x = u_xlat1.x * _ProjectionParams.z;
					    u_xlat1.x = max(u_xlat1.x, 0.0);
					    u_xlat1.x = u_xlat1.x * unity_FogParams.x;
					    u_xlat1.x = u_xlat1.x * (-u_xlat1.x);
					    u_xlat1.x = exp2(u_xlat1.x);
					    SV_Target0.xyz = u_xlat0.xyz * u_xlat1.xxx;
					    SV_Target0.w = u_xlat0.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat1.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat1.x = (-u_xlat1.x) + 1.0;
					    u_xlat1.x = u_xlat1.x * _ProjectionParams.z;
					    u_xlat1.x = max(u_xlat1.x, 0.0);
					    u_xlat1.x = u_xlat1.x * unity_FogParams.x;
					    u_xlat1.x = u_xlat1.x * (-u_xlat1.x);
					    u_xlat1.x = exp2(u_xlat1.x);
					    SV_Target0.xyz = u_xlat0.xyz * u_xlat1.xxx;
					    SV_Target0.w = u_xlat0.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendAdd" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[7];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    SV_Target0.w = u_xlat0.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[6];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    SV_Target0.w = u_xlat0.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[7];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    SV_Target0.w = u_xlat0.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[6];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    SV_Target0.w = u_xlat0.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat1.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat1.x = (-u_xlat1.x) + 1.0;
					    u_xlat1.x = u_xlat1.x * _ProjectionParams.z;
					    u_xlat1.x = max(u_xlat1.x, 0.0);
					    u_xlat1.x = u_xlat1.x * unity_FogParams.z + unity_FogParams.w;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.xyz * u_xlat1.xxx;
					    SV_Target0.w = u_xlat0.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat1.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat1.x = (-u_xlat1.x) + 1.0;
					    u_xlat1.x = u_xlat1.x * _ProjectionParams.z;
					    u_xlat1.x = max(u_xlat1.x, 0.0);
					    u_xlat1.x = u_xlat1.x * unity_FogParams.z + unity_FogParams.w;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.xyz * u_xlat1.xxx;
					    SV_Target0.w = u_xlat0.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat1.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat1.x = (-u_xlat1.x) + 1.0;
					    u_xlat1.x = u_xlat1.x * _ProjectionParams.z;
					    u_xlat1.x = max(u_xlat1.x, 0.0);
					    u_xlat1.x = u_xlat1.x * unity_FogParams.z + unity_FogParams.w;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.xyz * u_xlat1.xxx;
					    SV_Target0.w = u_xlat0.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat1.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat1.x = (-u_xlat1.x) + 1.0;
					    u_xlat1.x = u_xlat1.x * _ProjectionParams.z;
					    u_xlat1.x = max(u_xlat1.x, 0.0);
					    u_xlat1.x = u_xlat1.x * unity_FogParams.z + unity_FogParams.w;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.xyz * u_xlat1.xxx;
					    SV_Target0.w = u_xlat0.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat1.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat1.x = (-u_xlat1.x) + 1.0;
					    u_xlat1.x = u_xlat1.x * _ProjectionParams.z;
					    u_xlat1.x = max(u_xlat1.x, 0.0);
					    u_xlat1.x = u_xlat1.x * unity_FogParams.y;
					    u_xlat1.x = exp2((-u_xlat1.x));
					    u_xlat1.x = min(u_xlat1.x, 1.0);
					    SV_Target0.xyz = u_xlat0.xyz * u_xlat1.xxx;
					    SV_Target0.w = u_xlat0.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat1.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat1.x = (-u_xlat1.x) + 1.0;
					    u_xlat1.x = u_xlat1.x * _ProjectionParams.z;
					    u_xlat1.x = max(u_xlat1.x, 0.0);
					    u_xlat1.x = u_xlat1.x * unity_FogParams.y;
					    u_xlat1.x = exp2((-u_xlat1.x));
					    u_xlat1.x = min(u_xlat1.x, 1.0);
					    SV_Target0.xyz = u_xlat0.xyz * u_xlat1.xxx;
					    SV_Target0.w = u_xlat0.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat1.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat1.x = (-u_xlat1.x) + 1.0;
					    u_xlat1.x = u_xlat1.x * _ProjectionParams.z;
					    u_xlat1.x = max(u_xlat1.x, 0.0);
					    u_xlat1.x = u_xlat1.x * unity_FogParams.y;
					    u_xlat1.x = exp2((-u_xlat1.x));
					    u_xlat1.x = min(u_xlat1.x, 1.0);
					    SV_Target0.xyz = u_xlat0.xyz * u_xlat1.xxx;
					    SV_Target0.w = u_xlat0.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat1.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat1.x = (-u_xlat1.x) + 1.0;
					    u_xlat1.x = u_xlat1.x * _ProjectionParams.z;
					    u_xlat1.x = max(u_xlat1.x, 0.0);
					    u_xlat1.x = u_xlat1.x * unity_FogParams.y;
					    u_xlat1.x = exp2((-u_xlat1.x));
					    u_xlat1.x = min(u_xlat1.x, 1.0);
					    SV_Target0.xyz = u_xlat0.xyz * u_xlat1.xxx;
					    SV_Target0.w = u_xlat0.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat1.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat1.x = (-u_xlat1.x) + 1.0;
					    u_xlat1.x = u_xlat1.x * _ProjectionParams.z;
					    u_xlat1.x = max(u_xlat1.x, 0.0);
					    u_xlat1.x = u_xlat1.x * unity_FogParams.x;
					    u_xlat1.x = u_xlat1.x * (-u_xlat1.x);
					    u_xlat1.x = exp2(u_xlat1.x);
					    SV_Target0.xyz = u_xlat0.xyz * u_xlat1.xxx;
					    SV_Target0.w = u_xlat0.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat1.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat1.x = (-u_xlat1.x) + 1.0;
					    u_xlat1.x = u_xlat1.x * _ProjectionParams.z;
					    u_xlat1.x = max(u_xlat1.x, 0.0);
					    u_xlat1.x = u_xlat1.x * unity_FogParams.x;
					    u_xlat1.x = u_xlat1.x * (-u_xlat1.x);
					    u_xlat1.x = exp2(u_xlat1.x);
					    SV_Target0.xyz = u_xlat0.xyz * u_xlat1.xxx;
					    SV_Target0.w = u_xlat0.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat1.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat1.x = (-u_xlat1.x) + 1.0;
					    u_xlat1.x = u_xlat1.x * _ProjectionParams.z;
					    u_xlat1.x = max(u_xlat1.x, 0.0);
					    u_xlat1.x = u_xlat1.x * unity_FogParams.x;
					    u_xlat1.x = u_xlat1.x * (-u_xlat1.x);
					    u_xlat1.x = exp2(u_xlat1.x);
					    SV_Target0.xyz = u_xlat0.xyz * u_xlat1.xxx;
					    SV_Target0.w = u_xlat0.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat1.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat1.x = (-u_xlat1.x) + 1.0;
					    u_xlat1.x = u_xlat1.x * _ProjectionParams.z;
					    u_xlat1.x = max(u_xlat1.x, 0.0);
					    u_xlat1.x = u_xlat1.x * unity_FogParams.x;
					    u_xlat1.x = u_xlat1.x * (-u_xlat1.x);
					    u_xlat1.x = exp2(u_xlat1.x);
					    SV_Target0.xyz = u_xlat0.xyz * u_xlat1.xxx;
					    SV_Target0.w = u_xlat0.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendAdd" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat0 = u_xlat0.wxyz * vs_COLOR0.wxyz;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.yzw;
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat0 = u_xlat0.wxyz * vs_COLOR0.wxyz;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.yzw;
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[7];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0.wxyz * u_xlat1.wxyz;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.yzw;
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[6];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0.wxyz * u_xlat1.wxyz;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.yzw;
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1.wxyz * vs_COLOR0.wxyz;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat1.yzw;
					    u_xlat1.x = u_xlat1.x;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat1.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1.wxyz * vs_COLOR0.wxyz;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat1.yzw;
					    u_xlat1.x = u_xlat1.x;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat1.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0.wxyz * u_xlat1.wxyz;
					    u_xlat1.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat1.x = (-u_xlat1.x) + 1.0;
					    u_xlat1.x = u_xlat1.x * _ProjectionParams.z;
					    u_xlat1.x = max(u_xlat1.x, 0.0);
					    u_xlat1.x = u_xlat1.x * unity_FogParams.z + unity_FogParams.w;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.yzw * u_xlat1.xxx;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0.wxyz * u_xlat1.wxyz;
					    u_xlat1.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat1.x = (-u_xlat1.x) + 1.0;
					    u_xlat1.x = u_xlat1.x * _ProjectionParams.z;
					    u_xlat1.x = max(u_xlat1.x, 0.0);
					    u_xlat1.x = u_xlat1.x * unity_FogParams.z + unity_FogParams.w;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.yzw * u_xlat1.xxx;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1.wxyz * vs_COLOR0.wxyz;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat1.yzw;
					    u_xlat1.x = u_xlat1.x;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat1.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1.wxyz * vs_COLOR0.wxyz;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat1.yzw;
					    u_xlat1.x = u_xlat1.x;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat1.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0.wxyz * u_xlat1.wxyz;
					    u_xlat1.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat1.x = (-u_xlat1.x) + 1.0;
					    u_xlat1.x = u_xlat1.x * _ProjectionParams.z;
					    u_xlat1.x = max(u_xlat1.x, 0.0);
					    u_xlat1.x = u_xlat1.x * unity_FogParams.y;
					    u_xlat1.x = exp2((-u_xlat1.x));
					    u_xlat1.x = min(u_xlat1.x, 1.0);
					    SV_Target0.xyz = u_xlat0.yzw * u_xlat1.xxx;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0.wxyz * u_xlat1.wxyz;
					    u_xlat1.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat1.x = (-u_xlat1.x) + 1.0;
					    u_xlat1.x = u_xlat1.x * _ProjectionParams.z;
					    u_xlat1.x = max(u_xlat1.x, 0.0);
					    u_xlat1.x = u_xlat1.x * unity_FogParams.y;
					    u_xlat1.x = exp2((-u_xlat1.x));
					    u_xlat1.x = min(u_xlat1.x, 1.0);
					    SV_Target0.xyz = u_xlat0.yzw * u_xlat1.xxx;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1.wxyz * vs_COLOR0.wxyz;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat1.yzw;
					    u_xlat1.x = u_xlat1.x;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat1.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1.wxyz * vs_COLOR0.wxyz;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat1.yzw;
					    u_xlat1.x = u_xlat1.x;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat1.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0.wxyz * u_xlat1.wxyz;
					    u_xlat1.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat1.x = (-u_xlat1.x) + 1.0;
					    u_xlat1.x = u_xlat1.x * _ProjectionParams.z;
					    u_xlat1.x = max(u_xlat1.x, 0.0);
					    u_xlat1.x = u_xlat1.x * unity_FogParams.x;
					    u_xlat1.x = u_xlat1.x * (-u_xlat1.x);
					    u_xlat1.x = exp2(u_xlat1.x);
					    SV_Target0.xyz = u_xlat0.yzw * u_xlat1.xxx;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0.wxyz * u_xlat1.wxyz;
					    u_xlat1.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat1.x = (-u_xlat1.x) + 1.0;
					    u_xlat1.x = u_xlat1.x * _ProjectionParams.z;
					    u_xlat1.x = max(u_xlat1.x, 0.0);
					    u_xlat1.x = u_xlat1.x * unity_FogParams.x;
					    u_xlat1.x = u_xlat1.x * (-u_xlat1.x);
					    u_xlat1.x = exp2(u_xlat1.x);
					    SV_Target0.xyz = u_xlat0.yzw * u_xlat1.xxx;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendAdd" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[7];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0.wxyz * u_xlat1.wxyz;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.yzw;
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[6];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0.wxyz * u_xlat1.wxyz;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.yzw;
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[7];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0.wxyz * u_xlat1.wxyz;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.yzw;
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[6];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0.wxyz * u_xlat1.wxyz;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.yzw;
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0.wxyz * u_xlat1.wxyz;
					    u_xlat1.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat1.x = (-u_xlat1.x) + 1.0;
					    u_xlat1.x = u_xlat1.x * _ProjectionParams.z;
					    u_xlat1.x = max(u_xlat1.x, 0.0);
					    u_xlat1.x = u_xlat1.x * unity_FogParams.z + unity_FogParams.w;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.yzw * u_xlat1.xxx;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0.wxyz * u_xlat1.wxyz;
					    u_xlat1.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat1.x = (-u_xlat1.x) + 1.0;
					    u_xlat1.x = u_xlat1.x * _ProjectionParams.z;
					    u_xlat1.x = max(u_xlat1.x, 0.0);
					    u_xlat1.x = u_xlat1.x * unity_FogParams.z + unity_FogParams.w;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.yzw * u_xlat1.xxx;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0.wxyz * u_xlat1.wxyz;
					    u_xlat1.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat1.x = (-u_xlat1.x) + 1.0;
					    u_xlat1.x = u_xlat1.x * _ProjectionParams.z;
					    u_xlat1.x = max(u_xlat1.x, 0.0);
					    u_xlat1.x = u_xlat1.x * unity_FogParams.z + unity_FogParams.w;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.yzw * u_xlat1.xxx;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0.wxyz * u_xlat1.wxyz;
					    u_xlat1.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat1.x = (-u_xlat1.x) + 1.0;
					    u_xlat1.x = u_xlat1.x * _ProjectionParams.z;
					    u_xlat1.x = max(u_xlat1.x, 0.0);
					    u_xlat1.x = u_xlat1.x * unity_FogParams.z + unity_FogParams.w;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.yzw * u_xlat1.xxx;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0.wxyz * u_xlat1.wxyz;
					    u_xlat1.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat1.x = (-u_xlat1.x) + 1.0;
					    u_xlat1.x = u_xlat1.x * _ProjectionParams.z;
					    u_xlat1.x = max(u_xlat1.x, 0.0);
					    u_xlat1.x = u_xlat1.x * unity_FogParams.y;
					    u_xlat1.x = exp2((-u_xlat1.x));
					    u_xlat1.x = min(u_xlat1.x, 1.0);
					    SV_Target0.xyz = u_xlat0.yzw * u_xlat1.xxx;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0.wxyz * u_xlat1.wxyz;
					    u_xlat1.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat1.x = (-u_xlat1.x) + 1.0;
					    u_xlat1.x = u_xlat1.x * _ProjectionParams.z;
					    u_xlat1.x = max(u_xlat1.x, 0.0);
					    u_xlat1.x = u_xlat1.x * unity_FogParams.y;
					    u_xlat1.x = exp2((-u_xlat1.x));
					    u_xlat1.x = min(u_xlat1.x, 1.0);
					    SV_Target0.xyz = u_xlat0.yzw * u_xlat1.xxx;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0.wxyz * u_xlat1.wxyz;
					    u_xlat1.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat1.x = (-u_xlat1.x) + 1.0;
					    u_xlat1.x = u_xlat1.x * _ProjectionParams.z;
					    u_xlat1.x = max(u_xlat1.x, 0.0);
					    u_xlat1.x = u_xlat1.x * unity_FogParams.y;
					    u_xlat1.x = exp2((-u_xlat1.x));
					    u_xlat1.x = min(u_xlat1.x, 1.0);
					    SV_Target0.xyz = u_xlat0.yzw * u_xlat1.xxx;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0.wxyz * u_xlat1.wxyz;
					    u_xlat1.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat1.x = (-u_xlat1.x) + 1.0;
					    u_xlat1.x = u_xlat1.x * _ProjectionParams.z;
					    u_xlat1.x = max(u_xlat1.x, 0.0);
					    u_xlat1.x = u_xlat1.x * unity_FogParams.y;
					    u_xlat1.x = exp2((-u_xlat1.x));
					    u_xlat1.x = min(u_xlat1.x, 1.0);
					    SV_Target0.xyz = u_xlat0.yzw * u_xlat1.xxx;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0.wxyz * u_xlat1.wxyz;
					    u_xlat1.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat1.x = (-u_xlat1.x) + 1.0;
					    u_xlat1.x = u_xlat1.x * _ProjectionParams.z;
					    u_xlat1.x = max(u_xlat1.x, 0.0);
					    u_xlat1.x = u_xlat1.x * unity_FogParams.x;
					    u_xlat1.x = u_xlat1.x * (-u_xlat1.x);
					    u_xlat1.x = exp2(u_xlat1.x);
					    SV_Target0.xyz = u_xlat0.yzw * u_xlat1.xxx;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0.wxyz * u_xlat1.wxyz;
					    u_xlat1.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat1.x = (-u_xlat1.x) + 1.0;
					    u_xlat1.x = u_xlat1.x * _ProjectionParams.z;
					    u_xlat1.x = max(u_xlat1.x, 0.0);
					    u_xlat1.x = u_xlat1.x * unity_FogParams.x;
					    u_xlat1.x = u_xlat1.x * (-u_xlat1.x);
					    u_xlat1.x = exp2(u_xlat1.x);
					    SV_Target0.xyz = u_xlat0.yzw * u_xlat1.xxx;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0.wxyz * u_xlat1.wxyz;
					    u_xlat1.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat1.x = (-u_xlat1.x) + 1.0;
					    u_xlat1.x = u_xlat1.x * _ProjectionParams.z;
					    u_xlat1.x = max(u_xlat1.x, 0.0);
					    u_xlat1.x = u_xlat1.x * unity_FogParams.x;
					    u_xlat1.x = u_xlat1.x * (-u_xlat1.x);
					    u_xlat1.x = exp2(u_xlat1.x);
					    SV_Target0.xyz = u_xlat0.yzw * u_xlat1.xxx;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0.wxyz * u_xlat1.wxyz;
					    u_xlat1.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat1.x = (-u_xlat1.x) + 1.0;
					    u_xlat1.x = u_xlat1.x * _ProjectionParams.z;
					    u_xlat1.x = max(u_xlat1.x, 0.0);
					    u_xlat1.x = u_xlat1.x * unity_FogParams.x;
					    u_xlat1.x = u_xlat1.x * (-u_xlat1.x);
					    u_xlat1.x = exp2(u_xlat1.x);
					    SV_Target0.xyz = u_xlat0.yzw * u_xlat1.xxx;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendAdd" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					bool u_xlatb1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1.x = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat0.w = u_xlat0.w * u_xlat1.x;
					    u_xlat0 = u_xlat0 * vs_COLOR0;
					    SV_Target0.w = u_xlat0.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					bool u_xlatb1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1.x = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat0.w = u_xlat0.w * u_xlat1.x;
					    u_xlat0 = u_xlat0 * vs_COLOR0;
					    SV_Target0.w = u_xlat0.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[7];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					bool u_xlatb2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2.x = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2.x;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    SV_Target0.w = u_xlat0.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[6];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					bool u_xlatb2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2.x = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2.x;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    SV_Target0.w = u_xlat0.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					bool u_xlatb1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1.x = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat0.w = u_xlat0.w * u_xlat1.x;
					    u_xlat0 = u_xlat0 * vs_COLOR0;
					    u_xlat1.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat1.x = (-u_xlat1.x) + 1.0;
					    u_xlat1.x = u_xlat1.x * _ProjectionParams.z;
					    u_xlat1.x = max(u_xlat1.x, 0.0);
					    u_xlat1.x = u_xlat1.x * unity_FogParams.z + unity_FogParams.w;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.xyz * u_xlat1.xxx;
					    SV_Target0.w = u_xlat0.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					bool u_xlatb1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1.x = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat0.w = u_xlat0.w * u_xlat1.x;
					    u_xlat0 = u_xlat0 * vs_COLOR0;
					    u_xlat1.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat1.x = (-u_xlat1.x) + 1.0;
					    u_xlat1.x = u_xlat1.x * _ProjectionParams.z;
					    u_xlat1.x = max(u_xlat1.x, 0.0);
					    u_xlat1.x = u_xlat1.x * unity_FogParams.z + unity_FogParams.w;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.xyz * u_xlat1.xxx;
					    SV_Target0.w = u_xlat0.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					bool u_xlatb2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2.x = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2.x;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat1.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat1.x = (-u_xlat1.x) + 1.0;
					    u_xlat1.x = u_xlat1.x * _ProjectionParams.z;
					    u_xlat1.x = max(u_xlat1.x, 0.0);
					    u_xlat1.x = u_xlat1.x * unity_FogParams.z + unity_FogParams.w;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.xyz * u_xlat1.xxx;
					    SV_Target0.w = u_xlat0.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					bool u_xlatb2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2.x = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2.x;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat1.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat1.x = (-u_xlat1.x) + 1.0;
					    u_xlat1.x = u_xlat1.x * _ProjectionParams.z;
					    u_xlat1.x = max(u_xlat1.x, 0.0);
					    u_xlat1.x = u_xlat1.x * unity_FogParams.z + unity_FogParams.w;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.xyz * u_xlat1.xxx;
					    SV_Target0.w = u_xlat0.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					float u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3 = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat1.xyz;
					    SV_Target0.w = u_xlat1.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					float u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3 = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat1.xyz;
					    SV_Target0.w = u_xlat1.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					bool u_xlatb2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2.x = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2.x;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat1.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat1.x = (-u_xlat1.x) + 1.0;
					    u_xlat1.x = u_xlat1.x * _ProjectionParams.z;
					    u_xlat1.x = max(u_xlat1.x, 0.0);
					    u_xlat1.x = u_xlat1.x * unity_FogParams.y;
					    u_xlat1.x = exp2((-u_xlat1.x));
					    u_xlat1.x = min(u_xlat1.x, 1.0);
					    SV_Target0.xyz = u_xlat0.xyz * u_xlat1.xxx;
					    SV_Target0.w = u_xlat0.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					bool u_xlatb2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2.x = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2.x;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat1.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat1.x = (-u_xlat1.x) + 1.0;
					    u_xlat1.x = u_xlat1.x * _ProjectionParams.z;
					    u_xlat1.x = max(u_xlat1.x, 0.0);
					    u_xlat1.x = u_xlat1.x * unity_FogParams.y;
					    u_xlat1.x = exp2((-u_xlat1.x));
					    u_xlat1.x = min(u_xlat1.x, 1.0);
					    SV_Target0.xyz = u_xlat0.xyz * u_xlat1.xxx;
					    SV_Target0.w = u_xlat0.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					float u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3 = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat1.xyz;
					    SV_Target0.w = u_xlat1.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					float u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3 = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat1.xyz;
					    SV_Target0.w = u_xlat1.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					bool u_xlatb2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2.x = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2.x;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat1.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat1.x = (-u_xlat1.x) + 1.0;
					    u_xlat1.x = u_xlat1.x * _ProjectionParams.z;
					    u_xlat1.x = max(u_xlat1.x, 0.0);
					    u_xlat1.x = u_xlat1.x * unity_FogParams.x;
					    u_xlat1.x = u_xlat1.x * (-u_xlat1.x);
					    u_xlat1.x = exp2(u_xlat1.x);
					    SV_Target0.xyz = u_xlat0.xyz * u_xlat1.xxx;
					    SV_Target0.w = u_xlat0.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					bool u_xlatb2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2.x = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2.x;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat1.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat1.x = (-u_xlat1.x) + 1.0;
					    u_xlat1.x = u_xlat1.x * _ProjectionParams.z;
					    u_xlat1.x = max(u_xlat1.x, 0.0);
					    u_xlat1.x = u_xlat1.x * unity_FogParams.x;
					    u_xlat1.x = u_xlat1.x * (-u_xlat1.x);
					    u_xlat1.x = exp2(u_xlat1.x);
					    SV_Target0.xyz = u_xlat0.xyz * u_xlat1.xxx;
					    SV_Target0.w = u_xlat0.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendAdd" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[7];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					bool u_xlatb2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2.x = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2.x;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    SV_Target0.w = u_xlat0.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[6];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					bool u_xlatb2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2.x = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2.x;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    SV_Target0.w = u_xlat0.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[7];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					bool u_xlatb2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2.x = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2.x;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    SV_Target0.w = u_xlat0.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[6];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					bool u_xlatb2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2.x = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2.x;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    SV_Target0.w = u_xlat0.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					bool u_xlatb2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2.x = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2.x;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat1.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat1.x = (-u_xlat1.x) + 1.0;
					    u_xlat1.x = u_xlat1.x * _ProjectionParams.z;
					    u_xlat1.x = max(u_xlat1.x, 0.0);
					    u_xlat1.x = u_xlat1.x * unity_FogParams.z + unity_FogParams.w;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.xyz * u_xlat1.xxx;
					    SV_Target0.w = u_xlat0.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					bool u_xlatb2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2.x = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2.x;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat1.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat1.x = (-u_xlat1.x) + 1.0;
					    u_xlat1.x = u_xlat1.x * _ProjectionParams.z;
					    u_xlat1.x = max(u_xlat1.x, 0.0);
					    u_xlat1.x = u_xlat1.x * unity_FogParams.z + unity_FogParams.w;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.xyz * u_xlat1.xxx;
					    SV_Target0.w = u_xlat0.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					bool u_xlatb2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2.x = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2.x;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat1.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat1.x = (-u_xlat1.x) + 1.0;
					    u_xlat1.x = u_xlat1.x * _ProjectionParams.z;
					    u_xlat1.x = max(u_xlat1.x, 0.0);
					    u_xlat1.x = u_xlat1.x * unity_FogParams.z + unity_FogParams.w;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.xyz * u_xlat1.xxx;
					    SV_Target0.w = u_xlat0.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					bool u_xlatb2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2.x = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2.x;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat1.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat1.x = (-u_xlat1.x) + 1.0;
					    u_xlat1.x = u_xlat1.x * _ProjectionParams.z;
					    u_xlat1.x = max(u_xlat1.x, 0.0);
					    u_xlat1.x = u_xlat1.x * unity_FogParams.z + unity_FogParams.w;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.xyz * u_xlat1.xxx;
					    SV_Target0.w = u_xlat0.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					bool u_xlatb2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2.x = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2.x;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat1.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat1.x = (-u_xlat1.x) + 1.0;
					    u_xlat1.x = u_xlat1.x * _ProjectionParams.z;
					    u_xlat1.x = max(u_xlat1.x, 0.0);
					    u_xlat1.x = u_xlat1.x * unity_FogParams.y;
					    u_xlat1.x = exp2((-u_xlat1.x));
					    u_xlat1.x = min(u_xlat1.x, 1.0);
					    SV_Target0.xyz = u_xlat0.xyz * u_xlat1.xxx;
					    SV_Target0.w = u_xlat0.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					bool u_xlatb2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2.x = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2.x;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat1.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat1.x = (-u_xlat1.x) + 1.0;
					    u_xlat1.x = u_xlat1.x * _ProjectionParams.z;
					    u_xlat1.x = max(u_xlat1.x, 0.0);
					    u_xlat1.x = u_xlat1.x * unity_FogParams.y;
					    u_xlat1.x = exp2((-u_xlat1.x));
					    u_xlat1.x = min(u_xlat1.x, 1.0);
					    SV_Target0.xyz = u_xlat0.xyz * u_xlat1.xxx;
					    SV_Target0.w = u_xlat0.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					bool u_xlatb2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2.x = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2.x;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat1.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat1.x = (-u_xlat1.x) + 1.0;
					    u_xlat1.x = u_xlat1.x * _ProjectionParams.z;
					    u_xlat1.x = max(u_xlat1.x, 0.0);
					    u_xlat1.x = u_xlat1.x * unity_FogParams.y;
					    u_xlat1.x = exp2((-u_xlat1.x));
					    u_xlat1.x = min(u_xlat1.x, 1.0);
					    SV_Target0.xyz = u_xlat0.xyz * u_xlat1.xxx;
					    SV_Target0.w = u_xlat0.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					bool u_xlatb2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2.x = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2.x;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat1.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat1.x = (-u_xlat1.x) + 1.0;
					    u_xlat1.x = u_xlat1.x * _ProjectionParams.z;
					    u_xlat1.x = max(u_xlat1.x, 0.0);
					    u_xlat1.x = u_xlat1.x * unity_FogParams.y;
					    u_xlat1.x = exp2((-u_xlat1.x));
					    u_xlat1.x = min(u_xlat1.x, 1.0);
					    SV_Target0.xyz = u_xlat0.xyz * u_xlat1.xxx;
					    SV_Target0.w = u_xlat0.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					bool u_xlatb2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2.x = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2.x;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat1.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat1.x = (-u_xlat1.x) + 1.0;
					    u_xlat1.x = u_xlat1.x * _ProjectionParams.z;
					    u_xlat1.x = max(u_xlat1.x, 0.0);
					    u_xlat1.x = u_xlat1.x * unity_FogParams.x;
					    u_xlat1.x = u_xlat1.x * (-u_xlat1.x);
					    u_xlat1.x = exp2(u_xlat1.x);
					    SV_Target0.xyz = u_xlat0.xyz * u_xlat1.xxx;
					    SV_Target0.w = u_xlat0.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					bool u_xlatb2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2.x = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2.x;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat1.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat1.x = (-u_xlat1.x) + 1.0;
					    u_xlat1.x = u_xlat1.x * _ProjectionParams.z;
					    u_xlat1.x = max(u_xlat1.x, 0.0);
					    u_xlat1.x = u_xlat1.x * unity_FogParams.x;
					    u_xlat1.x = u_xlat1.x * (-u_xlat1.x);
					    u_xlat1.x = exp2(u_xlat1.x);
					    SV_Target0.xyz = u_xlat0.xyz * u_xlat1.xxx;
					    SV_Target0.w = u_xlat0.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					bool u_xlatb2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2.x = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2.x;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat1.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat1.x = (-u_xlat1.x) + 1.0;
					    u_xlat1.x = u_xlat1.x * _ProjectionParams.z;
					    u_xlat1.x = max(u_xlat1.x, 0.0);
					    u_xlat1.x = u_xlat1.x * unity_FogParams.x;
					    u_xlat1.x = u_xlat1.x * (-u_xlat1.x);
					    u_xlat1.x = exp2(u_xlat1.x);
					    SV_Target0.xyz = u_xlat0.xyz * u_xlat1.xxx;
					    SV_Target0.w = u_xlat0.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					bool u_xlatb2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2.x = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2.x;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat1.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat1.x = (-u_xlat1.x) + 1.0;
					    u_xlat1.x = u_xlat1.x * _ProjectionParams.z;
					    u_xlat1.x = max(u_xlat1.x, 0.0);
					    u_xlat1.x = u_xlat1.x * unity_FogParams.x;
					    u_xlat1.x = u_xlat1.x * (-u_xlat1.x);
					    u_xlat1.x = exp2(u_xlat1.x);
					    SV_Target0.xyz = u_xlat0.xyz * u_xlat1.xxx;
					    SV_Target0.w = u_xlat0.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendAdd" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					bool u_xlatb1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1.x = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat0.w = u_xlat0.w * u_xlat1.x;
					    u_xlat0 = u_xlat0.wxyz * vs_COLOR0.wxyz;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.yzw;
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					bool u_xlatb1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1.x = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat0.w = u_xlat0.w * u_xlat1.x;
					    u_xlat0 = u_xlat0.wxyz * vs_COLOR0.wxyz;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.yzw;
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[7];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					bool u_xlatb2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2.x = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2.x;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0.wxyz * u_xlat1.wxyz;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.yzw;
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[6];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					bool u_xlatb2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2.x = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2.x;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0.wxyz * u_xlat1.wxyz;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.yzw;
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					bool u_xlatb1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1.x = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat0.w = u_xlat0.w * u_xlat1.x;
					    u_xlat0 = u_xlat0.wxyz * vs_COLOR0.wxyz;
					    u_xlat1.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat1.x = (-u_xlat1.x) + 1.0;
					    u_xlat1.x = u_xlat1.x * _ProjectionParams.z;
					    u_xlat1.x = max(u_xlat1.x, 0.0);
					    u_xlat1.x = u_xlat1.x * unity_FogParams.z + unity_FogParams.w;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.yzw * u_xlat1.xxx;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					bool u_xlatb1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1.x = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat0.w = u_xlat0.w * u_xlat1.x;
					    u_xlat0 = u_xlat0.wxyz * vs_COLOR0.wxyz;
					    u_xlat1.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat1.x = (-u_xlat1.x) + 1.0;
					    u_xlat1.x = u_xlat1.x * _ProjectionParams.z;
					    u_xlat1.x = max(u_xlat1.x, 0.0);
					    u_xlat1.x = u_xlat1.x * unity_FogParams.z + unity_FogParams.w;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.yzw * u_xlat1.xxx;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					bool u_xlatb2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2.x = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2.x;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0.wxyz * u_xlat1.wxyz;
					    u_xlat1.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat1.x = (-u_xlat1.x) + 1.0;
					    u_xlat1.x = u_xlat1.x * _ProjectionParams.z;
					    u_xlat1.x = max(u_xlat1.x, 0.0);
					    u_xlat1.x = u_xlat1.x * unity_FogParams.z + unity_FogParams.w;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.yzw * u_xlat1.xxx;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					bool u_xlatb2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2.x = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2.x;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0.wxyz * u_xlat1.wxyz;
					    u_xlat1.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat1.x = (-u_xlat1.x) + 1.0;
					    u_xlat1.x = u_xlat1.x * _ProjectionParams.z;
					    u_xlat1.x = max(u_xlat1.x, 0.0);
					    u_xlat1.x = u_xlat1.x * unity_FogParams.z + unity_FogParams.w;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.yzw * u_xlat1.xxx;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					float u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3 = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3;
					    u_xlat1 = u_xlat1.wxyz * vs_COLOR0.wxyz;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat1.yzw;
					    u_xlat1.x = u_xlat1.x;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat1.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					float u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3 = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3;
					    u_xlat1 = u_xlat1.wxyz * vs_COLOR0.wxyz;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat1.yzw;
					    u_xlat1.x = u_xlat1.x;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat1.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					bool u_xlatb2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2.x = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2.x;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0.wxyz * u_xlat1.wxyz;
					    u_xlat1.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat1.x = (-u_xlat1.x) + 1.0;
					    u_xlat1.x = u_xlat1.x * _ProjectionParams.z;
					    u_xlat1.x = max(u_xlat1.x, 0.0);
					    u_xlat1.x = u_xlat1.x * unity_FogParams.y;
					    u_xlat1.x = exp2((-u_xlat1.x));
					    u_xlat1.x = min(u_xlat1.x, 1.0);
					    SV_Target0.xyz = u_xlat0.yzw * u_xlat1.xxx;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					bool u_xlatb2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2.x = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2.x;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0.wxyz * u_xlat1.wxyz;
					    u_xlat1.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat1.x = (-u_xlat1.x) + 1.0;
					    u_xlat1.x = u_xlat1.x * _ProjectionParams.z;
					    u_xlat1.x = max(u_xlat1.x, 0.0);
					    u_xlat1.x = u_xlat1.x * unity_FogParams.y;
					    u_xlat1.x = exp2((-u_xlat1.x));
					    u_xlat1.x = min(u_xlat1.x, 1.0);
					    SV_Target0.xyz = u_xlat0.yzw * u_xlat1.xxx;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					float u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3 = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3;
					    u_xlat1 = u_xlat1.wxyz * vs_COLOR0.wxyz;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat1.yzw;
					    u_xlat1.x = u_xlat1.x;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat1.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					float u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3 = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3;
					    u_xlat1 = u_xlat1.wxyz * vs_COLOR0.wxyz;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat1.yzw;
					    u_xlat1.x = u_xlat1.x;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat1.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					bool u_xlatb2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2.x = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2.x;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0.wxyz * u_xlat1.wxyz;
					    u_xlat1.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat1.x = (-u_xlat1.x) + 1.0;
					    u_xlat1.x = u_xlat1.x * _ProjectionParams.z;
					    u_xlat1.x = max(u_xlat1.x, 0.0);
					    u_xlat1.x = u_xlat1.x * unity_FogParams.x;
					    u_xlat1.x = u_xlat1.x * (-u_xlat1.x);
					    u_xlat1.x = exp2(u_xlat1.x);
					    SV_Target0.xyz = u_xlat0.yzw * u_xlat1.xxx;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					bool u_xlatb2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2.x = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2.x;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0.wxyz * u_xlat1.wxyz;
					    u_xlat1.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat1.x = (-u_xlat1.x) + 1.0;
					    u_xlat1.x = u_xlat1.x * _ProjectionParams.z;
					    u_xlat1.x = max(u_xlat1.x, 0.0);
					    u_xlat1.x = u_xlat1.x * unity_FogParams.x;
					    u_xlat1.x = u_xlat1.x * (-u_xlat1.x);
					    u_xlat1.x = exp2(u_xlat1.x);
					    SV_Target0.xyz = u_xlat0.yzw * u_xlat1.xxx;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendAdd" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[7];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					bool u_xlatb2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2.x = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2.x;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0.wxyz * u_xlat1.wxyz;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.yzw;
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[6];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					bool u_xlatb2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2.x = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2.x;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0.wxyz * u_xlat1.wxyz;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.yzw;
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[7];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					bool u_xlatb2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2.x = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2.x;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0.wxyz * u_xlat1.wxyz;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.yzw;
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[6];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					bool u_xlatb2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2.x = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2.x;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0.wxyz * u_xlat1.wxyz;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.yzw;
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					bool u_xlatb2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2.x = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2.x;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0.wxyz * u_xlat1.wxyz;
					    u_xlat1.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat1.x = (-u_xlat1.x) + 1.0;
					    u_xlat1.x = u_xlat1.x * _ProjectionParams.z;
					    u_xlat1.x = max(u_xlat1.x, 0.0);
					    u_xlat1.x = u_xlat1.x * unity_FogParams.z + unity_FogParams.w;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.yzw * u_xlat1.xxx;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					bool u_xlatb2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2.x = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2.x;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0.wxyz * u_xlat1.wxyz;
					    u_xlat1.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat1.x = (-u_xlat1.x) + 1.0;
					    u_xlat1.x = u_xlat1.x * _ProjectionParams.z;
					    u_xlat1.x = max(u_xlat1.x, 0.0);
					    u_xlat1.x = u_xlat1.x * unity_FogParams.z + unity_FogParams.w;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.yzw * u_xlat1.xxx;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					bool u_xlatb2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2.x = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2.x;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0.wxyz * u_xlat1.wxyz;
					    u_xlat1.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat1.x = (-u_xlat1.x) + 1.0;
					    u_xlat1.x = u_xlat1.x * _ProjectionParams.z;
					    u_xlat1.x = max(u_xlat1.x, 0.0);
					    u_xlat1.x = u_xlat1.x * unity_FogParams.z + unity_FogParams.w;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.yzw * u_xlat1.xxx;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					bool u_xlatb2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2.x = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2.x;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0.wxyz * u_xlat1.wxyz;
					    u_xlat1.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat1.x = (-u_xlat1.x) + 1.0;
					    u_xlat1.x = u_xlat1.x * _ProjectionParams.z;
					    u_xlat1.x = max(u_xlat1.x, 0.0);
					    u_xlat1.x = u_xlat1.x * unity_FogParams.z + unity_FogParams.w;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.yzw * u_xlat1.xxx;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					bool u_xlatb2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2.x = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2.x;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0.wxyz * u_xlat1.wxyz;
					    u_xlat1.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat1.x = (-u_xlat1.x) + 1.0;
					    u_xlat1.x = u_xlat1.x * _ProjectionParams.z;
					    u_xlat1.x = max(u_xlat1.x, 0.0);
					    u_xlat1.x = u_xlat1.x * unity_FogParams.y;
					    u_xlat1.x = exp2((-u_xlat1.x));
					    u_xlat1.x = min(u_xlat1.x, 1.0);
					    SV_Target0.xyz = u_xlat0.yzw * u_xlat1.xxx;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					bool u_xlatb2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2.x = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2.x;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0.wxyz * u_xlat1.wxyz;
					    u_xlat1.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat1.x = (-u_xlat1.x) + 1.0;
					    u_xlat1.x = u_xlat1.x * _ProjectionParams.z;
					    u_xlat1.x = max(u_xlat1.x, 0.0);
					    u_xlat1.x = u_xlat1.x * unity_FogParams.y;
					    u_xlat1.x = exp2((-u_xlat1.x));
					    u_xlat1.x = min(u_xlat1.x, 1.0);
					    SV_Target0.xyz = u_xlat0.yzw * u_xlat1.xxx;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					bool u_xlatb2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2.x = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2.x;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0.wxyz * u_xlat1.wxyz;
					    u_xlat1.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat1.x = (-u_xlat1.x) + 1.0;
					    u_xlat1.x = u_xlat1.x * _ProjectionParams.z;
					    u_xlat1.x = max(u_xlat1.x, 0.0);
					    u_xlat1.x = u_xlat1.x * unity_FogParams.y;
					    u_xlat1.x = exp2((-u_xlat1.x));
					    u_xlat1.x = min(u_xlat1.x, 1.0);
					    SV_Target0.xyz = u_xlat0.yzw * u_xlat1.xxx;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					bool u_xlatb2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2.x = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2.x;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0.wxyz * u_xlat1.wxyz;
					    u_xlat1.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat1.x = (-u_xlat1.x) + 1.0;
					    u_xlat1.x = u_xlat1.x * _ProjectionParams.z;
					    u_xlat1.x = max(u_xlat1.x, 0.0);
					    u_xlat1.x = u_xlat1.x * unity_FogParams.y;
					    u_xlat1.x = exp2((-u_xlat1.x));
					    u_xlat1.x = min(u_xlat1.x, 1.0);
					    SV_Target0.xyz = u_xlat0.yzw * u_xlat1.xxx;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					bool u_xlatb2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2.x = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2.x;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0.wxyz * u_xlat1.wxyz;
					    u_xlat1.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat1.x = (-u_xlat1.x) + 1.0;
					    u_xlat1.x = u_xlat1.x * _ProjectionParams.z;
					    u_xlat1.x = max(u_xlat1.x, 0.0);
					    u_xlat1.x = u_xlat1.x * unity_FogParams.x;
					    u_xlat1.x = u_xlat1.x * (-u_xlat1.x);
					    u_xlat1.x = exp2(u_xlat1.x);
					    SV_Target0.xyz = u_xlat0.yzw * u_xlat1.xxx;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					bool u_xlatb2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2.x = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2.x;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0.wxyz * u_xlat1.wxyz;
					    u_xlat1.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat1.x = (-u_xlat1.x) + 1.0;
					    u_xlat1.x = u_xlat1.x * _ProjectionParams.z;
					    u_xlat1.x = max(u_xlat1.x, 0.0);
					    u_xlat1.x = u_xlat1.x * unity_FogParams.x;
					    u_xlat1.x = u_xlat1.x * (-u_xlat1.x);
					    u_xlat1.x = exp2(u_xlat1.x);
					    SV_Target0.xyz = u_xlat0.yzw * u_xlat1.xxx;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					bool u_xlatb2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2.x = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2.x;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0.wxyz * u_xlat1.wxyz;
					    u_xlat1.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat1.x = (-u_xlat1.x) + 1.0;
					    u_xlat1.x = u_xlat1.x * _ProjectionParams.z;
					    u_xlat1.x = max(u_xlat1.x, 0.0);
					    u_xlat1.x = u_xlat1.x * unity_FogParams.x;
					    u_xlat1.x = u_xlat1.x * (-u_xlat1.x);
					    u_xlat1.x = exp2(u_xlat1.x);
					    SV_Target0.xyz = u_xlat0.yzw * u_xlat1.xxx;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					bool u_xlatb2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2.x = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2.x;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0.wxyz * u_xlat1.wxyz;
					    u_xlat1.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat1.x = (-u_xlat1.x) + 1.0;
					    u_xlat1.x = u_xlat1.x * _ProjectionParams.z;
					    u_xlat1.x = max(u_xlat1.x, 0.0);
					    u_xlat1.x = u_xlat1.x * unity_FogParams.x;
					    u_xlat1.x = u_xlat1.x * (-u_xlat1.x);
					    u_xlat1.x = exp2(u_xlat1.x);
					    SV_Target0.xyz = u_xlat0.yzw * u_xlat1.xxx;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendAdd" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    SV_Target0.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    SV_Target0.w = u_xlatb0 ? 1.0 : float(0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    SV_Target0.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    SV_Target0.w = u_xlatb0 ? 1.0 : float(0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[7];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb0 = u_xlat1.w>=u_xlat0.x;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    SV_Target0.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    SV_Target0.w = u_xlatb0 ? 1.0 : float(0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[6];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb0 = u_xlat1.w>=u_xlat0.x;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    SV_Target0.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    SV_Target0.w = u_xlatb0 ? 1.0 : float(0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    SV_Target0.xyz = u_xlat3.xyz * vec3(u_xlat0);
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    SV_Target0.w = u_xlatb0 ? 1.0 : float(0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    SV_Target0.xyz = u_xlat3.xyz * vec3(u_xlat0);
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    SV_Target0.w = u_xlatb0 ? 1.0 : float(0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb0 = u_xlat1.w>=u_xlat0.x;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    SV_Target0.w = u_xlatb0 ? 1.0 : float(0.0);
					    u_xlat0.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0.x = (-u_xlat0.x) + 1.0;
					    u_xlat0.x = u_xlat0.x * _ProjectionParams.z;
					    u_xlat0.x = max(u_xlat0.x, 0.0);
					    u_xlat0.x = u_xlat0.x * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat3.xyz * u_xlat0.xxx;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb0 = u_xlat1.w>=u_xlat0.x;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    SV_Target0.w = u_xlatb0 ? 1.0 : float(0.0);
					    u_xlat0.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0.x = (-u_xlat0.x) + 1.0;
					    u_xlat0.x = u_xlat0.x * _ProjectionParams.z;
					    u_xlat0.x = max(u_xlat0.x, 0.0);
					    u_xlat0.x = u_xlat0.x * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat3.xyz * u_xlat0.xxx;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    SV_Target0.xyz = u_xlat3.xyz * vec3(u_xlat0);
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    SV_Target0.w = u_xlatb0 ? 1.0 : float(0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    SV_Target0.xyz = u_xlat3.xyz * vec3(u_xlat0);
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    SV_Target0.w = u_xlatb0 ? 1.0 : float(0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0.x = (-u_xlat0.x) + 1.0;
					    u_xlat0.x = u_xlat0.x * _ProjectionParams.z;
					    u_xlat0.x = max(u_xlat0.x, 0.0);
					    u_xlat0.x = u_xlat0.x * unity_FogParams.y;
					    u_xlat0.x = exp2((-u_xlat0.x));
					    u_xlat0.x = min(u_xlat0.x, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    SV_Target0.xyz = u_xlat3.xyz * u_xlat0.xxx;
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0.x;
					    SV_Target0.w = u_xlatb0 ? 1.0 : float(0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0.x = (-u_xlat0.x) + 1.0;
					    u_xlat0.x = u_xlat0.x * _ProjectionParams.z;
					    u_xlat0.x = max(u_xlat0.x, 0.0);
					    u_xlat0.x = u_xlat0.x * unity_FogParams.y;
					    u_xlat0.x = exp2((-u_xlat0.x));
					    u_xlat0.x = min(u_xlat0.x, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    SV_Target0.xyz = u_xlat3.xyz * u_xlat0.xxx;
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0.x;
					    SV_Target0.w = u_xlatb0 ? 1.0 : float(0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    SV_Target0.xyz = u_xlat3.xyz * vec3(u_xlat0);
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    SV_Target0.w = u_xlatb0 ? 1.0 : float(0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    SV_Target0.xyz = u_xlat3.xyz * vec3(u_xlat0);
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    SV_Target0.w = u_xlatb0 ? 1.0 : float(0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0.x = (-u_xlat0.x) + 1.0;
					    u_xlat0.x = u_xlat0.x * _ProjectionParams.z;
					    u_xlat0.x = max(u_xlat0.x, 0.0);
					    u_xlat0.x = u_xlat0.x * unity_FogParams.x;
					    u_xlat0.x = u_xlat0.x * (-u_xlat0.x);
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    SV_Target0.xyz = u_xlat3.xyz * u_xlat0.xxx;
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0.x;
					    SV_Target0.w = u_xlatb0 ? 1.0 : float(0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0.x = (-u_xlat0.x) + 1.0;
					    u_xlat0.x = u_xlat0.x * _ProjectionParams.z;
					    u_xlat0.x = max(u_xlat0.x, 0.0);
					    u_xlat0.x = u_xlat0.x * unity_FogParams.x;
					    u_xlat0.x = u_xlat0.x * (-u_xlat0.x);
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    SV_Target0.xyz = u_xlat3.xyz * u_xlat0.xxx;
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0.x;
					    SV_Target0.w = u_xlatb0 ? 1.0 : float(0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendAdd" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[7];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb0 = u_xlat1.w>=u_xlat0.x;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    SV_Target0.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    SV_Target0.w = u_xlatb0 ? 1.0 : float(0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[6];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb0 = u_xlat1.w>=u_xlat0.x;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    SV_Target0.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    SV_Target0.w = u_xlatb0 ? 1.0 : float(0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[7];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb0 = u_xlat1.w>=u_xlat0.x;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    SV_Target0.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    SV_Target0.w = u_xlatb0 ? 1.0 : float(0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[6];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb0 = u_xlat1.w>=u_xlat0.x;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    SV_Target0.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    SV_Target0.w = u_xlatb0 ? 1.0 : float(0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb0 = u_xlat1.w>=u_xlat0.x;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    SV_Target0.w = u_xlatb0 ? 1.0 : float(0.0);
					    u_xlat0.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0.x = (-u_xlat0.x) + 1.0;
					    u_xlat0.x = u_xlat0.x * _ProjectionParams.z;
					    u_xlat0.x = max(u_xlat0.x, 0.0);
					    u_xlat0.x = u_xlat0.x * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat3.xyz * u_xlat0.xxx;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb0 = u_xlat1.w>=u_xlat0.x;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    SV_Target0.w = u_xlatb0 ? 1.0 : float(0.0);
					    u_xlat0.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0.x = (-u_xlat0.x) + 1.0;
					    u_xlat0.x = u_xlat0.x * _ProjectionParams.z;
					    u_xlat0.x = max(u_xlat0.x, 0.0);
					    u_xlat0.x = u_xlat0.x * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat3.xyz * u_xlat0.xxx;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb0 = u_xlat1.w>=u_xlat0.x;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    SV_Target0.w = u_xlatb0 ? 1.0 : float(0.0);
					    u_xlat0.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0.x = (-u_xlat0.x) + 1.0;
					    u_xlat0.x = u_xlat0.x * _ProjectionParams.z;
					    u_xlat0.x = max(u_xlat0.x, 0.0);
					    u_xlat0.x = u_xlat0.x * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat3.xyz * u_xlat0.xxx;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb0 = u_xlat1.w>=u_xlat0.x;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    SV_Target0.w = u_xlatb0 ? 1.0 : float(0.0);
					    u_xlat0.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0.x = (-u_xlat0.x) + 1.0;
					    u_xlat0.x = u_xlat0.x * _ProjectionParams.z;
					    u_xlat0.x = max(u_xlat0.x, 0.0);
					    u_xlat0.x = u_xlat0.x * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat3.xyz * u_xlat0.xxx;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0.x = (-u_xlat0.x) + 1.0;
					    u_xlat0.x = u_xlat0.x * _ProjectionParams.z;
					    u_xlat0.x = max(u_xlat0.x, 0.0);
					    u_xlat0.x = u_xlat0.x * unity_FogParams.y;
					    u_xlat0.x = exp2((-u_xlat0.x));
					    u_xlat0.x = min(u_xlat0.x, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    SV_Target0.xyz = u_xlat3.xyz * u_xlat0.xxx;
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0.x;
					    SV_Target0.w = u_xlatb0 ? 1.0 : float(0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0.x = (-u_xlat0.x) + 1.0;
					    u_xlat0.x = u_xlat0.x * _ProjectionParams.z;
					    u_xlat0.x = max(u_xlat0.x, 0.0);
					    u_xlat0.x = u_xlat0.x * unity_FogParams.y;
					    u_xlat0.x = exp2((-u_xlat0.x));
					    u_xlat0.x = min(u_xlat0.x, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    SV_Target0.xyz = u_xlat3.xyz * u_xlat0.xxx;
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0.x;
					    SV_Target0.w = u_xlatb0 ? 1.0 : float(0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0.x = (-u_xlat0.x) + 1.0;
					    u_xlat0.x = u_xlat0.x * _ProjectionParams.z;
					    u_xlat0.x = max(u_xlat0.x, 0.0);
					    u_xlat0.x = u_xlat0.x * unity_FogParams.y;
					    u_xlat0.x = exp2((-u_xlat0.x));
					    u_xlat0.x = min(u_xlat0.x, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    SV_Target0.xyz = u_xlat3.xyz * u_xlat0.xxx;
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0.x;
					    SV_Target0.w = u_xlatb0 ? 1.0 : float(0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0.x = (-u_xlat0.x) + 1.0;
					    u_xlat0.x = u_xlat0.x * _ProjectionParams.z;
					    u_xlat0.x = max(u_xlat0.x, 0.0);
					    u_xlat0.x = u_xlat0.x * unity_FogParams.y;
					    u_xlat0.x = exp2((-u_xlat0.x));
					    u_xlat0.x = min(u_xlat0.x, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    SV_Target0.xyz = u_xlat3.xyz * u_xlat0.xxx;
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0.x;
					    SV_Target0.w = u_xlatb0 ? 1.0 : float(0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0.x = (-u_xlat0.x) + 1.0;
					    u_xlat0.x = u_xlat0.x * _ProjectionParams.z;
					    u_xlat0.x = max(u_xlat0.x, 0.0);
					    u_xlat0.x = u_xlat0.x * unity_FogParams.x;
					    u_xlat0.x = u_xlat0.x * (-u_xlat0.x);
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    SV_Target0.xyz = u_xlat3.xyz * u_xlat0.xxx;
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0.x;
					    SV_Target0.w = u_xlatb0 ? 1.0 : float(0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0.x = (-u_xlat0.x) + 1.0;
					    u_xlat0.x = u_xlat0.x * _ProjectionParams.z;
					    u_xlat0.x = max(u_xlat0.x, 0.0);
					    u_xlat0.x = u_xlat0.x * unity_FogParams.x;
					    u_xlat0.x = u_xlat0.x * (-u_xlat0.x);
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    SV_Target0.xyz = u_xlat3.xyz * u_xlat0.xxx;
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0.x;
					    SV_Target0.w = u_xlatb0 ? 1.0 : float(0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0.x = (-u_xlat0.x) + 1.0;
					    u_xlat0.x = u_xlat0.x * _ProjectionParams.z;
					    u_xlat0.x = max(u_xlat0.x, 0.0);
					    u_xlat0.x = u_xlat0.x * unity_FogParams.x;
					    u_xlat0.x = u_xlat0.x * (-u_xlat0.x);
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    SV_Target0.xyz = u_xlat3.xyz * u_xlat0.xxx;
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0.x;
					    SV_Target0.w = u_xlatb0 ? 1.0 : float(0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0.x = (-u_xlat0.x) + 1.0;
					    u_xlat0.x = u_xlat0.x * _ProjectionParams.z;
					    u_xlat0.x = max(u_xlat0.x, 0.0);
					    u_xlat0.x = u_xlat0.x * unity_FogParams.x;
					    u_xlat0.x = u_xlat0.x * (-u_xlat0.x);
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    SV_Target0.xyz = u_xlat3.xyz * u_xlat0.xxx;
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0.x;
					    SV_Target0.w = u_xlatb0 ? 1.0 : float(0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendAdd" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    SV_Target0.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat0 = u_xlatb0 ? 1.0 : float(0.0);
					    SV_Target0.w = u_xlat0 * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    SV_Target0.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat0 = u_xlatb0 ? 1.0 : float(0.0);
					    SV_Target0.w = u_xlat0 * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[7];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb0 = u_xlat1.w>=u_xlat0.x;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    SV_Target0.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat0.x = u_xlatb0 ? 1.0 : float(0.0);
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[6];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb0 = u_xlat1.w>=u_xlat0.x;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    SV_Target0.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat0.x = u_xlatb0 ? 1.0 : float(0.0);
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    SV_Target0.xyz = u_xlat3.xyz * vec3(u_xlat0);
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    u_xlat0 = u_xlatb0 ? 1.0 : float(0.0);
					    SV_Target0.w = u_xlat0 * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    SV_Target0.xyz = u_xlat3.xyz * vec3(u_xlat0);
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    u_xlat0 = u_xlatb0 ? 1.0 : float(0.0);
					    SV_Target0.w = u_xlat0 * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb0 = u_xlat1.w>=u_xlat0.x;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat0.x = u_xlatb0 ? 1.0 : float(0.0);
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    u_xlat0.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0.x = (-u_xlat0.x) + 1.0;
					    u_xlat0.x = u_xlat0.x * _ProjectionParams.z;
					    u_xlat0.x = max(u_xlat0.x, 0.0);
					    u_xlat0.x = u_xlat0.x * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat3.xyz * u_xlat0.xxx;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb0 = u_xlat1.w>=u_xlat0.x;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat0.x = u_xlatb0 ? 1.0 : float(0.0);
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    u_xlat0.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0.x = (-u_xlat0.x) + 1.0;
					    u_xlat0.x = u_xlat0.x * _ProjectionParams.z;
					    u_xlat0.x = max(u_xlat0.x, 0.0);
					    u_xlat0.x = u_xlat0.x * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat3.xyz * u_xlat0.xxx;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    SV_Target0.xyz = u_xlat3.xyz * vec3(u_xlat0);
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    u_xlat0 = u_xlatb0 ? 1.0 : float(0.0);
					    SV_Target0.w = u_xlat0 * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    SV_Target0.xyz = u_xlat3.xyz * vec3(u_xlat0);
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    u_xlat0 = u_xlatb0 ? 1.0 : float(0.0);
					    SV_Target0.w = u_xlat0 * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb0 = u_xlat1.w>=u_xlat0.x;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat0.x = u_xlatb0 ? 1.0 : float(0.0);
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    u_xlat0.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0.x = (-u_xlat0.x) + 1.0;
					    u_xlat0.x = u_xlat0.x * _ProjectionParams.z;
					    u_xlat0.x = max(u_xlat0.x, 0.0);
					    u_xlat0.x = u_xlat0.x * unity_FogParams.y;
					    u_xlat0.x = exp2((-u_xlat0.x));
					    u_xlat0.x = min(u_xlat0.x, 1.0);
					    SV_Target0.xyz = u_xlat3.xyz * u_xlat0.xxx;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb0 = u_xlat1.w>=u_xlat0.x;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat0.x = u_xlatb0 ? 1.0 : float(0.0);
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    u_xlat0.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0.x = (-u_xlat0.x) + 1.0;
					    u_xlat0.x = u_xlat0.x * _ProjectionParams.z;
					    u_xlat0.x = max(u_xlat0.x, 0.0);
					    u_xlat0.x = u_xlat0.x * unity_FogParams.y;
					    u_xlat0.x = exp2((-u_xlat0.x));
					    u_xlat0.x = min(u_xlat0.x, 1.0);
					    SV_Target0.xyz = u_xlat3.xyz * u_xlat0.xxx;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    SV_Target0.xyz = u_xlat3.xyz * vec3(u_xlat0);
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    u_xlat0 = u_xlatb0 ? 1.0 : float(0.0);
					    SV_Target0.w = u_xlat0 * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    SV_Target0.xyz = u_xlat3.xyz * vec3(u_xlat0);
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    u_xlat0 = u_xlatb0 ? 1.0 : float(0.0);
					    SV_Target0.w = u_xlat0 * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb0 = u_xlat1.w>=u_xlat0.x;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat0.x = u_xlatb0 ? 1.0 : float(0.0);
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    u_xlat0.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0.x = (-u_xlat0.x) + 1.0;
					    u_xlat0.x = u_xlat0.x * _ProjectionParams.z;
					    u_xlat0.x = max(u_xlat0.x, 0.0);
					    u_xlat0.x = u_xlat0.x * unity_FogParams.x;
					    u_xlat0.x = u_xlat0.x * (-u_xlat0.x);
					    u_xlat0.x = exp2(u_xlat0.x);
					    SV_Target0.xyz = u_xlat3.xyz * u_xlat0.xxx;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb0 = u_xlat1.w>=u_xlat0.x;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat0.x = u_xlatb0 ? 1.0 : float(0.0);
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    u_xlat0.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0.x = (-u_xlat0.x) + 1.0;
					    u_xlat0.x = u_xlat0.x * _ProjectionParams.z;
					    u_xlat0.x = max(u_xlat0.x, 0.0);
					    u_xlat0.x = u_xlat0.x * unity_FogParams.x;
					    u_xlat0.x = u_xlat0.x * (-u_xlat0.x);
					    u_xlat0.x = exp2(u_xlat0.x);
					    SV_Target0.xyz = u_xlat3.xyz * u_xlat0.xxx;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendAdd" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[7];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb0 = u_xlat1.w>=u_xlat0.x;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    SV_Target0.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat0.x = u_xlatb0 ? 1.0 : float(0.0);
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[6];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb0 = u_xlat1.w>=u_xlat0.x;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    SV_Target0.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat0.x = u_xlatb0 ? 1.0 : float(0.0);
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[7];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb0 = u_xlat1.w>=u_xlat0.x;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    SV_Target0.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat0.x = u_xlatb0 ? 1.0 : float(0.0);
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[6];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb0 = u_xlat1.w>=u_xlat0.x;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    SV_Target0.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat0.x = u_xlatb0 ? 1.0 : float(0.0);
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb0 = u_xlat1.w>=u_xlat0.x;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat0.x = u_xlatb0 ? 1.0 : float(0.0);
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    u_xlat0.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0.x = (-u_xlat0.x) + 1.0;
					    u_xlat0.x = u_xlat0.x * _ProjectionParams.z;
					    u_xlat0.x = max(u_xlat0.x, 0.0);
					    u_xlat0.x = u_xlat0.x * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat3.xyz * u_xlat0.xxx;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb0 = u_xlat1.w>=u_xlat0.x;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat0.x = u_xlatb0 ? 1.0 : float(0.0);
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    u_xlat0.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0.x = (-u_xlat0.x) + 1.0;
					    u_xlat0.x = u_xlat0.x * _ProjectionParams.z;
					    u_xlat0.x = max(u_xlat0.x, 0.0);
					    u_xlat0.x = u_xlat0.x * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat3.xyz * u_xlat0.xxx;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb0 = u_xlat1.w>=u_xlat0.x;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat0.x = u_xlatb0 ? 1.0 : float(0.0);
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    u_xlat0.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0.x = (-u_xlat0.x) + 1.0;
					    u_xlat0.x = u_xlat0.x * _ProjectionParams.z;
					    u_xlat0.x = max(u_xlat0.x, 0.0);
					    u_xlat0.x = u_xlat0.x * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat3.xyz * u_xlat0.xxx;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb0 = u_xlat1.w>=u_xlat0.x;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat0.x = u_xlatb0 ? 1.0 : float(0.0);
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    u_xlat0.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0.x = (-u_xlat0.x) + 1.0;
					    u_xlat0.x = u_xlat0.x * _ProjectionParams.z;
					    u_xlat0.x = max(u_xlat0.x, 0.0);
					    u_xlat0.x = u_xlat0.x * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat3.xyz * u_xlat0.xxx;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb0 = u_xlat1.w>=u_xlat0.x;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat0.x = u_xlatb0 ? 1.0 : float(0.0);
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    u_xlat0.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0.x = (-u_xlat0.x) + 1.0;
					    u_xlat0.x = u_xlat0.x * _ProjectionParams.z;
					    u_xlat0.x = max(u_xlat0.x, 0.0);
					    u_xlat0.x = u_xlat0.x * unity_FogParams.y;
					    u_xlat0.x = exp2((-u_xlat0.x));
					    u_xlat0.x = min(u_xlat0.x, 1.0);
					    SV_Target0.xyz = u_xlat3.xyz * u_xlat0.xxx;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb0 = u_xlat1.w>=u_xlat0.x;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat0.x = u_xlatb0 ? 1.0 : float(0.0);
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    u_xlat0.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0.x = (-u_xlat0.x) + 1.0;
					    u_xlat0.x = u_xlat0.x * _ProjectionParams.z;
					    u_xlat0.x = max(u_xlat0.x, 0.0);
					    u_xlat0.x = u_xlat0.x * unity_FogParams.y;
					    u_xlat0.x = exp2((-u_xlat0.x));
					    u_xlat0.x = min(u_xlat0.x, 1.0);
					    SV_Target0.xyz = u_xlat3.xyz * u_xlat0.xxx;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb0 = u_xlat1.w>=u_xlat0.x;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat0.x = u_xlatb0 ? 1.0 : float(0.0);
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    u_xlat0.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0.x = (-u_xlat0.x) + 1.0;
					    u_xlat0.x = u_xlat0.x * _ProjectionParams.z;
					    u_xlat0.x = max(u_xlat0.x, 0.0);
					    u_xlat0.x = u_xlat0.x * unity_FogParams.y;
					    u_xlat0.x = exp2((-u_xlat0.x));
					    u_xlat0.x = min(u_xlat0.x, 1.0);
					    SV_Target0.xyz = u_xlat3.xyz * u_xlat0.xxx;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb0 = u_xlat1.w>=u_xlat0.x;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat0.x = u_xlatb0 ? 1.0 : float(0.0);
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    u_xlat0.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0.x = (-u_xlat0.x) + 1.0;
					    u_xlat0.x = u_xlat0.x * _ProjectionParams.z;
					    u_xlat0.x = max(u_xlat0.x, 0.0);
					    u_xlat0.x = u_xlat0.x * unity_FogParams.y;
					    u_xlat0.x = exp2((-u_xlat0.x));
					    u_xlat0.x = min(u_xlat0.x, 1.0);
					    SV_Target0.xyz = u_xlat3.xyz * u_xlat0.xxx;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb0 = u_xlat1.w>=u_xlat0.x;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat0.x = u_xlatb0 ? 1.0 : float(0.0);
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    u_xlat0.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0.x = (-u_xlat0.x) + 1.0;
					    u_xlat0.x = u_xlat0.x * _ProjectionParams.z;
					    u_xlat0.x = max(u_xlat0.x, 0.0);
					    u_xlat0.x = u_xlat0.x * unity_FogParams.x;
					    u_xlat0.x = u_xlat0.x * (-u_xlat0.x);
					    u_xlat0.x = exp2(u_xlat0.x);
					    SV_Target0.xyz = u_xlat3.xyz * u_xlat0.xxx;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb0 = u_xlat1.w>=u_xlat0.x;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat0.x = u_xlatb0 ? 1.0 : float(0.0);
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    u_xlat0.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0.x = (-u_xlat0.x) + 1.0;
					    u_xlat0.x = u_xlat0.x * _ProjectionParams.z;
					    u_xlat0.x = max(u_xlat0.x, 0.0);
					    u_xlat0.x = u_xlat0.x * unity_FogParams.x;
					    u_xlat0.x = u_xlat0.x * (-u_xlat0.x);
					    u_xlat0.x = exp2(u_xlat0.x);
					    SV_Target0.xyz = u_xlat3.xyz * u_xlat0.xxx;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb0 = u_xlat1.w>=u_xlat0.x;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat0.x = u_xlatb0 ? 1.0 : float(0.0);
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    u_xlat0.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0.x = (-u_xlat0.x) + 1.0;
					    u_xlat0.x = u_xlat0.x * _ProjectionParams.z;
					    u_xlat0.x = max(u_xlat0.x, 0.0);
					    u_xlat0.x = u_xlat0.x * unity_FogParams.x;
					    u_xlat0.x = u_xlat0.x * (-u_xlat0.x);
					    u_xlat0.x = exp2(u_xlat0.x);
					    SV_Target0.xyz = u_xlat3.xyz * u_xlat0.xxx;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAdd" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb0 = u_xlat1.w>=u_xlat0.x;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat0.x = u_xlatb0 ? 1.0 : float(0.0);
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    u_xlat0.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0.x = (-u_xlat0.x) + 1.0;
					    u_xlat0.x = u_xlat0.x * _ProjectionParams.z;
					    u_xlat0.x = max(u_xlat0.x, 0.0);
					    u_xlat0.x = u_xlat0.x * unity_FogParams.x;
					    u_xlat0.x = u_xlat0.x * (-u_xlat0.x);
					    u_xlat0.x = exp2(u_xlat0.x);
					    SV_Target0.xyz = u_xlat3.xyz * u_xlat0.xxx;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendAlpha" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat0 = u_xlat0 * vs_COLOR0;
					    SV_Target0.w = u_xlat0.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat0 = u_xlat0 * vs_COLOR0;
					    SV_Target0.w = u_xlat0.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendAlpha" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat0 = u_xlat0 * vs_COLOR0;
					    SV_Target0.w = u_xlat0.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat0 = u_xlat0 * vs_COLOR0;
					    SV_Target0.w = u_xlat0.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendAlpha" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2.xyz = u_xlat1.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    u_xlat1.x = u_xlat1.w * vs_COLOR0.w;
					    SV_Target0.w = u_xlat1.x;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat2.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2.xyz = u_xlat1.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    u_xlat1.x = u_xlat1.w * vs_COLOR0.w;
					    SV_Target0.w = u_xlat1.x;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat2.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2.xyz = u_xlat1.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    u_xlat1.x = u_xlat1.w * vs_COLOR0.w;
					    SV_Target0.w = u_xlat1.x;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat2.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2.xyz = u_xlat1.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    u_xlat1.x = u_xlat1.w * vs_COLOR0.w;
					    SV_Target0.w = u_xlat1.x;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat2.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendAlpha" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2.xyz = u_xlat1.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    u_xlat1.x = u_xlat1.w * vs_COLOR0.w;
					    SV_Target0.w = u_xlat1.x;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat2.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2.xyz = u_xlat1.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    u_xlat1.x = u_xlat1.w * vs_COLOR0.w;
					    SV_Target0.w = u_xlat1.x;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat2.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2.xyz = u_xlat1.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    u_xlat1.x = u_xlat1.w * vs_COLOR0.w;
					    SV_Target0.w = u_xlat1.x;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat2.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2.xyz = u_xlat1.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    u_xlat1.x = u_xlat1.w * vs_COLOR0.w;
					    SV_Target0.w = u_xlat1.x;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat2.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendAlpha" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2.xyz = u_xlat1.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    u_xlat1.x = u_xlat1.w * vs_COLOR0.w;
					    SV_Target0.w = u_xlat1.x;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat2.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2.xyz = u_xlat1.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    u_xlat1.x = u_xlat1.w * vs_COLOR0.w;
					    SV_Target0.w = u_xlat1.x;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat2.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2.xyz = u_xlat1.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    u_xlat1.x = u_xlat1.w * vs_COLOR0.w;
					    SV_Target0.w = u_xlat1.x;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat2.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2.xyz = u_xlat1.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    u_xlat1.x = u_xlat1.w * vs_COLOR0.w;
					    SV_Target0.w = u_xlat1.x;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat2.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendAlpha" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat0 = u_xlat0 * vs_COLOR0;
					    SV_Target0.w = u_xlat0.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat0 = u_xlat0 * vs_COLOR0;
					    SV_Target0.w = u_xlat0.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendAlpha" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat0 = u_xlat0 * vs_COLOR0;
					    SV_Target0.w = u_xlat0.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat0 = u_xlat0 * vs_COLOR0;
					    SV_Target0.w = u_xlat0.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendAlpha" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2.xyz = u_xlat1.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    u_xlat1.x = u_xlat1.w * vs_COLOR0.w;
					    SV_Target0.w = u_xlat1.x;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat2.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2.xyz = u_xlat1.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    u_xlat1.x = u_xlat1.w * vs_COLOR0.w;
					    SV_Target0.w = u_xlat1.x;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat2.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2.xyz = u_xlat1.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    u_xlat1.x = u_xlat1.w * vs_COLOR0.w;
					    SV_Target0.w = u_xlat1.x;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat2.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2.xyz = u_xlat1.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    u_xlat1.x = u_xlat1.w * vs_COLOR0.w;
					    SV_Target0.w = u_xlat1.x;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat2.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendAlpha" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2.xyz = u_xlat1.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    u_xlat1.x = u_xlat1.w * vs_COLOR0.w;
					    SV_Target0.w = u_xlat1.x;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat2.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2.xyz = u_xlat1.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    u_xlat1.x = u_xlat1.w * vs_COLOR0.w;
					    SV_Target0.w = u_xlat1.x;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat2.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2.xyz = u_xlat1.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    u_xlat1.x = u_xlat1.w * vs_COLOR0.w;
					    SV_Target0.w = u_xlat1.x;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat2.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2.xyz = u_xlat1.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    u_xlat1.x = u_xlat1.w * vs_COLOR0.w;
					    SV_Target0.w = u_xlat1.x;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat2.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendAlpha" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2.xyz = u_xlat1.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    u_xlat1.x = u_xlat1.w * vs_COLOR0.w;
					    SV_Target0.w = u_xlat1.x;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat2.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2.xyz = u_xlat1.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    u_xlat1.x = u_xlat1.w * vs_COLOR0.w;
					    SV_Target0.w = u_xlat1.x;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat2.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2.xyz = u_xlat1.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    u_xlat1.x = u_xlat1.w * vs_COLOR0.w;
					    SV_Target0.w = u_xlat1.x;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat2.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2.xyz = u_xlat1.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    u_xlat1.x = u_xlat1.w * vs_COLOR0.w;
					    SV_Target0.w = u_xlat1.x;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat2.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendAlpha" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat0 = u_xlat0.wxyz * vs_COLOR0.wxyz;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.yzw;
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat0 = u_xlat0.wxyz * vs_COLOR0.wxyz;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.yzw;
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendAlpha" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat0 = u_xlat0.wxyz * vs_COLOR0.wxyz;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.yzw;
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat0 = u_xlat0.wxyz * vs_COLOR0.wxyz;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.yzw;
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendAlpha" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2.xyz = u_xlat1.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    u_xlat1.x = u_xlat1.w * vs_COLOR0.w;
					    u_xlat1.x = u_xlat1.x;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat1.x * vs_TEXCOORD4;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat2.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2.xyz = u_xlat1.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    u_xlat1.x = u_xlat1.w * vs_COLOR0.w;
					    u_xlat1.x = u_xlat1.x;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat1.x * vs_TEXCOORD4;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat2.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2.xyz = u_xlat1.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    u_xlat1.x = u_xlat1.w * vs_COLOR0.w;
					    u_xlat1.x = u_xlat1.x;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat1.x * vs_TEXCOORD4;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat2.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2.xyz = u_xlat1.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    u_xlat1.x = u_xlat1.w * vs_COLOR0.w;
					    u_xlat1.x = u_xlat1.x;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat1.x * vs_TEXCOORD4;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat2.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendAlpha" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2.xyz = u_xlat1.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    u_xlat1.x = u_xlat1.w * vs_COLOR0.w;
					    u_xlat1.x = u_xlat1.x;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat1.x * vs_TEXCOORD4;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat2.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2.xyz = u_xlat1.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    u_xlat1.x = u_xlat1.w * vs_COLOR0.w;
					    u_xlat1.x = u_xlat1.x;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat1.x * vs_TEXCOORD4;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat2.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2.xyz = u_xlat1.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    u_xlat1.x = u_xlat1.w * vs_COLOR0.w;
					    u_xlat1.x = u_xlat1.x;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat1.x * vs_TEXCOORD4;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat2.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2.xyz = u_xlat1.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    u_xlat1.x = u_xlat1.w * vs_COLOR0.w;
					    u_xlat1.x = u_xlat1.x;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat1.x * vs_TEXCOORD4;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat2.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendAlpha" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2.xyz = u_xlat1.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    u_xlat1.x = u_xlat1.w * vs_COLOR0.w;
					    u_xlat1.x = u_xlat1.x;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat1.x * vs_TEXCOORD4;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat2.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2.xyz = u_xlat1.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    u_xlat1.x = u_xlat1.w * vs_COLOR0.w;
					    u_xlat1.x = u_xlat1.x;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat1.x * vs_TEXCOORD4;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat2.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2.xyz = u_xlat1.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    u_xlat1.x = u_xlat1.w * vs_COLOR0.w;
					    u_xlat1.x = u_xlat1.x;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat1.x * vs_TEXCOORD4;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat2.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2.xyz = u_xlat1.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    u_xlat1.x = u_xlat1.w * vs_COLOR0.w;
					    u_xlat1.x = u_xlat1.x;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat1.x * vs_TEXCOORD4;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat2.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendAlpha" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat0 = u_xlat0.wxyz * vs_COLOR0.wxyz;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.yzw;
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat0 = u_xlat0.wxyz * vs_COLOR0.wxyz;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.yzw;
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendAlpha" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat0 = u_xlat0.wxyz * vs_COLOR0.wxyz;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.yzw;
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat0 = u_xlat0.wxyz * vs_COLOR0.wxyz;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.yzw;
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendAlpha" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2.xyz = u_xlat1.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    u_xlat1.x = u_xlat1.w * vs_COLOR0.w;
					    u_xlat1.x = u_xlat1.x;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat1.x * vs_TEXCOORD4;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat2.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2.xyz = u_xlat1.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    u_xlat1.x = u_xlat1.w * vs_COLOR0.w;
					    u_xlat1.x = u_xlat1.x;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat1.x * vs_TEXCOORD4;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat2.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2.xyz = u_xlat1.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    u_xlat1.x = u_xlat1.w * vs_COLOR0.w;
					    u_xlat1.x = u_xlat1.x;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat1.x * vs_TEXCOORD4;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat2.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2.xyz = u_xlat1.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    u_xlat1.x = u_xlat1.w * vs_COLOR0.w;
					    u_xlat1.x = u_xlat1.x;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat1.x * vs_TEXCOORD4;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat2.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendAlpha" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2.xyz = u_xlat1.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    u_xlat1.x = u_xlat1.w * vs_COLOR0.w;
					    u_xlat1.x = u_xlat1.x;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat1.x * vs_TEXCOORD4;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat2.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2.xyz = u_xlat1.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    u_xlat1.x = u_xlat1.w * vs_COLOR0.w;
					    u_xlat1.x = u_xlat1.x;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat1.x * vs_TEXCOORD4;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat2.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2.xyz = u_xlat1.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    u_xlat1.x = u_xlat1.w * vs_COLOR0.w;
					    u_xlat1.x = u_xlat1.x;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat1.x * vs_TEXCOORD4;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat2.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2.xyz = u_xlat1.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    u_xlat1.x = u_xlat1.w * vs_COLOR0.w;
					    u_xlat1.x = u_xlat1.x;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat1.x * vs_TEXCOORD4;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat2.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendAlpha" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2.xyz = u_xlat1.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    u_xlat1.x = u_xlat1.w * vs_COLOR0.w;
					    u_xlat1.x = u_xlat1.x;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat1.x * vs_TEXCOORD4;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat2.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2.xyz = u_xlat1.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    u_xlat1.x = u_xlat1.w * vs_COLOR0.w;
					    u_xlat1.x = u_xlat1.x;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat1.x * vs_TEXCOORD4;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat2.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2.xyz = u_xlat1.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    u_xlat1.x = u_xlat1.w * vs_COLOR0.w;
					    u_xlat1.x = u_xlat1.x;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat1.x * vs_TEXCOORD4;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat2.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2.xyz = u_xlat1.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    u_xlat1.x = u_xlat1.w * vs_COLOR0.w;
					    u_xlat1.x = u_xlat1.x;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat1.x * vs_TEXCOORD4;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat2.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendAlpha" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					float u_xlat1;
					bool u_xlatb1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1 = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat0.w = u_xlat0.w * u_xlat1;
					    u_xlat0 = u_xlat0 * vs_COLOR0;
					    SV_Target0.w = u_xlat0.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					float u_xlat1;
					bool u_xlatb1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1 = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat0.w = u_xlat0.w * u_xlat1;
					    u_xlat0 = u_xlat0 * vs_COLOR0;
					    SV_Target0.w = u_xlat0.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendAlpha" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					float u_xlat1;
					bool u_xlatb1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1 = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat0.w = u_xlat0.w * u_xlat1;
					    u_xlat0 = u_xlat0 * vs_COLOR0;
					    SV_Target0.w = u_xlat0.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					float u_xlat1;
					bool u_xlatb1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1 = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat0.w = u_xlat0.w * u_xlat1;
					    u_xlat0 = u_xlat0 * vs_COLOR0;
					    SV_Target0.w = u_xlat0.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendAlpha" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					float u_xlat1;
					bool u_xlatb1;
					float u_xlat6;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1 = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat6 = u_xlat0.w * u_xlat1;
					    u_xlat0.xyz = u_xlat0.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    u_xlat6 = u_xlat6 * vs_COLOR0.w;
					    SV_Target0.w = u_xlat6;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    u_xlat6 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat6 = (-u_xlat6) + 1.0;
					    u_xlat6 = u_xlat6 * _ProjectionParams.z;
					    u_xlat6 = max(u_xlat6, 0.0);
					    u_xlat6 = u_xlat6 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat6 = clamp(u_xlat6, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat6) * u_xlat0.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					float u_xlat1;
					bool u_xlatb1;
					float u_xlat6;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1 = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat6 = u_xlat0.w * u_xlat1;
					    u_xlat0.xyz = u_xlat0.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    u_xlat6 = u_xlat6 * vs_COLOR0.w;
					    SV_Target0.w = u_xlat6;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    u_xlat6 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat6 = (-u_xlat6) + 1.0;
					    u_xlat6 = u_xlat6 * _ProjectionParams.z;
					    u_xlat6 = max(u_xlat6, 0.0);
					    u_xlat6 = u_xlat6 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat6 = clamp(u_xlat6, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat6) * u_xlat0.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					float u_xlat1;
					bool u_xlatb1;
					float u_xlat6;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1 = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat6 = u_xlat0.w * u_xlat1;
					    u_xlat0.xyz = u_xlat0.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    u_xlat6 = u_xlat6 * vs_COLOR0.w;
					    SV_Target0.w = u_xlat6;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    u_xlat6 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat6 = (-u_xlat6) + 1.0;
					    u_xlat6 = u_xlat6 * _ProjectionParams.z;
					    u_xlat6 = max(u_xlat6, 0.0);
					    u_xlat6 = u_xlat6 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat6 = clamp(u_xlat6, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat6) * u_xlat0.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					float u_xlat1;
					bool u_xlatb1;
					float u_xlat6;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1 = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat6 = u_xlat0.w * u_xlat1;
					    u_xlat0.xyz = u_xlat0.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    u_xlat6 = u_xlat6 * vs_COLOR0.w;
					    SV_Target0.w = u_xlat6;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    u_xlat6 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat6 = (-u_xlat6) + 1.0;
					    u_xlat6 = u_xlat6 * _ProjectionParams.z;
					    u_xlat6 = max(u_xlat6, 0.0);
					    u_xlat6 = u_xlat6 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat6 = clamp(u_xlat6, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat6) * u_xlat0.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendAlpha" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2 = u_xlat1 + u_xlat1;
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1 = u_xlat2 * _TintColor;
					    u_xlat3.x = u_xlat3.x * u_xlat1.w;
					    u_xlat3.x = u_xlat3.x * vs_COLOR0.w;
					    SV_Target0.w = u_xlat3.x;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    u_xlat3.xyz = u_xlat1.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2 = u_xlat1 + u_xlat1;
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1 = u_xlat2 * _TintColor;
					    u_xlat3.x = u_xlat3.x * u_xlat1.w;
					    u_xlat3.x = u_xlat3.x * vs_COLOR0.w;
					    SV_Target0.w = u_xlat3.x;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    u_xlat3.xyz = u_xlat1.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2 = u_xlat1 + u_xlat1;
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1 = u_xlat2 * _TintColor;
					    u_xlat3.x = u_xlat3.x * u_xlat1.w;
					    u_xlat3.x = u_xlat3.x * vs_COLOR0.w;
					    SV_Target0.w = u_xlat3.x;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    u_xlat3.xyz = u_xlat1.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2 = u_xlat1 + u_xlat1;
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1 = u_xlat2 * _TintColor;
					    u_xlat3.x = u_xlat3.x * u_xlat1.w;
					    u_xlat3.x = u_xlat3.x * vs_COLOR0.w;
					    SV_Target0.w = u_xlat3.x;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    u_xlat3.xyz = u_xlat1.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendAlpha" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2 = u_xlat1 + u_xlat1;
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1 = u_xlat2 * _TintColor;
					    u_xlat3.x = u_xlat3.x * u_xlat1.w;
					    u_xlat3.x = u_xlat3.x * vs_COLOR0.w;
					    SV_Target0.w = u_xlat3.x;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    u_xlat3.xyz = u_xlat1.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2 = u_xlat1 + u_xlat1;
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1 = u_xlat2 * _TintColor;
					    u_xlat3.x = u_xlat3.x * u_xlat1.w;
					    u_xlat3.x = u_xlat3.x * vs_COLOR0.w;
					    SV_Target0.w = u_xlat3.x;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    u_xlat3.xyz = u_xlat1.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2 = u_xlat1 + u_xlat1;
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1 = u_xlat2 * _TintColor;
					    u_xlat3.x = u_xlat3.x * u_xlat1.w;
					    u_xlat3.x = u_xlat3.x * vs_COLOR0.w;
					    SV_Target0.w = u_xlat3.x;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    u_xlat3.xyz = u_xlat1.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2 = u_xlat1 + u_xlat1;
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1 = u_xlat2 * _TintColor;
					    u_xlat3.x = u_xlat3.x * u_xlat1.w;
					    u_xlat3.x = u_xlat3.x * vs_COLOR0.w;
					    SV_Target0.w = u_xlat3.x;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    u_xlat3.xyz = u_xlat1.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendAlpha" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					float u_xlat1;
					bool u_xlatb1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1 = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat0.w = u_xlat0.w * u_xlat1;
					    u_xlat0 = u_xlat0 * vs_COLOR0;
					    SV_Target0.w = u_xlat0.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					float u_xlat1;
					bool u_xlatb1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1 = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat0.w = u_xlat0.w * u_xlat1;
					    u_xlat0 = u_xlat0 * vs_COLOR0;
					    SV_Target0.w = u_xlat0.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendAlpha" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					float u_xlat1;
					bool u_xlatb1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1 = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat0.w = u_xlat0.w * u_xlat1;
					    u_xlat0 = u_xlat0 * vs_COLOR0;
					    SV_Target0.w = u_xlat0.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					float u_xlat1;
					bool u_xlatb1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1 = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat0.w = u_xlat0.w * u_xlat1;
					    u_xlat0 = u_xlat0 * vs_COLOR0;
					    SV_Target0.w = u_xlat0.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendAlpha" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					float u_xlat1;
					bool u_xlatb1;
					float u_xlat6;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1 = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat6 = u_xlat0.w * u_xlat1;
					    u_xlat0.xyz = u_xlat0.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    u_xlat6 = u_xlat6 * vs_COLOR0.w;
					    SV_Target0.w = u_xlat6;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    u_xlat6 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat6 = (-u_xlat6) + 1.0;
					    u_xlat6 = u_xlat6 * _ProjectionParams.z;
					    u_xlat6 = max(u_xlat6, 0.0);
					    u_xlat6 = u_xlat6 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat6 = clamp(u_xlat6, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat6) * u_xlat0.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					float u_xlat1;
					bool u_xlatb1;
					float u_xlat6;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1 = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat6 = u_xlat0.w * u_xlat1;
					    u_xlat0.xyz = u_xlat0.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    u_xlat6 = u_xlat6 * vs_COLOR0.w;
					    SV_Target0.w = u_xlat6;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    u_xlat6 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat6 = (-u_xlat6) + 1.0;
					    u_xlat6 = u_xlat6 * _ProjectionParams.z;
					    u_xlat6 = max(u_xlat6, 0.0);
					    u_xlat6 = u_xlat6 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat6 = clamp(u_xlat6, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat6) * u_xlat0.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					float u_xlat1;
					bool u_xlatb1;
					float u_xlat6;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1 = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat6 = u_xlat0.w * u_xlat1;
					    u_xlat0.xyz = u_xlat0.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    u_xlat6 = u_xlat6 * vs_COLOR0.w;
					    SV_Target0.w = u_xlat6;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    u_xlat6 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat6 = (-u_xlat6) + 1.0;
					    u_xlat6 = u_xlat6 * _ProjectionParams.z;
					    u_xlat6 = max(u_xlat6, 0.0);
					    u_xlat6 = u_xlat6 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat6 = clamp(u_xlat6, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat6) * u_xlat0.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					float u_xlat1;
					bool u_xlatb1;
					float u_xlat6;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1 = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat6 = u_xlat0.w * u_xlat1;
					    u_xlat0.xyz = u_xlat0.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    u_xlat6 = u_xlat6 * vs_COLOR0.w;
					    SV_Target0.w = u_xlat6;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    u_xlat6 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat6 = (-u_xlat6) + 1.0;
					    u_xlat6 = u_xlat6 * _ProjectionParams.z;
					    u_xlat6 = max(u_xlat6, 0.0);
					    u_xlat6 = u_xlat6 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat6 = clamp(u_xlat6, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat6) * u_xlat0.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendAlpha" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2 = u_xlat1 + u_xlat1;
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1 = u_xlat2 * _TintColor;
					    u_xlat3.x = u_xlat3.x * u_xlat1.w;
					    u_xlat3.x = u_xlat3.x * vs_COLOR0.w;
					    SV_Target0.w = u_xlat3.x;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    u_xlat3.xyz = u_xlat1.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2 = u_xlat1 + u_xlat1;
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1 = u_xlat2 * _TintColor;
					    u_xlat3.x = u_xlat3.x * u_xlat1.w;
					    u_xlat3.x = u_xlat3.x * vs_COLOR0.w;
					    SV_Target0.w = u_xlat3.x;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    u_xlat3.xyz = u_xlat1.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2 = u_xlat1 + u_xlat1;
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1 = u_xlat2 * _TintColor;
					    u_xlat3.x = u_xlat3.x * u_xlat1.w;
					    u_xlat3.x = u_xlat3.x * vs_COLOR0.w;
					    SV_Target0.w = u_xlat3.x;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    u_xlat3.xyz = u_xlat1.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2 = u_xlat1 + u_xlat1;
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1 = u_xlat2 * _TintColor;
					    u_xlat3.x = u_xlat3.x * u_xlat1.w;
					    u_xlat3.x = u_xlat3.x * vs_COLOR0.w;
					    SV_Target0.w = u_xlat3.x;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    u_xlat3.xyz = u_xlat1.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendAlpha" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2 = u_xlat1 + u_xlat1;
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1 = u_xlat2 * _TintColor;
					    u_xlat3.x = u_xlat3.x * u_xlat1.w;
					    u_xlat3.x = u_xlat3.x * vs_COLOR0.w;
					    SV_Target0.w = u_xlat3.x;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    u_xlat3.xyz = u_xlat1.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2 = u_xlat1 + u_xlat1;
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1 = u_xlat2 * _TintColor;
					    u_xlat3.x = u_xlat3.x * u_xlat1.w;
					    u_xlat3.x = u_xlat3.x * vs_COLOR0.w;
					    SV_Target0.w = u_xlat3.x;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    u_xlat3.xyz = u_xlat1.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2 = u_xlat1 + u_xlat1;
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1 = u_xlat2 * _TintColor;
					    u_xlat3.x = u_xlat3.x * u_xlat1.w;
					    u_xlat3.x = u_xlat3.x * vs_COLOR0.w;
					    SV_Target0.w = u_xlat3.x;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    u_xlat3.xyz = u_xlat1.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2 = u_xlat1 + u_xlat1;
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1 = u_xlat2 * _TintColor;
					    u_xlat3.x = u_xlat3.x * u_xlat1.w;
					    u_xlat3.x = u_xlat3.x * vs_COLOR0.w;
					    SV_Target0.w = u_xlat3.x;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    u_xlat3.xyz = u_xlat1.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendAlpha" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					float u_xlat1;
					bool u_xlatb1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1 = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat0.w = u_xlat0.w * u_xlat1;
					    u_xlat0 = u_xlat0.wxyz * vs_COLOR0.wxyz;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.yzw;
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					float u_xlat1;
					bool u_xlatb1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1 = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat0.w = u_xlat0.w * u_xlat1;
					    u_xlat0 = u_xlat0.wxyz * vs_COLOR0.wxyz;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.yzw;
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendAlpha" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					float u_xlat1;
					bool u_xlatb1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1 = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat0.w = u_xlat0.w * u_xlat1;
					    u_xlat0 = u_xlat0.wxyz * vs_COLOR0.wxyz;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.yzw;
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					float u_xlat1;
					bool u_xlatb1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1 = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat0.w = u_xlat0.w * u_xlat1;
					    u_xlat0 = u_xlat0.wxyz * vs_COLOR0.wxyz;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.yzw;
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendAlpha" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					float u_xlat1;
					bool u_xlatb1;
					float u_xlat6;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1 = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat6 = u_xlat0.w * u_xlat1;
					    u_xlat0.xyz = u_xlat0.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    u_xlat1 = u_xlat6 * vs_COLOR0.w;
					    u_xlat1 = u_xlat1;
					    u_xlat1 = clamp(u_xlat1, 0.0, 1.0);
					    SV_Target0.w = u_xlat1 * vs_TEXCOORD4;
					    u_xlat6 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat6 = (-u_xlat6) + 1.0;
					    u_xlat6 = u_xlat6 * _ProjectionParams.z;
					    u_xlat6 = max(u_xlat6, 0.0);
					    u_xlat6 = u_xlat6 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat6 = clamp(u_xlat6, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat6) * u_xlat0.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					float u_xlat1;
					bool u_xlatb1;
					float u_xlat6;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1 = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat6 = u_xlat0.w * u_xlat1;
					    u_xlat0.xyz = u_xlat0.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    u_xlat1 = u_xlat6 * vs_COLOR0.w;
					    u_xlat1 = u_xlat1;
					    u_xlat1 = clamp(u_xlat1, 0.0, 1.0);
					    SV_Target0.w = u_xlat1 * vs_TEXCOORD4;
					    u_xlat6 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat6 = (-u_xlat6) + 1.0;
					    u_xlat6 = u_xlat6 * _ProjectionParams.z;
					    u_xlat6 = max(u_xlat6, 0.0);
					    u_xlat6 = u_xlat6 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat6 = clamp(u_xlat6, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat6) * u_xlat0.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					float u_xlat1;
					bool u_xlatb1;
					float u_xlat6;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1 = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat6 = u_xlat0.w * u_xlat1;
					    u_xlat0.xyz = u_xlat0.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    u_xlat1 = u_xlat6 * vs_COLOR0.w;
					    u_xlat1 = u_xlat1;
					    u_xlat1 = clamp(u_xlat1, 0.0, 1.0);
					    SV_Target0.w = u_xlat1 * vs_TEXCOORD4;
					    u_xlat6 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat6 = (-u_xlat6) + 1.0;
					    u_xlat6 = u_xlat6 * _ProjectionParams.z;
					    u_xlat6 = max(u_xlat6, 0.0);
					    u_xlat6 = u_xlat6 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat6 = clamp(u_xlat6, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat6) * u_xlat0.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					float u_xlat1;
					bool u_xlatb1;
					float u_xlat6;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1 = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat6 = u_xlat0.w * u_xlat1;
					    u_xlat0.xyz = u_xlat0.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    u_xlat1 = u_xlat6 * vs_COLOR0.w;
					    u_xlat1 = u_xlat1;
					    u_xlat1 = clamp(u_xlat1, 0.0, 1.0);
					    SV_Target0.w = u_xlat1 * vs_TEXCOORD4;
					    u_xlat6 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat6 = (-u_xlat6) + 1.0;
					    u_xlat6 = u_xlat6 * _ProjectionParams.z;
					    u_xlat6 = max(u_xlat6, 0.0);
					    u_xlat6 = u_xlat6 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat6 = clamp(u_xlat6, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat6) * u_xlat0.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendAlpha" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					float u_xlat1;
					bool u_xlatb1;
					float u_xlat6;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1 = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat6 = u_xlat0.w * u_xlat1;
					    u_xlat0.xyz = u_xlat0.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    u_xlat1 = u_xlat6 * vs_COLOR0.w;
					    u_xlat1 = u_xlat1;
					    u_xlat1 = clamp(u_xlat1, 0.0, 1.0);
					    SV_Target0.w = u_xlat1 * vs_TEXCOORD4;
					    u_xlat6 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat6 = (-u_xlat6) + 1.0;
					    u_xlat6 = u_xlat6 * _ProjectionParams.z;
					    u_xlat6 = max(u_xlat6, 0.0);
					    u_xlat6 = u_xlat6 * unity_FogParams.y;
					    u_xlat6 = exp2((-u_xlat6));
					    u_xlat6 = min(u_xlat6, 1.0);
					    SV_Target0.xyz = vec3(u_xlat6) * u_xlat0.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					float u_xlat1;
					bool u_xlatb1;
					float u_xlat6;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1 = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat6 = u_xlat0.w * u_xlat1;
					    u_xlat0.xyz = u_xlat0.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    u_xlat1 = u_xlat6 * vs_COLOR0.w;
					    u_xlat1 = u_xlat1;
					    u_xlat1 = clamp(u_xlat1, 0.0, 1.0);
					    SV_Target0.w = u_xlat1 * vs_TEXCOORD4;
					    u_xlat6 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat6 = (-u_xlat6) + 1.0;
					    u_xlat6 = u_xlat6 * _ProjectionParams.z;
					    u_xlat6 = max(u_xlat6, 0.0);
					    u_xlat6 = u_xlat6 * unity_FogParams.y;
					    u_xlat6 = exp2((-u_xlat6));
					    u_xlat6 = min(u_xlat6, 1.0);
					    SV_Target0.xyz = vec3(u_xlat6) * u_xlat0.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					float u_xlat1;
					bool u_xlatb1;
					float u_xlat6;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1 = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat6 = u_xlat0.w * u_xlat1;
					    u_xlat0.xyz = u_xlat0.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    u_xlat1 = u_xlat6 * vs_COLOR0.w;
					    u_xlat1 = u_xlat1;
					    u_xlat1 = clamp(u_xlat1, 0.0, 1.0);
					    SV_Target0.w = u_xlat1 * vs_TEXCOORD4;
					    u_xlat6 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat6 = (-u_xlat6) + 1.0;
					    u_xlat6 = u_xlat6 * _ProjectionParams.z;
					    u_xlat6 = max(u_xlat6, 0.0);
					    u_xlat6 = u_xlat6 * unity_FogParams.y;
					    u_xlat6 = exp2((-u_xlat6));
					    u_xlat6 = min(u_xlat6, 1.0);
					    SV_Target0.xyz = vec3(u_xlat6) * u_xlat0.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					float u_xlat1;
					bool u_xlatb1;
					float u_xlat6;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1 = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat6 = u_xlat0.w * u_xlat1;
					    u_xlat0.xyz = u_xlat0.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    u_xlat1 = u_xlat6 * vs_COLOR0.w;
					    u_xlat1 = u_xlat1;
					    u_xlat1 = clamp(u_xlat1, 0.0, 1.0);
					    SV_Target0.w = u_xlat1 * vs_TEXCOORD4;
					    u_xlat6 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat6 = (-u_xlat6) + 1.0;
					    u_xlat6 = u_xlat6 * _ProjectionParams.z;
					    u_xlat6 = max(u_xlat6, 0.0);
					    u_xlat6 = u_xlat6 * unity_FogParams.y;
					    u_xlat6 = exp2((-u_xlat6));
					    u_xlat6 = min(u_xlat6, 1.0);
					    SV_Target0.xyz = vec3(u_xlat6) * u_xlat0.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendAlpha" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					float u_xlat1;
					bool u_xlatb1;
					float u_xlat6;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1 = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat6 = u_xlat0.w * u_xlat1;
					    u_xlat0.xyz = u_xlat0.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    u_xlat1 = u_xlat6 * vs_COLOR0.w;
					    u_xlat1 = u_xlat1;
					    u_xlat1 = clamp(u_xlat1, 0.0, 1.0);
					    SV_Target0.w = u_xlat1 * vs_TEXCOORD4;
					    u_xlat6 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat6 = (-u_xlat6) + 1.0;
					    u_xlat6 = u_xlat6 * _ProjectionParams.z;
					    u_xlat6 = max(u_xlat6, 0.0);
					    u_xlat6 = u_xlat6 * unity_FogParams.x;
					    u_xlat6 = u_xlat6 * (-u_xlat6);
					    u_xlat6 = exp2(u_xlat6);
					    SV_Target0.xyz = vec3(u_xlat6) * u_xlat0.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					float u_xlat1;
					bool u_xlatb1;
					float u_xlat6;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1 = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat6 = u_xlat0.w * u_xlat1;
					    u_xlat0.xyz = u_xlat0.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    u_xlat1 = u_xlat6 * vs_COLOR0.w;
					    u_xlat1 = u_xlat1;
					    u_xlat1 = clamp(u_xlat1, 0.0, 1.0);
					    SV_Target0.w = u_xlat1 * vs_TEXCOORD4;
					    u_xlat6 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat6 = (-u_xlat6) + 1.0;
					    u_xlat6 = u_xlat6 * _ProjectionParams.z;
					    u_xlat6 = max(u_xlat6, 0.0);
					    u_xlat6 = u_xlat6 * unity_FogParams.x;
					    u_xlat6 = u_xlat6 * (-u_xlat6);
					    u_xlat6 = exp2(u_xlat6);
					    SV_Target0.xyz = vec3(u_xlat6) * u_xlat0.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					float u_xlat1;
					bool u_xlatb1;
					float u_xlat6;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1 = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat6 = u_xlat0.w * u_xlat1;
					    u_xlat0.xyz = u_xlat0.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    u_xlat1 = u_xlat6 * vs_COLOR0.w;
					    u_xlat1 = u_xlat1;
					    u_xlat1 = clamp(u_xlat1, 0.0, 1.0);
					    SV_Target0.w = u_xlat1 * vs_TEXCOORD4;
					    u_xlat6 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat6 = (-u_xlat6) + 1.0;
					    u_xlat6 = u_xlat6 * _ProjectionParams.z;
					    u_xlat6 = max(u_xlat6, 0.0);
					    u_xlat6 = u_xlat6 * unity_FogParams.x;
					    u_xlat6 = u_xlat6 * (-u_xlat6);
					    u_xlat6 = exp2(u_xlat6);
					    SV_Target0.xyz = vec3(u_xlat6) * u_xlat0.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					float u_xlat1;
					bool u_xlatb1;
					float u_xlat6;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1 = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat6 = u_xlat0.w * u_xlat1;
					    u_xlat0.xyz = u_xlat0.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    u_xlat1 = u_xlat6 * vs_COLOR0.w;
					    u_xlat1 = u_xlat1;
					    u_xlat1 = clamp(u_xlat1, 0.0, 1.0);
					    SV_Target0.w = u_xlat1 * vs_TEXCOORD4;
					    u_xlat6 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat6 = (-u_xlat6) + 1.0;
					    u_xlat6 = u_xlat6 * _ProjectionParams.z;
					    u_xlat6 = max(u_xlat6, 0.0);
					    u_xlat6 = u_xlat6 * unity_FogParams.x;
					    u_xlat6 = u_xlat6 * (-u_xlat6);
					    u_xlat6 = exp2(u_xlat6);
					    SV_Target0.xyz = vec3(u_xlat6) * u_xlat0.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendAlpha" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					float u_xlat1;
					bool u_xlatb1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1 = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat0.w = u_xlat0.w * u_xlat1;
					    u_xlat0 = u_xlat0.wxyz * vs_COLOR0.wxyz;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.yzw;
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					float u_xlat1;
					bool u_xlatb1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1 = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat0.w = u_xlat0.w * u_xlat1;
					    u_xlat0 = u_xlat0.wxyz * vs_COLOR0.wxyz;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.yzw;
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendAlpha" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					float u_xlat1;
					bool u_xlatb1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1 = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat0.w = u_xlat0.w * u_xlat1;
					    u_xlat0 = u_xlat0.wxyz * vs_COLOR0.wxyz;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.yzw;
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					float u_xlat1;
					bool u_xlatb1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1 = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat0.w = u_xlat0.w * u_xlat1;
					    u_xlat0 = u_xlat0.wxyz * vs_COLOR0.wxyz;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.yzw;
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendAlpha" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					float u_xlat1;
					bool u_xlatb1;
					float u_xlat6;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1 = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat6 = u_xlat0.w * u_xlat1;
					    u_xlat0.xyz = u_xlat0.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    u_xlat1 = u_xlat6 * vs_COLOR0.w;
					    u_xlat1 = u_xlat1;
					    u_xlat1 = clamp(u_xlat1, 0.0, 1.0);
					    SV_Target0.w = u_xlat1 * vs_TEXCOORD4;
					    u_xlat6 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat6 = (-u_xlat6) + 1.0;
					    u_xlat6 = u_xlat6 * _ProjectionParams.z;
					    u_xlat6 = max(u_xlat6, 0.0);
					    u_xlat6 = u_xlat6 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat6 = clamp(u_xlat6, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat6) * u_xlat0.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					float u_xlat1;
					bool u_xlatb1;
					float u_xlat6;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1 = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat6 = u_xlat0.w * u_xlat1;
					    u_xlat0.xyz = u_xlat0.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    u_xlat1 = u_xlat6 * vs_COLOR0.w;
					    u_xlat1 = u_xlat1;
					    u_xlat1 = clamp(u_xlat1, 0.0, 1.0);
					    SV_Target0.w = u_xlat1 * vs_TEXCOORD4;
					    u_xlat6 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat6 = (-u_xlat6) + 1.0;
					    u_xlat6 = u_xlat6 * _ProjectionParams.z;
					    u_xlat6 = max(u_xlat6, 0.0);
					    u_xlat6 = u_xlat6 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat6 = clamp(u_xlat6, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat6) * u_xlat0.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					float u_xlat1;
					bool u_xlatb1;
					float u_xlat6;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1 = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat6 = u_xlat0.w * u_xlat1;
					    u_xlat0.xyz = u_xlat0.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    u_xlat1 = u_xlat6 * vs_COLOR0.w;
					    u_xlat1 = u_xlat1;
					    u_xlat1 = clamp(u_xlat1, 0.0, 1.0);
					    SV_Target0.w = u_xlat1 * vs_TEXCOORD4;
					    u_xlat6 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat6 = (-u_xlat6) + 1.0;
					    u_xlat6 = u_xlat6 * _ProjectionParams.z;
					    u_xlat6 = max(u_xlat6, 0.0);
					    u_xlat6 = u_xlat6 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat6 = clamp(u_xlat6, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat6) * u_xlat0.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					float u_xlat1;
					bool u_xlatb1;
					float u_xlat6;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1 = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat6 = u_xlat0.w * u_xlat1;
					    u_xlat0.xyz = u_xlat0.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    u_xlat1 = u_xlat6 * vs_COLOR0.w;
					    u_xlat1 = u_xlat1;
					    u_xlat1 = clamp(u_xlat1, 0.0, 1.0);
					    SV_Target0.w = u_xlat1 * vs_TEXCOORD4;
					    u_xlat6 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat6 = (-u_xlat6) + 1.0;
					    u_xlat6 = u_xlat6 * _ProjectionParams.z;
					    u_xlat6 = max(u_xlat6, 0.0);
					    u_xlat6 = u_xlat6 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat6 = clamp(u_xlat6, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat6) * u_xlat0.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendAlpha" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					float u_xlat1;
					bool u_xlatb1;
					float u_xlat6;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1 = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat6 = u_xlat0.w * u_xlat1;
					    u_xlat0.xyz = u_xlat0.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    u_xlat1 = u_xlat6 * vs_COLOR0.w;
					    u_xlat1 = u_xlat1;
					    u_xlat1 = clamp(u_xlat1, 0.0, 1.0);
					    SV_Target0.w = u_xlat1 * vs_TEXCOORD4;
					    u_xlat6 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat6 = (-u_xlat6) + 1.0;
					    u_xlat6 = u_xlat6 * _ProjectionParams.z;
					    u_xlat6 = max(u_xlat6, 0.0);
					    u_xlat6 = u_xlat6 * unity_FogParams.y;
					    u_xlat6 = exp2((-u_xlat6));
					    u_xlat6 = min(u_xlat6, 1.0);
					    SV_Target0.xyz = vec3(u_xlat6) * u_xlat0.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					float u_xlat1;
					bool u_xlatb1;
					float u_xlat6;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1 = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat6 = u_xlat0.w * u_xlat1;
					    u_xlat0.xyz = u_xlat0.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    u_xlat1 = u_xlat6 * vs_COLOR0.w;
					    u_xlat1 = u_xlat1;
					    u_xlat1 = clamp(u_xlat1, 0.0, 1.0);
					    SV_Target0.w = u_xlat1 * vs_TEXCOORD4;
					    u_xlat6 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat6 = (-u_xlat6) + 1.0;
					    u_xlat6 = u_xlat6 * _ProjectionParams.z;
					    u_xlat6 = max(u_xlat6, 0.0);
					    u_xlat6 = u_xlat6 * unity_FogParams.y;
					    u_xlat6 = exp2((-u_xlat6));
					    u_xlat6 = min(u_xlat6, 1.0);
					    SV_Target0.xyz = vec3(u_xlat6) * u_xlat0.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					float u_xlat1;
					bool u_xlatb1;
					float u_xlat6;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1 = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat6 = u_xlat0.w * u_xlat1;
					    u_xlat0.xyz = u_xlat0.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    u_xlat1 = u_xlat6 * vs_COLOR0.w;
					    u_xlat1 = u_xlat1;
					    u_xlat1 = clamp(u_xlat1, 0.0, 1.0);
					    SV_Target0.w = u_xlat1 * vs_TEXCOORD4;
					    u_xlat6 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat6 = (-u_xlat6) + 1.0;
					    u_xlat6 = u_xlat6 * _ProjectionParams.z;
					    u_xlat6 = max(u_xlat6, 0.0);
					    u_xlat6 = u_xlat6 * unity_FogParams.y;
					    u_xlat6 = exp2((-u_xlat6));
					    u_xlat6 = min(u_xlat6, 1.0);
					    SV_Target0.xyz = vec3(u_xlat6) * u_xlat0.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					float u_xlat1;
					bool u_xlatb1;
					float u_xlat6;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1 = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat6 = u_xlat0.w * u_xlat1;
					    u_xlat0.xyz = u_xlat0.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    u_xlat1 = u_xlat6 * vs_COLOR0.w;
					    u_xlat1 = u_xlat1;
					    u_xlat1 = clamp(u_xlat1, 0.0, 1.0);
					    SV_Target0.w = u_xlat1 * vs_TEXCOORD4;
					    u_xlat6 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat6 = (-u_xlat6) + 1.0;
					    u_xlat6 = u_xlat6 * _ProjectionParams.z;
					    u_xlat6 = max(u_xlat6, 0.0);
					    u_xlat6 = u_xlat6 * unity_FogParams.y;
					    u_xlat6 = exp2((-u_xlat6));
					    u_xlat6 = min(u_xlat6, 1.0);
					    SV_Target0.xyz = vec3(u_xlat6) * u_xlat0.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendAlpha" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					float u_xlat1;
					bool u_xlatb1;
					float u_xlat6;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1 = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat6 = u_xlat0.w * u_xlat1;
					    u_xlat0.xyz = u_xlat0.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    u_xlat1 = u_xlat6 * vs_COLOR0.w;
					    u_xlat1 = u_xlat1;
					    u_xlat1 = clamp(u_xlat1, 0.0, 1.0);
					    SV_Target0.w = u_xlat1 * vs_TEXCOORD4;
					    u_xlat6 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat6 = (-u_xlat6) + 1.0;
					    u_xlat6 = u_xlat6 * _ProjectionParams.z;
					    u_xlat6 = max(u_xlat6, 0.0);
					    u_xlat6 = u_xlat6 * unity_FogParams.x;
					    u_xlat6 = u_xlat6 * (-u_xlat6);
					    u_xlat6 = exp2(u_xlat6);
					    SV_Target0.xyz = vec3(u_xlat6) * u_xlat0.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					float u_xlat1;
					bool u_xlatb1;
					float u_xlat6;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1 = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat6 = u_xlat0.w * u_xlat1;
					    u_xlat0.xyz = u_xlat0.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    u_xlat1 = u_xlat6 * vs_COLOR0.w;
					    u_xlat1 = u_xlat1;
					    u_xlat1 = clamp(u_xlat1, 0.0, 1.0);
					    SV_Target0.w = u_xlat1 * vs_TEXCOORD4;
					    u_xlat6 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat6 = (-u_xlat6) + 1.0;
					    u_xlat6 = u_xlat6 * _ProjectionParams.z;
					    u_xlat6 = max(u_xlat6, 0.0);
					    u_xlat6 = u_xlat6 * unity_FogParams.x;
					    u_xlat6 = u_xlat6 * (-u_xlat6);
					    u_xlat6 = exp2(u_xlat6);
					    SV_Target0.xyz = vec3(u_xlat6) * u_xlat0.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					float u_xlat1;
					bool u_xlatb1;
					float u_xlat6;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1 = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat6 = u_xlat0.w * u_xlat1;
					    u_xlat0.xyz = u_xlat0.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    u_xlat1 = u_xlat6 * vs_COLOR0.w;
					    u_xlat1 = u_xlat1;
					    u_xlat1 = clamp(u_xlat1, 0.0, 1.0);
					    SV_Target0.w = u_xlat1 * vs_TEXCOORD4;
					    u_xlat6 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat6 = (-u_xlat6) + 1.0;
					    u_xlat6 = u_xlat6 * _ProjectionParams.z;
					    u_xlat6 = max(u_xlat6, 0.0);
					    u_xlat6 = u_xlat6 * unity_FogParams.x;
					    u_xlat6 = u_xlat6 * (-u_xlat6);
					    u_xlat6 = exp2(u_xlat6);
					    SV_Target0.xyz = vec3(u_xlat6) * u_xlat0.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					float u_xlat1;
					bool u_xlatb1;
					float u_xlat6;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1 = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat6 = u_xlat0.w * u_xlat1;
					    u_xlat0.xyz = u_xlat0.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    u_xlat1 = u_xlat6 * vs_COLOR0.w;
					    u_xlat1 = u_xlat1;
					    u_xlat1 = clamp(u_xlat1, 0.0, 1.0);
					    SV_Target0.w = u_xlat1 * vs_TEXCOORD4;
					    u_xlat6 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat6 = (-u_xlat6) + 1.0;
					    u_xlat6 = u_xlat6 * _ProjectionParams.z;
					    u_xlat6 = max(u_xlat6, 0.0);
					    u_xlat6 = u_xlat6 * unity_FogParams.x;
					    u_xlat6 = u_xlat6 * (-u_xlat6);
					    u_xlat6 = exp2(u_xlat6);
					    SV_Target0.xyz = vec3(u_xlat6) * u_xlat0.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendAlpha" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    SV_Target0.xyz = u_xlat2.xyz * vs_COLOR0.xyz;
					    SV_Target0.w = u_xlatb0 ? 1.0 : float(0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    SV_Target0.xyz = u_xlat2.xyz * vs_COLOR0.xyz;
					    SV_Target0.w = u_xlatb0 ? 1.0 : float(0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendAlpha" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    SV_Target0.xyz = u_xlat2.xyz * vs_COLOR0.xyz;
					    SV_Target0.w = u_xlatb0 ? 1.0 : float(0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    SV_Target0.xyz = u_xlat2.xyz * vs_COLOR0.xyz;
					    SV_Target0.w = u_xlatb0 ? 1.0 : float(0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendAlpha" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat2.xyz + unity_FogColor.xyz;
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    SV_Target0.w = u_xlatb0 ? 1.0 : float(0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat2.xyz + unity_FogColor.xyz;
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    SV_Target0.w = u_xlatb0 ? 1.0 : float(0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat2.xyz + unity_FogColor.xyz;
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    SV_Target0.w = u_xlatb0 ? 1.0 : float(0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat2.xyz + unity_FogColor.xyz;
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    SV_Target0.w = u_xlatb0 ? 1.0 : float(0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendAlpha" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat2.xyz + unity_FogColor.xyz;
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    SV_Target0.w = u_xlatb0 ? 1.0 : float(0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat2.xyz + unity_FogColor.xyz;
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    SV_Target0.w = u_xlatb0 ? 1.0 : float(0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat2.xyz + unity_FogColor.xyz;
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    SV_Target0.w = u_xlatb0 ? 1.0 : float(0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat2.xyz + unity_FogColor.xyz;
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    SV_Target0.w = u_xlatb0 ? 1.0 : float(0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendAlpha" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat2.xyz + unity_FogColor.xyz;
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    SV_Target0.w = u_xlatb0 ? 1.0 : float(0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat2.xyz + unity_FogColor.xyz;
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    SV_Target0.w = u_xlatb0 ? 1.0 : float(0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat2.xyz + unity_FogColor.xyz;
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    SV_Target0.w = u_xlatb0 ? 1.0 : float(0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat2.xyz + unity_FogColor.xyz;
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    SV_Target0.w = u_xlatb0 ? 1.0 : float(0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendAlpha" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    SV_Target0.xyz = u_xlat2.xyz * vs_COLOR0.xyz;
					    SV_Target0.w = u_xlatb0 ? 1.0 : float(0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    SV_Target0.xyz = u_xlat2.xyz * vs_COLOR0.xyz;
					    SV_Target0.w = u_xlatb0 ? 1.0 : float(0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendAlpha" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    SV_Target0.xyz = u_xlat2.xyz * vs_COLOR0.xyz;
					    SV_Target0.w = u_xlatb0 ? 1.0 : float(0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    SV_Target0.xyz = u_xlat2.xyz * vs_COLOR0.xyz;
					    SV_Target0.w = u_xlatb0 ? 1.0 : float(0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendAlpha" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat2.xyz + unity_FogColor.xyz;
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    SV_Target0.w = u_xlatb0 ? 1.0 : float(0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat2.xyz + unity_FogColor.xyz;
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    SV_Target0.w = u_xlatb0 ? 1.0 : float(0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat2.xyz + unity_FogColor.xyz;
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    SV_Target0.w = u_xlatb0 ? 1.0 : float(0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat2.xyz + unity_FogColor.xyz;
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    SV_Target0.w = u_xlatb0 ? 1.0 : float(0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendAlpha" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat2.xyz + unity_FogColor.xyz;
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    SV_Target0.w = u_xlatb0 ? 1.0 : float(0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat2.xyz + unity_FogColor.xyz;
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    SV_Target0.w = u_xlatb0 ? 1.0 : float(0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat2.xyz + unity_FogColor.xyz;
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    SV_Target0.w = u_xlatb0 ? 1.0 : float(0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat2.xyz + unity_FogColor.xyz;
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    SV_Target0.w = u_xlatb0 ? 1.0 : float(0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendAlpha" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat2.xyz + unity_FogColor.xyz;
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    SV_Target0.w = u_xlatb0 ? 1.0 : float(0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat2.xyz + unity_FogColor.xyz;
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    SV_Target0.w = u_xlatb0 ? 1.0 : float(0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat2.xyz + unity_FogColor.xyz;
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    SV_Target0.w = u_xlatb0 ? 1.0 : float(0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat2.xyz + unity_FogColor.xyz;
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    SV_Target0.w = u_xlatb0 ? 1.0 : float(0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendAlpha" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    SV_Target0.xyz = u_xlat2.xyz * vs_COLOR0.xyz;
					    u_xlat0 = u_xlatb0 ? 1.0 : float(0.0);
					    SV_Target0.w = u_xlat0 * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    SV_Target0.xyz = u_xlat2.xyz * vs_COLOR0.xyz;
					    u_xlat0 = u_xlatb0 ? 1.0 : float(0.0);
					    SV_Target0.w = u_xlat0 * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendAlpha" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    SV_Target0.xyz = u_xlat2.xyz * vs_COLOR0.xyz;
					    u_xlat0 = u_xlatb0 ? 1.0 : float(0.0);
					    SV_Target0.w = u_xlat0 * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    SV_Target0.xyz = u_xlat2.xyz * vs_COLOR0.xyz;
					    u_xlat0 = u_xlatb0 ? 1.0 : float(0.0);
					    SV_Target0.w = u_xlat0 * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendAlpha" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat2.xyz + unity_FogColor.xyz;
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    u_xlat0 = u_xlatb0 ? 1.0 : float(0.0);
					    SV_Target0.w = u_xlat0 * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat2.xyz + unity_FogColor.xyz;
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    u_xlat0 = u_xlatb0 ? 1.0 : float(0.0);
					    SV_Target0.w = u_xlat0 * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat2.xyz + unity_FogColor.xyz;
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    u_xlat0 = u_xlatb0 ? 1.0 : float(0.0);
					    SV_Target0.w = u_xlat0 * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat2.xyz + unity_FogColor.xyz;
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    u_xlat0 = u_xlatb0 ? 1.0 : float(0.0);
					    SV_Target0.w = u_xlat0 * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendAlpha" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat2.xyz + unity_FogColor.xyz;
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    u_xlat0 = u_xlatb0 ? 1.0 : float(0.0);
					    SV_Target0.w = u_xlat0 * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat2.xyz + unity_FogColor.xyz;
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    u_xlat0 = u_xlatb0 ? 1.0 : float(0.0);
					    SV_Target0.w = u_xlat0 * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat2.xyz + unity_FogColor.xyz;
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    u_xlat0 = u_xlatb0 ? 1.0 : float(0.0);
					    SV_Target0.w = u_xlat0 * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat2.xyz + unity_FogColor.xyz;
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    u_xlat0 = u_xlatb0 ? 1.0 : float(0.0);
					    SV_Target0.w = u_xlat0 * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendAlpha" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat2.xyz + unity_FogColor.xyz;
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    u_xlat0 = u_xlatb0 ? 1.0 : float(0.0);
					    SV_Target0.w = u_xlat0 * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat2.xyz + unity_FogColor.xyz;
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    u_xlat0 = u_xlatb0 ? 1.0 : float(0.0);
					    SV_Target0.w = u_xlat0 * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat2.xyz + unity_FogColor.xyz;
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    u_xlat0 = u_xlatb0 ? 1.0 : float(0.0);
					    SV_Target0.w = u_xlat0 * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat2.xyz + unity_FogColor.xyz;
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    u_xlat0 = u_xlatb0 ? 1.0 : float(0.0);
					    SV_Target0.w = u_xlat0 * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendAlpha" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    SV_Target0.xyz = u_xlat2.xyz * vs_COLOR0.xyz;
					    u_xlat0 = u_xlatb0 ? 1.0 : float(0.0);
					    SV_Target0.w = u_xlat0 * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    SV_Target0.xyz = u_xlat2.xyz * vs_COLOR0.xyz;
					    u_xlat0 = u_xlatb0 ? 1.0 : float(0.0);
					    SV_Target0.w = u_xlat0 * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendAlpha" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    SV_Target0.xyz = u_xlat2.xyz * vs_COLOR0.xyz;
					    u_xlat0 = u_xlatb0 ? 1.0 : float(0.0);
					    SV_Target0.w = u_xlat0 * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    SV_Target0.xyz = u_xlat2.xyz * vs_COLOR0.xyz;
					    u_xlat0 = u_xlatb0 ? 1.0 : float(0.0);
					    SV_Target0.w = u_xlat0 * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendAlpha" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat2.xyz + unity_FogColor.xyz;
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    u_xlat0 = u_xlatb0 ? 1.0 : float(0.0);
					    SV_Target0.w = u_xlat0 * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat2.xyz + unity_FogColor.xyz;
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    u_xlat0 = u_xlatb0 ? 1.0 : float(0.0);
					    SV_Target0.w = u_xlat0 * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat2.xyz + unity_FogColor.xyz;
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    u_xlat0 = u_xlatb0 ? 1.0 : float(0.0);
					    SV_Target0.w = u_xlat0 * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat2.xyz + unity_FogColor.xyz;
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    u_xlat0 = u_xlatb0 ? 1.0 : float(0.0);
					    SV_Target0.w = u_xlat0 * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendAlpha" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat2.xyz + unity_FogColor.xyz;
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    u_xlat0 = u_xlatb0 ? 1.0 : float(0.0);
					    SV_Target0.w = u_xlat0 * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat2.xyz + unity_FogColor.xyz;
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    u_xlat0 = u_xlatb0 ? 1.0 : float(0.0);
					    SV_Target0.w = u_xlat0 * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat2.xyz + unity_FogColor.xyz;
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    u_xlat0 = u_xlatb0 ? 1.0 : float(0.0);
					    SV_Target0.w = u_xlat0 * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat2.xyz + unity_FogColor.xyz;
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    u_xlat0 = u_xlatb0 ? 1.0 : float(0.0);
					    SV_Target0.w = u_xlat0 * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendAlpha" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat2.xyz + unity_FogColor.xyz;
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    u_xlat0 = u_xlatb0 ? 1.0 : float(0.0);
					    SV_Target0.w = u_xlat0 * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat2.xyz + unity_FogColor.xyz;
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    u_xlat0 = u_xlatb0 ? 1.0 : float(0.0);
					    SV_Target0.w = u_xlat0 * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat2.xyz + unity_FogColor.xyz;
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    u_xlat0 = u_xlatb0 ? 1.0 : float(0.0);
					    SV_Target0.w = u_xlat0 * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat2.xyz + unity_FogColor.xyz;
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    u_xlat0 = u_xlatb0 ? 1.0 : float(0.0);
					    SV_Target0.w = u_xlat0 * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendAlpha" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat0 = u_xlat0 * vs_COLOR0;
					    SV_Target0.w = u_xlat0.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat0 = u_xlat0 * vs_COLOR0;
					    SV_Target0.w = u_xlat0.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendAlpha" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[7];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    SV_Target0.w = u_xlat0.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[6];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    SV_Target0.w = u_xlat0.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendAlpha" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2.xyz = u_xlat1.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    u_xlat1.x = u_xlat1.w * vs_COLOR0.w;
					    SV_Target0.w = u_xlat1.x;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat2.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2.xyz = u_xlat1.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    u_xlat1.x = u_xlat1.w * vs_COLOR0.w;
					    SV_Target0.w = u_xlat1.x;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat2.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat6;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat0.x = u_xlat0.x * u_xlat1.w;
					    SV_Target0.w = u_xlat0.x;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0.xyz = u_xlat1.xyz * u_xlat0.xyz + (-unity_FogColor.xyz);
					    u_xlat6 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat6 = (-u_xlat6) + 1.0;
					    u_xlat6 = u_xlat6 * _ProjectionParams.z;
					    u_xlat6 = max(u_xlat6, 0.0);
					    u_xlat6 = u_xlat6 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat6 = clamp(u_xlat6, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat6) * u_xlat0.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat6;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat0.x = u_xlat0.x * u_xlat1.w;
					    SV_Target0.w = u_xlat0.x;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0.xyz = u_xlat1.xyz * u_xlat0.xyz + (-unity_FogColor.xyz);
					    u_xlat6 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat6 = (-u_xlat6) + 1.0;
					    u_xlat6 = u_xlat6 * _ProjectionParams.z;
					    u_xlat6 = max(u_xlat6, 0.0);
					    u_xlat6 = u_xlat6 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat6 = clamp(u_xlat6, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat6) * u_xlat0.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendAlpha" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2.xyz = u_xlat1.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    u_xlat1.x = u_xlat1.w * vs_COLOR0.w;
					    SV_Target0.w = u_xlat1.x;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat2.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2.xyz = u_xlat1.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    u_xlat1.x = u_xlat1.w * vs_COLOR0.w;
					    SV_Target0.w = u_xlat1.x;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat2.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0.x = (-u_xlat0.x) + 1.0;
					    u_xlat0.x = u_xlat0.x * _ProjectionParams.z;
					    u_xlat0.x = max(u_xlat0.x, 0.0);
					    u_xlat0.x = u_xlat0.x * unity_FogParams.y;
					    u_xlat0.x = exp2((-u_xlat0.x));
					    u_xlat0.x = min(u_xlat0.x, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2.xyz = vs_COLOR0.xyz;
					    u_xlat2.xyz = u_xlat1.xyz * u_xlat2.xyz + (-unity_FogColor.xyz);
					    SV_Target0.xyz = u_xlat0.xxx * u_xlat2.xyz + unity_FogColor.xyz;
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = u_xlat0.x * vs_COLOR0.w;
					    u_xlat0.x = u_xlat0.x * u_xlat1.w;
					    SV_Target0.w = u_xlat0.x;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0.x = (-u_xlat0.x) + 1.0;
					    u_xlat0.x = u_xlat0.x * _ProjectionParams.z;
					    u_xlat0.x = max(u_xlat0.x, 0.0);
					    u_xlat0.x = u_xlat0.x * unity_FogParams.y;
					    u_xlat0.x = exp2((-u_xlat0.x));
					    u_xlat0.x = min(u_xlat0.x, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2.xyz = vs_COLOR0.xyz;
					    u_xlat2.xyz = u_xlat1.xyz * u_xlat2.xyz + (-unity_FogColor.xyz);
					    SV_Target0.xyz = u_xlat0.xxx * u_xlat2.xyz + unity_FogColor.xyz;
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = u_xlat0.x * vs_COLOR0.w;
					    u_xlat0.x = u_xlat0.x * u_xlat1.w;
					    SV_Target0.w = u_xlat0.x;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendAlpha" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2.xyz = u_xlat1.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    u_xlat1.x = u_xlat1.w * vs_COLOR0.w;
					    SV_Target0.w = u_xlat1.x;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat2.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2.xyz = u_xlat1.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    u_xlat1.x = u_xlat1.w * vs_COLOR0.w;
					    SV_Target0.w = u_xlat1.x;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat2.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0.x = (-u_xlat0.x) + 1.0;
					    u_xlat0.x = u_xlat0.x * _ProjectionParams.z;
					    u_xlat0.x = max(u_xlat0.x, 0.0);
					    u_xlat0.x = u_xlat0.x * unity_FogParams.x;
					    u_xlat0.x = u_xlat0.x * (-u_xlat0.x);
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2.xyz = vs_COLOR0.xyz;
					    u_xlat2.xyz = u_xlat1.xyz * u_xlat2.xyz + (-unity_FogColor.xyz);
					    SV_Target0.xyz = u_xlat0.xxx * u_xlat2.xyz + unity_FogColor.xyz;
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = u_xlat0.x * vs_COLOR0.w;
					    u_xlat0.x = u_xlat0.x * u_xlat1.w;
					    SV_Target0.w = u_xlat0.x;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0.x = (-u_xlat0.x) + 1.0;
					    u_xlat0.x = u_xlat0.x * _ProjectionParams.z;
					    u_xlat0.x = max(u_xlat0.x, 0.0);
					    u_xlat0.x = u_xlat0.x * unity_FogParams.x;
					    u_xlat0.x = u_xlat0.x * (-u_xlat0.x);
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2.xyz = vs_COLOR0.xyz;
					    u_xlat2.xyz = u_xlat1.xyz * u_xlat2.xyz + (-unity_FogColor.xyz);
					    SV_Target0.xyz = u_xlat0.xxx * u_xlat2.xyz + unity_FogColor.xyz;
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = u_xlat0.x * vs_COLOR0.w;
					    u_xlat0.x = u_xlat0.x * u_xlat1.w;
					    SV_Target0.w = u_xlat0.x;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendAlpha" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[7];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    SV_Target0.w = u_xlat0.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[6];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    SV_Target0.w = u_xlat0.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendAlpha" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[7];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    SV_Target0.w = u_xlat0.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[6];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    SV_Target0.w = u_xlat0.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendAlpha" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat6;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat0.x = u_xlat0.x * u_xlat1.w;
					    SV_Target0.w = u_xlat0.x;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0.xyz = u_xlat1.xyz * u_xlat0.xyz + (-unity_FogColor.xyz);
					    u_xlat6 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat6 = (-u_xlat6) + 1.0;
					    u_xlat6 = u_xlat6 * _ProjectionParams.z;
					    u_xlat6 = max(u_xlat6, 0.0);
					    u_xlat6 = u_xlat6 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat6 = clamp(u_xlat6, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat6) * u_xlat0.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat6;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat0.x = u_xlat0.x * u_xlat1.w;
					    SV_Target0.w = u_xlat0.x;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0.xyz = u_xlat1.xyz * u_xlat0.xyz + (-unity_FogColor.xyz);
					    u_xlat6 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat6 = (-u_xlat6) + 1.0;
					    u_xlat6 = u_xlat6 * _ProjectionParams.z;
					    u_xlat6 = max(u_xlat6, 0.0);
					    u_xlat6 = u_xlat6 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat6 = clamp(u_xlat6, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat6) * u_xlat0.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat6;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat0.x = u_xlat0.x * u_xlat1.w;
					    SV_Target0.w = u_xlat0.x;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0.xyz = u_xlat1.xyz * u_xlat0.xyz + (-unity_FogColor.xyz);
					    u_xlat6 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat6 = (-u_xlat6) + 1.0;
					    u_xlat6 = u_xlat6 * _ProjectionParams.z;
					    u_xlat6 = max(u_xlat6, 0.0);
					    u_xlat6 = u_xlat6 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat6 = clamp(u_xlat6, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat6) * u_xlat0.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat6;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat0.x = u_xlat0.x * u_xlat1.w;
					    SV_Target0.w = u_xlat0.x;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0.xyz = u_xlat1.xyz * u_xlat0.xyz + (-unity_FogColor.xyz);
					    u_xlat6 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat6 = (-u_xlat6) + 1.0;
					    u_xlat6 = u_xlat6 * _ProjectionParams.z;
					    u_xlat6 = max(u_xlat6, 0.0);
					    u_xlat6 = u_xlat6 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat6 = clamp(u_xlat6, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat6) * u_xlat0.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendAlpha" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0.x = (-u_xlat0.x) + 1.0;
					    u_xlat0.x = u_xlat0.x * _ProjectionParams.z;
					    u_xlat0.x = max(u_xlat0.x, 0.0);
					    u_xlat0.x = u_xlat0.x * unity_FogParams.y;
					    u_xlat0.x = exp2((-u_xlat0.x));
					    u_xlat0.x = min(u_xlat0.x, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2.xyz = vs_COLOR0.xyz;
					    u_xlat2.xyz = u_xlat1.xyz * u_xlat2.xyz + (-unity_FogColor.xyz);
					    SV_Target0.xyz = u_xlat0.xxx * u_xlat2.xyz + unity_FogColor.xyz;
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = u_xlat0.x * vs_COLOR0.w;
					    u_xlat0.x = u_xlat0.x * u_xlat1.w;
					    SV_Target0.w = u_xlat0.x;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0.x = (-u_xlat0.x) + 1.0;
					    u_xlat0.x = u_xlat0.x * _ProjectionParams.z;
					    u_xlat0.x = max(u_xlat0.x, 0.0);
					    u_xlat0.x = u_xlat0.x * unity_FogParams.y;
					    u_xlat0.x = exp2((-u_xlat0.x));
					    u_xlat0.x = min(u_xlat0.x, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2.xyz = vs_COLOR0.xyz;
					    u_xlat2.xyz = u_xlat1.xyz * u_xlat2.xyz + (-unity_FogColor.xyz);
					    SV_Target0.xyz = u_xlat0.xxx * u_xlat2.xyz + unity_FogColor.xyz;
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = u_xlat0.x * vs_COLOR0.w;
					    u_xlat0.x = u_xlat0.x * u_xlat1.w;
					    SV_Target0.w = u_xlat0.x;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0.x = (-u_xlat0.x) + 1.0;
					    u_xlat0.x = u_xlat0.x * _ProjectionParams.z;
					    u_xlat0.x = max(u_xlat0.x, 0.0);
					    u_xlat0.x = u_xlat0.x * unity_FogParams.y;
					    u_xlat0.x = exp2((-u_xlat0.x));
					    u_xlat0.x = min(u_xlat0.x, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2.xyz = vs_COLOR0.xyz;
					    u_xlat2.xyz = u_xlat1.xyz * u_xlat2.xyz + (-unity_FogColor.xyz);
					    SV_Target0.xyz = u_xlat0.xxx * u_xlat2.xyz + unity_FogColor.xyz;
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = u_xlat0.x * vs_COLOR0.w;
					    u_xlat0.x = u_xlat0.x * u_xlat1.w;
					    SV_Target0.w = u_xlat0.x;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0.x = (-u_xlat0.x) + 1.0;
					    u_xlat0.x = u_xlat0.x * _ProjectionParams.z;
					    u_xlat0.x = max(u_xlat0.x, 0.0);
					    u_xlat0.x = u_xlat0.x * unity_FogParams.y;
					    u_xlat0.x = exp2((-u_xlat0.x));
					    u_xlat0.x = min(u_xlat0.x, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2.xyz = vs_COLOR0.xyz;
					    u_xlat2.xyz = u_xlat1.xyz * u_xlat2.xyz + (-unity_FogColor.xyz);
					    SV_Target0.xyz = u_xlat0.xxx * u_xlat2.xyz + unity_FogColor.xyz;
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = u_xlat0.x * vs_COLOR0.w;
					    u_xlat0.x = u_xlat0.x * u_xlat1.w;
					    SV_Target0.w = u_xlat0.x;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendAlpha" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0.x = (-u_xlat0.x) + 1.0;
					    u_xlat0.x = u_xlat0.x * _ProjectionParams.z;
					    u_xlat0.x = max(u_xlat0.x, 0.0);
					    u_xlat0.x = u_xlat0.x * unity_FogParams.x;
					    u_xlat0.x = u_xlat0.x * (-u_xlat0.x);
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2.xyz = vs_COLOR0.xyz;
					    u_xlat2.xyz = u_xlat1.xyz * u_xlat2.xyz + (-unity_FogColor.xyz);
					    SV_Target0.xyz = u_xlat0.xxx * u_xlat2.xyz + unity_FogColor.xyz;
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = u_xlat0.x * vs_COLOR0.w;
					    u_xlat0.x = u_xlat0.x * u_xlat1.w;
					    SV_Target0.w = u_xlat0.x;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0.x = (-u_xlat0.x) + 1.0;
					    u_xlat0.x = u_xlat0.x * _ProjectionParams.z;
					    u_xlat0.x = max(u_xlat0.x, 0.0);
					    u_xlat0.x = u_xlat0.x * unity_FogParams.x;
					    u_xlat0.x = u_xlat0.x * (-u_xlat0.x);
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2.xyz = vs_COLOR0.xyz;
					    u_xlat2.xyz = u_xlat1.xyz * u_xlat2.xyz + (-unity_FogColor.xyz);
					    SV_Target0.xyz = u_xlat0.xxx * u_xlat2.xyz + unity_FogColor.xyz;
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = u_xlat0.x * vs_COLOR0.w;
					    u_xlat0.x = u_xlat0.x * u_xlat1.w;
					    SV_Target0.w = u_xlat0.x;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0.x = (-u_xlat0.x) + 1.0;
					    u_xlat0.x = u_xlat0.x * _ProjectionParams.z;
					    u_xlat0.x = max(u_xlat0.x, 0.0);
					    u_xlat0.x = u_xlat0.x * unity_FogParams.x;
					    u_xlat0.x = u_xlat0.x * (-u_xlat0.x);
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2.xyz = vs_COLOR0.xyz;
					    u_xlat2.xyz = u_xlat1.xyz * u_xlat2.xyz + (-unity_FogColor.xyz);
					    SV_Target0.xyz = u_xlat0.xxx * u_xlat2.xyz + unity_FogColor.xyz;
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = u_xlat0.x * vs_COLOR0.w;
					    u_xlat0.x = u_xlat0.x * u_xlat1.w;
					    SV_Target0.w = u_xlat0.x;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0.x = (-u_xlat0.x) + 1.0;
					    u_xlat0.x = u_xlat0.x * _ProjectionParams.z;
					    u_xlat0.x = max(u_xlat0.x, 0.0);
					    u_xlat0.x = u_xlat0.x * unity_FogParams.x;
					    u_xlat0.x = u_xlat0.x * (-u_xlat0.x);
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2.xyz = vs_COLOR0.xyz;
					    u_xlat2.xyz = u_xlat1.xyz * u_xlat2.xyz + (-unity_FogColor.xyz);
					    SV_Target0.xyz = u_xlat0.xxx * u_xlat2.xyz + unity_FogColor.xyz;
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = u_xlat0.x * vs_COLOR0.w;
					    u_xlat0.x = u_xlat0.x * u_xlat1.w;
					    SV_Target0.w = u_xlat0.x;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendAlpha" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat0 = u_xlat0.wxyz * vs_COLOR0.wxyz;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.yzw;
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat0 = u_xlat0.wxyz * vs_COLOR0.wxyz;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.yzw;
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendAlpha" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[7];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0.wxyz * u_xlat1.wxyz;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.yzw;
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[6];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0.wxyz * u_xlat1.wxyz;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.yzw;
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendAlpha" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2.xyz = u_xlat1.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    u_xlat1.x = u_xlat1.w * vs_COLOR0.w;
					    u_xlat1.x = u_xlat1.x;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat1.x * vs_TEXCOORD4;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat2.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2.xyz = u_xlat1.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    u_xlat1.x = u_xlat1.w * vs_COLOR0.w;
					    u_xlat1.x = u_xlat1.x;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat1.x * vs_TEXCOORD4;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat2.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat6;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat0.x = u_xlat0.x * u_xlat1.w;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0.xyz = u_xlat1.xyz * u_xlat0.xyz + (-unity_FogColor.xyz);
					    u_xlat6 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat6 = (-u_xlat6) + 1.0;
					    u_xlat6 = u_xlat6 * _ProjectionParams.z;
					    u_xlat6 = max(u_xlat6, 0.0);
					    u_xlat6 = u_xlat6 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat6 = clamp(u_xlat6, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat6) * u_xlat0.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat6;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat0.x = u_xlat0.x * u_xlat1.w;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0.xyz = u_xlat1.xyz * u_xlat0.xyz + (-unity_FogColor.xyz);
					    u_xlat6 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat6 = (-u_xlat6) + 1.0;
					    u_xlat6 = u_xlat6 * _ProjectionParams.z;
					    u_xlat6 = max(u_xlat6, 0.0);
					    u_xlat6 = u_xlat6 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat6 = clamp(u_xlat6, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat6) * u_xlat0.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendAlpha" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2.xyz = u_xlat1.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    u_xlat1.x = u_xlat1.w * vs_COLOR0.w;
					    u_xlat1.x = u_xlat1.x;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat1.x * vs_TEXCOORD4;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat2.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2.xyz = u_xlat1.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    u_xlat1.x = u_xlat1.w * vs_COLOR0.w;
					    u_xlat1.x = u_xlat1.x;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat1.x * vs_TEXCOORD4;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat2.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat6;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat0.x = u_xlat0.x * u_xlat1.w;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0.xyz = u_xlat1.xyz * u_xlat0.xyz + (-unity_FogColor.xyz);
					    u_xlat6 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat6 = (-u_xlat6) + 1.0;
					    u_xlat6 = u_xlat6 * _ProjectionParams.z;
					    u_xlat6 = max(u_xlat6, 0.0);
					    u_xlat6 = u_xlat6 * unity_FogParams.y;
					    u_xlat6 = exp2((-u_xlat6));
					    u_xlat6 = min(u_xlat6, 1.0);
					    SV_Target0.xyz = vec3(u_xlat6) * u_xlat0.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat6;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat0.x = u_xlat0.x * u_xlat1.w;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0.xyz = u_xlat1.xyz * u_xlat0.xyz + (-unity_FogColor.xyz);
					    u_xlat6 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat6 = (-u_xlat6) + 1.0;
					    u_xlat6 = u_xlat6 * _ProjectionParams.z;
					    u_xlat6 = max(u_xlat6, 0.0);
					    u_xlat6 = u_xlat6 * unity_FogParams.y;
					    u_xlat6 = exp2((-u_xlat6));
					    u_xlat6 = min(u_xlat6, 1.0);
					    SV_Target0.xyz = vec3(u_xlat6) * u_xlat0.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendAlpha" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2.xyz = u_xlat1.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    u_xlat1.x = u_xlat1.w * vs_COLOR0.w;
					    u_xlat1.x = u_xlat1.x;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat1.x * vs_TEXCOORD4;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat2.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2.xyz = u_xlat1.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    u_xlat1.x = u_xlat1.w * vs_COLOR0.w;
					    u_xlat1.x = u_xlat1.x;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat1.x * vs_TEXCOORD4;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat2.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat6;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat0.x = u_xlat0.x * u_xlat1.w;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0.xyz = u_xlat1.xyz * u_xlat0.xyz + (-unity_FogColor.xyz);
					    u_xlat6 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat6 = (-u_xlat6) + 1.0;
					    u_xlat6 = u_xlat6 * _ProjectionParams.z;
					    u_xlat6 = max(u_xlat6, 0.0);
					    u_xlat6 = u_xlat6 * unity_FogParams.x;
					    u_xlat6 = u_xlat6 * (-u_xlat6);
					    u_xlat6 = exp2(u_xlat6);
					    SV_Target0.xyz = vec3(u_xlat6) * u_xlat0.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat6;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat0.x = u_xlat0.x * u_xlat1.w;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0.xyz = u_xlat1.xyz * u_xlat0.xyz + (-unity_FogColor.xyz);
					    u_xlat6 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat6 = (-u_xlat6) + 1.0;
					    u_xlat6 = u_xlat6 * _ProjectionParams.z;
					    u_xlat6 = max(u_xlat6, 0.0);
					    u_xlat6 = u_xlat6 * unity_FogParams.x;
					    u_xlat6 = u_xlat6 * (-u_xlat6);
					    u_xlat6 = exp2(u_xlat6);
					    SV_Target0.xyz = vec3(u_xlat6) * u_xlat0.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendAlpha" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[7];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0.wxyz * u_xlat1.wxyz;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.yzw;
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[6];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0.wxyz * u_xlat1.wxyz;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.yzw;
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendAlpha" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[7];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0.wxyz * u_xlat1.wxyz;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.yzw;
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[6];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0.wxyz * u_xlat1.wxyz;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.yzw;
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendAlpha" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat6;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat0.x = u_xlat0.x * u_xlat1.w;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0.xyz = u_xlat1.xyz * u_xlat0.xyz + (-unity_FogColor.xyz);
					    u_xlat6 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat6 = (-u_xlat6) + 1.0;
					    u_xlat6 = u_xlat6 * _ProjectionParams.z;
					    u_xlat6 = max(u_xlat6, 0.0);
					    u_xlat6 = u_xlat6 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat6 = clamp(u_xlat6, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat6) * u_xlat0.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat6;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat0.x = u_xlat0.x * u_xlat1.w;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0.xyz = u_xlat1.xyz * u_xlat0.xyz + (-unity_FogColor.xyz);
					    u_xlat6 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat6 = (-u_xlat6) + 1.0;
					    u_xlat6 = u_xlat6 * _ProjectionParams.z;
					    u_xlat6 = max(u_xlat6, 0.0);
					    u_xlat6 = u_xlat6 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat6 = clamp(u_xlat6, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat6) * u_xlat0.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat6;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat0.x = u_xlat0.x * u_xlat1.w;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0.xyz = u_xlat1.xyz * u_xlat0.xyz + (-unity_FogColor.xyz);
					    u_xlat6 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat6 = (-u_xlat6) + 1.0;
					    u_xlat6 = u_xlat6 * _ProjectionParams.z;
					    u_xlat6 = max(u_xlat6, 0.0);
					    u_xlat6 = u_xlat6 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat6 = clamp(u_xlat6, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat6) * u_xlat0.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat6;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat0.x = u_xlat0.x * u_xlat1.w;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0.xyz = u_xlat1.xyz * u_xlat0.xyz + (-unity_FogColor.xyz);
					    u_xlat6 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat6 = (-u_xlat6) + 1.0;
					    u_xlat6 = u_xlat6 * _ProjectionParams.z;
					    u_xlat6 = max(u_xlat6, 0.0);
					    u_xlat6 = u_xlat6 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat6 = clamp(u_xlat6, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat6) * u_xlat0.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendAlpha" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat6;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat0.x = u_xlat0.x * u_xlat1.w;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0.xyz = u_xlat1.xyz * u_xlat0.xyz + (-unity_FogColor.xyz);
					    u_xlat6 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat6 = (-u_xlat6) + 1.0;
					    u_xlat6 = u_xlat6 * _ProjectionParams.z;
					    u_xlat6 = max(u_xlat6, 0.0);
					    u_xlat6 = u_xlat6 * unity_FogParams.y;
					    u_xlat6 = exp2((-u_xlat6));
					    u_xlat6 = min(u_xlat6, 1.0);
					    SV_Target0.xyz = vec3(u_xlat6) * u_xlat0.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat6;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat0.x = u_xlat0.x * u_xlat1.w;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0.xyz = u_xlat1.xyz * u_xlat0.xyz + (-unity_FogColor.xyz);
					    u_xlat6 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat6 = (-u_xlat6) + 1.0;
					    u_xlat6 = u_xlat6 * _ProjectionParams.z;
					    u_xlat6 = max(u_xlat6, 0.0);
					    u_xlat6 = u_xlat6 * unity_FogParams.y;
					    u_xlat6 = exp2((-u_xlat6));
					    u_xlat6 = min(u_xlat6, 1.0);
					    SV_Target0.xyz = vec3(u_xlat6) * u_xlat0.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat6;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat0.x = u_xlat0.x * u_xlat1.w;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0.xyz = u_xlat1.xyz * u_xlat0.xyz + (-unity_FogColor.xyz);
					    u_xlat6 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat6 = (-u_xlat6) + 1.0;
					    u_xlat6 = u_xlat6 * _ProjectionParams.z;
					    u_xlat6 = max(u_xlat6, 0.0);
					    u_xlat6 = u_xlat6 * unity_FogParams.y;
					    u_xlat6 = exp2((-u_xlat6));
					    u_xlat6 = min(u_xlat6, 1.0);
					    SV_Target0.xyz = vec3(u_xlat6) * u_xlat0.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat6;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat0.x = u_xlat0.x * u_xlat1.w;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0.xyz = u_xlat1.xyz * u_xlat0.xyz + (-unity_FogColor.xyz);
					    u_xlat6 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat6 = (-u_xlat6) + 1.0;
					    u_xlat6 = u_xlat6 * _ProjectionParams.z;
					    u_xlat6 = max(u_xlat6, 0.0);
					    u_xlat6 = u_xlat6 * unity_FogParams.y;
					    u_xlat6 = exp2((-u_xlat6));
					    u_xlat6 = min(u_xlat6, 1.0);
					    SV_Target0.xyz = vec3(u_xlat6) * u_xlat0.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendAlpha" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat6;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat0.x = u_xlat0.x * u_xlat1.w;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0.xyz = u_xlat1.xyz * u_xlat0.xyz + (-unity_FogColor.xyz);
					    u_xlat6 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat6 = (-u_xlat6) + 1.0;
					    u_xlat6 = u_xlat6 * _ProjectionParams.z;
					    u_xlat6 = max(u_xlat6, 0.0);
					    u_xlat6 = u_xlat6 * unity_FogParams.x;
					    u_xlat6 = u_xlat6 * (-u_xlat6);
					    u_xlat6 = exp2(u_xlat6);
					    SV_Target0.xyz = vec3(u_xlat6) * u_xlat0.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat6;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat0.x = u_xlat0.x * u_xlat1.w;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0.xyz = u_xlat1.xyz * u_xlat0.xyz + (-unity_FogColor.xyz);
					    u_xlat6 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat6 = (-u_xlat6) + 1.0;
					    u_xlat6 = u_xlat6 * _ProjectionParams.z;
					    u_xlat6 = max(u_xlat6, 0.0);
					    u_xlat6 = u_xlat6 * unity_FogParams.x;
					    u_xlat6 = u_xlat6 * (-u_xlat6);
					    u_xlat6 = exp2(u_xlat6);
					    SV_Target0.xyz = vec3(u_xlat6) * u_xlat0.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat6;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat0.x = u_xlat0.x * u_xlat1.w;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0.xyz = u_xlat1.xyz * u_xlat0.xyz + (-unity_FogColor.xyz);
					    u_xlat6 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat6 = (-u_xlat6) + 1.0;
					    u_xlat6 = u_xlat6 * _ProjectionParams.z;
					    u_xlat6 = max(u_xlat6, 0.0);
					    u_xlat6 = u_xlat6 * unity_FogParams.x;
					    u_xlat6 = u_xlat6 * (-u_xlat6);
					    u_xlat6 = exp2(u_xlat6);
					    SV_Target0.xyz = vec3(u_xlat6) * u_xlat0.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat6;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat0.x = u_xlat0.x * u_xlat1.w;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0.xyz = u_xlat1.xyz * u_xlat0.xyz + (-unity_FogColor.xyz);
					    u_xlat6 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat6 = (-u_xlat6) + 1.0;
					    u_xlat6 = u_xlat6 * _ProjectionParams.z;
					    u_xlat6 = max(u_xlat6, 0.0);
					    u_xlat6 = u_xlat6 * unity_FogParams.x;
					    u_xlat6 = u_xlat6 * (-u_xlat6);
					    u_xlat6 = exp2(u_xlat6);
					    SV_Target0.xyz = vec3(u_xlat6) * u_xlat0.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendAlpha" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					float u_xlat1;
					bool u_xlatb1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1 = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat0.w = u_xlat0.w * u_xlat1;
					    u_xlat0 = u_xlat0 * vs_COLOR0;
					    SV_Target0.w = u_xlat0.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					float u_xlat1;
					bool u_xlatb1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1 = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat0.w = u_xlat0.w * u_xlat1;
					    u_xlat0 = u_xlat0 * vs_COLOR0;
					    SV_Target0.w = u_xlat0.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendAlpha" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[7];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					bool u_xlatb2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2 = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    SV_Target0.w = u_xlat0.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[6];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					bool u_xlatb2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2 = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    SV_Target0.w = u_xlat0.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendAlpha" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					float u_xlat1;
					bool u_xlatb1;
					float u_xlat6;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1 = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat6 = u_xlat0.w * u_xlat1;
					    u_xlat0.xyz = u_xlat0.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    u_xlat6 = u_xlat6 * vs_COLOR0.w;
					    SV_Target0.w = u_xlat6;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    u_xlat6 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat6 = (-u_xlat6) + 1.0;
					    u_xlat6 = u_xlat6 * _ProjectionParams.z;
					    u_xlat6 = max(u_xlat6, 0.0);
					    u_xlat6 = u_xlat6 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat6 = clamp(u_xlat6, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat6) * u_xlat0.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					float u_xlat1;
					bool u_xlatb1;
					float u_xlat6;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1 = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat6 = u_xlat0.w * u_xlat1;
					    u_xlat0.xyz = u_xlat0.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    u_xlat6 = u_xlat6 * vs_COLOR0.w;
					    SV_Target0.w = u_xlat6;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    u_xlat6 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat6 = (-u_xlat6) + 1.0;
					    u_xlat6 = u_xlat6 * _ProjectionParams.z;
					    u_xlat6 = max(u_xlat6, 0.0);
					    u_xlat6 = u_xlat6 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat6 = clamp(u_xlat6, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat6) * u_xlat0.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					bool u_xlatb2;
					float u_xlat6;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2 = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat2 = u_xlat1.w * u_xlat2;
					    u_xlat0.x = u_xlat0.x * u_xlat2;
					    SV_Target0.w = u_xlat0.x;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0.xyz = u_xlat1.xyz * u_xlat0.xyz + (-unity_FogColor.xyz);
					    u_xlat6 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat6 = (-u_xlat6) + 1.0;
					    u_xlat6 = u_xlat6 * _ProjectionParams.z;
					    u_xlat6 = max(u_xlat6, 0.0);
					    u_xlat6 = u_xlat6 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat6 = clamp(u_xlat6, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat6) * u_xlat0.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					bool u_xlatb2;
					float u_xlat6;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2 = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat2 = u_xlat1.w * u_xlat2;
					    u_xlat0.x = u_xlat0.x * u_xlat2;
					    SV_Target0.w = u_xlat0.x;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0.xyz = u_xlat1.xyz * u_xlat0.xyz + (-unity_FogColor.xyz);
					    u_xlat6 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat6 = (-u_xlat6) + 1.0;
					    u_xlat6 = u_xlat6 * _ProjectionParams.z;
					    u_xlat6 = max(u_xlat6, 0.0);
					    u_xlat6 = u_xlat6 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat6 = clamp(u_xlat6, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat6) * u_xlat0.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendAlpha" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2 = u_xlat1 + u_xlat1;
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1 = u_xlat2 * _TintColor;
					    u_xlat3.x = u_xlat3.x * u_xlat1.w;
					    u_xlat3.x = u_xlat3.x * vs_COLOR0.w;
					    SV_Target0.w = u_xlat3.x;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    u_xlat3.xyz = u_xlat1.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2 = u_xlat1 + u_xlat1;
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1 = u_xlat2 * _TintColor;
					    u_xlat3.x = u_xlat3.x * u_xlat1.w;
					    u_xlat3.x = u_xlat3.x * vs_COLOR0.w;
					    SV_Target0.w = u_xlat3.x;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    u_xlat3.xyz = u_xlat1.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					bool u_xlatb2;
					float u_xlat6;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2 = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat2 = u_xlat1.w * u_xlat2;
					    u_xlat0.x = u_xlat0.x * u_xlat2;
					    SV_Target0.w = u_xlat0.x;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0.xyz = u_xlat1.xyz * u_xlat0.xyz + (-unity_FogColor.xyz);
					    u_xlat6 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat6 = (-u_xlat6) + 1.0;
					    u_xlat6 = u_xlat6 * _ProjectionParams.z;
					    u_xlat6 = max(u_xlat6, 0.0);
					    u_xlat6 = u_xlat6 * unity_FogParams.y;
					    u_xlat6 = exp2((-u_xlat6));
					    u_xlat6 = min(u_xlat6, 1.0);
					    SV_Target0.xyz = vec3(u_xlat6) * u_xlat0.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					bool u_xlatb2;
					float u_xlat6;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2 = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat2 = u_xlat1.w * u_xlat2;
					    u_xlat0.x = u_xlat0.x * u_xlat2;
					    SV_Target0.w = u_xlat0.x;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0.xyz = u_xlat1.xyz * u_xlat0.xyz + (-unity_FogColor.xyz);
					    u_xlat6 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat6 = (-u_xlat6) + 1.0;
					    u_xlat6 = u_xlat6 * _ProjectionParams.z;
					    u_xlat6 = max(u_xlat6, 0.0);
					    u_xlat6 = u_xlat6 * unity_FogParams.y;
					    u_xlat6 = exp2((-u_xlat6));
					    u_xlat6 = min(u_xlat6, 1.0);
					    SV_Target0.xyz = vec3(u_xlat6) * u_xlat0.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendAlpha" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2 = u_xlat1 + u_xlat1;
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1 = u_xlat2 * _TintColor;
					    u_xlat3.x = u_xlat3.x * u_xlat1.w;
					    u_xlat3.x = u_xlat3.x * vs_COLOR0.w;
					    SV_Target0.w = u_xlat3.x;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    u_xlat3.xyz = u_xlat1.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2 = u_xlat1 + u_xlat1;
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1 = u_xlat2 * _TintColor;
					    u_xlat3.x = u_xlat3.x * u_xlat1.w;
					    u_xlat3.x = u_xlat3.x * vs_COLOR0.w;
					    SV_Target0.w = u_xlat3.x;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    u_xlat3.xyz = u_xlat1.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					bool u_xlatb2;
					float u_xlat6;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2 = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat2 = u_xlat1.w * u_xlat2;
					    u_xlat0.x = u_xlat0.x * u_xlat2;
					    SV_Target0.w = u_xlat0.x;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0.xyz = u_xlat1.xyz * u_xlat0.xyz + (-unity_FogColor.xyz);
					    u_xlat6 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat6 = (-u_xlat6) + 1.0;
					    u_xlat6 = u_xlat6 * _ProjectionParams.z;
					    u_xlat6 = max(u_xlat6, 0.0);
					    u_xlat6 = u_xlat6 * unity_FogParams.x;
					    u_xlat6 = u_xlat6 * (-u_xlat6);
					    u_xlat6 = exp2(u_xlat6);
					    SV_Target0.xyz = vec3(u_xlat6) * u_xlat0.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					bool u_xlatb2;
					float u_xlat6;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2 = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat2 = u_xlat1.w * u_xlat2;
					    u_xlat0.x = u_xlat0.x * u_xlat2;
					    SV_Target0.w = u_xlat0.x;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0.xyz = u_xlat1.xyz * u_xlat0.xyz + (-unity_FogColor.xyz);
					    u_xlat6 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat6 = (-u_xlat6) + 1.0;
					    u_xlat6 = u_xlat6 * _ProjectionParams.z;
					    u_xlat6 = max(u_xlat6, 0.0);
					    u_xlat6 = u_xlat6 * unity_FogParams.x;
					    u_xlat6 = u_xlat6 * (-u_xlat6);
					    u_xlat6 = exp2(u_xlat6);
					    SV_Target0.xyz = vec3(u_xlat6) * u_xlat0.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendAlpha" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[7];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					bool u_xlatb2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2 = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    SV_Target0.w = u_xlat0.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[6];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					bool u_xlatb2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2 = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    SV_Target0.w = u_xlat0.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendAlpha" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[7];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					bool u_xlatb2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2 = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    SV_Target0.w = u_xlat0.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[6];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					bool u_xlatb2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2 = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    SV_Target0.w = u_xlat0.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendAlpha" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					bool u_xlatb2;
					float u_xlat6;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2 = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat2 = u_xlat1.w * u_xlat2;
					    u_xlat0.x = u_xlat0.x * u_xlat2;
					    SV_Target0.w = u_xlat0.x;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0.xyz = u_xlat1.xyz * u_xlat0.xyz + (-unity_FogColor.xyz);
					    u_xlat6 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat6 = (-u_xlat6) + 1.0;
					    u_xlat6 = u_xlat6 * _ProjectionParams.z;
					    u_xlat6 = max(u_xlat6, 0.0);
					    u_xlat6 = u_xlat6 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat6 = clamp(u_xlat6, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat6) * u_xlat0.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					bool u_xlatb2;
					float u_xlat6;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2 = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat2 = u_xlat1.w * u_xlat2;
					    u_xlat0.x = u_xlat0.x * u_xlat2;
					    SV_Target0.w = u_xlat0.x;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0.xyz = u_xlat1.xyz * u_xlat0.xyz + (-unity_FogColor.xyz);
					    u_xlat6 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat6 = (-u_xlat6) + 1.0;
					    u_xlat6 = u_xlat6 * _ProjectionParams.z;
					    u_xlat6 = max(u_xlat6, 0.0);
					    u_xlat6 = u_xlat6 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat6 = clamp(u_xlat6, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat6) * u_xlat0.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					bool u_xlatb2;
					float u_xlat6;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2 = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat2 = u_xlat1.w * u_xlat2;
					    u_xlat0.x = u_xlat0.x * u_xlat2;
					    SV_Target0.w = u_xlat0.x;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0.xyz = u_xlat1.xyz * u_xlat0.xyz + (-unity_FogColor.xyz);
					    u_xlat6 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat6 = (-u_xlat6) + 1.0;
					    u_xlat6 = u_xlat6 * _ProjectionParams.z;
					    u_xlat6 = max(u_xlat6, 0.0);
					    u_xlat6 = u_xlat6 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat6 = clamp(u_xlat6, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat6) * u_xlat0.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					bool u_xlatb2;
					float u_xlat6;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2 = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat2 = u_xlat1.w * u_xlat2;
					    u_xlat0.x = u_xlat0.x * u_xlat2;
					    SV_Target0.w = u_xlat0.x;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0.xyz = u_xlat1.xyz * u_xlat0.xyz + (-unity_FogColor.xyz);
					    u_xlat6 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat6 = (-u_xlat6) + 1.0;
					    u_xlat6 = u_xlat6 * _ProjectionParams.z;
					    u_xlat6 = max(u_xlat6, 0.0);
					    u_xlat6 = u_xlat6 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat6 = clamp(u_xlat6, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat6) * u_xlat0.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendAlpha" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					bool u_xlatb2;
					float u_xlat6;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2 = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat2 = u_xlat1.w * u_xlat2;
					    u_xlat0.x = u_xlat0.x * u_xlat2;
					    SV_Target0.w = u_xlat0.x;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0.xyz = u_xlat1.xyz * u_xlat0.xyz + (-unity_FogColor.xyz);
					    u_xlat6 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat6 = (-u_xlat6) + 1.0;
					    u_xlat6 = u_xlat6 * _ProjectionParams.z;
					    u_xlat6 = max(u_xlat6, 0.0);
					    u_xlat6 = u_xlat6 * unity_FogParams.y;
					    u_xlat6 = exp2((-u_xlat6));
					    u_xlat6 = min(u_xlat6, 1.0);
					    SV_Target0.xyz = vec3(u_xlat6) * u_xlat0.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					bool u_xlatb2;
					float u_xlat6;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2 = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat2 = u_xlat1.w * u_xlat2;
					    u_xlat0.x = u_xlat0.x * u_xlat2;
					    SV_Target0.w = u_xlat0.x;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0.xyz = u_xlat1.xyz * u_xlat0.xyz + (-unity_FogColor.xyz);
					    u_xlat6 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat6 = (-u_xlat6) + 1.0;
					    u_xlat6 = u_xlat6 * _ProjectionParams.z;
					    u_xlat6 = max(u_xlat6, 0.0);
					    u_xlat6 = u_xlat6 * unity_FogParams.y;
					    u_xlat6 = exp2((-u_xlat6));
					    u_xlat6 = min(u_xlat6, 1.0);
					    SV_Target0.xyz = vec3(u_xlat6) * u_xlat0.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					bool u_xlatb2;
					float u_xlat6;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2 = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat2 = u_xlat1.w * u_xlat2;
					    u_xlat0.x = u_xlat0.x * u_xlat2;
					    SV_Target0.w = u_xlat0.x;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0.xyz = u_xlat1.xyz * u_xlat0.xyz + (-unity_FogColor.xyz);
					    u_xlat6 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat6 = (-u_xlat6) + 1.0;
					    u_xlat6 = u_xlat6 * _ProjectionParams.z;
					    u_xlat6 = max(u_xlat6, 0.0);
					    u_xlat6 = u_xlat6 * unity_FogParams.y;
					    u_xlat6 = exp2((-u_xlat6));
					    u_xlat6 = min(u_xlat6, 1.0);
					    SV_Target0.xyz = vec3(u_xlat6) * u_xlat0.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					bool u_xlatb2;
					float u_xlat6;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2 = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat2 = u_xlat1.w * u_xlat2;
					    u_xlat0.x = u_xlat0.x * u_xlat2;
					    SV_Target0.w = u_xlat0.x;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0.xyz = u_xlat1.xyz * u_xlat0.xyz + (-unity_FogColor.xyz);
					    u_xlat6 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat6 = (-u_xlat6) + 1.0;
					    u_xlat6 = u_xlat6 * _ProjectionParams.z;
					    u_xlat6 = max(u_xlat6, 0.0);
					    u_xlat6 = u_xlat6 * unity_FogParams.y;
					    u_xlat6 = exp2((-u_xlat6));
					    u_xlat6 = min(u_xlat6, 1.0);
					    SV_Target0.xyz = vec3(u_xlat6) * u_xlat0.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendAlpha" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					bool u_xlatb2;
					float u_xlat6;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2 = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat2 = u_xlat1.w * u_xlat2;
					    u_xlat0.x = u_xlat0.x * u_xlat2;
					    SV_Target0.w = u_xlat0.x;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0.xyz = u_xlat1.xyz * u_xlat0.xyz + (-unity_FogColor.xyz);
					    u_xlat6 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat6 = (-u_xlat6) + 1.0;
					    u_xlat6 = u_xlat6 * _ProjectionParams.z;
					    u_xlat6 = max(u_xlat6, 0.0);
					    u_xlat6 = u_xlat6 * unity_FogParams.x;
					    u_xlat6 = u_xlat6 * (-u_xlat6);
					    u_xlat6 = exp2(u_xlat6);
					    SV_Target0.xyz = vec3(u_xlat6) * u_xlat0.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					bool u_xlatb2;
					float u_xlat6;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2 = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat2 = u_xlat1.w * u_xlat2;
					    u_xlat0.x = u_xlat0.x * u_xlat2;
					    SV_Target0.w = u_xlat0.x;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0.xyz = u_xlat1.xyz * u_xlat0.xyz + (-unity_FogColor.xyz);
					    u_xlat6 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat6 = (-u_xlat6) + 1.0;
					    u_xlat6 = u_xlat6 * _ProjectionParams.z;
					    u_xlat6 = max(u_xlat6, 0.0);
					    u_xlat6 = u_xlat6 * unity_FogParams.x;
					    u_xlat6 = u_xlat6 * (-u_xlat6);
					    u_xlat6 = exp2(u_xlat6);
					    SV_Target0.xyz = vec3(u_xlat6) * u_xlat0.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					bool u_xlatb2;
					float u_xlat6;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2 = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat2 = u_xlat1.w * u_xlat2;
					    u_xlat0.x = u_xlat0.x * u_xlat2;
					    SV_Target0.w = u_xlat0.x;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0.xyz = u_xlat1.xyz * u_xlat0.xyz + (-unity_FogColor.xyz);
					    u_xlat6 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat6 = (-u_xlat6) + 1.0;
					    u_xlat6 = u_xlat6 * _ProjectionParams.z;
					    u_xlat6 = max(u_xlat6, 0.0);
					    u_xlat6 = u_xlat6 * unity_FogParams.x;
					    u_xlat6 = u_xlat6 * (-u_xlat6);
					    u_xlat6 = exp2(u_xlat6);
					    SV_Target0.xyz = vec3(u_xlat6) * u_xlat0.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					bool u_xlatb2;
					float u_xlat6;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2 = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat2 = u_xlat1.w * u_xlat2;
					    u_xlat0.x = u_xlat0.x * u_xlat2;
					    SV_Target0.w = u_xlat0.x;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0.xyz = u_xlat1.xyz * u_xlat0.xyz + (-unity_FogColor.xyz);
					    u_xlat6 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat6 = (-u_xlat6) + 1.0;
					    u_xlat6 = u_xlat6 * _ProjectionParams.z;
					    u_xlat6 = max(u_xlat6, 0.0);
					    u_xlat6 = u_xlat6 * unity_FogParams.x;
					    u_xlat6 = u_xlat6 * (-u_xlat6);
					    u_xlat6 = exp2(u_xlat6);
					    SV_Target0.xyz = vec3(u_xlat6) * u_xlat0.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendAlpha" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					float u_xlat1;
					bool u_xlatb1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1 = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat0.w = u_xlat0.w * u_xlat1;
					    u_xlat0 = u_xlat0.wxyz * vs_COLOR0.wxyz;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.yzw;
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					float u_xlat1;
					bool u_xlatb1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1 = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat0.w = u_xlat0.w * u_xlat1;
					    u_xlat0 = u_xlat0.wxyz * vs_COLOR0.wxyz;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.yzw;
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendAlpha" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[7];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					bool u_xlatb2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2 = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0.wxyz * u_xlat1.wxyz;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.yzw;
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[6];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					bool u_xlatb2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2 = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0.wxyz * u_xlat1.wxyz;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.yzw;
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendAlpha" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					float u_xlat1;
					bool u_xlatb1;
					float u_xlat6;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1 = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat6 = u_xlat0.w * u_xlat1;
					    u_xlat0.xyz = u_xlat0.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    u_xlat1 = u_xlat6 * vs_COLOR0.w;
					    u_xlat1 = u_xlat1;
					    u_xlat1 = clamp(u_xlat1, 0.0, 1.0);
					    SV_Target0.w = u_xlat1 * vs_TEXCOORD4;
					    u_xlat6 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat6 = (-u_xlat6) + 1.0;
					    u_xlat6 = u_xlat6 * _ProjectionParams.z;
					    u_xlat6 = max(u_xlat6, 0.0);
					    u_xlat6 = u_xlat6 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat6 = clamp(u_xlat6, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat6) * u_xlat0.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					float u_xlat1;
					bool u_xlatb1;
					float u_xlat6;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1 = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat6 = u_xlat0.w * u_xlat1;
					    u_xlat0.xyz = u_xlat0.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    u_xlat1 = u_xlat6 * vs_COLOR0.w;
					    u_xlat1 = u_xlat1;
					    u_xlat1 = clamp(u_xlat1, 0.0, 1.0);
					    SV_Target0.w = u_xlat1 * vs_TEXCOORD4;
					    u_xlat6 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat6 = (-u_xlat6) + 1.0;
					    u_xlat6 = u_xlat6 * _ProjectionParams.z;
					    u_xlat6 = max(u_xlat6, 0.0);
					    u_xlat6 = u_xlat6 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat6 = clamp(u_xlat6, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat6) * u_xlat0.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					bool u_xlatb2;
					float u_xlat6;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2 = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat2 = u_xlat1.w * u_xlat2;
					    u_xlat0.x = u_xlat0.x * u_xlat2;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0.xyz = u_xlat1.xyz * u_xlat0.xyz + (-unity_FogColor.xyz);
					    u_xlat6 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat6 = (-u_xlat6) + 1.0;
					    u_xlat6 = u_xlat6 * _ProjectionParams.z;
					    u_xlat6 = max(u_xlat6, 0.0);
					    u_xlat6 = u_xlat6 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat6 = clamp(u_xlat6, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat6) * u_xlat0.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					bool u_xlatb2;
					float u_xlat6;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2 = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat2 = u_xlat1.w * u_xlat2;
					    u_xlat0.x = u_xlat0.x * u_xlat2;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0.xyz = u_xlat1.xyz * u_xlat0.xyz + (-unity_FogColor.xyz);
					    u_xlat6 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat6 = (-u_xlat6) + 1.0;
					    u_xlat6 = u_xlat6 * _ProjectionParams.z;
					    u_xlat6 = max(u_xlat6, 0.0);
					    u_xlat6 = u_xlat6 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat6 = clamp(u_xlat6, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat6) * u_xlat0.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendAlpha" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					float u_xlat1;
					bool u_xlatb1;
					float u_xlat6;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1 = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat6 = u_xlat0.w * u_xlat1;
					    u_xlat0.xyz = u_xlat0.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    u_xlat1 = u_xlat6 * vs_COLOR0.w;
					    u_xlat1 = u_xlat1;
					    u_xlat1 = clamp(u_xlat1, 0.0, 1.0);
					    SV_Target0.w = u_xlat1 * vs_TEXCOORD4;
					    u_xlat6 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat6 = (-u_xlat6) + 1.0;
					    u_xlat6 = u_xlat6 * _ProjectionParams.z;
					    u_xlat6 = max(u_xlat6, 0.0);
					    u_xlat6 = u_xlat6 * unity_FogParams.y;
					    u_xlat6 = exp2((-u_xlat6));
					    u_xlat6 = min(u_xlat6, 1.0);
					    SV_Target0.xyz = vec3(u_xlat6) * u_xlat0.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					float u_xlat1;
					bool u_xlatb1;
					float u_xlat6;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1 = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat6 = u_xlat0.w * u_xlat1;
					    u_xlat0.xyz = u_xlat0.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    u_xlat1 = u_xlat6 * vs_COLOR0.w;
					    u_xlat1 = u_xlat1;
					    u_xlat1 = clamp(u_xlat1, 0.0, 1.0);
					    SV_Target0.w = u_xlat1 * vs_TEXCOORD4;
					    u_xlat6 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat6 = (-u_xlat6) + 1.0;
					    u_xlat6 = u_xlat6 * _ProjectionParams.z;
					    u_xlat6 = max(u_xlat6, 0.0);
					    u_xlat6 = u_xlat6 * unity_FogParams.y;
					    u_xlat6 = exp2((-u_xlat6));
					    u_xlat6 = min(u_xlat6, 1.0);
					    SV_Target0.xyz = vec3(u_xlat6) * u_xlat0.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					bool u_xlatb2;
					float u_xlat6;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2 = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat2 = u_xlat1.w * u_xlat2;
					    u_xlat0.x = u_xlat0.x * u_xlat2;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0.xyz = u_xlat1.xyz * u_xlat0.xyz + (-unity_FogColor.xyz);
					    u_xlat6 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat6 = (-u_xlat6) + 1.0;
					    u_xlat6 = u_xlat6 * _ProjectionParams.z;
					    u_xlat6 = max(u_xlat6, 0.0);
					    u_xlat6 = u_xlat6 * unity_FogParams.y;
					    u_xlat6 = exp2((-u_xlat6));
					    u_xlat6 = min(u_xlat6, 1.0);
					    SV_Target0.xyz = vec3(u_xlat6) * u_xlat0.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					bool u_xlatb2;
					float u_xlat6;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2 = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat2 = u_xlat1.w * u_xlat2;
					    u_xlat0.x = u_xlat0.x * u_xlat2;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0.xyz = u_xlat1.xyz * u_xlat0.xyz + (-unity_FogColor.xyz);
					    u_xlat6 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat6 = (-u_xlat6) + 1.0;
					    u_xlat6 = u_xlat6 * _ProjectionParams.z;
					    u_xlat6 = max(u_xlat6, 0.0);
					    u_xlat6 = u_xlat6 * unity_FogParams.y;
					    u_xlat6 = exp2((-u_xlat6));
					    u_xlat6 = min(u_xlat6, 1.0);
					    SV_Target0.xyz = vec3(u_xlat6) * u_xlat0.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendAlpha" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					float u_xlat1;
					bool u_xlatb1;
					float u_xlat6;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1 = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat6 = u_xlat0.w * u_xlat1;
					    u_xlat0.xyz = u_xlat0.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    u_xlat1 = u_xlat6 * vs_COLOR0.w;
					    u_xlat1 = u_xlat1;
					    u_xlat1 = clamp(u_xlat1, 0.0, 1.0);
					    SV_Target0.w = u_xlat1 * vs_TEXCOORD4;
					    u_xlat6 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat6 = (-u_xlat6) + 1.0;
					    u_xlat6 = u_xlat6 * _ProjectionParams.z;
					    u_xlat6 = max(u_xlat6, 0.0);
					    u_xlat6 = u_xlat6 * unity_FogParams.x;
					    u_xlat6 = u_xlat6 * (-u_xlat6);
					    u_xlat6 = exp2(u_xlat6);
					    SV_Target0.xyz = vec3(u_xlat6) * u_xlat0.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					float u_xlat1;
					bool u_xlatb1;
					float u_xlat6;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1 = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat6 = u_xlat0.w * u_xlat1;
					    u_xlat0.xyz = u_xlat0.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    u_xlat1 = u_xlat6 * vs_COLOR0.w;
					    u_xlat1 = u_xlat1;
					    u_xlat1 = clamp(u_xlat1, 0.0, 1.0);
					    SV_Target0.w = u_xlat1 * vs_TEXCOORD4;
					    u_xlat6 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat6 = (-u_xlat6) + 1.0;
					    u_xlat6 = u_xlat6 * _ProjectionParams.z;
					    u_xlat6 = max(u_xlat6, 0.0);
					    u_xlat6 = u_xlat6 * unity_FogParams.x;
					    u_xlat6 = u_xlat6 * (-u_xlat6);
					    u_xlat6 = exp2(u_xlat6);
					    SV_Target0.xyz = vec3(u_xlat6) * u_xlat0.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					bool u_xlatb2;
					float u_xlat6;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2 = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat2 = u_xlat1.w * u_xlat2;
					    u_xlat0.x = u_xlat0.x * u_xlat2;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0.xyz = u_xlat1.xyz * u_xlat0.xyz + (-unity_FogColor.xyz);
					    u_xlat6 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat6 = (-u_xlat6) + 1.0;
					    u_xlat6 = u_xlat6 * _ProjectionParams.z;
					    u_xlat6 = max(u_xlat6, 0.0);
					    u_xlat6 = u_xlat6 * unity_FogParams.x;
					    u_xlat6 = u_xlat6 * (-u_xlat6);
					    u_xlat6 = exp2(u_xlat6);
					    SV_Target0.xyz = vec3(u_xlat6) * u_xlat0.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					bool u_xlatb2;
					float u_xlat6;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2 = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat2 = u_xlat1.w * u_xlat2;
					    u_xlat0.x = u_xlat0.x * u_xlat2;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0.xyz = u_xlat1.xyz * u_xlat0.xyz + (-unity_FogColor.xyz);
					    u_xlat6 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat6 = (-u_xlat6) + 1.0;
					    u_xlat6 = u_xlat6 * _ProjectionParams.z;
					    u_xlat6 = max(u_xlat6, 0.0);
					    u_xlat6 = u_xlat6 * unity_FogParams.x;
					    u_xlat6 = u_xlat6 * (-u_xlat6);
					    u_xlat6 = exp2(u_xlat6);
					    SV_Target0.xyz = vec3(u_xlat6) * u_xlat0.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendAlpha" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[7];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					bool u_xlatb2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2 = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0.wxyz * u_xlat1.wxyz;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.yzw;
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[6];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					bool u_xlatb2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2 = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0.wxyz * u_xlat1.wxyz;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.yzw;
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendAlpha" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[7];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					bool u_xlatb2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2 = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0.wxyz * u_xlat1.wxyz;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.yzw;
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[6];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					bool u_xlatb2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2 = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0.wxyz * u_xlat1.wxyz;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.yzw;
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendAlpha" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					bool u_xlatb2;
					float u_xlat6;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2 = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat2 = u_xlat1.w * u_xlat2;
					    u_xlat0.x = u_xlat0.x * u_xlat2;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0.xyz = u_xlat1.xyz * u_xlat0.xyz + (-unity_FogColor.xyz);
					    u_xlat6 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat6 = (-u_xlat6) + 1.0;
					    u_xlat6 = u_xlat6 * _ProjectionParams.z;
					    u_xlat6 = max(u_xlat6, 0.0);
					    u_xlat6 = u_xlat6 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat6 = clamp(u_xlat6, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat6) * u_xlat0.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					bool u_xlatb2;
					float u_xlat6;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2 = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat2 = u_xlat1.w * u_xlat2;
					    u_xlat0.x = u_xlat0.x * u_xlat2;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0.xyz = u_xlat1.xyz * u_xlat0.xyz + (-unity_FogColor.xyz);
					    u_xlat6 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat6 = (-u_xlat6) + 1.0;
					    u_xlat6 = u_xlat6 * _ProjectionParams.z;
					    u_xlat6 = max(u_xlat6, 0.0);
					    u_xlat6 = u_xlat6 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat6 = clamp(u_xlat6, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat6) * u_xlat0.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					bool u_xlatb2;
					float u_xlat6;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2 = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat2 = u_xlat1.w * u_xlat2;
					    u_xlat0.x = u_xlat0.x * u_xlat2;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0.xyz = u_xlat1.xyz * u_xlat0.xyz + (-unity_FogColor.xyz);
					    u_xlat6 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat6 = (-u_xlat6) + 1.0;
					    u_xlat6 = u_xlat6 * _ProjectionParams.z;
					    u_xlat6 = max(u_xlat6, 0.0);
					    u_xlat6 = u_xlat6 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat6 = clamp(u_xlat6, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat6) * u_xlat0.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					bool u_xlatb2;
					float u_xlat6;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2 = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat2 = u_xlat1.w * u_xlat2;
					    u_xlat0.x = u_xlat0.x * u_xlat2;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0.xyz = u_xlat1.xyz * u_xlat0.xyz + (-unity_FogColor.xyz);
					    u_xlat6 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat6 = (-u_xlat6) + 1.0;
					    u_xlat6 = u_xlat6 * _ProjectionParams.z;
					    u_xlat6 = max(u_xlat6, 0.0);
					    u_xlat6 = u_xlat6 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat6 = clamp(u_xlat6, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat6) * u_xlat0.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendAlpha" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					bool u_xlatb2;
					float u_xlat6;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2 = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat2 = u_xlat1.w * u_xlat2;
					    u_xlat0.x = u_xlat0.x * u_xlat2;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0.xyz = u_xlat1.xyz * u_xlat0.xyz + (-unity_FogColor.xyz);
					    u_xlat6 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat6 = (-u_xlat6) + 1.0;
					    u_xlat6 = u_xlat6 * _ProjectionParams.z;
					    u_xlat6 = max(u_xlat6, 0.0);
					    u_xlat6 = u_xlat6 * unity_FogParams.y;
					    u_xlat6 = exp2((-u_xlat6));
					    u_xlat6 = min(u_xlat6, 1.0);
					    SV_Target0.xyz = vec3(u_xlat6) * u_xlat0.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					bool u_xlatb2;
					float u_xlat6;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2 = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat2 = u_xlat1.w * u_xlat2;
					    u_xlat0.x = u_xlat0.x * u_xlat2;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0.xyz = u_xlat1.xyz * u_xlat0.xyz + (-unity_FogColor.xyz);
					    u_xlat6 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat6 = (-u_xlat6) + 1.0;
					    u_xlat6 = u_xlat6 * _ProjectionParams.z;
					    u_xlat6 = max(u_xlat6, 0.0);
					    u_xlat6 = u_xlat6 * unity_FogParams.y;
					    u_xlat6 = exp2((-u_xlat6));
					    u_xlat6 = min(u_xlat6, 1.0);
					    SV_Target0.xyz = vec3(u_xlat6) * u_xlat0.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					bool u_xlatb2;
					float u_xlat6;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2 = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat2 = u_xlat1.w * u_xlat2;
					    u_xlat0.x = u_xlat0.x * u_xlat2;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0.xyz = u_xlat1.xyz * u_xlat0.xyz + (-unity_FogColor.xyz);
					    u_xlat6 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat6 = (-u_xlat6) + 1.0;
					    u_xlat6 = u_xlat6 * _ProjectionParams.z;
					    u_xlat6 = max(u_xlat6, 0.0);
					    u_xlat6 = u_xlat6 * unity_FogParams.y;
					    u_xlat6 = exp2((-u_xlat6));
					    u_xlat6 = min(u_xlat6, 1.0);
					    SV_Target0.xyz = vec3(u_xlat6) * u_xlat0.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					bool u_xlatb2;
					float u_xlat6;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2 = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat2 = u_xlat1.w * u_xlat2;
					    u_xlat0.x = u_xlat0.x * u_xlat2;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0.xyz = u_xlat1.xyz * u_xlat0.xyz + (-unity_FogColor.xyz);
					    u_xlat6 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat6 = (-u_xlat6) + 1.0;
					    u_xlat6 = u_xlat6 * _ProjectionParams.z;
					    u_xlat6 = max(u_xlat6, 0.0);
					    u_xlat6 = u_xlat6 * unity_FogParams.y;
					    u_xlat6 = exp2((-u_xlat6));
					    u_xlat6 = min(u_xlat6, 1.0);
					    SV_Target0.xyz = vec3(u_xlat6) * u_xlat0.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendAlpha" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					bool u_xlatb2;
					float u_xlat6;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2 = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat2 = u_xlat1.w * u_xlat2;
					    u_xlat0.x = u_xlat0.x * u_xlat2;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0.xyz = u_xlat1.xyz * u_xlat0.xyz + (-unity_FogColor.xyz);
					    u_xlat6 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat6 = (-u_xlat6) + 1.0;
					    u_xlat6 = u_xlat6 * _ProjectionParams.z;
					    u_xlat6 = max(u_xlat6, 0.0);
					    u_xlat6 = u_xlat6 * unity_FogParams.x;
					    u_xlat6 = u_xlat6 * (-u_xlat6);
					    u_xlat6 = exp2(u_xlat6);
					    SV_Target0.xyz = vec3(u_xlat6) * u_xlat0.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					bool u_xlatb2;
					float u_xlat6;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2 = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat2 = u_xlat1.w * u_xlat2;
					    u_xlat0.x = u_xlat0.x * u_xlat2;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0.xyz = u_xlat1.xyz * u_xlat0.xyz + (-unity_FogColor.xyz);
					    u_xlat6 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat6 = (-u_xlat6) + 1.0;
					    u_xlat6 = u_xlat6 * _ProjectionParams.z;
					    u_xlat6 = max(u_xlat6, 0.0);
					    u_xlat6 = u_xlat6 * unity_FogParams.x;
					    u_xlat6 = u_xlat6 * (-u_xlat6);
					    u_xlat6 = exp2(u_xlat6);
					    SV_Target0.xyz = vec3(u_xlat6) * u_xlat0.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					bool u_xlatb2;
					float u_xlat6;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2 = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat2 = u_xlat1.w * u_xlat2;
					    u_xlat0.x = u_xlat0.x * u_xlat2;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0.xyz = u_xlat1.xyz * u_xlat0.xyz + (-unity_FogColor.xyz);
					    u_xlat6 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat6 = (-u_xlat6) + 1.0;
					    u_xlat6 = u_xlat6 * _ProjectionParams.z;
					    u_xlat6 = max(u_xlat6, 0.0);
					    u_xlat6 = u_xlat6 * unity_FogParams.x;
					    u_xlat6 = u_xlat6 * (-u_xlat6);
					    u_xlat6 = exp2(u_xlat6);
					    SV_Target0.xyz = vec3(u_xlat6) * u_xlat0.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					bool u_xlatb2;
					float u_xlat6;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2 = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat2 = u_xlat1.w * u_xlat2;
					    u_xlat0.x = u_xlat0.x * u_xlat2;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0.xyz = u_xlat1.xyz * u_xlat0.xyz + (-unity_FogColor.xyz);
					    u_xlat6 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat6 = (-u_xlat6) + 1.0;
					    u_xlat6 = u_xlat6 * _ProjectionParams.z;
					    u_xlat6 = max(u_xlat6, 0.0);
					    u_xlat6 = u_xlat6 * unity_FogParams.x;
					    u_xlat6 = u_xlat6 * (-u_xlat6);
					    u_xlat6 = exp2(u_xlat6);
					    SV_Target0.xyz = vec3(u_xlat6) * u_xlat0.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendAlpha" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    SV_Target0.xyz = u_xlat2.xyz * vs_COLOR0.xyz;
					    SV_Target0.w = u_xlatb0 ? 1.0 : float(0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    SV_Target0.xyz = u_xlat2.xyz * vs_COLOR0.xyz;
					    SV_Target0.w = u_xlatb0 ? 1.0 : float(0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendAlpha" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[7];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb0 = u_xlat1.w>=u_xlat0.x;
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    SV_Target0.xyz = u_xlat2.xyz * vs_COLOR0.xyz;
					    SV_Target0.w = u_xlatb0 ? 1.0 : float(0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[6];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb0 = u_xlat1.w>=u_xlat0.x;
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    SV_Target0.xyz = u_xlat2.xyz * vs_COLOR0.xyz;
					    SV_Target0.w = u_xlatb0 ? 1.0 : float(0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendAlpha" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat2.xyz + unity_FogColor.xyz;
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    SV_Target0.w = u_xlatb0 ? 1.0 : float(0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat2.xyz + unity_FogColor.xyz;
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    SV_Target0.w = u_xlatb0 ? 1.0 : float(0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb0 = u_xlat1.w>=u_xlat0.x;
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    SV_Target0.w = u_xlatb0 ? 1.0 : float(0.0);
					    u_xlat0.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0.x = (-u_xlat0.x) + 1.0;
					    u_xlat0.x = u_xlat0.x * _ProjectionParams.z;
					    u_xlat0.x = max(u_xlat0.x, 0.0);
					    u_xlat0.x = u_xlat0.x * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.xxx * u_xlat2.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb0 = u_xlat1.w>=u_xlat0.x;
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    SV_Target0.w = u_xlatb0 ? 1.0 : float(0.0);
					    u_xlat0.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0.x = (-u_xlat0.x) + 1.0;
					    u_xlat0.x = u_xlat0.x * _ProjectionParams.z;
					    u_xlat0.x = max(u_xlat0.x, 0.0);
					    u_xlat0.x = u_xlat0.x * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.xxx * u_xlat2.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendAlpha" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat2.xyz + unity_FogColor.xyz;
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    SV_Target0.w = u_xlatb0 ? 1.0 : float(0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat2.xyz + unity_FogColor.xyz;
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    SV_Target0.w = u_xlatb0 ? 1.0 : float(0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0.x = (-u_xlat0.x) + 1.0;
					    u_xlat0.x = u_xlat0.x * _ProjectionParams.z;
					    u_xlat0.x = max(u_xlat0.x, 0.0);
					    u_xlat0.x = u_xlat0.x * unity_FogParams.y;
					    u_xlat0.x = exp2((-u_xlat0.x));
					    u_xlat0.x = min(u_xlat0.x, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    SV_Target0.xyz = u_xlat0.xxx * u_xlat2.xyz + unity_FogColor.xyz;
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0.x;
					    SV_Target0.w = u_xlatb0 ? 1.0 : float(0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0.x = (-u_xlat0.x) + 1.0;
					    u_xlat0.x = u_xlat0.x * _ProjectionParams.z;
					    u_xlat0.x = max(u_xlat0.x, 0.0);
					    u_xlat0.x = u_xlat0.x * unity_FogParams.y;
					    u_xlat0.x = exp2((-u_xlat0.x));
					    u_xlat0.x = min(u_xlat0.x, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    SV_Target0.xyz = u_xlat0.xxx * u_xlat2.xyz + unity_FogColor.xyz;
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0.x;
					    SV_Target0.w = u_xlatb0 ? 1.0 : float(0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendAlpha" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat2.xyz + unity_FogColor.xyz;
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    SV_Target0.w = u_xlatb0 ? 1.0 : float(0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat2.xyz + unity_FogColor.xyz;
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    SV_Target0.w = u_xlatb0 ? 1.0 : float(0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0.x = (-u_xlat0.x) + 1.0;
					    u_xlat0.x = u_xlat0.x * _ProjectionParams.z;
					    u_xlat0.x = max(u_xlat0.x, 0.0);
					    u_xlat0.x = u_xlat0.x * unity_FogParams.x;
					    u_xlat0.x = u_xlat0.x * (-u_xlat0.x);
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    SV_Target0.xyz = u_xlat0.xxx * u_xlat2.xyz + unity_FogColor.xyz;
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0.x;
					    SV_Target0.w = u_xlatb0 ? 1.0 : float(0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0.x = (-u_xlat0.x) + 1.0;
					    u_xlat0.x = u_xlat0.x * _ProjectionParams.z;
					    u_xlat0.x = max(u_xlat0.x, 0.0);
					    u_xlat0.x = u_xlat0.x * unity_FogParams.x;
					    u_xlat0.x = u_xlat0.x * (-u_xlat0.x);
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    SV_Target0.xyz = u_xlat0.xxx * u_xlat2.xyz + unity_FogColor.xyz;
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0.x;
					    SV_Target0.w = u_xlatb0 ? 1.0 : float(0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendAlpha" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[7];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb0 = u_xlat1.w>=u_xlat0.x;
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    SV_Target0.xyz = u_xlat2.xyz * vs_COLOR0.xyz;
					    SV_Target0.w = u_xlatb0 ? 1.0 : float(0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[6];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb0 = u_xlat1.w>=u_xlat0.x;
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    SV_Target0.xyz = u_xlat2.xyz * vs_COLOR0.xyz;
					    SV_Target0.w = u_xlatb0 ? 1.0 : float(0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendAlpha" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[7];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb0 = u_xlat1.w>=u_xlat0.x;
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    SV_Target0.xyz = u_xlat2.xyz * vs_COLOR0.xyz;
					    SV_Target0.w = u_xlatb0 ? 1.0 : float(0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[6];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb0 = u_xlat1.w>=u_xlat0.x;
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    SV_Target0.xyz = u_xlat2.xyz * vs_COLOR0.xyz;
					    SV_Target0.w = u_xlatb0 ? 1.0 : float(0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendAlpha" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb0 = u_xlat1.w>=u_xlat0.x;
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    SV_Target0.w = u_xlatb0 ? 1.0 : float(0.0);
					    u_xlat0.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0.x = (-u_xlat0.x) + 1.0;
					    u_xlat0.x = u_xlat0.x * _ProjectionParams.z;
					    u_xlat0.x = max(u_xlat0.x, 0.0);
					    u_xlat0.x = u_xlat0.x * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.xxx * u_xlat2.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb0 = u_xlat1.w>=u_xlat0.x;
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    SV_Target0.w = u_xlatb0 ? 1.0 : float(0.0);
					    u_xlat0.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0.x = (-u_xlat0.x) + 1.0;
					    u_xlat0.x = u_xlat0.x * _ProjectionParams.z;
					    u_xlat0.x = max(u_xlat0.x, 0.0);
					    u_xlat0.x = u_xlat0.x * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.xxx * u_xlat2.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb0 = u_xlat1.w>=u_xlat0.x;
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    SV_Target0.w = u_xlatb0 ? 1.0 : float(0.0);
					    u_xlat0.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0.x = (-u_xlat0.x) + 1.0;
					    u_xlat0.x = u_xlat0.x * _ProjectionParams.z;
					    u_xlat0.x = max(u_xlat0.x, 0.0);
					    u_xlat0.x = u_xlat0.x * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.xxx * u_xlat2.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb0 = u_xlat1.w>=u_xlat0.x;
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    SV_Target0.w = u_xlatb0 ? 1.0 : float(0.0);
					    u_xlat0.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0.x = (-u_xlat0.x) + 1.0;
					    u_xlat0.x = u_xlat0.x * _ProjectionParams.z;
					    u_xlat0.x = max(u_xlat0.x, 0.0);
					    u_xlat0.x = u_xlat0.x * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.xxx * u_xlat2.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendAlpha" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0.x = (-u_xlat0.x) + 1.0;
					    u_xlat0.x = u_xlat0.x * _ProjectionParams.z;
					    u_xlat0.x = max(u_xlat0.x, 0.0);
					    u_xlat0.x = u_xlat0.x * unity_FogParams.y;
					    u_xlat0.x = exp2((-u_xlat0.x));
					    u_xlat0.x = min(u_xlat0.x, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    SV_Target0.xyz = u_xlat0.xxx * u_xlat2.xyz + unity_FogColor.xyz;
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0.x;
					    SV_Target0.w = u_xlatb0 ? 1.0 : float(0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0.x = (-u_xlat0.x) + 1.0;
					    u_xlat0.x = u_xlat0.x * _ProjectionParams.z;
					    u_xlat0.x = max(u_xlat0.x, 0.0);
					    u_xlat0.x = u_xlat0.x * unity_FogParams.y;
					    u_xlat0.x = exp2((-u_xlat0.x));
					    u_xlat0.x = min(u_xlat0.x, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    SV_Target0.xyz = u_xlat0.xxx * u_xlat2.xyz + unity_FogColor.xyz;
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0.x;
					    SV_Target0.w = u_xlatb0 ? 1.0 : float(0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0.x = (-u_xlat0.x) + 1.0;
					    u_xlat0.x = u_xlat0.x * _ProjectionParams.z;
					    u_xlat0.x = max(u_xlat0.x, 0.0);
					    u_xlat0.x = u_xlat0.x * unity_FogParams.y;
					    u_xlat0.x = exp2((-u_xlat0.x));
					    u_xlat0.x = min(u_xlat0.x, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    SV_Target0.xyz = u_xlat0.xxx * u_xlat2.xyz + unity_FogColor.xyz;
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0.x;
					    SV_Target0.w = u_xlatb0 ? 1.0 : float(0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0.x = (-u_xlat0.x) + 1.0;
					    u_xlat0.x = u_xlat0.x * _ProjectionParams.z;
					    u_xlat0.x = max(u_xlat0.x, 0.0);
					    u_xlat0.x = u_xlat0.x * unity_FogParams.y;
					    u_xlat0.x = exp2((-u_xlat0.x));
					    u_xlat0.x = min(u_xlat0.x, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    SV_Target0.xyz = u_xlat0.xxx * u_xlat2.xyz + unity_FogColor.xyz;
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0.x;
					    SV_Target0.w = u_xlatb0 ? 1.0 : float(0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendAlpha" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0.x = (-u_xlat0.x) + 1.0;
					    u_xlat0.x = u_xlat0.x * _ProjectionParams.z;
					    u_xlat0.x = max(u_xlat0.x, 0.0);
					    u_xlat0.x = u_xlat0.x * unity_FogParams.x;
					    u_xlat0.x = u_xlat0.x * (-u_xlat0.x);
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    SV_Target0.xyz = u_xlat0.xxx * u_xlat2.xyz + unity_FogColor.xyz;
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0.x;
					    SV_Target0.w = u_xlatb0 ? 1.0 : float(0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0.x = (-u_xlat0.x) + 1.0;
					    u_xlat0.x = u_xlat0.x * _ProjectionParams.z;
					    u_xlat0.x = max(u_xlat0.x, 0.0);
					    u_xlat0.x = u_xlat0.x * unity_FogParams.x;
					    u_xlat0.x = u_xlat0.x * (-u_xlat0.x);
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    SV_Target0.xyz = u_xlat0.xxx * u_xlat2.xyz + unity_FogColor.xyz;
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0.x;
					    SV_Target0.w = u_xlatb0 ? 1.0 : float(0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0.x = (-u_xlat0.x) + 1.0;
					    u_xlat0.x = u_xlat0.x * _ProjectionParams.z;
					    u_xlat0.x = max(u_xlat0.x, 0.0);
					    u_xlat0.x = u_xlat0.x * unity_FogParams.x;
					    u_xlat0.x = u_xlat0.x * (-u_xlat0.x);
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    SV_Target0.xyz = u_xlat0.xxx * u_xlat2.xyz + unity_FogColor.xyz;
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0.x;
					    SV_Target0.w = u_xlatb0 ? 1.0 : float(0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0.x = (-u_xlat0.x) + 1.0;
					    u_xlat0.x = u_xlat0.x * _ProjectionParams.z;
					    u_xlat0.x = max(u_xlat0.x, 0.0);
					    u_xlat0.x = u_xlat0.x * unity_FogParams.x;
					    u_xlat0.x = u_xlat0.x * (-u_xlat0.x);
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    SV_Target0.xyz = u_xlat0.xxx * u_xlat2.xyz + unity_FogColor.xyz;
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0.x;
					    SV_Target0.w = u_xlatb0 ? 1.0 : float(0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendAlpha" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    SV_Target0.xyz = u_xlat2.xyz * vs_COLOR0.xyz;
					    u_xlat0 = u_xlatb0 ? 1.0 : float(0.0);
					    SV_Target0.w = u_xlat0 * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    SV_Target0.xyz = u_xlat2.xyz * vs_COLOR0.xyz;
					    u_xlat0 = u_xlatb0 ? 1.0 : float(0.0);
					    SV_Target0.w = u_xlat0 * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendAlpha" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[7];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb0 = u_xlat1.w>=u_xlat0.x;
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    SV_Target0.xyz = u_xlat2.xyz * vs_COLOR0.xyz;
					    u_xlat0.x = u_xlatb0 ? 1.0 : float(0.0);
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[6];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb0 = u_xlat1.w>=u_xlat0.x;
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    SV_Target0.xyz = u_xlat2.xyz * vs_COLOR0.xyz;
					    u_xlat0.x = u_xlatb0 ? 1.0 : float(0.0);
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendAlpha" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat2.xyz + unity_FogColor.xyz;
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    u_xlat0 = u_xlatb0 ? 1.0 : float(0.0);
					    SV_Target0.w = u_xlat0 * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat2.xyz + unity_FogColor.xyz;
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    u_xlat0 = u_xlatb0 ? 1.0 : float(0.0);
					    SV_Target0.w = u_xlat0 * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb0 = u_xlat1.w>=u_xlat0.x;
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    u_xlat0.x = u_xlatb0 ? 1.0 : float(0.0);
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    u_xlat0.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0.x = (-u_xlat0.x) + 1.0;
					    u_xlat0.x = u_xlat0.x * _ProjectionParams.z;
					    u_xlat0.x = max(u_xlat0.x, 0.0);
					    u_xlat0.x = u_xlat0.x * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.xxx * u_xlat2.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb0 = u_xlat1.w>=u_xlat0.x;
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    u_xlat0.x = u_xlatb0 ? 1.0 : float(0.0);
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    u_xlat0.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0.x = (-u_xlat0.x) + 1.0;
					    u_xlat0.x = u_xlat0.x * _ProjectionParams.z;
					    u_xlat0.x = max(u_xlat0.x, 0.0);
					    u_xlat0.x = u_xlat0.x * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.xxx * u_xlat2.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendAlpha" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat2.xyz + unity_FogColor.xyz;
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    u_xlat0 = u_xlatb0 ? 1.0 : float(0.0);
					    SV_Target0.w = u_xlat0 * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat2.xyz + unity_FogColor.xyz;
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    u_xlat0 = u_xlatb0 ? 1.0 : float(0.0);
					    SV_Target0.w = u_xlat0 * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb0 = u_xlat1.w>=u_xlat0.x;
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    u_xlat0.x = u_xlatb0 ? 1.0 : float(0.0);
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    u_xlat0.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0.x = (-u_xlat0.x) + 1.0;
					    u_xlat0.x = u_xlat0.x * _ProjectionParams.z;
					    u_xlat0.x = max(u_xlat0.x, 0.0);
					    u_xlat0.x = u_xlat0.x * unity_FogParams.y;
					    u_xlat0.x = exp2((-u_xlat0.x));
					    u_xlat0.x = min(u_xlat0.x, 1.0);
					    SV_Target0.xyz = u_xlat0.xxx * u_xlat2.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb0 = u_xlat1.w>=u_xlat0.x;
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    u_xlat0.x = u_xlatb0 ? 1.0 : float(0.0);
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    u_xlat0.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0.x = (-u_xlat0.x) + 1.0;
					    u_xlat0.x = u_xlat0.x * _ProjectionParams.z;
					    u_xlat0.x = max(u_xlat0.x, 0.0);
					    u_xlat0.x = u_xlat0.x * unity_FogParams.y;
					    u_xlat0.x = exp2((-u_xlat0.x));
					    u_xlat0.x = min(u_xlat0.x, 1.0);
					    SV_Target0.xyz = u_xlat0.xxx * u_xlat2.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendAlpha" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat2.xyz + unity_FogColor.xyz;
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    u_xlat0 = u_xlatb0 ? 1.0 : float(0.0);
					    SV_Target0.w = u_xlat0 * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat2.xyz + unity_FogColor.xyz;
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    u_xlat0 = u_xlatb0 ? 1.0 : float(0.0);
					    SV_Target0.w = u_xlat0 * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb0 = u_xlat1.w>=u_xlat0.x;
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    u_xlat0.x = u_xlatb0 ? 1.0 : float(0.0);
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    u_xlat0.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0.x = (-u_xlat0.x) + 1.0;
					    u_xlat0.x = u_xlat0.x * _ProjectionParams.z;
					    u_xlat0.x = max(u_xlat0.x, 0.0);
					    u_xlat0.x = u_xlat0.x * unity_FogParams.x;
					    u_xlat0.x = u_xlat0.x * (-u_xlat0.x);
					    u_xlat0.x = exp2(u_xlat0.x);
					    SV_Target0.xyz = u_xlat0.xxx * u_xlat2.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb0 = u_xlat1.w>=u_xlat0.x;
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    u_xlat0.x = u_xlatb0 ? 1.0 : float(0.0);
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    u_xlat0.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0.x = (-u_xlat0.x) + 1.0;
					    u_xlat0.x = u_xlat0.x * _ProjectionParams.z;
					    u_xlat0.x = max(u_xlat0.x, 0.0);
					    u_xlat0.x = u_xlat0.x * unity_FogParams.x;
					    u_xlat0.x = u_xlat0.x * (-u_xlat0.x);
					    u_xlat0.x = exp2(u_xlat0.x);
					    SV_Target0.xyz = u_xlat0.xxx * u_xlat2.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendAlpha" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[7];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb0 = u_xlat1.w>=u_xlat0.x;
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    SV_Target0.xyz = u_xlat2.xyz * vs_COLOR0.xyz;
					    u_xlat0.x = u_xlatb0 ? 1.0 : float(0.0);
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[6];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb0 = u_xlat1.w>=u_xlat0.x;
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    SV_Target0.xyz = u_xlat2.xyz * vs_COLOR0.xyz;
					    u_xlat0.x = u_xlatb0 ? 1.0 : float(0.0);
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendAlpha" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[7];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb0 = u_xlat1.w>=u_xlat0.x;
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    SV_Target0.xyz = u_xlat2.xyz * vs_COLOR0.xyz;
					    u_xlat0.x = u_xlatb0 ? 1.0 : float(0.0);
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[6];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb0 = u_xlat1.w>=u_xlat0.x;
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    SV_Target0.xyz = u_xlat2.xyz * vs_COLOR0.xyz;
					    u_xlat0.x = u_xlatb0 ? 1.0 : float(0.0);
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendAlpha" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb0 = u_xlat1.w>=u_xlat0.x;
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    u_xlat0.x = u_xlatb0 ? 1.0 : float(0.0);
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    u_xlat0.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0.x = (-u_xlat0.x) + 1.0;
					    u_xlat0.x = u_xlat0.x * _ProjectionParams.z;
					    u_xlat0.x = max(u_xlat0.x, 0.0);
					    u_xlat0.x = u_xlat0.x * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.xxx * u_xlat2.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb0 = u_xlat1.w>=u_xlat0.x;
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    u_xlat0.x = u_xlatb0 ? 1.0 : float(0.0);
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    u_xlat0.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0.x = (-u_xlat0.x) + 1.0;
					    u_xlat0.x = u_xlat0.x * _ProjectionParams.z;
					    u_xlat0.x = max(u_xlat0.x, 0.0);
					    u_xlat0.x = u_xlat0.x * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.xxx * u_xlat2.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb0 = u_xlat1.w>=u_xlat0.x;
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    u_xlat0.x = u_xlatb0 ? 1.0 : float(0.0);
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    u_xlat0.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0.x = (-u_xlat0.x) + 1.0;
					    u_xlat0.x = u_xlat0.x * _ProjectionParams.z;
					    u_xlat0.x = max(u_xlat0.x, 0.0);
					    u_xlat0.x = u_xlat0.x * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.xxx * u_xlat2.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb0 = u_xlat1.w>=u_xlat0.x;
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    u_xlat0.x = u_xlatb0 ? 1.0 : float(0.0);
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    u_xlat0.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0.x = (-u_xlat0.x) + 1.0;
					    u_xlat0.x = u_xlat0.x * _ProjectionParams.z;
					    u_xlat0.x = max(u_xlat0.x, 0.0);
					    u_xlat0.x = u_xlat0.x * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.xxx * u_xlat2.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendAlpha" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb0 = u_xlat1.w>=u_xlat0.x;
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    u_xlat0.x = u_xlatb0 ? 1.0 : float(0.0);
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    u_xlat0.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0.x = (-u_xlat0.x) + 1.0;
					    u_xlat0.x = u_xlat0.x * _ProjectionParams.z;
					    u_xlat0.x = max(u_xlat0.x, 0.0);
					    u_xlat0.x = u_xlat0.x * unity_FogParams.y;
					    u_xlat0.x = exp2((-u_xlat0.x));
					    u_xlat0.x = min(u_xlat0.x, 1.0);
					    SV_Target0.xyz = u_xlat0.xxx * u_xlat2.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb0 = u_xlat1.w>=u_xlat0.x;
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    u_xlat0.x = u_xlatb0 ? 1.0 : float(0.0);
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    u_xlat0.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0.x = (-u_xlat0.x) + 1.0;
					    u_xlat0.x = u_xlat0.x * _ProjectionParams.z;
					    u_xlat0.x = max(u_xlat0.x, 0.0);
					    u_xlat0.x = u_xlat0.x * unity_FogParams.y;
					    u_xlat0.x = exp2((-u_xlat0.x));
					    u_xlat0.x = min(u_xlat0.x, 1.0);
					    SV_Target0.xyz = u_xlat0.xxx * u_xlat2.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb0 = u_xlat1.w>=u_xlat0.x;
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    u_xlat0.x = u_xlatb0 ? 1.0 : float(0.0);
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    u_xlat0.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0.x = (-u_xlat0.x) + 1.0;
					    u_xlat0.x = u_xlat0.x * _ProjectionParams.z;
					    u_xlat0.x = max(u_xlat0.x, 0.0);
					    u_xlat0.x = u_xlat0.x * unity_FogParams.y;
					    u_xlat0.x = exp2((-u_xlat0.x));
					    u_xlat0.x = min(u_xlat0.x, 1.0);
					    SV_Target0.xyz = u_xlat0.xxx * u_xlat2.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb0 = u_xlat1.w>=u_xlat0.x;
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    u_xlat0.x = u_xlatb0 ? 1.0 : float(0.0);
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    u_xlat0.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0.x = (-u_xlat0.x) + 1.0;
					    u_xlat0.x = u_xlat0.x * _ProjectionParams.z;
					    u_xlat0.x = max(u_xlat0.x, 0.0);
					    u_xlat0.x = u_xlat0.x * unity_FogParams.y;
					    u_xlat0.x = exp2((-u_xlat0.x));
					    u_xlat0.x = min(u_xlat0.x, 1.0);
					    SV_Target0.xyz = u_xlat0.xxx * u_xlat2.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendAlpha" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb0 = u_xlat1.w>=u_xlat0.x;
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    u_xlat0.x = u_xlatb0 ? 1.0 : float(0.0);
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    u_xlat0.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0.x = (-u_xlat0.x) + 1.0;
					    u_xlat0.x = u_xlat0.x * _ProjectionParams.z;
					    u_xlat0.x = max(u_xlat0.x, 0.0);
					    u_xlat0.x = u_xlat0.x * unity_FogParams.x;
					    u_xlat0.x = u_xlat0.x * (-u_xlat0.x);
					    u_xlat0.x = exp2(u_xlat0.x);
					    SV_Target0.xyz = u_xlat0.xxx * u_xlat2.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb0 = u_xlat1.w>=u_xlat0.x;
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    u_xlat0.x = u_xlatb0 ? 1.0 : float(0.0);
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    u_xlat0.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0.x = (-u_xlat0.x) + 1.0;
					    u_xlat0.x = u_xlat0.x * _ProjectionParams.z;
					    u_xlat0.x = max(u_xlat0.x, 0.0);
					    u_xlat0.x = u_xlat0.x * unity_FogParams.x;
					    u_xlat0.x = u_xlat0.x * (-u_xlat0.x);
					    u_xlat0.x = exp2(u_xlat0.x);
					    SV_Target0.xyz = u_xlat0.xxx * u_xlat2.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb0 = u_xlat1.w>=u_xlat0.x;
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    u_xlat0.x = u_xlatb0 ? 1.0 : float(0.0);
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    u_xlat0.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0.x = (-u_xlat0.x) + 1.0;
					    u_xlat0.x = u_xlat0.x * _ProjectionParams.z;
					    u_xlat0.x = max(u_xlat0.x, 0.0);
					    u_xlat0.x = u_xlat0.x * unity_FogParams.x;
					    u_xlat0.x = u_xlat0.x * (-u_xlat0.x);
					    u_xlat0.x = exp2(u_xlat0.x);
					    SV_Target0.xyz = u_xlat0.xxx * u_xlat2.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb0 = u_xlat1.w>=u_xlat0.x;
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    u_xlat0.x = u_xlatb0 ? 1.0 : float(0.0);
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    u_xlat0.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0.x = (-u_xlat0.x) + 1.0;
					    u_xlat0.x = u_xlat0.x * _ProjectionParams.z;
					    u_xlat0.x = max(u_xlat0.x, 0.0);
					    u_xlat0.x = u_xlat0.x * unity_FogParams.x;
					    u_xlat0.x = u_xlat0.x * (-u_xlat0.x);
					    u_xlat0.x = exp2(u_xlat0.x);
					    SV_Target0.xyz = u_xlat0.xxx * u_xlat2.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendAlpha" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat0 = u_xlat0 * vs_COLOR0;
					    SV_Target0.w = u_xlat0.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat0 = u_xlat0 * vs_COLOR0;
					    SV_Target0.w = u_xlat0.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendAlpha" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat0 = u_xlat0 * vs_COLOR0;
					    SV_Target0.w = u_xlat0.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat0 = u_xlat0 * vs_COLOR0;
					    SV_Target0.w = u_xlat0.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendAlpha" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.xyz = u_xlat1.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    u_xlat1.x = u_xlat1.w * vs_COLOR0.w;
					    SV_Target0.w = u_xlat1.x;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.xyz = u_xlat1.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    u_xlat1.x = u_xlat1.w * vs_COLOR0.w;
					    SV_Target0.w = u_xlat1.x;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.xyz = u_xlat1.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    u_xlat1.x = u_xlat1.w * vs_COLOR0.w;
					    SV_Target0.w = u_xlat1.x;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.xyz = u_xlat1.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    u_xlat1.x = u_xlat1.w * vs_COLOR0.w;
					    SV_Target0.w = u_xlat1.x;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendAlpha" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.xyz = u_xlat1.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    u_xlat1.x = u_xlat1.w * vs_COLOR0.w;
					    SV_Target0.w = u_xlat1.x;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.xyz = u_xlat1.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    u_xlat1.x = u_xlat1.w * vs_COLOR0.w;
					    SV_Target0.w = u_xlat1.x;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.xyz = u_xlat1.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    u_xlat1.x = u_xlat1.w * vs_COLOR0.w;
					    SV_Target0.w = u_xlat1.x;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.xyz = u_xlat1.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    u_xlat1.x = u_xlat1.w * vs_COLOR0.w;
					    SV_Target0.w = u_xlat1.x;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendAlpha" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.xyz = u_xlat1.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    u_xlat1.x = u_xlat1.w * vs_COLOR0.w;
					    SV_Target0.w = u_xlat1.x;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.xyz = u_xlat1.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    u_xlat1.x = u_xlat1.w * vs_COLOR0.w;
					    SV_Target0.w = u_xlat1.x;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.xyz = u_xlat1.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    u_xlat1.x = u_xlat1.w * vs_COLOR0.w;
					    SV_Target0.w = u_xlat1.x;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.xyz = u_xlat1.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    u_xlat1.x = u_xlat1.w * vs_COLOR0.w;
					    SV_Target0.w = u_xlat1.x;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendAlpha" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat0 = u_xlat0 * vs_COLOR0;
					    SV_Target0.w = u_xlat0.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat0 = u_xlat0 * vs_COLOR0;
					    SV_Target0.w = u_xlat0.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendAlpha" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat0 = u_xlat0 * vs_COLOR0;
					    SV_Target0.w = u_xlat0.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat0 = u_xlat0 * vs_COLOR0;
					    SV_Target0.w = u_xlat0.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendAlpha" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.xyz = u_xlat1.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    u_xlat1.x = u_xlat1.w * vs_COLOR0.w;
					    SV_Target0.w = u_xlat1.x;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.xyz = u_xlat1.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    u_xlat1.x = u_xlat1.w * vs_COLOR0.w;
					    SV_Target0.w = u_xlat1.x;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.xyz = u_xlat1.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    u_xlat1.x = u_xlat1.w * vs_COLOR0.w;
					    SV_Target0.w = u_xlat1.x;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.xyz = u_xlat1.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    u_xlat1.x = u_xlat1.w * vs_COLOR0.w;
					    SV_Target0.w = u_xlat1.x;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendAlpha" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.xyz = u_xlat1.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    u_xlat1.x = u_xlat1.w * vs_COLOR0.w;
					    SV_Target0.w = u_xlat1.x;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.xyz = u_xlat1.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    u_xlat1.x = u_xlat1.w * vs_COLOR0.w;
					    SV_Target0.w = u_xlat1.x;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.xyz = u_xlat1.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    u_xlat1.x = u_xlat1.w * vs_COLOR0.w;
					    SV_Target0.w = u_xlat1.x;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.xyz = u_xlat1.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    u_xlat1.x = u_xlat1.w * vs_COLOR0.w;
					    SV_Target0.w = u_xlat1.x;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendAlpha" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.xyz = u_xlat1.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    u_xlat1.x = u_xlat1.w * vs_COLOR0.w;
					    SV_Target0.w = u_xlat1.x;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.xyz = u_xlat1.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    u_xlat1.x = u_xlat1.w * vs_COLOR0.w;
					    SV_Target0.w = u_xlat1.x;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.xyz = u_xlat1.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    u_xlat1.x = u_xlat1.w * vs_COLOR0.w;
					    SV_Target0.w = u_xlat1.x;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.xyz = u_xlat1.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    u_xlat1.x = u_xlat1.w * vs_COLOR0.w;
					    SV_Target0.w = u_xlat1.x;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendAlpha" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat0 = u_xlat0.wxyz * vs_COLOR0.wxyz;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.yzw;
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat0 = u_xlat0.wxyz * vs_COLOR0.wxyz;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.yzw;
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendAlpha" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat0 = u_xlat0.wxyz * vs_COLOR0.wxyz;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.yzw;
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat0 = u_xlat0.wxyz * vs_COLOR0.wxyz;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.yzw;
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendAlpha" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.xyz = u_xlat1.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    u_xlat1.x = u_xlat1.w * vs_COLOR0.w;
					    u_xlat1.x = u_xlat1.x;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat1.x * vs_TEXCOORD4;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.xyz = u_xlat1.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    u_xlat1.x = u_xlat1.w * vs_COLOR0.w;
					    u_xlat1.x = u_xlat1.x;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat1.x * vs_TEXCOORD4;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.xyz = u_xlat1.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    u_xlat1.x = u_xlat1.w * vs_COLOR0.w;
					    u_xlat1.x = u_xlat1.x;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat1.x * vs_TEXCOORD4;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.xyz = u_xlat1.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    u_xlat1.x = u_xlat1.w * vs_COLOR0.w;
					    u_xlat1.x = u_xlat1.x;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat1.x * vs_TEXCOORD4;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendAlpha" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.xyz = u_xlat1.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    u_xlat1.x = u_xlat1.w * vs_COLOR0.w;
					    u_xlat1.x = u_xlat1.x;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat1.x * vs_TEXCOORD4;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.xyz = u_xlat1.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    u_xlat1.x = u_xlat1.w * vs_COLOR0.w;
					    u_xlat1.x = u_xlat1.x;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat1.x * vs_TEXCOORD4;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.xyz = u_xlat1.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    u_xlat1.x = u_xlat1.w * vs_COLOR0.w;
					    u_xlat1.x = u_xlat1.x;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat1.x * vs_TEXCOORD4;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.xyz = u_xlat1.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    u_xlat1.x = u_xlat1.w * vs_COLOR0.w;
					    u_xlat1.x = u_xlat1.x;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat1.x * vs_TEXCOORD4;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendAlpha" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.xyz = u_xlat1.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    u_xlat1.x = u_xlat1.w * vs_COLOR0.w;
					    u_xlat1.x = u_xlat1.x;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat1.x * vs_TEXCOORD4;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.xyz = u_xlat1.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    u_xlat1.x = u_xlat1.w * vs_COLOR0.w;
					    u_xlat1.x = u_xlat1.x;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat1.x * vs_TEXCOORD4;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.xyz = u_xlat1.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    u_xlat1.x = u_xlat1.w * vs_COLOR0.w;
					    u_xlat1.x = u_xlat1.x;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat1.x * vs_TEXCOORD4;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.xyz = u_xlat1.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    u_xlat1.x = u_xlat1.w * vs_COLOR0.w;
					    u_xlat1.x = u_xlat1.x;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat1.x * vs_TEXCOORD4;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendAlpha" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat0 = u_xlat0.wxyz * vs_COLOR0.wxyz;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.yzw;
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat0 = u_xlat0.wxyz * vs_COLOR0.wxyz;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.yzw;
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendAlpha" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat0 = u_xlat0.wxyz * vs_COLOR0.wxyz;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.yzw;
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat0 = u_xlat0.wxyz * vs_COLOR0.wxyz;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.yzw;
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendAlpha" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.xyz = u_xlat1.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    u_xlat1.x = u_xlat1.w * vs_COLOR0.w;
					    u_xlat1.x = u_xlat1.x;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat1.x * vs_TEXCOORD4;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.xyz = u_xlat1.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    u_xlat1.x = u_xlat1.w * vs_COLOR0.w;
					    u_xlat1.x = u_xlat1.x;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat1.x * vs_TEXCOORD4;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.xyz = u_xlat1.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    u_xlat1.x = u_xlat1.w * vs_COLOR0.w;
					    u_xlat1.x = u_xlat1.x;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat1.x * vs_TEXCOORD4;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.xyz = u_xlat1.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    u_xlat1.x = u_xlat1.w * vs_COLOR0.w;
					    u_xlat1.x = u_xlat1.x;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat1.x * vs_TEXCOORD4;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendAlpha" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.xyz = u_xlat1.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    u_xlat1.x = u_xlat1.w * vs_COLOR0.w;
					    u_xlat1.x = u_xlat1.x;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat1.x * vs_TEXCOORD4;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.xyz = u_xlat1.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    u_xlat1.x = u_xlat1.w * vs_COLOR0.w;
					    u_xlat1.x = u_xlat1.x;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat1.x * vs_TEXCOORD4;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.xyz = u_xlat1.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    u_xlat1.x = u_xlat1.w * vs_COLOR0.w;
					    u_xlat1.x = u_xlat1.x;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat1.x * vs_TEXCOORD4;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.xyz = u_xlat1.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    u_xlat1.x = u_xlat1.w * vs_COLOR0.w;
					    u_xlat1.x = u_xlat1.x;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat1.x * vs_TEXCOORD4;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendAlpha" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.xyz = u_xlat1.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    u_xlat1.x = u_xlat1.w * vs_COLOR0.w;
					    u_xlat1.x = u_xlat1.x;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat1.x * vs_TEXCOORD4;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.xyz = u_xlat1.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    u_xlat1.x = u_xlat1.w * vs_COLOR0.w;
					    u_xlat1.x = u_xlat1.x;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat1.x * vs_TEXCOORD4;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.xyz = u_xlat1.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    u_xlat1.x = u_xlat1.w * vs_COLOR0.w;
					    u_xlat1.x = u_xlat1.x;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat1.x * vs_TEXCOORD4;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.xyz = u_xlat1.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    u_xlat1.x = u_xlat1.w * vs_COLOR0.w;
					    u_xlat1.x = u_xlat1.x;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat1.x * vs_TEXCOORD4;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendAlpha" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					bool u_xlatb1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1.x = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat0.w = u_xlat0.w * u_xlat1.x;
					    u_xlat0 = u_xlat0 * vs_COLOR0;
					    SV_Target0.w = u_xlat0.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					bool u_xlatb1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1.x = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat0.w = u_xlat0.w * u_xlat1.x;
					    u_xlat0 = u_xlat0 * vs_COLOR0;
					    SV_Target0.w = u_xlat0.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendAlpha" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					bool u_xlatb1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1.x = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat0.w = u_xlat0.w * u_xlat1.x;
					    u_xlat0 = u_xlat0 * vs_COLOR0;
					    SV_Target0.w = u_xlat0.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					bool u_xlatb1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1.x = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat0.w = u_xlat0.w * u_xlat1.x;
					    u_xlat0 = u_xlat0 * vs_COLOR0;
					    SV_Target0.w = u_xlat0.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendAlpha" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					bool u_xlatb1;
					float u_xlat6;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1.x = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat6 = u_xlat0.w * u_xlat1.x;
					    u_xlat0.xyz = u_xlat0.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    u_xlat6 = u_xlat6 * vs_COLOR0.w;
					    SV_Target0.w = u_xlat6;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    u_xlat6 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat6 = (-u_xlat6) + 1.0;
					    u_xlat6 = u_xlat6 * _ProjectionParams.z;
					    u_xlat6 = max(u_xlat6, 0.0);
					    u_xlat6 = u_xlat6 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat6 = clamp(u_xlat6, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat6) * u_xlat0.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					bool u_xlatb1;
					float u_xlat6;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1.x = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat6 = u_xlat0.w * u_xlat1.x;
					    u_xlat0.xyz = u_xlat0.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    u_xlat6 = u_xlat6 * vs_COLOR0.w;
					    SV_Target0.w = u_xlat6;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    u_xlat6 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat6 = (-u_xlat6) + 1.0;
					    u_xlat6 = u_xlat6 * _ProjectionParams.z;
					    u_xlat6 = max(u_xlat6, 0.0);
					    u_xlat6 = u_xlat6 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat6 = clamp(u_xlat6, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat6) * u_xlat0.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					bool u_xlatb1;
					float u_xlat6;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1.x = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat6 = u_xlat0.w * u_xlat1.x;
					    u_xlat0.xyz = u_xlat0.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    u_xlat6 = u_xlat6 * vs_COLOR0.w;
					    SV_Target0.w = u_xlat6;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    u_xlat6 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat6 = (-u_xlat6) + 1.0;
					    u_xlat6 = u_xlat6 * _ProjectionParams.z;
					    u_xlat6 = max(u_xlat6, 0.0);
					    u_xlat6 = u_xlat6 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat6 = clamp(u_xlat6, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat6) * u_xlat0.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					bool u_xlatb1;
					float u_xlat6;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1.x = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat6 = u_xlat0.w * u_xlat1.x;
					    u_xlat0.xyz = u_xlat0.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    u_xlat6 = u_xlat6 * vs_COLOR0.w;
					    SV_Target0.w = u_xlat6;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    u_xlat6 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat6 = (-u_xlat6) + 1.0;
					    u_xlat6 = u_xlat6 * _ProjectionParams.z;
					    u_xlat6 = max(u_xlat6, 0.0);
					    u_xlat6 = u_xlat6 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat6 = clamp(u_xlat6, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat6) * u_xlat0.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendAlpha" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					bool u_xlatb1;
					float u_xlat6;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1.x = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat6 = u_xlat0.w * u_xlat1.x;
					    u_xlat0.xyz = u_xlat0.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    u_xlat6 = u_xlat6 * vs_COLOR0.w;
					    SV_Target0.w = u_xlat6;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    u_xlat6 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat6 = (-u_xlat6) + 1.0;
					    u_xlat6 = u_xlat6 * _ProjectionParams.z;
					    u_xlat6 = max(u_xlat6, 0.0);
					    u_xlat6 = u_xlat6 * unity_FogParams.y;
					    u_xlat6 = exp2((-u_xlat6));
					    u_xlat6 = min(u_xlat6, 1.0);
					    SV_Target0.xyz = vec3(u_xlat6) * u_xlat0.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					bool u_xlatb1;
					float u_xlat6;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1.x = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat6 = u_xlat0.w * u_xlat1.x;
					    u_xlat0.xyz = u_xlat0.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    u_xlat6 = u_xlat6 * vs_COLOR0.w;
					    SV_Target0.w = u_xlat6;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    u_xlat6 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat6 = (-u_xlat6) + 1.0;
					    u_xlat6 = u_xlat6 * _ProjectionParams.z;
					    u_xlat6 = max(u_xlat6, 0.0);
					    u_xlat6 = u_xlat6 * unity_FogParams.y;
					    u_xlat6 = exp2((-u_xlat6));
					    u_xlat6 = min(u_xlat6, 1.0);
					    SV_Target0.xyz = vec3(u_xlat6) * u_xlat0.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					bool u_xlatb1;
					float u_xlat6;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1.x = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat6 = u_xlat0.w * u_xlat1.x;
					    u_xlat0.xyz = u_xlat0.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    u_xlat6 = u_xlat6 * vs_COLOR0.w;
					    SV_Target0.w = u_xlat6;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    u_xlat6 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat6 = (-u_xlat6) + 1.0;
					    u_xlat6 = u_xlat6 * _ProjectionParams.z;
					    u_xlat6 = max(u_xlat6, 0.0);
					    u_xlat6 = u_xlat6 * unity_FogParams.y;
					    u_xlat6 = exp2((-u_xlat6));
					    u_xlat6 = min(u_xlat6, 1.0);
					    SV_Target0.xyz = vec3(u_xlat6) * u_xlat0.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					bool u_xlatb1;
					float u_xlat6;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1.x = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat6 = u_xlat0.w * u_xlat1.x;
					    u_xlat0.xyz = u_xlat0.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    u_xlat6 = u_xlat6 * vs_COLOR0.w;
					    SV_Target0.w = u_xlat6;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    u_xlat6 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat6 = (-u_xlat6) + 1.0;
					    u_xlat6 = u_xlat6 * _ProjectionParams.z;
					    u_xlat6 = max(u_xlat6, 0.0);
					    u_xlat6 = u_xlat6 * unity_FogParams.y;
					    u_xlat6 = exp2((-u_xlat6));
					    u_xlat6 = min(u_xlat6, 1.0);
					    SV_Target0.xyz = vec3(u_xlat6) * u_xlat0.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendAlpha" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					bool u_xlatb1;
					float u_xlat6;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1.x = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat6 = u_xlat0.w * u_xlat1.x;
					    u_xlat0.xyz = u_xlat0.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    u_xlat6 = u_xlat6 * vs_COLOR0.w;
					    SV_Target0.w = u_xlat6;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    u_xlat6 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat6 = (-u_xlat6) + 1.0;
					    u_xlat6 = u_xlat6 * _ProjectionParams.z;
					    u_xlat6 = max(u_xlat6, 0.0);
					    u_xlat6 = u_xlat6 * unity_FogParams.x;
					    u_xlat6 = u_xlat6 * (-u_xlat6);
					    u_xlat6 = exp2(u_xlat6);
					    SV_Target0.xyz = vec3(u_xlat6) * u_xlat0.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					bool u_xlatb1;
					float u_xlat6;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1.x = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat6 = u_xlat0.w * u_xlat1.x;
					    u_xlat0.xyz = u_xlat0.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    u_xlat6 = u_xlat6 * vs_COLOR0.w;
					    SV_Target0.w = u_xlat6;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    u_xlat6 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat6 = (-u_xlat6) + 1.0;
					    u_xlat6 = u_xlat6 * _ProjectionParams.z;
					    u_xlat6 = max(u_xlat6, 0.0);
					    u_xlat6 = u_xlat6 * unity_FogParams.x;
					    u_xlat6 = u_xlat6 * (-u_xlat6);
					    u_xlat6 = exp2(u_xlat6);
					    SV_Target0.xyz = vec3(u_xlat6) * u_xlat0.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					bool u_xlatb1;
					float u_xlat6;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1.x = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat6 = u_xlat0.w * u_xlat1.x;
					    u_xlat0.xyz = u_xlat0.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    u_xlat6 = u_xlat6 * vs_COLOR0.w;
					    SV_Target0.w = u_xlat6;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    u_xlat6 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat6 = (-u_xlat6) + 1.0;
					    u_xlat6 = u_xlat6 * _ProjectionParams.z;
					    u_xlat6 = max(u_xlat6, 0.0);
					    u_xlat6 = u_xlat6 * unity_FogParams.x;
					    u_xlat6 = u_xlat6 * (-u_xlat6);
					    u_xlat6 = exp2(u_xlat6);
					    SV_Target0.xyz = vec3(u_xlat6) * u_xlat0.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					bool u_xlatb1;
					float u_xlat6;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1.x = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat6 = u_xlat0.w * u_xlat1.x;
					    u_xlat0.xyz = u_xlat0.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    u_xlat6 = u_xlat6 * vs_COLOR0.w;
					    SV_Target0.w = u_xlat6;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    u_xlat6 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat6 = (-u_xlat6) + 1.0;
					    u_xlat6 = u_xlat6 * _ProjectionParams.z;
					    u_xlat6 = max(u_xlat6, 0.0);
					    u_xlat6 = u_xlat6 * unity_FogParams.x;
					    u_xlat6 = u_xlat6 * (-u_xlat6);
					    u_xlat6 = exp2(u_xlat6);
					    SV_Target0.xyz = vec3(u_xlat6) * u_xlat0.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendAlpha" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					bool u_xlatb1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1.x = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat0.w = u_xlat0.w * u_xlat1.x;
					    u_xlat0 = u_xlat0 * vs_COLOR0;
					    SV_Target0.w = u_xlat0.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					bool u_xlatb1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1.x = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat0.w = u_xlat0.w * u_xlat1.x;
					    u_xlat0 = u_xlat0 * vs_COLOR0;
					    SV_Target0.w = u_xlat0.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendAlpha" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					bool u_xlatb1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1.x = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat0.w = u_xlat0.w * u_xlat1.x;
					    u_xlat0 = u_xlat0 * vs_COLOR0;
					    SV_Target0.w = u_xlat0.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					bool u_xlatb1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1.x = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat0.w = u_xlat0.w * u_xlat1.x;
					    u_xlat0 = u_xlat0 * vs_COLOR0;
					    SV_Target0.w = u_xlat0.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendAlpha" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					bool u_xlatb1;
					float u_xlat6;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1.x = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat6 = u_xlat0.w * u_xlat1.x;
					    u_xlat0.xyz = u_xlat0.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    u_xlat6 = u_xlat6 * vs_COLOR0.w;
					    SV_Target0.w = u_xlat6;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    u_xlat6 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat6 = (-u_xlat6) + 1.0;
					    u_xlat6 = u_xlat6 * _ProjectionParams.z;
					    u_xlat6 = max(u_xlat6, 0.0);
					    u_xlat6 = u_xlat6 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat6 = clamp(u_xlat6, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat6) * u_xlat0.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					bool u_xlatb1;
					float u_xlat6;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1.x = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat6 = u_xlat0.w * u_xlat1.x;
					    u_xlat0.xyz = u_xlat0.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    u_xlat6 = u_xlat6 * vs_COLOR0.w;
					    SV_Target0.w = u_xlat6;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    u_xlat6 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat6 = (-u_xlat6) + 1.0;
					    u_xlat6 = u_xlat6 * _ProjectionParams.z;
					    u_xlat6 = max(u_xlat6, 0.0);
					    u_xlat6 = u_xlat6 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat6 = clamp(u_xlat6, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat6) * u_xlat0.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					bool u_xlatb1;
					float u_xlat6;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1.x = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat6 = u_xlat0.w * u_xlat1.x;
					    u_xlat0.xyz = u_xlat0.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    u_xlat6 = u_xlat6 * vs_COLOR0.w;
					    SV_Target0.w = u_xlat6;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    u_xlat6 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat6 = (-u_xlat6) + 1.0;
					    u_xlat6 = u_xlat6 * _ProjectionParams.z;
					    u_xlat6 = max(u_xlat6, 0.0);
					    u_xlat6 = u_xlat6 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat6 = clamp(u_xlat6, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat6) * u_xlat0.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					bool u_xlatb1;
					float u_xlat6;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1.x = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat6 = u_xlat0.w * u_xlat1.x;
					    u_xlat0.xyz = u_xlat0.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    u_xlat6 = u_xlat6 * vs_COLOR0.w;
					    SV_Target0.w = u_xlat6;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    u_xlat6 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat6 = (-u_xlat6) + 1.0;
					    u_xlat6 = u_xlat6 * _ProjectionParams.z;
					    u_xlat6 = max(u_xlat6, 0.0);
					    u_xlat6 = u_xlat6 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat6 = clamp(u_xlat6, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat6) * u_xlat0.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendAlpha" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					bool u_xlatb1;
					float u_xlat6;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1.x = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat6 = u_xlat0.w * u_xlat1.x;
					    u_xlat0.xyz = u_xlat0.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    u_xlat6 = u_xlat6 * vs_COLOR0.w;
					    SV_Target0.w = u_xlat6;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    u_xlat6 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat6 = (-u_xlat6) + 1.0;
					    u_xlat6 = u_xlat6 * _ProjectionParams.z;
					    u_xlat6 = max(u_xlat6, 0.0);
					    u_xlat6 = u_xlat6 * unity_FogParams.y;
					    u_xlat6 = exp2((-u_xlat6));
					    u_xlat6 = min(u_xlat6, 1.0);
					    SV_Target0.xyz = vec3(u_xlat6) * u_xlat0.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					bool u_xlatb1;
					float u_xlat6;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1.x = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat6 = u_xlat0.w * u_xlat1.x;
					    u_xlat0.xyz = u_xlat0.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    u_xlat6 = u_xlat6 * vs_COLOR0.w;
					    SV_Target0.w = u_xlat6;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    u_xlat6 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat6 = (-u_xlat6) + 1.0;
					    u_xlat6 = u_xlat6 * _ProjectionParams.z;
					    u_xlat6 = max(u_xlat6, 0.0);
					    u_xlat6 = u_xlat6 * unity_FogParams.y;
					    u_xlat6 = exp2((-u_xlat6));
					    u_xlat6 = min(u_xlat6, 1.0);
					    SV_Target0.xyz = vec3(u_xlat6) * u_xlat0.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					bool u_xlatb1;
					float u_xlat6;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1.x = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat6 = u_xlat0.w * u_xlat1.x;
					    u_xlat0.xyz = u_xlat0.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    u_xlat6 = u_xlat6 * vs_COLOR0.w;
					    SV_Target0.w = u_xlat6;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    u_xlat6 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat6 = (-u_xlat6) + 1.0;
					    u_xlat6 = u_xlat6 * _ProjectionParams.z;
					    u_xlat6 = max(u_xlat6, 0.0);
					    u_xlat6 = u_xlat6 * unity_FogParams.y;
					    u_xlat6 = exp2((-u_xlat6));
					    u_xlat6 = min(u_xlat6, 1.0);
					    SV_Target0.xyz = vec3(u_xlat6) * u_xlat0.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					bool u_xlatb1;
					float u_xlat6;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1.x = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat6 = u_xlat0.w * u_xlat1.x;
					    u_xlat0.xyz = u_xlat0.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    u_xlat6 = u_xlat6 * vs_COLOR0.w;
					    SV_Target0.w = u_xlat6;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    u_xlat6 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat6 = (-u_xlat6) + 1.0;
					    u_xlat6 = u_xlat6 * _ProjectionParams.z;
					    u_xlat6 = max(u_xlat6, 0.0);
					    u_xlat6 = u_xlat6 * unity_FogParams.y;
					    u_xlat6 = exp2((-u_xlat6));
					    u_xlat6 = min(u_xlat6, 1.0);
					    SV_Target0.xyz = vec3(u_xlat6) * u_xlat0.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendAlpha" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					bool u_xlatb1;
					float u_xlat6;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1.x = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat6 = u_xlat0.w * u_xlat1.x;
					    u_xlat0.xyz = u_xlat0.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    u_xlat6 = u_xlat6 * vs_COLOR0.w;
					    SV_Target0.w = u_xlat6;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    u_xlat6 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat6 = (-u_xlat6) + 1.0;
					    u_xlat6 = u_xlat6 * _ProjectionParams.z;
					    u_xlat6 = max(u_xlat6, 0.0);
					    u_xlat6 = u_xlat6 * unity_FogParams.x;
					    u_xlat6 = u_xlat6 * (-u_xlat6);
					    u_xlat6 = exp2(u_xlat6);
					    SV_Target0.xyz = vec3(u_xlat6) * u_xlat0.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					bool u_xlatb1;
					float u_xlat6;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1.x = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat6 = u_xlat0.w * u_xlat1.x;
					    u_xlat0.xyz = u_xlat0.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    u_xlat6 = u_xlat6 * vs_COLOR0.w;
					    SV_Target0.w = u_xlat6;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    u_xlat6 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat6 = (-u_xlat6) + 1.0;
					    u_xlat6 = u_xlat6 * _ProjectionParams.z;
					    u_xlat6 = max(u_xlat6, 0.0);
					    u_xlat6 = u_xlat6 * unity_FogParams.x;
					    u_xlat6 = u_xlat6 * (-u_xlat6);
					    u_xlat6 = exp2(u_xlat6);
					    SV_Target0.xyz = vec3(u_xlat6) * u_xlat0.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					bool u_xlatb1;
					float u_xlat6;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1.x = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat6 = u_xlat0.w * u_xlat1.x;
					    u_xlat0.xyz = u_xlat0.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    u_xlat6 = u_xlat6 * vs_COLOR0.w;
					    SV_Target0.w = u_xlat6;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    u_xlat6 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat6 = (-u_xlat6) + 1.0;
					    u_xlat6 = u_xlat6 * _ProjectionParams.z;
					    u_xlat6 = max(u_xlat6, 0.0);
					    u_xlat6 = u_xlat6 * unity_FogParams.x;
					    u_xlat6 = u_xlat6 * (-u_xlat6);
					    u_xlat6 = exp2(u_xlat6);
					    SV_Target0.xyz = vec3(u_xlat6) * u_xlat0.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					bool u_xlatb1;
					float u_xlat6;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1.x = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat6 = u_xlat0.w * u_xlat1.x;
					    u_xlat0.xyz = u_xlat0.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    u_xlat6 = u_xlat6 * vs_COLOR0.w;
					    SV_Target0.w = u_xlat6;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    u_xlat6 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat6 = (-u_xlat6) + 1.0;
					    u_xlat6 = u_xlat6 * _ProjectionParams.z;
					    u_xlat6 = max(u_xlat6, 0.0);
					    u_xlat6 = u_xlat6 * unity_FogParams.x;
					    u_xlat6 = u_xlat6 * (-u_xlat6);
					    u_xlat6 = exp2(u_xlat6);
					    SV_Target0.xyz = vec3(u_xlat6) * u_xlat0.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendAlpha" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					bool u_xlatb1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1.x = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat0.w = u_xlat0.w * u_xlat1.x;
					    u_xlat0 = u_xlat0.wxyz * vs_COLOR0.wxyz;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.yzw;
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					bool u_xlatb1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1.x = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat0.w = u_xlat0.w * u_xlat1.x;
					    u_xlat0 = u_xlat0.wxyz * vs_COLOR0.wxyz;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.yzw;
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendAlpha" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					bool u_xlatb1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1.x = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat0.w = u_xlat0.w * u_xlat1.x;
					    u_xlat0 = u_xlat0.wxyz * vs_COLOR0.wxyz;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.yzw;
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					bool u_xlatb1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1.x = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat0.w = u_xlat0.w * u_xlat1.x;
					    u_xlat0 = u_xlat0.wxyz * vs_COLOR0.wxyz;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.yzw;
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendAlpha" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					bool u_xlatb1;
					float u_xlat6;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1.x = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat6 = u_xlat0.w * u_xlat1.x;
					    u_xlat0.xyz = u_xlat0.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    u_xlat1.x = u_xlat6 * vs_COLOR0.w;
					    u_xlat1.x = u_xlat1.x;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat1.x * vs_TEXCOORD4;
					    u_xlat6 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat6 = (-u_xlat6) + 1.0;
					    u_xlat6 = u_xlat6 * _ProjectionParams.z;
					    u_xlat6 = max(u_xlat6, 0.0);
					    u_xlat6 = u_xlat6 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat6 = clamp(u_xlat6, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat6) * u_xlat0.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					bool u_xlatb1;
					float u_xlat6;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1.x = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat6 = u_xlat0.w * u_xlat1.x;
					    u_xlat0.xyz = u_xlat0.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    u_xlat1.x = u_xlat6 * vs_COLOR0.w;
					    u_xlat1.x = u_xlat1.x;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat1.x * vs_TEXCOORD4;
					    u_xlat6 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat6 = (-u_xlat6) + 1.0;
					    u_xlat6 = u_xlat6 * _ProjectionParams.z;
					    u_xlat6 = max(u_xlat6, 0.0);
					    u_xlat6 = u_xlat6 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat6 = clamp(u_xlat6, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat6) * u_xlat0.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					bool u_xlatb1;
					float u_xlat6;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1.x = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat6 = u_xlat0.w * u_xlat1.x;
					    u_xlat0.xyz = u_xlat0.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    u_xlat1.x = u_xlat6 * vs_COLOR0.w;
					    u_xlat1.x = u_xlat1.x;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat1.x * vs_TEXCOORD4;
					    u_xlat6 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat6 = (-u_xlat6) + 1.0;
					    u_xlat6 = u_xlat6 * _ProjectionParams.z;
					    u_xlat6 = max(u_xlat6, 0.0);
					    u_xlat6 = u_xlat6 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat6 = clamp(u_xlat6, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat6) * u_xlat0.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					bool u_xlatb1;
					float u_xlat6;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1.x = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat6 = u_xlat0.w * u_xlat1.x;
					    u_xlat0.xyz = u_xlat0.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    u_xlat1.x = u_xlat6 * vs_COLOR0.w;
					    u_xlat1.x = u_xlat1.x;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat1.x * vs_TEXCOORD4;
					    u_xlat6 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat6 = (-u_xlat6) + 1.0;
					    u_xlat6 = u_xlat6 * _ProjectionParams.z;
					    u_xlat6 = max(u_xlat6, 0.0);
					    u_xlat6 = u_xlat6 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat6 = clamp(u_xlat6, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat6) * u_xlat0.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendAlpha" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					bool u_xlatb1;
					float u_xlat6;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1.x = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat6 = u_xlat0.w * u_xlat1.x;
					    u_xlat0.xyz = u_xlat0.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    u_xlat1.x = u_xlat6 * vs_COLOR0.w;
					    u_xlat1.x = u_xlat1.x;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat1.x * vs_TEXCOORD4;
					    u_xlat6 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat6 = (-u_xlat6) + 1.0;
					    u_xlat6 = u_xlat6 * _ProjectionParams.z;
					    u_xlat6 = max(u_xlat6, 0.0);
					    u_xlat6 = u_xlat6 * unity_FogParams.y;
					    u_xlat6 = exp2((-u_xlat6));
					    u_xlat6 = min(u_xlat6, 1.0);
					    SV_Target0.xyz = vec3(u_xlat6) * u_xlat0.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					bool u_xlatb1;
					float u_xlat6;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1.x = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat6 = u_xlat0.w * u_xlat1.x;
					    u_xlat0.xyz = u_xlat0.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    u_xlat1.x = u_xlat6 * vs_COLOR0.w;
					    u_xlat1.x = u_xlat1.x;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat1.x * vs_TEXCOORD4;
					    u_xlat6 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat6 = (-u_xlat6) + 1.0;
					    u_xlat6 = u_xlat6 * _ProjectionParams.z;
					    u_xlat6 = max(u_xlat6, 0.0);
					    u_xlat6 = u_xlat6 * unity_FogParams.y;
					    u_xlat6 = exp2((-u_xlat6));
					    u_xlat6 = min(u_xlat6, 1.0);
					    SV_Target0.xyz = vec3(u_xlat6) * u_xlat0.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					bool u_xlatb1;
					float u_xlat6;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1.x = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat6 = u_xlat0.w * u_xlat1.x;
					    u_xlat0.xyz = u_xlat0.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    u_xlat1.x = u_xlat6 * vs_COLOR0.w;
					    u_xlat1.x = u_xlat1.x;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat1.x * vs_TEXCOORD4;
					    u_xlat6 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat6 = (-u_xlat6) + 1.0;
					    u_xlat6 = u_xlat6 * _ProjectionParams.z;
					    u_xlat6 = max(u_xlat6, 0.0);
					    u_xlat6 = u_xlat6 * unity_FogParams.y;
					    u_xlat6 = exp2((-u_xlat6));
					    u_xlat6 = min(u_xlat6, 1.0);
					    SV_Target0.xyz = vec3(u_xlat6) * u_xlat0.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					bool u_xlatb1;
					float u_xlat6;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1.x = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat6 = u_xlat0.w * u_xlat1.x;
					    u_xlat0.xyz = u_xlat0.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    u_xlat1.x = u_xlat6 * vs_COLOR0.w;
					    u_xlat1.x = u_xlat1.x;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat1.x * vs_TEXCOORD4;
					    u_xlat6 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat6 = (-u_xlat6) + 1.0;
					    u_xlat6 = u_xlat6 * _ProjectionParams.z;
					    u_xlat6 = max(u_xlat6, 0.0);
					    u_xlat6 = u_xlat6 * unity_FogParams.y;
					    u_xlat6 = exp2((-u_xlat6));
					    u_xlat6 = min(u_xlat6, 1.0);
					    SV_Target0.xyz = vec3(u_xlat6) * u_xlat0.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendAlpha" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					bool u_xlatb1;
					float u_xlat6;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1.x = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat6 = u_xlat0.w * u_xlat1.x;
					    u_xlat0.xyz = u_xlat0.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    u_xlat1.x = u_xlat6 * vs_COLOR0.w;
					    u_xlat1.x = u_xlat1.x;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat1.x * vs_TEXCOORD4;
					    u_xlat6 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat6 = (-u_xlat6) + 1.0;
					    u_xlat6 = u_xlat6 * _ProjectionParams.z;
					    u_xlat6 = max(u_xlat6, 0.0);
					    u_xlat6 = u_xlat6 * unity_FogParams.x;
					    u_xlat6 = u_xlat6 * (-u_xlat6);
					    u_xlat6 = exp2(u_xlat6);
					    SV_Target0.xyz = vec3(u_xlat6) * u_xlat0.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					bool u_xlatb1;
					float u_xlat6;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1.x = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat6 = u_xlat0.w * u_xlat1.x;
					    u_xlat0.xyz = u_xlat0.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    u_xlat1.x = u_xlat6 * vs_COLOR0.w;
					    u_xlat1.x = u_xlat1.x;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat1.x * vs_TEXCOORD4;
					    u_xlat6 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat6 = (-u_xlat6) + 1.0;
					    u_xlat6 = u_xlat6 * _ProjectionParams.z;
					    u_xlat6 = max(u_xlat6, 0.0);
					    u_xlat6 = u_xlat6 * unity_FogParams.x;
					    u_xlat6 = u_xlat6 * (-u_xlat6);
					    u_xlat6 = exp2(u_xlat6);
					    SV_Target0.xyz = vec3(u_xlat6) * u_xlat0.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					bool u_xlatb1;
					float u_xlat6;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1.x = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat6 = u_xlat0.w * u_xlat1.x;
					    u_xlat0.xyz = u_xlat0.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    u_xlat1.x = u_xlat6 * vs_COLOR0.w;
					    u_xlat1.x = u_xlat1.x;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat1.x * vs_TEXCOORD4;
					    u_xlat6 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat6 = (-u_xlat6) + 1.0;
					    u_xlat6 = u_xlat6 * _ProjectionParams.z;
					    u_xlat6 = max(u_xlat6, 0.0);
					    u_xlat6 = u_xlat6 * unity_FogParams.x;
					    u_xlat6 = u_xlat6 * (-u_xlat6);
					    u_xlat6 = exp2(u_xlat6);
					    SV_Target0.xyz = vec3(u_xlat6) * u_xlat0.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					bool u_xlatb1;
					float u_xlat6;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1.x = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat6 = u_xlat0.w * u_xlat1.x;
					    u_xlat0.xyz = u_xlat0.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    u_xlat1.x = u_xlat6 * vs_COLOR0.w;
					    u_xlat1.x = u_xlat1.x;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat1.x * vs_TEXCOORD4;
					    u_xlat6 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat6 = (-u_xlat6) + 1.0;
					    u_xlat6 = u_xlat6 * _ProjectionParams.z;
					    u_xlat6 = max(u_xlat6, 0.0);
					    u_xlat6 = u_xlat6 * unity_FogParams.x;
					    u_xlat6 = u_xlat6 * (-u_xlat6);
					    u_xlat6 = exp2(u_xlat6);
					    SV_Target0.xyz = vec3(u_xlat6) * u_xlat0.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendAlpha" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					bool u_xlatb1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1.x = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat0.w = u_xlat0.w * u_xlat1.x;
					    u_xlat0 = u_xlat0.wxyz * vs_COLOR0.wxyz;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.yzw;
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					bool u_xlatb1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1.x = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat0.w = u_xlat0.w * u_xlat1.x;
					    u_xlat0 = u_xlat0.wxyz * vs_COLOR0.wxyz;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.yzw;
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendAlpha" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					bool u_xlatb1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1.x = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat0.w = u_xlat0.w * u_xlat1.x;
					    u_xlat0 = u_xlat0.wxyz * vs_COLOR0.wxyz;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.yzw;
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					bool u_xlatb1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1.x = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat0.w = u_xlat0.w * u_xlat1.x;
					    u_xlat0 = u_xlat0.wxyz * vs_COLOR0.wxyz;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.yzw;
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendAlpha" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					bool u_xlatb1;
					float u_xlat6;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1.x = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat6 = u_xlat0.w * u_xlat1.x;
					    u_xlat0.xyz = u_xlat0.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    u_xlat1.x = u_xlat6 * vs_COLOR0.w;
					    u_xlat1.x = u_xlat1.x;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat1.x * vs_TEXCOORD4;
					    u_xlat6 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat6 = (-u_xlat6) + 1.0;
					    u_xlat6 = u_xlat6 * _ProjectionParams.z;
					    u_xlat6 = max(u_xlat6, 0.0);
					    u_xlat6 = u_xlat6 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat6 = clamp(u_xlat6, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat6) * u_xlat0.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					bool u_xlatb1;
					float u_xlat6;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1.x = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat6 = u_xlat0.w * u_xlat1.x;
					    u_xlat0.xyz = u_xlat0.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    u_xlat1.x = u_xlat6 * vs_COLOR0.w;
					    u_xlat1.x = u_xlat1.x;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat1.x * vs_TEXCOORD4;
					    u_xlat6 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat6 = (-u_xlat6) + 1.0;
					    u_xlat6 = u_xlat6 * _ProjectionParams.z;
					    u_xlat6 = max(u_xlat6, 0.0);
					    u_xlat6 = u_xlat6 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat6 = clamp(u_xlat6, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat6) * u_xlat0.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					bool u_xlatb1;
					float u_xlat6;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1.x = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat6 = u_xlat0.w * u_xlat1.x;
					    u_xlat0.xyz = u_xlat0.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    u_xlat1.x = u_xlat6 * vs_COLOR0.w;
					    u_xlat1.x = u_xlat1.x;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat1.x * vs_TEXCOORD4;
					    u_xlat6 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat6 = (-u_xlat6) + 1.0;
					    u_xlat6 = u_xlat6 * _ProjectionParams.z;
					    u_xlat6 = max(u_xlat6, 0.0);
					    u_xlat6 = u_xlat6 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat6 = clamp(u_xlat6, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat6) * u_xlat0.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					bool u_xlatb1;
					float u_xlat6;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1.x = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat6 = u_xlat0.w * u_xlat1.x;
					    u_xlat0.xyz = u_xlat0.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    u_xlat1.x = u_xlat6 * vs_COLOR0.w;
					    u_xlat1.x = u_xlat1.x;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat1.x * vs_TEXCOORD4;
					    u_xlat6 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat6 = (-u_xlat6) + 1.0;
					    u_xlat6 = u_xlat6 * _ProjectionParams.z;
					    u_xlat6 = max(u_xlat6, 0.0);
					    u_xlat6 = u_xlat6 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat6 = clamp(u_xlat6, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat6) * u_xlat0.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendAlpha" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					bool u_xlatb1;
					float u_xlat6;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1.x = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat6 = u_xlat0.w * u_xlat1.x;
					    u_xlat0.xyz = u_xlat0.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    u_xlat1.x = u_xlat6 * vs_COLOR0.w;
					    u_xlat1.x = u_xlat1.x;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat1.x * vs_TEXCOORD4;
					    u_xlat6 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat6 = (-u_xlat6) + 1.0;
					    u_xlat6 = u_xlat6 * _ProjectionParams.z;
					    u_xlat6 = max(u_xlat6, 0.0);
					    u_xlat6 = u_xlat6 * unity_FogParams.y;
					    u_xlat6 = exp2((-u_xlat6));
					    u_xlat6 = min(u_xlat6, 1.0);
					    SV_Target0.xyz = vec3(u_xlat6) * u_xlat0.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					bool u_xlatb1;
					float u_xlat6;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1.x = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat6 = u_xlat0.w * u_xlat1.x;
					    u_xlat0.xyz = u_xlat0.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    u_xlat1.x = u_xlat6 * vs_COLOR0.w;
					    u_xlat1.x = u_xlat1.x;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat1.x * vs_TEXCOORD4;
					    u_xlat6 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat6 = (-u_xlat6) + 1.0;
					    u_xlat6 = u_xlat6 * _ProjectionParams.z;
					    u_xlat6 = max(u_xlat6, 0.0);
					    u_xlat6 = u_xlat6 * unity_FogParams.y;
					    u_xlat6 = exp2((-u_xlat6));
					    u_xlat6 = min(u_xlat6, 1.0);
					    SV_Target0.xyz = vec3(u_xlat6) * u_xlat0.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					bool u_xlatb1;
					float u_xlat6;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1.x = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat6 = u_xlat0.w * u_xlat1.x;
					    u_xlat0.xyz = u_xlat0.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    u_xlat1.x = u_xlat6 * vs_COLOR0.w;
					    u_xlat1.x = u_xlat1.x;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat1.x * vs_TEXCOORD4;
					    u_xlat6 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat6 = (-u_xlat6) + 1.0;
					    u_xlat6 = u_xlat6 * _ProjectionParams.z;
					    u_xlat6 = max(u_xlat6, 0.0);
					    u_xlat6 = u_xlat6 * unity_FogParams.y;
					    u_xlat6 = exp2((-u_xlat6));
					    u_xlat6 = min(u_xlat6, 1.0);
					    SV_Target0.xyz = vec3(u_xlat6) * u_xlat0.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					bool u_xlatb1;
					float u_xlat6;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1.x = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat6 = u_xlat0.w * u_xlat1.x;
					    u_xlat0.xyz = u_xlat0.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    u_xlat1.x = u_xlat6 * vs_COLOR0.w;
					    u_xlat1.x = u_xlat1.x;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat1.x * vs_TEXCOORD4;
					    u_xlat6 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat6 = (-u_xlat6) + 1.0;
					    u_xlat6 = u_xlat6 * _ProjectionParams.z;
					    u_xlat6 = max(u_xlat6, 0.0);
					    u_xlat6 = u_xlat6 * unity_FogParams.y;
					    u_xlat6 = exp2((-u_xlat6));
					    u_xlat6 = min(u_xlat6, 1.0);
					    SV_Target0.xyz = vec3(u_xlat6) * u_xlat0.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendAlpha" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					bool u_xlatb1;
					float u_xlat6;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1.x = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat6 = u_xlat0.w * u_xlat1.x;
					    u_xlat0.xyz = u_xlat0.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    u_xlat1.x = u_xlat6 * vs_COLOR0.w;
					    u_xlat1.x = u_xlat1.x;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat1.x * vs_TEXCOORD4;
					    u_xlat6 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat6 = (-u_xlat6) + 1.0;
					    u_xlat6 = u_xlat6 * _ProjectionParams.z;
					    u_xlat6 = max(u_xlat6, 0.0);
					    u_xlat6 = u_xlat6 * unity_FogParams.x;
					    u_xlat6 = u_xlat6 * (-u_xlat6);
					    u_xlat6 = exp2(u_xlat6);
					    SV_Target0.xyz = vec3(u_xlat6) * u_xlat0.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					bool u_xlatb1;
					float u_xlat6;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1.x = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat6 = u_xlat0.w * u_xlat1.x;
					    u_xlat0.xyz = u_xlat0.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    u_xlat1.x = u_xlat6 * vs_COLOR0.w;
					    u_xlat1.x = u_xlat1.x;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat1.x * vs_TEXCOORD4;
					    u_xlat6 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat6 = (-u_xlat6) + 1.0;
					    u_xlat6 = u_xlat6 * _ProjectionParams.z;
					    u_xlat6 = max(u_xlat6, 0.0);
					    u_xlat6 = u_xlat6 * unity_FogParams.x;
					    u_xlat6 = u_xlat6 * (-u_xlat6);
					    u_xlat6 = exp2(u_xlat6);
					    SV_Target0.xyz = vec3(u_xlat6) * u_xlat0.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					bool u_xlatb1;
					float u_xlat6;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1.x = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat6 = u_xlat0.w * u_xlat1.x;
					    u_xlat0.xyz = u_xlat0.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    u_xlat1.x = u_xlat6 * vs_COLOR0.w;
					    u_xlat1.x = u_xlat1.x;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat1.x * vs_TEXCOORD4;
					    u_xlat6 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat6 = (-u_xlat6) + 1.0;
					    u_xlat6 = u_xlat6 * _ProjectionParams.z;
					    u_xlat6 = max(u_xlat6, 0.0);
					    u_xlat6 = u_xlat6 * unity_FogParams.x;
					    u_xlat6 = u_xlat6 * (-u_xlat6);
					    u_xlat6 = exp2(u_xlat6);
					    SV_Target0.xyz = vec3(u_xlat6) * u_xlat0.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					bool u_xlatb1;
					float u_xlat6;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1.x = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat6 = u_xlat0.w * u_xlat1.x;
					    u_xlat0.xyz = u_xlat0.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    u_xlat1.x = u_xlat6 * vs_COLOR0.w;
					    u_xlat1.x = u_xlat1.x;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat1.x * vs_TEXCOORD4;
					    u_xlat6 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat6 = (-u_xlat6) + 1.0;
					    u_xlat6 = u_xlat6 * _ProjectionParams.z;
					    u_xlat6 = max(u_xlat6, 0.0);
					    u_xlat6 = u_xlat6 * unity_FogParams.x;
					    u_xlat6 = u_xlat6 * (-u_xlat6);
					    u_xlat6 = exp2(u_xlat6);
					    SV_Target0.xyz = vec3(u_xlat6) * u_xlat0.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendAlpha" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    SV_Target0.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    SV_Target0.w = u_xlatb0 ? 1.0 : float(0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    SV_Target0.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    SV_Target0.w = u_xlatb0 ? 1.0 : float(0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendAlpha" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    SV_Target0.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    SV_Target0.w = u_xlatb0 ? 1.0 : float(0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    SV_Target0.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    SV_Target0.w = u_xlatb0 ? 1.0 : float(0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendAlpha" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + unity_FogColor.xyz;
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    SV_Target0.w = u_xlatb0 ? 1.0 : float(0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + unity_FogColor.xyz;
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    SV_Target0.w = u_xlatb0 ? 1.0 : float(0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + unity_FogColor.xyz;
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    SV_Target0.w = u_xlatb0 ? 1.0 : float(0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + unity_FogColor.xyz;
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    SV_Target0.w = u_xlatb0 ? 1.0 : float(0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendAlpha" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + unity_FogColor.xyz;
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    SV_Target0.w = u_xlatb0 ? 1.0 : float(0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + unity_FogColor.xyz;
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    SV_Target0.w = u_xlatb0 ? 1.0 : float(0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + unity_FogColor.xyz;
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    SV_Target0.w = u_xlatb0 ? 1.0 : float(0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + unity_FogColor.xyz;
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    SV_Target0.w = u_xlatb0 ? 1.0 : float(0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendAlpha" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + unity_FogColor.xyz;
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    SV_Target0.w = u_xlatb0 ? 1.0 : float(0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + unity_FogColor.xyz;
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    SV_Target0.w = u_xlatb0 ? 1.0 : float(0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + unity_FogColor.xyz;
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    SV_Target0.w = u_xlatb0 ? 1.0 : float(0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + unity_FogColor.xyz;
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    SV_Target0.w = u_xlatb0 ? 1.0 : float(0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendAlpha" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    SV_Target0.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    SV_Target0.w = u_xlatb0 ? 1.0 : float(0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    SV_Target0.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    SV_Target0.w = u_xlatb0 ? 1.0 : float(0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendAlpha" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    SV_Target0.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    SV_Target0.w = u_xlatb0 ? 1.0 : float(0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    SV_Target0.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    SV_Target0.w = u_xlatb0 ? 1.0 : float(0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendAlpha" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + unity_FogColor.xyz;
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    SV_Target0.w = u_xlatb0 ? 1.0 : float(0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + unity_FogColor.xyz;
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    SV_Target0.w = u_xlatb0 ? 1.0 : float(0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + unity_FogColor.xyz;
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    SV_Target0.w = u_xlatb0 ? 1.0 : float(0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + unity_FogColor.xyz;
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    SV_Target0.w = u_xlatb0 ? 1.0 : float(0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendAlpha" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + unity_FogColor.xyz;
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    SV_Target0.w = u_xlatb0 ? 1.0 : float(0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + unity_FogColor.xyz;
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    SV_Target0.w = u_xlatb0 ? 1.0 : float(0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + unity_FogColor.xyz;
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    SV_Target0.w = u_xlatb0 ? 1.0 : float(0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + unity_FogColor.xyz;
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    SV_Target0.w = u_xlatb0 ? 1.0 : float(0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendAlpha" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + unity_FogColor.xyz;
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    SV_Target0.w = u_xlatb0 ? 1.0 : float(0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + unity_FogColor.xyz;
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    SV_Target0.w = u_xlatb0 ? 1.0 : float(0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + unity_FogColor.xyz;
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    SV_Target0.w = u_xlatb0 ? 1.0 : float(0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + unity_FogColor.xyz;
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    SV_Target0.w = u_xlatb0 ? 1.0 : float(0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendAlpha" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    SV_Target0.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat0 = u_xlatb0 ? 1.0 : float(0.0);
					    SV_Target0.w = u_xlat0 * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    SV_Target0.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat0 = u_xlatb0 ? 1.0 : float(0.0);
					    SV_Target0.w = u_xlat0 * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendAlpha" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    SV_Target0.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat0 = u_xlatb0 ? 1.0 : float(0.0);
					    SV_Target0.w = u_xlat0 * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    SV_Target0.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat0 = u_xlatb0 ? 1.0 : float(0.0);
					    SV_Target0.w = u_xlat0 * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendAlpha" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + unity_FogColor.xyz;
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    u_xlat0 = u_xlatb0 ? 1.0 : float(0.0);
					    SV_Target0.w = u_xlat0 * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + unity_FogColor.xyz;
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    u_xlat0 = u_xlatb0 ? 1.0 : float(0.0);
					    SV_Target0.w = u_xlat0 * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + unity_FogColor.xyz;
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    u_xlat0 = u_xlatb0 ? 1.0 : float(0.0);
					    SV_Target0.w = u_xlat0 * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + unity_FogColor.xyz;
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    u_xlat0 = u_xlatb0 ? 1.0 : float(0.0);
					    SV_Target0.w = u_xlat0 * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendAlpha" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + unity_FogColor.xyz;
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    u_xlat0 = u_xlatb0 ? 1.0 : float(0.0);
					    SV_Target0.w = u_xlat0 * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + unity_FogColor.xyz;
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    u_xlat0 = u_xlatb0 ? 1.0 : float(0.0);
					    SV_Target0.w = u_xlat0 * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + unity_FogColor.xyz;
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    u_xlat0 = u_xlatb0 ? 1.0 : float(0.0);
					    SV_Target0.w = u_xlat0 * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + unity_FogColor.xyz;
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    u_xlat0 = u_xlatb0 ? 1.0 : float(0.0);
					    SV_Target0.w = u_xlat0 * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendAlpha" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + unity_FogColor.xyz;
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    u_xlat0 = u_xlatb0 ? 1.0 : float(0.0);
					    SV_Target0.w = u_xlat0 * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + unity_FogColor.xyz;
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    u_xlat0 = u_xlatb0 ? 1.0 : float(0.0);
					    SV_Target0.w = u_xlat0 * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + unity_FogColor.xyz;
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    u_xlat0 = u_xlatb0 ? 1.0 : float(0.0);
					    SV_Target0.w = u_xlat0 * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + unity_FogColor.xyz;
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    u_xlat0 = u_xlatb0 ? 1.0 : float(0.0);
					    SV_Target0.w = u_xlat0 * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendAlpha" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    SV_Target0.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat0 = u_xlatb0 ? 1.0 : float(0.0);
					    SV_Target0.w = u_xlat0 * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    SV_Target0.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat0 = u_xlatb0 ? 1.0 : float(0.0);
					    SV_Target0.w = u_xlat0 * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendAlpha" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    SV_Target0.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat0 = u_xlatb0 ? 1.0 : float(0.0);
					    SV_Target0.w = u_xlat0 * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    SV_Target0.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat0 = u_xlatb0 ? 1.0 : float(0.0);
					    SV_Target0.w = u_xlat0 * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendAlpha" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + unity_FogColor.xyz;
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    u_xlat0 = u_xlatb0 ? 1.0 : float(0.0);
					    SV_Target0.w = u_xlat0 * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + unity_FogColor.xyz;
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    u_xlat0 = u_xlatb0 ? 1.0 : float(0.0);
					    SV_Target0.w = u_xlat0 * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + unity_FogColor.xyz;
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    u_xlat0 = u_xlatb0 ? 1.0 : float(0.0);
					    SV_Target0.w = u_xlat0 * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + unity_FogColor.xyz;
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    u_xlat0 = u_xlatb0 ? 1.0 : float(0.0);
					    SV_Target0.w = u_xlat0 * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendAlpha" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + unity_FogColor.xyz;
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    u_xlat0 = u_xlatb0 ? 1.0 : float(0.0);
					    SV_Target0.w = u_xlat0 * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + unity_FogColor.xyz;
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    u_xlat0 = u_xlatb0 ? 1.0 : float(0.0);
					    SV_Target0.w = u_xlat0 * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + unity_FogColor.xyz;
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    u_xlat0 = u_xlatb0 ? 1.0 : float(0.0);
					    SV_Target0.w = u_xlat0 * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + unity_FogColor.xyz;
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    u_xlat0 = u_xlatb0 ? 1.0 : float(0.0);
					    SV_Target0.w = u_xlat0 * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendAlpha" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + unity_FogColor.xyz;
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    u_xlat0 = u_xlatb0 ? 1.0 : float(0.0);
					    SV_Target0.w = u_xlat0 * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + unity_FogColor.xyz;
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    u_xlat0 = u_xlatb0 ? 1.0 : float(0.0);
					    SV_Target0.w = u_xlat0 * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + unity_FogColor.xyz;
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    u_xlat0 = u_xlatb0 ? 1.0 : float(0.0);
					    SV_Target0.w = u_xlat0 * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + unity_FogColor.xyz;
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    u_xlat0 = u_xlatb0 ? 1.0 : float(0.0);
					    SV_Target0.w = u_xlat0 * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendAlpha" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat0 = u_xlat0 * vs_COLOR0;
					    SV_Target0.w = u_xlat0.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat0 = u_xlat0 * vs_COLOR0;
					    SV_Target0.w = u_xlat0.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendAlpha" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[7];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    SV_Target0.w = u_xlat0.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[6];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    SV_Target0.w = u_xlat0.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendAlpha" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.xyz = u_xlat1.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    u_xlat1.x = u_xlat1.w * vs_COLOR0.w;
					    SV_Target0.w = u_xlat1.x;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.xyz = u_xlat1.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    u_xlat1.x = u_xlat1.w * vs_COLOR0.w;
					    SV_Target0.w = u_xlat1.x;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					float u_xlat9;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat0.x = u_xlat0.x * u_xlat1.w;
					    SV_Target0.w = u_xlat0.x;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0.xyz = u_xlat1.xyz * u_xlat0.xyz + (-unity_FogColor.xyz);
					    u_xlat9 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat9 = (-u_xlat9) + 1.0;
					    u_xlat9 = u_xlat9 * _ProjectionParams.z;
					    u_xlat9 = max(u_xlat9, 0.0);
					    u_xlat9 = u_xlat9 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat9 = clamp(u_xlat9, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat9) * u_xlat0.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					float u_xlat9;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat0.x = u_xlat0.x * u_xlat1.w;
					    SV_Target0.w = u_xlat0.x;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0.xyz = u_xlat1.xyz * u_xlat0.xyz + (-unity_FogColor.xyz);
					    u_xlat9 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat9 = (-u_xlat9) + 1.0;
					    u_xlat9 = u_xlat9 * _ProjectionParams.z;
					    u_xlat9 = max(u_xlat9, 0.0);
					    u_xlat9 = u_xlat9 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat9 = clamp(u_xlat9, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat9) * u_xlat0.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendAlpha" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.xyz = u_xlat1.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    u_xlat1.x = u_xlat1.w * vs_COLOR0.w;
					    SV_Target0.w = u_xlat1.x;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.xyz = u_xlat1.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    u_xlat1.x = u_xlat1.w * vs_COLOR0.w;
					    SV_Target0.w = u_xlat1.x;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0.x = (-u_xlat0.x) + 1.0;
					    u_xlat0.x = u_xlat0.x * _ProjectionParams.z;
					    u_xlat0.x = max(u_xlat0.x, 0.0);
					    u_xlat0.x = u_xlat0.x * unity_FogParams.y;
					    u_xlat0.x = exp2((-u_xlat0.x));
					    u_xlat0.x = min(u_xlat0.x, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.xyz = vs_COLOR0.xyz;
					    u_xlat3.xyz = u_xlat1.xyz * u_xlat3.xyz + (-unity_FogColor.xyz);
					    SV_Target0.xyz = u_xlat0.xxx * u_xlat3.xyz + unity_FogColor.xyz;
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = u_xlat0.x * vs_COLOR0.w;
					    u_xlat0.x = u_xlat0.x * u_xlat1.w;
					    SV_Target0.w = u_xlat0.x;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0.x = (-u_xlat0.x) + 1.0;
					    u_xlat0.x = u_xlat0.x * _ProjectionParams.z;
					    u_xlat0.x = max(u_xlat0.x, 0.0);
					    u_xlat0.x = u_xlat0.x * unity_FogParams.y;
					    u_xlat0.x = exp2((-u_xlat0.x));
					    u_xlat0.x = min(u_xlat0.x, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.xyz = vs_COLOR0.xyz;
					    u_xlat3.xyz = u_xlat1.xyz * u_xlat3.xyz + (-unity_FogColor.xyz);
					    SV_Target0.xyz = u_xlat0.xxx * u_xlat3.xyz + unity_FogColor.xyz;
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = u_xlat0.x * vs_COLOR0.w;
					    u_xlat0.x = u_xlat0.x * u_xlat1.w;
					    SV_Target0.w = u_xlat0.x;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendAlpha" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.xyz = u_xlat1.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    u_xlat1.x = u_xlat1.w * vs_COLOR0.w;
					    SV_Target0.w = u_xlat1.x;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.xyz = u_xlat1.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    u_xlat1.x = u_xlat1.w * vs_COLOR0.w;
					    SV_Target0.w = u_xlat1.x;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0.x = (-u_xlat0.x) + 1.0;
					    u_xlat0.x = u_xlat0.x * _ProjectionParams.z;
					    u_xlat0.x = max(u_xlat0.x, 0.0);
					    u_xlat0.x = u_xlat0.x * unity_FogParams.x;
					    u_xlat0.x = u_xlat0.x * (-u_xlat0.x);
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.xyz = vs_COLOR0.xyz;
					    u_xlat3.xyz = u_xlat1.xyz * u_xlat3.xyz + (-unity_FogColor.xyz);
					    SV_Target0.xyz = u_xlat0.xxx * u_xlat3.xyz + unity_FogColor.xyz;
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = u_xlat0.x * vs_COLOR0.w;
					    u_xlat0.x = u_xlat0.x * u_xlat1.w;
					    SV_Target0.w = u_xlat0.x;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0.x = (-u_xlat0.x) + 1.0;
					    u_xlat0.x = u_xlat0.x * _ProjectionParams.z;
					    u_xlat0.x = max(u_xlat0.x, 0.0);
					    u_xlat0.x = u_xlat0.x * unity_FogParams.x;
					    u_xlat0.x = u_xlat0.x * (-u_xlat0.x);
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.xyz = vs_COLOR0.xyz;
					    u_xlat3.xyz = u_xlat1.xyz * u_xlat3.xyz + (-unity_FogColor.xyz);
					    SV_Target0.xyz = u_xlat0.xxx * u_xlat3.xyz + unity_FogColor.xyz;
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = u_xlat0.x * vs_COLOR0.w;
					    u_xlat0.x = u_xlat0.x * u_xlat1.w;
					    SV_Target0.w = u_xlat0.x;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendAlpha" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[7];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    SV_Target0.w = u_xlat0.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[6];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    SV_Target0.w = u_xlat0.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendAlpha" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[7];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    SV_Target0.w = u_xlat0.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[6];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    SV_Target0.w = u_xlat0.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendAlpha" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					float u_xlat9;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat0.x = u_xlat0.x * u_xlat1.w;
					    SV_Target0.w = u_xlat0.x;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0.xyz = u_xlat1.xyz * u_xlat0.xyz + (-unity_FogColor.xyz);
					    u_xlat9 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat9 = (-u_xlat9) + 1.0;
					    u_xlat9 = u_xlat9 * _ProjectionParams.z;
					    u_xlat9 = max(u_xlat9, 0.0);
					    u_xlat9 = u_xlat9 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat9 = clamp(u_xlat9, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat9) * u_xlat0.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					float u_xlat9;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat0.x = u_xlat0.x * u_xlat1.w;
					    SV_Target0.w = u_xlat0.x;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0.xyz = u_xlat1.xyz * u_xlat0.xyz + (-unity_FogColor.xyz);
					    u_xlat9 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat9 = (-u_xlat9) + 1.0;
					    u_xlat9 = u_xlat9 * _ProjectionParams.z;
					    u_xlat9 = max(u_xlat9, 0.0);
					    u_xlat9 = u_xlat9 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat9 = clamp(u_xlat9, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat9) * u_xlat0.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					float u_xlat9;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat0.x = u_xlat0.x * u_xlat1.w;
					    SV_Target0.w = u_xlat0.x;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0.xyz = u_xlat1.xyz * u_xlat0.xyz + (-unity_FogColor.xyz);
					    u_xlat9 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat9 = (-u_xlat9) + 1.0;
					    u_xlat9 = u_xlat9 * _ProjectionParams.z;
					    u_xlat9 = max(u_xlat9, 0.0);
					    u_xlat9 = u_xlat9 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat9 = clamp(u_xlat9, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat9) * u_xlat0.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					float u_xlat9;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat0.x = u_xlat0.x * u_xlat1.w;
					    SV_Target0.w = u_xlat0.x;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0.xyz = u_xlat1.xyz * u_xlat0.xyz + (-unity_FogColor.xyz);
					    u_xlat9 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat9 = (-u_xlat9) + 1.0;
					    u_xlat9 = u_xlat9 * _ProjectionParams.z;
					    u_xlat9 = max(u_xlat9, 0.0);
					    u_xlat9 = u_xlat9 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat9 = clamp(u_xlat9, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat9) * u_xlat0.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendAlpha" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0.x = (-u_xlat0.x) + 1.0;
					    u_xlat0.x = u_xlat0.x * _ProjectionParams.z;
					    u_xlat0.x = max(u_xlat0.x, 0.0);
					    u_xlat0.x = u_xlat0.x * unity_FogParams.y;
					    u_xlat0.x = exp2((-u_xlat0.x));
					    u_xlat0.x = min(u_xlat0.x, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.xyz = vs_COLOR0.xyz;
					    u_xlat3.xyz = u_xlat1.xyz * u_xlat3.xyz + (-unity_FogColor.xyz);
					    SV_Target0.xyz = u_xlat0.xxx * u_xlat3.xyz + unity_FogColor.xyz;
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = u_xlat0.x * vs_COLOR0.w;
					    u_xlat0.x = u_xlat0.x * u_xlat1.w;
					    SV_Target0.w = u_xlat0.x;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0.x = (-u_xlat0.x) + 1.0;
					    u_xlat0.x = u_xlat0.x * _ProjectionParams.z;
					    u_xlat0.x = max(u_xlat0.x, 0.0);
					    u_xlat0.x = u_xlat0.x * unity_FogParams.y;
					    u_xlat0.x = exp2((-u_xlat0.x));
					    u_xlat0.x = min(u_xlat0.x, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.xyz = vs_COLOR0.xyz;
					    u_xlat3.xyz = u_xlat1.xyz * u_xlat3.xyz + (-unity_FogColor.xyz);
					    SV_Target0.xyz = u_xlat0.xxx * u_xlat3.xyz + unity_FogColor.xyz;
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = u_xlat0.x * vs_COLOR0.w;
					    u_xlat0.x = u_xlat0.x * u_xlat1.w;
					    SV_Target0.w = u_xlat0.x;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0.x = (-u_xlat0.x) + 1.0;
					    u_xlat0.x = u_xlat0.x * _ProjectionParams.z;
					    u_xlat0.x = max(u_xlat0.x, 0.0);
					    u_xlat0.x = u_xlat0.x * unity_FogParams.y;
					    u_xlat0.x = exp2((-u_xlat0.x));
					    u_xlat0.x = min(u_xlat0.x, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.xyz = vs_COLOR0.xyz;
					    u_xlat3.xyz = u_xlat1.xyz * u_xlat3.xyz + (-unity_FogColor.xyz);
					    SV_Target0.xyz = u_xlat0.xxx * u_xlat3.xyz + unity_FogColor.xyz;
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = u_xlat0.x * vs_COLOR0.w;
					    u_xlat0.x = u_xlat0.x * u_xlat1.w;
					    SV_Target0.w = u_xlat0.x;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0.x = (-u_xlat0.x) + 1.0;
					    u_xlat0.x = u_xlat0.x * _ProjectionParams.z;
					    u_xlat0.x = max(u_xlat0.x, 0.0);
					    u_xlat0.x = u_xlat0.x * unity_FogParams.y;
					    u_xlat0.x = exp2((-u_xlat0.x));
					    u_xlat0.x = min(u_xlat0.x, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.xyz = vs_COLOR0.xyz;
					    u_xlat3.xyz = u_xlat1.xyz * u_xlat3.xyz + (-unity_FogColor.xyz);
					    SV_Target0.xyz = u_xlat0.xxx * u_xlat3.xyz + unity_FogColor.xyz;
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = u_xlat0.x * vs_COLOR0.w;
					    u_xlat0.x = u_xlat0.x * u_xlat1.w;
					    SV_Target0.w = u_xlat0.x;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendAlpha" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0.x = (-u_xlat0.x) + 1.0;
					    u_xlat0.x = u_xlat0.x * _ProjectionParams.z;
					    u_xlat0.x = max(u_xlat0.x, 0.0);
					    u_xlat0.x = u_xlat0.x * unity_FogParams.x;
					    u_xlat0.x = u_xlat0.x * (-u_xlat0.x);
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.xyz = vs_COLOR0.xyz;
					    u_xlat3.xyz = u_xlat1.xyz * u_xlat3.xyz + (-unity_FogColor.xyz);
					    SV_Target0.xyz = u_xlat0.xxx * u_xlat3.xyz + unity_FogColor.xyz;
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = u_xlat0.x * vs_COLOR0.w;
					    u_xlat0.x = u_xlat0.x * u_xlat1.w;
					    SV_Target0.w = u_xlat0.x;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0.x = (-u_xlat0.x) + 1.0;
					    u_xlat0.x = u_xlat0.x * _ProjectionParams.z;
					    u_xlat0.x = max(u_xlat0.x, 0.0);
					    u_xlat0.x = u_xlat0.x * unity_FogParams.x;
					    u_xlat0.x = u_xlat0.x * (-u_xlat0.x);
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.xyz = vs_COLOR0.xyz;
					    u_xlat3.xyz = u_xlat1.xyz * u_xlat3.xyz + (-unity_FogColor.xyz);
					    SV_Target0.xyz = u_xlat0.xxx * u_xlat3.xyz + unity_FogColor.xyz;
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = u_xlat0.x * vs_COLOR0.w;
					    u_xlat0.x = u_xlat0.x * u_xlat1.w;
					    SV_Target0.w = u_xlat0.x;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0.x = (-u_xlat0.x) + 1.0;
					    u_xlat0.x = u_xlat0.x * _ProjectionParams.z;
					    u_xlat0.x = max(u_xlat0.x, 0.0);
					    u_xlat0.x = u_xlat0.x * unity_FogParams.x;
					    u_xlat0.x = u_xlat0.x * (-u_xlat0.x);
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.xyz = vs_COLOR0.xyz;
					    u_xlat3.xyz = u_xlat1.xyz * u_xlat3.xyz + (-unity_FogColor.xyz);
					    SV_Target0.xyz = u_xlat0.xxx * u_xlat3.xyz + unity_FogColor.xyz;
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = u_xlat0.x * vs_COLOR0.w;
					    u_xlat0.x = u_xlat0.x * u_xlat1.w;
					    SV_Target0.w = u_xlat0.x;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0.x = (-u_xlat0.x) + 1.0;
					    u_xlat0.x = u_xlat0.x * _ProjectionParams.z;
					    u_xlat0.x = max(u_xlat0.x, 0.0);
					    u_xlat0.x = u_xlat0.x * unity_FogParams.x;
					    u_xlat0.x = u_xlat0.x * (-u_xlat0.x);
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.xyz = vs_COLOR0.xyz;
					    u_xlat3.xyz = u_xlat1.xyz * u_xlat3.xyz + (-unity_FogColor.xyz);
					    SV_Target0.xyz = u_xlat0.xxx * u_xlat3.xyz + unity_FogColor.xyz;
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = u_xlat0.x * vs_COLOR0.w;
					    u_xlat0.x = u_xlat0.x * u_xlat1.w;
					    SV_Target0.w = u_xlat0.x;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendAlpha" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat0 = u_xlat0.wxyz * vs_COLOR0.wxyz;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.yzw;
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat0 = u_xlat0.wxyz * vs_COLOR0.wxyz;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.yzw;
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendAlpha" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[7];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0.wxyz * u_xlat1.wxyz;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.yzw;
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[6];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0.wxyz * u_xlat1.wxyz;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.yzw;
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendAlpha" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.xyz = u_xlat1.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    u_xlat1.x = u_xlat1.w * vs_COLOR0.w;
					    u_xlat1.x = u_xlat1.x;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat1.x * vs_TEXCOORD4;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.xyz = u_xlat1.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    u_xlat1.x = u_xlat1.w * vs_COLOR0.w;
					    u_xlat1.x = u_xlat1.x;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat1.x * vs_TEXCOORD4;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					float u_xlat9;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat0.x = u_xlat0.x * u_xlat1.w;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0.xyz = u_xlat1.xyz * u_xlat0.xyz + (-unity_FogColor.xyz);
					    u_xlat9 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat9 = (-u_xlat9) + 1.0;
					    u_xlat9 = u_xlat9 * _ProjectionParams.z;
					    u_xlat9 = max(u_xlat9, 0.0);
					    u_xlat9 = u_xlat9 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat9 = clamp(u_xlat9, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat9) * u_xlat0.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					float u_xlat9;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat0.x = u_xlat0.x * u_xlat1.w;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0.xyz = u_xlat1.xyz * u_xlat0.xyz + (-unity_FogColor.xyz);
					    u_xlat9 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat9 = (-u_xlat9) + 1.0;
					    u_xlat9 = u_xlat9 * _ProjectionParams.z;
					    u_xlat9 = max(u_xlat9, 0.0);
					    u_xlat9 = u_xlat9 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat9 = clamp(u_xlat9, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat9) * u_xlat0.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendAlpha" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.xyz = u_xlat1.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    u_xlat1.x = u_xlat1.w * vs_COLOR0.w;
					    u_xlat1.x = u_xlat1.x;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat1.x * vs_TEXCOORD4;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.xyz = u_xlat1.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    u_xlat1.x = u_xlat1.w * vs_COLOR0.w;
					    u_xlat1.x = u_xlat1.x;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat1.x * vs_TEXCOORD4;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					float u_xlat9;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat0.x = u_xlat0.x * u_xlat1.w;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0.xyz = u_xlat1.xyz * u_xlat0.xyz + (-unity_FogColor.xyz);
					    u_xlat9 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat9 = (-u_xlat9) + 1.0;
					    u_xlat9 = u_xlat9 * _ProjectionParams.z;
					    u_xlat9 = max(u_xlat9, 0.0);
					    u_xlat9 = u_xlat9 * unity_FogParams.y;
					    u_xlat9 = exp2((-u_xlat9));
					    u_xlat9 = min(u_xlat9, 1.0);
					    SV_Target0.xyz = vec3(u_xlat9) * u_xlat0.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					float u_xlat9;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat0.x = u_xlat0.x * u_xlat1.w;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0.xyz = u_xlat1.xyz * u_xlat0.xyz + (-unity_FogColor.xyz);
					    u_xlat9 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat9 = (-u_xlat9) + 1.0;
					    u_xlat9 = u_xlat9 * _ProjectionParams.z;
					    u_xlat9 = max(u_xlat9, 0.0);
					    u_xlat9 = u_xlat9 * unity_FogParams.y;
					    u_xlat9 = exp2((-u_xlat9));
					    u_xlat9 = min(u_xlat9, 1.0);
					    SV_Target0.xyz = vec3(u_xlat9) * u_xlat0.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendAlpha" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.xyz = u_xlat1.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    u_xlat1.x = u_xlat1.w * vs_COLOR0.w;
					    u_xlat1.x = u_xlat1.x;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat1.x * vs_TEXCOORD4;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.xyz = u_xlat1.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    u_xlat1.x = u_xlat1.w * vs_COLOR0.w;
					    u_xlat1.x = u_xlat1.x;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat1.x * vs_TEXCOORD4;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					float u_xlat9;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat0.x = u_xlat0.x * u_xlat1.w;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0.xyz = u_xlat1.xyz * u_xlat0.xyz + (-unity_FogColor.xyz);
					    u_xlat9 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat9 = (-u_xlat9) + 1.0;
					    u_xlat9 = u_xlat9 * _ProjectionParams.z;
					    u_xlat9 = max(u_xlat9, 0.0);
					    u_xlat9 = u_xlat9 * unity_FogParams.x;
					    u_xlat9 = u_xlat9 * (-u_xlat9);
					    u_xlat9 = exp2(u_xlat9);
					    SV_Target0.xyz = vec3(u_xlat9) * u_xlat0.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					float u_xlat9;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat0.x = u_xlat0.x * u_xlat1.w;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0.xyz = u_xlat1.xyz * u_xlat0.xyz + (-unity_FogColor.xyz);
					    u_xlat9 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat9 = (-u_xlat9) + 1.0;
					    u_xlat9 = u_xlat9 * _ProjectionParams.z;
					    u_xlat9 = max(u_xlat9, 0.0);
					    u_xlat9 = u_xlat9 * unity_FogParams.x;
					    u_xlat9 = u_xlat9 * (-u_xlat9);
					    u_xlat9 = exp2(u_xlat9);
					    SV_Target0.xyz = vec3(u_xlat9) * u_xlat0.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendAlpha" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[7];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0.wxyz * u_xlat1.wxyz;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.yzw;
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[6];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0.wxyz * u_xlat1.wxyz;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.yzw;
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendAlpha" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[7];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0.wxyz * u_xlat1.wxyz;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.yzw;
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[6];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0.wxyz * u_xlat1.wxyz;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.yzw;
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendAlpha" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					float u_xlat9;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat0.x = u_xlat0.x * u_xlat1.w;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0.xyz = u_xlat1.xyz * u_xlat0.xyz + (-unity_FogColor.xyz);
					    u_xlat9 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat9 = (-u_xlat9) + 1.0;
					    u_xlat9 = u_xlat9 * _ProjectionParams.z;
					    u_xlat9 = max(u_xlat9, 0.0);
					    u_xlat9 = u_xlat9 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat9 = clamp(u_xlat9, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat9) * u_xlat0.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					float u_xlat9;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat0.x = u_xlat0.x * u_xlat1.w;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0.xyz = u_xlat1.xyz * u_xlat0.xyz + (-unity_FogColor.xyz);
					    u_xlat9 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat9 = (-u_xlat9) + 1.0;
					    u_xlat9 = u_xlat9 * _ProjectionParams.z;
					    u_xlat9 = max(u_xlat9, 0.0);
					    u_xlat9 = u_xlat9 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat9 = clamp(u_xlat9, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat9) * u_xlat0.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					float u_xlat9;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat0.x = u_xlat0.x * u_xlat1.w;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0.xyz = u_xlat1.xyz * u_xlat0.xyz + (-unity_FogColor.xyz);
					    u_xlat9 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat9 = (-u_xlat9) + 1.0;
					    u_xlat9 = u_xlat9 * _ProjectionParams.z;
					    u_xlat9 = max(u_xlat9, 0.0);
					    u_xlat9 = u_xlat9 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat9 = clamp(u_xlat9, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat9) * u_xlat0.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					float u_xlat9;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat0.x = u_xlat0.x * u_xlat1.w;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0.xyz = u_xlat1.xyz * u_xlat0.xyz + (-unity_FogColor.xyz);
					    u_xlat9 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat9 = (-u_xlat9) + 1.0;
					    u_xlat9 = u_xlat9 * _ProjectionParams.z;
					    u_xlat9 = max(u_xlat9, 0.0);
					    u_xlat9 = u_xlat9 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat9 = clamp(u_xlat9, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat9) * u_xlat0.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendAlpha" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					float u_xlat9;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat0.x = u_xlat0.x * u_xlat1.w;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0.xyz = u_xlat1.xyz * u_xlat0.xyz + (-unity_FogColor.xyz);
					    u_xlat9 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat9 = (-u_xlat9) + 1.0;
					    u_xlat9 = u_xlat9 * _ProjectionParams.z;
					    u_xlat9 = max(u_xlat9, 0.0);
					    u_xlat9 = u_xlat9 * unity_FogParams.y;
					    u_xlat9 = exp2((-u_xlat9));
					    u_xlat9 = min(u_xlat9, 1.0);
					    SV_Target0.xyz = vec3(u_xlat9) * u_xlat0.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					float u_xlat9;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat0.x = u_xlat0.x * u_xlat1.w;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0.xyz = u_xlat1.xyz * u_xlat0.xyz + (-unity_FogColor.xyz);
					    u_xlat9 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat9 = (-u_xlat9) + 1.0;
					    u_xlat9 = u_xlat9 * _ProjectionParams.z;
					    u_xlat9 = max(u_xlat9, 0.0);
					    u_xlat9 = u_xlat9 * unity_FogParams.y;
					    u_xlat9 = exp2((-u_xlat9));
					    u_xlat9 = min(u_xlat9, 1.0);
					    SV_Target0.xyz = vec3(u_xlat9) * u_xlat0.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					float u_xlat9;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat0.x = u_xlat0.x * u_xlat1.w;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0.xyz = u_xlat1.xyz * u_xlat0.xyz + (-unity_FogColor.xyz);
					    u_xlat9 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat9 = (-u_xlat9) + 1.0;
					    u_xlat9 = u_xlat9 * _ProjectionParams.z;
					    u_xlat9 = max(u_xlat9, 0.0);
					    u_xlat9 = u_xlat9 * unity_FogParams.y;
					    u_xlat9 = exp2((-u_xlat9));
					    u_xlat9 = min(u_xlat9, 1.0);
					    SV_Target0.xyz = vec3(u_xlat9) * u_xlat0.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					float u_xlat9;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat0.x = u_xlat0.x * u_xlat1.w;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0.xyz = u_xlat1.xyz * u_xlat0.xyz + (-unity_FogColor.xyz);
					    u_xlat9 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat9 = (-u_xlat9) + 1.0;
					    u_xlat9 = u_xlat9 * _ProjectionParams.z;
					    u_xlat9 = max(u_xlat9, 0.0);
					    u_xlat9 = u_xlat9 * unity_FogParams.y;
					    u_xlat9 = exp2((-u_xlat9));
					    u_xlat9 = min(u_xlat9, 1.0);
					    SV_Target0.xyz = vec3(u_xlat9) * u_xlat0.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendAlpha" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					float u_xlat9;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat0.x = u_xlat0.x * u_xlat1.w;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0.xyz = u_xlat1.xyz * u_xlat0.xyz + (-unity_FogColor.xyz);
					    u_xlat9 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat9 = (-u_xlat9) + 1.0;
					    u_xlat9 = u_xlat9 * _ProjectionParams.z;
					    u_xlat9 = max(u_xlat9, 0.0);
					    u_xlat9 = u_xlat9 * unity_FogParams.x;
					    u_xlat9 = u_xlat9 * (-u_xlat9);
					    u_xlat9 = exp2(u_xlat9);
					    SV_Target0.xyz = vec3(u_xlat9) * u_xlat0.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					float u_xlat9;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat0.x = u_xlat0.x * u_xlat1.w;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0.xyz = u_xlat1.xyz * u_xlat0.xyz + (-unity_FogColor.xyz);
					    u_xlat9 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat9 = (-u_xlat9) + 1.0;
					    u_xlat9 = u_xlat9 * _ProjectionParams.z;
					    u_xlat9 = max(u_xlat9, 0.0);
					    u_xlat9 = u_xlat9 * unity_FogParams.x;
					    u_xlat9 = u_xlat9 * (-u_xlat9);
					    u_xlat9 = exp2(u_xlat9);
					    SV_Target0.xyz = vec3(u_xlat9) * u_xlat0.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					float u_xlat9;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat0.x = u_xlat0.x * u_xlat1.w;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0.xyz = u_xlat1.xyz * u_xlat0.xyz + (-unity_FogColor.xyz);
					    u_xlat9 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat9 = (-u_xlat9) + 1.0;
					    u_xlat9 = u_xlat9 * _ProjectionParams.z;
					    u_xlat9 = max(u_xlat9, 0.0);
					    u_xlat9 = u_xlat9 * unity_FogParams.x;
					    u_xlat9 = u_xlat9 * (-u_xlat9);
					    u_xlat9 = exp2(u_xlat9);
					    SV_Target0.xyz = vec3(u_xlat9) * u_xlat0.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					float u_xlat9;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat0.x = u_xlat0.x * u_xlat1.w;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0.xyz = u_xlat1.xyz * u_xlat0.xyz + (-unity_FogColor.xyz);
					    u_xlat9 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat9 = (-u_xlat9) + 1.0;
					    u_xlat9 = u_xlat9 * _ProjectionParams.z;
					    u_xlat9 = max(u_xlat9, 0.0);
					    u_xlat9 = u_xlat9 * unity_FogParams.x;
					    u_xlat9 = u_xlat9 * (-u_xlat9);
					    u_xlat9 = exp2(u_xlat9);
					    SV_Target0.xyz = vec3(u_xlat9) * u_xlat0.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendAlpha" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					bool u_xlatb1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1.x = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat0.w = u_xlat0.w * u_xlat1.x;
					    u_xlat0 = u_xlat0 * vs_COLOR0;
					    SV_Target0.w = u_xlat0.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					bool u_xlatb1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1.x = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat0.w = u_xlat0.w * u_xlat1.x;
					    u_xlat0 = u_xlat0 * vs_COLOR0;
					    SV_Target0.w = u_xlat0.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendAlpha" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[7];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					bool u_xlatb2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2.x = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2.x;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    SV_Target0.w = u_xlat0.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[6];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					bool u_xlatb2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2.x = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2.x;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    SV_Target0.w = u_xlat0.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendAlpha" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					bool u_xlatb1;
					float u_xlat6;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1.x = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat6 = u_xlat0.w * u_xlat1.x;
					    u_xlat0.xyz = u_xlat0.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    u_xlat6 = u_xlat6 * vs_COLOR0.w;
					    SV_Target0.w = u_xlat6;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    u_xlat6 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat6 = (-u_xlat6) + 1.0;
					    u_xlat6 = u_xlat6 * _ProjectionParams.z;
					    u_xlat6 = max(u_xlat6, 0.0);
					    u_xlat6 = u_xlat6 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat6 = clamp(u_xlat6, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat6) * u_xlat0.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					bool u_xlatb1;
					float u_xlat6;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1.x = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat6 = u_xlat0.w * u_xlat1.x;
					    u_xlat0.xyz = u_xlat0.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    u_xlat6 = u_xlat6 * vs_COLOR0.w;
					    SV_Target0.w = u_xlat6;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    u_xlat6 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat6 = (-u_xlat6) + 1.0;
					    u_xlat6 = u_xlat6 * _ProjectionParams.z;
					    u_xlat6 = max(u_xlat6, 0.0);
					    u_xlat6 = u_xlat6 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat6 = clamp(u_xlat6, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat6) * u_xlat0.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					float u_xlat3;
					bool u_xlatb3;
					float u_xlat9;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3 = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat3 = u_xlat1.w * u_xlat3;
					    u_xlat0.x = u_xlat0.x * u_xlat3;
					    SV_Target0.w = u_xlat0.x;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0.xyz = u_xlat1.xyz * u_xlat0.xyz + (-unity_FogColor.xyz);
					    u_xlat9 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat9 = (-u_xlat9) + 1.0;
					    u_xlat9 = u_xlat9 * _ProjectionParams.z;
					    u_xlat9 = max(u_xlat9, 0.0);
					    u_xlat9 = u_xlat9 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat9 = clamp(u_xlat9, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat9) * u_xlat0.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					float u_xlat3;
					bool u_xlatb3;
					float u_xlat9;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3 = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat3 = u_xlat1.w * u_xlat3;
					    u_xlat0.x = u_xlat0.x * u_xlat3;
					    SV_Target0.w = u_xlat0.x;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0.xyz = u_xlat1.xyz * u_xlat0.xyz + (-unity_FogColor.xyz);
					    u_xlat9 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat9 = (-u_xlat9) + 1.0;
					    u_xlat9 = u_xlat9 * _ProjectionParams.z;
					    u_xlat9 = max(u_xlat9, 0.0);
					    u_xlat9 = u_xlat9 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat9 = clamp(u_xlat9, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat9) * u_xlat0.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendAlpha" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					bool u_xlatb1;
					float u_xlat6;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1.x = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat6 = u_xlat0.w * u_xlat1.x;
					    u_xlat0.xyz = u_xlat0.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    u_xlat6 = u_xlat6 * vs_COLOR0.w;
					    SV_Target0.w = u_xlat6;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    u_xlat6 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat6 = (-u_xlat6) + 1.0;
					    u_xlat6 = u_xlat6 * _ProjectionParams.z;
					    u_xlat6 = max(u_xlat6, 0.0);
					    u_xlat6 = u_xlat6 * unity_FogParams.y;
					    u_xlat6 = exp2((-u_xlat6));
					    u_xlat6 = min(u_xlat6, 1.0);
					    SV_Target0.xyz = vec3(u_xlat6) * u_xlat0.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					bool u_xlatb1;
					float u_xlat6;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1.x = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat6 = u_xlat0.w * u_xlat1.x;
					    u_xlat0.xyz = u_xlat0.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    u_xlat6 = u_xlat6 * vs_COLOR0.w;
					    SV_Target0.w = u_xlat6;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    u_xlat6 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat6 = (-u_xlat6) + 1.0;
					    u_xlat6 = u_xlat6 * _ProjectionParams.z;
					    u_xlat6 = max(u_xlat6, 0.0);
					    u_xlat6 = u_xlat6 * unity_FogParams.y;
					    u_xlat6 = exp2((-u_xlat6));
					    u_xlat6 = min(u_xlat6, 1.0);
					    SV_Target0.xyz = vec3(u_xlat6) * u_xlat0.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					float u_xlat3;
					bool u_xlatb3;
					float u_xlat9;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3 = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat3 = u_xlat1.w * u_xlat3;
					    u_xlat0.x = u_xlat0.x * u_xlat3;
					    SV_Target0.w = u_xlat0.x;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0.xyz = u_xlat1.xyz * u_xlat0.xyz + (-unity_FogColor.xyz);
					    u_xlat9 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat9 = (-u_xlat9) + 1.0;
					    u_xlat9 = u_xlat9 * _ProjectionParams.z;
					    u_xlat9 = max(u_xlat9, 0.0);
					    u_xlat9 = u_xlat9 * unity_FogParams.y;
					    u_xlat9 = exp2((-u_xlat9));
					    u_xlat9 = min(u_xlat9, 1.0);
					    SV_Target0.xyz = vec3(u_xlat9) * u_xlat0.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					float u_xlat3;
					bool u_xlatb3;
					float u_xlat9;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3 = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat3 = u_xlat1.w * u_xlat3;
					    u_xlat0.x = u_xlat0.x * u_xlat3;
					    SV_Target0.w = u_xlat0.x;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0.xyz = u_xlat1.xyz * u_xlat0.xyz + (-unity_FogColor.xyz);
					    u_xlat9 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat9 = (-u_xlat9) + 1.0;
					    u_xlat9 = u_xlat9 * _ProjectionParams.z;
					    u_xlat9 = max(u_xlat9, 0.0);
					    u_xlat9 = u_xlat9 * unity_FogParams.y;
					    u_xlat9 = exp2((-u_xlat9));
					    u_xlat9 = min(u_xlat9, 1.0);
					    SV_Target0.xyz = vec3(u_xlat9) * u_xlat0.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendAlpha" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					bool u_xlatb1;
					float u_xlat6;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1.x = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat6 = u_xlat0.w * u_xlat1.x;
					    u_xlat0.xyz = u_xlat0.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    u_xlat6 = u_xlat6 * vs_COLOR0.w;
					    SV_Target0.w = u_xlat6;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    u_xlat6 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat6 = (-u_xlat6) + 1.0;
					    u_xlat6 = u_xlat6 * _ProjectionParams.z;
					    u_xlat6 = max(u_xlat6, 0.0);
					    u_xlat6 = u_xlat6 * unity_FogParams.x;
					    u_xlat6 = u_xlat6 * (-u_xlat6);
					    u_xlat6 = exp2(u_xlat6);
					    SV_Target0.xyz = vec3(u_xlat6) * u_xlat0.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					bool u_xlatb1;
					float u_xlat6;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1.x = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat6 = u_xlat0.w * u_xlat1.x;
					    u_xlat0.xyz = u_xlat0.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    u_xlat6 = u_xlat6 * vs_COLOR0.w;
					    SV_Target0.w = u_xlat6;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    u_xlat6 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat6 = (-u_xlat6) + 1.0;
					    u_xlat6 = u_xlat6 * _ProjectionParams.z;
					    u_xlat6 = max(u_xlat6, 0.0);
					    u_xlat6 = u_xlat6 * unity_FogParams.x;
					    u_xlat6 = u_xlat6 * (-u_xlat6);
					    u_xlat6 = exp2(u_xlat6);
					    SV_Target0.xyz = vec3(u_xlat6) * u_xlat0.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					float u_xlat3;
					bool u_xlatb3;
					float u_xlat9;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3 = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat3 = u_xlat1.w * u_xlat3;
					    u_xlat0.x = u_xlat0.x * u_xlat3;
					    SV_Target0.w = u_xlat0.x;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0.xyz = u_xlat1.xyz * u_xlat0.xyz + (-unity_FogColor.xyz);
					    u_xlat9 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat9 = (-u_xlat9) + 1.0;
					    u_xlat9 = u_xlat9 * _ProjectionParams.z;
					    u_xlat9 = max(u_xlat9, 0.0);
					    u_xlat9 = u_xlat9 * unity_FogParams.x;
					    u_xlat9 = u_xlat9 * (-u_xlat9);
					    u_xlat9 = exp2(u_xlat9);
					    SV_Target0.xyz = vec3(u_xlat9) * u_xlat0.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					float u_xlat3;
					bool u_xlatb3;
					float u_xlat9;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3 = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat3 = u_xlat1.w * u_xlat3;
					    u_xlat0.x = u_xlat0.x * u_xlat3;
					    SV_Target0.w = u_xlat0.x;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0.xyz = u_xlat1.xyz * u_xlat0.xyz + (-unity_FogColor.xyz);
					    u_xlat9 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat9 = (-u_xlat9) + 1.0;
					    u_xlat9 = u_xlat9 * _ProjectionParams.z;
					    u_xlat9 = max(u_xlat9, 0.0);
					    u_xlat9 = u_xlat9 * unity_FogParams.x;
					    u_xlat9 = u_xlat9 * (-u_xlat9);
					    u_xlat9 = exp2(u_xlat9);
					    SV_Target0.xyz = vec3(u_xlat9) * u_xlat0.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendAlpha" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[7];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					bool u_xlatb2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2.x = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2.x;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    SV_Target0.w = u_xlat0.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[6];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					bool u_xlatb2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2.x = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2.x;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    SV_Target0.w = u_xlat0.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendAlpha" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[7];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					bool u_xlatb2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2.x = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2.x;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    SV_Target0.w = u_xlat0.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[6];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					bool u_xlatb2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2.x = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2.x;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    SV_Target0.w = u_xlat0.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendAlpha" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					float u_xlat3;
					bool u_xlatb3;
					float u_xlat9;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3 = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat3 = u_xlat1.w * u_xlat3;
					    u_xlat0.x = u_xlat0.x * u_xlat3;
					    SV_Target0.w = u_xlat0.x;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0.xyz = u_xlat1.xyz * u_xlat0.xyz + (-unity_FogColor.xyz);
					    u_xlat9 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat9 = (-u_xlat9) + 1.0;
					    u_xlat9 = u_xlat9 * _ProjectionParams.z;
					    u_xlat9 = max(u_xlat9, 0.0);
					    u_xlat9 = u_xlat9 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat9 = clamp(u_xlat9, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat9) * u_xlat0.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					float u_xlat3;
					bool u_xlatb3;
					float u_xlat9;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3 = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat3 = u_xlat1.w * u_xlat3;
					    u_xlat0.x = u_xlat0.x * u_xlat3;
					    SV_Target0.w = u_xlat0.x;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0.xyz = u_xlat1.xyz * u_xlat0.xyz + (-unity_FogColor.xyz);
					    u_xlat9 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat9 = (-u_xlat9) + 1.0;
					    u_xlat9 = u_xlat9 * _ProjectionParams.z;
					    u_xlat9 = max(u_xlat9, 0.0);
					    u_xlat9 = u_xlat9 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat9 = clamp(u_xlat9, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat9) * u_xlat0.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					float u_xlat3;
					bool u_xlatb3;
					float u_xlat9;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3 = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat3 = u_xlat1.w * u_xlat3;
					    u_xlat0.x = u_xlat0.x * u_xlat3;
					    SV_Target0.w = u_xlat0.x;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0.xyz = u_xlat1.xyz * u_xlat0.xyz + (-unity_FogColor.xyz);
					    u_xlat9 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat9 = (-u_xlat9) + 1.0;
					    u_xlat9 = u_xlat9 * _ProjectionParams.z;
					    u_xlat9 = max(u_xlat9, 0.0);
					    u_xlat9 = u_xlat9 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat9 = clamp(u_xlat9, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat9) * u_xlat0.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					float u_xlat3;
					bool u_xlatb3;
					float u_xlat9;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3 = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat3 = u_xlat1.w * u_xlat3;
					    u_xlat0.x = u_xlat0.x * u_xlat3;
					    SV_Target0.w = u_xlat0.x;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0.xyz = u_xlat1.xyz * u_xlat0.xyz + (-unity_FogColor.xyz);
					    u_xlat9 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat9 = (-u_xlat9) + 1.0;
					    u_xlat9 = u_xlat9 * _ProjectionParams.z;
					    u_xlat9 = max(u_xlat9, 0.0);
					    u_xlat9 = u_xlat9 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat9 = clamp(u_xlat9, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat9) * u_xlat0.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendAlpha" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					float u_xlat3;
					bool u_xlatb3;
					float u_xlat9;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3 = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat3 = u_xlat1.w * u_xlat3;
					    u_xlat0.x = u_xlat0.x * u_xlat3;
					    SV_Target0.w = u_xlat0.x;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0.xyz = u_xlat1.xyz * u_xlat0.xyz + (-unity_FogColor.xyz);
					    u_xlat9 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat9 = (-u_xlat9) + 1.0;
					    u_xlat9 = u_xlat9 * _ProjectionParams.z;
					    u_xlat9 = max(u_xlat9, 0.0);
					    u_xlat9 = u_xlat9 * unity_FogParams.y;
					    u_xlat9 = exp2((-u_xlat9));
					    u_xlat9 = min(u_xlat9, 1.0);
					    SV_Target0.xyz = vec3(u_xlat9) * u_xlat0.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					float u_xlat3;
					bool u_xlatb3;
					float u_xlat9;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3 = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat3 = u_xlat1.w * u_xlat3;
					    u_xlat0.x = u_xlat0.x * u_xlat3;
					    SV_Target0.w = u_xlat0.x;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0.xyz = u_xlat1.xyz * u_xlat0.xyz + (-unity_FogColor.xyz);
					    u_xlat9 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat9 = (-u_xlat9) + 1.0;
					    u_xlat9 = u_xlat9 * _ProjectionParams.z;
					    u_xlat9 = max(u_xlat9, 0.0);
					    u_xlat9 = u_xlat9 * unity_FogParams.y;
					    u_xlat9 = exp2((-u_xlat9));
					    u_xlat9 = min(u_xlat9, 1.0);
					    SV_Target0.xyz = vec3(u_xlat9) * u_xlat0.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					float u_xlat3;
					bool u_xlatb3;
					float u_xlat9;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3 = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat3 = u_xlat1.w * u_xlat3;
					    u_xlat0.x = u_xlat0.x * u_xlat3;
					    SV_Target0.w = u_xlat0.x;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0.xyz = u_xlat1.xyz * u_xlat0.xyz + (-unity_FogColor.xyz);
					    u_xlat9 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat9 = (-u_xlat9) + 1.0;
					    u_xlat9 = u_xlat9 * _ProjectionParams.z;
					    u_xlat9 = max(u_xlat9, 0.0);
					    u_xlat9 = u_xlat9 * unity_FogParams.y;
					    u_xlat9 = exp2((-u_xlat9));
					    u_xlat9 = min(u_xlat9, 1.0);
					    SV_Target0.xyz = vec3(u_xlat9) * u_xlat0.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					float u_xlat3;
					bool u_xlatb3;
					float u_xlat9;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3 = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat3 = u_xlat1.w * u_xlat3;
					    u_xlat0.x = u_xlat0.x * u_xlat3;
					    SV_Target0.w = u_xlat0.x;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0.xyz = u_xlat1.xyz * u_xlat0.xyz + (-unity_FogColor.xyz);
					    u_xlat9 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat9 = (-u_xlat9) + 1.0;
					    u_xlat9 = u_xlat9 * _ProjectionParams.z;
					    u_xlat9 = max(u_xlat9, 0.0);
					    u_xlat9 = u_xlat9 * unity_FogParams.y;
					    u_xlat9 = exp2((-u_xlat9));
					    u_xlat9 = min(u_xlat9, 1.0);
					    SV_Target0.xyz = vec3(u_xlat9) * u_xlat0.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendAlpha" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					float u_xlat3;
					bool u_xlatb3;
					float u_xlat9;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3 = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat3 = u_xlat1.w * u_xlat3;
					    u_xlat0.x = u_xlat0.x * u_xlat3;
					    SV_Target0.w = u_xlat0.x;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0.xyz = u_xlat1.xyz * u_xlat0.xyz + (-unity_FogColor.xyz);
					    u_xlat9 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat9 = (-u_xlat9) + 1.0;
					    u_xlat9 = u_xlat9 * _ProjectionParams.z;
					    u_xlat9 = max(u_xlat9, 0.0);
					    u_xlat9 = u_xlat9 * unity_FogParams.x;
					    u_xlat9 = u_xlat9 * (-u_xlat9);
					    u_xlat9 = exp2(u_xlat9);
					    SV_Target0.xyz = vec3(u_xlat9) * u_xlat0.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					float u_xlat3;
					bool u_xlatb3;
					float u_xlat9;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3 = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat3 = u_xlat1.w * u_xlat3;
					    u_xlat0.x = u_xlat0.x * u_xlat3;
					    SV_Target0.w = u_xlat0.x;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0.xyz = u_xlat1.xyz * u_xlat0.xyz + (-unity_FogColor.xyz);
					    u_xlat9 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat9 = (-u_xlat9) + 1.0;
					    u_xlat9 = u_xlat9 * _ProjectionParams.z;
					    u_xlat9 = max(u_xlat9, 0.0);
					    u_xlat9 = u_xlat9 * unity_FogParams.x;
					    u_xlat9 = u_xlat9 * (-u_xlat9);
					    u_xlat9 = exp2(u_xlat9);
					    SV_Target0.xyz = vec3(u_xlat9) * u_xlat0.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					float u_xlat3;
					bool u_xlatb3;
					float u_xlat9;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3 = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat3 = u_xlat1.w * u_xlat3;
					    u_xlat0.x = u_xlat0.x * u_xlat3;
					    SV_Target0.w = u_xlat0.x;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0.xyz = u_xlat1.xyz * u_xlat0.xyz + (-unity_FogColor.xyz);
					    u_xlat9 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat9 = (-u_xlat9) + 1.0;
					    u_xlat9 = u_xlat9 * _ProjectionParams.z;
					    u_xlat9 = max(u_xlat9, 0.0);
					    u_xlat9 = u_xlat9 * unity_FogParams.x;
					    u_xlat9 = u_xlat9 * (-u_xlat9);
					    u_xlat9 = exp2(u_xlat9);
					    SV_Target0.xyz = vec3(u_xlat9) * u_xlat0.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					float u_xlat3;
					bool u_xlatb3;
					float u_xlat9;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3 = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat3 = u_xlat1.w * u_xlat3;
					    u_xlat0.x = u_xlat0.x * u_xlat3;
					    SV_Target0.w = u_xlat0.x;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0.xyz = u_xlat1.xyz * u_xlat0.xyz + (-unity_FogColor.xyz);
					    u_xlat9 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat9 = (-u_xlat9) + 1.0;
					    u_xlat9 = u_xlat9 * _ProjectionParams.z;
					    u_xlat9 = max(u_xlat9, 0.0);
					    u_xlat9 = u_xlat9 * unity_FogParams.x;
					    u_xlat9 = u_xlat9 * (-u_xlat9);
					    u_xlat9 = exp2(u_xlat9);
					    SV_Target0.xyz = vec3(u_xlat9) * u_xlat0.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendAlpha" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					bool u_xlatb1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1.x = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat0.w = u_xlat0.w * u_xlat1.x;
					    u_xlat0 = u_xlat0.wxyz * vs_COLOR0.wxyz;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.yzw;
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					bool u_xlatb1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1.x = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat0.w = u_xlat0.w * u_xlat1.x;
					    u_xlat0 = u_xlat0.wxyz * vs_COLOR0.wxyz;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.yzw;
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendAlpha" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[7];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					bool u_xlatb2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2.x = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2.x;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0.wxyz * u_xlat1.wxyz;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.yzw;
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[6];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					bool u_xlatb2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2.x = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2.x;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0.wxyz * u_xlat1.wxyz;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.yzw;
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendAlpha" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					bool u_xlatb1;
					float u_xlat6;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1.x = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat6 = u_xlat0.w * u_xlat1.x;
					    u_xlat0.xyz = u_xlat0.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    u_xlat1.x = u_xlat6 * vs_COLOR0.w;
					    u_xlat1.x = u_xlat1.x;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat1.x * vs_TEXCOORD4;
					    u_xlat6 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat6 = (-u_xlat6) + 1.0;
					    u_xlat6 = u_xlat6 * _ProjectionParams.z;
					    u_xlat6 = max(u_xlat6, 0.0);
					    u_xlat6 = u_xlat6 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat6 = clamp(u_xlat6, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat6) * u_xlat0.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					bool u_xlatb1;
					float u_xlat6;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1.x = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat6 = u_xlat0.w * u_xlat1.x;
					    u_xlat0.xyz = u_xlat0.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    u_xlat1.x = u_xlat6 * vs_COLOR0.w;
					    u_xlat1.x = u_xlat1.x;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat1.x * vs_TEXCOORD4;
					    u_xlat6 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat6 = (-u_xlat6) + 1.0;
					    u_xlat6 = u_xlat6 * _ProjectionParams.z;
					    u_xlat6 = max(u_xlat6, 0.0);
					    u_xlat6 = u_xlat6 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat6 = clamp(u_xlat6, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat6) * u_xlat0.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					float u_xlat3;
					bool u_xlatb3;
					float u_xlat9;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3 = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat3 = u_xlat1.w * u_xlat3;
					    u_xlat0.x = u_xlat0.x * u_xlat3;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0.xyz = u_xlat1.xyz * u_xlat0.xyz + (-unity_FogColor.xyz);
					    u_xlat9 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat9 = (-u_xlat9) + 1.0;
					    u_xlat9 = u_xlat9 * _ProjectionParams.z;
					    u_xlat9 = max(u_xlat9, 0.0);
					    u_xlat9 = u_xlat9 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat9 = clamp(u_xlat9, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat9) * u_xlat0.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					float u_xlat3;
					bool u_xlatb3;
					float u_xlat9;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3 = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat3 = u_xlat1.w * u_xlat3;
					    u_xlat0.x = u_xlat0.x * u_xlat3;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0.xyz = u_xlat1.xyz * u_xlat0.xyz + (-unity_FogColor.xyz);
					    u_xlat9 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat9 = (-u_xlat9) + 1.0;
					    u_xlat9 = u_xlat9 * _ProjectionParams.z;
					    u_xlat9 = max(u_xlat9, 0.0);
					    u_xlat9 = u_xlat9 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat9 = clamp(u_xlat9, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat9) * u_xlat0.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendAlpha" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					bool u_xlatb1;
					float u_xlat6;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1.x = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat6 = u_xlat0.w * u_xlat1.x;
					    u_xlat0.xyz = u_xlat0.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    u_xlat1.x = u_xlat6 * vs_COLOR0.w;
					    u_xlat1.x = u_xlat1.x;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat1.x * vs_TEXCOORD4;
					    u_xlat6 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat6 = (-u_xlat6) + 1.0;
					    u_xlat6 = u_xlat6 * _ProjectionParams.z;
					    u_xlat6 = max(u_xlat6, 0.0);
					    u_xlat6 = u_xlat6 * unity_FogParams.y;
					    u_xlat6 = exp2((-u_xlat6));
					    u_xlat6 = min(u_xlat6, 1.0);
					    SV_Target0.xyz = vec3(u_xlat6) * u_xlat0.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					bool u_xlatb1;
					float u_xlat6;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1.x = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat6 = u_xlat0.w * u_xlat1.x;
					    u_xlat0.xyz = u_xlat0.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    u_xlat1.x = u_xlat6 * vs_COLOR0.w;
					    u_xlat1.x = u_xlat1.x;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat1.x * vs_TEXCOORD4;
					    u_xlat6 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat6 = (-u_xlat6) + 1.0;
					    u_xlat6 = u_xlat6 * _ProjectionParams.z;
					    u_xlat6 = max(u_xlat6, 0.0);
					    u_xlat6 = u_xlat6 * unity_FogParams.y;
					    u_xlat6 = exp2((-u_xlat6));
					    u_xlat6 = min(u_xlat6, 1.0);
					    SV_Target0.xyz = vec3(u_xlat6) * u_xlat0.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					float u_xlat3;
					bool u_xlatb3;
					float u_xlat9;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3 = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat3 = u_xlat1.w * u_xlat3;
					    u_xlat0.x = u_xlat0.x * u_xlat3;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0.xyz = u_xlat1.xyz * u_xlat0.xyz + (-unity_FogColor.xyz);
					    u_xlat9 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat9 = (-u_xlat9) + 1.0;
					    u_xlat9 = u_xlat9 * _ProjectionParams.z;
					    u_xlat9 = max(u_xlat9, 0.0);
					    u_xlat9 = u_xlat9 * unity_FogParams.y;
					    u_xlat9 = exp2((-u_xlat9));
					    u_xlat9 = min(u_xlat9, 1.0);
					    SV_Target0.xyz = vec3(u_xlat9) * u_xlat0.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					float u_xlat3;
					bool u_xlatb3;
					float u_xlat9;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3 = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat3 = u_xlat1.w * u_xlat3;
					    u_xlat0.x = u_xlat0.x * u_xlat3;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0.xyz = u_xlat1.xyz * u_xlat0.xyz + (-unity_FogColor.xyz);
					    u_xlat9 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat9 = (-u_xlat9) + 1.0;
					    u_xlat9 = u_xlat9 * _ProjectionParams.z;
					    u_xlat9 = max(u_xlat9, 0.0);
					    u_xlat9 = u_xlat9 * unity_FogParams.y;
					    u_xlat9 = exp2((-u_xlat9));
					    u_xlat9 = min(u_xlat9, 1.0);
					    SV_Target0.xyz = vec3(u_xlat9) * u_xlat0.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendAlpha" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					bool u_xlatb1;
					float u_xlat6;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1.x = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat6 = u_xlat0.w * u_xlat1.x;
					    u_xlat0.xyz = u_xlat0.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    u_xlat1.x = u_xlat6 * vs_COLOR0.w;
					    u_xlat1.x = u_xlat1.x;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat1.x * vs_TEXCOORD4;
					    u_xlat6 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat6 = (-u_xlat6) + 1.0;
					    u_xlat6 = u_xlat6 * _ProjectionParams.z;
					    u_xlat6 = max(u_xlat6, 0.0);
					    u_xlat6 = u_xlat6 * unity_FogParams.x;
					    u_xlat6 = u_xlat6 * (-u_xlat6);
					    u_xlat6 = exp2(u_xlat6);
					    SV_Target0.xyz = vec3(u_xlat6) * u_xlat0.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					bool u_xlatb1;
					float u_xlat6;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1.x = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat6 = u_xlat0.w * u_xlat1.x;
					    u_xlat0.xyz = u_xlat0.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    u_xlat1.x = u_xlat6 * vs_COLOR0.w;
					    u_xlat1.x = u_xlat1.x;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat1.x * vs_TEXCOORD4;
					    u_xlat6 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat6 = (-u_xlat6) + 1.0;
					    u_xlat6 = u_xlat6 * _ProjectionParams.z;
					    u_xlat6 = max(u_xlat6, 0.0);
					    u_xlat6 = u_xlat6 * unity_FogParams.x;
					    u_xlat6 = u_xlat6 * (-u_xlat6);
					    u_xlat6 = exp2(u_xlat6);
					    SV_Target0.xyz = vec3(u_xlat6) * u_xlat0.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					float u_xlat3;
					bool u_xlatb3;
					float u_xlat9;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3 = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat3 = u_xlat1.w * u_xlat3;
					    u_xlat0.x = u_xlat0.x * u_xlat3;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0.xyz = u_xlat1.xyz * u_xlat0.xyz + (-unity_FogColor.xyz);
					    u_xlat9 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat9 = (-u_xlat9) + 1.0;
					    u_xlat9 = u_xlat9 * _ProjectionParams.z;
					    u_xlat9 = max(u_xlat9, 0.0);
					    u_xlat9 = u_xlat9 * unity_FogParams.x;
					    u_xlat9 = u_xlat9 * (-u_xlat9);
					    u_xlat9 = exp2(u_xlat9);
					    SV_Target0.xyz = vec3(u_xlat9) * u_xlat0.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					float u_xlat3;
					bool u_xlatb3;
					float u_xlat9;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3 = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat3 = u_xlat1.w * u_xlat3;
					    u_xlat0.x = u_xlat0.x * u_xlat3;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0.xyz = u_xlat1.xyz * u_xlat0.xyz + (-unity_FogColor.xyz);
					    u_xlat9 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat9 = (-u_xlat9) + 1.0;
					    u_xlat9 = u_xlat9 * _ProjectionParams.z;
					    u_xlat9 = max(u_xlat9, 0.0);
					    u_xlat9 = u_xlat9 * unity_FogParams.x;
					    u_xlat9 = u_xlat9 * (-u_xlat9);
					    u_xlat9 = exp2(u_xlat9);
					    SV_Target0.xyz = vec3(u_xlat9) * u_xlat0.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendAlpha" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[7];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					bool u_xlatb2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2.x = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2.x;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0.wxyz * u_xlat1.wxyz;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.yzw;
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[6];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					bool u_xlatb2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2.x = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2.x;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0.wxyz * u_xlat1.wxyz;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.yzw;
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendAlpha" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[7];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					bool u_xlatb2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2.x = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2.x;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0.wxyz * u_xlat1.wxyz;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.yzw;
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[6];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					bool u_xlatb2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2.x = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2.x;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0.wxyz * u_xlat1.wxyz;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.yzw;
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendAlpha" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					float u_xlat3;
					bool u_xlatb3;
					float u_xlat9;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3 = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat3 = u_xlat1.w * u_xlat3;
					    u_xlat0.x = u_xlat0.x * u_xlat3;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0.xyz = u_xlat1.xyz * u_xlat0.xyz + (-unity_FogColor.xyz);
					    u_xlat9 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat9 = (-u_xlat9) + 1.0;
					    u_xlat9 = u_xlat9 * _ProjectionParams.z;
					    u_xlat9 = max(u_xlat9, 0.0);
					    u_xlat9 = u_xlat9 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat9 = clamp(u_xlat9, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat9) * u_xlat0.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					float u_xlat3;
					bool u_xlatb3;
					float u_xlat9;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3 = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat3 = u_xlat1.w * u_xlat3;
					    u_xlat0.x = u_xlat0.x * u_xlat3;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0.xyz = u_xlat1.xyz * u_xlat0.xyz + (-unity_FogColor.xyz);
					    u_xlat9 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat9 = (-u_xlat9) + 1.0;
					    u_xlat9 = u_xlat9 * _ProjectionParams.z;
					    u_xlat9 = max(u_xlat9, 0.0);
					    u_xlat9 = u_xlat9 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat9 = clamp(u_xlat9, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat9) * u_xlat0.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					float u_xlat3;
					bool u_xlatb3;
					float u_xlat9;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3 = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat3 = u_xlat1.w * u_xlat3;
					    u_xlat0.x = u_xlat0.x * u_xlat3;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0.xyz = u_xlat1.xyz * u_xlat0.xyz + (-unity_FogColor.xyz);
					    u_xlat9 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat9 = (-u_xlat9) + 1.0;
					    u_xlat9 = u_xlat9 * _ProjectionParams.z;
					    u_xlat9 = max(u_xlat9, 0.0);
					    u_xlat9 = u_xlat9 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat9 = clamp(u_xlat9, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat9) * u_xlat0.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					float u_xlat3;
					bool u_xlatb3;
					float u_xlat9;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3 = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat3 = u_xlat1.w * u_xlat3;
					    u_xlat0.x = u_xlat0.x * u_xlat3;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0.xyz = u_xlat1.xyz * u_xlat0.xyz + (-unity_FogColor.xyz);
					    u_xlat9 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat9 = (-u_xlat9) + 1.0;
					    u_xlat9 = u_xlat9 * _ProjectionParams.z;
					    u_xlat9 = max(u_xlat9, 0.0);
					    u_xlat9 = u_xlat9 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat9 = clamp(u_xlat9, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat9) * u_xlat0.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendAlpha" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					float u_xlat3;
					bool u_xlatb3;
					float u_xlat9;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3 = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat3 = u_xlat1.w * u_xlat3;
					    u_xlat0.x = u_xlat0.x * u_xlat3;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0.xyz = u_xlat1.xyz * u_xlat0.xyz + (-unity_FogColor.xyz);
					    u_xlat9 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat9 = (-u_xlat9) + 1.0;
					    u_xlat9 = u_xlat9 * _ProjectionParams.z;
					    u_xlat9 = max(u_xlat9, 0.0);
					    u_xlat9 = u_xlat9 * unity_FogParams.y;
					    u_xlat9 = exp2((-u_xlat9));
					    u_xlat9 = min(u_xlat9, 1.0);
					    SV_Target0.xyz = vec3(u_xlat9) * u_xlat0.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					float u_xlat3;
					bool u_xlatb3;
					float u_xlat9;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3 = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat3 = u_xlat1.w * u_xlat3;
					    u_xlat0.x = u_xlat0.x * u_xlat3;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0.xyz = u_xlat1.xyz * u_xlat0.xyz + (-unity_FogColor.xyz);
					    u_xlat9 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat9 = (-u_xlat9) + 1.0;
					    u_xlat9 = u_xlat9 * _ProjectionParams.z;
					    u_xlat9 = max(u_xlat9, 0.0);
					    u_xlat9 = u_xlat9 * unity_FogParams.y;
					    u_xlat9 = exp2((-u_xlat9));
					    u_xlat9 = min(u_xlat9, 1.0);
					    SV_Target0.xyz = vec3(u_xlat9) * u_xlat0.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					float u_xlat3;
					bool u_xlatb3;
					float u_xlat9;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3 = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat3 = u_xlat1.w * u_xlat3;
					    u_xlat0.x = u_xlat0.x * u_xlat3;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0.xyz = u_xlat1.xyz * u_xlat0.xyz + (-unity_FogColor.xyz);
					    u_xlat9 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat9 = (-u_xlat9) + 1.0;
					    u_xlat9 = u_xlat9 * _ProjectionParams.z;
					    u_xlat9 = max(u_xlat9, 0.0);
					    u_xlat9 = u_xlat9 * unity_FogParams.y;
					    u_xlat9 = exp2((-u_xlat9));
					    u_xlat9 = min(u_xlat9, 1.0);
					    SV_Target0.xyz = vec3(u_xlat9) * u_xlat0.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					float u_xlat3;
					bool u_xlatb3;
					float u_xlat9;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3 = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat3 = u_xlat1.w * u_xlat3;
					    u_xlat0.x = u_xlat0.x * u_xlat3;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0.xyz = u_xlat1.xyz * u_xlat0.xyz + (-unity_FogColor.xyz);
					    u_xlat9 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat9 = (-u_xlat9) + 1.0;
					    u_xlat9 = u_xlat9 * _ProjectionParams.z;
					    u_xlat9 = max(u_xlat9, 0.0);
					    u_xlat9 = u_xlat9 * unity_FogParams.y;
					    u_xlat9 = exp2((-u_xlat9));
					    u_xlat9 = min(u_xlat9, 1.0);
					    SV_Target0.xyz = vec3(u_xlat9) * u_xlat0.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendAlpha" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					float u_xlat3;
					bool u_xlatb3;
					float u_xlat9;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3 = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat3 = u_xlat1.w * u_xlat3;
					    u_xlat0.x = u_xlat0.x * u_xlat3;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0.xyz = u_xlat1.xyz * u_xlat0.xyz + (-unity_FogColor.xyz);
					    u_xlat9 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat9 = (-u_xlat9) + 1.0;
					    u_xlat9 = u_xlat9 * _ProjectionParams.z;
					    u_xlat9 = max(u_xlat9, 0.0);
					    u_xlat9 = u_xlat9 * unity_FogParams.x;
					    u_xlat9 = u_xlat9 * (-u_xlat9);
					    u_xlat9 = exp2(u_xlat9);
					    SV_Target0.xyz = vec3(u_xlat9) * u_xlat0.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					float u_xlat3;
					bool u_xlatb3;
					float u_xlat9;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3 = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat3 = u_xlat1.w * u_xlat3;
					    u_xlat0.x = u_xlat0.x * u_xlat3;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0.xyz = u_xlat1.xyz * u_xlat0.xyz + (-unity_FogColor.xyz);
					    u_xlat9 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat9 = (-u_xlat9) + 1.0;
					    u_xlat9 = u_xlat9 * _ProjectionParams.z;
					    u_xlat9 = max(u_xlat9, 0.0);
					    u_xlat9 = u_xlat9 * unity_FogParams.x;
					    u_xlat9 = u_xlat9 * (-u_xlat9);
					    u_xlat9 = exp2(u_xlat9);
					    SV_Target0.xyz = vec3(u_xlat9) * u_xlat0.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					float u_xlat3;
					bool u_xlatb3;
					float u_xlat9;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3 = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat3 = u_xlat1.w * u_xlat3;
					    u_xlat0.x = u_xlat0.x * u_xlat3;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0.xyz = u_xlat1.xyz * u_xlat0.xyz + (-unity_FogColor.xyz);
					    u_xlat9 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat9 = (-u_xlat9) + 1.0;
					    u_xlat9 = u_xlat9 * _ProjectionParams.z;
					    u_xlat9 = max(u_xlat9, 0.0);
					    u_xlat9 = u_xlat9 * unity_FogParams.x;
					    u_xlat9 = u_xlat9 * (-u_xlat9);
					    u_xlat9 = exp2(u_xlat9);
					    SV_Target0.xyz = vec3(u_xlat9) * u_xlat0.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					float u_xlat3;
					bool u_xlatb3;
					float u_xlat9;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3 = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat3 = u_xlat1.w * u_xlat3;
					    u_xlat0.x = u_xlat0.x * u_xlat3;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0.xyz = u_xlat1.xyz * u_xlat0.xyz + (-unity_FogColor.xyz);
					    u_xlat9 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat9 = (-u_xlat9) + 1.0;
					    u_xlat9 = u_xlat9 * _ProjectionParams.z;
					    u_xlat9 = max(u_xlat9, 0.0);
					    u_xlat9 = u_xlat9 * unity_FogParams.x;
					    u_xlat9 = u_xlat9 * (-u_xlat9);
					    u_xlat9 = exp2(u_xlat9);
					    SV_Target0.xyz = vec3(u_xlat9) * u_xlat0.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendAlpha" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    SV_Target0.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    SV_Target0.w = u_xlatb0 ? 1.0 : float(0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    SV_Target0.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    SV_Target0.w = u_xlatb0 ? 1.0 : float(0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendAlpha" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[7];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb0 = u_xlat1.w>=u_xlat0.x;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    SV_Target0.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    SV_Target0.w = u_xlatb0 ? 1.0 : float(0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[6];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb0 = u_xlat1.w>=u_xlat0.x;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    SV_Target0.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    SV_Target0.w = u_xlatb0 ? 1.0 : float(0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendAlpha" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + unity_FogColor.xyz;
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    SV_Target0.w = u_xlatb0 ? 1.0 : float(0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + unity_FogColor.xyz;
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    SV_Target0.w = u_xlatb0 ? 1.0 : float(0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb0 = u_xlat1.w>=u_xlat0.x;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    SV_Target0.w = u_xlatb0 ? 1.0 : float(0.0);
					    u_xlat0.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0.x = (-u_xlat0.x) + 1.0;
					    u_xlat0.x = u_xlat0.x * _ProjectionParams.z;
					    u_xlat0.x = max(u_xlat0.x, 0.0);
					    u_xlat0.x = u_xlat0.x * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.xxx * u_xlat3.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb0 = u_xlat1.w>=u_xlat0.x;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    SV_Target0.w = u_xlatb0 ? 1.0 : float(0.0);
					    u_xlat0.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0.x = (-u_xlat0.x) + 1.0;
					    u_xlat0.x = u_xlat0.x * _ProjectionParams.z;
					    u_xlat0.x = max(u_xlat0.x, 0.0);
					    u_xlat0.x = u_xlat0.x * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.xxx * u_xlat3.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendAlpha" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + unity_FogColor.xyz;
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    SV_Target0.w = u_xlatb0 ? 1.0 : float(0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + unity_FogColor.xyz;
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    SV_Target0.w = u_xlatb0 ? 1.0 : float(0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0.x = (-u_xlat0.x) + 1.0;
					    u_xlat0.x = u_xlat0.x * _ProjectionParams.z;
					    u_xlat0.x = max(u_xlat0.x, 0.0);
					    u_xlat0.x = u_xlat0.x * unity_FogParams.y;
					    u_xlat0.x = exp2((-u_xlat0.x));
					    u_xlat0.x = min(u_xlat0.x, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    SV_Target0.xyz = u_xlat0.xxx * u_xlat3.xyz + unity_FogColor.xyz;
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0.x;
					    SV_Target0.w = u_xlatb0 ? 1.0 : float(0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0.x = (-u_xlat0.x) + 1.0;
					    u_xlat0.x = u_xlat0.x * _ProjectionParams.z;
					    u_xlat0.x = max(u_xlat0.x, 0.0);
					    u_xlat0.x = u_xlat0.x * unity_FogParams.y;
					    u_xlat0.x = exp2((-u_xlat0.x));
					    u_xlat0.x = min(u_xlat0.x, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    SV_Target0.xyz = u_xlat0.xxx * u_xlat3.xyz + unity_FogColor.xyz;
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0.x;
					    SV_Target0.w = u_xlatb0 ? 1.0 : float(0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendAlpha" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + unity_FogColor.xyz;
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    SV_Target0.w = u_xlatb0 ? 1.0 : float(0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + unity_FogColor.xyz;
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    SV_Target0.w = u_xlatb0 ? 1.0 : float(0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0.x = (-u_xlat0.x) + 1.0;
					    u_xlat0.x = u_xlat0.x * _ProjectionParams.z;
					    u_xlat0.x = max(u_xlat0.x, 0.0);
					    u_xlat0.x = u_xlat0.x * unity_FogParams.x;
					    u_xlat0.x = u_xlat0.x * (-u_xlat0.x);
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    SV_Target0.xyz = u_xlat0.xxx * u_xlat3.xyz + unity_FogColor.xyz;
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0.x;
					    SV_Target0.w = u_xlatb0 ? 1.0 : float(0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0.x = (-u_xlat0.x) + 1.0;
					    u_xlat0.x = u_xlat0.x * _ProjectionParams.z;
					    u_xlat0.x = max(u_xlat0.x, 0.0);
					    u_xlat0.x = u_xlat0.x * unity_FogParams.x;
					    u_xlat0.x = u_xlat0.x * (-u_xlat0.x);
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    SV_Target0.xyz = u_xlat0.xxx * u_xlat3.xyz + unity_FogColor.xyz;
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0.x;
					    SV_Target0.w = u_xlatb0 ? 1.0 : float(0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendAlpha" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[7];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb0 = u_xlat1.w>=u_xlat0.x;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    SV_Target0.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    SV_Target0.w = u_xlatb0 ? 1.0 : float(0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[6];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb0 = u_xlat1.w>=u_xlat0.x;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    SV_Target0.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    SV_Target0.w = u_xlatb0 ? 1.0 : float(0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendAlpha" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[7];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb0 = u_xlat1.w>=u_xlat0.x;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    SV_Target0.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    SV_Target0.w = u_xlatb0 ? 1.0 : float(0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[6];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb0 = u_xlat1.w>=u_xlat0.x;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    SV_Target0.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    SV_Target0.w = u_xlatb0 ? 1.0 : float(0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendAlpha" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb0 = u_xlat1.w>=u_xlat0.x;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    SV_Target0.w = u_xlatb0 ? 1.0 : float(0.0);
					    u_xlat0.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0.x = (-u_xlat0.x) + 1.0;
					    u_xlat0.x = u_xlat0.x * _ProjectionParams.z;
					    u_xlat0.x = max(u_xlat0.x, 0.0);
					    u_xlat0.x = u_xlat0.x * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.xxx * u_xlat3.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb0 = u_xlat1.w>=u_xlat0.x;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    SV_Target0.w = u_xlatb0 ? 1.0 : float(0.0);
					    u_xlat0.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0.x = (-u_xlat0.x) + 1.0;
					    u_xlat0.x = u_xlat0.x * _ProjectionParams.z;
					    u_xlat0.x = max(u_xlat0.x, 0.0);
					    u_xlat0.x = u_xlat0.x * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.xxx * u_xlat3.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb0 = u_xlat1.w>=u_xlat0.x;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    SV_Target0.w = u_xlatb0 ? 1.0 : float(0.0);
					    u_xlat0.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0.x = (-u_xlat0.x) + 1.0;
					    u_xlat0.x = u_xlat0.x * _ProjectionParams.z;
					    u_xlat0.x = max(u_xlat0.x, 0.0);
					    u_xlat0.x = u_xlat0.x * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.xxx * u_xlat3.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb0 = u_xlat1.w>=u_xlat0.x;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    SV_Target0.w = u_xlatb0 ? 1.0 : float(0.0);
					    u_xlat0.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0.x = (-u_xlat0.x) + 1.0;
					    u_xlat0.x = u_xlat0.x * _ProjectionParams.z;
					    u_xlat0.x = max(u_xlat0.x, 0.0);
					    u_xlat0.x = u_xlat0.x * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.xxx * u_xlat3.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendAlpha" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0.x = (-u_xlat0.x) + 1.0;
					    u_xlat0.x = u_xlat0.x * _ProjectionParams.z;
					    u_xlat0.x = max(u_xlat0.x, 0.0);
					    u_xlat0.x = u_xlat0.x * unity_FogParams.y;
					    u_xlat0.x = exp2((-u_xlat0.x));
					    u_xlat0.x = min(u_xlat0.x, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    SV_Target0.xyz = u_xlat0.xxx * u_xlat3.xyz + unity_FogColor.xyz;
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0.x;
					    SV_Target0.w = u_xlatb0 ? 1.0 : float(0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0.x = (-u_xlat0.x) + 1.0;
					    u_xlat0.x = u_xlat0.x * _ProjectionParams.z;
					    u_xlat0.x = max(u_xlat0.x, 0.0);
					    u_xlat0.x = u_xlat0.x * unity_FogParams.y;
					    u_xlat0.x = exp2((-u_xlat0.x));
					    u_xlat0.x = min(u_xlat0.x, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    SV_Target0.xyz = u_xlat0.xxx * u_xlat3.xyz + unity_FogColor.xyz;
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0.x;
					    SV_Target0.w = u_xlatb0 ? 1.0 : float(0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0.x = (-u_xlat0.x) + 1.0;
					    u_xlat0.x = u_xlat0.x * _ProjectionParams.z;
					    u_xlat0.x = max(u_xlat0.x, 0.0);
					    u_xlat0.x = u_xlat0.x * unity_FogParams.y;
					    u_xlat0.x = exp2((-u_xlat0.x));
					    u_xlat0.x = min(u_xlat0.x, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    SV_Target0.xyz = u_xlat0.xxx * u_xlat3.xyz + unity_FogColor.xyz;
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0.x;
					    SV_Target0.w = u_xlatb0 ? 1.0 : float(0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0.x = (-u_xlat0.x) + 1.0;
					    u_xlat0.x = u_xlat0.x * _ProjectionParams.z;
					    u_xlat0.x = max(u_xlat0.x, 0.0);
					    u_xlat0.x = u_xlat0.x * unity_FogParams.y;
					    u_xlat0.x = exp2((-u_xlat0.x));
					    u_xlat0.x = min(u_xlat0.x, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    SV_Target0.xyz = u_xlat0.xxx * u_xlat3.xyz + unity_FogColor.xyz;
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0.x;
					    SV_Target0.w = u_xlatb0 ? 1.0 : float(0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendAlpha" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0.x = (-u_xlat0.x) + 1.0;
					    u_xlat0.x = u_xlat0.x * _ProjectionParams.z;
					    u_xlat0.x = max(u_xlat0.x, 0.0);
					    u_xlat0.x = u_xlat0.x * unity_FogParams.x;
					    u_xlat0.x = u_xlat0.x * (-u_xlat0.x);
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    SV_Target0.xyz = u_xlat0.xxx * u_xlat3.xyz + unity_FogColor.xyz;
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0.x;
					    SV_Target0.w = u_xlatb0 ? 1.0 : float(0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0.x = (-u_xlat0.x) + 1.0;
					    u_xlat0.x = u_xlat0.x * _ProjectionParams.z;
					    u_xlat0.x = max(u_xlat0.x, 0.0);
					    u_xlat0.x = u_xlat0.x * unity_FogParams.x;
					    u_xlat0.x = u_xlat0.x * (-u_xlat0.x);
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    SV_Target0.xyz = u_xlat0.xxx * u_xlat3.xyz + unity_FogColor.xyz;
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0.x;
					    SV_Target0.w = u_xlatb0 ? 1.0 : float(0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0.x = (-u_xlat0.x) + 1.0;
					    u_xlat0.x = u_xlat0.x * _ProjectionParams.z;
					    u_xlat0.x = max(u_xlat0.x, 0.0);
					    u_xlat0.x = u_xlat0.x * unity_FogParams.x;
					    u_xlat0.x = u_xlat0.x * (-u_xlat0.x);
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    SV_Target0.xyz = u_xlat0.xxx * u_xlat3.xyz + unity_FogColor.xyz;
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0.x;
					    SV_Target0.w = u_xlatb0 ? 1.0 : float(0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0.x = (-u_xlat0.x) + 1.0;
					    u_xlat0.x = u_xlat0.x * _ProjectionParams.z;
					    u_xlat0.x = max(u_xlat0.x, 0.0);
					    u_xlat0.x = u_xlat0.x * unity_FogParams.x;
					    u_xlat0.x = u_xlat0.x * (-u_xlat0.x);
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    SV_Target0.xyz = u_xlat0.xxx * u_xlat3.xyz + unity_FogColor.xyz;
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0.x;
					    SV_Target0.w = u_xlatb0 ? 1.0 : float(0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendAlpha" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    SV_Target0.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat0 = u_xlatb0 ? 1.0 : float(0.0);
					    SV_Target0.w = u_xlat0 * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    SV_Target0.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat0 = u_xlatb0 ? 1.0 : float(0.0);
					    SV_Target0.w = u_xlat0 * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendAlpha" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[7];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb0 = u_xlat1.w>=u_xlat0.x;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    SV_Target0.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat0.x = u_xlatb0 ? 1.0 : float(0.0);
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[6];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb0 = u_xlat1.w>=u_xlat0.x;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    SV_Target0.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat0.x = u_xlatb0 ? 1.0 : float(0.0);
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendAlpha" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + unity_FogColor.xyz;
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    u_xlat0 = u_xlatb0 ? 1.0 : float(0.0);
					    SV_Target0.w = u_xlat0 * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + unity_FogColor.xyz;
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    u_xlat0 = u_xlatb0 ? 1.0 : float(0.0);
					    SV_Target0.w = u_xlat0 * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb0 = u_xlat1.w>=u_xlat0.x;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    u_xlat0.x = u_xlatb0 ? 1.0 : float(0.0);
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    u_xlat0.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0.x = (-u_xlat0.x) + 1.0;
					    u_xlat0.x = u_xlat0.x * _ProjectionParams.z;
					    u_xlat0.x = max(u_xlat0.x, 0.0);
					    u_xlat0.x = u_xlat0.x * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.xxx * u_xlat3.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb0 = u_xlat1.w>=u_xlat0.x;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    u_xlat0.x = u_xlatb0 ? 1.0 : float(0.0);
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    u_xlat0.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0.x = (-u_xlat0.x) + 1.0;
					    u_xlat0.x = u_xlat0.x * _ProjectionParams.z;
					    u_xlat0.x = max(u_xlat0.x, 0.0);
					    u_xlat0.x = u_xlat0.x * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.xxx * u_xlat3.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendAlpha" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + unity_FogColor.xyz;
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    u_xlat0 = u_xlatb0 ? 1.0 : float(0.0);
					    SV_Target0.w = u_xlat0 * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + unity_FogColor.xyz;
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    u_xlat0 = u_xlatb0 ? 1.0 : float(0.0);
					    SV_Target0.w = u_xlat0 * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb0 = u_xlat1.w>=u_xlat0.x;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    u_xlat0.x = u_xlatb0 ? 1.0 : float(0.0);
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    u_xlat0.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0.x = (-u_xlat0.x) + 1.0;
					    u_xlat0.x = u_xlat0.x * _ProjectionParams.z;
					    u_xlat0.x = max(u_xlat0.x, 0.0);
					    u_xlat0.x = u_xlat0.x * unity_FogParams.y;
					    u_xlat0.x = exp2((-u_xlat0.x));
					    u_xlat0.x = min(u_xlat0.x, 1.0);
					    SV_Target0.xyz = u_xlat0.xxx * u_xlat3.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb0 = u_xlat1.w>=u_xlat0.x;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    u_xlat0.x = u_xlatb0 ? 1.0 : float(0.0);
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    u_xlat0.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0.x = (-u_xlat0.x) + 1.0;
					    u_xlat0.x = u_xlat0.x * _ProjectionParams.z;
					    u_xlat0.x = max(u_xlat0.x, 0.0);
					    u_xlat0.x = u_xlat0.x * unity_FogParams.y;
					    u_xlat0.x = exp2((-u_xlat0.x));
					    u_xlat0.x = min(u_xlat0.x, 1.0);
					    SV_Target0.xyz = u_xlat0.xxx * u_xlat3.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendAlpha" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + unity_FogColor.xyz;
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    u_xlat0 = u_xlatb0 ? 1.0 : float(0.0);
					    SV_Target0.w = u_xlat0 * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + unity_FogColor.xyz;
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    u_xlat0 = u_xlatb0 ? 1.0 : float(0.0);
					    SV_Target0.w = u_xlat0 * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb0 = u_xlat1.w>=u_xlat0.x;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    u_xlat0.x = u_xlatb0 ? 1.0 : float(0.0);
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    u_xlat0.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0.x = (-u_xlat0.x) + 1.0;
					    u_xlat0.x = u_xlat0.x * _ProjectionParams.z;
					    u_xlat0.x = max(u_xlat0.x, 0.0);
					    u_xlat0.x = u_xlat0.x * unity_FogParams.x;
					    u_xlat0.x = u_xlat0.x * (-u_xlat0.x);
					    u_xlat0.x = exp2(u_xlat0.x);
					    SV_Target0.xyz = u_xlat0.xxx * u_xlat3.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb0 = u_xlat1.w>=u_xlat0.x;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    u_xlat0.x = u_xlatb0 ? 1.0 : float(0.0);
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    u_xlat0.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0.x = (-u_xlat0.x) + 1.0;
					    u_xlat0.x = u_xlat0.x * _ProjectionParams.z;
					    u_xlat0.x = max(u_xlat0.x, 0.0);
					    u_xlat0.x = u_xlat0.x * unity_FogParams.x;
					    u_xlat0.x = u_xlat0.x * (-u_xlat0.x);
					    u_xlat0.x = exp2(u_xlat0.x);
					    SV_Target0.xyz = u_xlat0.xxx * u_xlat3.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendAlpha" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[7];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb0 = u_xlat1.w>=u_xlat0.x;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    SV_Target0.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat0.x = u_xlatb0 ? 1.0 : float(0.0);
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[6];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb0 = u_xlat1.w>=u_xlat0.x;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    SV_Target0.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat0.x = u_xlatb0 ? 1.0 : float(0.0);
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendAlpha" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[7];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb0 = u_xlat1.w>=u_xlat0.x;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    SV_Target0.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat0.x = u_xlatb0 ? 1.0 : float(0.0);
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[6];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb0 = u_xlat1.w>=u_xlat0.x;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    SV_Target0.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat0.x = u_xlatb0 ? 1.0 : float(0.0);
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendAlpha" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb0 = u_xlat1.w>=u_xlat0.x;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    u_xlat0.x = u_xlatb0 ? 1.0 : float(0.0);
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    u_xlat0.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0.x = (-u_xlat0.x) + 1.0;
					    u_xlat0.x = u_xlat0.x * _ProjectionParams.z;
					    u_xlat0.x = max(u_xlat0.x, 0.0);
					    u_xlat0.x = u_xlat0.x * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.xxx * u_xlat3.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb0 = u_xlat1.w>=u_xlat0.x;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    u_xlat0.x = u_xlatb0 ? 1.0 : float(0.0);
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    u_xlat0.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0.x = (-u_xlat0.x) + 1.0;
					    u_xlat0.x = u_xlat0.x * _ProjectionParams.z;
					    u_xlat0.x = max(u_xlat0.x, 0.0);
					    u_xlat0.x = u_xlat0.x * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.xxx * u_xlat3.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb0 = u_xlat1.w>=u_xlat0.x;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    u_xlat0.x = u_xlatb0 ? 1.0 : float(0.0);
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    u_xlat0.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0.x = (-u_xlat0.x) + 1.0;
					    u_xlat0.x = u_xlat0.x * _ProjectionParams.z;
					    u_xlat0.x = max(u_xlat0.x, 0.0);
					    u_xlat0.x = u_xlat0.x * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.xxx * u_xlat3.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb0 = u_xlat1.w>=u_xlat0.x;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    u_xlat0.x = u_xlatb0 ? 1.0 : float(0.0);
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    u_xlat0.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0.x = (-u_xlat0.x) + 1.0;
					    u_xlat0.x = u_xlat0.x * _ProjectionParams.z;
					    u_xlat0.x = max(u_xlat0.x, 0.0);
					    u_xlat0.x = u_xlat0.x * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.xxx * u_xlat3.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendAlpha" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb0 = u_xlat1.w>=u_xlat0.x;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    u_xlat0.x = u_xlatb0 ? 1.0 : float(0.0);
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    u_xlat0.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0.x = (-u_xlat0.x) + 1.0;
					    u_xlat0.x = u_xlat0.x * _ProjectionParams.z;
					    u_xlat0.x = max(u_xlat0.x, 0.0);
					    u_xlat0.x = u_xlat0.x * unity_FogParams.y;
					    u_xlat0.x = exp2((-u_xlat0.x));
					    u_xlat0.x = min(u_xlat0.x, 1.0);
					    SV_Target0.xyz = u_xlat0.xxx * u_xlat3.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb0 = u_xlat1.w>=u_xlat0.x;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    u_xlat0.x = u_xlatb0 ? 1.0 : float(0.0);
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    u_xlat0.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0.x = (-u_xlat0.x) + 1.0;
					    u_xlat0.x = u_xlat0.x * _ProjectionParams.z;
					    u_xlat0.x = max(u_xlat0.x, 0.0);
					    u_xlat0.x = u_xlat0.x * unity_FogParams.y;
					    u_xlat0.x = exp2((-u_xlat0.x));
					    u_xlat0.x = min(u_xlat0.x, 1.0);
					    SV_Target0.xyz = u_xlat0.xxx * u_xlat3.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb0 = u_xlat1.w>=u_xlat0.x;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    u_xlat0.x = u_xlatb0 ? 1.0 : float(0.0);
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    u_xlat0.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0.x = (-u_xlat0.x) + 1.0;
					    u_xlat0.x = u_xlat0.x * _ProjectionParams.z;
					    u_xlat0.x = max(u_xlat0.x, 0.0);
					    u_xlat0.x = u_xlat0.x * unity_FogParams.y;
					    u_xlat0.x = exp2((-u_xlat0.x));
					    u_xlat0.x = min(u_xlat0.x, 1.0);
					    SV_Target0.xyz = u_xlat0.xxx * u_xlat3.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb0 = u_xlat1.w>=u_xlat0.x;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    u_xlat0.x = u_xlatb0 ? 1.0 : float(0.0);
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    u_xlat0.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0.x = (-u_xlat0.x) + 1.0;
					    u_xlat0.x = u_xlat0.x * _ProjectionParams.z;
					    u_xlat0.x = max(u_xlat0.x, 0.0);
					    u_xlat0.x = u_xlat0.x * unity_FogParams.y;
					    u_xlat0.x = exp2((-u_xlat0.x));
					    u_xlat0.x = min(u_xlat0.x, 1.0);
					    SV_Target0.xyz = u_xlat0.xxx * u_xlat3.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendAlpha" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb0 = u_xlat1.w>=u_xlat0.x;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    u_xlat0.x = u_xlatb0 ? 1.0 : float(0.0);
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    u_xlat0.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0.x = (-u_xlat0.x) + 1.0;
					    u_xlat0.x = u_xlat0.x * _ProjectionParams.z;
					    u_xlat0.x = max(u_xlat0.x, 0.0);
					    u_xlat0.x = u_xlat0.x * unity_FogParams.x;
					    u_xlat0.x = u_xlat0.x * (-u_xlat0.x);
					    u_xlat0.x = exp2(u_xlat0.x);
					    SV_Target0.xyz = u_xlat0.xxx * u_xlat3.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb0 = u_xlat1.w>=u_xlat0.x;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    u_xlat0.x = u_xlatb0 ? 1.0 : float(0.0);
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    u_xlat0.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0.x = (-u_xlat0.x) + 1.0;
					    u_xlat0.x = u_xlat0.x * _ProjectionParams.z;
					    u_xlat0.x = max(u_xlat0.x, 0.0);
					    u_xlat0.x = u_xlat0.x * unity_FogParams.x;
					    u_xlat0.x = u_xlat0.x * (-u_xlat0.x);
					    u_xlat0.x = exp2(u_xlat0.x);
					    SV_Target0.xyz = u_xlat0.xxx * u_xlat3.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb0 = u_xlat1.w>=u_xlat0.x;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    u_xlat0.x = u_xlatb0 ? 1.0 : float(0.0);
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    u_xlat0.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0.x = (-u_xlat0.x) + 1.0;
					    u_xlat0.x = u_xlat0.x * _ProjectionParams.z;
					    u_xlat0.x = max(u_xlat0.x, 0.0);
					    u_xlat0.x = u_xlat0.x * unity_FogParams.x;
					    u_xlat0.x = u_xlat0.x * (-u_xlat0.x);
					    u_xlat0.x = exp2(u_xlat0.x);
					    SV_Target0.xyz = u_xlat0.xxx * u_xlat3.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb0 = u_xlat1.w>=u_xlat0.x;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    u_xlat0.x = u_xlatb0 ? 1.0 : float(0.0);
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    u_xlat0.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0.x = (-u_xlat0.x) + 1.0;
					    u_xlat0.x = u_xlat0.x * _ProjectionParams.z;
					    u_xlat0.x = max(u_xlat0.x, 0.0);
					    u_xlat0.x = u_xlat0.x * unity_FogParams.x;
					    u_xlat0.x = u_xlat0.x * (-u_xlat0.x);
					    u_xlat0.x = exp2(u_xlat0.x);
					    SV_Target0.xyz = u_xlat0.xxx * u_xlat3.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendAlpha" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat0 = u_xlat0 * vs_COLOR0;
					    SV_Target0.w = u_xlat0.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat0 = u_xlat0 * vs_COLOR0;
					    SV_Target0.w = u_xlat0.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendAlpha" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat0 = u_xlat0 * vs_COLOR0;
					    SV_Target0.w = u_xlat0.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat0 = u_xlat0 * vs_COLOR0;
					    SV_Target0.w = u_xlat0.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendAlpha" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2.xyz = u_xlat1.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    u_xlat1.x = u_xlat1.w * vs_COLOR0.w;
					    SV_Target0.w = u_xlat1.x;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat2.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2.xyz = u_xlat1.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    u_xlat1.x = u_xlat1.w * vs_COLOR0.w;
					    SV_Target0.w = u_xlat1.x;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat2.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2.xyz = u_xlat1.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    u_xlat1.x = u_xlat1.w * vs_COLOR0.w;
					    SV_Target0.w = u_xlat1.x;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat2.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2.xyz = u_xlat1.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    u_xlat1.x = u_xlat1.w * vs_COLOR0.w;
					    SV_Target0.w = u_xlat1.x;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat2.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendAlpha" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2.xyz = u_xlat1.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    u_xlat1.x = u_xlat1.w * vs_COLOR0.w;
					    SV_Target0.w = u_xlat1.x;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat2.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2.xyz = u_xlat1.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    u_xlat1.x = u_xlat1.w * vs_COLOR0.w;
					    SV_Target0.w = u_xlat1.x;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat2.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2.xyz = u_xlat1.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    u_xlat1.x = u_xlat1.w * vs_COLOR0.w;
					    SV_Target0.w = u_xlat1.x;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat2.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2.xyz = u_xlat1.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    u_xlat1.x = u_xlat1.w * vs_COLOR0.w;
					    SV_Target0.w = u_xlat1.x;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat2.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendAlpha" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2.xyz = u_xlat1.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    u_xlat1.x = u_xlat1.w * vs_COLOR0.w;
					    SV_Target0.w = u_xlat1.x;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat2.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2.xyz = u_xlat1.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    u_xlat1.x = u_xlat1.w * vs_COLOR0.w;
					    SV_Target0.w = u_xlat1.x;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat2.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2.xyz = u_xlat1.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    u_xlat1.x = u_xlat1.w * vs_COLOR0.w;
					    SV_Target0.w = u_xlat1.x;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat2.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2.xyz = u_xlat1.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    u_xlat1.x = u_xlat1.w * vs_COLOR0.w;
					    SV_Target0.w = u_xlat1.x;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat2.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendAlpha" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat0 = u_xlat0 * vs_COLOR0;
					    SV_Target0.w = u_xlat0.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat0 = u_xlat0 * vs_COLOR0;
					    SV_Target0.w = u_xlat0.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendAlpha" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat0 = u_xlat0 * vs_COLOR0;
					    SV_Target0.w = u_xlat0.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat0 = u_xlat0 * vs_COLOR0;
					    SV_Target0.w = u_xlat0.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendAlpha" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2.xyz = u_xlat1.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    u_xlat1.x = u_xlat1.w * vs_COLOR0.w;
					    SV_Target0.w = u_xlat1.x;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat2.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2.xyz = u_xlat1.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    u_xlat1.x = u_xlat1.w * vs_COLOR0.w;
					    SV_Target0.w = u_xlat1.x;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat2.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2.xyz = u_xlat1.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    u_xlat1.x = u_xlat1.w * vs_COLOR0.w;
					    SV_Target0.w = u_xlat1.x;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat2.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2.xyz = u_xlat1.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    u_xlat1.x = u_xlat1.w * vs_COLOR0.w;
					    SV_Target0.w = u_xlat1.x;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat2.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendAlpha" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2.xyz = u_xlat1.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    u_xlat1.x = u_xlat1.w * vs_COLOR0.w;
					    SV_Target0.w = u_xlat1.x;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat2.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2.xyz = u_xlat1.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    u_xlat1.x = u_xlat1.w * vs_COLOR0.w;
					    SV_Target0.w = u_xlat1.x;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat2.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2.xyz = u_xlat1.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    u_xlat1.x = u_xlat1.w * vs_COLOR0.w;
					    SV_Target0.w = u_xlat1.x;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat2.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2.xyz = u_xlat1.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    u_xlat1.x = u_xlat1.w * vs_COLOR0.w;
					    SV_Target0.w = u_xlat1.x;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat2.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendAlpha" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2.xyz = u_xlat1.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    u_xlat1.x = u_xlat1.w * vs_COLOR0.w;
					    SV_Target0.w = u_xlat1.x;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat2.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2.xyz = u_xlat1.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    u_xlat1.x = u_xlat1.w * vs_COLOR0.w;
					    SV_Target0.w = u_xlat1.x;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat2.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2.xyz = u_xlat1.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    u_xlat1.x = u_xlat1.w * vs_COLOR0.w;
					    SV_Target0.w = u_xlat1.x;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat2.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2.xyz = u_xlat1.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    u_xlat1.x = u_xlat1.w * vs_COLOR0.w;
					    SV_Target0.w = u_xlat1.x;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat2.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendAlpha" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat0 = u_xlat0.wxyz * vs_COLOR0.wxyz;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.yzw;
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat0 = u_xlat0.wxyz * vs_COLOR0.wxyz;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.yzw;
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendAlpha" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat0 = u_xlat0.wxyz * vs_COLOR0.wxyz;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.yzw;
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat0 = u_xlat0.wxyz * vs_COLOR0.wxyz;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.yzw;
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendAlpha" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2.xyz = u_xlat1.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    u_xlat1.x = u_xlat1.w * vs_COLOR0.w;
					    u_xlat1.x = u_xlat1.x;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat1.x * vs_TEXCOORD4;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat2.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2.xyz = u_xlat1.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    u_xlat1.x = u_xlat1.w * vs_COLOR0.w;
					    u_xlat1.x = u_xlat1.x;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat1.x * vs_TEXCOORD4;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat2.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2.xyz = u_xlat1.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    u_xlat1.x = u_xlat1.w * vs_COLOR0.w;
					    u_xlat1.x = u_xlat1.x;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat1.x * vs_TEXCOORD4;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat2.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2.xyz = u_xlat1.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    u_xlat1.x = u_xlat1.w * vs_COLOR0.w;
					    u_xlat1.x = u_xlat1.x;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat1.x * vs_TEXCOORD4;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat2.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendAlpha" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2.xyz = u_xlat1.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    u_xlat1.x = u_xlat1.w * vs_COLOR0.w;
					    u_xlat1.x = u_xlat1.x;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat1.x * vs_TEXCOORD4;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat2.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2.xyz = u_xlat1.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    u_xlat1.x = u_xlat1.w * vs_COLOR0.w;
					    u_xlat1.x = u_xlat1.x;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat1.x * vs_TEXCOORD4;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat2.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2.xyz = u_xlat1.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    u_xlat1.x = u_xlat1.w * vs_COLOR0.w;
					    u_xlat1.x = u_xlat1.x;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat1.x * vs_TEXCOORD4;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat2.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2.xyz = u_xlat1.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    u_xlat1.x = u_xlat1.w * vs_COLOR0.w;
					    u_xlat1.x = u_xlat1.x;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat1.x * vs_TEXCOORD4;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat2.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendAlpha" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2.xyz = u_xlat1.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    u_xlat1.x = u_xlat1.w * vs_COLOR0.w;
					    u_xlat1.x = u_xlat1.x;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat1.x * vs_TEXCOORD4;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat2.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2.xyz = u_xlat1.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    u_xlat1.x = u_xlat1.w * vs_COLOR0.w;
					    u_xlat1.x = u_xlat1.x;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat1.x * vs_TEXCOORD4;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat2.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2.xyz = u_xlat1.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    u_xlat1.x = u_xlat1.w * vs_COLOR0.w;
					    u_xlat1.x = u_xlat1.x;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat1.x * vs_TEXCOORD4;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat2.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2.xyz = u_xlat1.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    u_xlat1.x = u_xlat1.w * vs_COLOR0.w;
					    u_xlat1.x = u_xlat1.x;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat1.x * vs_TEXCOORD4;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat2.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendAlpha" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat0 = u_xlat0.wxyz * vs_COLOR0.wxyz;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.yzw;
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat0 = u_xlat0.wxyz * vs_COLOR0.wxyz;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.yzw;
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendAlpha" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat0 = u_xlat0.wxyz * vs_COLOR0.wxyz;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.yzw;
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat0 = u_xlat0.wxyz * vs_COLOR0.wxyz;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.yzw;
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendAlpha" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2.xyz = u_xlat1.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    u_xlat1.x = u_xlat1.w * vs_COLOR0.w;
					    u_xlat1.x = u_xlat1.x;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat1.x * vs_TEXCOORD4;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat2.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2.xyz = u_xlat1.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    u_xlat1.x = u_xlat1.w * vs_COLOR0.w;
					    u_xlat1.x = u_xlat1.x;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat1.x * vs_TEXCOORD4;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat2.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2.xyz = u_xlat1.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    u_xlat1.x = u_xlat1.w * vs_COLOR0.w;
					    u_xlat1.x = u_xlat1.x;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat1.x * vs_TEXCOORD4;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat2.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2.xyz = u_xlat1.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    u_xlat1.x = u_xlat1.w * vs_COLOR0.w;
					    u_xlat1.x = u_xlat1.x;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat1.x * vs_TEXCOORD4;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat2.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendAlpha" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2.xyz = u_xlat1.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    u_xlat1.x = u_xlat1.w * vs_COLOR0.w;
					    u_xlat1.x = u_xlat1.x;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat1.x * vs_TEXCOORD4;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat2.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2.xyz = u_xlat1.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    u_xlat1.x = u_xlat1.w * vs_COLOR0.w;
					    u_xlat1.x = u_xlat1.x;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat1.x * vs_TEXCOORD4;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat2.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2.xyz = u_xlat1.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    u_xlat1.x = u_xlat1.w * vs_COLOR0.w;
					    u_xlat1.x = u_xlat1.x;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat1.x * vs_TEXCOORD4;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat2.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2.xyz = u_xlat1.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    u_xlat1.x = u_xlat1.w * vs_COLOR0.w;
					    u_xlat1.x = u_xlat1.x;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat1.x * vs_TEXCOORD4;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat2.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendAlpha" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2.xyz = u_xlat1.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    u_xlat1.x = u_xlat1.w * vs_COLOR0.w;
					    u_xlat1.x = u_xlat1.x;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat1.x * vs_TEXCOORD4;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat2.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2.xyz = u_xlat1.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    u_xlat1.x = u_xlat1.w * vs_COLOR0.w;
					    u_xlat1.x = u_xlat1.x;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat1.x * vs_TEXCOORD4;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat2.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2.xyz = u_xlat1.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    u_xlat1.x = u_xlat1.w * vs_COLOR0.w;
					    u_xlat1.x = u_xlat1.x;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat1.x * vs_TEXCOORD4;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat2.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2.xyz = u_xlat1.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    u_xlat1.x = u_xlat1.w * vs_COLOR0.w;
					    u_xlat1.x = u_xlat1.x;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat1.x * vs_TEXCOORD4;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat2.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendAlpha" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					float u_xlat1;
					bool u_xlatb1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1 = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat0.w = u_xlat0.w * u_xlat1;
					    u_xlat0 = u_xlat0 * vs_COLOR0;
					    SV_Target0.w = u_xlat0.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					float u_xlat1;
					bool u_xlatb1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1 = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat0.w = u_xlat0.w * u_xlat1;
					    u_xlat0 = u_xlat0 * vs_COLOR0;
					    SV_Target0.w = u_xlat0.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendAlpha" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					float u_xlat1;
					bool u_xlatb1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1 = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat0.w = u_xlat0.w * u_xlat1;
					    u_xlat0 = u_xlat0 * vs_COLOR0;
					    SV_Target0.w = u_xlat0.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					float u_xlat1;
					bool u_xlatb1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1 = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat0.w = u_xlat0.w * u_xlat1;
					    u_xlat0 = u_xlat0 * vs_COLOR0;
					    SV_Target0.w = u_xlat0.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendAlpha" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					float u_xlat1;
					bool u_xlatb1;
					float u_xlat6;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1 = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat6 = u_xlat0.w * u_xlat1;
					    u_xlat0.xyz = u_xlat0.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    u_xlat6 = u_xlat6 * vs_COLOR0.w;
					    SV_Target0.w = u_xlat6;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    u_xlat6 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat6 = (-u_xlat6) + 1.0;
					    u_xlat6 = u_xlat6 * _ProjectionParams.z;
					    u_xlat6 = max(u_xlat6, 0.0);
					    u_xlat6 = u_xlat6 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat6 = clamp(u_xlat6, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat6) * u_xlat0.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					float u_xlat1;
					bool u_xlatb1;
					float u_xlat6;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1 = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat6 = u_xlat0.w * u_xlat1;
					    u_xlat0.xyz = u_xlat0.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    u_xlat6 = u_xlat6 * vs_COLOR0.w;
					    SV_Target0.w = u_xlat6;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    u_xlat6 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat6 = (-u_xlat6) + 1.0;
					    u_xlat6 = u_xlat6 * _ProjectionParams.z;
					    u_xlat6 = max(u_xlat6, 0.0);
					    u_xlat6 = u_xlat6 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat6 = clamp(u_xlat6, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat6) * u_xlat0.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					float u_xlat1;
					bool u_xlatb1;
					float u_xlat6;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1 = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat6 = u_xlat0.w * u_xlat1;
					    u_xlat0.xyz = u_xlat0.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    u_xlat6 = u_xlat6 * vs_COLOR0.w;
					    SV_Target0.w = u_xlat6;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    u_xlat6 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat6 = (-u_xlat6) + 1.0;
					    u_xlat6 = u_xlat6 * _ProjectionParams.z;
					    u_xlat6 = max(u_xlat6, 0.0);
					    u_xlat6 = u_xlat6 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat6 = clamp(u_xlat6, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat6) * u_xlat0.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					float u_xlat1;
					bool u_xlatb1;
					float u_xlat6;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1 = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat6 = u_xlat0.w * u_xlat1;
					    u_xlat0.xyz = u_xlat0.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    u_xlat6 = u_xlat6 * vs_COLOR0.w;
					    SV_Target0.w = u_xlat6;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    u_xlat6 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat6 = (-u_xlat6) + 1.0;
					    u_xlat6 = u_xlat6 * _ProjectionParams.z;
					    u_xlat6 = max(u_xlat6, 0.0);
					    u_xlat6 = u_xlat6 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat6 = clamp(u_xlat6, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat6) * u_xlat0.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendAlpha" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2 = u_xlat1 + u_xlat1;
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1 = u_xlat2 * _TintColor;
					    u_xlat3.x = u_xlat3.x * u_xlat1.w;
					    u_xlat3.x = u_xlat3.x * vs_COLOR0.w;
					    SV_Target0.w = u_xlat3.x;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    u_xlat3.xyz = u_xlat1.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2 = u_xlat1 + u_xlat1;
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1 = u_xlat2 * _TintColor;
					    u_xlat3.x = u_xlat3.x * u_xlat1.w;
					    u_xlat3.x = u_xlat3.x * vs_COLOR0.w;
					    SV_Target0.w = u_xlat3.x;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    u_xlat3.xyz = u_xlat1.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2 = u_xlat1 + u_xlat1;
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1 = u_xlat2 * _TintColor;
					    u_xlat3.x = u_xlat3.x * u_xlat1.w;
					    u_xlat3.x = u_xlat3.x * vs_COLOR0.w;
					    SV_Target0.w = u_xlat3.x;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    u_xlat3.xyz = u_xlat1.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2 = u_xlat1 + u_xlat1;
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1 = u_xlat2 * _TintColor;
					    u_xlat3.x = u_xlat3.x * u_xlat1.w;
					    u_xlat3.x = u_xlat3.x * vs_COLOR0.w;
					    SV_Target0.w = u_xlat3.x;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    u_xlat3.xyz = u_xlat1.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendAlpha" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2 = u_xlat1 + u_xlat1;
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1 = u_xlat2 * _TintColor;
					    u_xlat3.x = u_xlat3.x * u_xlat1.w;
					    u_xlat3.x = u_xlat3.x * vs_COLOR0.w;
					    SV_Target0.w = u_xlat3.x;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    u_xlat3.xyz = u_xlat1.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2 = u_xlat1 + u_xlat1;
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1 = u_xlat2 * _TintColor;
					    u_xlat3.x = u_xlat3.x * u_xlat1.w;
					    u_xlat3.x = u_xlat3.x * vs_COLOR0.w;
					    SV_Target0.w = u_xlat3.x;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    u_xlat3.xyz = u_xlat1.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2 = u_xlat1 + u_xlat1;
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1 = u_xlat2 * _TintColor;
					    u_xlat3.x = u_xlat3.x * u_xlat1.w;
					    u_xlat3.x = u_xlat3.x * vs_COLOR0.w;
					    SV_Target0.w = u_xlat3.x;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    u_xlat3.xyz = u_xlat1.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2 = u_xlat1 + u_xlat1;
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1 = u_xlat2 * _TintColor;
					    u_xlat3.x = u_xlat3.x * u_xlat1.w;
					    u_xlat3.x = u_xlat3.x * vs_COLOR0.w;
					    SV_Target0.w = u_xlat3.x;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    u_xlat3.xyz = u_xlat1.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendAlpha" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					float u_xlat1;
					bool u_xlatb1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1 = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat0.w = u_xlat0.w * u_xlat1;
					    u_xlat0 = u_xlat0 * vs_COLOR0;
					    SV_Target0.w = u_xlat0.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					float u_xlat1;
					bool u_xlatb1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1 = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat0.w = u_xlat0.w * u_xlat1;
					    u_xlat0 = u_xlat0 * vs_COLOR0;
					    SV_Target0.w = u_xlat0.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendAlpha" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					float u_xlat1;
					bool u_xlatb1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1 = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat0.w = u_xlat0.w * u_xlat1;
					    u_xlat0 = u_xlat0 * vs_COLOR0;
					    SV_Target0.w = u_xlat0.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					float u_xlat1;
					bool u_xlatb1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1 = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat0.w = u_xlat0.w * u_xlat1;
					    u_xlat0 = u_xlat0 * vs_COLOR0;
					    SV_Target0.w = u_xlat0.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendAlpha" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					float u_xlat1;
					bool u_xlatb1;
					float u_xlat6;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1 = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat6 = u_xlat0.w * u_xlat1;
					    u_xlat0.xyz = u_xlat0.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    u_xlat6 = u_xlat6 * vs_COLOR0.w;
					    SV_Target0.w = u_xlat6;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    u_xlat6 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat6 = (-u_xlat6) + 1.0;
					    u_xlat6 = u_xlat6 * _ProjectionParams.z;
					    u_xlat6 = max(u_xlat6, 0.0);
					    u_xlat6 = u_xlat6 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat6 = clamp(u_xlat6, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat6) * u_xlat0.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					float u_xlat1;
					bool u_xlatb1;
					float u_xlat6;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1 = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat6 = u_xlat0.w * u_xlat1;
					    u_xlat0.xyz = u_xlat0.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    u_xlat6 = u_xlat6 * vs_COLOR0.w;
					    SV_Target0.w = u_xlat6;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    u_xlat6 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat6 = (-u_xlat6) + 1.0;
					    u_xlat6 = u_xlat6 * _ProjectionParams.z;
					    u_xlat6 = max(u_xlat6, 0.0);
					    u_xlat6 = u_xlat6 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat6 = clamp(u_xlat6, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat6) * u_xlat0.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					float u_xlat1;
					bool u_xlatb1;
					float u_xlat6;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1 = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat6 = u_xlat0.w * u_xlat1;
					    u_xlat0.xyz = u_xlat0.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    u_xlat6 = u_xlat6 * vs_COLOR0.w;
					    SV_Target0.w = u_xlat6;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    u_xlat6 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat6 = (-u_xlat6) + 1.0;
					    u_xlat6 = u_xlat6 * _ProjectionParams.z;
					    u_xlat6 = max(u_xlat6, 0.0);
					    u_xlat6 = u_xlat6 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat6 = clamp(u_xlat6, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat6) * u_xlat0.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					float u_xlat1;
					bool u_xlatb1;
					float u_xlat6;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1 = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat6 = u_xlat0.w * u_xlat1;
					    u_xlat0.xyz = u_xlat0.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    u_xlat6 = u_xlat6 * vs_COLOR0.w;
					    SV_Target0.w = u_xlat6;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    u_xlat6 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat6 = (-u_xlat6) + 1.0;
					    u_xlat6 = u_xlat6 * _ProjectionParams.z;
					    u_xlat6 = max(u_xlat6, 0.0);
					    u_xlat6 = u_xlat6 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat6 = clamp(u_xlat6, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat6) * u_xlat0.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendAlpha" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2 = u_xlat1 + u_xlat1;
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1 = u_xlat2 * _TintColor;
					    u_xlat3.x = u_xlat3.x * u_xlat1.w;
					    u_xlat3.x = u_xlat3.x * vs_COLOR0.w;
					    SV_Target0.w = u_xlat3.x;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    u_xlat3.xyz = u_xlat1.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2 = u_xlat1 + u_xlat1;
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1 = u_xlat2 * _TintColor;
					    u_xlat3.x = u_xlat3.x * u_xlat1.w;
					    u_xlat3.x = u_xlat3.x * vs_COLOR0.w;
					    SV_Target0.w = u_xlat3.x;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    u_xlat3.xyz = u_xlat1.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2 = u_xlat1 + u_xlat1;
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1 = u_xlat2 * _TintColor;
					    u_xlat3.x = u_xlat3.x * u_xlat1.w;
					    u_xlat3.x = u_xlat3.x * vs_COLOR0.w;
					    SV_Target0.w = u_xlat3.x;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    u_xlat3.xyz = u_xlat1.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2 = u_xlat1 + u_xlat1;
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1 = u_xlat2 * _TintColor;
					    u_xlat3.x = u_xlat3.x * u_xlat1.w;
					    u_xlat3.x = u_xlat3.x * vs_COLOR0.w;
					    SV_Target0.w = u_xlat3.x;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    u_xlat3.xyz = u_xlat1.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendAlpha" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2 = u_xlat1 + u_xlat1;
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1 = u_xlat2 * _TintColor;
					    u_xlat3.x = u_xlat3.x * u_xlat1.w;
					    u_xlat3.x = u_xlat3.x * vs_COLOR0.w;
					    SV_Target0.w = u_xlat3.x;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    u_xlat3.xyz = u_xlat1.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2 = u_xlat1 + u_xlat1;
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1 = u_xlat2 * _TintColor;
					    u_xlat3.x = u_xlat3.x * u_xlat1.w;
					    u_xlat3.x = u_xlat3.x * vs_COLOR0.w;
					    SV_Target0.w = u_xlat3.x;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    u_xlat3.xyz = u_xlat1.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2 = u_xlat1 + u_xlat1;
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1 = u_xlat2 * _TintColor;
					    u_xlat3.x = u_xlat3.x * u_xlat1.w;
					    u_xlat3.x = u_xlat3.x * vs_COLOR0.w;
					    SV_Target0.w = u_xlat3.x;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    u_xlat3.xyz = u_xlat1.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2 = u_xlat1 + u_xlat1;
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1 = u_xlat2 * _TintColor;
					    u_xlat3.x = u_xlat3.x * u_xlat1.w;
					    u_xlat3.x = u_xlat3.x * vs_COLOR0.w;
					    SV_Target0.w = u_xlat3.x;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    u_xlat3.xyz = u_xlat1.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendAlpha" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					float u_xlat1;
					bool u_xlatb1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1 = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat0.w = u_xlat0.w * u_xlat1;
					    u_xlat0 = u_xlat0.wxyz * vs_COLOR0.wxyz;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.yzw;
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					float u_xlat1;
					bool u_xlatb1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1 = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat0.w = u_xlat0.w * u_xlat1;
					    u_xlat0 = u_xlat0.wxyz * vs_COLOR0.wxyz;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.yzw;
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendAlpha" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					float u_xlat1;
					bool u_xlatb1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1 = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat0.w = u_xlat0.w * u_xlat1;
					    u_xlat0 = u_xlat0.wxyz * vs_COLOR0.wxyz;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.yzw;
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					float u_xlat1;
					bool u_xlatb1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1 = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat0.w = u_xlat0.w * u_xlat1;
					    u_xlat0 = u_xlat0.wxyz * vs_COLOR0.wxyz;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.yzw;
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendAlpha" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					float u_xlat1;
					bool u_xlatb1;
					float u_xlat6;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1 = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat6 = u_xlat0.w * u_xlat1;
					    u_xlat0.xyz = u_xlat0.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    u_xlat1 = u_xlat6 * vs_COLOR0.w;
					    u_xlat1 = u_xlat1;
					    u_xlat1 = clamp(u_xlat1, 0.0, 1.0);
					    SV_Target0.w = u_xlat1 * vs_TEXCOORD4;
					    u_xlat6 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat6 = (-u_xlat6) + 1.0;
					    u_xlat6 = u_xlat6 * _ProjectionParams.z;
					    u_xlat6 = max(u_xlat6, 0.0);
					    u_xlat6 = u_xlat6 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat6 = clamp(u_xlat6, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat6) * u_xlat0.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					float u_xlat1;
					bool u_xlatb1;
					float u_xlat6;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1 = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat6 = u_xlat0.w * u_xlat1;
					    u_xlat0.xyz = u_xlat0.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    u_xlat1 = u_xlat6 * vs_COLOR0.w;
					    u_xlat1 = u_xlat1;
					    u_xlat1 = clamp(u_xlat1, 0.0, 1.0);
					    SV_Target0.w = u_xlat1 * vs_TEXCOORD4;
					    u_xlat6 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat6 = (-u_xlat6) + 1.0;
					    u_xlat6 = u_xlat6 * _ProjectionParams.z;
					    u_xlat6 = max(u_xlat6, 0.0);
					    u_xlat6 = u_xlat6 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat6 = clamp(u_xlat6, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat6) * u_xlat0.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					float u_xlat1;
					bool u_xlatb1;
					float u_xlat6;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1 = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat6 = u_xlat0.w * u_xlat1;
					    u_xlat0.xyz = u_xlat0.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    u_xlat1 = u_xlat6 * vs_COLOR0.w;
					    u_xlat1 = u_xlat1;
					    u_xlat1 = clamp(u_xlat1, 0.0, 1.0);
					    SV_Target0.w = u_xlat1 * vs_TEXCOORD4;
					    u_xlat6 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat6 = (-u_xlat6) + 1.0;
					    u_xlat6 = u_xlat6 * _ProjectionParams.z;
					    u_xlat6 = max(u_xlat6, 0.0);
					    u_xlat6 = u_xlat6 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat6 = clamp(u_xlat6, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat6) * u_xlat0.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					float u_xlat1;
					bool u_xlatb1;
					float u_xlat6;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1 = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat6 = u_xlat0.w * u_xlat1;
					    u_xlat0.xyz = u_xlat0.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    u_xlat1 = u_xlat6 * vs_COLOR0.w;
					    u_xlat1 = u_xlat1;
					    u_xlat1 = clamp(u_xlat1, 0.0, 1.0);
					    SV_Target0.w = u_xlat1 * vs_TEXCOORD4;
					    u_xlat6 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat6 = (-u_xlat6) + 1.0;
					    u_xlat6 = u_xlat6 * _ProjectionParams.z;
					    u_xlat6 = max(u_xlat6, 0.0);
					    u_xlat6 = u_xlat6 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat6 = clamp(u_xlat6, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat6) * u_xlat0.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendAlpha" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					float u_xlat1;
					bool u_xlatb1;
					float u_xlat6;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1 = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat6 = u_xlat0.w * u_xlat1;
					    u_xlat0.xyz = u_xlat0.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    u_xlat1 = u_xlat6 * vs_COLOR0.w;
					    u_xlat1 = u_xlat1;
					    u_xlat1 = clamp(u_xlat1, 0.0, 1.0);
					    SV_Target0.w = u_xlat1 * vs_TEXCOORD4;
					    u_xlat6 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat6 = (-u_xlat6) + 1.0;
					    u_xlat6 = u_xlat6 * _ProjectionParams.z;
					    u_xlat6 = max(u_xlat6, 0.0);
					    u_xlat6 = u_xlat6 * unity_FogParams.y;
					    u_xlat6 = exp2((-u_xlat6));
					    u_xlat6 = min(u_xlat6, 1.0);
					    SV_Target0.xyz = vec3(u_xlat6) * u_xlat0.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					float u_xlat1;
					bool u_xlatb1;
					float u_xlat6;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1 = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat6 = u_xlat0.w * u_xlat1;
					    u_xlat0.xyz = u_xlat0.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    u_xlat1 = u_xlat6 * vs_COLOR0.w;
					    u_xlat1 = u_xlat1;
					    u_xlat1 = clamp(u_xlat1, 0.0, 1.0);
					    SV_Target0.w = u_xlat1 * vs_TEXCOORD4;
					    u_xlat6 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat6 = (-u_xlat6) + 1.0;
					    u_xlat6 = u_xlat6 * _ProjectionParams.z;
					    u_xlat6 = max(u_xlat6, 0.0);
					    u_xlat6 = u_xlat6 * unity_FogParams.y;
					    u_xlat6 = exp2((-u_xlat6));
					    u_xlat6 = min(u_xlat6, 1.0);
					    SV_Target0.xyz = vec3(u_xlat6) * u_xlat0.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					float u_xlat1;
					bool u_xlatb1;
					float u_xlat6;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1 = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat6 = u_xlat0.w * u_xlat1;
					    u_xlat0.xyz = u_xlat0.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    u_xlat1 = u_xlat6 * vs_COLOR0.w;
					    u_xlat1 = u_xlat1;
					    u_xlat1 = clamp(u_xlat1, 0.0, 1.0);
					    SV_Target0.w = u_xlat1 * vs_TEXCOORD4;
					    u_xlat6 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat6 = (-u_xlat6) + 1.0;
					    u_xlat6 = u_xlat6 * _ProjectionParams.z;
					    u_xlat6 = max(u_xlat6, 0.0);
					    u_xlat6 = u_xlat6 * unity_FogParams.y;
					    u_xlat6 = exp2((-u_xlat6));
					    u_xlat6 = min(u_xlat6, 1.0);
					    SV_Target0.xyz = vec3(u_xlat6) * u_xlat0.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					float u_xlat1;
					bool u_xlatb1;
					float u_xlat6;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1 = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat6 = u_xlat0.w * u_xlat1;
					    u_xlat0.xyz = u_xlat0.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    u_xlat1 = u_xlat6 * vs_COLOR0.w;
					    u_xlat1 = u_xlat1;
					    u_xlat1 = clamp(u_xlat1, 0.0, 1.0);
					    SV_Target0.w = u_xlat1 * vs_TEXCOORD4;
					    u_xlat6 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat6 = (-u_xlat6) + 1.0;
					    u_xlat6 = u_xlat6 * _ProjectionParams.z;
					    u_xlat6 = max(u_xlat6, 0.0);
					    u_xlat6 = u_xlat6 * unity_FogParams.y;
					    u_xlat6 = exp2((-u_xlat6));
					    u_xlat6 = min(u_xlat6, 1.0);
					    SV_Target0.xyz = vec3(u_xlat6) * u_xlat0.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendAlpha" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					float u_xlat1;
					bool u_xlatb1;
					float u_xlat6;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1 = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat6 = u_xlat0.w * u_xlat1;
					    u_xlat0.xyz = u_xlat0.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    u_xlat1 = u_xlat6 * vs_COLOR0.w;
					    u_xlat1 = u_xlat1;
					    u_xlat1 = clamp(u_xlat1, 0.0, 1.0);
					    SV_Target0.w = u_xlat1 * vs_TEXCOORD4;
					    u_xlat6 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat6 = (-u_xlat6) + 1.0;
					    u_xlat6 = u_xlat6 * _ProjectionParams.z;
					    u_xlat6 = max(u_xlat6, 0.0);
					    u_xlat6 = u_xlat6 * unity_FogParams.x;
					    u_xlat6 = u_xlat6 * (-u_xlat6);
					    u_xlat6 = exp2(u_xlat6);
					    SV_Target0.xyz = vec3(u_xlat6) * u_xlat0.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					float u_xlat1;
					bool u_xlatb1;
					float u_xlat6;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1 = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat6 = u_xlat0.w * u_xlat1;
					    u_xlat0.xyz = u_xlat0.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    u_xlat1 = u_xlat6 * vs_COLOR0.w;
					    u_xlat1 = u_xlat1;
					    u_xlat1 = clamp(u_xlat1, 0.0, 1.0);
					    SV_Target0.w = u_xlat1 * vs_TEXCOORD4;
					    u_xlat6 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat6 = (-u_xlat6) + 1.0;
					    u_xlat6 = u_xlat6 * _ProjectionParams.z;
					    u_xlat6 = max(u_xlat6, 0.0);
					    u_xlat6 = u_xlat6 * unity_FogParams.x;
					    u_xlat6 = u_xlat6 * (-u_xlat6);
					    u_xlat6 = exp2(u_xlat6);
					    SV_Target0.xyz = vec3(u_xlat6) * u_xlat0.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					float u_xlat1;
					bool u_xlatb1;
					float u_xlat6;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1 = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat6 = u_xlat0.w * u_xlat1;
					    u_xlat0.xyz = u_xlat0.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    u_xlat1 = u_xlat6 * vs_COLOR0.w;
					    u_xlat1 = u_xlat1;
					    u_xlat1 = clamp(u_xlat1, 0.0, 1.0);
					    SV_Target0.w = u_xlat1 * vs_TEXCOORD4;
					    u_xlat6 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat6 = (-u_xlat6) + 1.0;
					    u_xlat6 = u_xlat6 * _ProjectionParams.z;
					    u_xlat6 = max(u_xlat6, 0.0);
					    u_xlat6 = u_xlat6 * unity_FogParams.x;
					    u_xlat6 = u_xlat6 * (-u_xlat6);
					    u_xlat6 = exp2(u_xlat6);
					    SV_Target0.xyz = vec3(u_xlat6) * u_xlat0.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					float u_xlat1;
					bool u_xlatb1;
					float u_xlat6;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1 = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat6 = u_xlat0.w * u_xlat1;
					    u_xlat0.xyz = u_xlat0.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    u_xlat1 = u_xlat6 * vs_COLOR0.w;
					    u_xlat1 = u_xlat1;
					    u_xlat1 = clamp(u_xlat1, 0.0, 1.0);
					    SV_Target0.w = u_xlat1 * vs_TEXCOORD4;
					    u_xlat6 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat6 = (-u_xlat6) + 1.0;
					    u_xlat6 = u_xlat6 * _ProjectionParams.z;
					    u_xlat6 = max(u_xlat6, 0.0);
					    u_xlat6 = u_xlat6 * unity_FogParams.x;
					    u_xlat6 = u_xlat6 * (-u_xlat6);
					    u_xlat6 = exp2(u_xlat6);
					    SV_Target0.xyz = vec3(u_xlat6) * u_xlat0.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendAlpha" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					float u_xlat1;
					bool u_xlatb1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1 = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat0.w = u_xlat0.w * u_xlat1;
					    u_xlat0 = u_xlat0.wxyz * vs_COLOR0.wxyz;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.yzw;
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					float u_xlat1;
					bool u_xlatb1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1 = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat0.w = u_xlat0.w * u_xlat1;
					    u_xlat0 = u_xlat0.wxyz * vs_COLOR0.wxyz;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.yzw;
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendAlpha" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					float u_xlat1;
					bool u_xlatb1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1 = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat0.w = u_xlat0.w * u_xlat1;
					    u_xlat0 = u_xlat0.wxyz * vs_COLOR0.wxyz;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.yzw;
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					float u_xlat1;
					bool u_xlatb1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1 = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat0.w = u_xlat0.w * u_xlat1;
					    u_xlat0 = u_xlat0.wxyz * vs_COLOR0.wxyz;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.yzw;
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendAlpha" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					float u_xlat1;
					bool u_xlatb1;
					float u_xlat6;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1 = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat6 = u_xlat0.w * u_xlat1;
					    u_xlat0.xyz = u_xlat0.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    u_xlat1 = u_xlat6 * vs_COLOR0.w;
					    u_xlat1 = u_xlat1;
					    u_xlat1 = clamp(u_xlat1, 0.0, 1.0);
					    SV_Target0.w = u_xlat1 * vs_TEXCOORD4;
					    u_xlat6 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat6 = (-u_xlat6) + 1.0;
					    u_xlat6 = u_xlat6 * _ProjectionParams.z;
					    u_xlat6 = max(u_xlat6, 0.0);
					    u_xlat6 = u_xlat6 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat6 = clamp(u_xlat6, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat6) * u_xlat0.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					float u_xlat1;
					bool u_xlatb1;
					float u_xlat6;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1 = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat6 = u_xlat0.w * u_xlat1;
					    u_xlat0.xyz = u_xlat0.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    u_xlat1 = u_xlat6 * vs_COLOR0.w;
					    u_xlat1 = u_xlat1;
					    u_xlat1 = clamp(u_xlat1, 0.0, 1.0);
					    SV_Target0.w = u_xlat1 * vs_TEXCOORD4;
					    u_xlat6 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat6 = (-u_xlat6) + 1.0;
					    u_xlat6 = u_xlat6 * _ProjectionParams.z;
					    u_xlat6 = max(u_xlat6, 0.0);
					    u_xlat6 = u_xlat6 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat6 = clamp(u_xlat6, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat6) * u_xlat0.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					float u_xlat1;
					bool u_xlatb1;
					float u_xlat6;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1 = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat6 = u_xlat0.w * u_xlat1;
					    u_xlat0.xyz = u_xlat0.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    u_xlat1 = u_xlat6 * vs_COLOR0.w;
					    u_xlat1 = u_xlat1;
					    u_xlat1 = clamp(u_xlat1, 0.0, 1.0);
					    SV_Target0.w = u_xlat1 * vs_TEXCOORD4;
					    u_xlat6 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat6 = (-u_xlat6) + 1.0;
					    u_xlat6 = u_xlat6 * _ProjectionParams.z;
					    u_xlat6 = max(u_xlat6, 0.0);
					    u_xlat6 = u_xlat6 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat6 = clamp(u_xlat6, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat6) * u_xlat0.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					float u_xlat1;
					bool u_xlatb1;
					float u_xlat6;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1 = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat6 = u_xlat0.w * u_xlat1;
					    u_xlat0.xyz = u_xlat0.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    u_xlat1 = u_xlat6 * vs_COLOR0.w;
					    u_xlat1 = u_xlat1;
					    u_xlat1 = clamp(u_xlat1, 0.0, 1.0);
					    SV_Target0.w = u_xlat1 * vs_TEXCOORD4;
					    u_xlat6 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat6 = (-u_xlat6) + 1.0;
					    u_xlat6 = u_xlat6 * _ProjectionParams.z;
					    u_xlat6 = max(u_xlat6, 0.0);
					    u_xlat6 = u_xlat6 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat6 = clamp(u_xlat6, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat6) * u_xlat0.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendAlpha" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					float u_xlat1;
					bool u_xlatb1;
					float u_xlat6;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1 = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat6 = u_xlat0.w * u_xlat1;
					    u_xlat0.xyz = u_xlat0.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    u_xlat1 = u_xlat6 * vs_COLOR0.w;
					    u_xlat1 = u_xlat1;
					    u_xlat1 = clamp(u_xlat1, 0.0, 1.0);
					    SV_Target0.w = u_xlat1 * vs_TEXCOORD4;
					    u_xlat6 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat6 = (-u_xlat6) + 1.0;
					    u_xlat6 = u_xlat6 * _ProjectionParams.z;
					    u_xlat6 = max(u_xlat6, 0.0);
					    u_xlat6 = u_xlat6 * unity_FogParams.y;
					    u_xlat6 = exp2((-u_xlat6));
					    u_xlat6 = min(u_xlat6, 1.0);
					    SV_Target0.xyz = vec3(u_xlat6) * u_xlat0.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					float u_xlat1;
					bool u_xlatb1;
					float u_xlat6;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1 = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat6 = u_xlat0.w * u_xlat1;
					    u_xlat0.xyz = u_xlat0.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    u_xlat1 = u_xlat6 * vs_COLOR0.w;
					    u_xlat1 = u_xlat1;
					    u_xlat1 = clamp(u_xlat1, 0.0, 1.0);
					    SV_Target0.w = u_xlat1 * vs_TEXCOORD4;
					    u_xlat6 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat6 = (-u_xlat6) + 1.0;
					    u_xlat6 = u_xlat6 * _ProjectionParams.z;
					    u_xlat6 = max(u_xlat6, 0.0);
					    u_xlat6 = u_xlat6 * unity_FogParams.y;
					    u_xlat6 = exp2((-u_xlat6));
					    u_xlat6 = min(u_xlat6, 1.0);
					    SV_Target0.xyz = vec3(u_xlat6) * u_xlat0.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					float u_xlat1;
					bool u_xlatb1;
					float u_xlat6;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1 = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat6 = u_xlat0.w * u_xlat1;
					    u_xlat0.xyz = u_xlat0.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    u_xlat1 = u_xlat6 * vs_COLOR0.w;
					    u_xlat1 = u_xlat1;
					    u_xlat1 = clamp(u_xlat1, 0.0, 1.0);
					    SV_Target0.w = u_xlat1 * vs_TEXCOORD4;
					    u_xlat6 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat6 = (-u_xlat6) + 1.0;
					    u_xlat6 = u_xlat6 * _ProjectionParams.z;
					    u_xlat6 = max(u_xlat6, 0.0);
					    u_xlat6 = u_xlat6 * unity_FogParams.y;
					    u_xlat6 = exp2((-u_xlat6));
					    u_xlat6 = min(u_xlat6, 1.0);
					    SV_Target0.xyz = vec3(u_xlat6) * u_xlat0.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					float u_xlat1;
					bool u_xlatb1;
					float u_xlat6;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1 = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat6 = u_xlat0.w * u_xlat1;
					    u_xlat0.xyz = u_xlat0.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    u_xlat1 = u_xlat6 * vs_COLOR0.w;
					    u_xlat1 = u_xlat1;
					    u_xlat1 = clamp(u_xlat1, 0.0, 1.0);
					    SV_Target0.w = u_xlat1 * vs_TEXCOORD4;
					    u_xlat6 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat6 = (-u_xlat6) + 1.0;
					    u_xlat6 = u_xlat6 * _ProjectionParams.z;
					    u_xlat6 = max(u_xlat6, 0.0);
					    u_xlat6 = u_xlat6 * unity_FogParams.y;
					    u_xlat6 = exp2((-u_xlat6));
					    u_xlat6 = min(u_xlat6, 1.0);
					    SV_Target0.xyz = vec3(u_xlat6) * u_xlat0.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendAlpha" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					float u_xlat1;
					bool u_xlatb1;
					float u_xlat6;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1 = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat6 = u_xlat0.w * u_xlat1;
					    u_xlat0.xyz = u_xlat0.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    u_xlat1 = u_xlat6 * vs_COLOR0.w;
					    u_xlat1 = u_xlat1;
					    u_xlat1 = clamp(u_xlat1, 0.0, 1.0);
					    SV_Target0.w = u_xlat1 * vs_TEXCOORD4;
					    u_xlat6 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat6 = (-u_xlat6) + 1.0;
					    u_xlat6 = u_xlat6 * _ProjectionParams.z;
					    u_xlat6 = max(u_xlat6, 0.0);
					    u_xlat6 = u_xlat6 * unity_FogParams.x;
					    u_xlat6 = u_xlat6 * (-u_xlat6);
					    u_xlat6 = exp2(u_xlat6);
					    SV_Target0.xyz = vec3(u_xlat6) * u_xlat0.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					float u_xlat1;
					bool u_xlatb1;
					float u_xlat6;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1 = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat6 = u_xlat0.w * u_xlat1;
					    u_xlat0.xyz = u_xlat0.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    u_xlat1 = u_xlat6 * vs_COLOR0.w;
					    u_xlat1 = u_xlat1;
					    u_xlat1 = clamp(u_xlat1, 0.0, 1.0);
					    SV_Target0.w = u_xlat1 * vs_TEXCOORD4;
					    u_xlat6 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat6 = (-u_xlat6) + 1.0;
					    u_xlat6 = u_xlat6 * _ProjectionParams.z;
					    u_xlat6 = max(u_xlat6, 0.0);
					    u_xlat6 = u_xlat6 * unity_FogParams.x;
					    u_xlat6 = u_xlat6 * (-u_xlat6);
					    u_xlat6 = exp2(u_xlat6);
					    SV_Target0.xyz = vec3(u_xlat6) * u_xlat0.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					float u_xlat1;
					bool u_xlatb1;
					float u_xlat6;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1 = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat6 = u_xlat0.w * u_xlat1;
					    u_xlat0.xyz = u_xlat0.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    u_xlat1 = u_xlat6 * vs_COLOR0.w;
					    u_xlat1 = u_xlat1;
					    u_xlat1 = clamp(u_xlat1, 0.0, 1.0);
					    SV_Target0.w = u_xlat1 * vs_TEXCOORD4;
					    u_xlat6 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat6 = (-u_xlat6) + 1.0;
					    u_xlat6 = u_xlat6 * _ProjectionParams.z;
					    u_xlat6 = max(u_xlat6, 0.0);
					    u_xlat6 = u_xlat6 * unity_FogParams.x;
					    u_xlat6 = u_xlat6 * (-u_xlat6);
					    u_xlat6 = exp2(u_xlat6);
					    SV_Target0.xyz = vec3(u_xlat6) * u_xlat0.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					float u_xlat1;
					bool u_xlatb1;
					float u_xlat6;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1 = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat6 = u_xlat0.w * u_xlat1;
					    u_xlat0.xyz = u_xlat0.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    u_xlat1 = u_xlat6 * vs_COLOR0.w;
					    u_xlat1 = u_xlat1;
					    u_xlat1 = clamp(u_xlat1, 0.0, 1.0);
					    SV_Target0.w = u_xlat1 * vs_TEXCOORD4;
					    u_xlat6 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat6 = (-u_xlat6) + 1.0;
					    u_xlat6 = u_xlat6 * _ProjectionParams.z;
					    u_xlat6 = max(u_xlat6, 0.0);
					    u_xlat6 = u_xlat6 * unity_FogParams.x;
					    u_xlat6 = u_xlat6 * (-u_xlat6);
					    u_xlat6 = exp2(u_xlat6);
					    SV_Target0.xyz = vec3(u_xlat6) * u_xlat0.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendAlpha" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    SV_Target0.xyz = u_xlat2.xyz * vs_COLOR0.xyz;
					    SV_Target0.w = u_xlatb0 ? 1.0 : float(0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    SV_Target0.xyz = u_xlat2.xyz * vs_COLOR0.xyz;
					    SV_Target0.w = u_xlatb0 ? 1.0 : float(0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendAlpha" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    SV_Target0.xyz = u_xlat2.xyz * vs_COLOR0.xyz;
					    SV_Target0.w = u_xlatb0 ? 1.0 : float(0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    SV_Target0.xyz = u_xlat2.xyz * vs_COLOR0.xyz;
					    SV_Target0.w = u_xlatb0 ? 1.0 : float(0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendAlpha" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat2.xyz + unity_FogColor.xyz;
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    SV_Target0.w = u_xlatb0 ? 1.0 : float(0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat2.xyz + unity_FogColor.xyz;
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    SV_Target0.w = u_xlatb0 ? 1.0 : float(0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat2.xyz + unity_FogColor.xyz;
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    SV_Target0.w = u_xlatb0 ? 1.0 : float(0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat2.xyz + unity_FogColor.xyz;
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    SV_Target0.w = u_xlatb0 ? 1.0 : float(0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendAlpha" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat2.xyz + unity_FogColor.xyz;
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    SV_Target0.w = u_xlatb0 ? 1.0 : float(0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat2.xyz + unity_FogColor.xyz;
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    SV_Target0.w = u_xlatb0 ? 1.0 : float(0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat2.xyz + unity_FogColor.xyz;
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    SV_Target0.w = u_xlatb0 ? 1.0 : float(0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat2.xyz + unity_FogColor.xyz;
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    SV_Target0.w = u_xlatb0 ? 1.0 : float(0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendAlpha" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat2.xyz + unity_FogColor.xyz;
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    SV_Target0.w = u_xlatb0 ? 1.0 : float(0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat2.xyz + unity_FogColor.xyz;
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    SV_Target0.w = u_xlatb0 ? 1.0 : float(0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat2.xyz + unity_FogColor.xyz;
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    SV_Target0.w = u_xlatb0 ? 1.0 : float(0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat2.xyz + unity_FogColor.xyz;
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    SV_Target0.w = u_xlatb0 ? 1.0 : float(0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendAlpha" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    SV_Target0.xyz = u_xlat2.xyz * vs_COLOR0.xyz;
					    SV_Target0.w = u_xlatb0 ? 1.0 : float(0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    SV_Target0.xyz = u_xlat2.xyz * vs_COLOR0.xyz;
					    SV_Target0.w = u_xlatb0 ? 1.0 : float(0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendAlpha" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    SV_Target0.xyz = u_xlat2.xyz * vs_COLOR0.xyz;
					    SV_Target0.w = u_xlatb0 ? 1.0 : float(0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    SV_Target0.xyz = u_xlat2.xyz * vs_COLOR0.xyz;
					    SV_Target0.w = u_xlatb0 ? 1.0 : float(0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendAlpha" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat2.xyz + unity_FogColor.xyz;
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    SV_Target0.w = u_xlatb0 ? 1.0 : float(0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat2.xyz + unity_FogColor.xyz;
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    SV_Target0.w = u_xlatb0 ? 1.0 : float(0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat2.xyz + unity_FogColor.xyz;
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    SV_Target0.w = u_xlatb0 ? 1.0 : float(0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat2.xyz + unity_FogColor.xyz;
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    SV_Target0.w = u_xlatb0 ? 1.0 : float(0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendAlpha" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat2.xyz + unity_FogColor.xyz;
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    SV_Target0.w = u_xlatb0 ? 1.0 : float(0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat2.xyz + unity_FogColor.xyz;
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    SV_Target0.w = u_xlatb0 ? 1.0 : float(0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat2.xyz + unity_FogColor.xyz;
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    SV_Target0.w = u_xlatb0 ? 1.0 : float(0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat2.xyz + unity_FogColor.xyz;
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    SV_Target0.w = u_xlatb0 ? 1.0 : float(0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendAlpha" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat2.xyz + unity_FogColor.xyz;
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    SV_Target0.w = u_xlatb0 ? 1.0 : float(0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat2.xyz + unity_FogColor.xyz;
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    SV_Target0.w = u_xlatb0 ? 1.0 : float(0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat2.xyz + unity_FogColor.xyz;
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    SV_Target0.w = u_xlatb0 ? 1.0 : float(0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat2.xyz + unity_FogColor.xyz;
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    SV_Target0.w = u_xlatb0 ? 1.0 : float(0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendAlpha" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    SV_Target0.xyz = u_xlat2.xyz * vs_COLOR0.xyz;
					    u_xlat0 = u_xlatb0 ? 1.0 : float(0.0);
					    SV_Target0.w = u_xlat0 * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    SV_Target0.xyz = u_xlat2.xyz * vs_COLOR0.xyz;
					    u_xlat0 = u_xlatb0 ? 1.0 : float(0.0);
					    SV_Target0.w = u_xlat0 * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendAlpha" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    SV_Target0.xyz = u_xlat2.xyz * vs_COLOR0.xyz;
					    u_xlat0 = u_xlatb0 ? 1.0 : float(0.0);
					    SV_Target0.w = u_xlat0 * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    SV_Target0.xyz = u_xlat2.xyz * vs_COLOR0.xyz;
					    u_xlat0 = u_xlatb0 ? 1.0 : float(0.0);
					    SV_Target0.w = u_xlat0 * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendAlpha" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat2.xyz + unity_FogColor.xyz;
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    u_xlat0 = u_xlatb0 ? 1.0 : float(0.0);
					    SV_Target0.w = u_xlat0 * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat2.xyz + unity_FogColor.xyz;
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    u_xlat0 = u_xlatb0 ? 1.0 : float(0.0);
					    SV_Target0.w = u_xlat0 * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat2.xyz + unity_FogColor.xyz;
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    u_xlat0 = u_xlatb0 ? 1.0 : float(0.0);
					    SV_Target0.w = u_xlat0 * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat2.xyz + unity_FogColor.xyz;
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    u_xlat0 = u_xlatb0 ? 1.0 : float(0.0);
					    SV_Target0.w = u_xlat0 * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendAlpha" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat2.xyz + unity_FogColor.xyz;
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    u_xlat0 = u_xlatb0 ? 1.0 : float(0.0);
					    SV_Target0.w = u_xlat0 * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat2.xyz + unity_FogColor.xyz;
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    u_xlat0 = u_xlatb0 ? 1.0 : float(0.0);
					    SV_Target0.w = u_xlat0 * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat2.xyz + unity_FogColor.xyz;
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    u_xlat0 = u_xlatb0 ? 1.0 : float(0.0);
					    SV_Target0.w = u_xlat0 * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat2.xyz + unity_FogColor.xyz;
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    u_xlat0 = u_xlatb0 ? 1.0 : float(0.0);
					    SV_Target0.w = u_xlat0 * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendAlpha" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat2.xyz + unity_FogColor.xyz;
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    u_xlat0 = u_xlatb0 ? 1.0 : float(0.0);
					    SV_Target0.w = u_xlat0 * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat2.xyz + unity_FogColor.xyz;
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    u_xlat0 = u_xlatb0 ? 1.0 : float(0.0);
					    SV_Target0.w = u_xlat0 * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat2.xyz + unity_FogColor.xyz;
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    u_xlat0 = u_xlatb0 ? 1.0 : float(0.0);
					    SV_Target0.w = u_xlat0 * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat2.xyz + unity_FogColor.xyz;
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    u_xlat0 = u_xlatb0 ? 1.0 : float(0.0);
					    SV_Target0.w = u_xlat0 * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendAlpha" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    SV_Target0.xyz = u_xlat2.xyz * vs_COLOR0.xyz;
					    u_xlat0 = u_xlatb0 ? 1.0 : float(0.0);
					    SV_Target0.w = u_xlat0 * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    SV_Target0.xyz = u_xlat2.xyz * vs_COLOR0.xyz;
					    u_xlat0 = u_xlatb0 ? 1.0 : float(0.0);
					    SV_Target0.w = u_xlat0 * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendAlpha" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    SV_Target0.xyz = u_xlat2.xyz * vs_COLOR0.xyz;
					    u_xlat0 = u_xlatb0 ? 1.0 : float(0.0);
					    SV_Target0.w = u_xlat0 * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    SV_Target0.xyz = u_xlat2.xyz * vs_COLOR0.xyz;
					    u_xlat0 = u_xlatb0 ? 1.0 : float(0.0);
					    SV_Target0.w = u_xlat0 * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendAlpha" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat2.xyz + unity_FogColor.xyz;
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    u_xlat0 = u_xlatb0 ? 1.0 : float(0.0);
					    SV_Target0.w = u_xlat0 * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat2.xyz + unity_FogColor.xyz;
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    u_xlat0 = u_xlatb0 ? 1.0 : float(0.0);
					    SV_Target0.w = u_xlat0 * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat2.xyz + unity_FogColor.xyz;
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    u_xlat0 = u_xlatb0 ? 1.0 : float(0.0);
					    SV_Target0.w = u_xlat0 * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat2.xyz + unity_FogColor.xyz;
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    u_xlat0 = u_xlatb0 ? 1.0 : float(0.0);
					    SV_Target0.w = u_xlat0 * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendAlpha" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat2.xyz + unity_FogColor.xyz;
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    u_xlat0 = u_xlatb0 ? 1.0 : float(0.0);
					    SV_Target0.w = u_xlat0 * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat2.xyz + unity_FogColor.xyz;
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    u_xlat0 = u_xlatb0 ? 1.0 : float(0.0);
					    SV_Target0.w = u_xlat0 * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat2.xyz + unity_FogColor.xyz;
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    u_xlat0 = u_xlatb0 ? 1.0 : float(0.0);
					    SV_Target0.w = u_xlat0 * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat2.xyz + unity_FogColor.xyz;
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    u_xlat0 = u_xlatb0 ? 1.0 : float(0.0);
					    SV_Target0.w = u_xlat0 * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendAlpha" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat2.xyz + unity_FogColor.xyz;
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    u_xlat0 = u_xlatb0 ? 1.0 : float(0.0);
					    SV_Target0.w = u_xlat0 * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat2.xyz + unity_FogColor.xyz;
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    u_xlat0 = u_xlatb0 ? 1.0 : float(0.0);
					    SV_Target0.w = u_xlat0 * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat2.xyz + unity_FogColor.xyz;
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    u_xlat0 = u_xlatb0 ? 1.0 : float(0.0);
					    SV_Target0.w = u_xlat0 * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat2.xyz + unity_FogColor.xyz;
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    u_xlat0 = u_xlatb0 ? 1.0 : float(0.0);
					    SV_Target0.w = u_xlat0 * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendAlpha" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat0 = u_xlat0 * vs_COLOR0;
					    SV_Target0.w = u_xlat0.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat0 = u_xlat0 * vs_COLOR0;
					    SV_Target0.w = u_xlat0.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendAlpha" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[7];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    SV_Target0.w = u_xlat0.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[6];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    SV_Target0.w = u_xlat0.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendAlpha" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2.xyz = u_xlat1.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    u_xlat1.x = u_xlat1.w * vs_COLOR0.w;
					    SV_Target0.w = u_xlat1.x;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat2.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2.xyz = u_xlat1.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    u_xlat1.x = u_xlat1.w * vs_COLOR0.w;
					    SV_Target0.w = u_xlat1.x;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat2.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat6;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat0.x = u_xlat0.x * u_xlat1.w;
					    SV_Target0.w = u_xlat0.x;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0.xyz = u_xlat1.xyz * u_xlat0.xyz + (-unity_FogColor.xyz);
					    u_xlat6 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat6 = (-u_xlat6) + 1.0;
					    u_xlat6 = u_xlat6 * _ProjectionParams.z;
					    u_xlat6 = max(u_xlat6, 0.0);
					    u_xlat6 = u_xlat6 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat6 = clamp(u_xlat6, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat6) * u_xlat0.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat6;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat0.x = u_xlat0.x * u_xlat1.w;
					    SV_Target0.w = u_xlat0.x;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0.xyz = u_xlat1.xyz * u_xlat0.xyz + (-unity_FogColor.xyz);
					    u_xlat6 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat6 = (-u_xlat6) + 1.0;
					    u_xlat6 = u_xlat6 * _ProjectionParams.z;
					    u_xlat6 = max(u_xlat6, 0.0);
					    u_xlat6 = u_xlat6 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat6 = clamp(u_xlat6, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat6) * u_xlat0.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendAlpha" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2.xyz = u_xlat1.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    u_xlat1.x = u_xlat1.w * vs_COLOR0.w;
					    SV_Target0.w = u_xlat1.x;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat2.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2.xyz = u_xlat1.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    u_xlat1.x = u_xlat1.w * vs_COLOR0.w;
					    SV_Target0.w = u_xlat1.x;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat2.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0.x = (-u_xlat0.x) + 1.0;
					    u_xlat0.x = u_xlat0.x * _ProjectionParams.z;
					    u_xlat0.x = max(u_xlat0.x, 0.0);
					    u_xlat0.x = u_xlat0.x * unity_FogParams.y;
					    u_xlat0.x = exp2((-u_xlat0.x));
					    u_xlat0.x = min(u_xlat0.x, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2.xyz = vs_COLOR0.xyz;
					    u_xlat2.xyz = u_xlat1.xyz * u_xlat2.xyz + (-unity_FogColor.xyz);
					    SV_Target0.xyz = u_xlat0.xxx * u_xlat2.xyz + unity_FogColor.xyz;
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = u_xlat0.x * vs_COLOR0.w;
					    u_xlat0.x = u_xlat0.x * u_xlat1.w;
					    SV_Target0.w = u_xlat0.x;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0.x = (-u_xlat0.x) + 1.0;
					    u_xlat0.x = u_xlat0.x * _ProjectionParams.z;
					    u_xlat0.x = max(u_xlat0.x, 0.0);
					    u_xlat0.x = u_xlat0.x * unity_FogParams.y;
					    u_xlat0.x = exp2((-u_xlat0.x));
					    u_xlat0.x = min(u_xlat0.x, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2.xyz = vs_COLOR0.xyz;
					    u_xlat2.xyz = u_xlat1.xyz * u_xlat2.xyz + (-unity_FogColor.xyz);
					    SV_Target0.xyz = u_xlat0.xxx * u_xlat2.xyz + unity_FogColor.xyz;
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = u_xlat0.x * vs_COLOR0.w;
					    u_xlat0.x = u_xlat0.x * u_xlat1.w;
					    SV_Target0.w = u_xlat0.x;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendAlpha" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2.xyz = u_xlat1.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    u_xlat1.x = u_xlat1.w * vs_COLOR0.w;
					    SV_Target0.w = u_xlat1.x;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat2.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2.xyz = u_xlat1.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    u_xlat1.x = u_xlat1.w * vs_COLOR0.w;
					    SV_Target0.w = u_xlat1.x;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat2.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0.x = (-u_xlat0.x) + 1.0;
					    u_xlat0.x = u_xlat0.x * _ProjectionParams.z;
					    u_xlat0.x = max(u_xlat0.x, 0.0);
					    u_xlat0.x = u_xlat0.x * unity_FogParams.x;
					    u_xlat0.x = u_xlat0.x * (-u_xlat0.x);
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2.xyz = vs_COLOR0.xyz;
					    u_xlat2.xyz = u_xlat1.xyz * u_xlat2.xyz + (-unity_FogColor.xyz);
					    SV_Target0.xyz = u_xlat0.xxx * u_xlat2.xyz + unity_FogColor.xyz;
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = u_xlat0.x * vs_COLOR0.w;
					    u_xlat0.x = u_xlat0.x * u_xlat1.w;
					    SV_Target0.w = u_xlat0.x;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0.x = (-u_xlat0.x) + 1.0;
					    u_xlat0.x = u_xlat0.x * _ProjectionParams.z;
					    u_xlat0.x = max(u_xlat0.x, 0.0);
					    u_xlat0.x = u_xlat0.x * unity_FogParams.x;
					    u_xlat0.x = u_xlat0.x * (-u_xlat0.x);
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2.xyz = vs_COLOR0.xyz;
					    u_xlat2.xyz = u_xlat1.xyz * u_xlat2.xyz + (-unity_FogColor.xyz);
					    SV_Target0.xyz = u_xlat0.xxx * u_xlat2.xyz + unity_FogColor.xyz;
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = u_xlat0.x * vs_COLOR0.w;
					    u_xlat0.x = u_xlat0.x * u_xlat1.w;
					    SV_Target0.w = u_xlat0.x;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendAlpha" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[7];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    SV_Target0.w = u_xlat0.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[6];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    SV_Target0.w = u_xlat0.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendAlpha" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[7];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    SV_Target0.w = u_xlat0.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[6];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    SV_Target0.w = u_xlat0.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendAlpha" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat6;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat0.x = u_xlat0.x * u_xlat1.w;
					    SV_Target0.w = u_xlat0.x;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0.xyz = u_xlat1.xyz * u_xlat0.xyz + (-unity_FogColor.xyz);
					    u_xlat6 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat6 = (-u_xlat6) + 1.0;
					    u_xlat6 = u_xlat6 * _ProjectionParams.z;
					    u_xlat6 = max(u_xlat6, 0.0);
					    u_xlat6 = u_xlat6 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat6 = clamp(u_xlat6, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat6) * u_xlat0.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat6;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat0.x = u_xlat0.x * u_xlat1.w;
					    SV_Target0.w = u_xlat0.x;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0.xyz = u_xlat1.xyz * u_xlat0.xyz + (-unity_FogColor.xyz);
					    u_xlat6 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat6 = (-u_xlat6) + 1.0;
					    u_xlat6 = u_xlat6 * _ProjectionParams.z;
					    u_xlat6 = max(u_xlat6, 0.0);
					    u_xlat6 = u_xlat6 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat6 = clamp(u_xlat6, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat6) * u_xlat0.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat6;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat0.x = u_xlat0.x * u_xlat1.w;
					    SV_Target0.w = u_xlat0.x;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0.xyz = u_xlat1.xyz * u_xlat0.xyz + (-unity_FogColor.xyz);
					    u_xlat6 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat6 = (-u_xlat6) + 1.0;
					    u_xlat6 = u_xlat6 * _ProjectionParams.z;
					    u_xlat6 = max(u_xlat6, 0.0);
					    u_xlat6 = u_xlat6 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat6 = clamp(u_xlat6, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat6) * u_xlat0.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat6;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat0.x = u_xlat0.x * u_xlat1.w;
					    SV_Target0.w = u_xlat0.x;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0.xyz = u_xlat1.xyz * u_xlat0.xyz + (-unity_FogColor.xyz);
					    u_xlat6 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat6 = (-u_xlat6) + 1.0;
					    u_xlat6 = u_xlat6 * _ProjectionParams.z;
					    u_xlat6 = max(u_xlat6, 0.0);
					    u_xlat6 = u_xlat6 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat6 = clamp(u_xlat6, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat6) * u_xlat0.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendAlpha" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0.x = (-u_xlat0.x) + 1.0;
					    u_xlat0.x = u_xlat0.x * _ProjectionParams.z;
					    u_xlat0.x = max(u_xlat0.x, 0.0);
					    u_xlat0.x = u_xlat0.x * unity_FogParams.y;
					    u_xlat0.x = exp2((-u_xlat0.x));
					    u_xlat0.x = min(u_xlat0.x, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2.xyz = vs_COLOR0.xyz;
					    u_xlat2.xyz = u_xlat1.xyz * u_xlat2.xyz + (-unity_FogColor.xyz);
					    SV_Target0.xyz = u_xlat0.xxx * u_xlat2.xyz + unity_FogColor.xyz;
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = u_xlat0.x * vs_COLOR0.w;
					    u_xlat0.x = u_xlat0.x * u_xlat1.w;
					    SV_Target0.w = u_xlat0.x;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0.x = (-u_xlat0.x) + 1.0;
					    u_xlat0.x = u_xlat0.x * _ProjectionParams.z;
					    u_xlat0.x = max(u_xlat0.x, 0.0);
					    u_xlat0.x = u_xlat0.x * unity_FogParams.y;
					    u_xlat0.x = exp2((-u_xlat0.x));
					    u_xlat0.x = min(u_xlat0.x, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2.xyz = vs_COLOR0.xyz;
					    u_xlat2.xyz = u_xlat1.xyz * u_xlat2.xyz + (-unity_FogColor.xyz);
					    SV_Target0.xyz = u_xlat0.xxx * u_xlat2.xyz + unity_FogColor.xyz;
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = u_xlat0.x * vs_COLOR0.w;
					    u_xlat0.x = u_xlat0.x * u_xlat1.w;
					    SV_Target0.w = u_xlat0.x;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0.x = (-u_xlat0.x) + 1.0;
					    u_xlat0.x = u_xlat0.x * _ProjectionParams.z;
					    u_xlat0.x = max(u_xlat0.x, 0.0);
					    u_xlat0.x = u_xlat0.x * unity_FogParams.y;
					    u_xlat0.x = exp2((-u_xlat0.x));
					    u_xlat0.x = min(u_xlat0.x, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2.xyz = vs_COLOR0.xyz;
					    u_xlat2.xyz = u_xlat1.xyz * u_xlat2.xyz + (-unity_FogColor.xyz);
					    SV_Target0.xyz = u_xlat0.xxx * u_xlat2.xyz + unity_FogColor.xyz;
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = u_xlat0.x * vs_COLOR0.w;
					    u_xlat0.x = u_xlat0.x * u_xlat1.w;
					    SV_Target0.w = u_xlat0.x;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0.x = (-u_xlat0.x) + 1.0;
					    u_xlat0.x = u_xlat0.x * _ProjectionParams.z;
					    u_xlat0.x = max(u_xlat0.x, 0.0);
					    u_xlat0.x = u_xlat0.x * unity_FogParams.y;
					    u_xlat0.x = exp2((-u_xlat0.x));
					    u_xlat0.x = min(u_xlat0.x, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2.xyz = vs_COLOR0.xyz;
					    u_xlat2.xyz = u_xlat1.xyz * u_xlat2.xyz + (-unity_FogColor.xyz);
					    SV_Target0.xyz = u_xlat0.xxx * u_xlat2.xyz + unity_FogColor.xyz;
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = u_xlat0.x * vs_COLOR0.w;
					    u_xlat0.x = u_xlat0.x * u_xlat1.w;
					    SV_Target0.w = u_xlat0.x;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendAlpha" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0.x = (-u_xlat0.x) + 1.0;
					    u_xlat0.x = u_xlat0.x * _ProjectionParams.z;
					    u_xlat0.x = max(u_xlat0.x, 0.0);
					    u_xlat0.x = u_xlat0.x * unity_FogParams.x;
					    u_xlat0.x = u_xlat0.x * (-u_xlat0.x);
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2.xyz = vs_COLOR0.xyz;
					    u_xlat2.xyz = u_xlat1.xyz * u_xlat2.xyz + (-unity_FogColor.xyz);
					    SV_Target0.xyz = u_xlat0.xxx * u_xlat2.xyz + unity_FogColor.xyz;
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = u_xlat0.x * vs_COLOR0.w;
					    u_xlat0.x = u_xlat0.x * u_xlat1.w;
					    SV_Target0.w = u_xlat0.x;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0.x = (-u_xlat0.x) + 1.0;
					    u_xlat0.x = u_xlat0.x * _ProjectionParams.z;
					    u_xlat0.x = max(u_xlat0.x, 0.0);
					    u_xlat0.x = u_xlat0.x * unity_FogParams.x;
					    u_xlat0.x = u_xlat0.x * (-u_xlat0.x);
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2.xyz = vs_COLOR0.xyz;
					    u_xlat2.xyz = u_xlat1.xyz * u_xlat2.xyz + (-unity_FogColor.xyz);
					    SV_Target0.xyz = u_xlat0.xxx * u_xlat2.xyz + unity_FogColor.xyz;
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = u_xlat0.x * vs_COLOR0.w;
					    u_xlat0.x = u_xlat0.x * u_xlat1.w;
					    SV_Target0.w = u_xlat0.x;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0.x = (-u_xlat0.x) + 1.0;
					    u_xlat0.x = u_xlat0.x * _ProjectionParams.z;
					    u_xlat0.x = max(u_xlat0.x, 0.0);
					    u_xlat0.x = u_xlat0.x * unity_FogParams.x;
					    u_xlat0.x = u_xlat0.x * (-u_xlat0.x);
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2.xyz = vs_COLOR0.xyz;
					    u_xlat2.xyz = u_xlat1.xyz * u_xlat2.xyz + (-unity_FogColor.xyz);
					    SV_Target0.xyz = u_xlat0.xxx * u_xlat2.xyz + unity_FogColor.xyz;
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = u_xlat0.x * vs_COLOR0.w;
					    u_xlat0.x = u_xlat0.x * u_xlat1.w;
					    SV_Target0.w = u_xlat0.x;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0.x = (-u_xlat0.x) + 1.0;
					    u_xlat0.x = u_xlat0.x * _ProjectionParams.z;
					    u_xlat0.x = max(u_xlat0.x, 0.0);
					    u_xlat0.x = u_xlat0.x * unity_FogParams.x;
					    u_xlat0.x = u_xlat0.x * (-u_xlat0.x);
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2.xyz = vs_COLOR0.xyz;
					    u_xlat2.xyz = u_xlat1.xyz * u_xlat2.xyz + (-unity_FogColor.xyz);
					    SV_Target0.xyz = u_xlat0.xxx * u_xlat2.xyz + unity_FogColor.xyz;
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = u_xlat0.x * vs_COLOR0.w;
					    u_xlat0.x = u_xlat0.x * u_xlat1.w;
					    SV_Target0.w = u_xlat0.x;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendAlpha" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat0 = u_xlat0.wxyz * vs_COLOR0.wxyz;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.yzw;
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat0 = u_xlat0.wxyz * vs_COLOR0.wxyz;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.yzw;
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendAlpha" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[7];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0.wxyz * u_xlat1.wxyz;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.yzw;
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[6];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0.wxyz * u_xlat1.wxyz;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.yzw;
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendAlpha" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2.xyz = u_xlat1.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    u_xlat1.x = u_xlat1.w * vs_COLOR0.w;
					    u_xlat1.x = u_xlat1.x;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat1.x * vs_TEXCOORD4;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat2.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2.xyz = u_xlat1.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    u_xlat1.x = u_xlat1.w * vs_COLOR0.w;
					    u_xlat1.x = u_xlat1.x;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat1.x * vs_TEXCOORD4;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat2.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat6;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat0.x = u_xlat0.x * u_xlat1.w;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0.xyz = u_xlat1.xyz * u_xlat0.xyz + (-unity_FogColor.xyz);
					    u_xlat6 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat6 = (-u_xlat6) + 1.0;
					    u_xlat6 = u_xlat6 * _ProjectionParams.z;
					    u_xlat6 = max(u_xlat6, 0.0);
					    u_xlat6 = u_xlat6 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat6 = clamp(u_xlat6, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat6) * u_xlat0.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat6;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat0.x = u_xlat0.x * u_xlat1.w;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0.xyz = u_xlat1.xyz * u_xlat0.xyz + (-unity_FogColor.xyz);
					    u_xlat6 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat6 = (-u_xlat6) + 1.0;
					    u_xlat6 = u_xlat6 * _ProjectionParams.z;
					    u_xlat6 = max(u_xlat6, 0.0);
					    u_xlat6 = u_xlat6 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat6 = clamp(u_xlat6, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat6) * u_xlat0.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendAlpha" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2.xyz = u_xlat1.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    u_xlat1.x = u_xlat1.w * vs_COLOR0.w;
					    u_xlat1.x = u_xlat1.x;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat1.x * vs_TEXCOORD4;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat2.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2.xyz = u_xlat1.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    u_xlat1.x = u_xlat1.w * vs_COLOR0.w;
					    u_xlat1.x = u_xlat1.x;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat1.x * vs_TEXCOORD4;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat2.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat6;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat0.x = u_xlat0.x * u_xlat1.w;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0.xyz = u_xlat1.xyz * u_xlat0.xyz + (-unity_FogColor.xyz);
					    u_xlat6 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat6 = (-u_xlat6) + 1.0;
					    u_xlat6 = u_xlat6 * _ProjectionParams.z;
					    u_xlat6 = max(u_xlat6, 0.0);
					    u_xlat6 = u_xlat6 * unity_FogParams.y;
					    u_xlat6 = exp2((-u_xlat6));
					    u_xlat6 = min(u_xlat6, 1.0);
					    SV_Target0.xyz = vec3(u_xlat6) * u_xlat0.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat6;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat0.x = u_xlat0.x * u_xlat1.w;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0.xyz = u_xlat1.xyz * u_xlat0.xyz + (-unity_FogColor.xyz);
					    u_xlat6 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat6 = (-u_xlat6) + 1.0;
					    u_xlat6 = u_xlat6 * _ProjectionParams.z;
					    u_xlat6 = max(u_xlat6, 0.0);
					    u_xlat6 = u_xlat6 * unity_FogParams.y;
					    u_xlat6 = exp2((-u_xlat6));
					    u_xlat6 = min(u_xlat6, 1.0);
					    SV_Target0.xyz = vec3(u_xlat6) * u_xlat0.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendAlpha" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2.xyz = u_xlat1.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    u_xlat1.x = u_xlat1.w * vs_COLOR0.w;
					    u_xlat1.x = u_xlat1.x;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat1.x * vs_TEXCOORD4;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat2.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2.xyz = u_xlat1.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    u_xlat1.x = u_xlat1.w * vs_COLOR0.w;
					    u_xlat1.x = u_xlat1.x;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat1.x * vs_TEXCOORD4;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat2.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat6;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat0.x = u_xlat0.x * u_xlat1.w;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0.xyz = u_xlat1.xyz * u_xlat0.xyz + (-unity_FogColor.xyz);
					    u_xlat6 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat6 = (-u_xlat6) + 1.0;
					    u_xlat6 = u_xlat6 * _ProjectionParams.z;
					    u_xlat6 = max(u_xlat6, 0.0);
					    u_xlat6 = u_xlat6 * unity_FogParams.x;
					    u_xlat6 = u_xlat6 * (-u_xlat6);
					    u_xlat6 = exp2(u_xlat6);
					    SV_Target0.xyz = vec3(u_xlat6) * u_xlat0.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat6;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat0.x = u_xlat0.x * u_xlat1.w;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0.xyz = u_xlat1.xyz * u_xlat0.xyz + (-unity_FogColor.xyz);
					    u_xlat6 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat6 = (-u_xlat6) + 1.0;
					    u_xlat6 = u_xlat6 * _ProjectionParams.z;
					    u_xlat6 = max(u_xlat6, 0.0);
					    u_xlat6 = u_xlat6 * unity_FogParams.x;
					    u_xlat6 = u_xlat6 * (-u_xlat6);
					    u_xlat6 = exp2(u_xlat6);
					    SV_Target0.xyz = vec3(u_xlat6) * u_xlat0.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendAlpha" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[7];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0.wxyz * u_xlat1.wxyz;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.yzw;
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[6];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0.wxyz * u_xlat1.wxyz;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.yzw;
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendAlpha" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[7];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0.wxyz * u_xlat1.wxyz;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.yzw;
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[6];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0.wxyz * u_xlat1.wxyz;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.yzw;
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendAlpha" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat6;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat0.x = u_xlat0.x * u_xlat1.w;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0.xyz = u_xlat1.xyz * u_xlat0.xyz + (-unity_FogColor.xyz);
					    u_xlat6 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat6 = (-u_xlat6) + 1.0;
					    u_xlat6 = u_xlat6 * _ProjectionParams.z;
					    u_xlat6 = max(u_xlat6, 0.0);
					    u_xlat6 = u_xlat6 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat6 = clamp(u_xlat6, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat6) * u_xlat0.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat6;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat0.x = u_xlat0.x * u_xlat1.w;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0.xyz = u_xlat1.xyz * u_xlat0.xyz + (-unity_FogColor.xyz);
					    u_xlat6 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat6 = (-u_xlat6) + 1.0;
					    u_xlat6 = u_xlat6 * _ProjectionParams.z;
					    u_xlat6 = max(u_xlat6, 0.0);
					    u_xlat6 = u_xlat6 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat6 = clamp(u_xlat6, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat6) * u_xlat0.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat6;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat0.x = u_xlat0.x * u_xlat1.w;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0.xyz = u_xlat1.xyz * u_xlat0.xyz + (-unity_FogColor.xyz);
					    u_xlat6 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat6 = (-u_xlat6) + 1.0;
					    u_xlat6 = u_xlat6 * _ProjectionParams.z;
					    u_xlat6 = max(u_xlat6, 0.0);
					    u_xlat6 = u_xlat6 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat6 = clamp(u_xlat6, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat6) * u_xlat0.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat6;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat0.x = u_xlat0.x * u_xlat1.w;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0.xyz = u_xlat1.xyz * u_xlat0.xyz + (-unity_FogColor.xyz);
					    u_xlat6 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat6 = (-u_xlat6) + 1.0;
					    u_xlat6 = u_xlat6 * _ProjectionParams.z;
					    u_xlat6 = max(u_xlat6, 0.0);
					    u_xlat6 = u_xlat6 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat6 = clamp(u_xlat6, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat6) * u_xlat0.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendAlpha" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat6;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat0.x = u_xlat0.x * u_xlat1.w;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0.xyz = u_xlat1.xyz * u_xlat0.xyz + (-unity_FogColor.xyz);
					    u_xlat6 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat6 = (-u_xlat6) + 1.0;
					    u_xlat6 = u_xlat6 * _ProjectionParams.z;
					    u_xlat6 = max(u_xlat6, 0.0);
					    u_xlat6 = u_xlat6 * unity_FogParams.y;
					    u_xlat6 = exp2((-u_xlat6));
					    u_xlat6 = min(u_xlat6, 1.0);
					    SV_Target0.xyz = vec3(u_xlat6) * u_xlat0.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat6;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat0.x = u_xlat0.x * u_xlat1.w;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0.xyz = u_xlat1.xyz * u_xlat0.xyz + (-unity_FogColor.xyz);
					    u_xlat6 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat6 = (-u_xlat6) + 1.0;
					    u_xlat6 = u_xlat6 * _ProjectionParams.z;
					    u_xlat6 = max(u_xlat6, 0.0);
					    u_xlat6 = u_xlat6 * unity_FogParams.y;
					    u_xlat6 = exp2((-u_xlat6));
					    u_xlat6 = min(u_xlat6, 1.0);
					    SV_Target0.xyz = vec3(u_xlat6) * u_xlat0.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat6;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat0.x = u_xlat0.x * u_xlat1.w;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0.xyz = u_xlat1.xyz * u_xlat0.xyz + (-unity_FogColor.xyz);
					    u_xlat6 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat6 = (-u_xlat6) + 1.0;
					    u_xlat6 = u_xlat6 * _ProjectionParams.z;
					    u_xlat6 = max(u_xlat6, 0.0);
					    u_xlat6 = u_xlat6 * unity_FogParams.y;
					    u_xlat6 = exp2((-u_xlat6));
					    u_xlat6 = min(u_xlat6, 1.0);
					    SV_Target0.xyz = vec3(u_xlat6) * u_xlat0.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat6;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat0.x = u_xlat0.x * u_xlat1.w;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0.xyz = u_xlat1.xyz * u_xlat0.xyz + (-unity_FogColor.xyz);
					    u_xlat6 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat6 = (-u_xlat6) + 1.0;
					    u_xlat6 = u_xlat6 * _ProjectionParams.z;
					    u_xlat6 = max(u_xlat6, 0.0);
					    u_xlat6 = u_xlat6 * unity_FogParams.y;
					    u_xlat6 = exp2((-u_xlat6));
					    u_xlat6 = min(u_xlat6, 1.0);
					    SV_Target0.xyz = vec3(u_xlat6) * u_xlat0.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendAlpha" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat6;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat0.x = u_xlat0.x * u_xlat1.w;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0.xyz = u_xlat1.xyz * u_xlat0.xyz + (-unity_FogColor.xyz);
					    u_xlat6 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat6 = (-u_xlat6) + 1.0;
					    u_xlat6 = u_xlat6 * _ProjectionParams.z;
					    u_xlat6 = max(u_xlat6, 0.0);
					    u_xlat6 = u_xlat6 * unity_FogParams.x;
					    u_xlat6 = u_xlat6 * (-u_xlat6);
					    u_xlat6 = exp2(u_xlat6);
					    SV_Target0.xyz = vec3(u_xlat6) * u_xlat0.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat6;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat0.x = u_xlat0.x * u_xlat1.w;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0.xyz = u_xlat1.xyz * u_xlat0.xyz + (-unity_FogColor.xyz);
					    u_xlat6 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat6 = (-u_xlat6) + 1.0;
					    u_xlat6 = u_xlat6 * _ProjectionParams.z;
					    u_xlat6 = max(u_xlat6, 0.0);
					    u_xlat6 = u_xlat6 * unity_FogParams.x;
					    u_xlat6 = u_xlat6 * (-u_xlat6);
					    u_xlat6 = exp2(u_xlat6);
					    SV_Target0.xyz = vec3(u_xlat6) * u_xlat0.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat6;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat0.x = u_xlat0.x * u_xlat1.w;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0.xyz = u_xlat1.xyz * u_xlat0.xyz + (-unity_FogColor.xyz);
					    u_xlat6 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat6 = (-u_xlat6) + 1.0;
					    u_xlat6 = u_xlat6 * _ProjectionParams.z;
					    u_xlat6 = max(u_xlat6, 0.0);
					    u_xlat6 = u_xlat6 * unity_FogParams.x;
					    u_xlat6 = u_xlat6 * (-u_xlat6);
					    u_xlat6 = exp2(u_xlat6);
					    SV_Target0.xyz = vec3(u_xlat6) * u_xlat0.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat6;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat0.x = u_xlat0.x * u_xlat1.w;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0.xyz = u_xlat1.xyz * u_xlat0.xyz + (-unity_FogColor.xyz);
					    u_xlat6 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat6 = (-u_xlat6) + 1.0;
					    u_xlat6 = u_xlat6 * _ProjectionParams.z;
					    u_xlat6 = max(u_xlat6, 0.0);
					    u_xlat6 = u_xlat6 * unity_FogParams.x;
					    u_xlat6 = u_xlat6 * (-u_xlat6);
					    u_xlat6 = exp2(u_xlat6);
					    SV_Target0.xyz = vec3(u_xlat6) * u_xlat0.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendAlpha" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					float u_xlat1;
					bool u_xlatb1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1 = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat0.w = u_xlat0.w * u_xlat1;
					    u_xlat0 = u_xlat0 * vs_COLOR0;
					    SV_Target0.w = u_xlat0.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					float u_xlat1;
					bool u_xlatb1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1 = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat0.w = u_xlat0.w * u_xlat1;
					    u_xlat0 = u_xlat0 * vs_COLOR0;
					    SV_Target0.w = u_xlat0.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendAlpha" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[7];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					bool u_xlatb2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2 = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    SV_Target0.w = u_xlat0.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[6];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					bool u_xlatb2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2 = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    SV_Target0.w = u_xlat0.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendAlpha" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					float u_xlat1;
					bool u_xlatb1;
					float u_xlat6;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1 = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat6 = u_xlat0.w * u_xlat1;
					    u_xlat0.xyz = u_xlat0.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    u_xlat6 = u_xlat6 * vs_COLOR0.w;
					    SV_Target0.w = u_xlat6;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    u_xlat6 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat6 = (-u_xlat6) + 1.0;
					    u_xlat6 = u_xlat6 * _ProjectionParams.z;
					    u_xlat6 = max(u_xlat6, 0.0);
					    u_xlat6 = u_xlat6 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat6 = clamp(u_xlat6, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat6) * u_xlat0.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					float u_xlat1;
					bool u_xlatb1;
					float u_xlat6;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1 = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat6 = u_xlat0.w * u_xlat1;
					    u_xlat0.xyz = u_xlat0.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    u_xlat6 = u_xlat6 * vs_COLOR0.w;
					    SV_Target0.w = u_xlat6;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    u_xlat6 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat6 = (-u_xlat6) + 1.0;
					    u_xlat6 = u_xlat6 * _ProjectionParams.z;
					    u_xlat6 = max(u_xlat6, 0.0);
					    u_xlat6 = u_xlat6 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat6 = clamp(u_xlat6, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat6) * u_xlat0.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					bool u_xlatb2;
					float u_xlat6;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2 = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat2 = u_xlat1.w * u_xlat2;
					    u_xlat0.x = u_xlat0.x * u_xlat2;
					    SV_Target0.w = u_xlat0.x;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0.xyz = u_xlat1.xyz * u_xlat0.xyz + (-unity_FogColor.xyz);
					    u_xlat6 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat6 = (-u_xlat6) + 1.0;
					    u_xlat6 = u_xlat6 * _ProjectionParams.z;
					    u_xlat6 = max(u_xlat6, 0.0);
					    u_xlat6 = u_xlat6 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat6 = clamp(u_xlat6, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat6) * u_xlat0.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					bool u_xlatb2;
					float u_xlat6;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2 = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat2 = u_xlat1.w * u_xlat2;
					    u_xlat0.x = u_xlat0.x * u_xlat2;
					    SV_Target0.w = u_xlat0.x;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0.xyz = u_xlat1.xyz * u_xlat0.xyz + (-unity_FogColor.xyz);
					    u_xlat6 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat6 = (-u_xlat6) + 1.0;
					    u_xlat6 = u_xlat6 * _ProjectionParams.z;
					    u_xlat6 = max(u_xlat6, 0.0);
					    u_xlat6 = u_xlat6 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat6 = clamp(u_xlat6, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat6) * u_xlat0.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendAlpha" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2 = u_xlat1 + u_xlat1;
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1 = u_xlat2 * _TintColor;
					    u_xlat3.x = u_xlat3.x * u_xlat1.w;
					    u_xlat3.x = u_xlat3.x * vs_COLOR0.w;
					    SV_Target0.w = u_xlat3.x;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    u_xlat3.xyz = u_xlat1.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2 = u_xlat1 + u_xlat1;
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1 = u_xlat2 * _TintColor;
					    u_xlat3.x = u_xlat3.x * u_xlat1.w;
					    u_xlat3.x = u_xlat3.x * vs_COLOR0.w;
					    SV_Target0.w = u_xlat3.x;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    u_xlat3.xyz = u_xlat1.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					bool u_xlatb2;
					float u_xlat6;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2 = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat2 = u_xlat1.w * u_xlat2;
					    u_xlat0.x = u_xlat0.x * u_xlat2;
					    SV_Target0.w = u_xlat0.x;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0.xyz = u_xlat1.xyz * u_xlat0.xyz + (-unity_FogColor.xyz);
					    u_xlat6 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat6 = (-u_xlat6) + 1.0;
					    u_xlat6 = u_xlat6 * _ProjectionParams.z;
					    u_xlat6 = max(u_xlat6, 0.0);
					    u_xlat6 = u_xlat6 * unity_FogParams.y;
					    u_xlat6 = exp2((-u_xlat6));
					    u_xlat6 = min(u_xlat6, 1.0);
					    SV_Target0.xyz = vec3(u_xlat6) * u_xlat0.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					bool u_xlatb2;
					float u_xlat6;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2 = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat2 = u_xlat1.w * u_xlat2;
					    u_xlat0.x = u_xlat0.x * u_xlat2;
					    SV_Target0.w = u_xlat0.x;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0.xyz = u_xlat1.xyz * u_xlat0.xyz + (-unity_FogColor.xyz);
					    u_xlat6 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat6 = (-u_xlat6) + 1.0;
					    u_xlat6 = u_xlat6 * _ProjectionParams.z;
					    u_xlat6 = max(u_xlat6, 0.0);
					    u_xlat6 = u_xlat6 * unity_FogParams.y;
					    u_xlat6 = exp2((-u_xlat6));
					    u_xlat6 = min(u_xlat6, 1.0);
					    SV_Target0.xyz = vec3(u_xlat6) * u_xlat0.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendAlpha" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2 = u_xlat1 + u_xlat1;
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1 = u_xlat2 * _TintColor;
					    u_xlat3.x = u_xlat3.x * u_xlat1.w;
					    u_xlat3.x = u_xlat3.x * vs_COLOR0.w;
					    SV_Target0.w = u_xlat3.x;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    u_xlat3.xyz = u_xlat1.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2 = u_xlat1 + u_xlat1;
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1 = u_xlat2 * _TintColor;
					    u_xlat3.x = u_xlat3.x * u_xlat1.w;
					    u_xlat3.x = u_xlat3.x * vs_COLOR0.w;
					    SV_Target0.w = u_xlat3.x;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    u_xlat3.xyz = u_xlat1.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					bool u_xlatb2;
					float u_xlat6;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2 = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat2 = u_xlat1.w * u_xlat2;
					    u_xlat0.x = u_xlat0.x * u_xlat2;
					    SV_Target0.w = u_xlat0.x;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0.xyz = u_xlat1.xyz * u_xlat0.xyz + (-unity_FogColor.xyz);
					    u_xlat6 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat6 = (-u_xlat6) + 1.0;
					    u_xlat6 = u_xlat6 * _ProjectionParams.z;
					    u_xlat6 = max(u_xlat6, 0.0);
					    u_xlat6 = u_xlat6 * unity_FogParams.x;
					    u_xlat6 = u_xlat6 * (-u_xlat6);
					    u_xlat6 = exp2(u_xlat6);
					    SV_Target0.xyz = vec3(u_xlat6) * u_xlat0.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					bool u_xlatb2;
					float u_xlat6;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2 = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat2 = u_xlat1.w * u_xlat2;
					    u_xlat0.x = u_xlat0.x * u_xlat2;
					    SV_Target0.w = u_xlat0.x;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0.xyz = u_xlat1.xyz * u_xlat0.xyz + (-unity_FogColor.xyz);
					    u_xlat6 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat6 = (-u_xlat6) + 1.0;
					    u_xlat6 = u_xlat6 * _ProjectionParams.z;
					    u_xlat6 = max(u_xlat6, 0.0);
					    u_xlat6 = u_xlat6 * unity_FogParams.x;
					    u_xlat6 = u_xlat6 * (-u_xlat6);
					    u_xlat6 = exp2(u_xlat6);
					    SV_Target0.xyz = vec3(u_xlat6) * u_xlat0.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendAlpha" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[7];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					bool u_xlatb2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2 = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    SV_Target0.w = u_xlat0.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[6];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					bool u_xlatb2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2 = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    SV_Target0.w = u_xlat0.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendAlpha" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[7];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					bool u_xlatb2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2 = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    SV_Target0.w = u_xlat0.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[6];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					bool u_xlatb2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2 = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    SV_Target0.w = u_xlat0.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendAlpha" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					bool u_xlatb2;
					float u_xlat6;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2 = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat2 = u_xlat1.w * u_xlat2;
					    u_xlat0.x = u_xlat0.x * u_xlat2;
					    SV_Target0.w = u_xlat0.x;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0.xyz = u_xlat1.xyz * u_xlat0.xyz + (-unity_FogColor.xyz);
					    u_xlat6 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat6 = (-u_xlat6) + 1.0;
					    u_xlat6 = u_xlat6 * _ProjectionParams.z;
					    u_xlat6 = max(u_xlat6, 0.0);
					    u_xlat6 = u_xlat6 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat6 = clamp(u_xlat6, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat6) * u_xlat0.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					bool u_xlatb2;
					float u_xlat6;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2 = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat2 = u_xlat1.w * u_xlat2;
					    u_xlat0.x = u_xlat0.x * u_xlat2;
					    SV_Target0.w = u_xlat0.x;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0.xyz = u_xlat1.xyz * u_xlat0.xyz + (-unity_FogColor.xyz);
					    u_xlat6 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat6 = (-u_xlat6) + 1.0;
					    u_xlat6 = u_xlat6 * _ProjectionParams.z;
					    u_xlat6 = max(u_xlat6, 0.0);
					    u_xlat6 = u_xlat6 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat6 = clamp(u_xlat6, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat6) * u_xlat0.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					bool u_xlatb2;
					float u_xlat6;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2 = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat2 = u_xlat1.w * u_xlat2;
					    u_xlat0.x = u_xlat0.x * u_xlat2;
					    SV_Target0.w = u_xlat0.x;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0.xyz = u_xlat1.xyz * u_xlat0.xyz + (-unity_FogColor.xyz);
					    u_xlat6 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat6 = (-u_xlat6) + 1.0;
					    u_xlat6 = u_xlat6 * _ProjectionParams.z;
					    u_xlat6 = max(u_xlat6, 0.0);
					    u_xlat6 = u_xlat6 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat6 = clamp(u_xlat6, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat6) * u_xlat0.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					bool u_xlatb2;
					float u_xlat6;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2 = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat2 = u_xlat1.w * u_xlat2;
					    u_xlat0.x = u_xlat0.x * u_xlat2;
					    SV_Target0.w = u_xlat0.x;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0.xyz = u_xlat1.xyz * u_xlat0.xyz + (-unity_FogColor.xyz);
					    u_xlat6 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat6 = (-u_xlat6) + 1.0;
					    u_xlat6 = u_xlat6 * _ProjectionParams.z;
					    u_xlat6 = max(u_xlat6, 0.0);
					    u_xlat6 = u_xlat6 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat6 = clamp(u_xlat6, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat6) * u_xlat0.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendAlpha" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					bool u_xlatb2;
					float u_xlat6;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2 = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat2 = u_xlat1.w * u_xlat2;
					    u_xlat0.x = u_xlat0.x * u_xlat2;
					    SV_Target0.w = u_xlat0.x;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0.xyz = u_xlat1.xyz * u_xlat0.xyz + (-unity_FogColor.xyz);
					    u_xlat6 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat6 = (-u_xlat6) + 1.0;
					    u_xlat6 = u_xlat6 * _ProjectionParams.z;
					    u_xlat6 = max(u_xlat6, 0.0);
					    u_xlat6 = u_xlat6 * unity_FogParams.y;
					    u_xlat6 = exp2((-u_xlat6));
					    u_xlat6 = min(u_xlat6, 1.0);
					    SV_Target0.xyz = vec3(u_xlat6) * u_xlat0.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					bool u_xlatb2;
					float u_xlat6;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2 = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat2 = u_xlat1.w * u_xlat2;
					    u_xlat0.x = u_xlat0.x * u_xlat2;
					    SV_Target0.w = u_xlat0.x;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0.xyz = u_xlat1.xyz * u_xlat0.xyz + (-unity_FogColor.xyz);
					    u_xlat6 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat6 = (-u_xlat6) + 1.0;
					    u_xlat6 = u_xlat6 * _ProjectionParams.z;
					    u_xlat6 = max(u_xlat6, 0.0);
					    u_xlat6 = u_xlat6 * unity_FogParams.y;
					    u_xlat6 = exp2((-u_xlat6));
					    u_xlat6 = min(u_xlat6, 1.0);
					    SV_Target0.xyz = vec3(u_xlat6) * u_xlat0.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					bool u_xlatb2;
					float u_xlat6;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2 = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat2 = u_xlat1.w * u_xlat2;
					    u_xlat0.x = u_xlat0.x * u_xlat2;
					    SV_Target0.w = u_xlat0.x;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0.xyz = u_xlat1.xyz * u_xlat0.xyz + (-unity_FogColor.xyz);
					    u_xlat6 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat6 = (-u_xlat6) + 1.0;
					    u_xlat6 = u_xlat6 * _ProjectionParams.z;
					    u_xlat6 = max(u_xlat6, 0.0);
					    u_xlat6 = u_xlat6 * unity_FogParams.y;
					    u_xlat6 = exp2((-u_xlat6));
					    u_xlat6 = min(u_xlat6, 1.0);
					    SV_Target0.xyz = vec3(u_xlat6) * u_xlat0.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					bool u_xlatb2;
					float u_xlat6;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2 = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat2 = u_xlat1.w * u_xlat2;
					    u_xlat0.x = u_xlat0.x * u_xlat2;
					    SV_Target0.w = u_xlat0.x;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0.xyz = u_xlat1.xyz * u_xlat0.xyz + (-unity_FogColor.xyz);
					    u_xlat6 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat6 = (-u_xlat6) + 1.0;
					    u_xlat6 = u_xlat6 * _ProjectionParams.z;
					    u_xlat6 = max(u_xlat6, 0.0);
					    u_xlat6 = u_xlat6 * unity_FogParams.y;
					    u_xlat6 = exp2((-u_xlat6));
					    u_xlat6 = min(u_xlat6, 1.0);
					    SV_Target0.xyz = vec3(u_xlat6) * u_xlat0.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendAlpha" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					bool u_xlatb2;
					float u_xlat6;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2 = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat2 = u_xlat1.w * u_xlat2;
					    u_xlat0.x = u_xlat0.x * u_xlat2;
					    SV_Target0.w = u_xlat0.x;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0.xyz = u_xlat1.xyz * u_xlat0.xyz + (-unity_FogColor.xyz);
					    u_xlat6 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat6 = (-u_xlat6) + 1.0;
					    u_xlat6 = u_xlat6 * _ProjectionParams.z;
					    u_xlat6 = max(u_xlat6, 0.0);
					    u_xlat6 = u_xlat6 * unity_FogParams.x;
					    u_xlat6 = u_xlat6 * (-u_xlat6);
					    u_xlat6 = exp2(u_xlat6);
					    SV_Target0.xyz = vec3(u_xlat6) * u_xlat0.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					bool u_xlatb2;
					float u_xlat6;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2 = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat2 = u_xlat1.w * u_xlat2;
					    u_xlat0.x = u_xlat0.x * u_xlat2;
					    SV_Target0.w = u_xlat0.x;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0.xyz = u_xlat1.xyz * u_xlat0.xyz + (-unity_FogColor.xyz);
					    u_xlat6 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat6 = (-u_xlat6) + 1.0;
					    u_xlat6 = u_xlat6 * _ProjectionParams.z;
					    u_xlat6 = max(u_xlat6, 0.0);
					    u_xlat6 = u_xlat6 * unity_FogParams.x;
					    u_xlat6 = u_xlat6 * (-u_xlat6);
					    u_xlat6 = exp2(u_xlat6);
					    SV_Target0.xyz = vec3(u_xlat6) * u_xlat0.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					bool u_xlatb2;
					float u_xlat6;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2 = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat2 = u_xlat1.w * u_xlat2;
					    u_xlat0.x = u_xlat0.x * u_xlat2;
					    SV_Target0.w = u_xlat0.x;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0.xyz = u_xlat1.xyz * u_xlat0.xyz + (-unity_FogColor.xyz);
					    u_xlat6 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat6 = (-u_xlat6) + 1.0;
					    u_xlat6 = u_xlat6 * _ProjectionParams.z;
					    u_xlat6 = max(u_xlat6, 0.0);
					    u_xlat6 = u_xlat6 * unity_FogParams.x;
					    u_xlat6 = u_xlat6 * (-u_xlat6);
					    u_xlat6 = exp2(u_xlat6);
					    SV_Target0.xyz = vec3(u_xlat6) * u_xlat0.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					bool u_xlatb2;
					float u_xlat6;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2 = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat2 = u_xlat1.w * u_xlat2;
					    u_xlat0.x = u_xlat0.x * u_xlat2;
					    SV_Target0.w = u_xlat0.x;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0.xyz = u_xlat1.xyz * u_xlat0.xyz + (-unity_FogColor.xyz);
					    u_xlat6 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat6 = (-u_xlat6) + 1.0;
					    u_xlat6 = u_xlat6 * _ProjectionParams.z;
					    u_xlat6 = max(u_xlat6, 0.0);
					    u_xlat6 = u_xlat6 * unity_FogParams.x;
					    u_xlat6 = u_xlat6 * (-u_xlat6);
					    u_xlat6 = exp2(u_xlat6);
					    SV_Target0.xyz = vec3(u_xlat6) * u_xlat0.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendAlpha" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					float u_xlat1;
					bool u_xlatb1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1 = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat0.w = u_xlat0.w * u_xlat1;
					    u_xlat0 = u_xlat0.wxyz * vs_COLOR0.wxyz;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.yzw;
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					float u_xlat1;
					bool u_xlatb1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1 = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat0.w = u_xlat0.w * u_xlat1;
					    u_xlat0 = u_xlat0.wxyz * vs_COLOR0.wxyz;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.yzw;
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendAlpha" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[7];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					bool u_xlatb2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2 = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0.wxyz * u_xlat1.wxyz;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.yzw;
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[6];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					bool u_xlatb2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2 = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0.wxyz * u_xlat1.wxyz;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.yzw;
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendAlpha" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					float u_xlat1;
					bool u_xlatb1;
					float u_xlat6;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1 = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat6 = u_xlat0.w * u_xlat1;
					    u_xlat0.xyz = u_xlat0.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    u_xlat1 = u_xlat6 * vs_COLOR0.w;
					    u_xlat1 = u_xlat1;
					    u_xlat1 = clamp(u_xlat1, 0.0, 1.0);
					    SV_Target0.w = u_xlat1 * vs_TEXCOORD4;
					    u_xlat6 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat6 = (-u_xlat6) + 1.0;
					    u_xlat6 = u_xlat6 * _ProjectionParams.z;
					    u_xlat6 = max(u_xlat6, 0.0);
					    u_xlat6 = u_xlat6 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat6 = clamp(u_xlat6, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat6) * u_xlat0.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					float u_xlat1;
					bool u_xlatb1;
					float u_xlat6;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1 = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat6 = u_xlat0.w * u_xlat1;
					    u_xlat0.xyz = u_xlat0.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    u_xlat1 = u_xlat6 * vs_COLOR0.w;
					    u_xlat1 = u_xlat1;
					    u_xlat1 = clamp(u_xlat1, 0.0, 1.0);
					    SV_Target0.w = u_xlat1 * vs_TEXCOORD4;
					    u_xlat6 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat6 = (-u_xlat6) + 1.0;
					    u_xlat6 = u_xlat6 * _ProjectionParams.z;
					    u_xlat6 = max(u_xlat6, 0.0);
					    u_xlat6 = u_xlat6 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat6 = clamp(u_xlat6, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat6) * u_xlat0.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					bool u_xlatb2;
					float u_xlat6;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2 = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat2 = u_xlat1.w * u_xlat2;
					    u_xlat0.x = u_xlat0.x * u_xlat2;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0.xyz = u_xlat1.xyz * u_xlat0.xyz + (-unity_FogColor.xyz);
					    u_xlat6 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat6 = (-u_xlat6) + 1.0;
					    u_xlat6 = u_xlat6 * _ProjectionParams.z;
					    u_xlat6 = max(u_xlat6, 0.0);
					    u_xlat6 = u_xlat6 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat6 = clamp(u_xlat6, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat6) * u_xlat0.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					bool u_xlatb2;
					float u_xlat6;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2 = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat2 = u_xlat1.w * u_xlat2;
					    u_xlat0.x = u_xlat0.x * u_xlat2;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0.xyz = u_xlat1.xyz * u_xlat0.xyz + (-unity_FogColor.xyz);
					    u_xlat6 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat6 = (-u_xlat6) + 1.0;
					    u_xlat6 = u_xlat6 * _ProjectionParams.z;
					    u_xlat6 = max(u_xlat6, 0.0);
					    u_xlat6 = u_xlat6 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat6 = clamp(u_xlat6, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat6) * u_xlat0.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendAlpha" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					float u_xlat1;
					bool u_xlatb1;
					float u_xlat6;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1 = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat6 = u_xlat0.w * u_xlat1;
					    u_xlat0.xyz = u_xlat0.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    u_xlat1 = u_xlat6 * vs_COLOR0.w;
					    u_xlat1 = u_xlat1;
					    u_xlat1 = clamp(u_xlat1, 0.0, 1.0);
					    SV_Target0.w = u_xlat1 * vs_TEXCOORD4;
					    u_xlat6 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat6 = (-u_xlat6) + 1.0;
					    u_xlat6 = u_xlat6 * _ProjectionParams.z;
					    u_xlat6 = max(u_xlat6, 0.0);
					    u_xlat6 = u_xlat6 * unity_FogParams.y;
					    u_xlat6 = exp2((-u_xlat6));
					    u_xlat6 = min(u_xlat6, 1.0);
					    SV_Target0.xyz = vec3(u_xlat6) * u_xlat0.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					float u_xlat1;
					bool u_xlatb1;
					float u_xlat6;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1 = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat6 = u_xlat0.w * u_xlat1;
					    u_xlat0.xyz = u_xlat0.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    u_xlat1 = u_xlat6 * vs_COLOR0.w;
					    u_xlat1 = u_xlat1;
					    u_xlat1 = clamp(u_xlat1, 0.0, 1.0);
					    SV_Target0.w = u_xlat1 * vs_TEXCOORD4;
					    u_xlat6 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat6 = (-u_xlat6) + 1.0;
					    u_xlat6 = u_xlat6 * _ProjectionParams.z;
					    u_xlat6 = max(u_xlat6, 0.0);
					    u_xlat6 = u_xlat6 * unity_FogParams.y;
					    u_xlat6 = exp2((-u_xlat6));
					    u_xlat6 = min(u_xlat6, 1.0);
					    SV_Target0.xyz = vec3(u_xlat6) * u_xlat0.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					bool u_xlatb2;
					float u_xlat6;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2 = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat2 = u_xlat1.w * u_xlat2;
					    u_xlat0.x = u_xlat0.x * u_xlat2;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0.xyz = u_xlat1.xyz * u_xlat0.xyz + (-unity_FogColor.xyz);
					    u_xlat6 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat6 = (-u_xlat6) + 1.0;
					    u_xlat6 = u_xlat6 * _ProjectionParams.z;
					    u_xlat6 = max(u_xlat6, 0.0);
					    u_xlat6 = u_xlat6 * unity_FogParams.y;
					    u_xlat6 = exp2((-u_xlat6));
					    u_xlat6 = min(u_xlat6, 1.0);
					    SV_Target0.xyz = vec3(u_xlat6) * u_xlat0.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					bool u_xlatb2;
					float u_xlat6;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2 = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat2 = u_xlat1.w * u_xlat2;
					    u_xlat0.x = u_xlat0.x * u_xlat2;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0.xyz = u_xlat1.xyz * u_xlat0.xyz + (-unity_FogColor.xyz);
					    u_xlat6 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat6 = (-u_xlat6) + 1.0;
					    u_xlat6 = u_xlat6 * _ProjectionParams.z;
					    u_xlat6 = max(u_xlat6, 0.0);
					    u_xlat6 = u_xlat6 * unity_FogParams.y;
					    u_xlat6 = exp2((-u_xlat6));
					    u_xlat6 = min(u_xlat6, 1.0);
					    SV_Target0.xyz = vec3(u_xlat6) * u_xlat0.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendAlpha" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					float u_xlat1;
					bool u_xlatb1;
					float u_xlat6;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1 = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat6 = u_xlat0.w * u_xlat1;
					    u_xlat0.xyz = u_xlat0.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    u_xlat1 = u_xlat6 * vs_COLOR0.w;
					    u_xlat1 = u_xlat1;
					    u_xlat1 = clamp(u_xlat1, 0.0, 1.0);
					    SV_Target0.w = u_xlat1 * vs_TEXCOORD4;
					    u_xlat6 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat6 = (-u_xlat6) + 1.0;
					    u_xlat6 = u_xlat6 * _ProjectionParams.z;
					    u_xlat6 = max(u_xlat6, 0.0);
					    u_xlat6 = u_xlat6 * unity_FogParams.x;
					    u_xlat6 = u_xlat6 * (-u_xlat6);
					    u_xlat6 = exp2(u_xlat6);
					    SV_Target0.xyz = vec3(u_xlat6) * u_xlat0.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					float u_xlat1;
					bool u_xlatb1;
					float u_xlat6;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1 = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat6 = u_xlat0.w * u_xlat1;
					    u_xlat0.xyz = u_xlat0.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    u_xlat1 = u_xlat6 * vs_COLOR0.w;
					    u_xlat1 = u_xlat1;
					    u_xlat1 = clamp(u_xlat1, 0.0, 1.0);
					    SV_Target0.w = u_xlat1 * vs_TEXCOORD4;
					    u_xlat6 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat6 = (-u_xlat6) + 1.0;
					    u_xlat6 = u_xlat6 * _ProjectionParams.z;
					    u_xlat6 = max(u_xlat6, 0.0);
					    u_xlat6 = u_xlat6 * unity_FogParams.x;
					    u_xlat6 = u_xlat6 * (-u_xlat6);
					    u_xlat6 = exp2(u_xlat6);
					    SV_Target0.xyz = vec3(u_xlat6) * u_xlat0.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					bool u_xlatb2;
					float u_xlat6;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2 = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat2 = u_xlat1.w * u_xlat2;
					    u_xlat0.x = u_xlat0.x * u_xlat2;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0.xyz = u_xlat1.xyz * u_xlat0.xyz + (-unity_FogColor.xyz);
					    u_xlat6 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat6 = (-u_xlat6) + 1.0;
					    u_xlat6 = u_xlat6 * _ProjectionParams.z;
					    u_xlat6 = max(u_xlat6, 0.0);
					    u_xlat6 = u_xlat6 * unity_FogParams.x;
					    u_xlat6 = u_xlat6 * (-u_xlat6);
					    u_xlat6 = exp2(u_xlat6);
					    SV_Target0.xyz = vec3(u_xlat6) * u_xlat0.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					bool u_xlatb2;
					float u_xlat6;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2 = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat2 = u_xlat1.w * u_xlat2;
					    u_xlat0.x = u_xlat0.x * u_xlat2;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0.xyz = u_xlat1.xyz * u_xlat0.xyz + (-unity_FogColor.xyz);
					    u_xlat6 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat6 = (-u_xlat6) + 1.0;
					    u_xlat6 = u_xlat6 * _ProjectionParams.z;
					    u_xlat6 = max(u_xlat6, 0.0);
					    u_xlat6 = u_xlat6 * unity_FogParams.x;
					    u_xlat6 = u_xlat6 * (-u_xlat6);
					    u_xlat6 = exp2(u_xlat6);
					    SV_Target0.xyz = vec3(u_xlat6) * u_xlat0.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendAlpha" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[7];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					bool u_xlatb2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2 = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0.wxyz * u_xlat1.wxyz;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.yzw;
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[6];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					bool u_xlatb2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2 = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0.wxyz * u_xlat1.wxyz;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.yzw;
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendAlpha" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[7];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					bool u_xlatb2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2 = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0.wxyz * u_xlat1.wxyz;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.yzw;
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[6];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					bool u_xlatb2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2 = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0.wxyz * u_xlat1.wxyz;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.yzw;
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendAlpha" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					bool u_xlatb2;
					float u_xlat6;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2 = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat2 = u_xlat1.w * u_xlat2;
					    u_xlat0.x = u_xlat0.x * u_xlat2;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0.xyz = u_xlat1.xyz * u_xlat0.xyz + (-unity_FogColor.xyz);
					    u_xlat6 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat6 = (-u_xlat6) + 1.0;
					    u_xlat6 = u_xlat6 * _ProjectionParams.z;
					    u_xlat6 = max(u_xlat6, 0.0);
					    u_xlat6 = u_xlat6 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat6 = clamp(u_xlat6, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat6) * u_xlat0.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					bool u_xlatb2;
					float u_xlat6;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2 = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat2 = u_xlat1.w * u_xlat2;
					    u_xlat0.x = u_xlat0.x * u_xlat2;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0.xyz = u_xlat1.xyz * u_xlat0.xyz + (-unity_FogColor.xyz);
					    u_xlat6 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat6 = (-u_xlat6) + 1.0;
					    u_xlat6 = u_xlat6 * _ProjectionParams.z;
					    u_xlat6 = max(u_xlat6, 0.0);
					    u_xlat6 = u_xlat6 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat6 = clamp(u_xlat6, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat6) * u_xlat0.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					bool u_xlatb2;
					float u_xlat6;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2 = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat2 = u_xlat1.w * u_xlat2;
					    u_xlat0.x = u_xlat0.x * u_xlat2;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0.xyz = u_xlat1.xyz * u_xlat0.xyz + (-unity_FogColor.xyz);
					    u_xlat6 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat6 = (-u_xlat6) + 1.0;
					    u_xlat6 = u_xlat6 * _ProjectionParams.z;
					    u_xlat6 = max(u_xlat6, 0.0);
					    u_xlat6 = u_xlat6 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat6 = clamp(u_xlat6, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat6) * u_xlat0.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					bool u_xlatb2;
					float u_xlat6;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2 = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat2 = u_xlat1.w * u_xlat2;
					    u_xlat0.x = u_xlat0.x * u_xlat2;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0.xyz = u_xlat1.xyz * u_xlat0.xyz + (-unity_FogColor.xyz);
					    u_xlat6 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat6 = (-u_xlat6) + 1.0;
					    u_xlat6 = u_xlat6 * _ProjectionParams.z;
					    u_xlat6 = max(u_xlat6, 0.0);
					    u_xlat6 = u_xlat6 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat6 = clamp(u_xlat6, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat6) * u_xlat0.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendAlpha" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					bool u_xlatb2;
					float u_xlat6;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2 = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat2 = u_xlat1.w * u_xlat2;
					    u_xlat0.x = u_xlat0.x * u_xlat2;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0.xyz = u_xlat1.xyz * u_xlat0.xyz + (-unity_FogColor.xyz);
					    u_xlat6 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat6 = (-u_xlat6) + 1.0;
					    u_xlat6 = u_xlat6 * _ProjectionParams.z;
					    u_xlat6 = max(u_xlat6, 0.0);
					    u_xlat6 = u_xlat6 * unity_FogParams.y;
					    u_xlat6 = exp2((-u_xlat6));
					    u_xlat6 = min(u_xlat6, 1.0);
					    SV_Target0.xyz = vec3(u_xlat6) * u_xlat0.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					bool u_xlatb2;
					float u_xlat6;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2 = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat2 = u_xlat1.w * u_xlat2;
					    u_xlat0.x = u_xlat0.x * u_xlat2;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0.xyz = u_xlat1.xyz * u_xlat0.xyz + (-unity_FogColor.xyz);
					    u_xlat6 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat6 = (-u_xlat6) + 1.0;
					    u_xlat6 = u_xlat6 * _ProjectionParams.z;
					    u_xlat6 = max(u_xlat6, 0.0);
					    u_xlat6 = u_xlat6 * unity_FogParams.y;
					    u_xlat6 = exp2((-u_xlat6));
					    u_xlat6 = min(u_xlat6, 1.0);
					    SV_Target0.xyz = vec3(u_xlat6) * u_xlat0.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					bool u_xlatb2;
					float u_xlat6;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2 = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat2 = u_xlat1.w * u_xlat2;
					    u_xlat0.x = u_xlat0.x * u_xlat2;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0.xyz = u_xlat1.xyz * u_xlat0.xyz + (-unity_FogColor.xyz);
					    u_xlat6 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat6 = (-u_xlat6) + 1.0;
					    u_xlat6 = u_xlat6 * _ProjectionParams.z;
					    u_xlat6 = max(u_xlat6, 0.0);
					    u_xlat6 = u_xlat6 * unity_FogParams.y;
					    u_xlat6 = exp2((-u_xlat6));
					    u_xlat6 = min(u_xlat6, 1.0);
					    SV_Target0.xyz = vec3(u_xlat6) * u_xlat0.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					bool u_xlatb2;
					float u_xlat6;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2 = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat2 = u_xlat1.w * u_xlat2;
					    u_xlat0.x = u_xlat0.x * u_xlat2;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0.xyz = u_xlat1.xyz * u_xlat0.xyz + (-unity_FogColor.xyz);
					    u_xlat6 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat6 = (-u_xlat6) + 1.0;
					    u_xlat6 = u_xlat6 * _ProjectionParams.z;
					    u_xlat6 = max(u_xlat6, 0.0);
					    u_xlat6 = u_xlat6 * unity_FogParams.y;
					    u_xlat6 = exp2((-u_xlat6));
					    u_xlat6 = min(u_xlat6, 1.0);
					    SV_Target0.xyz = vec3(u_xlat6) * u_xlat0.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendAlpha" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					bool u_xlatb2;
					float u_xlat6;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2 = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat2 = u_xlat1.w * u_xlat2;
					    u_xlat0.x = u_xlat0.x * u_xlat2;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0.xyz = u_xlat1.xyz * u_xlat0.xyz + (-unity_FogColor.xyz);
					    u_xlat6 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat6 = (-u_xlat6) + 1.0;
					    u_xlat6 = u_xlat6 * _ProjectionParams.z;
					    u_xlat6 = max(u_xlat6, 0.0);
					    u_xlat6 = u_xlat6 * unity_FogParams.x;
					    u_xlat6 = u_xlat6 * (-u_xlat6);
					    u_xlat6 = exp2(u_xlat6);
					    SV_Target0.xyz = vec3(u_xlat6) * u_xlat0.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					bool u_xlatb2;
					float u_xlat6;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2 = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat2 = u_xlat1.w * u_xlat2;
					    u_xlat0.x = u_xlat0.x * u_xlat2;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0.xyz = u_xlat1.xyz * u_xlat0.xyz + (-unity_FogColor.xyz);
					    u_xlat6 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat6 = (-u_xlat6) + 1.0;
					    u_xlat6 = u_xlat6 * _ProjectionParams.z;
					    u_xlat6 = max(u_xlat6, 0.0);
					    u_xlat6 = u_xlat6 * unity_FogParams.x;
					    u_xlat6 = u_xlat6 * (-u_xlat6);
					    u_xlat6 = exp2(u_xlat6);
					    SV_Target0.xyz = vec3(u_xlat6) * u_xlat0.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					bool u_xlatb2;
					float u_xlat6;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2 = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat2 = u_xlat1.w * u_xlat2;
					    u_xlat0.x = u_xlat0.x * u_xlat2;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0.xyz = u_xlat1.xyz * u_xlat0.xyz + (-unity_FogColor.xyz);
					    u_xlat6 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat6 = (-u_xlat6) + 1.0;
					    u_xlat6 = u_xlat6 * _ProjectionParams.z;
					    u_xlat6 = max(u_xlat6, 0.0);
					    u_xlat6 = u_xlat6 * unity_FogParams.x;
					    u_xlat6 = u_xlat6 * (-u_xlat6);
					    u_xlat6 = exp2(u_xlat6);
					    SV_Target0.xyz = vec3(u_xlat6) * u_xlat0.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					bool u_xlatb2;
					float u_xlat6;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2 = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat2 = u_xlat1.w * u_xlat2;
					    u_xlat0.x = u_xlat0.x * u_xlat2;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0.xyz = u_xlat1.xyz * u_xlat0.xyz + (-unity_FogColor.xyz);
					    u_xlat6 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat6 = (-u_xlat6) + 1.0;
					    u_xlat6 = u_xlat6 * _ProjectionParams.z;
					    u_xlat6 = max(u_xlat6, 0.0);
					    u_xlat6 = u_xlat6 * unity_FogParams.x;
					    u_xlat6 = u_xlat6 * (-u_xlat6);
					    u_xlat6 = exp2(u_xlat6);
					    SV_Target0.xyz = vec3(u_xlat6) * u_xlat0.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendAlpha" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    SV_Target0.xyz = u_xlat2.xyz * vs_COLOR0.xyz;
					    SV_Target0.w = u_xlatb0 ? 1.0 : float(0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    SV_Target0.xyz = u_xlat2.xyz * vs_COLOR0.xyz;
					    SV_Target0.w = u_xlatb0 ? 1.0 : float(0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendAlpha" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[7];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb0 = u_xlat1.w>=u_xlat0.x;
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    SV_Target0.xyz = u_xlat2.xyz * vs_COLOR0.xyz;
					    SV_Target0.w = u_xlatb0 ? 1.0 : float(0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[6];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb0 = u_xlat1.w>=u_xlat0.x;
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    SV_Target0.xyz = u_xlat2.xyz * vs_COLOR0.xyz;
					    SV_Target0.w = u_xlatb0 ? 1.0 : float(0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendAlpha" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat2.xyz + unity_FogColor.xyz;
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    SV_Target0.w = u_xlatb0 ? 1.0 : float(0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat2.xyz + unity_FogColor.xyz;
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    SV_Target0.w = u_xlatb0 ? 1.0 : float(0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb0 = u_xlat1.w>=u_xlat0.x;
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    SV_Target0.w = u_xlatb0 ? 1.0 : float(0.0);
					    u_xlat0.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0.x = (-u_xlat0.x) + 1.0;
					    u_xlat0.x = u_xlat0.x * _ProjectionParams.z;
					    u_xlat0.x = max(u_xlat0.x, 0.0);
					    u_xlat0.x = u_xlat0.x * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.xxx * u_xlat2.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb0 = u_xlat1.w>=u_xlat0.x;
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    SV_Target0.w = u_xlatb0 ? 1.0 : float(0.0);
					    u_xlat0.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0.x = (-u_xlat0.x) + 1.0;
					    u_xlat0.x = u_xlat0.x * _ProjectionParams.z;
					    u_xlat0.x = max(u_xlat0.x, 0.0);
					    u_xlat0.x = u_xlat0.x * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.xxx * u_xlat2.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendAlpha" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat2.xyz + unity_FogColor.xyz;
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    SV_Target0.w = u_xlatb0 ? 1.0 : float(0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat2.xyz + unity_FogColor.xyz;
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    SV_Target0.w = u_xlatb0 ? 1.0 : float(0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0.x = (-u_xlat0.x) + 1.0;
					    u_xlat0.x = u_xlat0.x * _ProjectionParams.z;
					    u_xlat0.x = max(u_xlat0.x, 0.0);
					    u_xlat0.x = u_xlat0.x * unity_FogParams.y;
					    u_xlat0.x = exp2((-u_xlat0.x));
					    u_xlat0.x = min(u_xlat0.x, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    SV_Target0.xyz = u_xlat0.xxx * u_xlat2.xyz + unity_FogColor.xyz;
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0.x;
					    SV_Target0.w = u_xlatb0 ? 1.0 : float(0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0.x = (-u_xlat0.x) + 1.0;
					    u_xlat0.x = u_xlat0.x * _ProjectionParams.z;
					    u_xlat0.x = max(u_xlat0.x, 0.0);
					    u_xlat0.x = u_xlat0.x * unity_FogParams.y;
					    u_xlat0.x = exp2((-u_xlat0.x));
					    u_xlat0.x = min(u_xlat0.x, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    SV_Target0.xyz = u_xlat0.xxx * u_xlat2.xyz + unity_FogColor.xyz;
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0.x;
					    SV_Target0.w = u_xlatb0 ? 1.0 : float(0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendAlpha" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat2.xyz + unity_FogColor.xyz;
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    SV_Target0.w = u_xlatb0 ? 1.0 : float(0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat2.xyz + unity_FogColor.xyz;
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    SV_Target0.w = u_xlatb0 ? 1.0 : float(0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0.x = (-u_xlat0.x) + 1.0;
					    u_xlat0.x = u_xlat0.x * _ProjectionParams.z;
					    u_xlat0.x = max(u_xlat0.x, 0.0);
					    u_xlat0.x = u_xlat0.x * unity_FogParams.x;
					    u_xlat0.x = u_xlat0.x * (-u_xlat0.x);
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    SV_Target0.xyz = u_xlat0.xxx * u_xlat2.xyz + unity_FogColor.xyz;
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0.x;
					    SV_Target0.w = u_xlatb0 ? 1.0 : float(0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0.x = (-u_xlat0.x) + 1.0;
					    u_xlat0.x = u_xlat0.x * _ProjectionParams.z;
					    u_xlat0.x = max(u_xlat0.x, 0.0);
					    u_xlat0.x = u_xlat0.x * unity_FogParams.x;
					    u_xlat0.x = u_xlat0.x * (-u_xlat0.x);
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    SV_Target0.xyz = u_xlat0.xxx * u_xlat2.xyz + unity_FogColor.xyz;
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0.x;
					    SV_Target0.w = u_xlatb0 ? 1.0 : float(0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendAlpha" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[7];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb0 = u_xlat1.w>=u_xlat0.x;
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    SV_Target0.xyz = u_xlat2.xyz * vs_COLOR0.xyz;
					    SV_Target0.w = u_xlatb0 ? 1.0 : float(0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[6];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb0 = u_xlat1.w>=u_xlat0.x;
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    SV_Target0.xyz = u_xlat2.xyz * vs_COLOR0.xyz;
					    SV_Target0.w = u_xlatb0 ? 1.0 : float(0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendAlpha" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[7];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb0 = u_xlat1.w>=u_xlat0.x;
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    SV_Target0.xyz = u_xlat2.xyz * vs_COLOR0.xyz;
					    SV_Target0.w = u_xlatb0 ? 1.0 : float(0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[6];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb0 = u_xlat1.w>=u_xlat0.x;
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    SV_Target0.xyz = u_xlat2.xyz * vs_COLOR0.xyz;
					    SV_Target0.w = u_xlatb0 ? 1.0 : float(0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendAlpha" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb0 = u_xlat1.w>=u_xlat0.x;
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    SV_Target0.w = u_xlatb0 ? 1.0 : float(0.0);
					    u_xlat0.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0.x = (-u_xlat0.x) + 1.0;
					    u_xlat0.x = u_xlat0.x * _ProjectionParams.z;
					    u_xlat0.x = max(u_xlat0.x, 0.0);
					    u_xlat0.x = u_xlat0.x * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.xxx * u_xlat2.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb0 = u_xlat1.w>=u_xlat0.x;
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    SV_Target0.w = u_xlatb0 ? 1.0 : float(0.0);
					    u_xlat0.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0.x = (-u_xlat0.x) + 1.0;
					    u_xlat0.x = u_xlat0.x * _ProjectionParams.z;
					    u_xlat0.x = max(u_xlat0.x, 0.0);
					    u_xlat0.x = u_xlat0.x * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.xxx * u_xlat2.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb0 = u_xlat1.w>=u_xlat0.x;
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    SV_Target0.w = u_xlatb0 ? 1.0 : float(0.0);
					    u_xlat0.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0.x = (-u_xlat0.x) + 1.0;
					    u_xlat0.x = u_xlat0.x * _ProjectionParams.z;
					    u_xlat0.x = max(u_xlat0.x, 0.0);
					    u_xlat0.x = u_xlat0.x * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.xxx * u_xlat2.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb0 = u_xlat1.w>=u_xlat0.x;
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    SV_Target0.w = u_xlatb0 ? 1.0 : float(0.0);
					    u_xlat0.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0.x = (-u_xlat0.x) + 1.0;
					    u_xlat0.x = u_xlat0.x * _ProjectionParams.z;
					    u_xlat0.x = max(u_xlat0.x, 0.0);
					    u_xlat0.x = u_xlat0.x * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.xxx * u_xlat2.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendAlpha" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0.x = (-u_xlat0.x) + 1.0;
					    u_xlat0.x = u_xlat0.x * _ProjectionParams.z;
					    u_xlat0.x = max(u_xlat0.x, 0.0);
					    u_xlat0.x = u_xlat0.x * unity_FogParams.y;
					    u_xlat0.x = exp2((-u_xlat0.x));
					    u_xlat0.x = min(u_xlat0.x, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    SV_Target0.xyz = u_xlat0.xxx * u_xlat2.xyz + unity_FogColor.xyz;
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0.x;
					    SV_Target0.w = u_xlatb0 ? 1.0 : float(0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0.x = (-u_xlat0.x) + 1.0;
					    u_xlat0.x = u_xlat0.x * _ProjectionParams.z;
					    u_xlat0.x = max(u_xlat0.x, 0.0);
					    u_xlat0.x = u_xlat0.x * unity_FogParams.y;
					    u_xlat0.x = exp2((-u_xlat0.x));
					    u_xlat0.x = min(u_xlat0.x, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    SV_Target0.xyz = u_xlat0.xxx * u_xlat2.xyz + unity_FogColor.xyz;
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0.x;
					    SV_Target0.w = u_xlatb0 ? 1.0 : float(0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0.x = (-u_xlat0.x) + 1.0;
					    u_xlat0.x = u_xlat0.x * _ProjectionParams.z;
					    u_xlat0.x = max(u_xlat0.x, 0.0);
					    u_xlat0.x = u_xlat0.x * unity_FogParams.y;
					    u_xlat0.x = exp2((-u_xlat0.x));
					    u_xlat0.x = min(u_xlat0.x, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    SV_Target0.xyz = u_xlat0.xxx * u_xlat2.xyz + unity_FogColor.xyz;
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0.x;
					    SV_Target0.w = u_xlatb0 ? 1.0 : float(0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0.x = (-u_xlat0.x) + 1.0;
					    u_xlat0.x = u_xlat0.x * _ProjectionParams.z;
					    u_xlat0.x = max(u_xlat0.x, 0.0);
					    u_xlat0.x = u_xlat0.x * unity_FogParams.y;
					    u_xlat0.x = exp2((-u_xlat0.x));
					    u_xlat0.x = min(u_xlat0.x, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    SV_Target0.xyz = u_xlat0.xxx * u_xlat2.xyz + unity_FogColor.xyz;
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0.x;
					    SV_Target0.w = u_xlatb0 ? 1.0 : float(0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendAlpha" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0.x = (-u_xlat0.x) + 1.0;
					    u_xlat0.x = u_xlat0.x * _ProjectionParams.z;
					    u_xlat0.x = max(u_xlat0.x, 0.0);
					    u_xlat0.x = u_xlat0.x * unity_FogParams.x;
					    u_xlat0.x = u_xlat0.x * (-u_xlat0.x);
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    SV_Target0.xyz = u_xlat0.xxx * u_xlat2.xyz + unity_FogColor.xyz;
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0.x;
					    SV_Target0.w = u_xlatb0 ? 1.0 : float(0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0.x = (-u_xlat0.x) + 1.0;
					    u_xlat0.x = u_xlat0.x * _ProjectionParams.z;
					    u_xlat0.x = max(u_xlat0.x, 0.0);
					    u_xlat0.x = u_xlat0.x * unity_FogParams.x;
					    u_xlat0.x = u_xlat0.x * (-u_xlat0.x);
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    SV_Target0.xyz = u_xlat0.xxx * u_xlat2.xyz + unity_FogColor.xyz;
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0.x;
					    SV_Target0.w = u_xlatb0 ? 1.0 : float(0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0.x = (-u_xlat0.x) + 1.0;
					    u_xlat0.x = u_xlat0.x * _ProjectionParams.z;
					    u_xlat0.x = max(u_xlat0.x, 0.0);
					    u_xlat0.x = u_xlat0.x * unity_FogParams.x;
					    u_xlat0.x = u_xlat0.x * (-u_xlat0.x);
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    SV_Target0.xyz = u_xlat0.xxx * u_xlat2.xyz + unity_FogColor.xyz;
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0.x;
					    SV_Target0.w = u_xlatb0 ? 1.0 : float(0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0.x = (-u_xlat0.x) + 1.0;
					    u_xlat0.x = u_xlat0.x * _ProjectionParams.z;
					    u_xlat0.x = max(u_xlat0.x, 0.0);
					    u_xlat0.x = u_xlat0.x * unity_FogParams.x;
					    u_xlat0.x = u_xlat0.x * (-u_xlat0.x);
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    SV_Target0.xyz = u_xlat0.xxx * u_xlat2.xyz + unity_FogColor.xyz;
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0.x;
					    SV_Target0.w = u_xlatb0 ? 1.0 : float(0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendAlpha" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    SV_Target0.xyz = u_xlat2.xyz * vs_COLOR0.xyz;
					    u_xlat0 = u_xlatb0 ? 1.0 : float(0.0);
					    SV_Target0.w = u_xlat0 * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    SV_Target0.xyz = u_xlat2.xyz * vs_COLOR0.xyz;
					    u_xlat0 = u_xlatb0 ? 1.0 : float(0.0);
					    SV_Target0.w = u_xlat0 * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendAlpha" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[7];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb0 = u_xlat1.w>=u_xlat0.x;
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    SV_Target0.xyz = u_xlat2.xyz * vs_COLOR0.xyz;
					    u_xlat0.x = u_xlatb0 ? 1.0 : float(0.0);
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[6];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb0 = u_xlat1.w>=u_xlat0.x;
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    SV_Target0.xyz = u_xlat2.xyz * vs_COLOR0.xyz;
					    u_xlat0.x = u_xlatb0 ? 1.0 : float(0.0);
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendAlpha" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat2.xyz + unity_FogColor.xyz;
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    u_xlat0 = u_xlatb0 ? 1.0 : float(0.0);
					    SV_Target0.w = u_xlat0 * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat2.xyz + unity_FogColor.xyz;
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    u_xlat0 = u_xlatb0 ? 1.0 : float(0.0);
					    SV_Target0.w = u_xlat0 * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb0 = u_xlat1.w>=u_xlat0.x;
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    u_xlat0.x = u_xlatb0 ? 1.0 : float(0.0);
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    u_xlat0.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0.x = (-u_xlat0.x) + 1.0;
					    u_xlat0.x = u_xlat0.x * _ProjectionParams.z;
					    u_xlat0.x = max(u_xlat0.x, 0.0);
					    u_xlat0.x = u_xlat0.x * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.xxx * u_xlat2.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb0 = u_xlat1.w>=u_xlat0.x;
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    u_xlat0.x = u_xlatb0 ? 1.0 : float(0.0);
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    u_xlat0.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0.x = (-u_xlat0.x) + 1.0;
					    u_xlat0.x = u_xlat0.x * _ProjectionParams.z;
					    u_xlat0.x = max(u_xlat0.x, 0.0);
					    u_xlat0.x = u_xlat0.x * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.xxx * u_xlat2.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendAlpha" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat2.xyz + unity_FogColor.xyz;
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    u_xlat0 = u_xlatb0 ? 1.0 : float(0.0);
					    SV_Target0.w = u_xlat0 * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat2.xyz + unity_FogColor.xyz;
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    u_xlat0 = u_xlatb0 ? 1.0 : float(0.0);
					    SV_Target0.w = u_xlat0 * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb0 = u_xlat1.w>=u_xlat0.x;
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    u_xlat0.x = u_xlatb0 ? 1.0 : float(0.0);
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    u_xlat0.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0.x = (-u_xlat0.x) + 1.0;
					    u_xlat0.x = u_xlat0.x * _ProjectionParams.z;
					    u_xlat0.x = max(u_xlat0.x, 0.0);
					    u_xlat0.x = u_xlat0.x * unity_FogParams.y;
					    u_xlat0.x = exp2((-u_xlat0.x));
					    u_xlat0.x = min(u_xlat0.x, 1.0);
					    SV_Target0.xyz = u_xlat0.xxx * u_xlat2.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb0 = u_xlat1.w>=u_xlat0.x;
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    u_xlat0.x = u_xlatb0 ? 1.0 : float(0.0);
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    u_xlat0.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0.x = (-u_xlat0.x) + 1.0;
					    u_xlat0.x = u_xlat0.x * _ProjectionParams.z;
					    u_xlat0.x = max(u_xlat0.x, 0.0);
					    u_xlat0.x = u_xlat0.x * unity_FogParams.y;
					    u_xlat0.x = exp2((-u_xlat0.x));
					    u_xlat0.x = min(u_xlat0.x, 1.0);
					    SV_Target0.xyz = u_xlat0.xxx * u_xlat2.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendAlpha" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat2.xyz + unity_FogColor.xyz;
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    u_xlat0 = u_xlatb0 ? 1.0 : float(0.0);
					    SV_Target0.w = u_xlat0 * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat2.xyz + unity_FogColor.xyz;
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    u_xlat0 = u_xlatb0 ? 1.0 : float(0.0);
					    SV_Target0.w = u_xlat0 * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb0 = u_xlat1.w>=u_xlat0.x;
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    u_xlat0.x = u_xlatb0 ? 1.0 : float(0.0);
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    u_xlat0.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0.x = (-u_xlat0.x) + 1.0;
					    u_xlat0.x = u_xlat0.x * _ProjectionParams.z;
					    u_xlat0.x = max(u_xlat0.x, 0.0);
					    u_xlat0.x = u_xlat0.x * unity_FogParams.x;
					    u_xlat0.x = u_xlat0.x * (-u_xlat0.x);
					    u_xlat0.x = exp2(u_xlat0.x);
					    SV_Target0.xyz = u_xlat0.xxx * u_xlat2.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb0 = u_xlat1.w>=u_xlat0.x;
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    u_xlat0.x = u_xlatb0 ? 1.0 : float(0.0);
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    u_xlat0.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0.x = (-u_xlat0.x) + 1.0;
					    u_xlat0.x = u_xlat0.x * _ProjectionParams.z;
					    u_xlat0.x = max(u_xlat0.x, 0.0);
					    u_xlat0.x = u_xlat0.x * unity_FogParams.x;
					    u_xlat0.x = u_xlat0.x * (-u_xlat0.x);
					    u_xlat0.x = exp2(u_xlat0.x);
					    SV_Target0.xyz = u_xlat0.xxx * u_xlat2.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendAlpha" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[7];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb0 = u_xlat1.w>=u_xlat0.x;
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    SV_Target0.xyz = u_xlat2.xyz * vs_COLOR0.xyz;
					    u_xlat0.x = u_xlatb0 ? 1.0 : float(0.0);
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[6];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb0 = u_xlat1.w>=u_xlat0.x;
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    SV_Target0.xyz = u_xlat2.xyz * vs_COLOR0.xyz;
					    u_xlat0.x = u_xlatb0 ? 1.0 : float(0.0);
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendAlpha" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[7];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb0 = u_xlat1.w>=u_xlat0.x;
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    SV_Target0.xyz = u_xlat2.xyz * vs_COLOR0.xyz;
					    u_xlat0.x = u_xlatb0 ? 1.0 : float(0.0);
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[6];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb0 = u_xlat1.w>=u_xlat0.x;
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    SV_Target0.xyz = u_xlat2.xyz * vs_COLOR0.xyz;
					    u_xlat0.x = u_xlatb0 ? 1.0 : float(0.0);
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendAlpha" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb0 = u_xlat1.w>=u_xlat0.x;
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    u_xlat0.x = u_xlatb0 ? 1.0 : float(0.0);
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    u_xlat0.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0.x = (-u_xlat0.x) + 1.0;
					    u_xlat0.x = u_xlat0.x * _ProjectionParams.z;
					    u_xlat0.x = max(u_xlat0.x, 0.0);
					    u_xlat0.x = u_xlat0.x * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.xxx * u_xlat2.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb0 = u_xlat1.w>=u_xlat0.x;
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    u_xlat0.x = u_xlatb0 ? 1.0 : float(0.0);
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    u_xlat0.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0.x = (-u_xlat0.x) + 1.0;
					    u_xlat0.x = u_xlat0.x * _ProjectionParams.z;
					    u_xlat0.x = max(u_xlat0.x, 0.0);
					    u_xlat0.x = u_xlat0.x * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.xxx * u_xlat2.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb0 = u_xlat1.w>=u_xlat0.x;
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    u_xlat0.x = u_xlatb0 ? 1.0 : float(0.0);
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    u_xlat0.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0.x = (-u_xlat0.x) + 1.0;
					    u_xlat0.x = u_xlat0.x * _ProjectionParams.z;
					    u_xlat0.x = max(u_xlat0.x, 0.0);
					    u_xlat0.x = u_xlat0.x * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.xxx * u_xlat2.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb0 = u_xlat1.w>=u_xlat0.x;
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    u_xlat0.x = u_xlatb0 ? 1.0 : float(0.0);
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    u_xlat0.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0.x = (-u_xlat0.x) + 1.0;
					    u_xlat0.x = u_xlat0.x * _ProjectionParams.z;
					    u_xlat0.x = max(u_xlat0.x, 0.0);
					    u_xlat0.x = u_xlat0.x * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.xxx * u_xlat2.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendAlpha" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb0 = u_xlat1.w>=u_xlat0.x;
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    u_xlat0.x = u_xlatb0 ? 1.0 : float(0.0);
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    u_xlat0.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0.x = (-u_xlat0.x) + 1.0;
					    u_xlat0.x = u_xlat0.x * _ProjectionParams.z;
					    u_xlat0.x = max(u_xlat0.x, 0.0);
					    u_xlat0.x = u_xlat0.x * unity_FogParams.y;
					    u_xlat0.x = exp2((-u_xlat0.x));
					    u_xlat0.x = min(u_xlat0.x, 1.0);
					    SV_Target0.xyz = u_xlat0.xxx * u_xlat2.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb0 = u_xlat1.w>=u_xlat0.x;
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    u_xlat0.x = u_xlatb0 ? 1.0 : float(0.0);
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    u_xlat0.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0.x = (-u_xlat0.x) + 1.0;
					    u_xlat0.x = u_xlat0.x * _ProjectionParams.z;
					    u_xlat0.x = max(u_xlat0.x, 0.0);
					    u_xlat0.x = u_xlat0.x * unity_FogParams.y;
					    u_xlat0.x = exp2((-u_xlat0.x));
					    u_xlat0.x = min(u_xlat0.x, 1.0);
					    SV_Target0.xyz = u_xlat0.xxx * u_xlat2.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb0 = u_xlat1.w>=u_xlat0.x;
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    u_xlat0.x = u_xlatb0 ? 1.0 : float(0.0);
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    u_xlat0.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0.x = (-u_xlat0.x) + 1.0;
					    u_xlat0.x = u_xlat0.x * _ProjectionParams.z;
					    u_xlat0.x = max(u_xlat0.x, 0.0);
					    u_xlat0.x = u_xlat0.x * unity_FogParams.y;
					    u_xlat0.x = exp2((-u_xlat0.x));
					    u_xlat0.x = min(u_xlat0.x, 1.0);
					    SV_Target0.xyz = u_xlat0.xxx * u_xlat2.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb0 = u_xlat1.w>=u_xlat0.x;
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    u_xlat0.x = u_xlatb0 ? 1.0 : float(0.0);
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    u_xlat0.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0.x = (-u_xlat0.x) + 1.0;
					    u_xlat0.x = u_xlat0.x * _ProjectionParams.z;
					    u_xlat0.x = max(u_xlat0.x, 0.0);
					    u_xlat0.x = u_xlat0.x * unity_FogParams.y;
					    u_xlat0.x = exp2((-u_xlat0.x));
					    u_xlat0.x = min(u_xlat0.x, 1.0);
					    SV_Target0.xyz = u_xlat0.xxx * u_xlat2.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendAlpha" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb0 = u_xlat1.w>=u_xlat0.x;
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    u_xlat0.x = u_xlatb0 ? 1.0 : float(0.0);
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    u_xlat0.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0.x = (-u_xlat0.x) + 1.0;
					    u_xlat0.x = u_xlat0.x * _ProjectionParams.z;
					    u_xlat0.x = max(u_xlat0.x, 0.0);
					    u_xlat0.x = u_xlat0.x * unity_FogParams.x;
					    u_xlat0.x = u_xlat0.x * (-u_xlat0.x);
					    u_xlat0.x = exp2(u_xlat0.x);
					    SV_Target0.xyz = u_xlat0.xxx * u_xlat2.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb0 = u_xlat1.w>=u_xlat0.x;
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    u_xlat0.x = u_xlatb0 ? 1.0 : float(0.0);
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    u_xlat0.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0.x = (-u_xlat0.x) + 1.0;
					    u_xlat0.x = u_xlat0.x * _ProjectionParams.z;
					    u_xlat0.x = max(u_xlat0.x, 0.0);
					    u_xlat0.x = u_xlat0.x * unity_FogParams.x;
					    u_xlat0.x = u_xlat0.x * (-u_xlat0.x);
					    u_xlat0.x = exp2(u_xlat0.x);
					    SV_Target0.xyz = u_xlat0.xxx * u_xlat2.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb0 = u_xlat1.w>=u_xlat0.x;
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    u_xlat0.x = u_xlatb0 ? 1.0 : float(0.0);
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    u_xlat0.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0.x = (-u_xlat0.x) + 1.0;
					    u_xlat0.x = u_xlat0.x * _ProjectionParams.z;
					    u_xlat0.x = max(u_xlat0.x, 0.0);
					    u_xlat0.x = u_xlat0.x * unity_FogParams.x;
					    u_xlat0.x = u_xlat0.x * (-u_xlat0.x);
					    u_xlat0.x = exp2(u_xlat0.x);
					    SV_Target0.xyz = u_xlat0.xxx * u_xlat2.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb0 = u_xlat1.w>=u_xlat0.x;
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    u_xlat0.x = u_xlatb0 ? 1.0 : float(0.0);
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    u_xlat0.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0.x = (-u_xlat0.x) + 1.0;
					    u_xlat0.x = u_xlat0.x * _ProjectionParams.z;
					    u_xlat0.x = max(u_xlat0.x, 0.0);
					    u_xlat0.x = u_xlat0.x * unity_FogParams.x;
					    u_xlat0.x = u_xlat0.x * (-u_xlat0.x);
					    u_xlat0.x = exp2(u_xlat0.x);
					    SV_Target0.xyz = u_xlat0.xxx * u_xlat2.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendAlpha" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat0 = u_xlat0 * vs_COLOR0;
					    SV_Target0.w = u_xlat0.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat0 = u_xlat0 * vs_COLOR0;
					    SV_Target0.w = u_xlat0.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendAlpha" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat0 = u_xlat0 * vs_COLOR0;
					    SV_Target0.w = u_xlat0.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat0 = u_xlat0 * vs_COLOR0;
					    SV_Target0.w = u_xlat0.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendAlpha" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.xyz = u_xlat1.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    u_xlat1.x = u_xlat1.w * vs_COLOR0.w;
					    SV_Target0.w = u_xlat1.x;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.xyz = u_xlat1.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    u_xlat1.x = u_xlat1.w * vs_COLOR0.w;
					    SV_Target0.w = u_xlat1.x;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.xyz = u_xlat1.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    u_xlat1.x = u_xlat1.w * vs_COLOR0.w;
					    SV_Target0.w = u_xlat1.x;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.xyz = u_xlat1.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    u_xlat1.x = u_xlat1.w * vs_COLOR0.w;
					    SV_Target0.w = u_xlat1.x;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendAlpha" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.xyz = u_xlat1.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    u_xlat1.x = u_xlat1.w * vs_COLOR0.w;
					    SV_Target0.w = u_xlat1.x;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.xyz = u_xlat1.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    u_xlat1.x = u_xlat1.w * vs_COLOR0.w;
					    SV_Target0.w = u_xlat1.x;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.xyz = u_xlat1.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    u_xlat1.x = u_xlat1.w * vs_COLOR0.w;
					    SV_Target0.w = u_xlat1.x;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.xyz = u_xlat1.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    u_xlat1.x = u_xlat1.w * vs_COLOR0.w;
					    SV_Target0.w = u_xlat1.x;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendAlpha" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.xyz = u_xlat1.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    u_xlat1.x = u_xlat1.w * vs_COLOR0.w;
					    SV_Target0.w = u_xlat1.x;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.xyz = u_xlat1.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    u_xlat1.x = u_xlat1.w * vs_COLOR0.w;
					    SV_Target0.w = u_xlat1.x;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.xyz = u_xlat1.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    u_xlat1.x = u_xlat1.w * vs_COLOR0.w;
					    SV_Target0.w = u_xlat1.x;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.xyz = u_xlat1.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    u_xlat1.x = u_xlat1.w * vs_COLOR0.w;
					    SV_Target0.w = u_xlat1.x;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendAlpha" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat0 = u_xlat0 * vs_COLOR0;
					    SV_Target0.w = u_xlat0.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat0 = u_xlat0 * vs_COLOR0;
					    SV_Target0.w = u_xlat0.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendAlpha" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat0 = u_xlat0 * vs_COLOR0;
					    SV_Target0.w = u_xlat0.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat0 = u_xlat0 * vs_COLOR0;
					    SV_Target0.w = u_xlat0.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendAlpha" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.xyz = u_xlat1.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    u_xlat1.x = u_xlat1.w * vs_COLOR0.w;
					    SV_Target0.w = u_xlat1.x;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.xyz = u_xlat1.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    u_xlat1.x = u_xlat1.w * vs_COLOR0.w;
					    SV_Target0.w = u_xlat1.x;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.xyz = u_xlat1.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    u_xlat1.x = u_xlat1.w * vs_COLOR0.w;
					    SV_Target0.w = u_xlat1.x;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.xyz = u_xlat1.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    u_xlat1.x = u_xlat1.w * vs_COLOR0.w;
					    SV_Target0.w = u_xlat1.x;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendAlpha" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.xyz = u_xlat1.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    u_xlat1.x = u_xlat1.w * vs_COLOR0.w;
					    SV_Target0.w = u_xlat1.x;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.xyz = u_xlat1.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    u_xlat1.x = u_xlat1.w * vs_COLOR0.w;
					    SV_Target0.w = u_xlat1.x;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.xyz = u_xlat1.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    u_xlat1.x = u_xlat1.w * vs_COLOR0.w;
					    SV_Target0.w = u_xlat1.x;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.xyz = u_xlat1.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    u_xlat1.x = u_xlat1.w * vs_COLOR0.w;
					    SV_Target0.w = u_xlat1.x;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendAlpha" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.xyz = u_xlat1.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    u_xlat1.x = u_xlat1.w * vs_COLOR0.w;
					    SV_Target0.w = u_xlat1.x;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.xyz = u_xlat1.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    u_xlat1.x = u_xlat1.w * vs_COLOR0.w;
					    SV_Target0.w = u_xlat1.x;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.xyz = u_xlat1.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    u_xlat1.x = u_xlat1.w * vs_COLOR0.w;
					    SV_Target0.w = u_xlat1.x;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.xyz = u_xlat1.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    u_xlat1.x = u_xlat1.w * vs_COLOR0.w;
					    SV_Target0.w = u_xlat1.x;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendAlpha" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat0 = u_xlat0.wxyz * vs_COLOR0.wxyz;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.yzw;
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat0 = u_xlat0.wxyz * vs_COLOR0.wxyz;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.yzw;
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendAlpha" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat0 = u_xlat0.wxyz * vs_COLOR0.wxyz;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.yzw;
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat0 = u_xlat0.wxyz * vs_COLOR0.wxyz;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.yzw;
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendAlpha" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.xyz = u_xlat1.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    u_xlat1.x = u_xlat1.w * vs_COLOR0.w;
					    u_xlat1.x = u_xlat1.x;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat1.x * vs_TEXCOORD4;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.xyz = u_xlat1.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    u_xlat1.x = u_xlat1.w * vs_COLOR0.w;
					    u_xlat1.x = u_xlat1.x;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat1.x * vs_TEXCOORD4;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.xyz = u_xlat1.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    u_xlat1.x = u_xlat1.w * vs_COLOR0.w;
					    u_xlat1.x = u_xlat1.x;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat1.x * vs_TEXCOORD4;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.xyz = u_xlat1.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    u_xlat1.x = u_xlat1.w * vs_COLOR0.w;
					    u_xlat1.x = u_xlat1.x;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat1.x * vs_TEXCOORD4;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendAlpha" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.xyz = u_xlat1.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    u_xlat1.x = u_xlat1.w * vs_COLOR0.w;
					    u_xlat1.x = u_xlat1.x;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat1.x * vs_TEXCOORD4;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.xyz = u_xlat1.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    u_xlat1.x = u_xlat1.w * vs_COLOR0.w;
					    u_xlat1.x = u_xlat1.x;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat1.x * vs_TEXCOORD4;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.xyz = u_xlat1.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    u_xlat1.x = u_xlat1.w * vs_COLOR0.w;
					    u_xlat1.x = u_xlat1.x;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat1.x * vs_TEXCOORD4;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.xyz = u_xlat1.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    u_xlat1.x = u_xlat1.w * vs_COLOR0.w;
					    u_xlat1.x = u_xlat1.x;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat1.x * vs_TEXCOORD4;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendAlpha" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.xyz = u_xlat1.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    u_xlat1.x = u_xlat1.w * vs_COLOR0.w;
					    u_xlat1.x = u_xlat1.x;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat1.x * vs_TEXCOORD4;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.xyz = u_xlat1.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    u_xlat1.x = u_xlat1.w * vs_COLOR0.w;
					    u_xlat1.x = u_xlat1.x;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat1.x * vs_TEXCOORD4;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.xyz = u_xlat1.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    u_xlat1.x = u_xlat1.w * vs_COLOR0.w;
					    u_xlat1.x = u_xlat1.x;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat1.x * vs_TEXCOORD4;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.xyz = u_xlat1.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    u_xlat1.x = u_xlat1.w * vs_COLOR0.w;
					    u_xlat1.x = u_xlat1.x;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat1.x * vs_TEXCOORD4;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendAlpha" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat0 = u_xlat0.wxyz * vs_COLOR0.wxyz;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.yzw;
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat0 = u_xlat0.wxyz * vs_COLOR0.wxyz;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.yzw;
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendAlpha" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat0 = u_xlat0.wxyz * vs_COLOR0.wxyz;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.yzw;
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat0 = u_xlat0.wxyz * vs_COLOR0.wxyz;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.yzw;
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendAlpha" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.xyz = u_xlat1.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    u_xlat1.x = u_xlat1.w * vs_COLOR0.w;
					    u_xlat1.x = u_xlat1.x;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat1.x * vs_TEXCOORD4;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.xyz = u_xlat1.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    u_xlat1.x = u_xlat1.w * vs_COLOR0.w;
					    u_xlat1.x = u_xlat1.x;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat1.x * vs_TEXCOORD4;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.xyz = u_xlat1.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    u_xlat1.x = u_xlat1.w * vs_COLOR0.w;
					    u_xlat1.x = u_xlat1.x;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat1.x * vs_TEXCOORD4;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.xyz = u_xlat1.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    u_xlat1.x = u_xlat1.w * vs_COLOR0.w;
					    u_xlat1.x = u_xlat1.x;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat1.x * vs_TEXCOORD4;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendAlpha" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.xyz = u_xlat1.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    u_xlat1.x = u_xlat1.w * vs_COLOR0.w;
					    u_xlat1.x = u_xlat1.x;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat1.x * vs_TEXCOORD4;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.xyz = u_xlat1.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    u_xlat1.x = u_xlat1.w * vs_COLOR0.w;
					    u_xlat1.x = u_xlat1.x;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat1.x * vs_TEXCOORD4;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.xyz = u_xlat1.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    u_xlat1.x = u_xlat1.w * vs_COLOR0.w;
					    u_xlat1.x = u_xlat1.x;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat1.x * vs_TEXCOORD4;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.xyz = u_xlat1.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    u_xlat1.x = u_xlat1.w * vs_COLOR0.w;
					    u_xlat1.x = u_xlat1.x;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat1.x * vs_TEXCOORD4;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendAlpha" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.xyz = u_xlat1.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    u_xlat1.x = u_xlat1.w * vs_COLOR0.w;
					    u_xlat1.x = u_xlat1.x;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat1.x * vs_TEXCOORD4;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.xyz = u_xlat1.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    u_xlat1.x = u_xlat1.w * vs_COLOR0.w;
					    u_xlat1.x = u_xlat1.x;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat1.x * vs_TEXCOORD4;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.xyz = u_xlat1.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    u_xlat1.x = u_xlat1.w * vs_COLOR0.w;
					    u_xlat1.x = u_xlat1.x;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat1.x * vs_TEXCOORD4;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.xyz = u_xlat1.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    u_xlat1.x = u_xlat1.w * vs_COLOR0.w;
					    u_xlat1.x = u_xlat1.x;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat1.x * vs_TEXCOORD4;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendAlpha" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					bool u_xlatb1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1.x = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat0.w = u_xlat0.w * u_xlat1.x;
					    u_xlat0 = u_xlat0 * vs_COLOR0;
					    SV_Target0.w = u_xlat0.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					bool u_xlatb1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1.x = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat0.w = u_xlat0.w * u_xlat1.x;
					    u_xlat0 = u_xlat0 * vs_COLOR0;
					    SV_Target0.w = u_xlat0.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendAlpha" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					bool u_xlatb1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1.x = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat0.w = u_xlat0.w * u_xlat1.x;
					    u_xlat0 = u_xlat0 * vs_COLOR0;
					    SV_Target0.w = u_xlat0.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					bool u_xlatb1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1.x = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat0.w = u_xlat0.w * u_xlat1.x;
					    u_xlat0 = u_xlat0 * vs_COLOR0;
					    SV_Target0.w = u_xlat0.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendAlpha" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					bool u_xlatb1;
					float u_xlat6;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1.x = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat6 = u_xlat0.w * u_xlat1.x;
					    u_xlat0.xyz = u_xlat0.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    u_xlat6 = u_xlat6 * vs_COLOR0.w;
					    SV_Target0.w = u_xlat6;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    u_xlat6 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat6 = (-u_xlat6) + 1.0;
					    u_xlat6 = u_xlat6 * _ProjectionParams.z;
					    u_xlat6 = max(u_xlat6, 0.0);
					    u_xlat6 = u_xlat6 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat6 = clamp(u_xlat6, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat6) * u_xlat0.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					bool u_xlatb1;
					float u_xlat6;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1.x = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat6 = u_xlat0.w * u_xlat1.x;
					    u_xlat0.xyz = u_xlat0.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    u_xlat6 = u_xlat6 * vs_COLOR0.w;
					    SV_Target0.w = u_xlat6;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    u_xlat6 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat6 = (-u_xlat6) + 1.0;
					    u_xlat6 = u_xlat6 * _ProjectionParams.z;
					    u_xlat6 = max(u_xlat6, 0.0);
					    u_xlat6 = u_xlat6 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat6 = clamp(u_xlat6, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat6) * u_xlat0.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					bool u_xlatb1;
					float u_xlat6;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1.x = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat6 = u_xlat0.w * u_xlat1.x;
					    u_xlat0.xyz = u_xlat0.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    u_xlat6 = u_xlat6 * vs_COLOR0.w;
					    SV_Target0.w = u_xlat6;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    u_xlat6 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat6 = (-u_xlat6) + 1.0;
					    u_xlat6 = u_xlat6 * _ProjectionParams.z;
					    u_xlat6 = max(u_xlat6, 0.0);
					    u_xlat6 = u_xlat6 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat6 = clamp(u_xlat6, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat6) * u_xlat0.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					bool u_xlatb1;
					float u_xlat6;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1.x = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat6 = u_xlat0.w * u_xlat1.x;
					    u_xlat0.xyz = u_xlat0.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    u_xlat6 = u_xlat6 * vs_COLOR0.w;
					    SV_Target0.w = u_xlat6;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    u_xlat6 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat6 = (-u_xlat6) + 1.0;
					    u_xlat6 = u_xlat6 * _ProjectionParams.z;
					    u_xlat6 = max(u_xlat6, 0.0);
					    u_xlat6 = u_xlat6 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat6 = clamp(u_xlat6, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat6) * u_xlat0.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendAlpha" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					bool u_xlatb1;
					float u_xlat6;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1.x = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat6 = u_xlat0.w * u_xlat1.x;
					    u_xlat0.xyz = u_xlat0.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    u_xlat6 = u_xlat6 * vs_COLOR0.w;
					    SV_Target0.w = u_xlat6;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    u_xlat6 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat6 = (-u_xlat6) + 1.0;
					    u_xlat6 = u_xlat6 * _ProjectionParams.z;
					    u_xlat6 = max(u_xlat6, 0.0);
					    u_xlat6 = u_xlat6 * unity_FogParams.y;
					    u_xlat6 = exp2((-u_xlat6));
					    u_xlat6 = min(u_xlat6, 1.0);
					    SV_Target0.xyz = vec3(u_xlat6) * u_xlat0.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					bool u_xlatb1;
					float u_xlat6;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1.x = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat6 = u_xlat0.w * u_xlat1.x;
					    u_xlat0.xyz = u_xlat0.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    u_xlat6 = u_xlat6 * vs_COLOR0.w;
					    SV_Target0.w = u_xlat6;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    u_xlat6 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat6 = (-u_xlat6) + 1.0;
					    u_xlat6 = u_xlat6 * _ProjectionParams.z;
					    u_xlat6 = max(u_xlat6, 0.0);
					    u_xlat6 = u_xlat6 * unity_FogParams.y;
					    u_xlat6 = exp2((-u_xlat6));
					    u_xlat6 = min(u_xlat6, 1.0);
					    SV_Target0.xyz = vec3(u_xlat6) * u_xlat0.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					bool u_xlatb1;
					float u_xlat6;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1.x = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat6 = u_xlat0.w * u_xlat1.x;
					    u_xlat0.xyz = u_xlat0.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    u_xlat6 = u_xlat6 * vs_COLOR0.w;
					    SV_Target0.w = u_xlat6;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    u_xlat6 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat6 = (-u_xlat6) + 1.0;
					    u_xlat6 = u_xlat6 * _ProjectionParams.z;
					    u_xlat6 = max(u_xlat6, 0.0);
					    u_xlat6 = u_xlat6 * unity_FogParams.y;
					    u_xlat6 = exp2((-u_xlat6));
					    u_xlat6 = min(u_xlat6, 1.0);
					    SV_Target0.xyz = vec3(u_xlat6) * u_xlat0.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					bool u_xlatb1;
					float u_xlat6;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1.x = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat6 = u_xlat0.w * u_xlat1.x;
					    u_xlat0.xyz = u_xlat0.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    u_xlat6 = u_xlat6 * vs_COLOR0.w;
					    SV_Target0.w = u_xlat6;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    u_xlat6 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat6 = (-u_xlat6) + 1.0;
					    u_xlat6 = u_xlat6 * _ProjectionParams.z;
					    u_xlat6 = max(u_xlat6, 0.0);
					    u_xlat6 = u_xlat6 * unity_FogParams.y;
					    u_xlat6 = exp2((-u_xlat6));
					    u_xlat6 = min(u_xlat6, 1.0);
					    SV_Target0.xyz = vec3(u_xlat6) * u_xlat0.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendAlpha" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					bool u_xlatb1;
					float u_xlat6;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1.x = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat6 = u_xlat0.w * u_xlat1.x;
					    u_xlat0.xyz = u_xlat0.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    u_xlat6 = u_xlat6 * vs_COLOR0.w;
					    SV_Target0.w = u_xlat6;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    u_xlat6 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat6 = (-u_xlat6) + 1.0;
					    u_xlat6 = u_xlat6 * _ProjectionParams.z;
					    u_xlat6 = max(u_xlat6, 0.0);
					    u_xlat6 = u_xlat6 * unity_FogParams.x;
					    u_xlat6 = u_xlat6 * (-u_xlat6);
					    u_xlat6 = exp2(u_xlat6);
					    SV_Target0.xyz = vec3(u_xlat6) * u_xlat0.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					bool u_xlatb1;
					float u_xlat6;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1.x = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat6 = u_xlat0.w * u_xlat1.x;
					    u_xlat0.xyz = u_xlat0.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    u_xlat6 = u_xlat6 * vs_COLOR0.w;
					    SV_Target0.w = u_xlat6;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    u_xlat6 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat6 = (-u_xlat6) + 1.0;
					    u_xlat6 = u_xlat6 * _ProjectionParams.z;
					    u_xlat6 = max(u_xlat6, 0.0);
					    u_xlat6 = u_xlat6 * unity_FogParams.x;
					    u_xlat6 = u_xlat6 * (-u_xlat6);
					    u_xlat6 = exp2(u_xlat6);
					    SV_Target0.xyz = vec3(u_xlat6) * u_xlat0.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					bool u_xlatb1;
					float u_xlat6;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1.x = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat6 = u_xlat0.w * u_xlat1.x;
					    u_xlat0.xyz = u_xlat0.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    u_xlat6 = u_xlat6 * vs_COLOR0.w;
					    SV_Target0.w = u_xlat6;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    u_xlat6 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat6 = (-u_xlat6) + 1.0;
					    u_xlat6 = u_xlat6 * _ProjectionParams.z;
					    u_xlat6 = max(u_xlat6, 0.0);
					    u_xlat6 = u_xlat6 * unity_FogParams.x;
					    u_xlat6 = u_xlat6 * (-u_xlat6);
					    u_xlat6 = exp2(u_xlat6);
					    SV_Target0.xyz = vec3(u_xlat6) * u_xlat0.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					bool u_xlatb1;
					float u_xlat6;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1.x = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat6 = u_xlat0.w * u_xlat1.x;
					    u_xlat0.xyz = u_xlat0.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    u_xlat6 = u_xlat6 * vs_COLOR0.w;
					    SV_Target0.w = u_xlat6;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    u_xlat6 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat6 = (-u_xlat6) + 1.0;
					    u_xlat6 = u_xlat6 * _ProjectionParams.z;
					    u_xlat6 = max(u_xlat6, 0.0);
					    u_xlat6 = u_xlat6 * unity_FogParams.x;
					    u_xlat6 = u_xlat6 * (-u_xlat6);
					    u_xlat6 = exp2(u_xlat6);
					    SV_Target0.xyz = vec3(u_xlat6) * u_xlat0.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendAlpha" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					bool u_xlatb1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1.x = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat0.w = u_xlat0.w * u_xlat1.x;
					    u_xlat0 = u_xlat0 * vs_COLOR0;
					    SV_Target0.w = u_xlat0.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					bool u_xlatb1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1.x = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat0.w = u_xlat0.w * u_xlat1.x;
					    u_xlat0 = u_xlat0 * vs_COLOR0;
					    SV_Target0.w = u_xlat0.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendAlpha" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					bool u_xlatb1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1.x = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat0.w = u_xlat0.w * u_xlat1.x;
					    u_xlat0 = u_xlat0 * vs_COLOR0;
					    SV_Target0.w = u_xlat0.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					bool u_xlatb1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1.x = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat0.w = u_xlat0.w * u_xlat1.x;
					    u_xlat0 = u_xlat0 * vs_COLOR0;
					    SV_Target0.w = u_xlat0.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendAlpha" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					bool u_xlatb1;
					float u_xlat6;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1.x = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat6 = u_xlat0.w * u_xlat1.x;
					    u_xlat0.xyz = u_xlat0.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    u_xlat6 = u_xlat6 * vs_COLOR0.w;
					    SV_Target0.w = u_xlat6;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    u_xlat6 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat6 = (-u_xlat6) + 1.0;
					    u_xlat6 = u_xlat6 * _ProjectionParams.z;
					    u_xlat6 = max(u_xlat6, 0.0);
					    u_xlat6 = u_xlat6 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat6 = clamp(u_xlat6, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat6) * u_xlat0.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					bool u_xlatb1;
					float u_xlat6;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1.x = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat6 = u_xlat0.w * u_xlat1.x;
					    u_xlat0.xyz = u_xlat0.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    u_xlat6 = u_xlat6 * vs_COLOR0.w;
					    SV_Target0.w = u_xlat6;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    u_xlat6 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat6 = (-u_xlat6) + 1.0;
					    u_xlat6 = u_xlat6 * _ProjectionParams.z;
					    u_xlat6 = max(u_xlat6, 0.0);
					    u_xlat6 = u_xlat6 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat6 = clamp(u_xlat6, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat6) * u_xlat0.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					bool u_xlatb1;
					float u_xlat6;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1.x = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat6 = u_xlat0.w * u_xlat1.x;
					    u_xlat0.xyz = u_xlat0.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    u_xlat6 = u_xlat6 * vs_COLOR0.w;
					    SV_Target0.w = u_xlat6;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    u_xlat6 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat6 = (-u_xlat6) + 1.0;
					    u_xlat6 = u_xlat6 * _ProjectionParams.z;
					    u_xlat6 = max(u_xlat6, 0.0);
					    u_xlat6 = u_xlat6 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat6 = clamp(u_xlat6, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat6) * u_xlat0.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					bool u_xlatb1;
					float u_xlat6;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1.x = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat6 = u_xlat0.w * u_xlat1.x;
					    u_xlat0.xyz = u_xlat0.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    u_xlat6 = u_xlat6 * vs_COLOR0.w;
					    SV_Target0.w = u_xlat6;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    u_xlat6 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat6 = (-u_xlat6) + 1.0;
					    u_xlat6 = u_xlat6 * _ProjectionParams.z;
					    u_xlat6 = max(u_xlat6, 0.0);
					    u_xlat6 = u_xlat6 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat6 = clamp(u_xlat6, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat6) * u_xlat0.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendAlpha" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					bool u_xlatb1;
					float u_xlat6;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1.x = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat6 = u_xlat0.w * u_xlat1.x;
					    u_xlat0.xyz = u_xlat0.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    u_xlat6 = u_xlat6 * vs_COLOR0.w;
					    SV_Target0.w = u_xlat6;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    u_xlat6 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat6 = (-u_xlat6) + 1.0;
					    u_xlat6 = u_xlat6 * _ProjectionParams.z;
					    u_xlat6 = max(u_xlat6, 0.0);
					    u_xlat6 = u_xlat6 * unity_FogParams.y;
					    u_xlat6 = exp2((-u_xlat6));
					    u_xlat6 = min(u_xlat6, 1.0);
					    SV_Target0.xyz = vec3(u_xlat6) * u_xlat0.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					bool u_xlatb1;
					float u_xlat6;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1.x = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat6 = u_xlat0.w * u_xlat1.x;
					    u_xlat0.xyz = u_xlat0.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    u_xlat6 = u_xlat6 * vs_COLOR0.w;
					    SV_Target0.w = u_xlat6;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    u_xlat6 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat6 = (-u_xlat6) + 1.0;
					    u_xlat6 = u_xlat6 * _ProjectionParams.z;
					    u_xlat6 = max(u_xlat6, 0.0);
					    u_xlat6 = u_xlat6 * unity_FogParams.y;
					    u_xlat6 = exp2((-u_xlat6));
					    u_xlat6 = min(u_xlat6, 1.0);
					    SV_Target0.xyz = vec3(u_xlat6) * u_xlat0.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					bool u_xlatb1;
					float u_xlat6;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1.x = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat6 = u_xlat0.w * u_xlat1.x;
					    u_xlat0.xyz = u_xlat0.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    u_xlat6 = u_xlat6 * vs_COLOR0.w;
					    SV_Target0.w = u_xlat6;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    u_xlat6 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat6 = (-u_xlat6) + 1.0;
					    u_xlat6 = u_xlat6 * _ProjectionParams.z;
					    u_xlat6 = max(u_xlat6, 0.0);
					    u_xlat6 = u_xlat6 * unity_FogParams.y;
					    u_xlat6 = exp2((-u_xlat6));
					    u_xlat6 = min(u_xlat6, 1.0);
					    SV_Target0.xyz = vec3(u_xlat6) * u_xlat0.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					bool u_xlatb1;
					float u_xlat6;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1.x = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat6 = u_xlat0.w * u_xlat1.x;
					    u_xlat0.xyz = u_xlat0.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    u_xlat6 = u_xlat6 * vs_COLOR0.w;
					    SV_Target0.w = u_xlat6;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    u_xlat6 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat6 = (-u_xlat6) + 1.0;
					    u_xlat6 = u_xlat6 * _ProjectionParams.z;
					    u_xlat6 = max(u_xlat6, 0.0);
					    u_xlat6 = u_xlat6 * unity_FogParams.y;
					    u_xlat6 = exp2((-u_xlat6));
					    u_xlat6 = min(u_xlat6, 1.0);
					    SV_Target0.xyz = vec3(u_xlat6) * u_xlat0.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendAlpha" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					bool u_xlatb1;
					float u_xlat6;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1.x = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat6 = u_xlat0.w * u_xlat1.x;
					    u_xlat0.xyz = u_xlat0.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    u_xlat6 = u_xlat6 * vs_COLOR0.w;
					    SV_Target0.w = u_xlat6;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    u_xlat6 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat6 = (-u_xlat6) + 1.0;
					    u_xlat6 = u_xlat6 * _ProjectionParams.z;
					    u_xlat6 = max(u_xlat6, 0.0);
					    u_xlat6 = u_xlat6 * unity_FogParams.x;
					    u_xlat6 = u_xlat6 * (-u_xlat6);
					    u_xlat6 = exp2(u_xlat6);
					    SV_Target0.xyz = vec3(u_xlat6) * u_xlat0.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					bool u_xlatb1;
					float u_xlat6;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1.x = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat6 = u_xlat0.w * u_xlat1.x;
					    u_xlat0.xyz = u_xlat0.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    u_xlat6 = u_xlat6 * vs_COLOR0.w;
					    SV_Target0.w = u_xlat6;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    u_xlat6 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat6 = (-u_xlat6) + 1.0;
					    u_xlat6 = u_xlat6 * _ProjectionParams.z;
					    u_xlat6 = max(u_xlat6, 0.0);
					    u_xlat6 = u_xlat6 * unity_FogParams.x;
					    u_xlat6 = u_xlat6 * (-u_xlat6);
					    u_xlat6 = exp2(u_xlat6);
					    SV_Target0.xyz = vec3(u_xlat6) * u_xlat0.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					bool u_xlatb1;
					float u_xlat6;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1.x = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat6 = u_xlat0.w * u_xlat1.x;
					    u_xlat0.xyz = u_xlat0.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    u_xlat6 = u_xlat6 * vs_COLOR0.w;
					    SV_Target0.w = u_xlat6;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    u_xlat6 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat6 = (-u_xlat6) + 1.0;
					    u_xlat6 = u_xlat6 * _ProjectionParams.z;
					    u_xlat6 = max(u_xlat6, 0.0);
					    u_xlat6 = u_xlat6 * unity_FogParams.x;
					    u_xlat6 = u_xlat6 * (-u_xlat6);
					    u_xlat6 = exp2(u_xlat6);
					    SV_Target0.xyz = vec3(u_xlat6) * u_xlat0.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					bool u_xlatb1;
					float u_xlat6;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1.x = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat6 = u_xlat0.w * u_xlat1.x;
					    u_xlat0.xyz = u_xlat0.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    u_xlat6 = u_xlat6 * vs_COLOR0.w;
					    SV_Target0.w = u_xlat6;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    u_xlat6 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat6 = (-u_xlat6) + 1.0;
					    u_xlat6 = u_xlat6 * _ProjectionParams.z;
					    u_xlat6 = max(u_xlat6, 0.0);
					    u_xlat6 = u_xlat6 * unity_FogParams.x;
					    u_xlat6 = u_xlat6 * (-u_xlat6);
					    u_xlat6 = exp2(u_xlat6);
					    SV_Target0.xyz = vec3(u_xlat6) * u_xlat0.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendAlpha" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					bool u_xlatb1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1.x = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat0.w = u_xlat0.w * u_xlat1.x;
					    u_xlat0 = u_xlat0.wxyz * vs_COLOR0.wxyz;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.yzw;
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					bool u_xlatb1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1.x = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat0.w = u_xlat0.w * u_xlat1.x;
					    u_xlat0 = u_xlat0.wxyz * vs_COLOR0.wxyz;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.yzw;
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendAlpha" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					bool u_xlatb1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1.x = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat0.w = u_xlat0.w * u_xlat1.x;
					    u_xlat0 = u_xlat0.wxyz * vs_COLOR0.wxyz;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.yzw;
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					bool u_xlatb1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1.x = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat0.w = u_xlat0.w * u_xlat1.x;
					    u_xlat0 = u_xlat0.wxyz * vs_COLOR0.wxyz;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.yzw;
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendAlpha" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					bool u_xlatb1;
					float u_xlat6;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1.x = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat6 = u_xlat0.w * u_xlat1.x;
					    u_xlat0.xyz = u_xlat0.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    u_xlat1.x = u_xlat6 * vs_COLOR0.w;
					    u_xlat1.x = u_xlat1.x;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat1.x * vs_TEXCOORD4;
					    u_xlat6 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat6 = (-u_xlat6) + 1.0;
					    u_xlat6 = u_xlat6 * _ProjectionParams.z;
					    u_xlat6 = max(u_xlat6, 0.0);
					    u_xlat6 = u_xlat6 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat6 = clamp(u_xlat6, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat6) * u_xlat0.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					bool u_xlatb1;
					float u_xlat6;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1.x = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat6 = u_xlat0.w * u_xlat1.x;
					    u_xlat0.xyz = u_xlat0.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    u_xlat1.x = u_xlat6 * vs_COLOR0.w;
					    u_xlat1.x = u_xlat1.x;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat1.x * vs_TEXCOORD4;
					    u_xlat6 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat6 = (-u_xlat6) + 1.0;
					    u_xlat6 = u_xlat6 * _ProjectionParams.z;
					    u_xlat6 = max(u_xlat6, 0.0);
					    u_xlat6 = u_xlat6 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat6 = clamp(u_xlat6, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat6) * u_xlat0.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					bool u_xlatb1;
					float u_xlat6;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1.x = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat6 = u_xlat0.w * u_xlat1.x;
					    u_xlat0.xyz = u_xlat0.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    u_xlat1.x = u_xlat6 * vs_COLOR0.w;
					    u_xlat1.x = u_xlat1.x;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat1.x * vs_TEXCOORD4;
					    u_xlat6 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat6 = (-u_xlat6) + 1.0;
					    u_xlat6 = u_xlat6 * _ProjectionParams.z;
					    u_xlat6 = max(u_xlat6, 0.0);
					    u_xlat6 = u_xlat6 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat6 = clamp(u_xlat6, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat6) * u_xlat0.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					bool u_xlatb1;
					float u_xlat6;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1.x = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat6 = u_xlat0.w * u_xlat1.x;
					    u_xlat0.xyz = u_xlat0.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    u_xlat1.x = u_xlat6 * vs_COLOR0.w;
					    u_xlat1.x = u_xlat1.x;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat1.x * vs_TEXCOORD4;
					    u_xlat6 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat6 = (-u_xlat6) + 1.0;
					    u_xlat6 = u_xlat6 * _ProjectionParams.z;
					    u_xlat6 = max(u_xlat6, 0.0);
					    u_xlat6 = u_xlat6 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat6 = clamp(u_xlat6, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat6) * u_xlat0.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendAlpha" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					bool u_xlatb1;
					float u_xlat6;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1.x = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat6 = u_xlat0.w * u_xlat1.x;
					    u_xlat0.xyz = u_xlat0.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    u_xlat1.x = u_xlat6 * vs_COLOR0.w;
					    u_xlat1.x = u_xlat1.x;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat1.x * vs_TEXCOORD4;
					    u_xlat6 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat6 = (-u_xlat6) + 1.0;
					    u_xlat6 = u_xlat6 * _ProjectionParams.z;
					    u_xlat6 = max(u_xlat6, 0.0);
					    u_xlat6 = u_xlat6 * unity_FogParams.y;
					    u_xlat6 = exp2((-u_xlat6));
					    u_xlat6 = min(u_xlat6, 1.0);
					    SV_Target0.xyz = vec3(u_xlat6) * u_xlat0.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					bool u_xlatb1;
					float u_xlat6;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1.x = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat6 = u_xlat0.w * u_xlat1.x;
					    u_xlat0.xyz = u_xlat0.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    u_xlat1.x = u_xlat6 * vs_COLOR0.w;
					    u_xlat1.x = u_xlat1.x;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat1.x * vs_TEXCOORD4;
					    u_xlat6 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat6 = (-u_xlat6) + 1.0;
					    u_xlat6 = u_xlat6 * _ProjectionParams.z;
					    u_xlat6 = max(u_xlat6, 0.0);
					    u_xlat6 = u_xlat6 * unity_FogParams.y;
					    u_xlat6 = exp2((-u_xlat6));
					    u_xlat6 = min(u_xlat6, 1.0);
					    SV_Target0.xyz = vec3(u_xlat6) * u_xlat0.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					bool u_xlatb1;
					float u_xlat6;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1.x = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat6 = u_xlat0.w * u_xlat1.x;
					    u_xlat0.xyz = u_xlat0.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    u_xlat1.x = u_xlat6 * vs_COLOR0.w;
					    u_xlat1.x = u_xlat1.x;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat1.x * vs_TEXCOORD4;
					    u_xlat6 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat6 = (-u_xlat6) + 1.0;
					    u_xlat6 = u_xlat6 * _ProjectionParams.z;
					    u_xlat6 = max(u_xlat6, 0.0);
					    u_xlat6 = u_xlat6 * unity_FogParams.y;
					    u_xlat6 = exp2((-u_xlat6));
					    u_xlat6 = min(u_xlat6, 1.0);
					    SV_Target0.xyz = vec3(u_xlat6) * u_xlat0.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					bool u_xlatb1;
					float u_xlat6;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1.x = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat6 = u_xlat0.w * u_xlat1.x;
					    u_xlat0.xyz = u_xlat0.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    u_xlat1.x = u_xlat6 * vs_COLOR0.w;
					    u_xlat1.x = u_xlat1.x;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat1.x * vs_TEXCOORD4;
					    u_xlat6 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat6 = (-u_xlat6) + 1.0;
					    u_xlat6 = u_xlat6 * _ProjectionParams.z;
					    u_xlat6 = max(u_xlat6, 0.0);
					    u_xlat6 = u_xlat6 * unity_FogParams.y;
					    u_xlat6 = exp2((-u_xlat6));
					    u_xlat6 = min(u_xlat6, 1.0);
					    SV_Target0.xyz = vec3(u_xlat6) * u_xlat0.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendAlpha" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					bool u_xlatb1;
					float u_xlat6;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1.x = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat6 = u_xlat0.w * u_xlat1.x;
					    u_xlat0.xyz = u_xlat0.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    u_xlat1.x = u_xlat6 * vs_COLOR0.w;
					    u_xlat1.x = u_xlat1.x;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat1.x * vs_TEXCOORD4;
					    u_xlat6 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat6 = (-u_xlat6) + 1.0;
					    u_xlat6 = u_xlat6 * _ProjectionParams.z;
					    u_xlat6 = max(u_xlat6, 0.0);
					    u_xlat6 = u_xlat6 * unity_FogParams.x;
					    u_xlat6 = u_xlat6 * (-u_xlat6);
					    u_xlat6 = exp2(u_xlat6);
					    SV_Target0.xyz = vec3(u_xlat6) * u_xlat0.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					bool u_xlatb1;
					float u_xlat6;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1.x = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat6 = u_xlat0.w * u_xlat1.x;
					    u_xlat0.xyz = u_xlat0.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    u_xlat1.x = u_xlat6 * vs_COLOR0.w;
					    u_xlat1.x = u_xlat1.x;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat1.x * vs_TEXCOORD4;
					    u_xlat6 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat6 = (-u_xlat6) + 1.0;
					    u_xlat6 = u_xlat6 * _ProjectionParams.z;
					    u_xlat6 = max(u_xlat6, 0.0);
					    u_xlat6 = u_xlat6 * unity_FogParams.x;
					    u_xlat6 = u_xlat6 * (-u_xlat6);
					    u_xlat6 = exp2(u_xlat6);
					    SV_Target0.xyz = vec3(u_xlat6) * u_xlat0.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					bool u_xlatb1;
					float u_xlat6;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1.x = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat6 = u_xlat0.w * u_xlat1.x;
					    u_xlat0.xyz = u_xlat0.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    u_xlat1.x = u_xlat6 * vs_COLOR0.w;
					    u_xlat1.x = u_xlat1.x;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat1.x * vs_TEXCOORD4;
					    u_xlat6 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat6 = (-u_xlat6) + 1.0;
					    u_xlat6 = u_xlat6 * _ProjectionParams.z;
					    u_xlat6 = max(u_xlat6, 0.0);
					    u_xlat6 = u_xlat6 * unity_FogParams.x;
					    u_xlat6 = u_xlat6 * (-u_xlat6);
					    u_xlat6 = exp2(u_xlat6);
					    SV_Target0.xyz = vec3(u_xlat6) * u_xlat0.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					bool u_xlatb1;
					float u_xlat6;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1.x = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat6 = u_xlat0.w * u_xlat1.x;
					    u_xlat0.xyz = u_xlat0.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    u_xlat1.x = u_xlat6 * vs_COLOR0.w;
					    u_xlat1.x = u_xlat1.x;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat1.x * vs_TEXCOORD4;
					    u_xlat6 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat6 = (-u_xlat6) + 1.0;
					    u_xlat6 = u_xlat6 * _ProjectionParams.z;
					    u_xlat6 = max(u_xlat6, 0.0);
					    u_xlat6 = u_xlat6 * unity_FogParams.x;
					    u_xlat6 = u_xlat6 * (-u_xlat6);
					    u_xlat6 = exp2(u_xlat6);
					    SV_Target0.xyz = vec3(u_xlat6) * u_xlat0.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendAlpha" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					bool u_xlatb1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1.x = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat0.w = u_xlat0.w * u_xlat1.x;
					    u_xlat0 = u_xlat0.wxyz * vs_COLOR0.wxyz;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.yzw;
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					bool u_xlatb1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1.x = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat0.w = u_xlat0.w * u_xlat1.x;
					    u_xlat0 = u_xlat0.wxyz * vs_COLOR0.wxyz;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.yzw;
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendAlpha" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					bool u_xlatb1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1.x = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat0.w = u_xlat0.w * u_xlat1.x;
					    u_xlat0 = u_xlat0.wxyz * vs_COLOR0.wxyz;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.yzw;
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					bool u_xlatb1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1.x = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat0.w = u_xlat0.w * u_xlat1.x;
					    u_xlat0 = u_xlat0.wxyz * vs_COLOR0.wxyz;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.yzw;
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendAlpha" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					bool u_xlatb1;
					float u_xlat6;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1.x = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat6 = u_xlat0.w * u_xlat1.x;
					    u_xlat0.xyz = u_xlat0.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    u_xlat1.x = u_xlat6 * vs_COLOR0.w;
					    u_xlat1.x = u_xlat1.x;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat1.x * vs_TEXCOORD4;
					    u_xlat6 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat6 = (-u_xlat6) + 1.0;
					    u_xlat6 = u_xlat6 * _ProjectionParams.z;
					    u_xlat6 = max(u_xlat6, 0.0);
					    u_xlat6 = u_xlat6 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat6 = clamp(u_xlat6, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat6) * u_xlat0.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					bool u_xlatb1;
					float u_xlat6;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1.x = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat6 = u_xlat0.w * u_xlat1.x;
					    u_xlat0.xyz = u_xlat0.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    u_xlat1.x = u_xlat6 * vs_COLOR0.w;
					    u_xlat1.x = u_xlat1.x;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat1.x * vs_TEXCOORD4;
					    u_xlat6 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat6 = (-u_xlat6) + 1.0;
					    u_xlat6 = u_xlat6 * _ProjectionParams.z;
					    u_xlat6 = max(u_xlat6, 0.0);
					    u_xlat6 = u_xlat6 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat6 = clamp(u_xlat6, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat6) * u_xlat0.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					bool u_xlatb1;
					float u_xlat6;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1.x = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat6 = u_xlat0.w * u_xlat1.x;
					    u_xlat0.xyz = u_xlat0.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    u_xlat1.x = u_xlat6 * vs_COLOR0.w;
					    u_xlat1.x = u_xlat1.x;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat1.x * vs_TEXCOORD4;
					    u_xlat6 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat6 = (-u_xlat6) + 1.0;
					    u_xlat6 = u_xlat6 * _ProjectionParams.z;
					    u_xlat6 = max(u_xlat6, 0.0);
					    u_xlat6 = u_xlat6 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat6 = clamp(u_xlat6, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat6) * u_xlat0.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					bool u_xlatb1;
					float u_xlat6;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1.x = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat6 = u_xlat0.w * u_xlat1.x;
					    u_xlat0.xyz = u_xlat0.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    u_xlat1.x = u_xlat6 * vs_COLOR0.w;
					    u_xlat1.x = u_xlat1.x;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat1.x * vs_TEXCOORD4;
					    u_xlat6 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat6 = (-u_xlat6) + 1.0;
					    u_xlat6 = u_xlat6 * _ProjectionParams.z;
					    u_xlat6 = max(u_xlat6, 0.0);
					    u_xlat6 = u_xlat6 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat6 = clamp(u_xlat6, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat6) * u_xlat0.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendAlpha" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					bool u_xlatb1;
					float u_xlat6;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1.x = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat6 = u_xlat0.w * u_xlat1.x;
					    u_xlat0.xyz = u_xlat0.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    u_xlat1.x = u_xlat6 * vs_COLOR0.w;
					    u_xlat1.x = u_xlat1.x;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat1.x * vs_TEXCOORD4;
					    u_xlat6 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat6 = (-u_xlat6) + 1.0;
					    u_xlat6 = u_xlat6 * _ProjectionParams.z;
					    u_xlat6 = max(u_xlat6, 0.0);
					    u_xlat6 = u_xlat6 * unity_FogParams.y;
					    u_xlat6 = exp2((-u_xlat6));
					    u_xlat6 = min(u_xlat6, 1.0);
					    SV_Target0.xyz = vec3(u_xlat6) * u_xlat0.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					bool u_xlatb1;
					float u_xlat6;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1.x = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat6 = u_xlat0.w * u_xlat1.x;
					    u_xlat0.xyz = u_xlat0.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    u_xlat1.x = u_xlat6 * vs_COLOR0.w;
					    u_xlat1.x = u_xlat1.x;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat1.x * vs_TEXCOORD4;
					    u_xlat6 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat6 = (-u_xlat6) + 1.0;
					    u_xlat6 = u_xlat6 * _ProjectionParams.z;
					    u_xlat6 = max(u_xlat6, 0.0);
					    u_xlat6 = u_xlat6 * unity_FogParams.y;
					    u_xlat6 = exp2((-u_xlat6));
					    u_xlat6 = min(u_xlat6, 1.0);
					    SV_Target0.xyz = vec3(u_xlat6) * u_xlat0.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					bool u_xlatb1;
					float u_xlat6;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1.x = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat6 = u_xlat0.w * u_xlat1.x;
					    u_xlat0.xyz = u_xlat0.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    u_xlat1.x = u_xlat6 * vs_COLOR0.w;
					    u_xlat1.x = u_xlat1.x;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat1.x * vs_TEXCOORD4;
					    u_xlat6 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat6 = (-u_xlat6) + 1.0;
					    u_xlat6 = u_xlat6 * _ProjectionParams.z;
					    u_xlat6 = max(u_xlat6, 0.0);
					    u_xlat6 = u_xlat6 * unity_FogParams.y;
					    u_xlat6 = exp2((-u_xlat6));
					    u_xlat6 = min(u_xlat6, 1.0);
					    SV_Target0.xyz = vec3(u_xlat6) * u_xlat0.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					bool u_xlatb1;
					float u_xlat6;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1.x = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat6 = u_xlat0.w * u_xlat1.x;
					    u_xlat0.xyz = u_xlat0.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    u_xlat1.x = u_xlat6 * vs_COLOR0.w;
					    u_xlat1.x = u_xlat1.x;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat1.x * vs_TEXCOORD4;
					    u_xlat6 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat6 = (-u_xlat6) + 1.0;
					    u_xlat6 = u_xlat6 * _ProjectionParams.z;
					    u_xlat6 = max(u_xlat6, 0.0);
					    u_xlat6 = u_xlat6 * unity_FogParams.y;
					    u_xlat6 = exp2((-u_xlat6));
					    u_xlat6 = min(u_xlat6, 1.0);
					    SV_Target0.xyz = vec3(u_xlat6) * u_xlat0.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendAlpha" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					bool u_xlatb1;
					float u_xlat6;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1.x = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat6 = u_xlat0.w * u_xlat1.x;
					    u_xlat0.xyz = u_xlat0.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    u_xlat1.x = u_xlat6 * vs_COLOR0.w;
					    u_xlat1.x = u_xlat1.x;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat1.x * vs_TEXCOORD4;
					    u_xlat6 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat6 = (-u_xlat6) + 1.0;
					    u_xlat6 = u_xlat6 * _ProjectionParams.z;
					    u_xlat6 = max(u_xlat6, 0.0);
					    u_xlat6 = u_xlat6 * unity_FogParams.x;
					    u_xlat6 = u_xlat6 * (-u_xlat6);
					    u_xlat6 = exp2(u_xlat6);
					    SV_Target0.xyz = vec3(u_xlat6) * u_xlat0.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					bool u_xlatb1;
					float u_xlat6;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1.x = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat6 = u_xlat0.w * u_xlat1.x;
					    u_xlat0.xyz = u_xlat0.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    u_xlat1.x = u_xlat6 * vs_COLOR0.w;
					    u_xlat1.x = u_xlat1.x;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat1.x * vs_TEXCOORD4;
					    u_xlat6 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat6 = (-u_xlat6) + 1.0;
					    u_xlat6 = u_xlat6 * _ProjectionParams.z;
					    u_xlat6 = max(u_xlat6, 0.0);
					    u_xlat6 = u_xlat6 * unity_FogParams.x;
					    u_xlat6 = u_xlat6 * (-u_xlat6);
					    u_xlat6 = exp2(u_xlat6);
					    SV_Target0.xyz = vec3(u_xlat6) * u_xlat0.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					bool u_xlatb1;
					float u_xlat6;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1.x = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat6 = u_xlat0.w * u_xlat1.x;
					    u_xlat0.xyz = u_xlat0.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    u_xlat1.x = u_xlat6 * vs_COLOR0.w;
					    u_xlat1.x = u_xlat1.x;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat1.x * vs_TEXCOORD4;
					    u_xlat6 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat6 = (-u_xlat6) + 1.0;
					    u_xlat6 = u_xlat6 * _ProjectionParams.z;
					    u_xlat6 = max(u_xlat6, 0.0);
					    u_xlat6 = u_xlat6 * unity_FogParams.x;
					    u_xlat6 = u_xlat6 * (-u_xlat6);
					    u_xlat6 = exp2(u_xlat6);
					    SV_Target0.xyz = vec3(u_xlat6) * u_xlat0.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					bool u_xlatb1;
					float u_xlat6;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1.x = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat6 = u_xlat0.w * u_xlat1.x;
					    u_xlat0.xyz = u_xlat0.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    u_xlat1.x = u_xlat6 * vs_COLOR0.w;
					    u_xlat1.x = u_xlat1.x;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat1.x * vs_TEXCOORD4;
					    u_xlat6 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat6 = (-u_xlat6) + 1.0;
					    u_xlat6 = u_xlat6 * _ProjectionParams.z;
					    u_xlat6 = max(u_xlat6, 0.0);
					    u_xlat6 = u_xlat6 * unity_FogParams.x;
					    u_xlat6 = u_xlat6 * (-u_xlat6);
					    u_xlat6 = exp2(u_xlat6);
					    SV_Target0.xyz = vec3(u_xlat6) * u_xlat0.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendAlpha" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    SV_Target0.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    SV_Target0.w = u_xlatb0 ? 1.0 : float(0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    SV_Target0.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    SV_Target0.w = u_xlatb0 ? 1.0 : float(0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendAlpha" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    SV_Target0.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    SV_Target0.w = u_xlatb0 ? 1.0 : float(0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    SV_Target0.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    SV_Target0.w = u_xlatb0 ? 1.0 : float(0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendAlpha" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + unity_FogColor.xyz;
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    SV_Target0.w = u_xlatb0 ? 1.0 : float(0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + unity_FogColor.xyz;
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    SV_Target0.w = u_xlatb0 ? 1.0 : float(0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + unity_FogColor.xyz;
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    SV_Target0.w = u_xlatb0 ? 1.0 : float(0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + unity_FogColor.xyz;
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    SV_Target0.w = u_xlatb0 ? 1.0 : float(0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendAlpha" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + unity_FogColor.xyz;
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    SV_Target0.w = u_xlatb0 ? 1.0 : float(0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + unity_FogColor.xyz;
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    SV_Target0.w = u_xlatb0 ? 1.0 : float(0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + unity_FogColor.xyz;
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    SV_Target0.w = u_xlatb0 ? 1.0 : float(0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + unity_FogColor.xyz;
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    SV_Target0.w = u_xlatb0 ? 1.0 : float(0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendAlpha" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + unity_FogColor.xyz;
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    SV_Target0.w = u_xlatb0 ? 1.0 : float(0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + unity_FogColor.xyz;
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    SV_Target0.w = u_xlatb0 ? 1.0 : float(0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + unity_FogColor.xyz;
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    SV_Target0.w = u_xlatb0 ? 1.0 : float(0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + unity_FogColor.xyz;
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    SV_Target0.w = u_xlatb0 ? 1.0 : float(0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendAlpha" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    SV_Target0.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    SV_Target0.w = u_xlatb0 ? 1.0 : float(0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    SV_Target0.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    SV_Target0.w = u_xlatb0 ? 1.0 : float(0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendAlpha" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    SV_Target0.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    SV_Target0.w = u_xlatb0 ? 1.0 : float(0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    SV_Target0.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    SV_Target0.w = u_xlatb0 ? 1.0 : float(0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendAlpha" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + unity_FogColor.xyz;
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    SV_Target0.w = u_xlatb0 ? 1.0 : float(0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + unity_FogColor.xyz;
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    SV_Target0.w = u_xlatb0 ? 1.0 : float(0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + unity_FogColor.xyz;
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    SV_Target0.w = u_xlatb0 ? 1.0 : float(0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + unity_FogColor.xyz;
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    SV_Target0.w = u_xlatb0 ? 1.0 : float(0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendAlpha" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + unity_FogColor.xyz;
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    SV_Target0.w = u_xlatb0 ? 1.0 : float(0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + unity_FogColor.xyz;
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    SV_Target0.w = u_xlatb0 ? 1.0 : float(0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + unity_FogColor.xyz;
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    SV_Target0.w = u_xlatb0 ? 1.0 : float(0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + unity_FogColor.xyz;
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    SV_Target0.w = u_xlatb0 ? 1.0 : float(0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendAlpha" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + unity_FogColor.xyz;
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    SV_Target0.w = u_xlatb0 ? 1.0 : float(0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + unity_FogColor.xyz;
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    SV_Target0.w = u_xlatb0 ? 1.0 : float(0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + unity_FogColor.xyz;
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    SV_Target0.w = u_xlatb0 ? 1.0 : float(0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + unity_FogColor.xyz;
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    SV_Target0.w = u_xlatb0 ? 1.0 : float(0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendAlpha" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    SV_Target0.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat0 = u_xlatb0 ? 1.0 : float(0.0);
					    SV_Target0.w = u_xlat0 * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    SV_Target0.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat0 = u_xlatb0 ? 1.0 : float(0.0);
					    SV_Target0.w = u_xlat0 * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendAlpha" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    SV_Target0.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat0 = u_xlatb0 ? 1.0 : float(0.0);
					    SV_Target0.w = u_xlat0 * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    SV_Target0.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat0 = u_xlatb0 ? 1.0 : float(0.0);
					    SV_Target0.w = u_xlat0 * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendAlpha" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + unity_FogColor.xyz;
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    u_xlat0 = u_xlatb0 ? 1.0 : float(0.0);
					    SV_Target0.w = u_xlat0 * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + unity_FogColor.xyz;
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    u_xlat0 = u_xlatb0 ? 1.0 : float(0.0);
					    SV_Target0.w = u_xlat0 * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + unity_FogColor.xyz;
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    u_xlat0 = u_xlatb0 ? 1.0 : float(0.0);
					    SV_Target0.w = u_xlat0 * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + unity_FogColor.xyz;
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    u_xlat0 = u_xlatb0 ? 1.0 : float(0.0);
					    SV_Target0.w = u_xlat0 * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendAlpha" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + unity_FogColor.xyz;
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    u_xlat0 = u_xlatb0 ? 1.0 : float(0.0);
					    SV_Target0.w = u_xlat0 * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + unity_FogColor.xyz;
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    u_xlat0 = u_xlatb0 ? 1.0 : float(0.0);
					    SV_Target0.w = u_xlat0 * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + unity_FogColor.xyz;
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    u_xlat0 = u_xlatb0 ? 1.0 : float(0.0);
					    SV_Target0.w = u_xlat0 * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + unity_FogColor.xyz;
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    u_xlat0 = u_xlatb0 ? 1.0 : float(0.0);
					    SV_Target0.w = u_xlat0 * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendAlpha" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + unity_FogColor.xyz;
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    u_xlat0 = u_xlatb0 ? 1.0 : float(0.0);
					    SV_Target0.w = u_xlat0 * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + unity_FogColor.xyz;
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    u_xlat0 = u_xlatb0 ? 1.0 : float(0.0);
					    SV_Target0.w = u_xlat0 * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + unity_FogColor.xyz;
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    u_xlat0 = u_xlatb0 ? 1.0 : float(0.0);
					    SV_Target0.w = u_xlat0 * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + unity_FogColor.xyz;
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    u_xlat0 = u_xlatb0 ? 1.0 : float(0.0);
					    SV_Target0.w = u_xlat0 * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendAlpha" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    SV_Target0.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat0 = u_xlatb0 ? 1.0 : float(0.0);
					    SV_Target0.w = u_xlat0 * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    SV_Target0.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat0 = u_xlatb0 ? 1.0 : float(0.0);
					    SV_Target0.w = u_xlat0 * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendAlpha" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    SV_Target0.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat0 = u_xlatb0 ? 1.0 : float(0.0);
					    SV_Target0.w = u_xlat0 * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    SV_Target0.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat0 = u_xlatb0 ? 1.0 : float(0.0);
					    SV_Target0.w = u_xlat0 * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendAlpha" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + unity_FogColor.xyz;
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    u_xlat0 = u_xlatb0 ? 1.0 : float(0.0);
					    SV_Target0.w = u_xlat0 * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + unity_FogColor.xyz;
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    u_xlat0 = u_xlatb0 ? 1.0 : float(0.0);
					    SV_Target0.w = u_xlat0 * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + unity_FogColor.xyz;
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    u_xlat0 = u_xlatb0 ? 1.0 : float(0.0);
					    SV_Target0.w = u_xlat0 * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + unity_FogColor.xyz;
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    u_xlat0 = u_xlatb0 ? 1.0 : float(0.0);
					    SV_Target0.w = u_xlat0 * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendAlpha" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + unity_FogColor.xyz;
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    u_xlat0 = u_xlatb0 ? 1.0 : float(0.0);
					    SV_Target0.w = u_xlat0 * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + unity_FogColor.xyz;
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    u_xlat0 = u_xlatb0 ? 1.0 : float(0.0);
					    SV_Target0.w = u_xlat0 * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + unity_FogColor.xyz;
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    u_xlat0 = u_xlatb0 ? 1.0 : float(0.0);
					    SV_Target0.w = u_xlat0 * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + unity_FogColor.xyz;
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    u_xlat0 = u_xlatb0 ? 1.0 : float(0.0);
					    SV_Target0.w = u_xlat0 * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendAlpha" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + unity_FogColor.xyz;
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    u_xlat0 = u_xlatb0 ? 1.0 : float(0.0);
					    SV_Target0.w = u_xlat0 * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + unity_FogColor.xyz;
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    u_xlat0 = u_xlatb0 ? 1.0 : float(0.0);
					    SV_Target0.w = u_xlat0 * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + unity_FogColor.xyz;
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    u_xlat0 = u_xlatb0 ? 1.0 : float(0.0);
					    SV_Target0.w = u_xlat0 * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + unity_FogColor.xyz;
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    u_xlat0 = u_xlatb0 ? 1.0 : float(0.0);
					    SV_Target0.w = u_xlat0 * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendAlpha" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat0 = u_xlat0 * vs_COLOR0;
					    SV_Target0.w = u_xlat0.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat0 = u_xlat0 * vs_COLOR0;
					    SV_Target0.w = u_xlat0.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendAlpha" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[7];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    SV_Target0.w = u_xlat0.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[6];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    SV_Target0.w = u_xlat0.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendAlpha" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.xyz = u_xlat1.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    u_xlat1.x = u_xlat1.w * vs_COLOR0.w;
					    SV_Target0.w = u_xlat1.x;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.xyz = u_xlat1.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    u_xlat1.x = u_xlat1.w * vs_COLOR0.w;
					    SV_Target0.w = u_xlat1.x;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					float u_xlat9;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat0.x = u_xlat0.x * u_xlat1.w;
					    SV_Target0.w = u_xlat0.x;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0.xyz = u_xlat1.xyz * u_xlat0.xyz + (-unity_FogColor.xyz);
					    u_xlat9 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat9 = (-u_xlat9) + 1.0;
					    u_xlat9 = u_xlat9 * _ProjectionParams.z;
					    u_xlat9 = max(u_xlat9, 0.0);
					    u_xlat9 = u_xlat9 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat9 = clamp(u_xlat9, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat9) * u_xlat0.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					float u_xlat9;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat0.x = u_xlat0.x * u_xlat1.w;
					    SV_Target0.w = u_xlat0.x;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0.xyz = u_xlat1.xyz * u_xlat0.xyz + (-unity_FogColor.xyz);
					    u_xlat9 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat9 = (-u_xlat9) + 1.0;
					    u_xlat9 = u_xlat9 * _ProjectionParams.z;
					    u_xlat9 = max(u_xlat9, 0.0);
					    u_xlat9 = u_xlat9 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat9 = clamp(u_xlat9, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat9) * u_xlat0.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendAlpha" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.xyz = u_xlat1.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    u_xlat1.x = u_xlat1.w * vs_COLOR0.w;
					    SV_Target0.w = u_xlat1.x;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.xyz = u_xlat1.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    u_xlat1.x = u_xlat1.w * vs_COLOR0.w;
					    SV_Target0.w = u_xlat1.x;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0.x = (-u_xlat0.x) + 1.0;
					    u_xlat0.x = u_xlat0.x * _ProjectionParams.z;
					    u_xlat0.x = max(u_xlat0.x, 0.0);
					    u_xlat0.x = u_xlat0.x * unity_FogParams.y;
					    u_xlat0.x = exp2((-u_xlat0.x));
					    u_xlat0.x = min(u_xlat0.x, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.xyz = vs_COLOR0.xyz;
					    u_xlat3.xyz = u_xlat1.xyz * u_xlat3.xyz + (-unity_FogColor.xyz);
					    SV_Target0.xyz = u_xlat0.xxx * u_xlat3.xyz + unity_FogColor.xyz;
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = u_xlat0.x * vs_COLOR0.w;
					    u_xlat0.x = u_xlat0.x * u_xlat1.w;
					    SV_Target0.w = u_xlat0.x;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0.x = (-u_xlat0.x) + 1.0;
					    u_xlat0.x = u_xlat0.x * _ProjectionParams.z;
					    u_xlat0.x = max(u_xlat0.x, 0.0);
					    u_xlat0.x = u_xlat0.x * unity_FogParams.y;
					    u_xlat0.x = exp2((-u_xlat0.x));
					    u_xlat0.x = min(u_xlat0.x, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.xyz = vs_COLOR0.xyz;
					    u_xlat3.xyz = u_xlat1.xyz * u_xlat3.xyz + (-unity_FogColor.xyz);
					    SV_Target0.xyz = u_xlat0.xxx * u_xlat3.xyz + unity_FogColor.xyz;
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = u_xlat0.x * vs_COLOR0.w;
					    u_xlat0.x = u_xlat0.x * u_xlat1.w;
					    SV_Target0.w = u_xlat0.x;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendAlpha" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.xyz = u_xlat1.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    u_xlat1.x = u_xlat1.w * vs_COLOR0.w;
					    SV_Target0.w = u_xlat1.x;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.xyz = u_xlat1.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    u_xlat1.x = u_xlat1.w * vs_COLOR0.w;
					    SV_Target0.w = u_xlat1.x;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0.x = (-u_xlat0.x) + 1.0;
					    u_xlat0.x = u_xlat0.x * _ProjectionParams.z;
					    u_xlat0.x = max(u_xlat0.x, 0.0);
					    u_xlat0.x = u_xlat0.x * unity_FogParams.x;
					    u_xlat0.x = u_xlat0.x * (-u_xlat0.x);
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.xyz = vs_COLOR0.xyz;
					    u_xlat3.xyz = u_xlat1.xyz * u_xlat3.xyz + (-unity_FogColor.xyz);
					    SV_Target0.xyz = u_xlat0.xxx * u_xlat3.xyz + unity_FogColor.xyz;
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = u_xlat0.x * vs_COLOR0.w;
					    u_xlat0.x = u_xlat0.x * u_xlat1.w;
					    SV_Target0.w = u_xlat0.x;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0.x = (-u_xlat0.x) + 1.0;
					    u_xlat0.x = u_xlat0.x * _ProjectionParams.z;
					    u_xlat0.x = max(u_xlat0.x, 0.0);
					    u_xlat0.x = u_xlat0.x * unity_FogParams.x;
					    u_xlat0.x = u_xlat0.x * (-u_xlat0.x);
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.xyz = vs_COLOR0.xyz;
					    u_xlat3.xyz = u_xlat1.xyz * u_xlat3.xyz + (-unity_FogColor.xyz);
					    SV_Target0.xyz = u_xlat0.xxx * u_xlat3.xyz + unity_FogColor.xyz;
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = u_xlat0.x * vs_COLOR0.w;
					    u_xlat0.x = u_xlat0.x * u_xlat1.w;
					    SV_Target0.w = u_xlat0.x;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendAlpha" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[7];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    SV_Target0.w = u_xlat0.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[6];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    SV_Target0.w = u_xlat0.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendAlpha" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[7];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    SV_Target0.w = u_xlat0.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[6];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    SV_Target0.w = u_xlat0.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendAlpha" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					float u_xlat9;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat0.x = u_xlat0.x * u_xlat1.w;
					    SV_Target0.w = u_xlat0.x;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0.xyz = u_xlat1.xyz * u_xlat0.xyz + (-unity_FogColor.xyz);
					    u_xlat9 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat9 = (-u_xlat9) + 1.0;
					    u_xlat9 = u_xlat9 * _ProjectionParams.z;
					    u_xlat9 = max(u_xlat9, 0.0);
					    u_xlat9 = u_xlat9 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat9 = clamp(u_xlat9, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat9) * u_xlat0.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					float u_xlat9;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat0.x = u_xlat0.x * u_xlat1.w;
					    SV_Target0.w = u_xlat0.x;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0.xyz = u_xlat1.xyz * u_xlat0.xyz + (-unity_FogColor.xyz);
					    u_xlat9 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat9 = (-u_xlat9) + 1.0;
					    u_xlat9 = u_xlat9 * _ProjectionParams.z;
					    u_xlat9 = max(u_xlat9, 0.0);
					    u_xlat9 = u_xlat9 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat9 = clamp(u_xlat9, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat9) * u_xlat0.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					float u_xlat9;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat0.x = u_xlat0.x * u_xlat1.w;
					    SV_Target0.w = u_xlat0.x;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0.xyz = u_xlat1.xyz * u_xlat0.xyz + (-unity_FogColor.xyz);
					    u_xlat9 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat9 = (-u_xlat9) + 1.0;
					    u_xlat9 = u_xlat9 * _ProjectionParams.z;
					    u_xlat9 = max(u_xlat9, 0.0);
					    u_xlat9 = u_xlat9 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat9 = clamp(u_xlat9, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat9) * u_xlat0.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					float u_xlat9;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat0.x = u_xlat0.x * u_xlat1.w;
					    SV_Target0.w = u_xlat0.x;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0.xyz = u_xlat1.xyz * u_xlat0.xyz + (-unity_FogColor.xyz);
					    u_xlat9 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat9 = (-u_xlat9) + 1.0;
					    u_xlat9 = u_xlat9 * _ProjectionParams.z;
					    u_xlat9 = max(u_xlat9, 0.0);
					    u_xlat9 = u_xlat9 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat9 = clamp(u_xlat9, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat9) * u_xlat0.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendAlpha" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0.x = (-u_xlat0.x) + 1.0;
					    u_xlat0.x = u_xlat0.x * _ProjectionParams.z;
					    u_xlat0.x = max(u_xlat0.x, 0.0);
					    u_xlat0.x = u_xlat0.x * unity_FogParams.y;
					    u_xlat0.x = exp2((-u_xlat0.x));
					    u_xlat0.x = min(u_xlat0.x, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.xyz = vs_COLOR0.xyz;
					    u_xlat3.xyz = u_xlat1.xyz * u_xlat3.xyz + (-unity_FogColor.xyz);
					    SV_Target0.xyz = u_xlat0.xxx * u_xlat3.xyz + unity_FogColor.xyz;
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = u_xlat0.x * vs_COLOR0.w;
					    u_xlat0.x = u_xlat0.x * u_xlat1.w;
					    SV_Target0.w = u_xlat0.x;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0.x = (-u_xlat0.x) + 1.0;
					    u_xlat0.x = u_xlat0.x * _ProjectionParams.z;
					    u_xlat0.x = max(u_xlat0.x, 0.0);
					    u_xlat0.x = u_xlat0.x * unity_FogParams.y;
					    u_xlat0.x = exp2((-u_xlat0.x));
					    u_xlat0.x = min(u_xlat0.x, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.xyz = vs_COLOR0.xyz;
					    u_xlat3.xyz = u_xlat1.xyz * u_xlat3.xyz + (-unity_FogColor.xyz);
					    SV_Target0.xyz = u_xlat0.xxx * u_xlat3.xyz + unity_FogColor.xyz;
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = u_xlat0.x * vs_COLOR0.w;
					    u_xlat0.x = u_xlat0.x * u_xlat1.w;
					    SV_Target0.w = u_xlat0.x;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0.x = (-u_xlat0.x) + 1.0;
					    u_xlat0.x = u_xlat0.x * _ProjectionParams.z;
					    u_xlat0.x = max(u_xlat0.x, 0.0);
					    u_xlat0.x = u_xlat0.x * unity_FogParams.y;
					    u_xlat0.x = exp2((-u_xlat0.x));
					    u_xlat0.x = min(u_xlat0.x, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.xyz = vs_COLOR0.xyz;
					    u_xlat3.xyz = u_xlat1.xyz * u_xlat3.xyz + (-unity_FogColor.xyz);
					    SV_Target0.xyz = u_xlat0.xxx * u_xlat3.xyz + unity_FogColor.xyz;
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = u_xlat0.x * vs_COLOR0.w;
					    u_xlat0.x = u_xlat0.x * u_xlat1.w;
					    SV_Target0.w = u_xlat0.x;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0.x = (-u_xlat0.x) + 1.0;
					    u_xlat0.x = u_xlat0.x * _ProjectionParams.z;
					    u_xlat0.x = max(u_xlat0.x, 0.0);
					    u_xlat0.x = u_xlat0.x * unity_FogParams.y;
					    u_xlat0.x = exp2((-u_xlat0.x));
					    u_xlat0.x = min(u_xlat0.x, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.xyz = vs_COLOR0.xyz;
					    u_xlat3.xyz = u_xlat1.xyz * u_xlat3.xyz + (-unity_FogColor.xyz);
					    SV_Target0.xyz = u_xlat0.xxx * u_xlat3.xyz + unity_FogColor.xyz;
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = u_xlat0.x * vs_COLOR0.w;
					    u_xlat0.x = u_xlat0.x * u_xlat1.w;
					    SV_Target0.w = u_xlat0.x;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendAlpha" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0.x = (-u_xlat0.x) + 1.0;
					    u_xlat0.x = u_xlat0.x * _ProjectionParams.z;
					    u_xlat0.x = max(u_xlat0.x, 0.0);
					    u_xlat0.x = u_xlat0.x * unity_FogParams.x;
					    u_xlat0.x = u_xlat0.x * (-u_xlat0.x);
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.xyz = vs_COLOR0.xyz;
					    u_xlat3.xyz = u_xlat1.xyz * u_xlat3.xyz + (-unity_FogColor.xyz);
					    SV_Target0.xyz = u_xlat0.xxx * u_xlat3.xyz + unity_FogColor.xyz;
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = u_xlat0.x * vs_COLOR0.w;
					    u_xlat0.x = u_xlat0.x * u_xlat1.w;
					    SV_Target0.w = u_xlat0.x;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0.x = (-u_xlat0.x) + 1.0;
					    u_xlat0.x = u_xlat0.x * _ProjectionParams.z;
					    u_xlat0.x = max(u_xlat0.x, 0.0);
					    u_xlat0.x = u_xlat0.x * unity_FogParams.x;
					    u_xlat0.x = u_xlat0.x * (-u_xlat0.x);
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.xyz = vs_COLOR0.xyz;
					    u_xlat3.xyz = u_xlat1.xyz * u_xlat3.xyz + (-unity_FogColor.xyz);
					    SV_Target0.xyz = u_xlat0.xxx * u_xlat3.xyz + unity_FogColor.xyz;
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = u_xlat0.x * vs_COLOR0.w;
					    u_xlat0.x = u_xlat0.x * u_xlat1.w;
					    SV_Target0.w = u_xlat0.x;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0.x = (-u_xlat0.x) + 1.0;
					    u_xlat0.x = u_xlat0.x * _ProjectionParams.z;
					    u_xlat0.x = max(u_xlat0.x, 0.0);
					    u_xlat0.x = u_xlat0.x * unity_FogParams.x;
					    u_xlat0.x = u_xlat0.x * (-u_xlat0.x);
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.xyz = vs_COLOR0.xyz;
					    u_xlat3.xyz = u_xlat1.xyz * u_xlat3.xyz + (-unity_FogColor.xyz);
					    SV_Target0.xyz = u_xlat0.xxx * u_xlat3.xyz + unity_FogColor.xyz;
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = u_xlat0.x * vs_COLOR0.w;
					    u_xlat0.x = u_xlat0.x * u_xlat1.w;
					    SV_Target0.w = u_xlat0.x;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0.x = (-u_xlat0.x) + 1.0;
					    u_xlat0.x = u_xlat0.x * _ProjectionParams.z;
					    u_xlat0.x = max(u_xlat0.x, 0.0);
					    u_xlat0.x = u_xlat0.x * unity_FogParams.x;
					    u_xlat0.x = u_xlat0.x * (-u_xlat0.x);
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.xyz = vs_COLOR0.xyz;
					    u_xlat3.xyz = u_xlat1.xyz * u_xlat3.xyz + (-unity_FogColor.xyz);
					    SV_Target0.xyz = u_xlat0.xxx * u_xlat3.xyz + unity_FogColor.xyz;
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = u_xlat0.x * vs_COLOR0.w;
					    u_xlat0.x = u_xlat0.x * u_xlat1.w;
					    SV_Target0.w = u_xlat0.x;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendAlpha" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat0 = u_xlat0.wxyz * vs_COLOR0.wxyz;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.yzw;
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat0 = u_xlat0.wxyz * vs_COLOR0.wxyz;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.yzw;
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendAlpha" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[7];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0.wxyz * u_xlat1.wxyz;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.yzw;
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[6];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0.wxyz * u_xlat1.wxyz;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.yzw;
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendAlpha" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.xyz = u_xlat1.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    u_xlat1.x = u_xlat1.w * vs_COLOR0.w;
					    u_xlat1.x = u_xlat1.x;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat1.x * vs_TEXCOORD4;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.xyz = u_xlat1.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    u_xlat1.x = u_xlat1.w * vs_COLOR0.w;
					    u_xlat1.x = u_xlat1.x;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat1.x * vs_TEXCOORD4;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					float u_xlat9;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat0.x = u_xlat0.x * u_xlat1.w;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0.xyz = u_xlat1.xyz * u_xlat0.xyz + (-unity_FogColor.xyz);
					    u_xlat9 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat9 = (-u_xlat9) + 1.0;
					    u_xlat9 = u_xlat9 * _ProjectionParams.z;
					    u_xlat9 = max(u_xlat9, 0.0);
					    u_xlat9 = u_xlat9 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat9 = clamp(u_xlat9, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat9) * u_xlat0.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					float u_xlat9;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat0.x = u_xlat0.x * u_xlat1.w;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0.xyz = u_xlat1.xyz * u_xlat0.xyz + (-unity_FogColor.xyz);
					    u_xlat9 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat9 = (-u_xlat9) + 1.0;
					    u_xlat9 = u_xlat9 * _ProjectionParams.z;
					    u_xlat9 = max(u_xlat9, 0.0);
					    u_xlat9 = u_xlat9 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat9 = clamp(u_xlat9, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat9) * u_xlat0.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendAlpha" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.xyz = u_xlat1.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    u_xlat1.x = u_xlat1.w * vs_COLOR0.w;
					    u_xlat1.x = u_xlat1.x;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat1.x * vs_TEXCOORD4;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.xyz = u_xlat1.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    u_xlat1.x = u_xlat1.w * vs_COLOR0.w;
					    u_xlat1.x = u_xlat1.x;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat1.x * vs_TEXCOORD4;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					float u_xlat9;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat0.x = u_xlat0.x * u_xlat1.w;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0.xyz = u_xlat1.xyz * u_xlat0.xyz + (-unity_FogColor.xyz);
					    u_xlat9 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat9 = (-u_xlat9) + 1.0;
					    u_xlat9 = u_xlat9 * _ProjectionParams.z;
					    u_xlat9 = max(u_xlat9, 0.0);
					    u_xlat9 = u_xlat9 * unity_FogParams.y;
					    u_xlat9 = exp2((-u_xlat9));
					    u_xlat9 = min(u_xlat9, 1.0);
					    SV_Target0.xyz = vec3(u_xlat9) * u_xlat0.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					float u_xlat9;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat0.x = u_xlat0.x * u_xlat1.w;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0.xyz = u_xlat1.xyz * u_xlat0.xyz + (-unity_FogColor.xyz);
					    u_xlat9 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat9 = (-u_xlat9) + 1.0;
					    u_xlat9 = u_xlat9 * _ProjectionParams.z;
					    u_xlat9 = max(u_xlat9, 0.0);
					    u_xlat9 = u_xlat9 * unity_FogParams.y;
					    u_xlat9 = exp2((-u_xlat9));
					    u_xlat9 = min(u_xlat9, 1.0);
					    SV_Target0.xyz = vec3(u_xlat9) * u_xlat0.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendAlpha" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.xyz = u_xlat1.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    u_xlat1.x = u_xlat1.w * vs_COLOR0.w;
					    u_xlat1.x = u_xlat1.x;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat1.x * vs_TEXCOORD4;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.xyz = u_xlat1.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    u_xlat1.x = u_xlat1.w * vs_COLOR0.w;
					    u_xlat1.x = u_xlat1.x;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat1.x * vs_TEXCOORD4;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					float u_xlat9;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat0.x = u_xlat0.x * u_xlat1.w;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0.xyz = u_xlat1.xyz * u_xlat0.xyz + (-unity_FogColor.xyz);
					    u_xlat9 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat9 = (-u_xlat9) + 1.0;
					    u_xlat9 = u_xlat9 * _ProjectionParams.z;
					    u_xlat9 = max(u_xlat9, 0.0);
					    u_xlat9 = u_xlat9 * unity_FogParams.x;
					    u_xlat9 = u_xlat9 * (-u_xlat9);
					    u_xlat9 = exp2(u_xlat9);
					    SV_Target0.xyz = vec3(u_xlat9) * u_xlat0.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					float u_xlat9;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat0.x = u_xlat0.x * u_xlat1.w;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0.xyz = u_xlat1.xyz * u_xlat0.xyz + (-unity_FogColor.xyz);
					    u_xlat9 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat9 = (-u_xlat9) + 1.0;
					    u_xlat9 = u_xlat9 * _ProjectionParams.z;
					    u_xlat9 = max(u_xlat9, 0.0);
					    u_xlat9 = u_xlat9 * unity_FogParams.x;
					    u_xlat9 = u_xlat9 * (-u_xlat9);
					    u_xlat9 = exp2(u_xlat9);
					    SV_Target0.xyz = vec3(u_xlat9) * u_xlat0.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendAlpha" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[7];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0.wxyz * u_xlat1.wxyz;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.yzw;
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[6];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0.wxyz * u_xlat1.wxyz;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.yzw;
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendAlpha" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[7];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0.wxyz * u_xlat1.wxyz;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.yzw;
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[6];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0.wxyz * u_xlat1.wxyz;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.yzw;
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendAlpha" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					float u_xlat9;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat0.x = u_xlat0.x * u_xlat1.w;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0.xyz = u_xlat1.xyz * u_xlat0.xyz + (-unity_FogColor.xyz);
					    u_xlat9 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat9 = (-u_xlat9) + 1.0;
					    u_xlat9 = u_xlat9 * _ProjectionParams.z;
					    u_xlat9 = max(u_xlat9, 0.0);
					    u_xlat9 = u_xlat9 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat9 = clamp(u_xlat9, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat9) * u_xlat0.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					float u_xlat9;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat0.x = u_xlat0.x * u_xlat1.w;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0.xyz = u_xlat1.xyz * u_xlat0.xyz + (-unity_FogColor.xyz);
					    u_xlat9 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat9 = (-u_xlat9) + 1.0;
					    u_xlat9 = u_xlat9 * _ProjectionParams.z;
					    u_xlat9 = max(u_xlat9, 0.0);
					    u_xlat9 = u_xlat9 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat9 = clamp(u_xlat9, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat9) * u_xlat0.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					float u_xlat9;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat0.x = u_xlat0.x * u_xlat1.w;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0.xyz = u_xlat1.xyz * u_xlat0.xyz + (-unity_FogColor.xyz);
					    u_xlat9 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat9 = (-u_xlat9) + 1.0;
					    u_xlat9 = u_xlat9 * _ProjectionParams.z;
					    u_xlat9 = max(u_xlat9, 0.0);
					    u_xlat9 = u_xlat9 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat9 = clamp(u_xlat9, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat9) * u_xlat0.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					float u_xlat9;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat0.x = u_xlat0.x * u_xlat1.w;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0.xyz = u_xlat1.xyz * u_xlat0.xyz + (-unity_FogColor.xyz);
					    u_xlat9 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat9 = (-u_xlat9) + 1.0;
					    u_xlat9 = u_xlat9 * _ProjectionParams.z;
					    u_xlat9 = max(u_xlat9, 0.0);
					    u_xlat9 = u_xlat9 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat9 = clamp(u_xlat9, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat9) * u_xlat0.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendAlpha" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					float u_xlat9;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat0.x = u_xlat0.x * u_xlat1.w;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0.xyz = u_xlat1.xyz * u_xlat0.xyz + (-unity_FogColor.xyz);
					    u_xlat9 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat9 = (-u_xlat9) + 1.0;
					    u_xlat9 = u_xlat9 * _ProjectionParams.z;
					    u_xlat9 = max(u_xlat9, 0.0);
					    u_xlat9 = u_xlat9 * unity_FogParams.y;
					    u_xlat9 = exp2((-u_xlat9));
					    u_xlat9 = min(u_xlat9, 1.0);
					    SV_Target0.xyz = vec3(u_xlat9) * u_xlat0.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					float u_xlat9;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat0.x = u_xlat0.x * u_xlat1.w;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0.xyz = u_xlat1.xyz * u_xlat0.xyz + (-unity_FogColor.xyz);
					    u_xlat9 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat9 = (-u_xlat9) + 1.0;
					    u_xlat9 = u_xlat9 * _ProjectionParams.z;
					    u_xlat9 = max(u_xlat9, 0.0);
					    u_xlat9 = u_xlat9 * unity_FogParams.y;
					    u_xlat9 = exp2((-u_xlat9));
					    u_xlat9 = min(u_xlat9, 1.0);
					    SV_Target0.xyz = vec3(u_xlat9) * u_xlat0.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					float u_xlat9;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat0.x = u_xlat0.x * u_xlat1.w;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0.xyz = u_xlat1.xyz * u_xlat0.xyz + (-unity_FogColor.xyz);
					    u_xlat9 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat9 = (-u_xlat9) + 1.0;
					    u_xlat9 = u_xlat9 * _ProjectionParams.z;
					    u_xlat9 = max(u_xlat9, 0.0);
					    u_xlat9 = u_xlat9 * unity_FogParams.y;
					    u_xlat9 = exp2((-u_xlat9));
					    u_xlat9 = min(u_xlat9, 1.0);
					    SV_Target0.xyz = vec3(u_xlat9) * u_xlat0.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					float u_xlat9;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat0.x = u_xlat0.x * u_xlat1.w;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0.xyz = u_xlat1.xyz * u_xlat0.xyz + (-unity_FogColor.xyz);
					    u_xlat9 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat9 = (-u_xlat9) + 1.0;
					    u_xlat9 = u_xlat9 * _ProjectionParams.z;
					    u_xlat9 = max(u_xlat9, 0.0);
					    u_xlat9 = u_xlat9 * unity_FogParams.y;
					    u_xlat9 = exp2((-u_xlat9));
					    u_xlat9 = min(u_xlat9, 1.0);
					    SV_Target0.xyz = vec3(u_xlat9) * u_xlat0.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendAlpha" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					float u_xlat9;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat0.x = u_xlat0.x * u_xlat1.w;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0.xyz = u_xlat1.xyz * u_xlat0.xyz + (-unity_FogColor.xyz);
					    u_xlat9 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat9 = (-u_xlat9) + 1.0;
					    u_xlat9 = u_xlat9 * _ProjectionParams.z;
					    u_xlat9 = max(u_xlat9, 0.0);
					    u_xlat9 = u_xlat9 * unity_FogParams.x;
					    u_xlat9 = u_xlat9 * (-u_xlat9);
					    u_xlat9 = exp2(u_xlat9);
					    SV_Target0.xyz = vec3(u_xlat9) * u_xlat0.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					float u_xlat9;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat0.x = u_xlat0.x * u_xlat1.w;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0.xyz = u_xlat1.xyz * u_xlat0.xyz + (-unity_FogColor.xyz);
					    u_xlat9 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat9 = (-u_xlat9) + 1.0;
					    u_xlat9 = u_xlat9 * _ProjectionParams.z;
					    u_xlat9 = max(u_xlat9, 0.0);
					    u_xlat9 = u_xlat9 * unity_FogParams.x;
					    u_xlat9 = u_xlat9 * (-u_xlat9);
					    u_xlat9 = exp2(u_xlat9);
					    SV_Target0.xyz = vec3(u_xlat9) * u_xlat0.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					float u_xlat9;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat0.x = u_xlat0.x * u_xlat1.w;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0.xyz = u_xlat1.xyz * u_xlat0.xyz + (-unity_FogColor.xyz);
					    u_xlat9 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat9 = (-u_xlat9) + 1.0;
					    u_xlat9 = u_xlat9 * _ProjectionParams.z;
					    u_xlat9 = max(u_xlat9, 0.0);
					    u_xlat9 = u_xlat9 * unity_FogParams.x;
					    u_xlat9 = u_xlat9 * (-u_xlat9);
					    u_xlat9 = exp2(u_xlat9);
					    SV_Target0.xyz = vec3(u_xlat9) * u_xlat0.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					float u_xlat9;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat0.x = u_xlat0.x * u_xlat1.w;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0.xyz = u_xlat1.xyz * u_xlat0.xyz + (-unity_FogColor.xyz);
					    u_xlat9 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat9 = (-u_xlat9) + 1.0;
					    u_xlat9 = u_xlat9 * _ProjectionParams.z;
					    u_xlat9 = max(u_xlat9, 0.0);
					    u_xlat9 = u_xlat9 * unity_FogParams.x;
					    u_xlat9 = u_xlat9 * (-u_xlat9);
					    u_xlat9 = exp2(u_xlat9);
					    SV_Target0.xyz = vec3(u_xlat9) * u_xlat0.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendAlpha" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					bool u_xlatb1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1.x = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat0.w = u_xlat0.w * u_xlat1.x;
					    u_xlat0 = u_xlat0 * vs_COLOR0;
					    SV_Target0.w = u_xlat0.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					bool u_xlatb1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1.x = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat0.w = u_xlat0.w * u_xlat1.x;
					    u_xlat0 = u_xlat0 * vs_COLOR0;
					    SV_Target0.w = u_xlat0.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendAlpha" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[7];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					bool u_xlatb2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2.x = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2.x;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    SV_Target0.w = u_xlat0.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[6];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					bool u_xlatb2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2.x = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2.x;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    SV_Target0.w = u_xlat0.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendAlpha" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					bool u_xlatb1;
					float u_xlat6;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1.x = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat6 = u_xlat0.w * u_xlat1.x;
					    u_xlat0.xyz = u_xlat0.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    u_xlat6 = u_xlat6 * vs_COLOR0.w;
					    SV_Target0.w = u_xlat6;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    u_xlat6 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat6 = (-u_xlat6) + 1.0;
					    u_xlat6 = u_xlat6 * _ProjectionParams.z;
					    u_xlat6 = max(u_xlat6, 0.0);
					    u_xlat6 = u_xlat6 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat6 = clamp(u_xlat6, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat6) * u_xlat0.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					bool u_xlatb1;
					float u_xlat6;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1.x = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat6 = u_xlat0.w * u_xlat1.x;
					    u_xlat0.xyz = u_xlat0.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    u_xlat6 = u_xlat6 * vs_COLOR0.w;
					    SV_Target0.w = u_xlat6;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    u_xlat6 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat6 = (-u_xlat6) + 1.0;
					    u_xlat6 = u_xlat6 * _ProjectionParams.z;
					    u_xlat6 = max(u_xlat6, 0.0);
					    u_xlat6 = u_xlat6 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat6 = clamp(u_xlat6, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat6) * u_xlat0.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					float u_xlat3;
					bool u_xlatb3;
					float u_xlat9;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3 = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat3 = u_xlat1.w * u_xlat3;
					    u_xlat0.x = u_xlat0.x * u_xlat3;
					    SV_Target0.w = u_xlat0.x;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0.xyz = u_xlat1.xyz * u_xlat0.xyz + (-unity_FogColor.xyz);
					    u_xlat9 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat9 = (-u_xlat9) + 1.0;
					    u_xlat9 = u_xlat9 * _ProjectionParams.z;
					    u_xlat9 = max(u_xlat9, 0.0);
					    u_xlat9 = u_xlat9 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat9 = clamp(u_xlat9, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat9) * u_xlat0.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					float u_xlat3;
					bool u_xlatb3;
					float u_xlat9;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3 = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat3 = u_xlat1.w * u_xlat3;
					    u_xlat0.x = u_xlat0.x * u_xlat3;
					    SV_Target0.w = u_xlat0.x;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0.xyz = u_xlat1.xyz * u_xlat0.xyz + (-unity_FogColor.xyz);
					    u_xlat9 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat9 = (-u_xlat9) + 1.0;
					    u_xlat9 = u_xlat9 * _ProjectionParams.z;
					    u_xlat9 = max(u_xlat9, 0.0);
					    u_xlat9 = u_xlat9 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat9 = clamp(u_xlat9, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat9) * u_xlat0.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendAlpha" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					bool u_xlatb1;
					float u_xlat6;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1.x = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat6 = u_xlat0.w * u_xlat1.x;
					    u_xlat0.xyz = u_xlat0.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    u_xlat6 = u_xlat6 * vs_COLOR0.w;
					    SV_Target0.w = u_xlat6;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    u_xlat6 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat6 = (-u_xlat6) + 1.0;
					    u_xlat6 = u_xlat6 * _ProjectionParams.z;
					    u_xlat6 = max(u_xlat6, 0.0);
					    u_xlat6 = u_xlat6 * unity_FogParams.y;
					    u_xlat6 = exp2((-u_xlat6));
					    u_xlat6 = min(u_xlat6, 1.0);
					    SV_Target0.xyz = vec3(u_xlat6) * u_xlat0.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					bool u_xlatb1;
					float u_xlat6;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1.x = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat6 = u_xlat0.w * u_xlat1.x;
					    u_xlat0.xyz = u_xlat0.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    u_xlat6 = u_xlat6 * vs_COLOR0.w;
					    SV_Target0.w = u_xlat6;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    u_xlat6 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat6 = (-u_xlat6) + 1.0;
					    u_xlat6 = u_xlat6 * _ProjectionParams.z;
					    u_xlat6 = max(u_xlat6, 0.0);
					    u_xlat6 = u_xlat6 * unity_FogParams.y;
					    u_xlat6 = exp2((-u_xlat6));
					    u_xlat6 = min(u_xlat6, 1.0);
					    SV_Target0.xyz = vec3(u_xlat6) * u_xlat0.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					float u_xlat3;
					bool u_xlatb3;
					float u_xlat9;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3 = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat3 = u_xlat1.w * u_xlat3;
					    u_xlat0.x = u_xlat0.x * u_xlat3;
					    SV_Target0.w = u_xlat0.x;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0.xyz = u_xlat1.xyz * u_xlat0.xyz + (-unity_FogColor.xyz);
					    u_xlat9 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat9 = (-u_xlat9) + 1.0;
					    u_xlat9 = u_xlat9 * _ProjectionParams.z;
					    u_xlat9 = max(u_xlat9, 0.0);
					    u_xlat9 = u_xlat9 * unity_FogParams.y;
					    u_xlat9 = exp2((-u_xlat9));
					    u_xlat9 = min(u_xlat9, 1.0);
					    SV_Target0.xyz = vec3(u_xlat9) * u_xlat0.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					float u_xlat3;
					bool u_xlatb3;
					float u_xlat9;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3 = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat3 = u_xlat1.w * u_xlat3;
					    u_xlat0.x = u_xlat0.x * u_xlat3;
					    SV_Target0.w = u_xlat0.x;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0.xyz = u_xlat1.xyz * u_xlat0.xyz + (-unity_FogColor.xyz);
					    u_xlat9 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat9 = (-u_xlat9) + 1.0;
					    u_xlat9 = u_xlat9 * _ProjectionParams.z;
					    u_xlat9 = max(u_xlat9, 0.0);
					    u_xlat9 = u_xlat9 * unity_FogParams.y;
					    u_xlat9 = exp2((-u_xlat9));
					    u_xlat9 = min(u_xlat9, 1.0);
					    SV_Target0.xyz = vec3(u_xlat9) * u_xlat0.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendAlpha" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					bool u_xlatb1;
					float u_xlat6;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1.x = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat6 = u_xlat0.w * u_xlat1.x;
					    u_xlat0.xyz = u_xlat0.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    u_xlat6 = u_xlat6 * vs_COLOR0.w;
					    SV_Target0.w = u_xlat6;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    u_xlat6 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat6 = (-u_xlat6) + 1.0;
					    u_xlat6 = u_xlat6 * _ProjectionParams.z;
					    u_xlat6 = max(u_xlat6, 0.0);
					    u_xlat6 = u_xlat6 * unity_FogParams.x;
					    u_xlat6 = u_xlat6 * (-u_xlat6);
					    u_xlat6 = exp2(u_xlat6);
					    SV_Target0.xyz = vec3(u_xlat6) * u_xlat0.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					bool u_xlatb1;
					float u_xlat6;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1.x = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat6 = u_xlat0.w * u_xlat1.x;
					    u_xlat0.xyz = u_xlat0.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    u_xlat6 = u_xlat6 * vs_COLOR0.w;
					    SV_Target0.w = u_xlat6;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    u_xlat6 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat6 = (-u_xlat6) + 1.0;
					    u_xlat6 = u_xlat6 * _ProjectionParams.z;
					    u_xlat6 = max(u_xlat6, 0.0);
					    u_xlat6 = u_xlat6 * unity_FogParams.x;
					    u_xlat6 = u_xlat6 * (-u_xlat6);
					    u_xlat6 = exp2(u_xlat6);
					    SV_Target0.xyz = vec3(u_xlat6) * u_xlat0.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					float u_xlat3;
					bool u_xlatb3;
					float u_xlat9;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3 = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat3 = u_xlat1.w * u_xlat3;
					    u_xlat0.x = u_xlat0.x * u_xlat3;
					    SV_Target0.w = u_xlat0.x;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0.xyz = u_xlat1.xyz * u_xlat0.xyz + (-unity_FogColor.xyz);
					    u_xlat9 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat9 = (-u_xlat9) + 1.0;
					    u_xlat9 = u_xlat9 * _ProjectionParams.z;
					    u_xlat9 = max(u_xlat9, 0.0);
					    u_xlat9 = u_xlat9 * unity_FogParams.x;
					    u_xlat9 = u_xlat9 * (-u_xlat9);
					    u_xlat9 = exp2(u_xlat9);
					    SV_Target0.xyz = vec3(u_xlat9) * u_xlat0.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					float u_xlat3;
					bool u_xlatb3;
					float u_xlat9;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3 = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat3 = u_xlat1.w * u_xlat3;
					    u_xlat0.x = u_xlat0.x * u_xlat3;
					    SV_Target0.w = u_xlat0.x;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0.xyz = u_xlat1.xyz * u_xlat0.xyz + (-unity_FogColor.xyz);
					    u_xlat9 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat9 = (-u_xlat9) + 1.0;
					    u_xlat9 = u_xlat9 * _ProjectionParams.z;
					    u_xlat9 = max(u_xlat9, 0.0);
					    u_xlat9 = u_xlat9 * unity_FogParams.x;
					    u_xlat9 = u_xlat9 * (-u_xlat9);
					    u_xlat9 = exp2(u_xlat9);
					    SV_Target0.xyz = vec3(u_xlat9) * u_xlat0.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendAlpha" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[7];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					bool u_xlatb2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2.x = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2.x;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    SV_Target0.w = u_xlat0.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[6];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					bool u_xlatb2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2.x = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2.x;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    SV_Target0.w = u_xlat0.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendAlpha" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[7];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					bool u_xlatb2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2.x = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2.x;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    SV_Target0.w = u_xlat0.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[6];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					bool u_xlatb2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2.x = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2.x;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    SV_Target0.w = u_xlat0.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendAlpha" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					float u_xlat3;
					bool u_xlatb3;
					float u_xlat9;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3 = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat3 = u_xlat1.w * u_xlat3;
					    u_xlat0.x = u_xlat0.x * u_xlat3;
					    SV_Target0.w = u_xlat0.x;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0.xyz = u_xlat1.xyz * u_xlat0.xyz + (-unity_FogColor.xyz);
					    u_xlat9 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat9 = (-u_xlat9) + 1.0;
					    u_xlat9 = u_xlat9 * _ProjectionParams.z;
					    u_xlat9 = max(u_xlat9, 0.0);
					    u_xlat9 = u_xlat9 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat9 = clamp(u_xlat9, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat9) * u_xlat0.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					float u_xlat3;
					bool u_xlatb3;
					float u_xlat9;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3 = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat3 = u_xlat1.w * u_xlat3;
					    u_xlat0.x = u_xlat0.x * u_xlat3;
					    SV_Target0.w = u_xlat0.x;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0.xyz = u_xlat1.xyz * u_xlat0.xyz + (-unity_FogColor.xyz);
					    u_xlat9 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat9 = (-u_xlat9) + 1.0;
					    u_xlat9 = u_xlat9 * _ProjectionParams.z;
					    u_xlat9 = max(u_xlat9, 0.0);
					    u_xlat9 = u_xlat9 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat9 = clamp(u_xlat9, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat9) * u_xlat0.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					float u_xlat3;
					bool u_xlatb3;
					float u_xlat9;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3 = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat3 = u_xlat1.w * u_xlat3;
					    u_xlat0.x = u_xlat0.x * u_xlat3;
					    SV_Target0.w = u_xlat0.x;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0.xyz = u_xlat1.xyz * u_xlat0.xyz + (-unity_FogColor.xyz);
					    u_xlat9 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat9 = (-u_xlat9) + 1.0;
					    u_xlat9 = u_xlat9 * _ProjectionParams.z;
					    u_xlat9 = max(u_xlat9, 0.0);
					    u_xlat9 = u_xlat9 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat9 = clamp(u_xlat9, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat9) * u_xlat0.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					float u_xlat3;
					bool u_xlatb3;
					float u_xlat9;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3 = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat3 = u_xlat1.w * u_xlat3;
					    u_xlat0.x = u_xlat0.x * u_xlat3;
					    SV_Target0.w = u_xlat0.x;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0.xyz = u_xlat1.xyz * u_xlat0.xyz + (-unity_FogColor.xyz);
					    u_xlat9 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat9 = (-u_xlat9) + 1.0;
					    u_xlat9 = u_xlat9 * _ProjectionParams.z;
					    u_xlat9 = max(u_xlat9, 0.0);
					    u_xlat9 = u_xlat9 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat9 = clamp(u_xlat9, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat9) * u_xlat0.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendAlpha" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					float u_xlat3;
					bool u_xlatb3;
					float u_xlat9;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3 = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat3 = u_xlat1.w * u_xlat3;
					    u_xlat0.x = u_xlat0.x * u_xlat3;
					    SV_Target0.w = u_xlat0.x;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0.xyz = u_xlat1.xyz * u_xlat0.xyz + (-unity_FogColor.xyz);
					    u_xlat9 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat9 = (-u_xlat9) + 1.0;
					    u_xlat9 = u_xlat9 * _ProjectionParams.z;
					    u_xlat9 = max(u_xlat9, 0.0);
					    u_xlat9 = u_xlat9 * unity_FogParams.y;
					    u_xlat9 = exp2((-u_xlat9));
					    u_xlat9 = min(u_xlat9, 1.0);
					    SV_Target0.xyz = vec3(u_xlat9) * u_xlat0.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					float u_xlat3;
					bool u_xlatb3;
					float u_xlat9;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3 = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat3 = u_xlat1.w * u_xlat3;
					    u_xlat0.x = u_xlat0.x * u_xlat3;
					    SV_Target0.w = u_xlat0.x;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0.xyz = u_xlat1.xyz * u_xlat0.xyz + (-unity_FogColor.xyz);
					    u_xlat9 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat9 = (-u_xlat9) + 1.0;
					    u_xlat9 = u_xlat9 * _ProjectionParams.z;
					    u_xlat9 = max(u_xlat9, 0.0);
					    u_xlat9 = u_xlat9 * unity_FogParams.y;
					    u_xlat9 = exp2((-u_xlat9));
					    u_xlat9 = min(u_xlat9, 1.0);
					    SV_Target0.xyz = vec3(u_xlat9) * u_xlat0.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					float u_xlat3;
					bool u_xlatb3;
					float u_xlat9;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3 = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat3 = u_xlat1.w * u_xlat3;
					    u_xlat0.x = u_xlat0.x * u_xlat3;
					    SV_Target0.w = u_xlat0.x;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0.xyz = u_xlat1.xyz * u_xlat0.xyz + (-unity_FogColor.xyz);
					    u_xlat9 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat9 = (-u_xlat9) + 1.0;
					    u_xlat9 = u_xlat9 * _ProjectionParams.z;
					    u_xlat9 = max(u_xlat9, 0.0);
					    u_xlat9 = u_xlat9 * unity_FogParams.y;
					    u_xlat9 = exp2((-u_xlat9));
					    u_xlat9 = min(u_xlat9, 1.0);
					    SV_Target0.xyz = vec3(u_xlat9) * u_xlat0.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					float u_xlat3;
					bool u_xlatb3;
					float u_xlat9;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3 = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat3 = u_xlat1.w * u_xlat3;
					    u_xlat0.x = u_xlat0.x * u_xlat3;
					    SV_Target0.w = u_xlat0.x;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0.xyz = u_xlat1.xyz * u_xlat0.xyz + (-unity_FogColor.xyz);
					    u_xlat9 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat9 = (-u_xlat9) + 1.0;
					    u_xlat9 = u_xlat9 * _ProjectionParams.z;
					    u_xlat9 = max(u_xlat9, 0.0);
					    u_xlat9 = u_xlat9 * unity_FogParams.y;
					    u_xlat9 = exp2((-u_xlat9));
					    u_xlat9 = min(u_xlat9, 1.0);
					    SV_Target0.xyz = vec3(u_xlat9) * u_xlat0.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendAlpha" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					float u_xlat3;
					bool u_xlatb3;
					float u_xlat9;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3 = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat3 = u_xlat1.w * u_xlat3;
					    u_xlat0.x = u_xlat0.x * u_xlat3;
					    SV_Target0.w = u_xlat0.x;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0.xyz = u_xlat1.xyz * u_xlat0.xyz + (-unity_FogColor.xyz);
					    u_xlat9 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat9 = (-u_xlat9) + 1.0;
					    u_xlat9 = u_xlat9 * _ProjectionParams.z;
					    u_xlat9 = max(u_xlat9, 0.0);
					    u_xlat9 = u_xlat9 * unity_FogParams.x;
					    u_xlat9 = u_xlat9 * (-u_xlat9);
					    u_xlat9 = exp2(u_xlat9);
					    SV_Target0.xyz = vec3(u_xlat9) * u_xlat0.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					float u_xlat3;
					bool u_xlatb3;
					float u_xlat9;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3 = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat3 = u_xlat1.w * u_xlat3;
					    u_xlat0.x = u_xlat0.x * u_xlat3;
					    SV_Target0.w = u_xlat0.x;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0.xyz = u_xlat1.xyz * u_xlat0.xyz + (-unity_FogColor.xyz);
					    u_xlat9 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat9 = (-u_xlat9) + 1.0;
					    u_xlat9 = u_xlat9 * _ProjectionParams.z;
					    u_xlat9 = max(u_xlat9, 0.0);
					    u_xlat9 = u_xlat9 * unity_FogParams.x;
					    u_xlat9 = u_xlat9 * (-u_xlat9);
					    u_xlat9 = exp2(u_xlat9);
					    SV_Target0.xyz = vec3(u_xlat9) * u_xlat0.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					float u_xlat3;
					bool u_xlatb3;
					float u_xlat9;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3 = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat3 = u_xlat1.w * u_xlat3;
					    u_xlat0.x = u_xlat0.x * u_xlat3;
					    SV_Target0.w = u_xlat0.x;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0.xyz = u_xlat1.xyz * u_xlat0.xyz + (-unity_FogColor.xyz);
					    u_xlat9 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat9 = (-u_xlat9) + 1.0;
					    u_xlat9 = u_xlat9 * _ProjectionParams.z;
					    u_xlat9 = max(u_xlat9, 0.0);
					    u_xlat9 = u_xlat9 * unity_FogParams.x;
					    u_xlat9 = u_xlat9 * (-u_xlat9);
					    u_xlat9 = exp2(u_xlat9);
					    SV_Target0.xyz = vec3(u_xlat9) * u_xlat0.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					float u_xlat3;
					bool u_xlatb3;
					float u_xlat9;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3 = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat3 = u_xlat1.w * u_xlat3;
					    u_xlat0.x = u_xlat0.x * u_xlat3;
					    SV_Target0.w = u_xlat0.x;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0.xyz = u_xlat1.xyz * u_xlat0.xyz + (-unity_FogColor.xyz);
					    u_xlat9 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat9 = (-u_xlat9) + 1.0;
					    u_xlat9 = u_xlat9 * _ProjectionParams.z;
					    u_xlat9 = max(u_xlat9, 0.0);
					    u_xlat9 = u_xlat9 * unity_FogParams.x;
					    u_xlat9 = u_xlat9 * (-u_xlat9);
					    u_xlat9 = exp2(u_xlat9);
					    SV_Target0.xyz = vec3(u_xlat9) * u_xlat0.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendAlpha" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					bool u_xlatb1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1.x = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat0.w = u_xlat0.w * u_xlat1.x;
					    u_xlat0 = u_xlat0.wxyz * vs_COLOR0.wxyz;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.yzw;
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					bool u_xlatb1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1.x = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat0.w = u_xlat0.w * u_xlat1.x;
					    u_xlat0 = u_xlat0.wxyz * vs_COLOR0.wxyz;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.yzw;
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendAlpha" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[7];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					bool u_xlatb2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2.x = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2.x;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0.wxyz * u_xlat1.wxyz;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.yzw;
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[6];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					bool u_xlatb2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2.x = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2.x;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0.wxyz * u_xlat1.wxyz;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.yzw;
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendAlpha" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					bool u_xlatb1;
					float u_xlat6;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1.x = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat6 = u_xlat0.w * u_xlat1.x;
					    u_xlat0.xyz = u_xlat0.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    u_xlat1.x = u_xlat6 * vs_COLOR0.w;
					    u_xlat1.x = u_xlat1.x;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat1.x * vs_TEXCOORD4;
					    u_xlat6 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat6 = (-u_xlat6) + 1.0;
					    u_xlat6 = u_xlat6 * _ProjectionParams.z;
					    u_xlat6 = max(u_xlat6, 0.0);
					    u_xlat6 = u_xlat6 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat6 = clamp(u_xlat6, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat6) * u_xlat0.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					bool u_xlatb1;
					float u_xlat6;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1.x = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat6 = u_xlat0.w * u_xlat1.x;
					    u_xlat0.xyz = u_xlat0.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    u_xlat1.x = u_xlat6 * vs_COLOR0.w;
					    u_xlat1.x = u_xlat1.x;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat1.x * vs_TEXCOORD4;
					    u_xlat6 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat6 = (-u_xlat6) + 1.0;
					    u_xlat6 = u_xlat6 * _ProjectionParams.z;
					    u_xlat6 = max(u_xlat6, 0.0);
					    u_xlat6 = u_xlat6 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat6 = clamp(u_xlat6, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat6) * u_xlat0.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					float u_xlat3;
					bool u_xlatb3;
					float u_xlat9;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3 = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat3 = u_xlat1.w * u_xlat3;
					    u_xlat0.x = u_xlat0.x * u_xlat3;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0.xyz = u_xlat1.xyz * u_xlat0.xyz + (-unity_FogColor.xyz);
					    u_xlat9 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat9 = (-u_xlat9) + 1.0;
					    u_xlat9 = u_xlat9 * _ProjectionParams.z;
					    u_xlat9 = max(u_xlat9, 0.0);
					    u_xlat9 = u_xlat9 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat9 = clamp(u_xlat9, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat9) * u_xlat0.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					float u_xlat3;
					bool u_xlatb3;
					float u_xlat9;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3 = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat3 = u_xlat1.w * u_xlat3;
					    u_xlat0.x = u_xlat0.x * u_xlat3;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0.xyz = u_xlat1.xyz * u_xlat0.xyz + (-unity_FogColor.xyz);
					    u_xlat9 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat9 = (-u_xlat9) + 1.0;
					    u_xlat9 = u_xlat9 * _ProjectionParams.z;
					    u_xlat9 = max(u_xlat9, 0.0);
					    u_xlat9 = u_xlat9 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat9 = clamp(u_xlat9, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat9) * u_xlat0.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendAlpha" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					bool u_xlatb1;
					float u_xlat6;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1.x = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat6 = u_xlat0.w * u_xlat1.x;
					    u_xlat0.xyz = u_xlat0.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    u_xlat1.x = u_xlat6 * vs_COLOR0.w;
					    u_xlat1.x = u_xlat1.x;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat1.x * vs_TEXCOORD4;
					    u_xlat6 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat6 = (-u_xlat6) + 1.0;
					    u_xlat6 = u_xlat6 * _ProjectionParams.z;
					    u_xlat6 = max(u_xlat6, 0.0);
					    u_xlat6 = u_xlat6 * unity_FogParams.y;
					    u_xlat6 = exp2((-u_xlat6));
					    u_xlat6 = min(u_xlat6, 1.0);
					    SV_Target0.xyz = vec3(u_xlat6) * u_xlat0.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					bool u_xlatb1;
					float u_xlat6;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1.x = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat6 = u_xlat0.w * u_xlat1.x;
					    u_xlat0.xyz = u_xlat0.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    u_xlat1.x = u_xlat6 * vs_COLOR0.w;
					    u_xlat1.x = u_xlat1.x;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat1.x * vs_TEXCOORD4;
					    u_xlat6 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat6 = (-u_xlat6) + 1.0;
					    u_xlat6 = u_xlat6 * _ProjectionParams.z;
					    u_xlat6 = max(u_xlat6, 0.0);
					    u_xlat6 = u_xlat6 * unity_FogParams.y;
					    u_xlat6 = exp2((-u_xlat6));
					    u_xlat6 = min(u_xlat6, 1.0);
					    SV_Target0.xyz = vec3(u_xlat6) * u_xlat0.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					float u_xlat3;
					bool u_xlatb3;
					float u_xlat9;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3 = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat3 = u_xlat1.w * u_xlat3;
					    u_xlat0.x = u_xlat0.x * u_xlat3;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0.xyz = u_xlat1.xyz * u_xlat0.xyz + (-unity_FogColor.xyz);
					    u_xlat9 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat9 = (-u_xlat9) + 1.0;
					    u_xlat9 = u_xlat9 * _ProjectionParams.z;
					    u_xlat9 = max(u_xlat9, 0.0);
					    u_xlat9 = u_xlat9 * unity_FogParams.y;
					    u_xlat9 = exp2((-u_xlat9));
					    u_xlat9 = min(u_xlat9, 1.0);
					    SV_Target0.xyz = vec3(u_xlat9) * u_xlat0.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					float u_xlat3;
					bool u_xlatb3;
					float u_xlat9;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3 = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat3 = u_xlat1.w * u_xlat3;
					    u_xlat0.x = u_xlat0.x * u_xlat3;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0.xyz = u_xlat1.xyz * u_xlat0.xyz + (-unity_FogColor.xyz);
					    u_xlat9 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat9 = (-u_xlat9) + 1.0;
					    u_xlat9 = u_xlat9 * _ProjectionParams.z;
					    u_xlat9 = max(u_xlat9, 0.0);
					    u_xlat9 = u_xlat9 * unity_FogParams.y;
					    u_xlat9 = exp2((-u_xlat9));
					    u_xlat9 = min(u_xlat9, 1.0);
					    SV_Target0.xyz = vec3(u_xlat9) * u_xlat0.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendAlpha" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					bool u_xlatb1;
					float u_xlat6;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1.x = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat6 = u_xlat0.w * u_xlat1.x;
					    u_xlat0.xyz = u_xlat0.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    u_xlat1.x = u_xlat6 * vs_COLOR0.w;
					    u_xlat1.x = u_xlat1.x;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat1.x * vs_TEXCOORD4;
					    u_xlat6 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat6 = (-u_xlat6) + 1.0;
					    u_xlat6 = u_xlat6 * _ProjectionParams.z;
					    u_xlat6 = max(u_xlat6, 0.0);
					    u_xlat6 = u_xlat6 * unity_FogParams.x;
					    u_xlat6 = u_xlat6 * (-u_xlat6);
					    u_xlat6 = exp2(u_xlat6);
					    SV_Target0.xyz = vec3(u_xlat6) * u_xlat0.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					bool u_xlatb1;
					float u_xlat6;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1.x = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat6 = u_xlat0.w * u_xlat1.x;
					    u_xlat0.xyz = u_xlat0.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    u_xlat1.x = u_xlat6 * vs_COLOR0.w;
					    u_xlat1.x = u_xlat1.x;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat1.x * vs_TEXCOORD4;
					    u_xlat6 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat6 = (-u_xlat6) + 1.0;
					    u_xlat6 = u_xlat6 * _ProjectionParams.z;
					    u_xlat6 = max(u_xlat6, 0.0);
					    u_xlat6 = u_xlat6 * unity_FogParams.x;
					    u_xlat6 = u_xlat6 * (-u_xlat6);
					    u_xlat6 = exp2(u_xlat6);
					    SV_Target0.xyz = vec3(u_xlat6) * u_xlat0.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					float u_xlat3;
					bool u_xlatb3;
					float u_xlat9;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3 = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat3 = u_xlat1.w * u_xlat3;
					    u_xlat0.x = u_xlat0.x * u_xlat3;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0.xyz = u_xlat1.xyz * u_xlat0.xyz + (-unity_FogColor.xyz);
					    u_xlat9 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat9 = (-u_xlat9) + 1.0;
					    u_xlat9 = u_xlat9 * _ProjectionParams.z;
					    u_xlat9 = max(u_xlat9, 0.0);
					    u_xlat9 = u_xlat9 * unity_FogParams.x;
					    u_xlat9 = u_xlat9 * (-u_xlat9);
					    u_xlat9 = exp2(u_xlat9);
					    SV_Target0.xyz = vec3(u_xlat9) * u_xlat0.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					float u_xlat3;
					bool u_xlatb3;
					float u_xlat9;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3 = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat3 = u_xlat1.w * u_xlat3;
					    u_xlat0.x = u_xlat0.x * u_xlat3;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0.xyz = u_xlat1.xyz * u_xlat0.xyz + (-unity_FogColor.xyz);
					    u_xlat9 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat9 = (-u_xlat9) + 1.0;
					    u_xlat9 = u_xlat9 * _ProjectionParams.z;
					    u_xlat9 = max(u_xlat9, 0.0);
					    u_xlat9 = u_xlat9 * unity_FogParams.x;
					    u_xlat9 = u_xlat9 * (-u_xlat9);
					    u_xlat9 = exp2(u_xlat9);
					    SV_Target0.xyz = vec3(u_xlat9) * u_xlat0.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendAlpha" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[7];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					bool u_xlatb2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2.x = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2.x;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0.wxyz * u_xlat1.wxyz;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.yzw;
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[6];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					bool u_xlatb2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2.x = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2.x;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0.wxyz * u_xlat1.wxyz;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.yzw;
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendAlpha" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[7];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					bool u_xlatb2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2.x = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2.x;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0.wxyz * u_xlat1.wxyz;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.yzw;
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[6];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					bool u_xlatb2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2.x = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2.x;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0.wxyz * u_xlat1.wxyz;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.yzw;
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendAlpha" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					float u_xlat3;
					bool u_xlatb3;
					float u_xlat9;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3 = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat3 = u_xlat1.w * u_xlat3;
					    u_xlat0.x = u_xlat0.x * u_xlat3;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0.xyz = u_xlat1.xyz * u_xlat0.xyz + (-unity_FogColor.xyz);
					    u_xlat9 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat9 = (-u_xlat9) + 1.0;
					    u_xlat9 = u_xlat9 * _ProjectionParams.z;
					    u_xlat9 = max(u_xlat9, 0.0);
					    u_xlat9 = u_xlat9 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat9 = clamp(u_xlat9, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat9) * u_xlat0.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					float u_xlat3;
					bool u_xlatb3;
					float u_xlat9;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3 = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat3 = u_xlat1.w * u_xlat3;
					    u_xlat0.x = u_xlat0.x * u_xlat3;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0.xyz = u_xlat1.xyz * u_xlat0.xyz + (-unity_FogColor.xyz);
					    u_xlat9 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat9 = (-u_xlat9) + 1.0;
					    u_xlat9 = u_xlat9 * _ProjectionParams.z;
					    u_xlat9 = max(u_xlat9, 0.0);
					    u_xlat9 = u_xlat9 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat9 = clamp(u_xlat9, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat9) * u_xlat0.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					float u_xlat3;
					bool u_xlatb3;
					float u_xlat9;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3 = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat3 = u_xlat1.w * u_xlat3;
					    u_xlat0.x = u_xlat0.x * u_xlat3;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0.xyz = u_xlat1.xyz * u_xlat0.xyz + (-unity_FogColor.xyz);
					    u_xlat9 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat9 = (-u_xlat9) + 1.0;
					    u_xlat9 = u_xlat9 * _ProjectionParams.z;
					    u_xlat9 = max(u_xlat9, 0.0);
					    u_xlat9 = u_xlat9 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat9 = clamp(u_xlat9, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat9) * u_xlat0.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					float u_xlat3;
					bool u_xlatb3;
					float u_xlat9;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3 = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat3 = u_xlat1.w * u_xlat3;
					    u_xlat0.x = u_xlat0.x * u_xlat3;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0.xyz = u_xlat1.xyz * u_xlat0.xyz + (-unity_FogColor.xyz);
					    u_xlat9 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat9 = (-u_xlat9) + 1.0;
					    u_xlat9 = u_xlat9 * _ProjectionParams.z;
					    u_xlat9 = max(u_xlat9, 0.0);
					    u_xlat9 = u_xlat9 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat9 = clamp(u_xlat9, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat9) * u_xlat0.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendAlpha" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					float u_xlat3;
					bool u_xlatb3;
					float u_xlat9;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3 = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat3 = u_xlat1.w * u_xlat3;
					    u_xlat0.x = u_xlat0.x * u_xlat3;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0.xyz = u_xlat1.xyz * u_xlat0.xyz + (-unity_FogColor.xyz);
					    u_xlat9 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat9 = (-u_xlat9) + 1.0;
					    u_xlat9 = u_xlat9 * _ProjectionParams.z;
					    u_xlat9 = max(u_xlat9, 0.0);
					    u_xlat9 = u_xlat9 * unity_FogParams.y;
					    u_xlat9 = exp2((-u_xlat9));
					    u_xlat9 = min(u_xlat9, 1.0);
					    SV_Target0.xyz = vec3(u_xlat9) * u_xlat0.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					float u_xlat3;
					bool u_xlatb3;
					float u_xlat9;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3 = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat3 = u_xlat1.w * u_xlat3;
					    u_xlat0.x = u_xlat0.x * u_xlat3;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0.xyz = u_xlat1.xyz * u_xlat0.xyz + (-unity_FogColor.xyz);
					    u_xlat9 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat9 = (-u_xlat9) + 1.0;
					    u_xlat9 = u_xlat9 * _ProjectionParams.z;
					    u_xlat9 = max(u_xlat9, 0.0);
					    u_xlat9 = u_xlat9 * unity_FogParams.y;
					    u_xlat9 = exp2((-u_xlat9));
					    u_xlat9 = min(u_xlat9, 1.0);
					    SV_Target0.xyz = vec3(u_xlat9) * u_xlat0.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					float u_xlat3;
					bool u_xlatb3;
					float u_xlat9;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3 = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat3 = u_xlat1.w * u_xlat3;
					    u_xlat0.x = u_xlat0.x * u_xlat3;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0.xyz = u_xlat1.xyz * u_xlat0.xyz + (-unity_FogColor.xyz);
					    u_xlat9 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat9 = (-u_xlat9) + 1.0;
					    u_xlat9 = u_xlat9 * _ProjectionParams.z;
					    u_xlat9 = max(u_xlat9, 0.0);
					    u_xlat9 = u_xlat9 * unity_FogParams.y;
					    u_xlat9 = exp2((-u_xlat9));
					    u_xlat9 = min(u_xlat9, 1.0);
					    SV_Target0.xyz = vec3(u_xlat9) * u_xlat0.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					float u_xlat3;
					bool u_xlatb3;
					float u_xlat9;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3 = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat3 = u_xlat1.w * u_xlat3;
					    u_xlat0.x = u_xlat0.x * u_xlat3;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0.xyz = u_xlat1.xyz * u_xlat0.xyz + (-unity_FogColor.xyz);
					    u_xlat9 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat9 = (-u_xlat9) + 1.0;
					    u_xlat9 = u_xlat9 * _ProjectionParams.z;
					    u_xlat9 = max(u_xlat9, 0.0);
					    u_xlat9 = u_xlat9 * unity_FogParams.y;
					    u_xlat9 = exp2((-u_xlat9));
					    u_xlat9 = min(u_xlat9, 1.0);
					    SV_Target0.xyz = vec3(u_xlat9) * u_xlat0.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendAlpha" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					float u_xlat3;
					bool u_xlatb3;
					float u_xlat9;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3 = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat3 = u_xlat1.w * u_xlat3;
					    u_xlat0.x = u_xlat0.x * u_xlat3;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0.xyz = u_xlat1.xyz * u_xlat0.xyz + (-unity_FogColor.xyz);
					    u_xlat9 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat9 = (-u_xlat9) + 1.0;
					    u_xlat9 = u_xlat9 * _ProjectionParams.z;
					    u_xlat9 = max(u_xlat9, 0.0);
					    u_xlat9 = u_xlat9 * unity_FogParams.x;
					    u_xlat9 = u_xlat9 * (-u_xlat9);
					    u_xlat9 = exp2(u_xlat9);
					    SV_Target0.xyz = vec3(u_xlat9) * u_xlat0.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					float u_xlat3;
					bool u_xlatb3;
					float u_xlat9;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3 = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat3 = u_xlat1.w * u_xlat3;
					    u_xlat0.x = u_xlat0.x * u_xlat3;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0.xyz = u_xlat1.xyz * u_xlat0.xyz + (-unity_FogColor.xyz);
					    u_xlat9 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat9 = (-u_xlat9) + 1.0;
					    u_xlat9 = u_xlat9 * _ProjectionParams.z;
					    u_xlat9 = max(u_xlat9, 0.0);
					    u_xlat9 = u_xlat9 * unity_FogParams.x;
					    u_xlat9 = u_xlat9 * (-u_xlat9);
					    u_xlat9 = exp2(u_xlat9);
					    SV_Target0.xyz = vec3(u_xlat9) * u_xlat0.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					float u_xlat3;
					bool u_xlatb3;
					float u_xlat9;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3 = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat3 = u_xlat1.w * u_xlat3;
					    u_xlat0.x = u_xlat0.x * u_xlat3;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0.xyz = u_xlat1.xyz * u_xlat0.xyz + (-unity_FogColor.xyz);
					    u_xlat9 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat9 = (-u_xlat9) + 1.0;
					    u_xlat9 = u_xlat9 * _ProjectionParams.z;
					    u_xlat9 = max(u_xlat9, 0.0);
					    u_xlat9 = u_xlat9 * unity_FogParams.x;
					    u_xlat9 = u_xlat9 * (-u_xlat9);
					    u_xlat9 = exp2(u_xlat9);
					    SV_Target0.xyz = vec3(u_xlat9) * u_xlat0.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					float u_xlat3;
					bool u_xlatb3;
					float u_xlat9;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3 = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat3 = u_xlat1.w * u_xlat3;
					    u_xlat0.x = u_xlat0.x * u_xlat3;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0.xyz = u_xlat1.xyz * u_xlat0.xyz + (-unity_FogColor.xyz);
					    u_xlat9 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat9 = (-u_xlat9) + 1.0;
					    u_xlat9 = u_xlat9 * _ProjectionParams.z;
					    u_xlat9 = max(u_xlat9, 0.0);
					    u_xlat9 = u_xlat9 * unity_FogParams.x;
					    u_xlat9 = u_xlat9 * (-u_xlat9);
					    u_xlat9 = exp2(u_xlat9);
					    SV_Target0.xyz = vec3(u_xlat9) * u_xlat0.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendAlpha" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    SV_Target0.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    SV_Target0.w = u_xlatb0 ? 1.0 : float(0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    SV_Target0.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    SV_Target0.w = u_xlatb0 ? 1.0 : float(0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendAlpha" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[7];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb0 = u_xlat1.w>=u_xlat0.x;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    SV_Target0.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    SV_Target0.w = u_xlatb0 ? 1.0 : float(0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[6];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb0 = u_xlat1.w>=u_xlat0.x;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    SV_Target0.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    SV_Target0.w = u_xlatb0 ? 1.0 : float(0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendAlpha" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + unity_FogColor.xyz;
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    SV_Target0.w = u_xlatb0 ? 1.0 : float(0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + unity_FogColor.xyz;
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    SV_Target0.w = u_xlatb0 ? 1.0 : float(0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb0 = u_xlat1.w>=u_xlat0.x;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    SV_Target0.w = u_xlatb0 ? 1.0 : float(0.0);
					    u_xlat0.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0.x = (-u_xlat0.x) + 1.0;
					    u_xlat0.x = u_xlat0.x * _ProjectionParams.z;
					    u_xlat0.x = max(u_xlat0.x, 0.0);
					    u_xlat0.x = u_xlat0.x * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.xxx * u_xlat3.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb0 = u_xlat1.w>=u_xlat0.x;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    SV_Target0.w = u_xlatb0 ? 1.0 : float(0.0);
					    u_xlat0.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0.x = (-u_xlat0.x) + 1.0;
					    u_xlat0.x = u_xlat0.x * _ProjectionParams.z;
					    u_xlat0.x = max(u_xlat0.x, 0.0);
					    u_xlat0.x = u_xlat0.x * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.xxx * u_xlat3.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendAlpha" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + unity_FogColor.xyz;
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    SV_Target0.w = u_xlatb0 ? 1.0 : float(0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + unity_FogColor.xyz;
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    SV_Target0.w = u_xlatb0 ? 1.0 : float(0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0.x = (-u_xlat0.x) + 1.0;
					    u_xlat0.x = u_xlat0.x * _ProjectionParams.z;
					    u_xlat0.x = max(u_xlat0.x, 0.0);
					    u_xlat0.x = u_xlat0.x * unity_FogParams.y;
					    u_xlat0.x = exp2((-u_xlat0.x));
					    u_xlat0.x = min(u_xlat0.x, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    SV_Target0.xyz = u_xlat0.xxx * u_xlat3.xyz + unity_FogColor.xyz;
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0.x;
					    SV_Target0.w = u_xlatb0 ? 1.0 : float(0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0.x = (-u_xlat0.x) + 1.0;
					    u_xlat0.x = u_xlat0.x * _ProjectionParams.z;
					    u_xlat0.x = max(u_xlat0.x, 0.0);
					    u_xlat0.x = u_xlat0.x * unity_FogParams.y;
					    u_xlat0.x = exp2((-u_xlat0.x));
					    u_xlat0.x = min(u_xlat0.x, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    SV_Target0.xyz = u_xlat0.xxx * u_xlat3.xyz + unity_FogColor.xyz;
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0.x;
					    SV_Target0.w = u_xlatb0 ? 1.0 : float(0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendAlpha" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + unity_FogColor.xyz;
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    SV_Target0.w = u_xlatb0 ? 1.0 : float(0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + unity_FogColor.xyz;
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    SV_Target0.w = u_xlatb0 ? 1.0 : float(0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0.x = (-u_xlat0.x) + 1.0;
					    u_xlat0.x = u_xlat0.x * _ProjectionParams.z;
					    u_xlat0.x = max(u_xlat0.x, 0.0);
					    u_xlat0.x = u_xlat0.x * unity_FogParams.x;
					    u_xlat0.x = u_xlat0.x * (-u_xlat0.x);
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    SV_Target0.xyz = u_xlat0.xxx * u_xlat3.xyz + unity_FogColor.xyz;
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0.x;
					    SV_Target0.w = u_xlatb0 ? 1.0 : float(0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0.x = (-u_xlat0.x) + 1.0;
					    u_xlat0.x = u_xlat0.x * _ProjectionParams.z;
					    u_xlat0.x = max(u_xlat0.x, 0.0);
					    u_xlat0.x = u_xlat0.x * unity_FogParams.x;
					    u_xlat0.x = u_xlat0.x * (-u_xlat0.x);
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    SV_Target0.xyz = u_xlat0.xxx * u_xlat3.xyz + unity_FogColor.xyz;
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0.x;
					    SV_Target0.w = u_xlatb0 ? 1.0 : float(0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendAlpha" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[7];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb0 = u_xlat1.w>=u_xlat0.x;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    SV_Target0.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    SV_Target0.w = u_xlatb0 ? 1.0 : float(0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[6];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb0 = u_xlat1.w>=u_xlat0.x;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    SV_Target0.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    SV_Target0.w = u_xlatb0 ? 1.0 : float(0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendAlpha" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[7];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb0 = u_xlat1.w>=u_xlat0.x;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    SV_Target0.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    SV_Target0.w = u_xlatb0 ? 1.0 : float(0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[6];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb0 = u_xlat1.w>=u_xlat0.x;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    SV_Target0.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    SV_Target0.w = u_xlatb0 ? 1.0 : float(0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendAlpha" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb0 = u_xlat1.w>=u_xlat0.x;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    SV_Target0.w = u_xlatb0 ? 1.0 : float(0.0);
					    u_xlat0.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0.x = (-u_xlat0.x) + 1.0;
					    u_xlat0.x = u_xlat0.x * _ProjectionParams.z;
					    u_xlat0.x = max(u_xlat0.x, 0.0);
					    u_xlat0.x = u_xlat0.x * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.xxx * u_xlat3.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb0 = u_xlat1.w>=u_xlat0.x;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    SV_Target0.w = u_xlatb0 ? 1.0 : float(0.0);
					    u_xlat0.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0.x = (-u_xlat0.x) + 1.0;
					    u_xlat0.x = u_xlat0.x * _ProjectionParams.z;
					    u_xlat0.x = max(u_xlat0.x, 0.0);
					    u_xlat0.x = u_xlat0.x * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.xxx * u_xlat3.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb0 = u_xlat1.w>=u_xlat0.x;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    SV_Target0.w = u_xlatb0 ? 1.0 : float(0.0);
					    u_xlat0.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0.x = (-u_xlat0.x) + 1.0;
					    u_xlat0.x = u_xlat0.x * _ProjectionParams.z;
					    u_xlat0.x = max(u_xlat0.x, 0.0);
					    u_xlat0.x = u_xlat0.x * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.xxx * u_xlat3.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb0 = u_xlat1.w>=u_xlat0.x;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    SV_Target0.w = u_xlatb0 ? 1.0 : float(0.0);
					    u_xlat0.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0.x = (-u_xlat0.x) + 1.0;
					    u_xlat0.x = u_xlat0.x * _ProjectionParams.z;
					    u_xlat0.x = max(u_xlat0.x, 0.0);
					    u_xlat0.x = u_xlat0.x * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.xxx * u_xlat3.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendAlpha" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0.x = (-u_xlat0.x) + 1.0;
					    u_xlat0.x = u_xlat0.x * _ProjectionParams.z;
					    u_xlat0.x = max(u_xlat0.x, 0.0);
					    u_xlat0.x = u_xlat0.x * unity_FogParams.y;
					    u_xlat0.x = exp2((-u_xlat0.x));
					    u_xlat0.x = min(u_xlat0.x, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    SV_Target0.xyz = u_xlat0.xxx * u_xlat3.xyz + unity_FogColor.xyz;
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0.x;
					    SV_Target0.w = u_xlatb0 ? 1.0 : float(0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0.x = (-u_xlat0.x) + 1.0;
					    u_xlat0.x = u_xlat0.x * _ProjectionParams.z;
					    u_xlat0.x = max(u_xlat0.x, 0.0);
					    u_xlat0.x = u_xlat0.x * unity_FogParams.y;
					    u_xlat0.x = exp2((-u_xlat0.x));
					    u_xlat0.x = min(u_xlat0.x, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    SV_Target0.xyz = u_xlat0.xxx * u_xlat3.xyz + unity_FogColor.xyz;
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0.x;
					    SV_Target0.w = u_xlatb0 ? 1.0 : float(0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0.x = (-u_xlat0.x) + 1.0;
					    u_xlat0.x = u_xlat0.x * _ProjectionParams.z;
					    u_xlat0.x = max(u_xlat0.x, 0.0);
					    u_xlat0.x = u_xlat0.x * unity_FogParams.y;
					    u_xlat0.x = exp2((-u_xlat0.x));
					    u_xlat0.x = min(u_xlat0.x, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    SV_Target0.xyz = u_xlat0.xxx * u_xlat3.xyz + unity_FogColor.xyz;
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0.x;
					    SV_Target0.w = u_xlatb0 ? 1.0 : float(0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0.x = (-u_xlat0.x) + 1.0;
					    u_xlat0.x = u_xlat0.x * _ProjectionParams.z;
					    u_xlat0.x = max(u_xlat0.x, 0.0);
					    u_xlat0.x = u_xlat0.x * unity_FogParams.y;
					    u_xlat0.x = exp2((-u_xlat0.x));
					    u_xlat0.x = min(u_xlat0.x, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    SV_Target0.xyz = u_xlat0.xxx * u_xlat3.xyz + unity_FogColor.xyz;
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0.x;
					    SV_Target0.w = u_xlatb0 ? 1.0 : float(0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendAlpha" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0.x = (-u_xlat0.x) + 1.0;
					    u_xlat0.x = u_xlat0.x * _ProjectionParams.z;
					    u_xlat0.x = max(u_xlat0.x, 0.0);
					    u_xlat0.x = u_xlat0.x * unity_FogParams.x;
					    u_xlat0.x = u_xlat0.x * (-u_xlat0.x);
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    SV_Target0.xyz = u_xlat0.xxx * u_xlat3.xyz + unity_FogColor.xyz;
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0.x;
					    SV_Target0.w = u_xlatb0 ? 1.0 : float(0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0.x = (-u_xlat0.x) + 1.0;
					    u_xlat0.x = u_xlat0.x * _ProjectionParams.z;
					    u_xlat0.x = max(u_xlat0.x, 0.0);
					    u_xlat0.x = u_xlat0.x * unity_FogParams.x;
					    u_xlat0.x = u_xlat0.x * (-u_xlat0.x);
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    SV_Target0.xyz = u_xlat0.xxx * u_xlat3.xyz + unity_FogColor.xyz;
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0.x;
					    SV_Target0.w = u_xlatb0 ? 1.0 : float(0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0.x = (-u_xlat0.x) + 1.0;
					    u_xlat0.x = u_xlat0.x * _ProjectionParams.z;
					    u_xlat0.x = max(u_xlat0.x, 0.0);
					    u_xlat0.x = u_xlat0.x * unity_FogParams.x;
					    u_xlat0.x = u_xlat0.x * (-u_xlat0.x);
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    SV_Target0.xyz = u_xlat0.xxx * u_xlat3.xyz + unity_FogColor.xyz;
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0.x;
					    SV_Target0.w = u_xlatb0 ? 1.0 : float(0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0.x = (-u_xlat0.x) + 1.0;
					    u_xlat0.x = u_xlat0.x * _ProjectionParams.z;
					    u_xlat0.x = max(u_xlat0.x, 0.0);
					    u_xlat0.x = u_xlat0.x * unity_FogParams.x;
					    u_xlat0.x = u_xlat0.x * (-u_xlat0.x);
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    SV_Target0.xyz = u_xlat0.xxx * u_xlat3.xyz + unity_FogColor.xyz;
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0.x;
					    SV_Target0.w = u_xlatb0 ? 1.0 : float(0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendAlpha" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    SV_Target0.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat0 = u_xlatb0 ? 1.0 : float(0.0);
					    SV_Target0.w = u_xlat0 * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    SV_Target0.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat0 = u_xlatb0 ? 1.0 : float(0.0);
					    SV_Target0.w = u_xlat0 * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendAlpha" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[7];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb0 = u_xlat1.w>=u_xlat0.x;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    SV_Target0.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat0.x = u_xlatb0 ? 1.0 : float(0.0);
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[6];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb0 = u_xlat1.w>=u_xlat0.x;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    SV_Target0.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat0.x = u_xlatb0 ? 1.0 : float(0.0);
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendAlpha" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + unity_FogColor.xyz;
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    u_xlat0 = u_xlatb0 ? 1.0 : float(0.0);
					    SV_Target0.w = u_xlat0 * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + unity_FogColor.xyz;
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    u_xlat0 = u_xlatb0 ? 1.0 : float(0.0);
					    SV_Target0.w = u_xlat0 * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb0 = u_xlat1.w>=u_xlat0.x;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    u_xlat0.x = u_xlatb0 ? 1.0 : float(0.0);
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    u_xlat0.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0.x = (-u_xlat0.x) + 1.0;
					    u_xlat0.x = u_xlat0.x * _ProjectionParams.z;
					    u_xlat0.x = max(u_xlat0.x, 0.0);
					    u_xlat0.x = u_xlat0.x * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.xxx * u_xlat3.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb0 = u_xlat1.w>=u_xlat0.x;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    u_xlat0.x = u_xlatb0 ? 1.0 : float(0.0);
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    u_xlat0.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0.x = (-u_xlat0.x) + 1.0;
					    u_xlat0.x = u_xlat0.x * _ProjectionParams.z;
					    u_xlat0.x = max(u_xlat0.x, 0.0);
					    u_xlat0.x = u_xlat0.x * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.xxx * u_xlat3.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendAlpha" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + unity_FogColor.xyz;
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    u_xlat0 = u_xlatb0 ? 1.0 : float(0.0);
					    SV_Target0.w = u_xlat0 * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + unity_FogColor.xyz;
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    u_xlat0 = u_xlatb0 ? 1.0 : float(0.0);
					    SV_Target0.w = u_xlat0 * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb0 = u_xlat1.w>=u_xlat0.x;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    u_xlat0.x = u_xlatb0 ? 1.0 : float(0.0);
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    u_xlat0.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0.x = (-u_xlat0.x) + 1.0;
					    u_xlat0.x = u_xlat0.x * _ProjectionParams.z;
					    u_xlat0.x = max(u_xlat0.x, 0.0);
					    u_xlat0.x = u_xlat0.x * unity_FogParams.y;
					    u_xlat0.x = exp2((-u_xlat0.x));
					    u_xlat0.x = min(u_xlat0.x, 1.0);
					    SV_Target0.xyz = u_xlat0.xxx * u_xlat3.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb0 = u_xlat1.w>=u_xlat0.x;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    u_xlat0.x = u_xlatb0 ? 1.0 : float(0.0);
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    u_xlat0.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0.x = (-u_xlat0.x) + 1.0;
					    u_xlat0.x = u_xlat0.x * _ProjectionParams.z;
					    u_xlat0.x = max(u_xlat0.x, 0.0);
					    u_xlat0.x = u_xlat0.x * unity_FogParams.y;
					    u_xlat0.x = exp2((-u_xlat0.x));
					    u_xlat0.x = min(u_xlat0.x, 1.0);
					    SV_Target0.xyz = u_xlat0.xxx * u_xlat3.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendAlpha" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + unity_FogColor.xyz;
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    u_xlat0 = u_xlatb0 ? 1.0 : float(0.0);
					    SV_Target0.w = u_xlat0 * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + unity_FogColor.xyz;
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    u_xlat0 = u_xlatb0 ? 1.0 : float(0.0);
					    SV_Target0.w = u_xlat0 * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb0 = u_xlat1.w>=u_xlat0.x;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    u_xlat0.x = u_xlatb0 ? 1.0 : float(0.0);
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    u_xlat0.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0.x = (-u_xlat0.x) + 1.0;
					    u_xlat0.x = u_xlat0.x * _ProjectionParams.z;
					    u_xlat0.x = max(u_xlat0.x, 0.0);
					    u_xlat0.x = u_xlat0.x * unity_FogParams.x;
					    u_xlat0.x = u_xlat0.x * (-u_xlat0.x);
					    u_xlat0.x = exp2(u_xlat0.x);
					    SV_Target0.xyz = u_xlat0.xxx * u_xlat3.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb0 = u_xlat1.w>=u_xlat0.x;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    u_xlat0.x = u_xlatb0 ? 1.0 : float(0.0);
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    u_xlat0.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0.x = (-u_xlat0.x) + 1.0;
					    u_xlat0.x = u_xlat0.x * _ProjectionParams.z;
					    u_xlat0.x = max(u_xlat0.x, 0.0);
					    u_xlat0.x = u_xlat0.x * unity_FogParams.x;
					    u_xlat0.x = u_xlat0.x * (-u_xlat0.x);
					    u_xlat0.x = exp2(u_xlat0.x);
					    SV_Target0.xyz = u_xlat0.xxx * u_xlat3.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendAlpha" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[7];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb0 = u_xlat1.w>=u_xlat0.x;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    SV_Target0.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat0.x = u_xlatb0 ? 1.0 : float(0.0);
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[6];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb0 = u_xlat1.w>=u_xlat0.x;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    SV_Target0.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat0.x = u_xlatb0 ? 1.0 : float(0.0);
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendAlpha" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[7];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb0 = u_xlat1.w>=u_xlat0.x;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    SV_Target0.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat0.x = u_xlatb0 ? 1.0 : float(0.0);
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[6];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb0 = u_xlat1.w>=u_xlat0.x;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    SV_Target0.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat0.x = u_xlatb0 ? 1.0 : float(0.0);
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendAlpha" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb0 = u_xlat1.w>=u_xlat0.x;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    u_xlat0.x = u_xlatb0 ? 1.0 : float(0.0);
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    u_xlat0.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0.x = (-u_xlat0.x) + 1.0;
					    u_xlat0.x = u_xlat0.x * _ProjectionParams.z;
					    u_xlat0.x = max(u_xlat0.x, 0.0);
					    u_xlat0.x = u_xlat0.x * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.xxx * u_xlat3.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb0 = u_xlat1.w>=u_xlat0.x;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    u_xlat0.x = u_xlatb0 ? 1.0 : float(0.0);
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    u_xlat0.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0.x = (-u_xlat0.x) + 1.0;
					    u_xlat0.x = u_xlat0.x * _ProjectionParams.z;
					    u_xlat0.x = max(u_xlat0.x, 0.0);
					    u_xlat0.x = u_xlat0.x * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.xxx * u_xlat3.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb0 = u_xlat1.w>=u_xlat0.x;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    u_xlat0.x = u_xlatb0 ? 1.0 : float(0.0);
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    u_xlat0.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0.x = (-u_xlat0.x) + 1.0;
					    u_xlat0.x = u_xlat0.x * _ProjectionParams.z;
					    u_xlat0.x = max(u_xlat0.x, 0.0);
					    u_xlat0.x = u_xlat0.x * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.xxx * u_xlat3.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb0 = u_xlat1.w>=u_xlat0.x;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    u_xlat0.x = u_xlatb0 ? 1.0 : float(0.0);
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    u_xlat0.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0.x = (-u_xlat0.x) + 1.0;
					    u_xlat0.x = u_xlat0.x * _ProjectionParams.z;
					    u_xlat0.x = max(u_xlat0.x, 0.0);
					    u_xlat0.x = u_xlat0.x * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.xxx * u_xlat3.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendAlpha" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb0 = u_xlat1.w>=u_xlat0.x;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    u_xlat0.x = u_xlatb0 ? 1.0 : float(0.0);
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    u_xlat0.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0.x = (-u_xlat0.x) + 1.0;
					    u_xlat0.x = u_xlat0.x * _ProjectionParams.z;
					    u_xlat0.x = max(u_xlat0.x, 0.0);
					    u_xlat0.x = u_xlat0.x * unity_FogParams.y;
					    u_xlat0.x = exp2((-u_xlat0.x));
					    u_xlat0.x = min(u_xlat0.x, 1.0);
					    SV_Target0.xyz = u_xlat0.xxx * u_xlat3.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb0 = u_xlat1.w>=u_xlat0.x;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    u_xlat0.x = u_xlatb0 ? 1.0 : float(0.0);
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    u_xlat0.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0.x = (-u_xlat0.x) + 1.0;
					    u_xlat0.x = u_xlat0.x * _ProjectionParams.z;
					    u_xlat0.x = max(u_xlat0.x, 0.0);
					    u_xlat0.x = u_xlat0.x * unity_FogParams.y;
					    u_xlat0.x = exp2((-u_xlat0.x));
					    u_xlat0.x = min(u_xlat0.x, 1.0);
					    SV_Target0.xyz = u_xlat0.xxx * u_xlat3.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb0 = u_xlat1.w>=u_xlat0.x;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    u_xlat0.x = u_xlatb0 ? 1.0 : float(0.0);
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    u_xlat0.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0.x = (-u_xlat0.x) + 1.0;
					    u_xlat0.x = u_xlat0.x * _ProjectionParams.z;
					    u_xlat0.x = max(u_xlat0.x, 0.0);
					    u_xlat0.x = u_xlat0.x * unity_FogParams.y;
					    u_xlat0.x = exp2((-u_xlat0.x));
					    u_xlat0.x = min(u_xlat0.x, 1.0);
					    SV_Target0.xyz = u_xlat0.xxx * u_xlat3.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb0 = u_xlat1.w>=u_xlat0.x;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    u_xlat0.x = u_xlatb0 ? 1.0 : float(0.0);
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    u_xlat0.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0.x = (-u_xlat0.x) + 1.0;
					    u_xlat0.x = u_xlat0.x * _ProjectionParams.z;
					    u_xlat0.x = max(u_xlat0.x, 0.0);
					    u_xlat0.x = u_xlat0.x * unity_FogParams.y;
					    u_xlat0.x = exp2((-u_xlat0.x));
					    u_xlat0.x = min(u_xlat0.x, 1.0);
					    SV_Target0.xyz = u_xlat0.xxx * u_xlat3.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendAlpha" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb0 = u_xlat1.w>=u_xlat0.x;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    u_xlat0.x = u_xlatb0 ? 1.0 : float(0.0);
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    u_xlat0.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0.x = (-u_xlat0.x) + 1.0;
					    u_xlat0.x = u_xlat0.x * _ProjectionParams.z;
					    u_xlat0.x = max(u_xlat0.x, 0.0);
					    u_xlat0.x = u_xlat0.x * unity_FogParams.x;
					    u_xlat0.x = u_xlat0.x * (-u_xlat0.x);
					    u_xlat0.x = exp2(u_xlat0.x);
					    SV_Target0.xyz = u_xlat0.xxx * u_xlat3.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb0 = u_xlat1.w>=u_xlat0.x;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    u_xlat0.x = u_xlatb0 ? 1.0 : float(0.0);
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    u_xlat0.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0.x = (-u_xlat0.x) + 1.0;
					    u_xlat0.x = u_xlat0.x * _ProjectionParams.z;
					    u_xlat0.x = max(u_xlat0.x, 0.0);
					    u_xlat0.x = u_xlat0.x * unity_FogParams.x;
					    u_xlat0.x = u_xlat0.x * (-u_xlat0.x);
					    u_xlat0.x = exp2(u_xlat0.x);
					    SV_Target0.xyz = u_xlat0.xxx * u_xlat3.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb0 = u_xlat1.w>=u_xlat0.x;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    u_xlat0.x = u_xlatb0 ? 1.0 : float(0.0);
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    u_xlat0.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0.x = (-u_xlat0.x) + 1.0;
					    u_xlat0.x = u_xlat0.x * _ProjectionParams.z;
					    u_xlat0.x = max(u_xlat0.x, 0.0);
					    u_xlat0.x = u_xlat0.x * unity_FogParams.x;
					    u_xlat0.x = u_xlat0.x * (-u_xlat0.x);
					    u_xlat0.x = exp2(u_xlat0.x);
					    SV_Target0.xyz = u_xlat0.xxx * u_xlat3.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb0 = u_xlat1.w>=u_xlat0.x;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    u_xlat0.x = u_xlatb0 ? 1.0 : float(0.0);
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    u_xlat0.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0.x = (-u_xlat0.x) + 1.0;
					    u_xlat0.x = u_xlat0.x * _ProjectionParams.z;
					    u_xlat0.x = max(u_xlat0.x, 0.0);
					    u_xlat0.x = u_xlat0.x * unity_FogParams.x;
					    u_xlat0.x = u_xlat0.x * (-u_xlat0.x);
					    u_xlat0.x = exp2(u_xlat0.x);
					    SV_Target0.xyz = u_xlat0.xxx * u_xlat3.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat0 = u_xlat0 * vs_COLOR0;
					    SV_Target0.w = u_xlat0.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat0 = u_xlat0 * vs_COLOR0;
					    SV_Target0.w = u_xlat0.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat0 = u_xlat0 * vs_COLOR0;
					    SV_Target0.w = u_xlat0.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat0 = u_xlat0 * vs_COLOR0;
					    SV_Target0.w = u_xlat0.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2.xyz = u_xlat1.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    u_xlat1.x = u_xlat1.w * vs_COLOR0.w;
					    SV_Target0.w = u_xlat1.x;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat2.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2.xyz = u_xlat1.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    u_xlat1.x = u_xlat1.w * vs_COLOR0.w;
					    SV_Target0.w = u_xlat1.x;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat2.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2.xyz = u_xlat1.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    u_xlat1.x = u_xlat1.w * vs_COLOR0.w;
					    SV_Target0.w = u_xlat1.x;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat2.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2.xyz = u_xlat1.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    u_xlat1.x = u_xlat1.w * vs_COLOR0.w;
					    SV_Target0.w = u_xlat1.x;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat2.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2.xyz = u_xlat1.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    u_xlat1.x = u_xlat1.w * vs_COLOR0.w;
					    SV_Target0.w = u_xlat1.x;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat2.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2.xyz = u_xlat1.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    u_xlat1.x = u_xlat1.w * vs_COLOR0.w;
					    SV_Target0.w = u_xlat1.x;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat2.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2.xyz = u_xlat1.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    u_xlat1.x = u_xlat1.w * vs_COLOR0.w;
					    SV_Target0.w = u_xlat1.x;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat2.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2.xyz = u_xlat1.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    u_xlat1.x = u_xlat1.w * vs_COLOR0.w;
					    SV_Target0.w = u_xlat1.x;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat2.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2.xyz = u_xlat1.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    u_xlat1.x = u_xlat1.w * vs_COLOR0.w;
					    SV_Target0.w = u_xlat1.x;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat2.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2.xyz = u_xlat1.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    u_xlat1.x = u_xlat1.w * vs_COLOR0.w;
					    SV_Target0.w = u_xlat1.x;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat2.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2.xyz = u_xlat1.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    u_xlat1.x = u_xlat1.w * vs_COLOR0.w;
					    SV_Target0.w = u_xlat1.x;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat2.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2.xyz = u_xlat1.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    u_xlat1.x = u_xlat1.w * vs_COLOR0.w;
					    SV_Target0.w = u_xlat1.x;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat2.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat0 = u_xlat0 * vs_COLOR0;
					    SV_Target0.w = u_xlat0.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat0 = u_xlat0 * vs_COLOR0;
					    SV_Target0.w = u_xlat0.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat0 = u_xlat0 * vs_COLOR0;
					    SV_Target0.w = u_xlat0.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat0 = u_xlat0 * vs_COLOR0;
					    SV_Target0.w = u_xlat0.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2.xyz = u_xlat1.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    u_xlat1.x = u_xlat1.w * vs_COLOR0.w;
					    SV_Target0.w = u_xlat1.x;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat2.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2.xyz = u_xlat1.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    u_xlat1.x = u_xlat1.w * vs_COLOR0.w;
					    SV_Target0.w = u_xlat1.x;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat2.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2.xyz = u_xlat1.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    u_xlat1.x = u_xlat1.w * vs_COLOR0.w;
					    SV_Target0.w = u_xlat1.x;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat2.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2.xyz = u_xlat1.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    u_xlat1.x = u_xlat1.w * vs_COLOR0.w;
					    SV_Target0.w = u_xlat1.x;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat2.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2.xyz = u_xlat1.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    u_xlat1.x = u_xlat1.w * vs_COLOR0.w;
					    SV_Target0.w = u_xlat1.x;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat2.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2.xyz = u_xlat1.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    u_xlat1.x = u_xlat1.w * vs_COLOR0.w;
					    SV_Target0.w = u_xlat1.x;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat2.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2.xyz = u_xlat1.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    u_xlat1.x = u_xlat1.w * vs_COLOR0.w;
					    SV_Target0.w = u_xlat1.x;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat2.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2.xyz = u_xlat1.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    u_xlat1.x = u_xlat1.w * vs_COLOR0.w;
					    SV_Target0.w = u_xlat1.x;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat2.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2.xyz = u_xlat1.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    u_xlat1.x = u_xlat1.w * vs_COLOR0.w;
					    SV_Target0.w = u_xlat1.x;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat2.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2.xyz = u_xlat1.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    u_xlat1.x = u_xlat1.w * vs_COLOR0.w;
					    SV_Target0.w = u_xlat1.x;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat2.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2.xyz = u_xlat1.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    u_xlat1.x = u_xlat1.w * vs_COLOR0.w;
					    SV_Target0.w = u_xlat1.x;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat2.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2.xyz = u_xlat1.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    u_xlat1.x = u_xlat1.w * vs_COLOR0.w;
					    SV_Target0.w = u_xlat1.x;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat2.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat0 = u_xlat0.wxyz * vs_COLOR0.wxyz;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.yzw;
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat0 = u_xlat0.wxyz * vs_COLOR0.wxyz;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.yzw;
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat0 = u_xlat0.wxyz * vs_COLOR0.wxyz;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.yzw;
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat0 = u_xlat0.wxyz * vs_COLOR0.wxyz;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.yzw;
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2.xyz = u_xlat1.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    u_xlat1.x = u_xlat1.w * vs_COLOR0.w;
					    u_xlat1.x = u_xlat1.x;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat1.x * vs_TEXCOORD4;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat2.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2.xyz = u_xlat1.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    u_xlat1.x = u_xlat1.w * vs_COLOR0.w;
					    u_xlat1.x = u_xlat1.x;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat1.x * vs_TEXCOORD4;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat2.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2.xyz = u_xlat1.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    u_xlat1.x = u_xlat1.w * vs_COLOR0.w;
					    u_xlat1.x = u_xlat1.x;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat1.x * vs_TEXCOORD4;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat2.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2.xyz = u_xlat1.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    u_xlat1.x = u_xlat1.w * vs_COLOR0.w;
					    u_xlat1.x = u_xlat1.x;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat1.x * vs_TEXCOORD4;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat2.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2.xyz = u_xlat1.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    u_xlat1.x = u_xlat1.w * vs_COLOR0.w;
					    u_xlat1.x = u_xlat1.x;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat1.x * vs_TEXCOORD4;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat2.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2.xyz = u_xlat1.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    u_xlat1.x = u_xlat1.w * vs_COLOR0.w;
					    u_xlat1.x = u_xlat1.x;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat1.x * vs_TEXCOORD4;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat2.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2.xyz = u_xlat1.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    u_xlat1.x = u_xlat1.w * vs_COLOR0.w;
					    u_xlat1.x = u_xlat1.x;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat1.x * vs_TEXCOORD4;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat2.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2.xyz = u_xlat1.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    u_xlat1.x = u_xlat1.w * vs_COLOR0.w;
					    u_xlat1.x = u_xlat1.x;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat1.x * vs_TEXCOORD4;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat2.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2.xyz = u_xlat1.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    u_xlat1.x = u_xlat1.w * vs_COLOR0.w;
					    u_xlat1.x = u_xlat1.x;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat1.x * vs_TEXCOORD4;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat2.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2.xyz = u_xlat1.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    u_xlat1.x = u_xlat1.w * vs_COLOR0.w;
					    u_xlat1.x = u_xlat1.x;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat1.x * vs_TEXCOORD4;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat2.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2.xyz = u_xlat1.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    u_xlat1.x = u_xlat1.w * vs_COLOR0.w;
					    u_xlat1.x = u_xlat1.x;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat1.x * vs_TEXCOORD4;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat2.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2.xyz = u_xlat1.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    u_xlat1.x = u_xlat1.w * vs_COLOR0.w;
					    u_xlat1.x = u_xlat1.x;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat1.x * vs_TEXCOORD4;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat2.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat0 = u_xlat0.wxyz * vs_COLOR0.wxyz;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.yzw;
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat0 = u_xlat0.wxyz * vs_COLOR0.wxyz;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.yzw;
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat0 = u_xlat0.wxyz * vs_COLOR0.wxyz;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.yzw;
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat0 = u_xlat0.wxyz * vs_COLOR0.wxyz;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.yzw;
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2.xyz = u_xlat1.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    u_xlat1.x = u_xlat1.w * vs_COLOR0.w;
					    u_xlat1.x = u_xlat1.x;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat1.x * vs_TEXCOORD4;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat2.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2.xyz = u_xlat1.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    u_xlat1.x = u_xlat1.w * vs_COLOR0.w;
					    u_xlat1.x = u_xlat1.x;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat1.x * vs_TEXCOORD4;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat2.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2.xyz = u_xlat1.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    u_xlat1.x = u_xlat1.w * vs_COLOR0.w;
					    u_xlat1.x = u_xlat1.x;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat1.x * vs_TEXCOORD4;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat2.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2.xyz = u_xlat1.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    u_xlat1.x = u_xlat1.w * vs_COLOR0.w;
					    u_xlat1.x = u_xlat1.x;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat1.x * vs_TEXCOORD4;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat2.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2.xyz = u_xlat1.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    u_xlat1.x = u_xlat1.w * vs_COLOR0.w;
					    u_xlat1.x = u_xlat1.x;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat1.x * vs_TEXCOORD4;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat2.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2.xyz = u_xlat1.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    u_xlat1.x = u_xlat1.w * vs_COLOR0.w;
					    u_xlat1.x = u_xlat1.x;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat1.x * vs_TEXCOORD4;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat2.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2.xyz = u_xlat1.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    u_xlat1.x = u_xlat1.w * vs_COLOR0.w;
					    u_xlat1.x = u_xlat1.x;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat1.x * vs_TEXCOORD4;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat2.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2.xyz = u_xlat1.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    u_xlat1.x = u_xlat1.w * vs_COLOR0.w;
					    u_xlat1.x = u_xlat1.x;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat1.x * vs_TEXCOORD4;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat2.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2.xyz = u_xlat1.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    u_xlat1.x = u_xlat1.w * vs_COLOR0.w;
					    u_xlat1.x = u_xlat1.x;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat1.x * vs_TEXCOORD4;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat2.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2.xyz = u_xlat1.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    u_xlat1.x = u_xlat1.w * vs_COLOR0.w;
					    u_xlat1.x = u_xlat1.x;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat1.x * vs_TEXCOORD4;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat2.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2.xyz = u_xlat1.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    u_xlat1.x = u_xlat1.w * vs_COLOR0.w;
					    u_xlat1.x = u_xlat1.x;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat1.x * vs_TEXCOORD4;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat2.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2.xyz = u_xlat1.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    u_xlat1.x = u_xlat1.w * vs_COLOR0.w;
					    u_xlat1.x = u_xlat1.x;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat1.x * vs_TEXCOORD4;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat2.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					float u_xlat1;
					bool u_xlatb1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1 = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat0.w = u_xlat0.w * u_xlat1;
					    u_xlat0 = u_xlat0 * vs_COLOR0;
					    SV_Target0.w = u_xlat0.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					float u_xlat1;
					bool u_xlatb1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1 = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat0.w = u_xlat0.w * u_xlat1;
					    u_xlat0 = u_xlat0 * vs_COLOR0;
					    SV_Target0.w = u_xlat0.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					float u_xlat1;
					bool u_xlatb1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1 = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat0.w = u_xlat0.w * u_xlat1;
					    u_xlat0 = u_xlat0 * vs_COLOR0;
					    SV_Target0.w = u_xlat0.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					float u_xlat1;
					bool u_xlatb1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1 = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat0.w = u_xlat0.w * u_xlat1;
					    u_xlat0 = u_xlat0 * vs_COLOR0;
					    SV_Target0.w = u_xlat0.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					float u_xlat1;
					bool u_xlatb1;
					float u_xlat6;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1 = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat6 = u_xlat0.w * u_xlat1;
					    u_xlat0.xyz = u_xlat0.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    u_xlat6 = u_xlat6 * vs_COLOR0.w;
					    SV_Target0.w = u_xlat6;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    u_xlat6 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat6 = (-u_xlat6) + 1.0;
					    u_xlat6 = u_xlat6 * _ProjectionParams.z;
					    u_xlat6 = max(u_xlat6, 0.0);
					    u_xlat6 = u_xlat6 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat6 = clamp(u_xlat6, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat6) * u_xlat0.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					float u_xlat1;
					bool u_xlatb1;
					float u_xlat6;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1 = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat6 = u_xlat0.w * u_xlat1;
					    u_xlat0.xyz = u_xlat0.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    u_xlat6 = u_xlat6 * vs_COLOR0.w;
					    SV_Target0.w = u_xlat6;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    u_xlat6 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat6 = (-u_xlat6) + 1.0;
					    u_xlat6 = u_xlat6 * _ProjectionParams.z;
					    u_xlat6 = max(u_xlat6, 0.0);
					    u_xlat6 = u_xlat6 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat6 = clamp(u_xlat6, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat6) * u_xlat0.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					float u_xlat1;
					bool u_xlatb1;
					float u_xlat6;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1 = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat6 = u_xlat0.w * u_xlat1;
					    u_xlat0.xyz = u_xlat0.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    u_xlat6 = u_xlat6 * vs_COLOR0.w;
					    SV_Target0.w = u_xlat6;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    u_xlat6 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat6 = (-u_xlat6) + 1.0;
					    u_xlat6 = u_xlat6 * _ProjectionParams.z;
					    u_xlat6 = max(u_xlat6, 0.0);
					    u_xlat6 = u_xlat6 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat6 = clamp(u_xlat6, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat6) * u_xlat0.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					float u_xlat1;
					bool u_xlatb1;
					float u_xlat6;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1 = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat6 = u_xlat0.w * u_xlat1;
					    u_xlat0.xyz = u_xlat0.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    u_xlat6 = u_xlat6 * vs_COLOR0.w;
					    SV_Target0.w = u_xlat6;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    u_xlat6 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat6 = (-u_xlat6) + 1.0;
					    u_xlat6 = u_xlat6 * _ProjectionParams.z;
					    u_xlat6 = max(u_xlat6, 0.0);
					    u_xlat6 = u_xlat6 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat6 = clamp(u_xlat6, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat6) * u_xlat0.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2 = u_xlat1 + u_xlat1;
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1 = u_xlat2 * _TintColor;
					    u_xlat3.x = u_xlat3.x * u_xlat1.w;
					    u_xlat3.x = u_xlat3.x * vs_COLOR0.w;
					    SV_Target0.w = u_xlat3.x;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    u_xlat3.xyz = u_xlat1.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2 = u_xlat1 + u_xlat1;
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1 = u_xlat2 * _TintColor;
					    u_xlat3.x = u_xlat3.x * u_xlat1.w;
					    u_xlat3.x = u_xlat3.x * vs_COLOR0.w;
					    SV_Target0.w = u_xlat3.x;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    u_xlat3.xyz = u_xlat1.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2 = u_xlat1 + u_xlat1;
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1 = u_xlat2 * _TintColor;
					    u_xlat3.x = u_xlat3.x * u_xlat1.w;
					    u_xlat3.x = u_xlat3.x * vs_COLOR0.w;
					    SV_Target0.w = u_xlat3.x;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    u_xlat3.xyz = u_xlat1.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2 = u_xlat1 + u_xlat1;
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1 = u_xlat2 * _TintColor;
					    u_xlat3.x = u_xlat3.x * u_xlat1.w;
					    u_xlat3.x = u_xlat3.x * vs_COLOR0.w;
					    SV_Target0.w = u_xlat3.x;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    u_xlat3.xyz = u_xlat1.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2 = u_xlat1 + u_xlat1;
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1 = u_xlat2 * _TintColor;
					    u_xlat3.x = u_xlat3.x * u_xlat1.w;
					    u_xlat3.x = u_xlat3.x * vs_COLOR0.w;
					    SV_Target0.w = u_xlat3.x;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    u_xlat3.xyz = u_xlat1.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2 = u_xlat1 + u_xlat1;
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1 = u_xlat2 * _TintColor;
					    u_xlat3.x = u_xlat3.x * u_xlat1.w;
					    u_xlat3.x = u_xlat3.x * vs_COLOR0.w;
					    SV_Target0.w = u_xlat3.x;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    u_xlat3.xyz = u_xlat1.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2 = u_xlat1 + u_xlat1;
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1 = u_xlat2 * _TintColor;
					    u_xlat3.x = u_xlat3.x * u_xlat1.w;
					    u_xlat3.x = u_xlat3.x * vs_COLOR0.w;
					    SV_Target0.w = u_xlat3.x;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    u_xlat3.xyz = u_xlat1.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2 = u_xlat1 + u_xlat1;
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1 = u_xlat2 * _TintColor;
					    u_xlat3.x = u_xlat3.x * u_xlat1.w;
					    u_xlat3.x = u_xlat3.x * vs_COLOR0.w;
					    SV_Target0.w = u_xlat3.x;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    u_xlat3.xyz = u_xlat1.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					float u_xlat1;
					bool u_xlatb1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1 = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat0.w = u_xlat0.w * u_xlat1;
					    u_xlat0 = u_xlat0 * vs_COLOR0;
					    SV_Target0.w = u_xlat0.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					float u_xlat1;
					bool u_xlatb1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1 = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat0.w = u_xlat0.w * u_xlat1;
					    u_xlat0 = u_xlat0 * vs_COLOR0;
					    SV_Target0.w = u_xlat0.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					float u_xlat1;
					bool u_xlatb1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1 = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat0.w = u_xlat0.w * u_xlat1;
					    u_xlat0 = u_xlat0 * vs_COLOR0;
					    SV_Target0.w = u_xlat0.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					float u_xlat1;
					bool u_xlatb1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1 = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat0.w = u_xlat0.w * u_xlat1;
					    u_xlat0 = u_xlat0 * vs_COLOR0;
					    SV_Target0.w = u_xlat0.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					float u_xlat1;
					bool u_xlatb1;
					float u_xlat6;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1 = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat6 = u_xlat0.w * u_xlat1;
					    u_xlat0.xyz = u_xlat0.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    u_xlat6 = u_xlat6 * vs_COLOR0.w;
					    SV_Target0.w = u_xlat6;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    u_xlat6 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat6 = (-u_xlat6) + 1.0;
					    u_xlat6 = u_xlat6 * _ProjectionParams.z;
					    u_xlat6 = max(u_xlat6, 0.0);
					    u_xlat6 = u_xlat6 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat6 = clamp(u_xlat6, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat6) * u_xlat0.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					float u_xlat1;
					bool u_xlatb1;
					float u_xlat6;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1 = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat6 = u_xlat0.w * u_xlat1;
					    u_xlat0.xyz = u_xlat0.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    u_xlat6 = u_xlat6 * vs_COLOR0.w;
					    SV_Target0.w = u_xlat6;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    u_xlat6 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat6 = (-u_xlat6) + 1.0;
					    u_xlat6 = u_xlat6 * _ProjectionParams.z;
					    u_xlat6 = max(u_xlat6, 0.0);
					    u_xlat6 = u_xlat6 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat6 = clamp(u_xlat6, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat6) * u_xlat0.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					float u_xlat1;
					bool u_xlatb1;
					float u_xlat6;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1 = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat6 = u_xlat0.w * u_xlat1;
					    u_xlat0.xyz = u_xlat0.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    u_xlat6 = u_xlat6 * vs_COLOR0.w;
					    SV_Target0.w = u_xlat6;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    u_xlat6 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat6 = (-u_xlat6) + 1.0;
					    u_xlat6 = u_xlat6 * _ProjectionParams.z;
					    u_xlat6 = max(u_xlat6, 0.0);
					    u_xlat6 = u_xlat6 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat6 = clamp(u_xlat6, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat6) * u_xlat0.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					float u_xlat1;
					bool u_xlatb1;
					float u_xlat6;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1 = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat6 = u_xlat0.w * u_xlat1;
					    u_xlat0.xyz = u_xlat0.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    u_xlat6 = u_xlat6 * vs_COLOR0.w;
					    SV_Target0.w = u_xlat6;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    u_xlat6 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat6 = (-u_xlat6) + 1.0;
					    u_xlat6 = u_xlat6 * _ProjectionParams.z;
					    u_xlat6 = max(u_xlat6, 0.0);
					    u_xlat6 = u_xlat6 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat6 = clamp(u_xlat6, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat6) * u_xlat0.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2 = u_xlat1 + u_xlat1;
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1 = u_xlat2 * _TintColor;
					    u_xlat3.x = u_xlat3.x * u_xlat1.w;
					    u_xlat3.x = u_xlat3.x * vs_COLOR0.w;
					    SV_Target0.w = u_xlat3.x;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    u_xlat3.xyz = u_xlat1.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2 = u_xlat1 + u_xlat1;
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1 = u_xlat2 * _TintColor;
					    u_xlat3.x = u_xlat3.x * u_xlat1.w;
					    u_xlat3.x = u_xlat3.x * vs_COLOR0.w;
					    SV_Target0.w = u_xlat3.x;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    u_xlat3.xyz = u_xlat1.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2 = u_xlat1 + u_xlat1;
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1 = u_xlat2 * _TintColor;
					    u_xlat3.x = u_xlat3.x * u_xlat1.w;
					    u_xlat3.x = u_xlat3.x * vs_COLOR0.w;
					    SV_Target0.w = u_xlat3.x;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    u_xlat3.xyz = u_xlat1.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2 = u_xlat1 + u_xlat1;
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1 = u_xlat2 * _TintColor;
					    u_xlat3.x = u_xlat3.x * u_xlat1.w;
					    u_xlat3.x = u_xlat3.x * vs_COLOR0.w;
					    SV_Target0.w = u_xlat3.x;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    u_xlat3.xyz = u_xlat1.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2 = u_xlat1 + u_xlat1;
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1 = u_xlat2 * _TintColor;
					    u_xlat3.x = u_xlat3.x * u_xlat1.w;
					    u_xlat3.x = u_xlat3.x * vs_COLOR0.w;
					    SV_Target0.w = u_xlat3.x;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    u_xlat3.xyz = u_xlat1.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2 = u_xlat1 + u_xlat1;
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1 = u_xlat2 * _TintColor;
					    u_xlat3.x = u_xlat3.x * u_xlat1.w;
					    u_xlat3.x = u_xlat3.x * vs_COLOR0.w;
					    SV_Target0.w = u_xlat3.x;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    u_xlat3.xyz = u_xlat1.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2 = u_xlat1 + u_xlat1;
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1 = u_xlat2 * _TintColor;
					    u_xlat3.x = u_xlat3.x * u_xlat1.w;
					    u_xlat3.x = u_xlat3.x * vs_COLOR0.w;
					    SV_Target0.w = u_xlat3.x;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    u_xlat3.xyz = u_xlat1.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2 = u_xlat1 + u_xlat1;
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1 = u_xlat2 * _TintColor;
					    u_xlat3.x = u_xlat3.x * u_xlat1.w;
					    u_xlat3.x = u_xlat3.x * vs_COLOR0.w;
					    SV_Target0.w = u_xlat3.x;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    u_xlat3.xyz = u_xlat1.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					float u_xlat1;
					bool u_xlatb1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1 = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat0.w = u_xlat0.w * u_xlat1;
					    u_xlat0 = u_xlat0.wxyz * vs_COLOR0.wxyz;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.yzw;
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					float u_xlat1;
					bool u_xlatb1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1 = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat0.w = u_xlat0.w * u_xlat1;
					    u_xlat0 = u_xlat0.wxyz * vs_COLOR0.wxyz;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.yzw;
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					float u_xlat1;
					bool u_xlatb1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1 = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat0.w = u_xlat0.w * u_xlat1;
					    u_xlat0 = u_xlat0.wxyz * vs_COLOR0.wxyz;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.yzw;
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					float u_xlat1;
					bool u_xlatb1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1 = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat0.w = u_xlat0.w * u_xlat1;
					    u_xlat0 = u_xlat0.wxyz * vs_COLOR0.wxyz;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.yzw;
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					float u_xlat1;
					bool u_xlatb1;
					float u_xlat6;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1 = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat6 = u_xlat0.w * u_xlat1;
					    u_xlat0.xyz = u_xlat0.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    u_xlat1 = u_xlat6 * vs_COLOR0.w;
					    u_xlat1 = u_xlat1;
					    u_xlat1 = clamp(u_xlat1, 0.0, 1.0);
					    SV_Target0.w = u_xlat1 * vs_TEXCOORD4;
					    u_xlat6 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat6 = (-u_xlat6) + 1.0;
					    u_xlat6 = u_xlat6 * _ProjectionParams.z;
					    u_xlat6 = max(u_xlat6, 0.0);
					    u_xlat6 = u_xlat6 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat6 = clamp(u_xlat6, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat6) * u_xlat0.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					float u_xlat1;
					bool u_xlatb1;
					float u_xlat6;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1 = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat6 = u_xlat0.w * u_xlat1;
					    u_xlat0.xyz = u_xlat0.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    u_xlat1 = u_xlat6 * vs_COLOR0.w;
					    u_xlat1 = u_xlat1;
					    u_xlat1 = clamp(u_xlat1, 0.0, 1.0);
					    SV_Target0.w = u_xlat1 * vs_TEXCOORD4;
					    u_xlat6 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat6 = (-u_xlat6) + 1.0;
					    u_xlat6 = u_xlat6 * _ProjectionParams.z;
					    u_xlat6 = max(u_xlat6, 0.0);
					    u_xlat6 = u_xlat6 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat6 = clamp(u_xlat6, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat6) * u_xlat0.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					float u_xlat1;
					bool u_xlatb1;
					float u_xlat6;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1 = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat6 = u_xlat0.w * u_xlat1;
					    u_xlat0.xyz = u_xlat0.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    u_xlat1 = u_xlat6 * vs_COLOR0.w;
					    u_xlat1 = u_xlat1;
					    u_xlat1 = clamp(u_xlat1, 0.0, 1.0);
					    SV_Target0.w = u_xlat1 * vs_TEXCOORD4;
					    u_xlat6 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat6 = (-u_xlat6) + 1.0;
					    u_xlat6 = u_xlat6 * _ProjectionParams.z;
					    u_xlat6 = max(u_xlat6, 0.0);
					    u_xlat6 = u_xlat6 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat6 = clamp(u_xlat6, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat6) * u_xlat0.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					float u_xlat1;
					bool u_xlatb1;
					float u_xlat6;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1 = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat6 = u_xlat0.w * u_xlat1;
					    u_xlat0.xyz = u_xlat0.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    u_xlat1 = u_xlat6 * vs_COLOR0.w;
					    u_xlat1 = u_xlat1;
					    u_xlat1 = clamp(u_xlat1, 0.0, 1.0);
					    SV_Target0.w = u_xlat1 * vs_TEXCOORD4;
					    u_xlat6 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat6 = (-u_xlat6) + 1.0;
					    u_xlat6 = u_xlat6 * _ProjectionParams.z;
					    u_xlat6 = max(u_xlat6, 0.0);
					    u_xlat6 = u_xlat6 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat6 = clamp(u_xlat6, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat6) * u_xlat0.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					float u_xlat1;
					bool u_xlatb1;
					float u_xlat6;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1 = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat6 = u_xlat0.w * u_xlat1;
					    u_xlat0.xyz = u_xlat0.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    u_xlat1 = u_xlat6 * vs_COLOR0.w;
					    u_xlat1 = u_xlat1;
					    u_xlat1 = clamp(u_xlat1, 0.0, 1.0);
					    SV_Target0.w = u_xlat1 * vs_TEXCOORD4;
					    u_xlat6 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat6 = (-u_xlat6) + 1.0;
					    u_xlat6 = u_xlat6 * _ProjectionParams.z;
					    u_xlat6 = max(u_xlat6, 0.0);
					    u_xlat6 = u_xlat6 * unity_FogParams.y;
					    u_xlat6 = exp2((-u_xlat6));
					    u_xlat6 = min(u_xlat6, 1.0);
					    SV_Target0.xyz = vec3(u_xlat6) * u_xlat0.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					float u_xlat1;
					bool u_xlatb1;
					float u_xlat6;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1 = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat6 = u_xlat0.w * u_xlat1;
					    u_xlat0.xyz = u_xlat0.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    u_xlat1 = u_xlat6 * vs_COLOR0.w;
					    u_xlat1 = u_xlat1;
					    u_xlat1 = clamp(u_xlat1, 0.0, 1.0);
					    SV_Target0.w = u_xlat1 * vs_TEXCOORD4;
					    u_xlat6 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat6 = (-u_xlat6) + 1.0;
					    u_xlat6 = u_xlat6 * _ProjectionParams.z;
					    u_xlat6 = max(u_xlat6, 0.0);
					    u_xlat6 = u_xlat6 * unity_FogParams.y;
					    u_xlat6 = exp2((-u_xlat6));
					    u_xlat6 = min(u_xlat6, 1.0);
					    SV_Target0.xyz = vec3(u_xlat6) * u_xlat0.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					float u_xlat1;
					bool u_xlatb1;
					float u_xlat6;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1 = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat6 = u_xlat0.w * u_xlat1;
					    u_xlat0.xyz = u_xlat0.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    u_xlat1 = u_xlat6 * vs_COLOR0.w;
					    u_xlat1 = u_xlat1;
					    u_xlat1 = clamp(u_xlat1, 0.0, 1.0);
					    SV_Target0.w = u_xlat1 * vs_TEXCOORD4;
					    u_xlat6 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat6 = (-u_xlat6) + 1.0;
					    u_xlat6 = u_xlat6 * _ProjectionParams.z;
					    u_xlat6 = max(u_xlat6, 0.0);
					    u_xlat6 = u_xlat6 * unity_FogParams.y;
					    u_xlat6 = exp2((-u_xlat6));
					    u_xlat6 = min(u_xlat6, 1.0);
					    SV_Target0.xyz = vec3(u_xlat6) * u_xlat0.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					float u_xlat1;
					bool u_xlatb1;
					float u_xlat6;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1 = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat6 = u_xlat0.w * u_xlat1;
					    u_xlat0.xyz = u_xlat0.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    u_xlat1 = u_xlat6 * vs_COLOR0.w;
					    u_xlat1 = u_xlat1;
					    u_xlat1 = clamp(u_xlat1, 0.0, 1.0);
					    SV_Target0.w = u_xlat1 * vs_TEXCOORD4;
					    u_xlat6 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat6 = (-u_xlat6) + 1.0;
					    u_xlat6 = u_xlat6 * _ProjectionParams.z;
					    u_xlat6 = max(u_xlat6, 0.0);
					    u_xlat6 = u_xlat6 * unity_FogParams.y;
					    u_xlat6 = exp2((-u_xlat6));
					    u_xlat6 = min(u_xlat6, 1.0);
					    SV_Target0.xyz = vec3(u_xlat6) * u_xlat0.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					float u_xlat1;
					bool u_xlatb1;
					float u_xlat6;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1 = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat6 = u_xlat0.w * u_xlat1;
					    u_xlat0.xyz = u_xlat0.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    u_xlat1 = u_xlat6 * vs_COLOR0.w;
					    u_xlat1 = u_xlat1;
					    u_xlat1 = clamp(u_xlat1, 0.0, 1.0);
					    SV_Target0.w = u_xlat1 * vs_TEXCOORD4;
					    u_xlat6 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat6 = (-u_xlat6) + 1.0;
					    u_xlat6 = u_xlat6 * _ProjectionParams.z;
					    u_xlat6 = max(u_xlat6, 0.0);
					    u_xlat6 = u_xlat6 * unity_FogParams.x;
					    u_xlat6 = u_xlat6 * (-u_xlat6);
					    u_xlat6 = exp2(u_xlat6);
					    SV_Target0.xyz = vec3(u_xlat6) * u_xlat0.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					float u_xlat1;
					bool u_xlatb1;
					float u_xlat6;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1 = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat6 = u_xlat0.w * u_xlat1;
					    u_xlat0.xyz = u_xlat0.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    u_xlat1 = u_xlat6 * vs_COLOR0.w;
					    u_xlat1 = u_xlat1;
					    u_xlat1 = clamp(u_xlat1, 0.0, 1.0);
					    SV_Target0.w = u_xlat1 * vs_TEXCOORD4;
					    u_xlat6 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat6 = (-u_xlat6) + 1.0;
					    u_xlat6 = u_xlat6 * _ProjectionParams.z;
					    u_xlat6 = max(u_xlat6, 0.0);
					    u_xlat6 = u_xlat6 * unity_FogParams.x;
					    u_xlat6 = u_xlat6 * (-u_xlat6);
					    u_xlat6 = exp2(u_xlat6);
					    SV_Target0.xyz = vec3(u_xlat6) * u_xlat0.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					float u_xlat1;
					bool u_xlatb1;
					float u_xlat6;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1 = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat6 = u_xlat0.w * u_xlat1;
					    u_xlat0.xyz = u_xlat0.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    u_xlat1 = u_xlat6 * vs_COLOR0.w;
					    u_xlat1 = u_xlat1;
					    u_xlat1 = clamp(u_xlat1, 0.0, 1.0);
					    SV_Target0.w = u_xlat1 * vs_TEXCOORD4;
					    u_xlat6 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat6 = (-u_xlat6) + 1.0;
					    u_xlat6 = u_xlat6 * _ProjectionParams.z;
					    u_xlat6 = max(u_xlat6, 0.0);
					    u_xlat6 = u_xlat6 * unity_FogParams.x;
					    u_xlat6 = u_xlat6 * (-u_xlat6);
					    u_xlat6 = exp2(u_xlat6);
					    SV_Target0.xyz = vec3(u_xlat6) * u_xlat0.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					float u_xlat1;
					bool u_xlatb1;
					float u_xlat6;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1 = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat6 = u_xlat0.w * u_xlat1;
					    u_xlat0.xyz = u_xlat0.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    u_xlat1 = u_xlat6 * vs_COLOR0.w;
					    u_xlat1 = u_xlat1;
					    u_xlat1 = clamp(u_xlat1, 0.0, 1.0);
					    SV_Target0.w = u_xlat1 * vs_TEXCOORD4;
					    u_xlat6 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat6 = (-u_xlat6) + 1.0;
					    u_xlat6 = u_xlat6 * _ProjectionParams.z;
					    u_xlat6 = max(u_xlat6, 0.0);
					    u_xlat6 = u_xlat6 * unity_FogParams.x;
					    u_xlat6 = u_xlat6 * (-u_xlat6);
					    u_xlat6 = exp2(u_xlat6);
					    SV_Target0.xyz = vec3(u_xlat6) * u_xlat0.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					float u_xlat1;
					bool u_xlatb1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1 = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat0.w = u_xlat0.w * u_xlat1;
					    u_xlat0 = u_xlat0.wxyz * vs_COLOR0.wxyz;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.yzw;
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					float u_xlat1;
					bool u_xlatb1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1 = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat0.w = u_xlat0.w * u_xlat1;
					    u_xlat0 = u_xlat0.wxyz * vs_COLOR0.wxyz;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.yzw;
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					float u_xlat1;
					bool u_xlatb1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1 = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat0.w = u_xlat0.w * u_xlat1;
					    u_xlat0 = u_xlat0.wxyz * vs_COLOR0.wxyz;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.yzw;
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					float u_xlat1;
					bool u_xlatb1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1 = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat0.w = u_xlat0.w * u_xlat1;
					    u_xlat0 = u_xlat0.wxyz * vs_COLOR0.wxyz;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.yzw;
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					float u_xlat1;
					bool u_xlatb1;
					float u_xlat6;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1 = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat6 = u_xlat0.w * u_xlat1;
					    u_xlat0.xyz = u_xlat0.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    u_xlat1 = u_xlat6 * vs_COLOR0.w;
					    u_xlat1 = u_xlat1;
					    u_xlat1 = clamp(u_xlat1, 0.0, 1.0);
					    SV_Target0.w = u_xlat1 * vs_TEXCOORD4;
					    u_xlat6 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat6 = (-u_xlat6) + 1.0;
					    u_xlat6 = u_xlat6 * _ProjectionParams.z;
					    u_xlat6 = max(u_xlat6, 0.0);
					    u_xlat6 = u_xlat6 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat6 = clamp(u_xlat6, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat6) * u_xlat0.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					float u_xlat1;
					bool u_xlatb1;
					float u_xlat6;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1 = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat6 = u_xlat0.w * u_xlat1;
					    u_xlat0.xyz = u_xlat0.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    u_xlat1 = u_xlat6 * vs_COLOR0.w;
					    u_xlat1 = u_xlat1;
					    u_xlat1 = clamp(u_xlat1, 0.0, 1.0);
					    SV_Target0.w = u_xlat1 * vs_TEXCOORD4;
					    u_xlat6 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat6 = (-u_xlat6) + 1.0;
					    u_xlat6 = u_xlat6 * _ProjectionParams.z;
					    u_xlat6 = max(u_xlat6, 0.0);
					    u_xlat6 = u_xlat6 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat6 = clamp(u_xlat6, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat6) * u_xlat0.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					float u_xlat1;
					bool u_xlatb1;
					float u_xlat6;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1 = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat6 = u_xlat0.w * u_xlat1;
					    u_xlat0.xyz = u_xlat0.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    u_xlat1 = u_xlat6 * vs_COLOR0.w;
					    u_xlat1 = u_xlat1;
					    u_xlat1 = clamp(u_xlat1, 0.0, 1.0);
					    SV_Target0.w = u_xlat1 * vs_TEXCOORD4;
					    u_xlat6 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat6 = (-u_xlat6) + 1.0;
					    u_xlat6 = u_xlat6 * _ProjectionParams.z;
					    u_xlat6 = max(u_xlat6, 0.0);
					    u_xlat6 = u_xlat6 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat6 = clamp(u_xlat6, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat6) * u_xlat0.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					float u_xlat1;
					bool u_xlatb1;
					float u_xlat6;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1 = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat6 = u_xlat0.w * u_xlat1;
					    u_xlat0.xyz = u_xlat0.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    u_xlat1 = u_xlat6 * vs_COLOR0.w;
					    u_xlat1 = u_xlat1;
					    u_xlat1 = clamp(u_xlat1, 0.0, 1.0);
					    SV_Target0.w = u_xlat1 * vs_TEXCOORD4;
					    u_xlat6 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat6 = (-u_xlat6) + 1.0;
					    u_xlat6 = u_xlat6 * _ProjectionParams.z;
					    u_xlat6 = max(u_xlat6, 0.0);
					    u_xlat6 = u_xlat6 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat6 = clamp(u_xlat6, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat6) * u_xlat0.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					float u_xlat1;
					bool u_xlatb1;
					float u_xlat6;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1 = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat6 = u_xlat0.w * u_xlat1;
					    u_xlat0.xyz = u_xlat0.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    u_xlat1 = u_xlat6 * vs_COLOR0.w;
					    u_xlat1 = u_xlat1;
					    u_xlat1 = clamp(u_xlat1, 0.0, 1.0);
					    SV_Target0.w = u_xlat1 * vs_TEXCOORD4;
					    u_xlat6 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat6 = (-u_xlat6) + 1.0;
					    u_xlat6 = u_xlat6 * _ProjectionParams.z;
					    u_xlat6 = max(u_xlat6, 0.0);
					    u_xlat6 = u_xlat6 * unity_FogParams.y;
					    u_xlat6 = exp2((-u_xlat6));
					    u_xlat6 = min(u_xlat6, 1.0);
					    SV_Target0.xyz = vec3(u_xlat6) * u_xlat0.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					float u_xlat1;
					bool u_xlatb1;
					float u_xlat6;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1 = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat6 = u_xlat0.w * u_xlat1;
					    u_xlat0.xyz = u_xlat0.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    u_xlat1 = u_xlat6 * vs_COLOR0.w;
					    u_xlat1 = u_xlat1;
					    u_xlat1 = clamp(u_xlat1, 0.0, 1.0);
					    SV_Target0.w = u_xlat1 * vs_TEXCOORD4;
					    u_xlat6 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat6 = (-u_xlat6) + 1.0;
					    u_xlat6 = u_xlat6 * _ProjectionParams.z;
					    u_xlat6 = max(u_xlat6, 0.0);
					    u_xlat6 = u_xlat6 * unity_FogParams.y;
					    u_xlat6 = exp2((-u_xlat6));
					    u_xlat6 = min(u_xlat6, 1.0);
					    SV_Target0.xyz = vec3(u_xlat6) * u_xlat0.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					float u_xlat1;
					bool u_xlatb1;
					float u_xlat6;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1 = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat6 = u_xlat0.w * u_xlat1;
					    u_xlat0.xyz = u_xlat0.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    u_xlat1 = u_xlat6 * vs_COLOR0.w;
					    u_xlat1 = u_xlat1;
					    u_xlat1 = clamp(u_xlat1, 0.0, 1.0);
					    SV_Target0.w = u_xlat1 * vs_TEXCOORD4;
					    u_xlat6 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat6 = (-u_xlat6) + 1.0;
					    u_xlat6 = u_xlat6 * _ProjectionParams.z;
					    u_xlat6 = max(u_xlat6, 0.0);
					    u_xlat6 = u_xlat6 * unity_FogParams.y;
					    u_xlat6 = exp2((-u_xlat6));
					    u_xlat6 = min(u_xlat6, 1.0);
					    SV_Target0.xyz = vec3(u_xlat6) * u_xlat0.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					float u_xlat1;
					bool u_xlatb1;
					float u_xlat6;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1 = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat6 = u_xlat0.w * u_xlat1;
					    u_xlat0.xyz = u_xlat0.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    u_xlat1 = u_xlat6 * vs_COLOR0.w;
					    u_xlat1 = u_xlat1;
					    u_xlat1 = clamp(u_xlat1, 0.0, 1.0);
					    SV_Target0.w = u_xlat1 * vs_TEXCOORD4;
					    u_xlat6 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat6 = (-u_xlat6) + 1.0;
					    u_xlat6 = u_xlat6 * _ProjectionParams.z;
					    u_xlat6 = max(u_xlat6, 0.0);
					    u_xlat6 = u_xlat6 * unity_FogParams.y;
					    u_xlat6 = exp2((-u_xlat6));
					    u_xlat6 = min(u_xlat6, 1.0);
					    SV_Target0.xyz = vec3(u_xlat6) * u_xlat0.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					float u_xlat1;
					bool u_xlatb1;
					float u_xlat6;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1 = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat6 = u_xlat0.w * u_xlat1;
					    u_xlat0.xyz = u_xlat0.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    u_xlat1 = u_xlat6 * vs_COLOR0.w;
					    u_xlat1 = u_xlat1;
					    u_xlat1 = clamp(u_xlat1, 0.0, 1.0);
					    SV_Target0.w = u_xlat1 * vs_TEXCOORD4;
					    u_xlat6 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat6 = (-u_xlat6) + 1.0;
					    u_xlat6 = u_xlat6 * _ProjectionParams.z;
					    u_xlat6 = max(u_xlat6, 0.0);
					    u_xlat6 = u_xlat6 * unity_FogParams.x;
					    u_xlat6 = u_xlat6 * (-u_xlat6);
					    u_xlat6 = exp2(u_xlat6);
					    SV_Target0.xyz = vec3(u_xlat6) * u_xlat0.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					float u_xlat1;
					bool u_xlatb1;
					float u_xlat6;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1 = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat6 = u_xlat0.w * u_xlat1;
					    u_xlat0.xyz = u_xlat0.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    u_xlat1 = u_xlat6 * vs_COLOR0.w;
					    u_xlat1 = u_xlat1;
					    u_xlat1 = clamp(u_xlat1, 0.0, 1.0);
					    SV_Target0.w = u_xlat1 * vs_TEXCOORD4;
					    u_xlat6 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat6 = (-u_xlat6) + 1.0;
					    u_xlat6 = u_xlat6 * _ProjectionParams.z;
					    u_xlat6 = max(u_xlat6, 0.0);
					    u_xlat6 = u_xlat6 * unity_FogParams.x;
					    u_xlat6 = u_xlat6 * (-u_xlat6);
					    u_xlat6 = exp2(u_xlat6);
					    SV_Target0.xyz = vec3(u_xlat6) * u_xlat0.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					float u_xlat1;
					bool u_xlatb1;
					float u_xlat6;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1 = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat6 = u_xlat0.w * u_xlat1;
					    u_xlat0.xyz = u_xlat0.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    u_xlat1 = u_xlat6 * vs_COLOR0.w;
					    u_xlat1 = u_xlat1;
					    u_xlat1 = clamp(u_xlat1, 0.0, 1.0);
					    SV_Target0.w = u_xlat1 * vs_TEXCOORD4;
					    u_xlat6 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat6 = (-u_xlat6) + 1.0;
					    u_xlat6 = u_xlat6 * _ProjectionParams.z;
					    u_xlat6 = max(u_xlat6, 0.0);
					    u_xlat6 = u_xlat6 * unity_FogParams.x;
					    u_xlat6 = u_xlat6 * (-u_xlat6);
					    u_xlat6 = exp2(u_xlat6);
					    SV_Target0.xyz = vec3(u_xlat6) * u_xlat0.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					float u_xlat1;
					bool u_xlatb1;
					float u_xlat6;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1 = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat6 = u_xlat0.w * u_xlat1;
					    u_xlat0.xyz = u_xlat0.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    u_xlat1 = u_xlat6 * vs_COLOR0.w;
					    u_xlat1 = u_xlat1;
					    u_xlat1 = clamp(u_xlat1, 0.0, 1.0);
					    SV_Target0.w = u_xlat1 * vs_TEXCOORD4;
					    u_xlat6 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat6 = (-u_xlat6) + 1.0;
					    u_xlat6 = u_xlat6 * _ProjectionParams.z;
					    u_xlat6 = max(u_xlat6, 0.0);
					    u_xlat6 = u_xlat6 * unity_FogParams.x;
					    u_xlat6 = u_xlat6 * (-u_xlat6);
					    u_xlat6 = exp2(u_xlat6);
					    SV_Target0.xyz = vec3(u_xlat6) * u_xlat0.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    SV_Target0.xyz = u_xlat2.xyz * vs_COLOR0.xyz;
					    SV_Target0.w = u_xlatb0 ? 1.0 : float(0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    SV_Target0.xyz = u_xlat2.xyz * vs_COLOR0.xyz;
					    SV_Target0.w = u_xlatb0 ? 1.0 : float(0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    SV_Target0.xyz = u_xlat2.xyz * vs_COLOR0.xyz;
					    SV_Target0.w = u_xlatb0 ? 1.0 : float(0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    SV_Target0.xyz = u_xlat2.xyz * vs_COLOR0.xyz;
					    SV_Target0.w = u_xlatb0 ? 1.0 : float(0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat2.xyz + unity_FogColor.xyz;
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    SV_Target0.w = u_xlatb0 ? 1.0 : float(0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat2.xyz + unity_FogColor.xyz;
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    SV_Target0.w = u_xlatb0 ? 1.0 : float(0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat2.xyz + unity_FogColor.xyz;
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    SV_Target0.w = u_xlatb0 ? 1.0 : float(0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat2.xyz + unity_FogColor.xyz;
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    SV_Target0.w = u_xlatb0 ? 1.0 : float(0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat2.xyz + unity_FogColor.xyz;
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    SV_Target0.w = u_xlatb0 ? 1.0 : float(0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat2.xyz + unity_FogColor.xyz;
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    SV_Target0.w = u_xlatb0 ? 1.0 : float(0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat2.xyz + unity_FogColor.xyz;
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    SV_Target0.w = u_xlatb0 ? 1.0 : float(0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat2.xyz + unity_FogColor.xyz;
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    SV_Target0.w = u_xlatb0 ? 1.0 : float(0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat2.xyz + unity_FogColor.xyz;
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    SV_Target0.w = u_xlatb0 ? 1.0 : float(0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat2.xyz + unity_FogColor.xyz;
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    SV_Target0.w = u_xlatb0 ? 1.0 : float(0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat2.xyz + unity_FogColor.xyz;
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    SV_Target0.w = u_xlatb0 ? 1.0 : float(0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat2.xyz + unity_FogColor.xyz;
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    SV_Target0.w = u_xlatb0 ? 1.0 : float(0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    SV_Target0.xyz = u_xlat2.xyz * vs_COLOR0.xyz;
					    SV_Target0.w = u_xlatb0 ? 1.0 : float(0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    SV_Target0.xyz = u_xlat2.xyz * vs_COLOR0.xyz;
					    SV_Target0.w = u_xlatb0 ? 1.0 : float(0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    SV_Target0.xyz = u_xlat2.xyz * vs_COLOR0.xyz;
					    SV_Target0.w = u_xlatb0 ? 1.0 : float(0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    SV_Target0.xyz = u_xlat2.xyz * vs_COLOR0.xyz;
					    SV_Target0.w = u_xlatb0 ? 1.0 : float(0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat2.xyz + unity_FogColor.xyz;
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    SV_Target0.w = u_xlatb0 ? 1.0 : float(0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat2.xyz + unity_FogColor.xyz;
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    SV_Target0.w = u_xlatb0 ? 1.0 : float(0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat2.xyz + unity_FogColor.xyz;
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    SV_Target0.w = u_xlatb0 ? 1.0 : float(0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat2.xyz + unity_FogColor.xyz;
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    SV_Target0.w = u_xlatb0 ? 1.0 : float(0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat2.xyz + unity_FogColor.xyz;
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    SV_Target0.w = u_xlatb0 ? 1.0 : float(0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat2.xyz + unity_FogColor.xyz;
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    SV_Target0.w = u_xlatb0 ? 1.0 : float(0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat2.xyz + unity_FogColor.xyz;
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    SV_Target0.w = u_xlatb0 ? 1.0 : float(0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat2.xyz + unity_FogColor.xyz;
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    SV_Target0.w = u_xlatb0 ? 1.0 : float(0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat2.xyz + unity_FogColor.xyz;
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    SV_Target0.w = u_xlatb0 ? 1.0 : float(0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat2.xyz + unity_FogColor.xyz;
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    SV_Target0.w = u_xlatb0 ? 1.0 : float(0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat2.xyz + unity_FogColor.xyz;
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    SV_Target0.w = u_xlatb0 ? 1.0 : float(0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat2.xyz + unity_FogColor.xyz;
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    SV_Target0.w = u_xlatb0 ? 1.0 : float(0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    SV_Target0.xyz = u_xlat2.xyz * vs_COLOR0.xyz;
					    u_xlat0 = u_xlatb0 ? 1.0 : float(0.0);
					    SV_Target0.w = u_xlat0 * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    SV_Target0.xyz = u_xlat2.xyz * vs_COLOR0.xyz;
					    u_xlat0 = u_xlatb0 ? 1.0 : float(0.0);
					    SV_Target0.w = u_xlat0 * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    SV_Target0.xyz = u_xlat2.xyz * vs_COLOR0.xyz;
					    u_xlat0 = u_xlatb0 ? 1.0 : float(0.0);
					    SV_Target0.w = u_xlat0 * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    SV_Target0.xyz = u_xlat2.xyz * vs_COLOR0.xyz;
					    u_xlat0 = u_xlatb0 ? 1.0 : float(0.0);
					    SV_Target0.w = u_xlat0 * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat2.xyz + unity_FogColor.xyz;
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    u_xlat0 = u_xlatb0 ? 1.0 : float(0.0);
					    SV_Target0.w = u_xlat0 * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat2.xyz + unity_FogColor.xyz;
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    u_xlat0 = u_xlatb0 ? 1.0 : float(0.0);
					    SV_Target0.w = u_xlat0 * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat2.xyz + unity_FogColor.xyz;
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    u_xlat0 = u_xlatb0 ? 1.0 : float(0.0);
					    SV_Target0.w = u_xlat0 * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat2.xyz + unity_FogColor.xyz;
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    u_xlat0 = u_xlatb0 ? 1.0 : float(0.0);
					    SV_Target0.w = u_xlat0 * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat2.xyz + unity_FogColor.xyz;
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    u_xlat0 = u_xlatb0 ? 1.0 : float(0.0);
					    SV_Target0.w = u_xlat0 * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat2.xyz + unity_FogColor.xyz;
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    u_xlat0 = u_xlatb0 ? 1.0 : float(0.0);
					    SV_Target0.w = u_xlat0 * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat2.xyz + unity_FogColor.xyz;
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    u_xlat0 = u_xlatb0 ? 1.0 : float(0.0);
					    SV_Target0.w = u_xlat0 * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat2.xyz + unity_FogColor.xyz;
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    u_xlat0 = u_xlatb0 ? 1.0 : float(0.0);
					    SV_Target0.w = u_xlat0 * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat2.xyz + unity_FogColor.xyz;
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    u_xlat0 = u_xlatb0 ? 1.0 : float(0.0);
					    SV_Target0.w = u_xlat0 * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat2.xyz + unity_FogColor.xyz;
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    u_xlat0 = u_xlatb0 ? 1.0 : float(0.0);
					    SV_Target0.w = u_xlat0 * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat2.xyz + unity_FogColor.xyz;
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    u_xlat0 = u_xlatb0 ? 1.0 : float(0.0);
					    SV_Target0.w = u_xlat0 * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat2.xyz + unity_FogColor.xyz;
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    u_xlat0 = u_xlatb0 ? 1.0 : float(0.0);
					    SV_Target0.w = u_xlat0 * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    SV_Target0.xyz = u_xlat2.xyz * vs_COLOR0.xyz;
					    u_xlat0 = u_xlatb0 ? 1.0 : float(0.0);
					    SV_Target0.w = u_xlat0 * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    SV_Target0.xyz = u_xlat2.xyz * vs_COLOR0.xyz;
					    u_xlat0 = u_xlatb0 ? 1.0 : float(0.0);
					    SV_Target0.w = u_xlat0 * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    SV_Target0.xyz = u_xlat2.xyz * vs_COLOR0.xyz;
					    u_xlat0 = u_xlatb0 ? 1.0 : float(0.0);
					    SV_Target0.w = u_xlat0 * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    SV_Target0.xyz = u_xlat2.xyz * vs_COLOR0.xyz;
					    u_xlat0 = u_xlatb0 ? 1.0 : float(0.0);
					    SV_Target0.w = u_xlat0 * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat2.xyz + unity_FogColor.xyz;
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    u_xlat0 = u_xlatb0 ? 1.0 : float(0.0);
					    SV_Target0.w = u_xlat0 * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat2.xyz + unity_FogColor.xyz;
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    u_xlat0 = u_xlatb0 ? 1.0 : float(0.0);
					    SV_Target0.w = u_xlat0 * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat2.xyz + unity_FogColor.xyz;
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    u_xlat0 = u_xlatb0 ? 1.0 : float(0.0);
					    SV_Target0.w = u_xlat0 * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat2.xyz + unity_FogColor.xyz;
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    u_xlat0 = u_xlatb0 ? 1.0 : float(0.0);
					    SV_Target0.w = u_xlat0 * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat2.xyz + unity_FogColor.xyz;
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    u_xlat0 = u_xlatb0 ? 1.0 : float(0.0);
					    SV_Target0.w = u_xlat0 * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat2.xyz + unity_FogColor.xyz;
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    u_xlat0 = u_xlatb0 ? 1.0 : float(0.0);
					    SV_Target0.w = u_xlat0 * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat2.xyz + unity_FogColor.xyz;
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    u_xlat0 = u_xlatb0 ? 1.0 : float(0.0);
					    SV_Target0.w = u_xlat0 * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat2.xyz + unity_FogColor.xyz;
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    u_xlat0 = u_xlatb0 ? 1.0 : float(0.0);
					    SV_Target0.w = u_xlat0 * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat2.xyz + unity_FogColor.xyz;
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    u_xlat0 = u_xlatb0 ? 1.0 : float(0.0);
					    SV_Target0.w = u_xlat0 * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat2.xyz + unity_FogColor.xyz;
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    u_xlat0 = u_xlatb0 ? 1.0 : float(0.0);
					    SV_Target0.w = u_xlat0 * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat2.xyz + unity_FogColor.xyz;
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    u_xlat0 = u_xlatb0 ? 1.0 : float(0.0);
					    SV_Target0.w = u_xlat0 * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat2.xyz + unity_FogColor.xyz;
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    u_xlat0 = u_xlatb0 ? 1.0 : float(0.0);
					    SV_Target0.w = u_xlat0 * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat0 = u_xlat0 * vs_COLOR0;
					    SV_Target0.w = u_xlat0.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat0 = u_xlat0 * vs_COLOR0;
					    SV_Target0.w = u_xlat0.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[7];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    SV_Target0.w = u_xlat0.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[6];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    SV_Target0.w = u_xlat0.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2.xyz = u_xlat1.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    u_xlat1.x = u_xlat1.w * vs_COLOR0.w;
					    SV_Target0.w = u_xlat1.x;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat2.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2.xyz = u_xlat1.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    u_xlat1.x = u_xlat1.w * vs_COLOR0.w;
					    SV_Target0.w = u_xlat1.x;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat2.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat6;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat0.x = u_xlat0.x * u_xlat1.w;
					    SV_Target0.w = u_xlat0.x;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0.xyz = u_xlat1.xyz * u_xlat0.xyz + (-unity_FogColor.xyz);
					    u_xlat6 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat6 = (-u_xlat6) + 1.0;
					    u_xlat6 = u_xlat6 * _ProjectionParams.z;
					    u_xlat6 = max(u_xlat6, 0.0);
					    u_xlat6 = u_xlat6 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat6 = clamp(u_xlat6, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat6) * u_xlat0.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat6;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat0.x = u_xlat0.x * u_xlat1.w;
					    SV_Target0.w = u_xlat0.x;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0.xyz = u_xlat1.xyz * u_xlat0.xyz + (-unity_FogColor.xyz);
					    u_xlat6 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat6 = (-u_xlat6) + 1.0;
					    u_xlat6 = u_xlat6 * _ProjectionParams.z;
					    u_xlat6 = max(u_xlat6, 0.0);
					    u_xlat6 = u_xlat6 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat6 = clamp(u_xlat6, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat6) * u_xlat0.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2.xyz = u_xlat1.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    u_xlat1.x = u_xlat1.w * vs_COLOR0.w;
					    SV_Target0.w = u_xlat1.x;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat2.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2.xyz = u_xlat1.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    u_xlat1.x = u_xlat1.w * vs_COLOR0.w;
					    SV_Target0.w = u_xlat1.x;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat2.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0.x = (-u_xlat0.x) + 1.0;
					    u_xlat0.x = u_xlat0.x * _ProjectionParams.z;
					    u_xlat0.x = max(u_xlat0.x, 0.0);
					    u_xlat0.x = u_xlat0.x * unity_FogParams.y;
					    u_xlat0.x = exp2((-u_xlat0.x));
					    u_xlat0.x = min(u_xlat0.x, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2.xyz = vs_COLOR0.xyz;
					    u_xlat2.xyz = u_xlat1.xyz * u_xlat2.xyz + (-unity_FogColor.xyz);
					    SV_Target0.xyz = u_xlat0.xxx * u_xlat2.xyz + unity_FogColor.xyz;
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = u_xlat0.x * vs_COLOR0.w;
					    u_xlat0.x = u_xlat0.x * u_xlat1.w;
					    SV_Target0.w = u_xlat0.x;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0.x = (-u_xlat0.x) + 1.0;
					    u_xlat0.x = u_xlat0.x * _ProjectionParams.z;
					    u_xlat0.x = max(u_xlat0.x, 0.0);
					    u_xlat0.x = u_xlat0.x * unity_FogParams.y;
					    u_xlat0.x = exp2((-u_xlat0.x));
					    u_xlat0.x = min(u_xlat0.x, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2.xyz = vs_COLOR0.xyz;
					    u_xlat2.xyz = u_xlat1.xyz * u_xlat2.xyz + (-unity_FogColor.xyz);
					    SV_Target0.xyz = u_xlat0.xxx * u_xlat2.xyz + unity_FogColor.xyz;
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = u_xlat0.x * vs_COLOR0.w;
					    u_xlat0.x = u_xlat0.x * u_xlat1.w;
					    SV_Target0.w = u_xlat0.x;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2.xyz = u_xlat1.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    u_xlat1.x = u_xlat1.w * vs_COLOR0.w;
					    SV_Target0.w = u_xlat1.x;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat2.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2.xyz = u_xlat1.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    u_xlat1.x = u_xlat1.w * vs_COLOR0.w;
					    SV_Target0.w = u_xlat1.x;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat2.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0.x = (-u_xlat0.x) + 1.0;
					    u_xlat0.x = u_xlat0.x * _ProjectionParams.z;
					    u_xlat0.x = max(u_xlat0.x, 0.0);
					    u_xlat0.x = u_xlat0.x * unity_FogParams.x;
					    u_xlat0.x = u_xlat0.x * (-u_xlat0.x);
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2.xyz = vs_COLOR0.xyz;
					    u_xlat2.xyz = u_xlat1.xyz * u_xlat2.xyz + (-unity_FogColor.xyz);
					    SV_Target0.xyz = u_xlat0.xxx * u_xlat2.xyz + unity_FogColor.xyz;
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = u_xlat0.x * vs_COLOR0.w;
					    u_xlat0.x = u_xlat0.x * u_xlat1.w;
					    SV_Target0.w = u_xlat0.x;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0.x = (-u_xlat0.x) + 1.0;
					    u_xlat0.x = u_xlat0.x * _ProjectionParams.z;
					    u_xlat0.x = max(u_xlat0.x, 0.0);
					    u_xlat0.x = u_xlat0.x * unity_FogParams.x;
					    u_xlat0.x = u_xlat0.x * (-u_xlat0.x);
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2.xyz = vs_COLOR0.xyz;
					    u_xlat2.xyz = u_xlat1.xyz * u_xlat2.xyz + (-unity_FogColor.xyz);
					    SV_Target0.xyz = u_xlat0.xxx * u_xlat2.xyz + unity_FogColor.xyz;
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = u_xlat0.x * vs_COLOR0.w;
					    u_xlat0.x = u_xlat0.x * u_xlat1.w;
					    SV_Target0.w = u_xlat0.x;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[7];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    SV_Target0.w = u_xlat0.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[6];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    SV_Target0.w = u_xlat0.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[7];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    SV_Target0.w = u_xlat0.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[6];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    SV_Target0.w = u_xlat0.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat6;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat0.x = u_xlat0.x * u_xlat1.w;
					    SV_Target0.w = u_xlat0.x;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0.xyz = u_xlat1.xyz * u_xlat0.xyz + (-unity_FogColor.xyz);
					    u_xlat6 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat6 = (-u_xlat6) + 1.0;
					    u_xlat6 = u_xlat6 * _ProjectionParams.z;
					    u_xlat6 = max(u_xlat6, 0.0);
					    u_xlat6 = u_xlat6 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat6 = clamp(u_xlat6, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat6) * u_xlat0.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat6;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat0.x = u_xlat0.x * u_xlat1.w;
					    SV_Target0.w = u_xlat0.x;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0.xyz = u_xlat1.xyz * u_xlat0.xyz + (-unity_FogColor.xyz);
					    u_xlat6 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat6 = (-u_xlat6) + 1.0;
					    u_xlat6 = u_xlat6 * _ProjectionParams.z;
					    u_xlat6 = max(u_xlat6, 0.0);
					    u_xlat6 = u_xlat6 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat6 = clamp(u_xlat6, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat6) * u_xlat0.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat6;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat0.x = u_xlat0.x * u_xlat1.w;
					    SV_Target0.w = u_xlat0.x;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0.xyz = u_xlat1.xyz * u_xlat0.xyz + (-unity_FogColor.xyz);
					    u_xlat6 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat6 = (-u_xlat6) + 1.0;
					    u_xlat6 = u_xlat6 * _ProjectionParams.z;
					    u_xlat6 = max(u_xlat6, 0.0);
					    u_xlat6 = u_xlat6 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat6 = clamp(u_xlat6, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat6) * u_xlat0.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat6;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat0.x = u_xlat0.x * u_xlat1.w;
					    SV_Target0.w = u_xlat0.x;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0.xyz = u_xlat1.xyz * u_xlat0.xyz + (-unity_FogColor.xyz);
					    u_xlat6 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat6 = (-u_xlat6) + 1.0;
					    u_xlat6 = u_xlat6 * _ProjectionParams.z;
					    u_xlat6 = max(u_xlat6, 0.0);
					    u_xlat6 = u_xlat6 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat6 = clamp(u_xlat6, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat6) * u_xlat0.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0.x = (-u_xlat0.x) + 1.0;
					    u_xlat0.x = u_xlat0.x * _ProjectionParams.z;
					    u_xlat0.x = max(u_xlat0.x, 0.0);
					    u_xlat0.x = u_xlat0.x * unity_FogParams.y;
					    u_xlat0.x = exp2((-u_xlat0.x));
					    u_xlat0.x = min(u_xlat0.x, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2.xyz = vs_COLOR0.xyz;
					    u_xlat2.xyz = u_xlat1.xyz * u_xlat2.xyz + (-unity_FogColor.xyz);
					    SV_Target0.xyz = u_xlat0.xxx * u_xlat2.xyz + unity_FogColor.xyz;
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = u_xlat0.x * vs_COLOR0.w;
					    u_xlat0.x = u_xlat0.x * u_xlat1.w;
					    SV_Target0.w = u_xlat0.x;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0.x = (-u_xlat0.x) + 1.0;
					    u_xlat0.x = u_xlat0.x * _ProjectionParams.z;
					    u_xlat0.x = max(u_xlat0.x, 0.0);
					    u_xlat0.x = u_xlat0.x * unity_FogParams.y;
					    u_xlat0.x = exp2((-u_xlat0.x));
					    u_xlat0.x = min(u_xlat0.x, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2.xyz = vs_COLOR0.xyz;
					    u_xlat2.xyz = u_xlat1.xyz * u_xlat2.xyz + (-unity_FogColor.xyz);
					    SV_Target0.xyz = u_xlat0.xxx * u_xlat2.xyz + unity_FogColor.xyz;
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = u_xlat0.x * vs_COLOR0.w;
					    u_xlat0.x = u_xlat0.x * u_xlat1.w;
					    SV_Target0.w = u_xlat0.x;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0.x = (-u_xlat0.x) + 1.0;
					    u_xlat0.x = u_xlat0.x * _ProjectionParams.z;
					    u_xlat0.x = max(u_xlat0.x, 0.0);
					    u_xlat0.x = u_xlat0.x * unity_FogParams.y;
					    u_xlat0.x = exp2((-u_xlat0.x));
					    u_xlat0.x = min(u_xlat0.x, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2.xyz = vs_COLOR0.xyz;
					    u_xlat2.xyz = u_xlat1.xyz * u_xlat2.xyz + (-unity_FogColor.xyz);
					    SV_Target0.xyz = u_xlat0.xxx * u_xlat2.xyz + unity_FogColor.xyz;
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = u_xlat0.x * vs_COLOR0.w;
					    u_xlat0.x = u_xlat0.x * u_xlat1.w;
					    SV_Target0.w = u_xlat0.x;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0.x = (-u_xlat0.x) + 1.0;
					    u_xlat0.x = u_xlat0.x * _ProjectionParams.z;
					    u_xlat0.x = max(u_xlat0.x, 0.0);
					    u_xlat0.x = u_xlat0.x * unity_FogParams.y;
					    u_xlat0.x = exp2((-u_xlat0.x));
					    u_xlat0.x = min(u_xlat0.x, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2.xyz = vs_COLOR0.xyz;
					    u_xlat2.xyz = u_xlat1.xyz * u_xlat2.xyz + (-unity_FogColor.xyz);
					    SV_Target0.xyz = u_xlat0.xxx * u_xlat2.xyz + unity_FogColor.xyz;
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = u_xlat0.x * vs_COLOR0.w;
					    u_xlat0.x = u_xlat0.x * u_xlat1.w;
					    SV_Target0.w = u_xlat0.x;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0.x = (-u_xlat0.x) + 1.0;
					    u_xlat0.x = u_xlat0.x * _ProjectionParams.z;
					    u_xlat0.x = max(u_xlat0.x, 0.0);
					    u_xlat0.x = u_xlat0.x * unity_FogParams.x;
					    u_xlat0.x = u_xlat0.x * (-u_xlat0.x);
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2.xyz = vs_COLOR0.xyz;
					    u_xlat2.xyz = u_xlat1.xyz * u_xlat2.xyz + (-unity_FogColor.xyz);
					    SV_Target0.xyz = u_xlat0.xxx * u_xlat2.xyz + unity_FogColor.xyz;
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = u_xlat0.x * vs_COLOR0.w;
					    u_xlat0.x = u_xlat0.x * u_xlat1.w;
					    SV_Target0.w = u_xlat0.x;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0.x = (-u_xlat0.x) + 1.0;
					    u_xlat0.x = u_xlat0.x * _ProjectionParams.z;
					    u_xlat0.x = max(u_xlat0.x, 0.0);
					    u_xlat0.x = u_xlat0.x * unity_FogParams.x;
					    u_xlat0.x = u_xlat0.x * (-u_xlat0.x);
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2.xyz = vs_COLOR0.xyz;
					    u_xlat2.xyz = u_xlat1.xyz * u_xlat2.xyz + (-unity_FogColor.xyz);
					    SV_Target0.xyz = u_xlat0.xxx * u_xlat2.xyz + unity_FogColor.xyz;
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = u_xlat0.x * vs_COLOR0.w;
					    u_xlat0.x = u_xlat0.x * u_xlat1.w;
					    SV_Target0.w = u_xlat0.x;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0.x = (-u_xlat0.x) + 1.0;
					    u_xlat0.x = u_xlat0.x * _ProjectionParams.z;
					    u_xlat0.x = max(u_xlat0.x, 0.0);
					    u_xlat0.x = u_xlat0.x * unity_FogParams.x;
					    u_xlat0.x = u_xlat0.x * (-u_xlat0.x);
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2.xyz = vs_COLOR0.xyz;
					    u_xlat2.xyz = u_xlat1.xyz * u_xlat2.xyz + (-unity_FogColor.xyz);
					    SV_Target0.xyz = u_xlat0.xxx * u_xlat2.xyz + unity_FogColor.xyz;
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = u_xlat0.x * vs_COLOR0.w;
					    u_xlat0.x = u_xlat0.x * u_xlat1.w;
					    SV_Target0.w = u_xlat0.x;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0.x = (-u_xlat0.x) + 1.0;
					    u_xlat0.x = u_xlat0.x * _ProjectionParams.z;
					    u_xlat0.x = max(u_xlat0.x, 0.0);
					    u_xlat0.x = u_xlat0.x * unity_FogParams.x;
					    u_xlat0.x = u_xlat0.x * (-u_xlat0.x);
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2.xyz = vs_COLOR0.xyz;
					    u_xlat2.xyz = u_xlat1.xyz * u_xlat2.xyz + (-unity_FogColor.xyz);
					    SV_Target0.xyz = u_xlat0.xxx * u_xlat2.xyz + unity_FogColor.xyz;
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = u_xlat0.x * vs_COLOR0.w;
					    u_xlat0.x = u_xlat0.x * u_xlat1.w;
					    SV_Target0.w = u_xlat0.x;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat0 = u_xlat0.wxyz * vs_COLOR0.wxyz;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.yzw;
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat0 = u_xlat0.wxyz * vs_COLOR0.wxyz;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.yzw;
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[7];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0.wxyz * u_xlat1.wxyz;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.yzw;
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[6];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0.wxyz * u_xlat1.wxyz;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.yzw;
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2.xyz = u_xlat1.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    u_xlat1.x = u_xlat1.w * vs_COLOR0.w;
					    u_xlat1.x = u_xlat1.x;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat1.x * vs_TEXCOORD4;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat2.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2.xyz = u_xlat1.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    u_xlat1.x = u_xlat1.w * vs_COLOR0.w;
					    u_xlat1.x = u_xlat1.x;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat1.x * vs_TEXCOORD4;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat2.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat6;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat0.x = u_xlat0.x * u_xlat1.w;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0.xyz = u_xlat1.xyz * u_xlat0.xyz + (-unity_FogColor.xyz);
					    u_xlat6 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat6 = (-u_xlat6) + 1.0;
					    u_xlat6 = u_xlat6 * _ProjectionParams.z;
					    u_xlat6 = max(u_xlat6, 0.0);
					    u_xlat6 = u_xlat6 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat6 = clamp(u_xlat6, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat6) * u_xlat0.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat6;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat0.x = u_xlat0.x * u_xlat1.w;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0.xyz = u_xlat1.xyz * u_xlat0.xyz + (-unity_FogColor.xyz);
					    u_xlat6 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat6 = (-u_xlat6) + 1.0;
					    u_xlat6 = u_xlat6 * _ProjectionParams.z;
					    u_xlat6 = max(u_xlat6, 0.0);
					    u_xlat6 = u_xlat6 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat6 = clamp(u_xlat6, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat6) * u_xlat0.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2.xyz = u_xlat1.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    u_xlat1.x = u_xlat1.w * vs_COLOR0.w;
					    u_xlat1.x = u_xlat1.x;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat1.x * vs_TEXCOORD4;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat2.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2.xyz = u_xlat1.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    u_xlat1.x = u_xlat1.w * vs_COLOR0.w;
					    u_xlat1.x = u_xlat1.x;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat1.x * vs_TEXCOORD4;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat2.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat6;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat0.x = u_xlat0.x * u_xlat1.w;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0.xyz = u_xlat1.xyz * u_xlat0.xyz + (-unity_FogColor.xyz);
					    u_xlat6 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat6 = (-u_xlat6) + 1.0;
					    u_xlat6 = u_xlat6 * _ProjectionParams.z;
					    u_xlat6 = max(u_xlat6, 0.0);
					    u_xlat6 = u_xlat6 * unity_FogParams.y;
					    u_xlat6 = exp2((-u_xlat6));
					    u_xlat6 = min(u_xlat6, 1.0);
					    SV_Target0.xyz = vec3(u_xlat6) * u_xlat0.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat6;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat0.x = u_xlat0.x * u_xlat1.w;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0.xyz = u_xlat1.xyz * u_xlat0.xyz + (-unity_FogColor.xyz);
					    u_xlat6 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat6 = (-u_xlat6) + 1.0;
					    u_xlat6 = u_xlat6 * _ProjectionParams.z;
					    u_xlat6 = max(u_xlat6, 0.0);
					    u_xlat6 = u_xlat6 * unity_FogParams.y;
					    u_xlat6 = exp2((-u_xlat6));
					    u_xlat6 = min(u_xlat6, 1.0);
					    SV_Target0.xyz = vec3(u_xlat6) * u_xlat0.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2.xyz = u_xlat1.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    u_xlat1.x = u_xlat1.w * vs_COLOR0.w;
					    u_xlat1.x = u_xlat1.x;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat1.x * vs_TEXCOORD4;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat2.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2.xyz = u_xlat1.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    u_xlat1.x = u_xlat1.w * vs_COLOR0.w;
					    u_xlat1.x = u_xlat1.x;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat1.x * vs_TEXCOORD4;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat2.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat6;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat0.x = u_xlat0.x * u_xlat1.w;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0.xyz = u_xlat1.xyz * u_xlat0.xyz + (-unity_FogColor.xyz);
					    u_xlat6 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat6 = (-u_xlat6) + 1.0;
					    u_xlat6 = u_xlat6 * _ProjectionParams.z;
					    u_xlat6 = max(u_xlat6, 0.0);
					    u_xlat6 = u_xlat6 * unity_FogParams.x;
					    u_xlat6 = u_xlat6 * (-u_xlat6);
					    u_xlat6 = exp2(u_xlat6);
					    SV_Target0.xyz = vec3(u_xlat6) * u_xlat0.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat6;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat0.x = u_xlat0.x * u_xlat1.w;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0.xyz = u_xlat1.xyz * u_xlat0.xyz + (-unity_FogColor.xyz);
					    u_xlat6 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat6 = (-u_xlat6) + 1.0;
					    u_xlat6 = u_xlat6 * _ProjectionParams.z;
					    u_xlat6 = max(u_xlat6, 0.0);
					    u_xlat6 = u_xlat6 * unity_FogParams.x;
					    u_xlat6 = u_xlat6 * (-u_xlat6);
					    u_xlat6 = exp2(u_xlat6);
					    SV_Target0.xyz = vec3(u_xlat6) * u_xlat0.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[7];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0.wxyz * u_xlat1.wxyz;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.yzw;
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[6];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0.wxyz * u_xlat1.wxyz;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.yzw;
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[7];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0.wxyz * u_xlat1.wxyz;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.yzw;
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[6];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0.wxyz * u_xlat1.wxyz;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.yzw;
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat6;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat0.x = u_xlat0.x * u_xlat1.w;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0.xyz = u_xlat1.xyz * u_xlat0.xyz + (-unity_FogColor.xyz);
					    u_xlat6 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat6 = (-u_xlat6) + 1.0;
					    u_xlat6 = u_xlat6 * _ProjectionParams.z;
					    u_xlat6 = max(u_xlat6, 0.0);
					    u_xlat6 = u_xlat6 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat6 = clamp(u_xlat6, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat6) * u_xlat0.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat6;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat0.x = u_xlat0.x * u_xlat1.w;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0.xyz = u_xlat1.xyz * u_xlat0.xyz + (-unity_FogColor.xyz);
					    u_xlat6 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat6 = (-u_xlat6) + 1.0;
					    u_xlat6 = u_xlat6 * _ProjectionParams.z;
					    u_xlat6 = max(u_xlat6, 0.0);
					    u_xlat6 = u_xlat6 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat6 = clamp(u_xlat6, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat6) * u_xlat0.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat6;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat0.x = u_xlat0.x * u_xlat1.w;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0.xyz = u_xlat1.xyz * u_xlat0.xyz + (-unity_FogColor.xyz);
					    u_xlat6 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat6 = (-u_xlat6) + 1.0;
					    u_xlat6 = u_xlat6 * _ProjectionParams.z;
					    u_xlat6 = max(u_xlat6, 0.0);
					    u_xlat6 = u_xlat6 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat6 = clamp(u_xlat6, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat6) * u_xlat0.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat6;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat0.x = u_xlat0.x * u_xlat1.w;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0.xyz = u_xlat1.xyz * u_xlat0.xyz + (-unity_FogColor.xyz);
					    u_xlat6 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat6 = (-u_xlat6) + 1.0;
					    u_xlat6 = u_xlat6 * _ProjectionParams.z;
					    u_xlat6 = max(u_xlat6, 0.0);
					    u_xlat6 = u_xlat6 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat6 = clamp(u_xlat6, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat6) * u_xlat0.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat6;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat0.x = u_xlat0.x * u_xlat1.w;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0.xyz = u_xlat1.xyz * u_xlat0.xyz + (-unity_FogColor.xyz);
					    u_xlat6 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat6 = (-u_xlat6) + 1.0;
					    u_xlat6 = u_xlat6 * _ProjectionParams.z;
					    u_xlat6 = max(u_xlat6, 0.0);
					    u_xlat6 = u_xlat6 * unity_FogParams.y;
					    u_xlat6 = exp2((-u_xlat6));
					    u_xlat6 = min(u_xlat6, 1.0);
					    SV_Target0.xyz = vec3(u_xlat6) * u_xlat0.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat6;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat0.x = u_xlat0.x * u_xlat1.w;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0.xyz = u_xlat1.xyz * u_xlat0.xyz + (-unity_FogColor.xyz);
					    u_xlat6 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat6 = (-u_xlat6) + 1.0;
					    u_xlat6 = u_xlat6 * _ProjectionParams.z;
					    u_xlat6 = max(u_xlat6, 0.0);
					    u_xlat6 = u_xlat6 * unity_FogParams.y;
					    u_xlat6 = exp2((-u_xlat6));
					    u_xlat6 = min(u_xlat6, 1.0);
					    SV_Target0.xyz = vec3(u_xlat6) * u_xlat0.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat6;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat0.x = u_xlat0.x * u_xlat1.w;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0.xyz = u_xlat1.xyz * u_xlat0.xyz + (-unity_FogColor.xyz);
					    u_xlat6 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat6 = (-u_xlat6) + 1.0;
					    u_xlat6 = u_xlat6 * _ProjectionParams.z;
					    u_xlat6 = max(u_xlat6, 0.0);
					    u_xlat6 = u_xlat6 * unity_FogParams.y;
					    u_xlat6 = exp2((-u_xlat6));
					    u_xlat6 = min(u_xlat6, 1.0);
					    SV_Target0.xyz = vec3(u_xlat6) * u_xlat0.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat6;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat0.x = u_xlat0.x * u_xlat1.w;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0.xyz = u_xlat1.xyz * u_xlat0.xyz + (-unity_FogColor.xyz);
					    u_xlat6 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat6 = (-u_xlat6) + 1.0;
					    u_xlat6 = u_xlat6 * _ProjectionParams.z;
					    u_xlat6 = max(u_xlat6, 0.0);
					    u_xlat6 = u_xlat6 * unity_FogParams.y;
					    u_xlat6 = exp2((-u_xlat6));
					    u_xlat6 = min(u_xlat6, 1.0);
					    SV_Target0.xyz = vec3(u_xlat6) * u_xlat0.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat6;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat0.x = u_xlat0.x * u_xlat1.w;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0.xyz = u_xlat1.xyz * u_xlat0.xyz + (-unity_FogColor.xyz);
					    u_xlat6 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat6 = (-u_xlat6) + 1.0;
					    u_xlat6 = u_xlat6 * _ProjectionParams.z;
					    u_xlat6 = max(u_xlat6, 0.0);
					    u_xlat6 = u_xlat6 * unity_FogParams.x;
					    u_xlat6 = u_xlat6 * (-u_xlat6);
					    u_xlat6 = exp2(u_xlat6);
					    SV_Target0.xyz = vec3(u_xlat6) * u_xlat0.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat6;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat0.x = u_xlat0.x * u_xlat1.w;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0.xyz = u_xlat1.xyz * u_xlat0.xyz + (-unity_FogColor.xyz);
					    u_xlat6 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat6 = (-u_xlat6) + 1.0;
					    u_xlat6 = u_xlat6 * _ProjectionParams.z;
					    u_xlat6 = max(u_xlat6, 0.0);
					    u_xlat6 = u_xlat6 * unity_FogParams.x;
					    u_xlat6 = u_xlat6 * (-u_xlat6);
					    u_xlat6 = exp2(u_xlat6);
					    SV_Target0.xyz = vec3(u_xlat6) * u_xlat0.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat6;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat0.x = u_xlat0.x * u_xlat1.w;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0.xyz = u_xlat1.xyz * u_xlat0.xyz + (-unity_FogColor.xyz);
					    u_xlat6 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat6 = (-u_xlat6) + 1.0;
					    u_xlat6 = u_xlat6 * _ProjectionParams.z;
					    u_xlat6 = max(u_xlat6, 0.0);
					    u_xlat6 = u_xlat6 * unity_FogParams.x;
					    u_xlat6 = u_xlat6 * (-u_xlat6);
					    u_xlat6 = exp2(u_xlat6);
					    SV_Target0.xyz = vec3(u_xlat6) * u_xlat0.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat6;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat0.x = u_xlat0.x * u_xlat1.w;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0.xyz = u_xlat1.xyz * u_xlat0.xyz + (-unity_FogColor.xyz);
					    u_xlat6 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat6 = (-u_xlat6) + 1.0;
					    u_xlat6 = u_xlat6 * _ProjectionParams.z;
					    u_xlat6 = max(u_xlat6, 0.0);
					    u_xlat6 = u_xlat6 * unity_FogParams.x;
					    u_xlat6 = u_xlat6 * (-u_xlat6);
					    u_xlat6 = exp2(u_xlat6);
					    SV_Target0.xyz = vec3(u_xlat6) * u_xlat0.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					float u_xlat1;
					bool u_xlatb1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1 = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat0.w = u_xlat0.w * u_xlat1;
					    u_xlat0 = u_xlat0 * vs_COLOR0;
					    SV_Target0.w = u_xlat0.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					float u_xlat1;
					bool u_xlatb1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1 = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat0.w = u_xlat0.w * u_xlat1;
					    u_xlat0 = u_xlat0 * vs_COLOR0;
					    SV_Target0.w = u_xlat0.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[7];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					bool u_xlatb2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2 = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    SV_Target0.w = u_xlat0.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[6];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					bool u_xlatb2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2 = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    SV_Target0.w = u_xlat0.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					float u_xlat1;
					bool u_xlatb1;
					float u_xlat6;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1 = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat6 = u_xlat0.w * u_xlat1;
					    u_xlat0.xyz = u_xlat0.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    u_xlat6 = u_xlat6 * vs_COLOR0.w;
					    SV_Target0.w = u_xlat6;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    u_xlat6 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat6 = (-u_xlat6) + 1.0;
					    u_xlat6 = u_xlat6 * _ProjectionParams.z;
					    u_xlat6 = max(u_xlat6, 0.0);
					    u_xlat6 = u_xlat6 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat6 = clamp(u_xlat6, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat6) * u_xlat0.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					float u_xlat1;
					bool u_xlatb1;
					float u_xlat6;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1 = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat6 = u_xlat0.w * u_xlat1;
					    u_xlat0.xyz = u_xlat0.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    u_xlat6 = u_xlat6 * vs_COLOR0.w;
					    SV_Target0.w = u_xlat6;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    u_xlat6 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat6 = (-u_xlat6) + 1.0;
					    u_xlat6 = u_xlat6 * _ProjectionParams.z;
					    u_xlat6 = max(u_xlat6, 0.0);
					    u_xlat6 = u_xlat6 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat6 = clamp(u_xlat6, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat6) * u_xlat0.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					bool u_xlatb2;
					float u_xlat6;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2 = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat2 = u_xlat1.w * u_xlat2;
					    u_xlat0.x = u_xlat0.x * u_xlat2;
					    SV_Target0.w = u_xlat0.x;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0.xyz = u_xlat1.xyz * u_xlat0.xyz + (-unity_FogColor.xyz);
					    u_xlat6 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat6 = (-u_xlat6) + 1.0;
					    u_xlat6 = u_xlat6 * _ProjectionParams.z;
					    u_xlat6 = max(u_xlat6, 0.0);
					    u_xlat6 = u_xlat6 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat6 = clamp(u_xlat6, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat6) * u_xlat0.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					bool u_xlatb2;
					float u_xlat6;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2 = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat2 = u_xlat1.w * u_xlat2;
					    u_xlat0.x = u_xlat0.x * u_xlat2;
					    SV_Target0.w = u_xlat0.x;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0.xyz = u_xlat1.xyz * u_xlat0.xyz + (-unity_FogColor.xyz);
					    u_xlat6 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat6 = (-u_xlat6) + 1.0;
					    u_xlat6 = u_xlat6 * _ProjectionParams.z;
					    u_xlat6 = max(u_xlat6, 0.0);
					    u_xlat6 = u_xlat6 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat6 = clamp(u_xlat6, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat6) * u_xlat0.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2 = u_xlat1 + u_xlat1;
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1 = u_xlat2 * _TintColor;
					    u_xlat3.x = u_xlat3.x * u_xlat1.w;
					    u_xlat3.x = u_xlat3.x * vs_COLOR0.w;
					    SV_Target0.w = u_xlat3.x;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    u_xlat3.xyz = u_xlat1.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2 = u_xlat1 + u_xlat1;
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1 = u_xlat2 * _TintColor;
					    u_xlat3.x = u_xlat3.x * u_xlat1.w;
					    u_xlat3.x = u_xlat3.x * vs_COLOR0.w;
					    SV_Target0.w = u_xlat3.x;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    u_xlat3.xyz = u_xlat1.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					bool u_xlatb2;
					float u_xlat6;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2 = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat2 = u_xlat1.w * u_xlat2;
					    u_xlat0.x = u_xlat0.x * u_xlat2;
					    SV_Target0.w = u_xlat0.x;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0.xyz = u_xlat1.xyz * u_xlat0.xyz + (-unity_FogColor.xyz);
					    u_xlat6 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat6 = (-u_xlat6) + 1.0;
					    u_xlat6 = u_xlat6 * _ProjectionParams.z;
					    u_xlat6 = max(u_xlat6, 0.0);
					    u_xlat6 = u_xlat6 * unity_FogParams.y;
					    u_xlat6 = exp2((-u_xlat6));
					    u_xlat6 = min(u_xlat6, 1.0);
					    SV_Target0.xyz = vec3(u_xlat6) * u_xlat0.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					bool u_xlatb2;
					float u_xlat6;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2 = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat2 = u_xlat1.w * u_xlat2;
					    u_xlat0.x = u_xlat0.x * u_xlat2;
					    SV_Target0.w = u_xlat0.x;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0.xyz = u_xlat1.xyz * u_xlat0.xyz + (-unity_FogColor.xyz);
					    u_xlat6 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat6 = (-u_xlat6) + 1.0;
					    u_xlat6 = u_xlat6 * _ProjectionParams.z;
					    u_xlat6 = max(u_xlat6, 0.0);
					    u_xlat6 = u_xlat6 * unity_FogParams.y;
					    u_xlat6 = exp2((-u_xlat6));
					    u_xlat6 = min(u_xlat6, 1.0);
					    SV_Target0.xyz = vec3(u_xlat6) * u_xlat0.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2 = u_xlat1 + u_xlat1;
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1 = u_xlat2 * _TintColor;
					    u_xlat3.x = u_xlat3.x * u_xlat1.w;
					    u_xlat3.x = u_xlat3.x * vs_COLOR0.w;
					    SV_Target0.w = u_xlat3.x;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    u_xlat3.xyz = u_xlat1.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2 = u_xlat1 + u_xlat1;
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1 = u_xlat2 * _TintColor;
					    u_xlat3.x = u_xlat3.x * u_xlat1.w;
					    u_xlat3.x = u_xlat3.x * vs_COLOR0.w;
					    SV_Target0.w = u_xlat3.x;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    u_xlat3.xyz = u_xlat1.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					bool u_xlatb2;
					float u_xlat6;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2 = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat2 = u_xlat1.w * u_xlat2;
					    u_xlat0.x = u_xlat0.x * u_xlat2;
					    SV_Target0.w = u_xlat0.x;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0.xyz = u_xlat1.xyz * u_xlat0.xyz + (-unity_FogColor.xyz);
					    u_xlat6 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat6 = (-u_xlat6) + 1.0;
					    u_xlat6 = u_xlat6 * _ProjectionParams.z;
					    u_xlat6 = max(u_xlat6, 0.0);
					    u_xlat6 = u_xlat6 * unity_FogParams.x;
					    u_xlat6 = u_xlat6 * (-u_xlat6);
					    u_xlat6 = exp2(u_xlat6);
					    SV_Target0.xyz = vec3(u_xlat6) * u_xlat0.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					bool u_xlatb2;
					float u_xlat6;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2 = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat2 = u_xlat1.w * u_xlat2;
					    u_xlat0.x = u_xlat0.x * u_xlat2;
					    SV_Target0.w = u_xlat0.x;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0.xyz = u_xlat1.xyz * u_xlat0.xyz + (-unity_FogColor.xyz);
					    u_xlat6 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat6 = (-u_xlat6) + 1.0;
					    u_xlat6 = u_xlat6 * _ProjectionParams.z;
					    u_xlat6 = max(u_xlat6, 0.0);
					    u_xlat6 = u_xlat6 * unity_FogParams.x;
					    u_xlat6 = u_xlat6 * (-u_xlat6);
					    u_xlat6 = exp2(u_xlat6);
					    SV_Target0.xyz = vec3(u_xlat6) * u_xlat0.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[7];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					bool u_xlatb2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2 = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    SV_Target0.w = u_xlat0.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[6];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					bool u_xlatb2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2 = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    SV_Target0.w = u_xlat0.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[7];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					bool u_xlatb2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2 = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    SV_Target0.w = u_xlat0.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[6];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					bool u_xlatb2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2 = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    SV_Target0.w = u_xlat0.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					bool u_xlatb2;
					float u_xlat6;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2 = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat2 = u_xlat1.w * u_xlat2;
					    u_xlat0.x = u_xlat0.x * u_xlat2;
					    SV_Target0.w = u_xlat0.x;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0.xyz = u_xlat1.xyz * u_xlat0.xyz + (-unity_FogColor.xyz);
					    u_xlat6 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat6 = (-u_xlat6) + 1.0;
					    u_xlat6 = u_xlat6 * _ProjectionParams.z;
					    u_xlat6 = max(u_xlat6, 0.0);
					    u_xlat6 = u_xlat6 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat6 = clamp(u_xlat6, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat6) * u_xlat0.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					bool u_xlatb2;
					float u_xlat6;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2 = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat2 = u_xlat1.w * u_xlat2;
					    u_xlat0.x = u_xlat0.x * u_xlat2;
					    SV_Target0.w = u_xlat0.x;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0.xyz = u_xlat1.xyz * u_xlat0.xyz + (-unity_FogColor.xyz);
					    u_xlat6 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat6 = (-u_xlat6) + 1.0;
					    u_xlat6 = u_xlat6 * _ProjectionParams.z;
					    u_xlat6 = max(u_xlat6, 0.0);
					    u_xlat6 = u_xlat6 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat6 = clamp(u_xlat6, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat6) * u_xlat0.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					bool u_xlatb2;
					float u_xlat6;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2 = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat2 = u_xlat1.w * u_xlat2;
					    u_xlat0.x = u_xlat0.x * u_xlat2;
					    SV_Target0.w = u_xlat0.x;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0.xyz = u_xlat1.xyz * u_xlat0.xyz + (-unity_FogColor.xyz);
					    u_xlat6 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat6 = (-u_xlat6) + 1.0;
					    u_xlat6 = u_xlat6 * _ProjectionParams.z;
					    u_xlat6 = max(u_xlat6, 0.0);
					    u_xlat6 = u_xlat6 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat6 = clamp(u_xlat6, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat6) * u_xlat0.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					bool u_xlatb2;
					float u_xlat6;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2 = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat2 = u_xlat1.w * u_xlat2;
					    u_xlat0.x = u_xlat0.x * u_xlat2;
					    SV_Target0.w = u_xlat0.x;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0.xyz = u_xlat1.xyz * u_xlat0.xyz + (-unity_FogColor.xyz);
					    u_xlat6 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat6 = (-u_xlat6) + 1.0;
					    u_xlat6 = u_xlat6 * _ProjectionParams.z;
					    u_xlat6 = max(u_xlat6, 0.0);
					    u_xlat6 = u_xlat6 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat6 = clamp(u_xlat6, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat6) * u_xlat0.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					bool u_xlatb2;
					float u_xlat6;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2 = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat2 = u_xlat1.w * u_xlat2;
					    u_xlat0.x = u_xlat0.x * u_xlat2;
					    SV_Target0.w = u_xlat0.x;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0.xyz = u_xlat1.xyz * u_xlat0.xyz + (-unity_FogColor.xyz);
					    u_xlat6 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat6 = (-u_xlat6) + 1.0;
					    u_xlat6 = u_xlat6 * _ProjectionParams.z;
					    u_xlat6 = max(u_xlat6, 0.0);
					    u_xlat6 = u_xlat6 * unity_FogParams.y;
					    u_xlat6 = exp2((-u_xlat6));
					    u_xlat6 = min(u_xlat6, 1.0);
					    SV_Target0.xyz = vec3(u_xlat6) * u_xlat0.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					bool u_xlatb2;
					float u_xlat6;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2 = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat2 = u_xlat1.w * u_xlat2;
					    u_xlat0.x = u_xlat0.x * u_xlat2;
					    SV_Target0.w = u_xlat0.x;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0.xyz = u_xlat1.xyz * u_xlat0.xyz + (-unity_FogColor.xyz);
					    u_xlat6 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat6 = (-u_xlat6) + 1.0;
					    u_xlat6 = u_xlat6 * _ProjectionParams.z;
					    u_xlat6 = max(u_xlat6, 0.0);
					    u_xlat6 = u_xlat6 * unity_FogParams.y;
					    u_xlat6 = exp2((-u_xlat6));
					    u_xlat6 = min(u_xlat6, 1.0);
					    SV_Target0.xyz = vec3(u_xlat6) * u_xlat0.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					bool u_xlatb2;
					float u_xlat6;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2 = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat2 = u_xlat1.w * u_xlat2;
					    u_xlat0.x = u_xlat0.x * u_xlat2;
					    SV_Target0.w = u_xlat0.x;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0.xyz = u_xlat1.xyz * u_xlat0.xyz + (-unity_FogColor.xyz);
					    u_xlat6 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat6 = (-u_xlat6) + 1.0;
					    u_xlat6 = u_xlat6 * _ProjectionParams.z;
					    u_xlat6 = max(u_xlat6, 0.0);
					    u_xlat6 = u_xlat6 * unity_FogParams.y;
					    u_xlat6 = exp2((-u_xlat6));
					    u_xlat6 = min(u_xlat6, 1.0);
					    SV_Target0.xyz = vec3(u_xlat6) * u_xlat0.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					bool u_xlatb2;
					float u_xlat6;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2 = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat2 = u_xlat1.w * u_xlat2;
					    u_xlat0.x = u_xlat0.x * u_xlat2;
					    SV_Target0.w = u_xlat0.x;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0.xyz = u_xlat1.xyz * u_xlat0.xyz + (-unity_FogColor.xyz);
					    u_xlat6 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat6 = (-u_xlat6) + 1.0;
					    u_xlat6 = u_xlat6 * _ProjectionParams.z;
					    u_xlat6 = max(u_xlat6, 0.0);
					    u_xlat6 = u_xlat6 * unity_FogParams.y;
					    u_xlat6 = exp2((-u_xlat6));
					    u_xlat6 = min(u_xlat6, 1.0);
					    SV_Target0.xyz = vec3(u_xlat6) * u_xlat0.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					bool u_xlatb2;
					float u_xlat6;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2 = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat2 = u_xlat1.w * u_xlat2;
					    u_xlat0.x = u_xlat0.x * u_xlat2;
					    SV_Target0.w = u_xlat0.x;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0.xyz = u_xlat1.xyz * u_xlat0.xyz + (-unity_FogColor.xyz);
					    u_xlat6 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat6 = (-u_xlat6) + 1.0;
					    u_xlat6 = u_xlat6 * _ProjectionParams.z;
					    u_xlat6 = max(u_xlat6, 0.0);
					    u_xlat6 = u_xlat6 * unity_FogParams.x;
					    u_xlat6 = u_xlat6 * (-u_xlat6);
					    u_xlat6 = exp2(u_xlat6);
					    SV_Target0.xyz = vec3(u_xlat6) * u_xlat0.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					bool u_xlatb2;
					float u_xlat6;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2 = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat2 = u_xlat1.w * u_xlat2;
					    u_xlat0.x = u_xlat0.x * u_xlat2;
					    SV_Target0.w = u_xlat0.x;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0.xyz = u_xlat1.xyz * u_xlat0.xyz + (-unity_FogColor.xyz);
					    u_xlat6 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat6 = (-u_xlat6) + 1.0;
					    u_xlat6 = u_xlat6 * _ProjectionParams.z;
					    u_xlat6 = max(u_xlat6, 0.0);
					    u_xlat6 = u_xlat6 * unity_FogParams.x;
					    u_xlat6 = u_xlat6 * (-u_xlat6);
					    u_xlat6 = exp2(u_xlat6);
					    SV_Target0.xyz = vec3(u_xlat6) * u_xlat0.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					bool u_xlatb2;
					float u_xlat6;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2 = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat2 = u_xlat1.w * u_xlat2;
					    u_xlat0.x = u_xlat0.x * u_xlat2;
					    SV_Target0.w = u_xlat0.x;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0.xyz = u_xlat1.xyz * u_xlat0.xyz + (-unity_FogColor.xyz);
					    u_xlat6 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat6 = (-u_xlat6) + 1.0;
					    u_xlat6 = u_xlat6 * _ProjectionParams.z;
					    u_xlat6 = max(u_xlat6, 0.0);
					    u_xlat6 = u_xlat6 * unity_FogParams.x;
					    u_xlat6 = u_xlat6 * (-u_xlat6);
					    u_xlat6 = exp2(u_xlat6);
					    SV_Target0.xyz = vec3(u_xlat6) * u_xlat0.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					bool u_xlatb2;
					float u_xlat6;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2 = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat2 = u_xlat1.w * u_xlat2;
					    u_xlat0.x = u_xlat0.x * u_xlat2;
					    SV_Target0.w = u_xlat0.x;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0.xyz = u_xlat1.xyz * u_xlat0.xyz + (-unity_FogColor.xyz);
					    u_xlat6 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat6 = (-u_xlat6) + 1.0;
					    u_xlat6 = u_xlat6 * _ProjectionParams.z;
					    u_xlat6 = max(u_xlat6, 0.0);
					    u_xlat6 = u_xlat6 * unity_FogParams.x;
					    u_xlat6 = u_xlat6 * (-u_xlat6);
					    u_xlat6 = exp2(u_xlat6);
					    SV_Target0.xyz = vec3(u_xlat6) * u_xlat0.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					float u_xlat1;
					bool u_xlatb1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1 = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat0.w = u_xlat0.w * u_xlat1;
					    u_xlat0 = u_xlat0.wxyz * vs_COLOR0.wxyz;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.yzw;
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					float u_xlat1;
					bool u_xlatb1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1 = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat0.w = u_xlat0.w * u_xlat1;
					    u_xlat0 = u_xlat0.wxyz * vs_COLOR0.wxyz;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.yzw;
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[7];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					bool u_xlatb2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2 = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0.wxyz * u_xlat1.wxyz;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.yzw;
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[6];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					bool u_xlatb2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2 = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0.wxyz * u_xlat1.wxyz;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.yzw;
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					float u_xlat1;
					bool u_xlatb1;
					float u_xlat6;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1 = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat6 = u_xlat0.w * u_xlat1;
					    u_xlat0.xyz = u_xlat0.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    u_xlat1 = u_xlat6 * vs_COLOR0.w;
					    u_xlat1 = u_xlat1;
					    u_xlat1 = clamp(u_xlat1, 0.0, 1.0);
					    SV_Target0.w = u_xlat1 * vs_TEXCOORD4;
					    u_xlat6 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat6 = (-u_xlat6) + 1.0;
					    u_xlat6 = u_xlat6 * _ProjectionParams.z;
					    u_xlat6 = max(u_xlat6, 0.0);
					    u_xlat6 = u_xlat6 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat6 = clamp(u_xlat6, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat6) * u_xlat0.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					float u_xlat1;
					bool u_xlatb1;
					float u_xlat6;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1 = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat6 = u_xlat0.w * u_xlat1;
					    u_xlat0.xyz = u_xlat0.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    u_xlat1 = u_xlat6 * vs_COLOR0.w;
					    u_xlat1 = u_xlat1;
					    u_xlat1 = clamp(u_xlat1, 0.0, 1.0);
					    SV_Target0.w = u_xlat1 * vs_TEXCOORD4;
					    u_xlat6 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat6 = (-u_xlat6) + 1.0;
					    u_xlat6 = u_xlat6 * _ProjectionParams.z;
					    u_xlat6 = max(u_xlat6, 0.0);
					    u_xlat6 = u_xlat6 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat6 = clamp(u_xlat6, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat6) * u_xlat0.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					bool u_xlatb2;
					float u_xlat6;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2 = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat2 = u_xlat1.w * u_xlat2;
					    u_xlat0.x = u_xlat0.x * u_xlat2;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0.xyz = u_xlat1.xyz * u_xlat0.xyz + (-unity_FogColor.xyz);
					    u_xlat6 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat6 = (-u_xlat6) + 1.0;
					    u_xlat6 = u_xlat6 * _ProjectionParams.z;
					    u_xlat6 = max(u_xlat6, 0.0);
					    u_xlat6 = u_xlat6 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat6 = clamp(u_xlat6, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat6) * u_xlat0.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					bool u_xlatb2;
					float u_xlat6;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2 = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat2 = u_xlat1.w * u_xlat2;
					    u_xlat0.x = u_xlat0.x * u_xlat2;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0.xyz = u_xlat1.xyz * u_xlat0.xyz + (-unity_FogColor.xyz);
					    u_xlat6 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat6 = (-u_xlat6) + 1.0;
					    u_xlat6 = u_xlat6 * _ProjectionParams.z;
					    u_xlat6 = max(u_xlat6, 0.0);
					    u_xlat6 = u_xlat6 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat6 = clamp(u_xlat6, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat6) * u_xlat0.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					float u_xlat1;
					bool u_xlatb1;
					float u_xlat6;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1 = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat6 = u_xlat0.w * u_xlat1;
					    u_xlat0.xyz = u_xlat0.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    u_xlat1 = u_xlat6 * vs_COLOR0.w;
					    u_xlat1 = u_xlat1;
					    u_xlat1 = clamp(u_xlat1, 0.0, 1.0);
					    SV_Target0.w = u_xlat1 * vs_TEXCOORD4;
					    u_xlat6 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat6 = (-u_xlat6) + 1.0;
					    u_xlat6 = u_xlat6 * _ProjectionParams.z;
					    u_xlat6 = max(u_xlat6, 0.0);
					    u_xlat6 = u_xlat6 * unity_FogParams.y;
					    u_xlat6 = exp2((-u_xlat6));
					    u_xlat6 = min(u_xlat6, 1.0);
					    SV_Target0.xyz = vec3(u_xlat6) * u_xlat0.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					float u_xlat1;
					bool u_xlatb1;
					float u_xlat6;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1 = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat6 = u_xlat0.w * u_xlat1;
					    u_xlat0.xyz = u_xlat0.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    u_xlat1 = u_xlat6 * vs_COLOR0.w;
					    u_xlat1 = u_xlat1;
					    u_xlat1 = clamp(u_xlat1, 0.0, 1.0);
					    SV_Target0.w = u_xlat1 * vs_TEXCOORD4;
					    u_xlat6 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat6 = (-u_xlat6) + 1.0;
					    u_xlat6 = u_xlat6 * _ProjectionParams.z;
					    u_xlat6 = max(u_xlat6, 0.0);
					    u_xlat6 = u_xlat6 * unity_FogParams.y;
					    u_xlat6 = exp2((-u_xlat6));
					    u_xlat6 = min(u_xlat6, 1.0);
					    SV_Target0.xyz = vec3(u_xlat6) * u_xlat0.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					bool u_xlatb2;
					float u_xlat6;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2 = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat2 = u_xlat1.w * u_xlat2;
					    u_xlat0.x = u_xlat0.x * u_xlat2;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0.xyz = u_xlat1.xyz * u_xlat0.xyz + (-unity_FogColor.xyz);
					    u_xlat6 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat6 = (-u_xlat6) + 1.0;
					    u_xlat6 = u_xlat6 * _ProjectionParams.z;
					    u_xlat6 = max(u_xlat6, 0.0);
					    u_xlat6 = u_xlat6 * unity_FogParams.y;
					    u_xlat6 = exp2((-u_xlat6));
					    u_xlat6 = min(u_xlat6, 1.0);
					    SV_Target0.xyz = vec3(u_xlat6) * u_xlat0.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					bool u_xlatb2;
					float u_xlat6;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2 = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat2 = u_xlat1.w * u_xlat2;
					    u_xlat0.x = u_xlat0.x * u_xlat2;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0.xyz = u_xlat1.xyz * u_xlat0.xyz + (-unity_FogColor.xyz);
					    u_xlat6 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat6 = (-u_xlat6) + 1.0;
					    u_xlat6 = u_xlat6 * _ProjectionParams.z;
					    u_xlat6 = max(u_xlat6, 0.0);
					    u_xlat6 = u_xlat6 * unity_FogParams.y;
					    u_xlat6 = exp2((-u_xlat6));
					    u_xlat6 = min(u_xlat6, 1.0);
					    SV_Target0.xyz = vec3(u_xlat6) * u_xlat0.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					float u_xlat1;
					bool u_xlatb1;
					float u_xlat6;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1 = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat6 = u_xlat0.w * u_xlat1;
					    u_xlat0.xyz = u_xlat0.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    u_xlat1 = u_xlat6 * vs_COLOR0.w;
					    u_xlat1 = u_xlat1;
					    u_xlat1 = clamp(u_xlat1, 0.0, 1.0);
					    SV_Target0.w = u_xlat1 * vs_TEXCOORD4;
					    u_xlat6 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat6 = (-u_xlat6) + 1.0;
					    u_xlat6 = u_xlat6 * _ProjectionParams.z;
					    u_xlat6 = max(u_xlat6, 0.0);
					    u_xlat6 = u_xlat6 * unity_FogParams.x;
					    u_xlat6 = u_xlat6 * (-u_xlat6);
					    u_xlat6 = exp2(u_xlat6);
					    SV_Target0.xyz = vec3(u_xlat6) * u_xlat0.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					float u_xlat1;
					bool u_xlatb1;
					float u_xlat6;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1 = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat6 = u_xlat0.w * u_xlat1;
					    u_xlat0.xyz = u_xlat0.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    u_xlat1 = u_xlat6 * vs_COLOR0.w;
					    u_xlat1 = u_xlat1;
					    u_xlat1 = clamp(u_xlat1, 0.0, 1.0);
					    SV_Target0.w = u_xlat1 * vs_TEXCOORD4;
					    u_xlat6 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat6 = (-u_xlat6) + 1.0;
					    u_xlat6 = u_xlat6 * _ProjectionParams.z;
					    u_xlat6 = max(u_xlat6, 0.0);
					    u_xlat6 = u_xlat6 * unity_FogParams.x;
					    u_xlat6 = u_xlat6 * (-u_xlat6);
					    u_xlat6 = exp2(u_xlat6);
					    SV_Target0.xyz = vec3(u_xlat6) * u_xlat0.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					bool u_xlatb2;
					float u_xlat6;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2 = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat2 = u_xlat1.w * u_xlat2;
					    u_xlat0.x = u_xlat0.x * u_xlat2;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0.xyz = u_xlat1.xyz * u_xlat0.xyz + (-unity_FogColor.xyz);
					    u_xlat6 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat6 = (-u_xlat6) + 1.0;
					    u_xlat6 = u_xlat6 * _ProjectionParams.z;
					    u_xlat6 = max(u_xlat6, 0.0);
					    u_xlat6 = u_xlat6 * unity_FogParams.x;
					    u_xlat6 = u_xlat6 * (-u_xlat6);
					    u_xlat6 = exp2(u_xlat6);
					    SV_Target0.xyz = vec3(u_xlat6) * u_xlat0.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					bool u_xlatb2;
					float u_xlat6;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2 = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat2 = u_xlat1.w * u_xlat2;
					    u_xlat0.x = u_xlat0.x * u_xlat2;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0.xyz = u_xlat1.xyz * u_xlat0.xyz + (-unity_FogColor.xyz);
					    u_xlat6 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat6 = (-u_xlat6) + 1.0;
					    u_xlat6 = u_xlat6 * _ProjectionParams.z;
					    u_xlat6 = max(u_xlat6, 0.0);
					    u_xlat6 = u_xlat6 * unity_FogParams.x;
					    u_xlat6 = u_xlat6 * (-u_xlat6);
					    u_xlat6 = exp2(u_xlat6);
					    SV_Target0.xyz = vec3(u_xlat6) * u_xlat0.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[7];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					bool u_xlatb2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2 = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0.wxyz * u_xlat1.wxyz;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.yzw;
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[6];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					bool u_xlatb2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2 = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0.wxyz * u_xlat1.wxyz;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.yzw;
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[7];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					bool u_xlatb2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2 = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0.wxyz * u_xlat1.wxyz;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.yzw;
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[6];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					bool u_xlatb2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2 = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0.wxyz * u_xlat1.wxyz;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.yzw;
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					bool u_xlatb2;
					float u_xlat6;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2 = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat2 = u_xlat1.w * u_xlat2;
					    u_xlat0.x = u_xlat0.x * u_xlat2;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0.xyz = u_xlat1.xyz * u_xlat0.xyz + (-unity_FogColor.xyz);
					    u_xlat6 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat6 = (-u_xlat6) + 1.0;
					    u_xlat6 = u_xlat6 * _ProjectionParams.z;
					    u_xlat6 = max(u_xlat6, 0.0);
					    u_xlat6 = u_xlat6 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat6 = clamp(u_xlat6, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat6) * u_xlat0.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					bool u_xlatb2;
					float u_xlat6;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2 = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat2 = u_xlat1.w * u_xlat2;
					    u_xlat0.x = u_xlat0.x * u_xlat2;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0.xyz = u_xlat1.xyz * u_xlat0.xyz + (-unity_FogColor.xyz);
					    u_xlat6 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat6 = (-u_xlat6) + 1.0;
					    u_xlat6 = u_xlat6 * _ProjectionParams.z;
					    u_xlat6 = max(u_xlat6, 0.0);
					    u_xlat6 = u_xlat6 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat6 = clamp(u_xlat6, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat6) * u_xlat0.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					bool u_xlatb2;
					float u_xlat6;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2 = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat2 = u_xlat1.w * u_xlat2;
					    u_xlat0.x = u_xlat0.x * u_xlat2;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0.xyz = u_xlat1.xyz * u_xlat0.xyz + (-unity_FogColor.xyz);
					    u_xlat6 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat6 = (-u_xlat6) + 1.0;
					    u_xlat6 = u_xlat6 * _ProjectionParams.z;
					    u_xlat6 = max(u_xlat6, 0.0);
					    u_xlat6 = u_xlat6 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat6 = clamp(u_xlat6, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat6) * u_xlat0.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					bool u_xlatb2;
					float u_xlat6;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2 = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat2 = u_xlat1.w * u_xlat2;
					    u_xlat0.x = u_xlat0.x * u_xlat2;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0.xyz = u_xlat1.xyz * u_xlat0.xyz + (-unity_FogColor.xyz);
					    u_xlat6 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat6 = (-u_xlat6) + 1.0;
					    u_xlat6 = u_xlat6 * _ProjectionParams.z;
					    u_xlat6 = max(u_xlat6, 0.0);
					    u_xlat6 = u_xlat6 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat6 = clamp(u_xlat6, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat6) * u_xlat0.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					bool u_xlatb2;
					float u_xlat6;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2 = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat2 = u_xlat1.w * u_xlat2;
					    u_xlat0.x = u_xlat0.x * u_xlat2;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0.xyz = u_xlat1.xyz * u_xlat0.xyz + (-unity_FogColor.xyz);
					    u_xlat6 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat6 = (-u_xlat6) + 1.0;
					    u_xlat6 = u_xlat6 * _ProjectionParams.z;
					    u_xlat6 = max(u_xlat6, 0.0);
					    u_xlat6 = u_xlat6 * unity_FogParams.y;
					    u_xlat6 = exp2((-u_xlat6));
					    u_xlat6 = min(u_xlat6, 1.0);
					    SV_Target0.xyz = vec3(u_xlat6) * u_xlat0.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					bool u_xlatb2;
					float u_xlat6;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2 = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat2 = u_xlat1.w * u_xlat2;
					    u_xlat0.x = u_xlat0.x * u_xlat2;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0.xyz = u_xlat1.xyz * u_xlat0.xyz + (-unity_FogColor.xyz);
					    u_xlat6 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat6 = (-u_xlat6) + 1.0;
					    u_xlat6 = u_xlat6 * _ProjectionParams.z;
					    u_xlat6 = max(u_xlat6, 0.0);
					    u_xlat6 = u_xlat6 * unity_FogParams.y;
					    u_xlat6 = exp2((-u_xlat6));
					    u_xlat6 = min(u_xlat6, 1.0);
					    SV_Target0.xyz = vec3(u_xlat6) * u_xlat0.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					bool u_xlatb2;
					float u_xlat6;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2 = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat2 = u_xlat1.w * u_xlat2;
					    u_xlat0.x = u_xlat0.x * u_xlat2;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0.xyz = u_xlat1.xyz * u_xlat0.xyz + (-unity_FogColor.xyz);
					    u_xlat6 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat6 = (-u_xlat6) + 1.0;
					    u_xlat6 = u_xlat6 * _ProjectionParams.z;
					    u_xlat6 = max(u_xlat6, 0.0);
					    u_xlat6 = u_xlat6 * unity_FogParams.y;
					    u_xlat6 = exp2((-u_xlat6));
					    u_xlat6 = min(u_xlat6, 1.0);
					    SV_Target0.xyz = vec3(u_xlat6) * u_xlat0.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					bool u_xlatb2;
					float u_xlat6;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2 = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat2 = u_xlat1.w * u_xlat2;
					    u_xlat0.x = u_xlat0.x * u_xlat2;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0.xyz = u_xlat1.xyz * u_xlat0.xyz + (-unity_FogColor.xyz);
					    u_xlat6 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat6 = (-u_xlat6) + 1.0;
					    u_xlat6 = u_xlat6 * _ProjectionParams.z;
					    u_xlat6 = max(u_xlat6, 0.0);
					    u_xlat6 = u_xlat6 * unity_FogParams.y;
					    u_xlat6 = exp2((-u_xlat6));
					    u_xlat6 = min(u_xlat6, 1.0);
					    SV_Target0.xyz = vec3(u_xlat6) * u_xlat0.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					bool u_xlatb2;
					float u_xlat6;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2 = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat2 = u_xlat1.w * u_xlat2;
					    u_xlat0.x = u_xlat0.x * u_xlat2;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0.xyz = u_xlat1.xyz * u_xlat0.xyz + (-unity_FogColor.xyz);
					    u_xlat6 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat6 = (-u_xlat6) + 1.0;
					    u_xlat6 = u_xlat6 * _ProjectionParams.z;
					    u_xlat6 = max(u_xlat6, 0.0);
					    u_xlat6 = u_xlat6 * unity_FogParams.x;
					    u_xlat6 = u_xlat6 * (-u_xlat6);
					    u_xlat6 = exp2(u_xlat6);
					    SV_Target0.xyz = vec3(u_xlat6) * u_xlat0.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					bool u_xlatb2;
					float u_xlat6;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2 = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat2 = u_xlat1.w * u_xlat2;
					    u_xlat0.x = u_xlat0.x * u_xlat2;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0.xyz = u_xlat1.xyz * u_xlat0.xyz + (-unity_FogColor.xyz);
					    u_xlat6 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat6 = (-u_xlat6) + 1.0;
					    u_xlat6 = u_xlat6 * _ProjectionParams.z;
					    u_xlat6 = max(u_xlat6, 0.0);
					    u_xlat6 = u_xlat6 * unity_FogParams.x;
					    u_xlat6 = u_xlat6 * (-u_xlat6);
					    u_xlat6 = exp2(u_xlat6);
					    SV_Target0.xyz = vec3(u_xlat6) * u_xlat0.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					bool u_xlatb2;
					float u_xlat6;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2 = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat2 = u_xlat1.w * u_xlat2;
					    u_xlat0.x = u_xlat0.x * u_xlat2;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0.xyz = u_xlat1.xyz * u_xlat0.xyz + (-unity_FogColor.xyz);
					    u_xlat6 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat6 = (-u_xlat6) + 1.0;
					    u_xlat6 = u_xlat6 * _ProjectionParams.z;
					    u_xlat6 = max(u_xlat6, 0.0);
					    u_xlat6 = u_xlat6 * unity_FogParams.x;
					    u_xlat6 = u_xlat6 * (-u_xlat6);
					    u_xlat6 = exp2(u_xlat6);
					    SV_Target0.xyz = vec3(u_xlat6) * u_xlat0.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					bool u_xlatb2;
					float u_xlat6;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2 = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat2 = u_xlat1.w * u_xlat2;
					    u_xlat0.x = u_xlat0.x * u_xlat2;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0.xyz = u_xlat1.xyz * u_xlat0.xyz + (-unity_FogColor.xyz);
					    u_xlat6 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat6 = (-u_xlat6) + 1.0;
					    u_xlat6 = u_xlat6 * _ProjectionParams.z;
					    u_xlat6 = max(u_xlat6, 0.0);
					    u_xlat6 = u_xlat6 * unity_FogParams.x;
					    u_xlat6 = u_xlat6 * (-u_xlat6);
					    u_xlat6 = exp2(u_xlat6);
					    SV_Target0.xyz = vec3(u_xlat6) * u_xlat0.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    SV_Target0.xyz = u_xlat2.xyz * vs_COLOR0.xyz;
					    SV_Target0.w = u_xlatb0 ? 1.0 : float(0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    SV_Target0.xyz = u_xlat2.xyz * vs_COLOR0.xyz;
					    SV_Target0.w = u_xlatb0 ? 1.0 : float(0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[7];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb0 = u_xlat1.w>=u_xlat0.x;
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    SV_Target0.xyz = u_xlat2.xyz * vs_COLOR0.xyz;
					    SV_Target0.w = u_xlatb0 ? 1.0 : float(0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[6];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb0 = u_xlat1.w>=u_xlat0.x;
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    SV_Target0.xyz = u_xlat2.xyz * vs_COLOR0.xyz;
					    SV_Target0.w = u_xlatb0 ? 1.0 : float(0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat2.xyz + unity_FogColor.xyz;
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    SV_Target0.w = u_xlatb0 ? 1.0 : float(0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat2.xyz + unity_FogColor.xyz;
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    SV_Target0.w = u_xlatb0 ? 1.0 : float(0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb0 = u_xlat1.w>=u_xlat0.x;
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    SV_Target0.w = u_xlatb0 ? 1.0 : float(0.0);
					    u_xlat0.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0.x = (-u_xlat0.x) + 1.0;
					    u_xlat0.x = u_xlat0.x * _ProjectionParams.z;
					    u_xlat0.x = max(u_xlat0.x, 0.0);
					    u_xlat0.x = u_xlat0.x * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.xxx * u_xlat2.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb0 = u_xlat1.w>=u_xlat0.x;
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    SV_Target0.w = u_xlatb0 ? 1.0 : float(0.0);
					    u_xlat0.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0.x = (-u_xlat0.x) + 1.0;
					    u_xlat0.x = u_xlat0.x * _ProjectionParams.z;
					    u_xlat0.x = max(u_xlat0.x, 0.0);
					    u_xlat0.x = u_xlat0.x * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.xxx * u_xlat2.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat2.xyz + unity_FogColor.xyz;
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    SV_Target0.w = u_xlatb0 ? 1.0 : float(0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat2.xyz + unity_FogColor.xyz;
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    SV_Target0.w = u_xlatb0 ? 1.0 : float(0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0.x = (-u_xlat0.x) + 1.0;
					    u_xlat0.x = u_xlat0.x * _ProjectionParams.z;
					    u_xlat0.x = max(u_xlat0.x, 0.0);
					    u_xlat0.x = u_xlat0.x * unity_FogParams.y;
					    u_xlat0.x = exp2((-u_xlat0.x));
					    u_xlat0.x = min(u_xlat0.x, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    SV_Target0.xyz = u_xlat0.xxx * u_xlat2.xyz + unity_FogColor.xyz;
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0.x;
					    SV_Target0.w = u_xlatb0 ? 1.0 : float(0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0.x = (-u_xlat0.x) + 1.0;
					    u_xlat0.x = u_xlat0.x * _ProjectionParams.z;
					    u_xlat0.x = max(u_xlat0.x, 0.0);
					    u_xlat0.x = u_xlat0.x * unity_FogParams.y;
					    u_xlat0.x = exp2((-u_xlat0.x));
					    u_xlat0.x = min(u_xlat0.x, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    SV_Target0.xyz = u_xlat0.xxx * u_xlat2.xyz + unity_FogColor.xyz;
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0.x;
					    SV_Target0.w = u_xlatb0 ? 1.0 : float(0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat2.xyz + unity_FogColor.xyz;
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    SV_Target0.w = u_xlatb0 ? 1.0 : float(0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat2.xyz + unity_FogColor.xyz;
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    SV_Target0.w = u_xlatb0 ? 1.0 : float(0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0.x = (-u_xlat0.x) + 1.0;
					    u_xlat0.x = u_xlat0.x * _ProjectionParams.z;
					    u_xlat0.x = max(u_xlat0.x, 0.0);
					    u_xlat0.x = u_xlat0.x * unity_FogParams.x;
					    u_xlat0.x = u_xlat0.x * (-u_xlat0.x);
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    SV_Target0.xyz = u_xlat0.xxx * u_xlat2.xyz + unity_FogColor.xyz;
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0.x;
					    SV_Target0.w = u_xlatb0 ? 1.0 : float(0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0.x = (-u_xlat0.x) + 1.0;
					    u_xlat0.x = u_xlat0.x * _ProjectionParams.z;
					    u_xlat0.x = max(u_xlat0.x, 0.0);
					    u_xlat0.x = u_xlat0.x * unity_FogParams.x;
					    u_xlat0.x = u_xlat0.x * (-u_xlat0.x);
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    SV_Target0.xyz = u_xlat0.xxx * u_xlat2.xyz + unity_FogColor.xyz;
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0.x;
					    SV_Target0.w = u_xlatb0 ? 1.0 : float(0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[7];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb0 = u_xlat1.w>=u_xlat0.x;
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    SV_Target0.xyz = u_xlat2.xyz * vs_COLOR0.xyz;
					    SV_Target0.w = u_xlatb0 ? 1.0 : float(0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[6];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb0 = u_xlat1.w>=u_xlat0.x;
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    SV_Target0.xyz = u_xlat2.xyz * vs_COLOR0.xyz;
					    SV_Target0.w = u_xlatb0 ? 1.0 : float(0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[7];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb0 = u_xlat1.w>=u_xlat0.x;
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    SV_Target0.xyz = u_xlat2.xyz * vs_COLOR0.xyz;
					    SV_Target0.w = u_xlatb0 ? 1.0 : float(0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[6];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb0 = u_xlat1.w>=u_xlat0.x;
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    SV_Target0.xyz = u_xlat2.xyz * vs_COLOR0.xyz;
					    SV_Target0.w = u_xlatb0 ? 1.0 : float(0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb0 = u_xlat1.w>=u_xlat0.x;
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    SV_Target0.w = u_xlatb0 ? 1.0 : float(0.0);
					    u_xlat0.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0.x = (-u_xlat0.x) + 1.0;
					    u_xlat0.x = u_xlat0.x * _ProjectionParams.z;
					    u_xlat0.x = max(u_xlat0.x, 0.0);
					    u_xlat0.x = u_xlat0.x * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.xxx * u_xlat2.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb0 = u_xlat1.w>=u_xlat0.x;
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    SV_Target0.w = u_xlatb0 ? 1.0 : float(0.0);
					    u_xlat0.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0.x = (-u_xlat0.x) + 1.0;
					    u_xlat0.x = u_xlat0.x * _ProjectionParams.z;
					    u_xlat0.x = max(u_xlat0.x, 0.0);
					    u_xlat0.x = u_xlat0.x * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.xxx * u_xlat2.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb0 = u_xlat1.w>=u_xlat0.x;
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    SV_Target0.w = u_xlatb0 ? 1.0 : float(0.0);
					    u_xlat0.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0.x = (-u_xlat0.x) + 1.0;
					    u_xlat0.x = u_xlat0.x * _ProjectionParams.z;
					    u_xlat0.x = max(u_xlat0.x, 0.0);
					    u_xlat0.x = u_xlat0.x * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.xxx * u_xlat2.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb0 = u_xlat1.w>=u_xlat0.x;
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    SV_Target0.w = u_xlatb0 ? 1.0 : float(0.0);
					    u_xlat0.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0.x = (-u_xlat0.x) + 1.0;
					    u_xlat0.x = u_xlat0.x * _ProjectionParams.z;
					    u_xlat0.x = max(u_xlat0.x, 0.0);
					    u_xlat0.x = u_xlat0.x * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.xxx * u_xlat2.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0.x = (-u_xlat0.x) + 1.0;
					    u_xlat0.x = u_xlat0.x * _ProjectionParams.z;
					    u_xlat0.x = max(u_xlat0.x, 0.0);
					    u_xlat0.x = u_xlat0.x * unity_FogParams.y;
					    u_xlat0.x = exp2((-u_xlat0.x));
					    u_xlat0.x = min(u_xlat0.x, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    SV_Target0.xyz = u_xlat0.xxx * u_xlat2.xyz + unity_FogColor.xyz;
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0.x;
					    SV_Target0.w = u_xlatb0 ? 1.0 : float(0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0.x = (-u_xlat0.x) + 1.0;
					    u_xlat0.x = u_xlat0.x * _ProjectionParams.z;
					    u_xlat0.x = max(u_xlat0.x, 0.0);
					    u_xlat0.x = u_xlat0.x * unity_FogParams.y;
					    u_xlat0.x = exp2((-u_xlat0.x));
					    u_xlat0.x = min(u_xlat0.x, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    SV_Target0.xyz = u_xlat0.xxx * u_xlat2.xyz + unity_FogColor.xyz;
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0.x;
					    SV_Target0.w = u_xlatb0 ? 1.0 : float(0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0.x = (-u_xlat0.x) + 1.0;
					    u_xlat0.x = u_xlat0.x * _ProjectionParams.z;
					    u_xlat0.x = max(u_xlat0.x, 0.0);
					    u_xlat0.x = u_xlat0.x * unity_FogParams.y;
					    u_xlat0.x = exp2((-u_xlat0.x));
					    u_xlat0.x = min(u_xlat0.x, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    SV_Target0.xyz = u_xlat0.xxx * u_xlat2.xyz + unity_FogColor.xyz;
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0.x;
					    SV_Target0.w = u_xlatb0 ? 1.0 : float(0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0.x = (-u_xlat0.x) + 1.0;
					    u_xlat0.x = u_xlat0.x * _ProjectionParams.z;
					    u_xlat0.x = max(u_xlat0.x, 0.0);
					    u_xlat0.x = u_xlat0.x * unity_FogParams.y;
					    u_xlat0.x = exp2((-u_xlat0.x));
					    u_xlat0.x = min(u_xlat0.x, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    SV_Target0.xyz = u_xlat0.xxx * u_xlat2.xyz + unity_FogColor.xyz;
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0.x;
					    SV_Target0.w = u_xlatb0 ? 1.0 : float(0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0.x = (-u_xlat0.x) + 1.0;
					    u_xlat0.x = u_xlat0.x * _ProjectionParams.z;
					    u_xlat0.x = max(u_xlat0.x, 0.0);
					    u_xlat0.x = u_xlat0.x * unity_FogParams.x;
					    u_xlat0.x = u_xlat0.x * (-u_xlat0.x);
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    SV_Target0.xyz = u_xlat0.xxx * u_xlat2.xyz + unity_FogColor.xyz;
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0.x;
					    SV_Target0.w = u_xlatb0 ? 1.0 : float(0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0.x = (-u_xlat0.x) + 1.0;
					    u_xlat0.x = u_xlat0.x * _ProjectionParams.z;
					    u_xlat0.x = max(u_xlat0.x, 0.0);
					    u_xlat0.x = u_xlat0.x * unity_FogParams.x;
					    u_xlat0.x = u_xlat0.x * (-u_xlat0.x);
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    SV_Target0.xyz = u_xlat0.xxx * u_xlat2.xyz + unity_FogColor.xyz;
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0.x;
					    SV_Target0.w = u_xlatb0 ? 1.0 : float(0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0.x = (-u_xlat0.x) + 1.0;
					    u_xlat0.x = u_xlat0.x * _ProjectionParams.z;
					    u_xlat0.x = max(u_xlat0.x, 0.0);
					    u_xlat0.x = u_xlat0.x * unity_FogParams.x;
					    u_xlat0.x = u_xlat0.x * (-u_xlat0.x);
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    SV_Target0.xyz = u_xlat0.xxx * u_xlat2.xyz + unity_FogColor.xyz;
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0.x;
					    SV_Target0.w = u_xlatb0 ? 1.0 : float(0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0.x = (-u_xlat0.x) + 1.0;
					    u_xlat0.x = u_xlat0.x * _ProjectionParams.z;
					    u_xlat0.x = max(u_xlat0.x, 0.0);
					    u_xlat0.x = u_xlat0.x * unity_FogParams.x;
					    u_xlat0.x = u_xlat0.x * (-u_xlat0.x);
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    SV_Target0.xyz = u_xlat0.xxx * u_xlat2.xyz + unity_FogColor.xyz;
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0.x;
					    SV_Target0.w = u_xlatb0 ? 1.0 : float(0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    SV_Target0.xyz = u_xlat2.xyz * vs_COLOR0.xyz;
					    u_xlat0 = u_xlatb0 ? 1.0 : float(0.0);
					    SV_Target0.w = u_xlat0 * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    SV_Target0.xyz = u_xlat2.xyz * vs_COLOR0.xyz;
					    u_xlat0 = u_xlatb0 ? 1.0 : float(0.0);
					    SV_Target0.w = u_xlat0 * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[7];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb0 = u_xlat1.w>=u_xlat0.x;
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    SV_Target0.xyz = u_xlat2.xyz * vs_COLOR0.xyz;
					    u_xlat0.x = u_xlatb0 ? 1.0 : float(0.0);
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[6];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb0 = u_xlat1.w>=u_xlat0.x;
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    SV_Target0.xyz = u_xlat2.xyz * vs_COLOR0.xyz;
					    u_xlat0.x = u_xlatb0 ? 1.0 : float(0.0);
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat2.xyz + unity_FogColor.xyz;
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    u_xlat0 = u_xlatb0 ? 1.0 : float(0.0);
					    SV_Target0.w = u_xlat0 * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat2.xyz + unity_FogColor.xyz;
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    u_xlat0 = u_xlatb0 ? 1.0 : float(0.0);
					    SV_Target0.w = u_xlat0 * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb0 = u_xlat1.w>=u_xlat0.x;
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    u_xlat0.x = u_xlatb0 ? 1.0 : float(0.0);
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    u_xlat0.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0.x = (-u_xlat0.x) + 1.0;
					    u_xlat0.x = u_xlat0.x * _ProjectionParams.z;
					    u_xlat0.x = max(u_xlat0.x, 0.0);
					    u_xlat0.x = u_xlat0.x * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.xxx * u_xlat2.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb0 = u_xlat1.w>=u_xlat0.x;
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    u_xlat0.x = u_xlatb0 ? 1.0 : float(0.0);
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    u_xlat0.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0.x = (-u_xlat0.x) + 1.0;
					    u_xlat0.x = u_xlat0.x * _ProjectionParams.z;
					    u_xlat0.x = max(u_xlat0.x, 0.0);
					    u_xlat0.x = u_xlat0.x * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.xxx * u_xlat2.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat2.xyz + unity_FogColor.xyz;
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    u_xlat0 = u_xlatb0 ? 1.0 : float(0.0);
					    SV_Target0.w = u_xlat0 * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat2.xyz + unity_FogColor.xyz;
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    u_xlat0 = u_xlatb0 ? 1.0 : float(0.0);
					    SV_Target0.w = u_xlat0 * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb0 = u_xlat1.w>=u_xlat0.x;
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    u_xlat0.x = u_xlatb0 ? 1.0 : float(0.0);
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    u_xlat0.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0.x = (-u_xlat0.x) + 1.0;
					    u_xlat0.x = u_xlat0.x * _ProjectionParams.z;
					    u_xlat0.x = max(u_xlat0.x, 0.0);
					    u_xlat0.x = u_xlat0.x * unity_FogParams.y;
					    u_xlat0.x = exp2((-u_xlat0.x));
					    u_xlat0.x = min(u_xlat0.x, 1.0);
					    SV_Target0.xyz = u_xlat0.xxx * u_xlat2.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb0 = u_xlat1.w>=u_xlat0.x;
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    u_xlat0.x = u_xlatb0 ? 1.0 : float(0.0);
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    u_xlat0.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0.x = (-u_xlat0.x) + 1.0;
					    u_xlat0.x = u_xlat0.x * _ProjectionParams.z;
					    u_xlat0.x = max(u_xlat0.x, 0.0);
					    u_xlat0.x = u_xlat0.x * unity_FogParams.y;
					    u_xlat0.x = exp2((-u_xlat0.x));
					    u_xlat0.x = min(u_xlat0.x, 1.0);
					    SV_Target0.xyz = u_xlat0.xxx * u_xlat2.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat2.xyz + unity_FogColor.xyz;
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    u_xlat0 = u_xlatb0 ? 1.0 : float(0.0);
					    SV_Target0.w = u_xlat0 * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat2.xyz + unity_FogColor.xyz;
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    u_xlat0 = u_xlatb0 ? 1.0 : float(0.0);
					    SV_Target0.w = u_xlat0 * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb0 = u_xlat1.w>=u_xlat0.x;
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    u_xlat0.x = u_xlatb0 ? 1.0 : float(0.0);
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    u_xlat0.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0.x = (-u_xlat0.x) + 1.0;
					    u_xlat0.x = u_xlat0.x * _ProjectionParams.z;
					    u_xlat0.x = max(u_xlat0.x, 0.0);
					    u_xlat0.x = u_xlat0.x * unity_FogParams.x;
					    u_xlat0.x = u_xlat0.x * (-u_xlat0.x);
					    u_xlat0.x = exp2(u_xlat0.x);
					    SV_Target0.xyz = u_xlat0.xxx * u_xlat2.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb0 = u_xlat1.w>=u_xlat0.x;
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    u_xlat0.x = u_xlatb0 ? 1.0 : float(0.0);
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    u_xlat0.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0.x = (-u_xlat0.x) + 1.0;
					    u_xlat0.x = u_xlat0.x * _ProjectionParams.z;
					    u_xlat0.x = max(u_xlat0.x, 0.0);
					    u_xlat0.x = u_xlat0.x * unity_FogParams.x;
					    u_xlat0.x = u_xlat0.x * (-u_xlat0.x);
					    u_xlat0.x = exp2(u_xlat0.x);
					    SV_Target0.xyz = u_xlat0.xxx * u_xlat2.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[7];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb0 = u_xlat1.w>=u_xlat0.x;
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    SV_Target0.xyz = u_xlat2.xyz * vs_COLOR0.xyz;
					    u_xlat0.x = u_xlatb0 ? 1.0 : float(0.0);
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[6];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb0 = u_xlat1.w>=u_xlat0.x;
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    SV_Target0.xyz = u_xlat2.xyz * vs_COLOR0.xyz;
					    u_xlat0.x = u_xlatb0 ? 1.0 : float(0.0);
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[7];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb0 = u_xlat1.w>=u_xlat0.x;
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    SV_Target0.xyz = u_xlat2.xyz * vs_COLOR0.xyz;
					    u_xlat0.x = u_xlatb0 ? 1.0 : float(0.0);
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[6];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb0 = u_xlat1.w>=u_xlat0.x;
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    SV_Target0.xyz = u_xlat2.xyz * vs_COLOR0.xyz;
					    u_xlat0.x = u_xlatb0 ? 1.0 : float(0.0);
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb0 = u_xlat1.w>=u_xlat0.x;
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    u_xlat0.x = u_xlatb0 ? 1.0 : float(0.0);
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    u_xlat0.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0.x = (-u_xlat0.x) + 1.0;
					    u_xlat0.x = u_xlat0.x * _ProjectionParams.z;
					    u_xlat0.x = max(u_xlat0.x, 0.0);
					    u_xlat0.x = u_xlat0.x * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.xxx * u_xlat2.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb0 = u_xlat1.w>=u_xlat0.x;
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    u_xlat0.x = u_xlatb0 ? 1.0 : float(0.0);
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    u_xlat0.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0.x = (-u_xlat0.x) + 1.0;
					    u_xlat0.x = u_xlat0.x * _ProjectionParams.z;
					    u_xlat0.x = max(u_xlat0.x, 0.0);
					    u_xlat0.x = u_xlat0.x * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.xxx * u_xlat2.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb0 = u_xlat1.w>=u_xlat0.x;
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    u_xlat0.x = u_xlatb0 ? 1.0 : float(0.0);
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    u_xlat0.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0.x = (-u_xlat0.x) + 1.0;
					    u_xlat0.x = u_xlat0.x * _ProjectionParams.z;
					    u_xlat0.x = max(u_xlat0.x, 0.0);
					    u_xlat0.x = u_xlat0.x * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.xxx * u_xlat2.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb0 = u_xlat1.w>=u_xlat0.x;
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    u_xlat0.x = u_xlatb0 ? 1.0 : float(0.0);
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    u_xlat0.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0.x = (-u_xlat0.x) + 1.0;
					    u_xlat0.x = u_xlat0.x * _ProjectionParams.z;
					    u_xlat0.x = max(u_xlat0.x, 0.0);
					    u_xlat0.x = u_xlat0.x * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.xxx * u_xlat2.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb0 = u_xlat1.w>=u_xlat0.x;
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    u_xlat0.x = u_xlatb0 ? 1.0 : float(0.0);
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    u_xlat0.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0.x = (-u_xlat0.x) + 1.0;
					    u_xlat0.x = u_xlat0.x * _ProjectionParams.z;
					    u_xlat0.x = max(u_xlat0.x, 0.0);
					    u_xlat0.x = u_xlat0.x * unity_FogParams.y;
					    u_xlat0.x = exp2((-u_xlat0.x));
					    u_xlat0.x = min(u_xlat0.x, 1.0);
					    SV_Target0.xyz = u_xlat0.xxx * u_xlat2.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb0 = u_xlat1.w>=u_xlat0.x;
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    u_xlat0.x = u_xlatb0 ? 1.0 : float(0.0);
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    u_xlat0.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0.x = (-u_xlat0.x) + 1.0;
					    u_xlat0.x = u_xlat0.x * _ProjectionParams.z;
					    u_xlat0.x = max(u_xlat0.x, 0.0);
					    u_xlat0.x = u_xlat0.x * unity_FogParams.y;
					    u_xlat0.x = exp2((-u_xlat0.x));
					    u_xlat0.x = min(u_xlat0.x, 1.0);
					    SV_Target0.xyz = u_xlat0.xxx * u_xlat2.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb0 = u_xlat1.w>=u_xlat0.x;
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    u_xlat0.x = u_xlatb0 ? 1.0 : float(0.0);
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    u_xlat0.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0.x = (-u_xlat0.x) + 1.0;
					    u_xlat0.x = u_xlat0.x * _ProjectionParams.z;
					    u_xlat0.x = max(u_xlat0.x, 0.0);
					    u_xlat0.x = u_xlat0.x * unity_FogParams.y;
					    u_xlat0.x = exp2((-u_xlat0.x));
					    u_xlat0.x = min(u_xlat0.x, 1.0);
					    SV_Target0.xyz = u_xlat0.xxx * u_xlat2.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb0 = u_xlat1.w>=u_xlat0.x;
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    u_xlat0.x = u_xlatb0 ? 1.0 : float(0.0);
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    u_xlat0.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0.x = (-u_xlat0.x) + 1.0;
					    u_xlat0.x = u_xlat0.x * _ProjectionParams.z;
					    u_xlat0.x = max(u_xlat0.x, 0.0);
					    u_xlat0.x = u_xlat0.x * unity_FogParams.y;
					    u_xlat0.x = exp2((-u_xlat0.x));
					    u_xlat0.x = min(u_xlat0.x, 1.0);
					    SV_Target0.xyz = u_xlat0.xxx * u_xlat2.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb0 = u_xlat1.w>=u_xlat0.x;
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    u_xlat0.x = u_xlatb0 ? 1.0 : float(0.0);
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    u_xlat0.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0.x = (-u_xlat0.x) + 1.0;
					    u_xlat0.x = u_xlat0.x * _ProjectionParams.z;
					    u_xlat0.x = max(u_xlat0.x, 0.0);
					    u_xlat0.x = u_xlat0.x * unity_FogParams.x;
					    u_xlat0.x = u_xlat0.x * (-u_xlat0.x);
					    u_xlat0.x = exp2(u_xlat0.x);
					    SV_Target0.xyz = u_xlat0.xxx * u_xlat2.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb0 = u_xlat1.w>=u_xlat0.x;
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    u_xlat0.x = u_xlatb0 ? 1.0 : float(0.0);
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    u_xlat0.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0.x = (-u_xlat0.x) + 1.0;
					    u_xlat0.x = u_xlat0.x * _ProjectionParams.z;
					    u_xlat0.x = max(u_xlat0.x, 0.0);
					    u_xlat0.x = u_xlat0.x * unity_FogParams.x;
					    u_xlat0.x = u_xlat0.x * (-u_xlat0.x);
					    u_xlat0.x = exp2(u_xlat0.x);
					    SV_Target0.xyz = u_xlat0.xxx * u_xlat2.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb0 = u_xlat1.w>=u_xlat0.x;
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    u_xlat0.x = u_xlatb0 ? 1.0 : float(0.0);
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    u_xlat0.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0.x = (-u_xlat0.x) + 1.0;
					    u_xlat0.x = u_xlat0.x * _ProjectionParams.z;
					    u_xlat0.x = max(u_xlat0.x, 0.0);
					    u_xlat0.x = u_xlat0.x * unity_FogParams.x;
					    u_xlat0.x = u_xlat0.x * (-u_xlat0.x);
					    u_xlat0.x = exp2(u_xlat0.x);
					    SV_Target0.xyz = u_xlat0.xxx * u_xlat2.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb0 = u_xlat1.w>=u_xlat0.x;
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    u_xlat0.x = u_xlatb0 ? 1.0 : float(0.0);
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    u_xlat0.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0.x = (-u_xlat0.x) + 1.0;
					    u_xlat0.x = u_xlat0.x * _ProjectionParams.z;
					    u_xlat0.x = max(u_xlat0.x, 0.0);
					    u_xlat0.x = u_xlat0.x * unity_FogParams.x;
					    u_xlat0.x = u_xlat0.x * (-u_xlat0.x);
					    u_xlat0.x = exp2(u_xlat0.x);
					    SV_Target0.xyz = u_xlat0.xxx * u_xlat2.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat0 = u_xlat0 * vs_COLOR0;
					    SV_Target0.w = u_xlat0.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat0 = u_xlat0 * vs_COLOR0;
					    SV_Target0.w = u_xlat0.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat0 = u_xlat0 * vs_COLOR0;
					    SV_Target0.w = u_xlat0.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat0 = u_xlat0 * vs_COLOR0;
					    SV_Target0.w = u_xlat0.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.xyz = u_xlat1.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    u_xlat1.x = u_xlat1.w * vs_COLOR0.w;
					    SV_Target0.w = u_xlat1.x;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.xyz = u_xlat1.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    u_xlat1.x = u_xlat1.w * vs_COLOR0.w;
					    SV_Target0.w = u_xlat1.x;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.xyz = u_xlat1.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    u_xlat1.x = u_xlat1.w * vs_COLOR0.w;
					    SV_Target0.w = u_xlat1.x;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.xyz = u_xlat1.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    u_xlat1.x = u_xlat1.w * vs_COLOR0.w;
					    SV_Target0.w = u_xlat1.x;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.xyz = u_xlat1.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    u_xlat1.x = u_xlat1.w * vs_COLOR0.w;
					    SV_Target0.w = u_xlat1.x;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.xyz = u_xlat1.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    u_xlat1.x = u_xlat1.w * vs_COLOR0.w;
					    SV_Target0.w = u_xlat1.x;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.xyz = u_xlat1.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    u_xlat1.x = u_xlat1.w * vs_COLOR0.w;
					    SV_Target0.w = u_xlat1.x;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.xyz = u_xlat1.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    u_xlat1.x = u_xlat1.w * vs_COLOR0.w;
					    SV_Target0.w = u_xlat1.x;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.xyz = u_xlat1.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    u_xlat1.x = u_xlat1.w * vs_COLOR0.w;
					    SV_Target0.w = u_xlat1.x;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.xyz = u_xlat1.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    u_xlat1.x = u_xlat1.w * vs_COLOR0.w;
					    SV_Target0.w = u_xlat1.x;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.xyz = u_xlat1.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    u_xlat1.x = u_xlat1.w * vs_COLOR0.w;
					    SV_Target0.w = u_xlat1.x;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.xyz = u_xlat1.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    u_xlat1.x = u_xlat1.w * vs_COLOR0.w;
					    SV_Target0.w = u_xlat1.x;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat0 = u_xlat0 * vs_COLOR0;
					    SV_Target0.w = u_xlat0.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat0 = u_xlat0 * vs_COLOR0;
					    SV_Target0.w = u_xlat0.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat0 = u_xlat0 * vs_COLOR0;
					    SV_Target0.w = u_xlat0.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat0 = u_xlat0 * vs_COLOR0;
					    SV_Target0.w = u_xlat0.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.xyz = u_xlat1.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    u_xlat1.x = u_xlat1.w * vs_COLOR0.w;
					    SV_Target0.w = u_xlat1.x;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.xyz = u_xlat1.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    u_xlat1.x = u_xlat1.w * vs_COLOR0.w;
					    SV_Target0.w = u_xlat1.x;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.xyz = u_xlat1.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    u_xlat1.x = u_xlat1.w * vs_COLOR0.w;
					    SV_Target0.w = u_xlat1.x;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.xyz = u_xlat1.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    u_xlat1.x = u_xlat1.w * vs_COLOR0.w;
					    SV_Target0.w = u_xlat1.x;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.xyz = u_xlat1.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    u_xlat1.x = u_xlat1.w * vs_COLOR0.w;
					    SV_Target0.w = u_xlat1.x;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.xyz = u_xlat1.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    u_xlat1.x = u_xlat1.w * vs_COLOR0.w;
					    SV_Target0.w = u_xlat1.x;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.xyz = u_xlat1.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    u_xlat1.x = u_xlat1.w * vs_COLOR0.w;
					    SV_Target0.w = u_xlat1.x;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.xyz = u_xlat1.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    u_xlat1.x = u_xlat1.w * vs_COLOR0.w;
					    SV_Target0.w = u_xlat1.x;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.xyz = u_xlat1.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    u_xlat1.x = u_xlat1.w * vs_COLOR0.w;
					    SV_Target0.w = u_xlat1.x;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.xyz = u_xlat1.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    u_xlat1.x = u_xlat1.w * vs_COLOR0.w;
					    SV_Target0.w = u_xlat1.x;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.xyz = u_xlat1.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    u_xlat1.x = u_xlat1.w * vs_COLOR0.w;
					    SV_Target0.w = u_xlat1.x;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.xyz = u_xlat1.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    u_xlat1.x = u_xlat1.w * vs_COLOR0.w;
					    SV_Target0.w = u_xlat1.x;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat0 = u_xlat0.wxyz * vs_COLOR0.wxyz;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.yzw;
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat0 = u_xlat0.wxyz * vs_COLOR0.wxyz;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.yzw;
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat0 = u_xlat0.wxyz * vs_COLOR0.wxyz;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.yzw;
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat0 = u_xlat0.wxyz * vs_COLOR0.wxyz;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.yzw;
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.xyz = u_xlat1.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    u_xlat1.x = u_xlat1.w * vs_COLOR0.w;
					    u_xlat1.x = u_xlat1.x;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat1.x * vs_TEXCOORD4;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.xyz = u_xlat1.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    u_xlat1.x = u_xlat1.w * vs_COLOR0.w;
					    u_xlat1.x = u_xlat1.x;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat1.x * vs_TEXCOORD4;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.xyz = u_xlat1.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    u_xlat1.x = u_xlat1.w * vs_COLOR0.w;
					    u_xlat1.x = u_xlat1.x;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat1.x * vs_TEXCOORD4;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.xyz = u_xlat1.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    u_xlat1.x = u_xlat1.w * vs_COLOR0.w;
					    u_xlat1.x = u_xlat1.x;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat1.x * vs_TEXCOORD4;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.xyz = u_xlat1.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    u_xlat1.x = u_xlat1.w * vs_COLOR0.w;
					    u_xlat1.x = u_xlat1.x;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat1.x * vs_TEXCOORD4;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.xyz = u_xlat1.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    u_xlat1.x = u_xlat1.w * vs_COLOR0.w;
					    u_xlat1.x = u_xlat1.x;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat1.x * vs_TEXCOORD4;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.xyz = u_xlat1.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    u_xlat1.x = u_xlat1.w * vs_COLOR0.w;
					    u_xlat1.x = u_xlat1.x;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat1.x * vs_TEXCOORD4;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.xyz = u_xlat1.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    u_xlat1.x = u_xlat1.w * vs_COLOR0.w;
					    u_xlat1.x = u_xlat1.x;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat1.x * vs_TEXCOORD4;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.xyz = u_xlat1.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    u_xlat1.x = u_xlat1.w * vs_COLOR0.w;
					    u_xlat1.x = u_xlat1.x;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat1.x * vs_TEXCOORD4;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.xyz = u_xlat1.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    u_xlat1.x = u_xlat1.w * vs_COLOR0.w;
					    u_xlat1.x = u_xlat1.x;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat1.x * vs_TEXCOORD4;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.xyz = u_xlat1.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    u_xlat1.x = u_xlat1.w * vs_COLOR0.w;
					    u_xlat1.x = u_xlat1.x;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat1.x * vs_TEXCOORD4;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.xyz = u_xlat1.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    u_xlat1.x = u_xlat1.w * vs_COLOR0.w;
					    u_xlat1.x = u_xlat1.x;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat1.x * vs_TEXCOORD4;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat0 = u_xlat0.wxyz * vs_COLOR0.wxyz;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.yzw;
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat0 = u_xlat0.wxyz * vs_COLOR0.wxyz;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.yzw;
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat0 = u_xlat0.wxyz * vs_COLOR0.wxyz;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.yzw;
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat0 = u_xlat0.wxyz * vs_COLOR0.wxyz;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.yzw;
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.xyz = u_xlat1.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    u_xlat1.x = u_xlat1.w * vs_COLOR0.w;
					    u_xlat1.x = u_xlat1.x;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat1.x * vs_TEXCOORD4;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.xyz = u_xlat1.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    u_xlat1.x = u_xlat1.w * vs_COLOR0.w;
					    u_xlat1.x = u_xlat1.x;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat1.x * vs_TEXCOORD4;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.xyz = u_xlat1.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    u_xlat1.x = u_xlat1.w * vs_COLOR0.w;
					    u_xlat1.x = u_xlat1.x;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat1.x * vs_TEXCOORD4;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.xyz = u_xlat1.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    u_xlat1.x = u_xlat1.w * vs_COLOR0.w;
					    u_xlat1.x = u_xlat1.x;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat1.x * vs_TEXCOORD4;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.xyz = u_xlat1.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    u_xlat1.x = u_xlat1.w * vs_COLOR0.w;
					    u_xlat1.x = u_xlat1.x;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat1.x * vs_TEXCOORD4;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.xyz = u_xlat1.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    u_xlat1.x = u_xlat1.w * vs_COLOR0.w;
					    u_xlat1.x = u_xlat1.x;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat1.x * vs_TEXCOORD4;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.xyz = u_xlat1.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    u_xlat1.x = u_xlat1.w * vs_COLOR0.w;
					    u_xlat1.x = u_xlat1.x;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat1.x * vs_TEXCOORD4;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.xyz = u_xlat1.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    u_xlat1.x = u_xlat1.w * vs_COLOR0.w;
					    u_xlat1.x = u_xlat1.x;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat1.x * vs_TEXCOORD4;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.xyz = u_xlat1.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    u_xlat1.x = u_xlat1.w * vs_COLOR0.w;
					    u_xlat1.x = u_xlat1.x;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat1.x * vs_TEXCOORD4;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.xyz = u_xlat1.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    u_xlat1.x = u_xlat1.w * vs_COLOR0.w;
					    u_xlat1.x = u_xlat1.x;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat1.x * vs_TEXCOORD4;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.xyz = u_xlat1.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    u_xlat1.x = u_xlat1.w * vs_COLOR0.w;
					    u_xlat1.x = u_xlat1.x;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat1.x * vs_TEXCOORD4;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.xyz = u_xlat1.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    u_xlat1.x = u_xlat1.w * vs_COLOR0.w;
					    u_xlat1.x = u_xlat1.x;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat1.x * vs_TEXCOORD4;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					bool u_xlatb1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1.x = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat0.w = u_xlat0.w * u_xlat1.x;
					    u_xlat0 = u_xlat0 * vs_COLOR0;
					    SV_Target0.w = u_xlat0.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					bool u_xlatb1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1.x = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat0.w = u_xlat0.w * u_xlat1.x;
					    u_xlat0 = u_xlat0 * vs_COLOR0;
					    SV_Target0.w = u_xlat0.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					bool u_xlatb1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1.x = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat0.w = u_xlat0.w * u_xlat1.x;
					    u_xlat0 = u_xlat0 * vs_COLOR0;
					    SV_Target0.w = u_xlat0.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					bool u_xlatb1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1.x = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat0.w = u_xlat0.w * u_xlat1.x;
					    u_xlat0 = u_xlat0 * vs_COLOR0;
					    SV_Target0.w = u_xlat0.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					bool u_xlatb1;
					float u_xlat6;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1.x = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat6 = u_xlat0.w * u_xlat1.x;
					    u_xlat0.xyz = u_xlat0.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    u_xlat6 = u_xlat6 * vs_COLOR0.w;
					    SV_Target0.w = u_xlat6;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    u_xlat6 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat6 = (-u_xlat6) + 1.0;
					    u_xlat6 = u_xlat6 * _ProjectionParams.z;
					    u_xlat6 = max(u_xlat6, 0.0);
					    u_xlat6 = u_xlat6 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat6 = clamp(u_xlat6, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat6) * u_xlat0.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					bool u_xlatb1;
					float u_xlat6;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1.x = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat6 = u_xlat0.w * u_xlat1.x;
					    u_xlat0.xyz = u_xlat0.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    u_xlat6 = u_xlat6 * vs_COLOR0.w;
					    SV_Target0.w = u_xlat6;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    u_xlat6 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat6 = (-u_xlat6) + 1.0;
					    u_xlat6 = u_xlat6 * _ProjectionParams.z;
					    u_xlat6 = max(u_xlat6, 0.0);
					    u_xlat6 = u_xlat6 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat6 = clamp(u_xlat6, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat6) * u_xlat0.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					bool u_xlatb1;
					float u_xlat6;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1.x = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat6 = u_xlat0.w * u_xlat1.x;
					    u_xlat0.xyz = u_xlat0.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    u_xlat6 = u_xlat6 * vs_COLOR0.w;
					    SV_Target0.w = u_xlat6;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    u_xlat6 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat6 = (-u_xlat6) + 1.0;
					    u_xlat6 = u_xlat6 * _ProjectionParams.z;
					    u_xlat6 = max(u_xlat6, 0.0);
					    u_xlat6 = u_xlat6 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat6 = clamp(u_xlat6, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat6) * u_xlat0.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					bool u_xlatb1;
					float u_xlat6;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1.x = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat6 = u_xlat0.w * u_xlat1.x;
					    u_xlat0.xyz = u_xlat0.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    u_xlat6 = u_xlat6 * vs_COLOR0.w;
					    SV_Target0.w = u_xlat6;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    u_xlat6 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat6 = (-u_xlat6) + 1.0;
					    u_xlat6 = u_xlat6 * _ProjectionParams.z;
					    u_xlat6 = max(u_xlat6, 0.0);
					    u_xlat6 = u_xlat6 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat6 = clamp(u_xlat6, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat6) * u_xlat0.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					bool u_xlatb1;
					float u_xlat6;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1.x = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat6 = u_xlat0.w * u_xlat1.x;
					    u_xlat0.xyz = u_xlat0.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    u_xlat6 = u_xlat6 * vs_COLOR0.w;
					    SV_Target0.w = u_xlat6;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    u_xlat6 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat6 = (-u_xlat6) + 1.0;
					    u_xlat6 = u_xlat6 * _ProjectionParams.z;
					    u_xlat6 = max(u_xlat6, 0.0);
					    u_xlat6 = u_xlat6 * unity_FogParams.y;
					    u_xlat6 = exp2((-u_xlat6));
					    u_xlat6 = min(u_xlat6, 1.0);
					    SV_Target0.xyz = vec3(u_xlat6) * u_xlat0.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					bool u_xlatb1;
					float u_xlat6;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1.x = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat6 = u_xlat0.w * u_xlat1.x;
					    u_xlat0.xyz = u_xlat0.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    u_xlat6 = u_xlat6 * vs_COLOR0.w;
					    SV_Target0.w = u_xlat6;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    u_xlat6 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat6 = (-u_xlat6) + 1.0;
					    u_xlat6 = u_xlat6 * _ProjectionParams.z;
					    u_xlat6 = max(u_xlat6, 0.0);
					    u_xlat6 = u_xlat6 * unity_FogParams.y;
					    u_xlat6 = exp2((-u_xlat6));
					    u_xlat6 = min(u_xlat6, 1.0);
					    SV_Target0.xyz = vec3(u_xlat6) * u_xlat0.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					bool u_xlatb1;
					float u_xlat6;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1.x = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat6 = u_xlat0.w * u_xlat1.x;
					    u_xlat0.xyz = u_xlat0.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    u_xlat6 = u_xlat6 * vs_COLOR0.w;
					    SV_Target0.w = u_xlat6;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    u_xlat6 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat6 = (-u_xlat6) + 1.0;
					    u_xlat6 = u_xlat6 * _ProjectionParams.z;
					    u_xlat6 = max(u_xlat6, 0.0);
					    u_xlat6 = u_xlat6 * unity_FogParams.y;
					    u_xlat6 = exp2((-u_xlat6));
					    u_xlat6 = min(u_xlat6, 1.0);
					    SV_Target0.xyz = vec3(u_xlat6) * u_xlat0.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					bool u_xlatb1;
					float u_xlat6;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1.x = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat6 = u_xlat0.w * u_xlat1.x;
					    u_xlat0.xyz = u_xlat0.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    u_xlat6 = u_xlat6 * vs_COLOR0.w;
					    SV_Target0.w = u_xlat6;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    u_xlat6 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat6 = (-u_xlat6) + 1.0;
					    u_xlat6 = u_xlat6 * _ProjectionParams.z;
					    u_xlat6 = max(u_xlat6, 0.0);
					    u_xlat6 = u_xlat6 * unity_FogParams.y;
					    u_xlat6 = exp2((-u_xlat6));
					    u_xlat6 = min(u_xlat6, 1.0);
					    SV_Target0.xyz = vec3(u_xlat6) * u_xlat0.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					bool u_xlatb1;
					float u_xlat6;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1.x = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat6 = u_xlat0.w * u_xlat1.x;
					    u_xlat0.xyz = u_xlat0.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    u_xlat6 = u_xlat6 * vs_COLOR0.w;
					    SV_Target0.w = u_xlat6;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    u_xlat6 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat6 = (-u_xlat6) + 1.0;
					    u_xlat6 = u_xlat6 * _ProjectionParams.z;
					    u_xlat6 = max(u_xlat6, 0.0);
					    u_xlat6 = u_xlat6 * unity_FogParams.x;
					    u_xlat6 = u_xlat6 * (-u_xlat6);
					    u_xlat6 = exp2(u_xlat6);
					    SV_Target0.xyz = vec3(u_xlat6) * u_xlat0.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					bool u_xlatb1;
					float u_xlat6;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1.x = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat6 = u_xlat0.w * u_xlat1.x;
					    u_xlat0.xyz = u_xlat0.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    u_xlat6 = u_xlat6 * vs_COLOR0.w;
					    SV_Target0.w = u_xlat6;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    u_xlat6 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat6 = (-u_xlat6) + 1.0;
					    u_xlat6 = u_xlat6 * _ProjectionParams.z;
					    u_xlat6 = max(u_xlat6, 0.0);
					    u_xlat6 = u_xlat6 * unity_FogParams.x;
					    u_xlat6 = u_xlat6 * (-u_xlat6);
					    u_xlat6 = exp2(u_xlat6);
					    SV_Target0.xyz = vec3(u_xlat6) * u_xlat0.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					bool u_xlatb1;
					float u_xlat6;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1.x = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat6 = u_xlat0.w * u_xlat1.x;
					    u_xlat0.xyz = u_xlat0.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    u_xlat6 = u_xlat6 * vs_COLOR0.w;
					    SV_Target0.w = u_xlat6;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    u_xlat6 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat6 = (-u_xlat6) + 1.0;
					    u_xlat6 = u_xlat6 * _ProjectionParams.z;
					    u_xlat6 = max(u_xlat6, 0.0);
					    u_xlat6 = u_xlat6 * unity_FogParams.x;
					    u_xlat6 = u_xlat6 * (-u_xlat6);
					    u_xlat6 = exp2(u_xlat6);
					    SV_Target0.xyz = vec3(u_xlat6) * u_xlat0.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					bool u_xlatb1;
					float u_xlat6;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1.x = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat6 = u_xlat0.w * u_xlat1.x;
					    u_xlat0.xyz = u_xlat0.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    u_xlat6 = u_xlat6 * vs_COLOR0.w;
					    SV_Target0.w = u_xlat6;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    u_xlat6 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat6 = (-u_xlat6) + 1.0;
					    u_xlat6 = u_xlat6 * _ProjectionParams.z;
					    u_xlat6 = max(u_xlat6, 0.0);
					    u_xlat6 = u_xlat6 * unity_FogParams.x;
					    u_xlat6 = u_xlat6 * (-u_xlat6);
					    u_xlat6 = exp2(u_xlat6);
					    SV_Target0.xyz = vec3(u_xlat6) * u_xlat0.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					bool u_xlatb1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1.x = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat0.w = u_xlat0.w * u_xlat1.x;
					    u_xlat0 = u_xlat0 * vs_COLOR0;
					    SV_Target0.w = u_xlat0.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					bool u_xlatb1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1.x = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat0.w = u_xlat0.w * u_xlat1.x;
					    u_xlat0 = u_xlat0 * vs_COLOR0;
					    SV_Target0.w = u_xlat0.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					bool u_xlatb1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1.x = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat0.w = u_xlat0.w * u_xlat1.x;
					    u_xlat0 = u_xlat0 * vs_COLOR0;
					    SV_Target0.w = u_xlat0.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					bool u_xlatb1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1.x = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat0.w = u_xlat0.w * u_xlat1.x;
					    u_xlat0 = u_xlat0 * vs_COLOR0;
					    SV_Target0.w = u_xlat0.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					bool u_xlatb1;
					float u_xlat6;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1.x = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat6 = u_xlat0.w * u_xlat1.x;
					    u_xlat0.xyz = u_xlat0.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    u_xlat6 = u_xlat6 * vs_COLOR0.w;
					    SV_Target0.w = u_xlat6;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    u_xlat6 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat6 = (-u_xlat6) + 1.0;
					    u_xlat6 = u_xlat6 * _ProjectionParams.z;
					    u_xlat6 = max(u_xlat6, 0.0);
					    u_xlat6 = u_xlat6 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat6 = clamp(u_xlat6, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat6) * u_xlat0.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					bool u_xlatb1;
					float u_xlat6;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1.x = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat6 = u_xlat0.w * u_xlat1.x;
					    u_xlat0.xyz = u_xlat0.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    u_xlat6 = u_xlat6 * vs_COLOR0.w;
					    SV_Target0.w = u_xlat6;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    u_xlat6 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat6 = (-u_xlat6) + 1.0;
					    u_xlat6 = u_xlat6 * _ProjectionParams.z;
					    u_xlat6 = max(u_xlat6, 0.0);
					    u_xlat6 = u_xlat6 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat6 = clamp(u_xlat6, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat6) * u_xlat0.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					bool u_xlatb1;
					float u_xlat6;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1.x = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat6 = u_xlat0.w * u_xlat1.x;
					    u_xlat0.xyz = u_xlat0.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    u_xlat6 = u_xlat6 * vs_COLOR0.w;
					    SV_Target0.w = u_xlat6;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    u_xlat6 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat6 = (-u_xlat6) + 1.0;
					    u_xlat6 = u_xlat6 * _ProjectionParams.z;
					    u_xlat6 = max(u_xlat6, 0.0);
					    u_xlat6 = u_xlat6 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat6 = clamp(u_xlat6, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat6) * u_xlat0.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					bool u_xlatb1;
					float u_xlat6;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1.x = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat6 = u_xlat0.w * u_xlat1.x;
					    u_xlat0.xyz = u_xlat0.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    u_xlat6 = u_xlat6 * vs_COLOR0.w;
					    SV_Target0.w = u_xlat6;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    u_xlat6 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat6 = (-u_xlat6) + 1.0;
					    u_xlat6 = u_xlat6 * _ProjectionParams.z;
					    u_xlat6 = max(u_xlat6, 0.0);
					    u_xlat6 = u_xlat6 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat6 = clamp(u_xlat6, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat6) * u_xlat0.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					bool u_xlatb1;
					float u_xlat6;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1.x = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat6 = u_xlat0.w * u_xlat1.x;
					    u_xlat0.xyz = u_xlat0.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    u_xlat6 = u_xlat6 * vs_COLOR0.w;
					    SV_Target0.w = u_xlat6;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    u_xlat6 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat6 = (-u_xlat6) + 1.0;
					    u_xlat6 = u_xlat6 * _ProjectionParams.z;
					    u_xlat6 = max(u_xlat6, 0.0);
					    u_xlat6 = u_xlat6 * unity_FogParams.y;
					    u_xlat6 = exp2((-u_xlat6));
					    u_xlat6 = min(u_xlat6, 1.0);
					    SV_Target0.xyz = vec3(u_xlat6) * u_xlat0.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					bool u_xlatb1;
					float u_xlat6;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1.x = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat6 = u_xlat0.w * u_xlat1.x;
					    u_xlat0.xyz = u_xlat0.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    u_xlat6 = u_xlat6 * vs_COLOR0.w;
					    SV_Target0.w = u_xlat6;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    u_xlat6 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat6 = (-u_xlat6) + 1.0;
					    u_xlat6 = u_xlat6 * _ProjectionParams.z;
					    u_xlat6 = max(u_xlat6, 0.0);
					    u_xlat6 = u_xlat6 * unity_FogParams.y;
					    u_xlat6 = exp2((-u_xlat6));
					    u_xlat6 = min(u_xlat6, 1.0);
					    SV_Target0.xyz = vec3(u_xlat6) * u_xlat0.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					bool u_xlatb1;
					float u_xlat6;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1.x = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat6 = u_xlat0.w * u_xlat1.x;
					    u_xlat0.xyz = u_xlat0.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    u_xlat6 = u_xlat6 * vs_COLOR0.w;
					    SV_Target0.w = u_xlat6;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    u_xlat6 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat6 = (-u_xlat6) + 1.0;
					    u_xlat6 = u_xlat6 * _ProjectionParams.z;
					    u_xlat6 = max(u_xlat6, 0.0);
					    u_xlat6 = u_xlat6 * unity_FogParams.y;
					    u_xlat6 = exp2((-u_xlat6));
					    u_xlat6 = min(u_xlat6, 1.0);
					    SV_Target0.xyz = vec3(u_xlat6) * u_xlat0.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					bool u_xlatb1;
					float u_xlat6;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1.x = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat6 = u_xlat0.w * u_xlat1.x;
					    u_xlat0.xyz = u_xlat0.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    u_xlat6 = u_xlat6 * vs_COLOR0.w;
					    SV_Target0.w = u_xlat6;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    u_xlat6 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat6 = (-u_xlat6) + 1.0;
					    u_xlat6 = u_xlat6 * _ProjectionParams.z;
					    u_xlat6 = max(u_xlat6, 0.0);
					    u_xlat6 = u_xlat6 * unity_FogParams.y;
					    u_xlat6 = exp2((-u_xlat6));
					    u_xlat6 = min(u_xlat6, 1.0);
					    SV_Target0.xyz = vec3(u_xlat6) * u_xlat0.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					bool u_xlatb1;
					float u_xlat6;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1.x = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat6 = u_xlat0.w * u_xlat1.x;
					    u_xlat0.xyz = u_xlat0.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    u_xlat6 = u_xlat6 * vs_COLOR0.w;
					    SV_Target0.w = u_xlat6;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    u_xlat6 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat6 = (-u_xlat6) + 1.0;
					    u_xlat6 = u_xlat6 * _ProjectionParams.z;
					    u_xlat6 = max(u_xlat6, 0.0);
					    u_xlat6 = u_xlat6 * unity_FogParams.x;
					    u_xlat6 = u_xlat6 * (-u_xlat6);
					    u_xlat6 = exp2(u_xlat6);
					    SV_Target0.xyz = vec3(u_xlat6) * u_xlat0.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					bool u_xlatb1;
					float u_xlat6;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1.x = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat6 = u_xlat0.w * u_xlat1.x;
					    u_xlat0.xyz = u_xlat0.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    u_xlat6 = u_xlat6 * vs_COLOR0.w;
					    SV_Target0.w = u_xlat6;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    u_xlat6 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat6 = (-u_xlat6) + 1.0;
					    u_xlat6 = u_xlat6 * _ProjectionParams.z;
					    u_xlat6 = max(u_xlat6, 0.0);
					    u_xlat6 = u_xlat6 * unity_FogParams.x;
					    u_xlat6 = u_xlat6 * (-u_xlat6);
					    u_xlat6 = exp2(u_xlat6);
					    SV_Target0.xyz = vec3(u_xlat6) * u_xlat0.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					bool u_xlatb1;
					float u_xlat6;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1.x = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat6 = u_xlat0.w * u_xlat1.x;
					    u_xlat0.xyz = u_xlat0.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    u_xlat6 = u_xlat6 * vs_COLOR0.w;
					    SV_Target0.w = u_xlat6;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    u_xlat6 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat6 = (-u_xlat6) + 1.0;
					    u_xlat6 = u_xlat6 * _ProjectionParams.z;
					    u_xlat6 = max(u_xlat6, 0.0);
					    u_xlat6 = u_xlat6 * unity_FogParams.x;
					    u_xlat6 = u_xlat6 * (-u_xlat6);
					    u_xlat6 = exp2(u_xlat6);
					    SV_Target0.xyz = vec3(u_xlat6) * u_xlat0.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					bool u_xlatb1;
					float u_xlat6;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1.x = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat6 = u_xlat0.w * u_xlat1.x;
					    u_xlat0.xyz = u_xlat0.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    u_xlat6 = u_xlat6 * vs_COLOR0.w;
					    SV_Target0.w = u_xlat6;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    u_xlat6 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat6 = (-u_xlat6) + 1.0;
					    u_xlat6 = u_xlat6 * _ProjectionParams.z;
					    u_xlat6 = max(u_xlat6, 0.0);
					    u_xlat6 = u_xlat6 * unity_FogParams.x;
					    u_xlat6 = u_xlat6 * (-u_xlat6);
					    u_xlat6 = exp2(u_xlat6);
					    SV_Target0.xyz = vec3(u_xlat6) * u_xlat0.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					bool u_xlatb1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1.x = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat0.w = u_xlat0.w * u_xlat1.x;
					    u_xlat0 = u_xlat0.wxyz * vs_COLOR0.wxyz;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.yzw;
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					bool u_xlatb1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1.x = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat0.w = u_xlat0.w * u_xlat1.x;
					    u_xlat0 = u_xlat0.wxyz * vs_COLOR0.wxyz;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.yzw;
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					bool u_xlatb1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1.x = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat0.w = u_xlat0.w * u_xlat1.x;
					    u_xlat0 = u_xlat0.wxyz * vs_COLOR0.wxyz;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.yzw;
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					bool u_xlatb1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1.x = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat0.w = u_xlat0.w * u_xlat1.x;
					    u_xlat0 = u_xlat0.wxyz * vs_COLOR0.wxyz;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.yzw;
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					bool u_xlatb1;
					float u_xlat6;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1.x = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat6 = u_xlat0.w * u_xlat1.x;
					    u_xlat0.xyz = u_xlat0.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    u_xlat1.x = u_xlat6 * vs_COLOR0.w;
					    u_xlat1.x = u_xlat1.x;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat1.x * vs_TEXCOORD4;
					    u_xlat6 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat6 = (-u_xlat6) + 1.0;
					    u_xlat6 = u_xlat6 * _ProjectionParams.z;
					    u_xlat6 = max(u_xlat6, 0.0);
					    u_xlat6 = u_xlat6 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat6 = clamp(u_xlat6, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat6) * u_xlat0.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					bool u_xlatb1;
					float u_xlat6;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1.x = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat6 = u_xlat0.w * u_xlat1.x;
					    u_xlat0.xyz = u_xlat0.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    u_xlat1.x = u_xlat6 * vs_COLOR0.w;
					    u_xlat1.x = u_xlat1.x;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat1.x * vs_TEXCOORD4;
					    u_xlat6 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat6 = (-u_xlat6) + 1.0;
					    u_xlat6 = u_xlat6 * _ProjectionParams.z;
					    u_xlat6 = max(u_xlat6, 0.0);
					    u_xlat6 = u_xlat6 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat6 = clamp(u_xlat6, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat6) * u_xlat0.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					bool u_xlatb1;
					float u_xlat6;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1.x = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat6 = u_xlat0.w * u_xlat1.x;
					    u_xlat0.xyz = u_xlat0.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    u_xlat1.x = u_xlat6 * vs_COLOR0.w;
					    u_xlat1.x = u_xlat1.x;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat1.x * vs_TEXCOORD4;
					    u_xlat6 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat6 = (-u_xlat6) + 1.0;
					    u_xlat6 = u_xlat6 * _ProjectionParams.z;
					    u_xlat6 = max(u_xlat6, 0.0);
					    u_xlat6 = u_xlat6 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat6 = clamp(u_xlat6, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat6) * u_xlat0.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					bool u_xlatb1;
					float u_xlat6;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1.x = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat6 = u_xlat0.w * u_xlat1.x;
					    u_xlat0.xyz = u_xlat0.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    u_xlat1.x = u_xlat6 * vs_COLOR0.w;
					    u_xlat1.x = u_xlat1.x;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat1.x * vs_TEXCOORD4;
					    u_xlat6 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat6 = (-u_xlat6) + 1.0;
					    u_xlat6 = u_xlat6 * _ProjectionParams.z;
					    u_xlat6 = max(u_xlat6, 0.0);
					    u_xlat6 = u_xlat6 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat6 = clamp(u_xlat6, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat6) * u_xlat0.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					bool u_xlatb1;
					float u_xlat6;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1.x = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat6 = u_xlat0.w * u_xlat1.x;
					    u_xlat0.xyz = u_xlat0.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    u_xlat1.x = u_xlat6 * vs_COLOR0.w;
					    u_xlat1.x = u_xlat1.x;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat1.x * vs_TEXCOORD4;
					    u_xlat6 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat6 = (-u_xlat6) + 1.0;
					    u_xlat6 = u_xlat6 * _ProjectionParams.z;
					    u_xlat6 = max(u_xlat6, 0.0);
					    u_xlat6 = u_xlat6 * unity_FogParams.y;
					    u_xlat6 = exp2((-u_xlat6));
					    u_xlat6 = min(u_xlat6, 1.0);
					    SV_Target0.xyz = vec3(u_xlat6) * u_xlat0.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					bool u_xlatb1;
					float u_xlat6;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1.x = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat6 = u_xlat0.w * u_xlat1.x;
					    u_xlat0.xyz = u_xlat0.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    u_xlat1.x = u_xlat6 * vs_COLOR0.w;
					    u_xlat1.x = u_xlat1.x;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat1.x * vs_TEXCOORD4;
					    u_xlat6 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat6 = (-u_xlat6) + 1.0;
					    u_xlat6 = u_xlat6 * _ProjectionParams.z;
					    u_xlat6 = max(u_xlat6, 0.0);
					    u_xlat6 = u_xlat6 * unity_FogParams.y;
					    u_xlat6 = exp2((-u_xlat6));
					    u_xlat6 = min(u_xlat6, 1.0);
					    SV_Target0.xyz = vec3(u_xlat6) * u_xlat0.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					bool u_xlatb1;
					float u_xlat6;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1.x = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat6 = u_xlat0.w * u_xlat1.x;
					    u_xlat0.xyz = u_xlat0.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    u_xlat1.x = u_xlat6 * vs_COLOR0.w;
					    u_xlat1.x = u_xlat1.x;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat1.x * vs_TEXCOORD4;
					    u_xlat6 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat6 = (-u_xlat6) + 1.0;
					    u_xlat6 = u_xlat6 * _ProjectionParams.z;
					    u_xlat6 = max(u_xlat6, 0.0);
					    u_xlat6 = u_xlat6 * unity_FogParams.y;
					    u_xlat6 = exp2((-u_xlat6));
					    u_xlat6 = min(u_xlat6, 1.0);
					    SV_Target0.xyz = vec3(u_xlat6) * u_xlat0.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					bool u_xlatb1;
					float u_xlat6;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1.x = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat6 = u_xlat0.w * u_xlat1.x;
					    u_xlat0.xyz = u_xlat0.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    u_xlat1.x = u_xlat6 * vs_COLOR0.w;
					    u_xlat1.x = u_xlat1.x;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat1.x * vs_TEXCOORD4;
					    u_xlat6 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat6 = (-u_xlat6) + 1.0;
					    u_xlat6 = u_xlat6 * _ProjectionParams.z;
					    u_xlat6 = max(u_xlat6, 0.0);
					    u_xlat6 = u_xlat6 * unity_FogParams.y;
					    u_xlat6 = exp2((-u_xlat6));
					    u_xlat6 = min(u_xlat6, 1.0);
					    SV_Target0.xyz = vec3(u_xlat6) * u_xlat0.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					bool u_xlatb1;
					float u_xlat6;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1.x = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat6 = u_xlat0.w * u_xlat1.x;
					    u_xlat0.xyz = u_xlat0.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    u_xlat1.x = u_xlat6 * vs_COLOR0.w;
					    u_xlat1.x = u_xlat1.x;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat1.x * vs_TEXCOORD4;
					    u_xlat6 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat6 = (-u_xlat6) + 1.0;
					    u_xlat6 = u_xlat6 * _ProjectionParams.z;
					    u_xlat6 = max(u_xlat6, 0.0);
					    u_xlat6 = u_xlat6 * unity_FogParams.x;
					    u_xlat6 = u_xlat6 * (-u_xlat6);
					    u_xlat6 = exp2(u_xlat6);
					    SV_Target0.xyz = vec3(u_xlat6) * u_xlat0.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					bool u_xlatb1;
					float u_xlat6;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1.x = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat6 = u_xlat0.w * u_xlat1.x;
					    u_xlat0.xyz = u_xlat0.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    u_xlat1.x = u_xlat6 * vs_COLOR0.w;
					    u_xlat1.x = u_xlat1.x;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat1.x * vs_TEXCOORD4;
					    u_xlat6 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat6 = (-u_xlat6) + 1.0;
					    u_xlat6 = u_xlat6 * _ProjectionParams.z;
					    u_xlat6 = max(u_xlat6, 0.0);
					    u_xlat6 = u_xlat6 * unity_FogParams.x;
					    u_xlat6 = u_xlat6 * (-u_xlat6);
					    u_xlat6 = exp2(u_xlat6);
					    SV_Target0.xyz = vec3(u_xlat6) * u_xlat0.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					bool u_xlatb1;
					float u_xlat6;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1.x = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat6 = u_xlat0.w * u_xlat1.x;
					    u_xlat0.xyz = u_xlat0.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    u_xlat1.x = u_xlat6 * vs_COLOR0.w;
					    u_xlat1.x = u_xlat1.x;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat1.x * vs_TEXCOORD4;
					    u_xlat6 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat6 = (-u_xlat6) + 1.0;
					    u_xlat6 = u_xlat6 * _ProjectionParams.z;
					    u_xlat6 = max(u_xlat6, 0.0);
					    u_xlat6 = u_xlat6 * unity_FogParams.x;
					    u_xlat6 = u_xlat6 * (-u_xlat6);
					    u_xlat6 = exp2(u_xlat6);
					    SV_Target0.xyz = vec3(u_xlat6) * u_xlat0.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					bool u_xlatb1;
					float u_xlat6;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1.x = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat6 = u_xlat0.w * u_xlat1.x;
					    u_xlat0.xyz = u_xlat0.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    u_xlat1.x = u_xlat6 * vs_COLOR0.w;
					    u_xlat1.x = u_xlat1.x;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat1.x * vs_TEXCOORD4;
					    u_xlat6 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat6 = (-u_xlat6) + 1.0;
					    u_xlat6 = u_xlat6 * _ProjectionParams.z;
					    u_xlat6 = max(u_xlat6, 0.0);
					    u_xlat6 = u_xlat6 * unity_FogParams.x;
					    u_xlat6 = u_xlat6 * (-u_xlat6);
					    u_xlat6 = exp2(u_xlat6);
					    SV_Target0.xyz = vec3(u_xlat6) * u_xlat0.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					bool u_xlatb1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1.x = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat0.w = u_xlat0.w * u_xlat1.x;
					    u_xlat0 = u_xlat0.wxyz * vs_COLOR0.wxyz;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.yzw;
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					bool u_xlatb1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1.x = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat0.w = u_xlat0.w * u_xlat1.x;
					    u_xlat0 = u_xlat0.wxyz * vs_COLOR0.wxyz;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.yzw;
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					bool u_xlatb1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1.x = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat0.w = u_xlat0.w * u_xlat1.x;
					    u_xlat0 = u_xlat0.wxyz * vs_COLOR0.wxyz;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.yzw;
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					bool u_xlatb1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1.x = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat0.w = u_xlat0.w * u_xlat1.x;
					    u_xlat0 = u_xlat0.wxyz * vs_COLOR0.wxyz;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.yzw;
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					bool u_xlatb1;
					float u_xlat6;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1.x = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat6 = u_xlat0.w * u_xlat1.x;
					    u_xlat0.xyz = u_xlat0.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    u_xlat1.x = u_xlat6 * vs_COLOR0.w;
					    u_xlat1.x = u_xlat1.x;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat1.x * vs_TEXCOORD4;
					    u_xlat6 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat6 = (-u_xlat6) + 1.0;
					    u_xlat6 = u_xlat6 * _ProjectionParams.z;
					    u_xlat6 = max(u_xlat6, 0.0);
					    u_xlat6 = u_xlat6 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat6 = clamp(u_xlat6, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat6) * u_xlat0.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					bool u_xlatb1;
					float u_xlat6;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1.x = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat6 = u_xlat0.w * u_xlat1.x;
					    u_xlat0.xyz = u_xlat0.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    u_xlat1.x = u_xlat6 * vs_COLOR0.w;
					    u_xlat1.x = u_xlat1.x;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat1.x * vs_TEXCOORD4;
					    u_xlat6 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat6 = (-u_xlat6) + 1.0;
					    u_xlat6 = u_xlat6 * _ProjectionParams.z;
					    u_xlat6 = max(u_xlat6, 0.0);
					    u_xlat6 = u_xlat6 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat6 = clamp(u_xlat6, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat6) * u_xlat0.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					bool u_xlatb1;
					float u_xlat6;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1.x = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat6 = u_xlat0.w * u_xlat1.x;
					    u_xlat0.xyz = u_xlat0.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    u_xlat1.x = u_xlat6 * vs_COLOR0.w;
					    u_xlat1.x = u_xlat1.x;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat1.x * vs_TEXCOORD4;
					    u_xlat6 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat6 = (-u_xlat6) + 1.0;
					    u_xlat6 = u_xlat6 * _ProjectionParams.z;
					    u_xlat6 = max(u_xlat6, 0.0);
					    u_xlat6 = u_xlat6 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat6 = clamp(u_xlat6, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat6) * u_xlat0.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					bool u_xlatb1;
					float u_xlat6;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1.x = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat6 = u_xlat0.w * u_xlat1.x;
					    u_xlat0.xyz = u_xlat0.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    u_xlat1.x = u_xlat6 * vs_COLOR0.w;
					    u_xlat1.x = u_xlat1.x;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat1.x * vs_TEXCOORD4;
					    u_xlat6 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat6 = (-u_xlat6) + 1.0;
					    u_xlat6 = u_xlat6 * _ProjectionParams.z;
					    u_xlat6 = max(u_xlat6, 0.0);
					    u_xlat6 = u_xlat6 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat6 = clamp(u_xlat6, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat6) * u_xlat0.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					bool u_xlatb1;
					float u_xlat6;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1.x = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat6 = u_xlat0.w * u_xlat1.x;
					    u_xlat0.xyz = u_xlat0.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    u_xlat1.x = u_xlat6 * vs_COLOR0.w;
					    u_xlat1.x = u_xlat1.x;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat1.x * vs_TEXCOORD4;
					    u_xlat6 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat6 = (-u_xlat6) + 1.0;
					    u_xlat6 = u_xlat6 * _ProjectionParams.z;
					    u_xlat6 = max(u_xlat6, 0.0);
					    u_xlat6 = u_xlat6 * unity_FogParams.y;
					    u_xlat6 = exp2((-u_xlat6));
					    u_xlat6 = min(u_xlat6, 1.0);
					    SV_Target0.xyz = vec3(u_xlat6) * u_xlat0.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					bool u_xlatb1;
					float u_xlat6;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1.x = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat6 = u_xlat0.w * u_xlat1.x;
					    u_xlat0.xyz = u_xlat0.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    u_xlat1.x = u_xlat6 * vs_COLOR0.w;
					    u_xlat1.x = u_xlat1.x;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat1.x * vs_TEXCOORD4;
					    u_xlat6 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat6 = (-u_xlat6) + 1.0;
					    u_xlat6 = u_xlat6 * _ProjectionParams.z;
					    u_xlat6 = max(u_xlat6, 0.0);
					    u_xlat6 = u_xlat6 * unity_FogParams.y;
					    u_xlat6 = exp2((-u_xlat6));
					    u_xlat6 = min(u_xlat6, 1.0);
					    SV_Target0.xyz = vec3(u_xlat6) * u_xlat0.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					bool u_xlatb1;
					float u_xlat6;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1.x = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat6 = u_xlat0.w * u_xlat1.x;
					    u_xlat0.xyz = u_xlat0.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    u_xlat1.x = u_xlat6 * vs_COLOR0.w;
					    u_xlat1.x = u_xlat1.x;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat1.x * vs_TEXCOORD4;
					    u_xlat6 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat6 = (-u_xlat6) + 1.0;
					    u_xlat6 = u_xlat6 * _ProjectionParams.z;
					    u_xlat6 = max(u_xlat6, 0.0);
					    u_xlat6 = u_xlat6 * unity_FogParams.y;
					    u_xlat6 = exp2((-u_xlat6));
					    u_xlat6 = min(u_xlat6, 1.0);
					    SV_Target0.xyz = vec3(u_xlat6) * u_xlat0.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					bool u_xlatb1;
					float u_xlat6;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1.x = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat6 = u_xlat0.w * u_xlat1.x;
					    u_xlat0.xyz = u_xlat0.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    u_xlat1.x = u_xlat6 * vs_COLOR0.w;
					    u_xlat1.x = u_xlat1.x;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat1.x * vs_TEXCOORD4;
					    u_xlat6 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat6 = (-u_xlat6) + 1.0;
					    u_xlat6 = u_xlat6 * _ProjectionParams.z;
					    u_xlat6 = max(u_xlat6, 0.0);
					    u_xlat6 = u_xlat6 * unity_FogParams.y;
					    u_xlat6 = exp2((-u_xlat6));
					    u_xlat6 = min(u_xlat6, 1.0);
					    SV_Target0.xyz = vec3(u_xlat6) * u_xlat0.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					bool u_xlatb1;
					float u_xlat6;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1.x = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat6 = u_xlat0.w * u_xlat1.x;
					    u_xlat0.xyz = u_xlat0.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    u_xlat1.x = u_xlat6 * vs_COLOR0.w;
					    u_xlat1.x = u_xlat1.x;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat1.x * vs_TEXCOORD4;
					    u_xlat6 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat6 = (-u_xlat6) + 1.0;
					    u_xlat6 = u_xlat6 * _ProjectionParams.z;
					    u_xlat6 = max(u_xlat6, 0.0);
					    u_xlat6 = u_xlat6 * unity_FogParams.x;
					    u_xlat6 = u_xlat6 * (-u_xlat6);
					    u_xlat6 = exp2(u_xlat6);
					    SV_Target0.xyz = vec3(u_xlat6) * u_xlat0.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					bool u_xlatb1;
					float u_xlat6;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1.x = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat6 = u_xlat0.w * u_xlat1.x;
					    u_xlat0.xyz = u_xlat0.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    u_xlat1.x = u_xlat6 * vs_COLOR0.w;
					    u_xlat1.x = u_xlat1.x;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat1.x * vs_TEXCOORD4;
					    u_xlat6 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat6 = (-u_xlat6) + 1.0;
					    u_xlat6 = u_xlat6 * _ProjectionParams.z;
					    u_xlat6 = max(u_xlat6, 0.0);
					    u_xlat6 = u_xlat6 * unity_FogParams.x;
					    u_xlat6 = u_xlat6 * (-u_xlat6);
					    u_xlat6 = exp2(u_xlat6);
					    SV_Target0.xyz = vec3(u_xlat6) * u_xlat0.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					bool u_xlatb1;
					float u_xlat6;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1.x = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat6 = u_xlat0.w * u_xlat1.x;
					    u_xlat0.xyz = u_xlat0.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    u_xlat1.x = u_xlat6 * vs_COLOR0.w;
					    u_xlat1.x = u_xlat1.x;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat1.x * vs_TEXCOORD4;
					    u_xlat6 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat6 = (-u_xlat6) + 1.0;
					    u_xlat6 = u_xlat6 * _ProjectionParams.z;
					    u_xlat6 = max(u_xlat6, 0.0);
					    u_xlat6 = u_xlat6 * unity_FogParams.x;
					    u_xlat6 = u_xlat6 * (-u_xlat6);
					    u_xlat6 = exp2(u_xlat6);
					    SV_Target0.xyz = vec3(u_xlat6) * u_xlat0.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					bool u_xlatb1;
					float u_xlat6;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1.x = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat6 = u_xlat0.w * u_xlat1.x;
					    u_xlat0.xyz = u_xlat0.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    u_xlat1.x = u_xlat6 * vs_COLOR0.w;
					    u_xlat1.x = u_xlat1.x;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat1.x * vs_TEXCOORD4;
					    u_xlat6 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat6 = (-u_xlat6) + 1.0;
					    u_xlat6 = u_xlat6 * _ProjectionParams.z;
					    u_xlat6 = max(u_xlat6, 0.0);
					    u_xlat6 = u_xlat6 * unity_FogParams.x;
					    u_xlat6 = u_xlat6 * (-u_xlat6);
					    u_xlat6 = exp2(u_xlat6);
					    SV_Target0.xyz = vec3(u_xlat6) * u_xlat0.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    SV_Target0.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    SV_Target0.w = u_xlatb0 ? 1.0 : float(0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    SV_Target0.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    SV_Target0.w = u_xlatb0 ? 1.0 : float(0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    SV_Target0.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    SV_Target0.w = u_xlatb0 ? 1.0 : float(0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    SV_Target0.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    SV_Target0.w = u_xlatb0 ? 1.0 : float(0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + unity_FogColor.xyz;
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    SV_Target0.w = u_xlatb0 ? 1.0 : float(0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + unity_FogColor.xyz;
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    SV_Target0.w = u_xlatb0 ? 1.0 : float(0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + unity_FogColor.xyz;
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    SV_Target0.w = u_xlatb0 ? 1.0 : float(0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + unity_FogColor.xyz;
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    SV_Target0.w = u_xlatb0 ? 1.0 : float(0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + unity_FogColor.xyz;
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    SV_Target0.w = u_xlatb0 ? 1.0 : float(0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + unity_FogColor.xyz;
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    SV_Target0.w = u_xlatb0 ? 1.0 : float(0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + unity_FogColor.xyz;
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    SV_Target0.w = u_xlatb0 ? 1.0 : float(0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + unity_FogColor.xyz;
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    SV_Target0.w = u_xlatb0 ? 1.0 : float(0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + unity_FogColor.xyz;
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    SV_Target0.w = u_xlatb0 ? 1.0 : float(0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + unity_FogColor.xyz;
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    SV_Target0.w = u_xlatb0 ? 1.0 : float(0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + unity_FogColor.xyz;
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    SV_Target0.w = u_xlatb0 ? 1.0 : float(0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + unity_FogColor.xyz;
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    SV_Target0.w = u_xlatb0 ? 1.0 : float(0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    SV_Target0.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    SV_Target0.w = u_xlatb0 ? 1.0 : float(0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    SV_Target0.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    SV_Target0.w = u_xlatb0 ? 1.0 : float(0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    SV_Target0.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    SV_Target0.w = u_xlatb0 ? 1.0 : float(0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    SV_Target0.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    SV_Target0.w = u_xlatb0 ? 1.0 : float(0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + unity_FogColor.xyz;
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    SV_Target0.w = u_xlatb0 ? 1.0 : float(0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + unity_FogColor.xyz;
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    SV_Target0.w = u_xlatb0 ? 1.0 : float(0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + unity_FogColor.xyz;
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    SV_Target0.w = u_xlatb0 ? 1.0 : float(0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + unity_FogColor.xyz;
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    SV_Target0.w = u_xlatb0 ? 1.0 : float(0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + unity_FogColor.xyz;
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    SV_Target0.w = u_xlatb0 ? 1.0 : float(0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + unity_FogColor.xyz;
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    SV_Target0.w = u_xlatb0 ? 1.0 : float(0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + unity_FogColor.xyz;
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    SV_Target0.w = u_xlatb0 ? 1.0 : float(0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + unity_FogColor.xyz;
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    SV_Target0.w = u_xlatb0 ? 1.0 : float(0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + unity_FogColor.xyz;
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    SV_Target0.w = u_xlatb0 ? 1.0 : float(0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + unity_FogColor.xyz;
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    SV_Target0.w = u_xlatb0 ? 1.0 : float(0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + unity_FogColor.xyz;
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    SV_Target0.w = u_xlatb0 ? 1.0 : float(0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + unity_FogColor.xyz;
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    SV_Target0.w = u_xlatb0 ? 1.0 : float(0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    SV_Target0.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat0 = u_xlatb0 ? 1.0 : float(0.0);
					    SV_Target0.w = u_xlat0 * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    SV_Target0.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat0 = u_xlatb0 ? 1.0 : float(0.0);
					    SV_Target0.w = u_xlat0 * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    SV_Target0.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat0 = u_xlatb0 ? 1.0 : float(0.0);
					    SV_Target0.w = u_xlat0 * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    SV_Target0.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat0 = u_xlatb0 ? 1.0 : float(0.0);
					    SV_Target0.w = u_xlat0 * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + unity_FogColor.xyz;
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    u_xlat0 = u_xlatb0 ? 1.0 : float(0.0);
					    SV_Target0.w = u_xlat0 * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + unity_FogColor.xyz;
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    u_xlat0 = u_xlatb0 ? 1.0 : float(0.0);
					    SV_Target0.w = u_xlat0 * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + unity_FogColor.xyz;
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    u_xlat0 = u_xlatb0 ? 1.0 : float(0.0);
					    SV_Target0.w = u_xlat0 * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + unity_FogColor.xyz;
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    u_xlat0 = u_xlatb0 ? 1.0 : float(0.0);
					    SV_Target0.w = u_xlat0 * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + unity_FogColor.xyz;
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    u_xlat0 = u_xlatb0 ? 1.0 : float(0.0);
					    SV_Target0.w = u_xlat0 * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + unity_FogColor.xyz;
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    u_xlat0 = u_xlatb0 ? 1.0 : float(0.0);
					    SV_Target0.w = u_xlat0 * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + unity_FogColor.xyz;
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    u_xlat0 = u_xlatb0 ? 1.0 : float(0.0);
					    SV_Target0.w = u_xlat0 * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + unity_FogColor.xyz;
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    u_xlat0 = u_xlatb0 ? 1.0 : float(0.0);
					    SV_Target0.w = u_xlat0 * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + unity_FogColor.xyz;
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    u_xlat0 = u_xlatb0 ? 1.0 : float(0.0);
					    SV_Target0.w = u_xlat0 * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + unity_FogColor.xyz;
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    u_xlat0 = u_xlatb0 ? 1.0 : float(0.0);
					    SV_Target0.w = u_xlat0 * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + unity_FogColor.xyz;
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    u_xlat0 = u_xlatb0 ? 1.0 : float(0.0);
					    SV_Target0.w = u_xlat0 * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + unity_FogColor.xyz;
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    u_xlat0 = u_xlatb0 ? 1.0 : float(0.0);
					    SV_Target0.w = u_xlat0 * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    SV_Target0.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat0 = u_xlatb0 ? 1.0 : float(0.0);
					    SV_Target0.w = u_xlat0 * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    SV_Target0.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat0 = u_xlatb0 ? 1.0 : float(0.0);
					    SV_Target0.w = u_xlat0 * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    SV_Target0.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat0 = u_xlatb0 ? 1.0 : float(0.0);
					    SV_Target0.w = u_xlat0 * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    SV_Target0.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat0 = u_xlatb0 ? 1.0 : float(0.0);
					    SV_Target0.w = u_xlat0 * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + unity_FogColor.xyz;
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    u_xlat0 = u_xlatb0 ? 1.0 : float(0.0);
					    SV_Target0.w = u_xlat0 * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + unity_FogColor.xyz;
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    u_xlat0 = u_xlatb0 ? 1.0 : float(0.0);
					    SV_Target0.w = u_xlat0 * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + unity_FogColor.xyz;
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    u_xlat0 = u_xlatb0 ? 1.0 : float(0.0);
					    SV_Target0.w = u_xlat0 * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + unity_FogColor.xyz;
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    u_xlat0 = u_xlatb0 ? 1.0 : float(0.0);
					    SV_Target0.w = u_xlat0 * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + unity_FogColor.xyz;
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    u_xlat0 = u_xlatb0 ? 1.0 : float(0.0);
					    SV_Target0.w = u_xlat0 * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + unity_FogColor.xyz;
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    u_xlat0 = u_xlatb0 ? 1.0 : float(0.0);
					    SV_Target0.w = u_xlat0 * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + unity_FogColor.xyz;
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    u_xlat0 = u_xlatb0 ? 1.0 : float(0.0);
					    SV_Target0.w = u_xlat0 * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + unity_FogColor.xyz;
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    u_xlat0 = u_xlatb0 ? 1.0 : float(0.0);
					    SV_Target0.w = u_xlat0 * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + unity_FogColor.xyz;
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    u_xlat0 = u_xlatb0 ? 1.0 : float(0.0);
					    SV_Target0.w = u_xlat0 * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + unity_FogColor.xyz;
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    u_xlat0 = u_xlatb0 ? 1.0 : float(0.0);
					    SV_Target0.w = u_xlat0 * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + unity_FogColor.xyz;
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    u_xlat0 = u_xlatb0 ? 1.0 : float(0.0);
					    SV_Target0.w = u_xlat0 * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + unity_FogColor.xyz;
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    u_xlat0 = u_xlatb0 ? 1.0 : float(0.0);
					    SV_Target0.w = u_xlat0 * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat0 = u_xlat0 * vs_COLOR0;
					    SV_Target0.w = u_xlat0.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat0 = u_xlat0 * vs_COLOR0;
					    SV_Target0.w = u_xlat0.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[7];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    SV_Target0.w = u_xlat0.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[6];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    SV_Target0.w = u_xlat0.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.xyz = u_xlat1.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    u_xlat1.x = u_xlat1.w * vs_COLOR0.w;
					    SV_Target0.w = u_xlat1.x;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.xyz = u_xlat1.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    u_xlat1.x = u_xlat1.w * vs_COLOR0.w;
					    SV_Target0.w = u_xlat1.x;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					float u_xlat9;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat0.x = u_xlat0.x * u_xlat1.w;
					    SV_Target0.w = u_xlat0.x;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0.xyz = u_xlat1.xyz * u_xlat0.xyz + (-unity_FogColor.xyz);
					    u_xlat9 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat9 = (-u_xlat9) + 1.0;
					    u_xlat9 = u_xlat9 * _ProjectionParams.z;
					    u_xlat9 = max(u_xlat9, 0.0);
					    u_xlat9 = u_xlat9 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat9 = clamp(u_xlat9, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat9) * u_xlat0.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					float u_xlat9;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat0.x = u_xlat0.x * u_xlat1.w;
					    SV_Target0.w = u_xlat0.x;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0.xyz = u_xlat1.xyz * u_xlat0.xyz + (-unity_FogColor.xyz);
					    u_xlat9 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat9 = (-u_xlat9) + 1.0;
					    u_xlat9 = u_xlat9 * _ProjectionParams.z;
					    u_xlat9 = max(u_xlat9, 0.0);
					    u_xlat9 = u_xlat9 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat9 = clamp(u_xlat9, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat9) * u_xlat0.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.xyz = u_xlat1.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    u_xlat1.x = u_xlat1.w * vs_COLOR0.w;
					    SV_Target0.w = u_xlat1.x;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.xyz = u_xlat1.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    u_xlat1.x = u_xlat1.w * vs_COLOR0.w;
					    SV_Target0.w = u_xlat1.x;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0.x = (-u_xlat0.x) + 1.0;
					    u_xlat0.x = u_xlat0.x * _ProjectionParams.z;
					    u_xlat0.x = max(u_xlat0.x, 0.0);
					    u_xlat0.x = u_xlat0.x * unity_FogParams.y;
					    u_xlat0.x = exp2((-u_xlat0.x));
					    u_xlat0.x = min(u_xlat0.x, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.xyz = vs_COLOR0.xyz;
					    u_xlat3.xyz = u_xlat1.xyz * u_xlat3.xyz + (-unity_FogColor.xyz);
					    SV_Target0.xyz = u_xlat0.xxx * u_xlat3.xyz + unity_FogColor.xyz;
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = u_xlat0.x * vs_COLOR0.w;
					    u_xlat0.x = u_xlat0.x * u_xlat1.w;
					    SV_Target0.w = u_xlat0.x;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0.x = (-u_xlat0.x) + 1.0;
					    u_xlat0.x = u_xlat0.x * _ProjectionParams.z;
					    u_xlat0.x = max(u_xlat0.x, 0.0);
					    u_xlat0.x = u_xlat0.x * unity_FogParams.y;
					    u_xlat0.x = exp2((-u_xlat0.x));
					    u_xlat0.x = min(u_xlat0.x, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.xyz = vs_COLOR0.xyz;
					    u_xlat3.xyz = u_xlat1.xyz * u_xlat3.xyz + (-unity_FogColor.xyz);
					    SV_Target0.xyz = u_xlat0.xxx * u_xlat3.xyz + unity_FogColor.xyz;
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = u_xlat0.x * vs_COLOR0.w;
					    u_xlat0.x = u_xlat0.x * u_xlat1.w;
					    SV_Target0.w = u_xlat0.x;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.xyz = u_xlat1.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    u_xlat1.x = u_xlat1.w * vs_COLOR0.w;
					    SV_Target0.w = u_xlat1.x;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.xyz = u_xlat1.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    u_xlat1.x = u_xlat1.w * vs_COLOR0.w;
					    SV_Target0.w = u_xlat1.x;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0.x = (-u_xlat0.x) + 1.0;
					    u_xlat0.x = u_xlat0.x * _ProjectionParams.z;
					    u_xlat0.x = max(u_xlat0.x, 0.0);
					    u_xlat0.x = u_xlat0.x * unity_FogParams.x;
					    u_xlat0.x = u_xlat0.x * (-u_xlat0.x);
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.xyz = vs_COLOR0.xyz;
					    u_xlat3.xyz = u_xlat1.xyz * u_xlat3.xyz + (-unity_FogColor.xyz);
					    SV_Target0.xyz = u_xlat0.xxx * u_xlat3.xyz + unity_FogColor.xyz;
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = u_xlat0.x * vs_COLOR0.w;
					    u_xlat0.x = u_xlat0.x * u_xlat1.w;
					    SV_Target0.w = u_xlat0.x;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0.x = (-u_xlat0.x) + 1.0;
					    u_xlat0.x = u_xlat0.x * _ProjectionParams.z;
					    u_xlat0.x = max(u_xlat0.x, 0.0);
					    u_xlat0.x = u_xlat0.x * unity_FogParams.x;
					    u_xlat0.x = u_xlat0.x * (-u_xlat0.x);
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.xyz = vs_COLOR0.xyz;
					    u_xlat3.xyz = u_xlat1.xyz * u_xlat3.xyz + (-unity_FogColor.xyz);
					    SV_Target0.xyz = u_xlat0.xxx * u_xlat3.xyz + unity_FogColor.xyz;
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = u_xlat0.x * vs_COLOR0.w;
					    u_xlat0.x = u_xlat0.x * u_xlat1.w;
					    SV_Target0.w = u_xlat0.x;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[7];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    SV_Target0.w = u_xlat0.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[6];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    SV_Target0.w = u_xlat0.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[7];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    SV_Target0.w = u_xlat0.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[6];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    SV_Target0.w = u_xlat0.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					float u_xlat9;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat0.x = u_xlat0.x * u_xlat1.w;
					    SV_Target0.w = u_xlat0.x;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0.xyz = u_xlat1.xyz * u_xlat0.xyz + (-unity_FogColor.xyz);
					    u_xlat9 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat9 = (-u_xlat9) + 1.0;
					    u_xlat9 = u_xlat9 * _ProjectionParams.z;
					    u_xlat9 = max(u_xlat9, 0.0);
					    u_xlat9 = u_xlat9 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat9 = clamp(u_xlat9, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat9) * u_xlat0.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					float u_xlat9;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat0.x = u_xlat0.x * u_xlat1.w;
					    SV_Target0.w = u_xlat0.x;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0.xyz = u_xlat1.xyz * u_xlat0.xyz + (-unity_FogColor.xyz);
					    u_xlat9 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat9 = (-u_xlat9) + 1.0;
					    u_xlat9 = u_xlat9 * _ProjectionParams.z;
					    u_xlat9 = max(u_xlat9, 0.0);
					    u_xlat9 = u_xlat9 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat9 = clamp(u_xlat9, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat9) * u_xlat0.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					float u_xlat9;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat0.x = u_xlat0.x * u_xlat1.w;
					    SV_Target0.w = u_xlat0.x;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0.xyz = u_xlat1.xyz * u_xlat0.xyz + (-unity_FogColor.xyz);
					    u_xlat9 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat9 = (-u_xlat9) + 1.0;
					    u_xlat9 = u_xlat9 * _ProjectionParams.z;
					    u_xlat9 = max(u_xlat9, 0.0);
					    u_xlat9 = u_xlat9 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat9 = clamp(u_xlat9, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat9) * u_xlat0.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					float u_xlat9;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat0.x = u_xlat0.x * u_xlat1.w;
					    SV_Target0.w = u_xlat0.x;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0.xyz = u_xlat1.xyz * u_xlat0.xyz + (-unity_FogColor.xyz);
					    u_xlat9 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat9 = (-u_xlat9) + 1.0;
					    u_xlat9 = u_xlat9 * _ProjectionParams.z;
					    u_xlat9 = max(u_xlat9, 0.0);
					    u_xlat9 = u_xlat9 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat9 = clamp(u_xlat9, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat9) * u_xlat0.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0.x = (-u_xlat0.x) + 1.0;
					    u_xlat0.x = u_xlat0.x * _ProjectionParams.z;
					    u_xlat0.x = max(u_xlat0.x, 0.0);
					    u_xlat0.x = u_xlat0.x * unity_FogParams.y;
					    u_xlat0.x = exp2((-u_xlat0.x));
					    u_xlat0.x = min(u_xlat0.x, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.xyz = vs_COLOR0.xyz;
					    u_xlat3.xyz = u_xlat1.xyz * u_xlat3.xyz + (-unity_FogColor.xyz);
					    SV_Target0.xyz = u_xlat0.xxx * u_xlat3.xyz + unity_FogColor.xyz;
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = u_xlat0.x * vs_COLOR0.w;
					    u_xlat0.x = u_xlat0.x * u_xlat1.w;
					    SV_Target0.w = u_xlat0.x;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0.x = (-u_xlat0.x) + 1.0;
					    u_xlat0.x = u_xlat0.x * _ProjectionParams.z;
					    u_xlat0.x = max(u_xlat0.x, 0.0);
					    u_xlat0.x = u_xlat0.x * unity_FogParams.y;
					    u_xlat0.x = exp2((-u_xlat0.x));
					    u_xlat0.x = min(u_xlat0.x, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.xyz = vs_COLOR0.xyz;
					    u_xlat3.xyz = u_xlat1.xyz * u_xlat3.xyz + (-unity_FogColor.xyz);
					    SV_Target0.xyz = u_xlat0.xxx * u_xlat3.xyz + unity_FogColor.xyz;
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = u_xlat0.x * vs_COLOR0.w;
					    u_xlat0.x = u_xlat0.x * u_xlat1.w;
					    SV_Target0.w = u_xlat0.x;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0.x = (-u_xlat0.x) + 1.0;
					    u_xlat0.x = u_xlat0.x * _ProjectionParams.z;
					    u_xlat0.x = max(u_xlat0.x, 0.0);
					    u_xlat0.x = u_xlat0.x * unity_FogParams.y;
					    u_xlat0.x = exp2((-u_xlat0.x));
					    u_xlat0.x = min(u_xlat0.x, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.xyz = vs_COLOR0.xyz;
					    u_xlat3.xyz = u_xlat1.xyz * u_xlat3.xyz + (-unity_FogColor.xyz);
					    SV_Target0.xyz = u_xlat0.xxx * u_xlat3.xyz + unity_FogColor.xyz;
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = u_xlat0.x * vs_COLOR0.w;
					    u_xlat0.x = u_xlat0.x * u_xlat1.w;
					    SV_Target0.w = u_xlat0.x;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0.x = (-u_xlat0.x) + 1.0;
					    u_xlat0.x = u_xlat0.x * _ProjectionParams.z;
					    u_xlat0.x = max(u_xlat0.x, 0.0);
					    u_xlat0.x = u_xlat0.x * unity_FogParams.y;
					    u_xlat0.x = exp2((-u_xlat0.x));
					    u_xlat0.x = min(u_xlat0.x, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.xyz = vs_COLOR0.xyz;
					    u_xlat3.xyz = u_xlat1.xyz * u_xlat3.xyz + (-unity_FogColor.xyz);
					    SV_Target0.xyz = u_xlat0.xxx * u_xlat3.xyz + unity_FogColor.xyz;
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = u_xlat0.x * vs_COLOR0.w;
					    u_xlat0.x = u_xlat0.x * u_xlat1.w;
					    SV_Target0.w = u_xlat0.x;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0.x = (-u_xlat0.x) + 1.0;
					    u_xlat0.x = u_xlat0.x * _ProjectionParams.z;
					    u_xlat0.x = max(u_xlat0.x, 0.0);
					    u_xlat0.x = u_xlat0.x * unity_FogParams.x;
					    u_xlat0.x = u_xlat0.x * (-u_xlat0.x);
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.xyz = vs_COLOR0.xyz;
					    u_xlat3.xyz = u_xlat1.xyz * u_xlat3.xyz + (-unity_FogColor.xyz);
					    SV_Target0.xyz = u_xlat0.xxx * u_xlat3.xyz + unity_FogColor.xyz;
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = u_xlat0.x * vs_COLOR0.w;
					    u_xlat0.x = u_xlat0.x * u_xlat1.w;
					    SV_Target0.w = u_xlat0.x;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0.x = (-u_xlat0.x) + 1.0;
					    u_xlat0.x = u_xlat0.x * _ProjectionParams.z;
					    u_xlat0.x = max(u_xlat0.x, 0.0);
					    u_xlat0.x = u_xlat0.x * unity_FogParams.x;
					    u_xlat0.x = u_xlat0.x * (-u_xlat0.x);
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.xyz = vs_COLOR0.xyz;
					    u_xlat3.xyz = u_xlat1.xyz * u_xlat3.xyz + (-unity_FogColor.xyz);
					    SV_Target0.xyz = u_xlat0.xxx * u_xlat3.xyz + unity_FogColor.xyz;
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = u_xlat0.x * vs_COLOR0.w;
					    u_xlat0.x = u_xlat0.x * u_xlat1.w;
					    SV_Target0.w = u_xlat0.x;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0.x = (-u_xlat0.x) + 1.0;
					    u_xlat0.x = u_xlat0.x * _ProjectionParams.z;
					    u_xlat0.x = max(u_xlat0.x, 0.0);
					    u_xlat0.x = u_xlat0.x * unity_FogParams.x;
					    u_xlat0.x = u_xlat0.x * (-u_xlat0.x);
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.xyz = vs_COLOR0.xyz;
					    u_xlat3.xyz = u_xlat1.xyz * u_xlat3.xyz + (-unity_FogColor.xyz);
					    SV_Target0.xyz = u_xlat0.xxx * u_xlat3.xyz + unity_FogColor.xyz;
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = u_xlat0.x * vs_COLOR0.w;
					    u_xlat0.x = u_xlat0.x * u_xlat1.w;
					    SV_Target0.w = u_xlat0.x;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0.x = (-u_xlat0.x) + 1.0;
					    u_xlat0.x = u_xlat0.x * _ProjectionParams.z;
					    u_xlat0.x = max(u_xlat0.x, 0.0);
					    u_xlat0.x = u_xlat0.x * unity_FogParams.x;
					    u_xlat0.x = u_xlat0.x * (-u_xlat0.x);
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.xyz = vs_COLOR0.xyz;
					    u_xlat3.xyz = u_xlat1.xyz * u_xlat3.xyz + (-unity_FogColor.xyz);
					    SV_Target0.xyz = u_xlat0.xxx * u_xlat3.xyz + unity_FogColor.xyz;
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = u_xlat0.x * vs_COLOR0.w;
					    u_xlat0.x = u_xlat0.x * u_xlat1.w;
					    SV_Target0.w = u_xlat0.x;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat0 = u_xlat0.wxyz * vs_COLOR0.wxyz;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.yzw;
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat0 = u_xlat0.wxyz * vs_COLOR0.wxyz;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.yzw;
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[7];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0.wxyz * u_xlat1.wxyz;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.yzw;
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[6];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0.wxyz * u_xlat1.wxyz;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.yzw;
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.xyz = u_xlat1.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    u_xlat1.x = u_xlat1.w * vs_COLOR0.w;
					    u_xlat1.x = u_xlat1.x;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat1.x * vs_TEXCOORD4;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.xyz = u_xlat1.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    u_xlat1.x = u_xlat1.w * vs_COLOR0.w;
					    u_xlat1.x = u_xlat1.x;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat1.x * vs_TEXCOORD4;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					float u_xlat9;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat0.x = u_xlat0.x * u_xlat1.w;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0.xyz = u_xlat1.xyz * u_xlat0.xyz + (-unity_FogColor.xyz);
					    u_xlat9 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat9 = (-u_xlat9) + 1.0;
					    u_xlat9 = u_xlat9 * _ProjectionParams.z;
					    u_xlat9 = max(u_xlat9, 0.0);
					    u_xlat9 = u_xlat9 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat9 = clamp(u_xlat9, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat9) * u_xlat0.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					float u_xlat9;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat0.x = u_xlat0.x * u_xlat1.w;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0.xyz = u_xlat1.xyz * u_xlat0.xyz + (-unity_FogColor.xyz);
					    u_xlat9 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat9 = (-u_xlat9) + 1.0;
					    u_xlat9 = u_xlat9 * _ProjectionParams.z;
					    u_xlat9 = max(u_xlat9, 0.0);
					    u_xlat9 = u_xlat9 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat9 = clamp(u_xlat9, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat9) * u_xlat0.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.xyz = u_xlat1.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    u_xlat1.x = u_xlat1.w * vs_COLOR0.w;
					    u_xlat1.x = u_xlat1.x;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat1.x * vs_TEXCOORD4;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.xyz = u_xlat1.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    u_xlat1.x = u_xlat1.w * vs_COLOR0.w;
					    u_xlat1.x = u_xlat1.x;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat1.x * vs_TEXCOORD4;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					float u_xlat9;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat0.x = u_xlat0.x * u_xlat1.w;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0.xyz = u_xlat1.xyz * u_xlat0.xyz + (-unity_FogColor.xyz);
					    u_xlat9 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat9 = (-u_xlat9) + 1.0;
					    u_xlat9 = u_xlat9 * _ProjectionParams.z;
					    u_xlat9 = max(u_xlat9, 0.0);
					    u_xlat9 = u_xlat9 * unity_FogParams.y;
					    u_xlat9 = exp2((-u_xlat9));
					    u_xlat9 = min(u_xlat9, 1.0);
					    SV_Target0.xyz = vec3(u_xlat9) * u_xlat0.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					float u_xlat9;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat0.x = u_xlat0.x * u_xlat1.w;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0.xyz = u_xlat1.xyz * u_xlat0.xyz + (-unity_FogColor.xyz);
					    u_xlat9 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat9 = (-u_xlat9) + 1.0;
					    u_xlat9 = u_xlat9 * _ProjectionParams.z;
					    u_xlat9 = max(u_xlat9, 0.0);
					    u_xlat9 = u_xlat9 * unity_FogParams.y;
					    u_xlat9 = exp2((-u_xlat9));
					    u_xlat9 = min(u_xlat9, 1.0);
					    SV_Target0.xyz = vec3(u_xlat9) * u_xlat0.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.xyz = u_xlat1.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    u_xlat1.x = u_xlat1.w * vs_COLOR0.w;
					    u_xlat1.x = u_xlat1.x;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat1.x * vs_TEXCOORD4;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.xyz = u_xlat1.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    u_xlat1.x = u_xlat1.w * vs_COLOR0.w;
					    u_xlat1.x = u_xlat1.x;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat1.x * vs_TEXCOORD4;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					float u_xlat9;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat0.x = u_xlat0.x * u_xlat1.w;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0.xyz = u_xlat1.xyz * u_xlat0.xyz + (-unity_FogColor.xyz);
					    u_xlat9 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat9 = (-u_xlat9) + 1.0;
					    u_xlat9 = u_xlat9 * _ProjectionParams.z;
					    u_xlat9 = max(u_xlat9, 0.0);
					    u_xlat9 = u_xlat9 * unity_FogParams.x;
					    u_xlat9 = u_xlat9 * (-u_xlat9);
					    u_xlat9 = exp2(u_xlat9);
					    SV_Target0.xyz = vec3(u_xlat9) * u_xlat0.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					float u_xlat9;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat0.x = u_xlat0.x * u_xlat1.w;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0.xyz = u_xlat1.xyz * u_xlat0.xyz + (-unity_FogColor.xyz);
					    u_xlat9 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat9 = (-u_xlat9) + 1.0;
					    u_xlat9 = u_xlat9 * _ProjectionParams.z;
					    u_xlat9 = max(u_xlat9, 0.0);
					    u_xlat9 = u_xlat9 * unity_FogParams.x;
					    u_xlat9 = u_xlat9 * (-u_xlat9);
					    u_xlat9 = exp2(u_xlat9);
					    SV_Target0.xyz = vec3(u_xlat9) * u_xlat0.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[7];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0.wxyz * u_xlat1.wxyz;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.yzw;
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[6];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0.wxyz * u_xlat1.wxyz;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.yzw;
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[7];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0.wxyz * u_xlat1.wxyz;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.yzw;
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[6];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0.wxyz * u_xlat1.wxyz;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.yzw;
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					float u_xlat9;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat0.x = u_xlat0.x * u_xlat1.w;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0.xyz = u_xlat1.xyz * u_xlat0.xyz + (-unity_FogColor.xyz);
					    u_xlat9 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat9 = (-u_xlat9) + 1.0;
					    u_xlat9 = u_xlat9 * _ProjectionParams.z;
					    u_xlat9 = max(u_xlat9, 0.0);
					    u_xlat9 = u_xlat9 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat9 = clamp(u_xlat9, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat9) * u_xlat0.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					float u_xlat9;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat0.x = u_xlat0.x * u_xlat1.w;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0.xyz = u_xlat1.xyz * u_xlat0.xyz + (-unity_FogColor.xyz);
					    u_xlat9 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat9 = (-u_xlat9) + 1.0;
					    u_xlat9 = u_xlat9 * _ProjectionParams.z;
					    u_xlat9 = max(u_xlat9, 0.0);
					    u_xlat9 = u_xlat9 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat9 = clamp(u_xlat9, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat9) * u_xlat0.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					float u_xlat9;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat0.x = u_xlat0.x * u_xlat1.w;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0.xyz = u_xlat1.xyz * u_xlat0.xyz + (-unity_FogColor.xyz);
					    u_xlat9 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat9 = (-u_xlat9) + 1.0;
					    u_xlat9 = u_xlat9 * _ProjectionParams.z;
					    u_xlat9 = max(u_xlat9, 0.0);
					    u_xlat9 = u_xlat9 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat9 = clamp(u_xlat9, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat9) * u_xlat0.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					float u_xlat9;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat0.x = u_xlat0.x * u_xlat1.w;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0.xyz = u_xlat1.xyz * u_xlat0.xyz + (-unity_FogColor.xyz);
					    u_xlat9 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat9 = (-u_xlat9) + 1.0;
					    u_xlat9 = u_xlat9 * _ProjectionParams.z;
					    u_xlat9 = max(u_xlat9, 0.0);
					    u_xlat9 = u_xlat9 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat9 = clamp(u_xlat9, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat9) * u_xlat0.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					float u_xlat9;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat0.x = u_xlat0.x * u_xlat1.w;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0.xyz = u_xlat1.xyz * u_xlat0.xyz + (-unity_FogColor.xyz);
					    u_xlat9 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat9 = (-u_xlat9) + 1.0;
					    u_xlat9 = u_xlat9 * _ProjectionParams.z;
					    u_xlat9 = max(u_xlat9, 0.0);
					    u_xlat9 = u_xlat9 * unity_FogParams.y;
					    u_xlat9 = exp2((-u_xlat9));
					    u_xlat9 = min(u_xlat9, 1.0);
					    SV_Target0.xyz = vec3(u_xlat9) * u_xlat0.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					float u_xlat9;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat0.x = u_xlat0.x * u_xlat1.w;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0.xyz = u_xlat1.xyz * u_xlat0.xyz + (-unity_FogColor.xyz);
					    u_xlat9 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat9 = (-u_xlat9) + 1.0;
					    u_xlat9 = u_xlat9 * _ProjectionParams.z;
					    u_xlat9 = max(u_xlat9, 0.0);
					    u_xlat9 = u_xlat9 * unity_FogParams.y;
					    u_xlat9 = exp2((-u_xlat9));
					    u_xlat9 = min(u_xlat9, 1.0);
					    SV_Target0.xyz = vec3(u_xlat9) * u_xlat0.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					float u_xlat9;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat0.x = u_xlat0.x * u_xlat1.w;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0.xyz = u_xlat1.xyz * u_xlat0.xyz + (-unity_FogColor.xyz);
					    u_xlat9 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat9 = (-u_xlat9) + 1.0;
					    u_xlat9 = u_xlat9 * _ProjectionParams.z;
					    u_xlat9 = max(u_xlat9, 0.0);
					    u_xlat9 = u_xlat9 * unity_FogParams.y;
					    u_xlat9 = exp2((-u_xlat9));
					    u_xlat9 = min(u_xlat9, 1.0);
					    SV_Target0.xyz = vec3(u_xlat9) * u_xlat0.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					float u_xlat9;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat0.x = u_xlat0.x * u_xlat1.w;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0.xyz = u_xlat1.xyz * u_xlat0.xyz + (-unity_FogColor.xyz);
					    u_xlat9 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat9 = (-u_xlat9) + 1.0;
					    u_xlat9 = u_xlat9 * _ProjectionParams.z;
					    u_xlat9 = max(u_xlat9, 0.0);
					    u_xlat9 = u_xlat9 * unity_FogParams.y;
					    u_xlat9 = exp2((-u_xlat9));
					    u_xlat9 = min(u_xlat9, 1.0);
					    SV_Target0.xyz = vec3(u_xlat9) * u_xlat0.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					float u_xlat9;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat0.x = u_xlat0.x * u_xlat1.w;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0.xyz = u_xlat1.xyz * u_xlat0.xyz + (-unity_FogColor.xyz);
					    u_xlat9 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat9 = (-u_xlat9) + 1.0;
					    u_xlat9 = u_xlat9 * _ProjectionParams.z;
					    u_xlat9 = max(u_xlat9, 0.0);
					    u_xlat9 = u_xlat9 * unity_FogParams.x;
					    u_xlat9 = u_xlat9 * (-u_xlat9);
					    u_xlat9 = exp2(u_xlat9);
					    SV_Target0.xyz = vec3(u_xlat9) * u_xlat0.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					float u_xlat9;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat0.x = u_xlat0.x * u_xlat1.w;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0.xyz = u_xlat1.xyz * u_xlat0.xyz + (-unity_FogColor.xyz);
					    u_xlat9 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat9 = (-u_xlat9) + 1.0;
					    u_xlat9 = u_xlat9 * _ProjectionParams.z;
					    u_xlat9 = max(u_xlat9, 0.0);
					    u_xlat9 = u_xlat9 * unity_FogParams.x;
					    u_xlat9 = u_xlat9 * (-u_xlat9);
					    u_xlat9 = exp2(u_xlat9);
					    SV_Target0.xyz = vec3(u_xlat9) * u_xlat0.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					float u_xlat9;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat0.x = u_xlat0.x * u_xlat1.w;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0.xyz = u_xlat1.xyz * u_xlat0.xyz + (-unity_FogColor.xyz);
					    u_xlat9 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat9 = (-u_xlat9) + 1.0;
					    u_xlat9 = u_xlat9 * _ProjectionParams.z;
					    u_xlat9 = max(u_xlat9, 0.0);
					    u_xlat9 = u_xlat9 * unity_FogParams.x;
					    u_xlat9 = u_xlat9 * (-u_xlat9);
					    u_xlat9 = exp2(u_xlat9);
					    SV_Target0.xyz = vec3(u_xlat9) * u_xlat0.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					float u_xlat9;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat0.x = u_xlat0.x * u_xlat1.w;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0.xyz = u_xlat1.xyz * u_xlat0.xyz + (-unity_FogColor.xyz);
					    u_xlat9 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat9 = (-u_xlat9) + 1.0;
					    u_xlat9 = u_xlat9 * _ProjectionParams.z;
					    u_xlat9 = max(u_xlat9, 0.0);
					    u_xlat9 = u_xlat9 * unity_FogParams.x;
					    u_xlat9 = u_xlat9 * (-u_xlat9);
					    u_xlat9 = exp2(u_xlat9);
					    SV_Target0.xyz = vec3(u_xlat9) * u_xlat0.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					bool u_xlatb1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1.x = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat0.w = u_xlat0.w * u_xlat1.x;
					    u_xlat0 = u_xlat0 * vs_COLOR0;
					    SV_Target0.w = u_xlat0.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					bool u_xlatb1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1.x = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat0.w = u_xlat0.w * u_xlat1.x;
					    u_xlat0 = u_xlat0 * vs_COLOR0;
					    SV_Target0.w = u_xlat0.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[7];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					bool u_xlatb2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2.x = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2.x;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    SV_Target0.w = u_xlat0.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[6];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					bool u_xlatb2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2.x = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2.x;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    SV_Target0.w = u_xlat0.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					bool u_xlatb1;
					float u_xlat6;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1.x = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat6 = u_xlat0.w * u_xlat1.x;
					    u_xlat0.xyz = u_xlat0.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    u_xlat6 = u_xlat6 * vs_COLOR0.w;
					    SV_Target0.w = u_xlat6;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    u_xlat6 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat6 = (-u_xlat6) + 1.0;
					    u_xlat6 = u_xlat6 * _ProjectionParams.z;
					    u_xlat6 = max(u_xlat6, 0.0);
					    u_xlat6 = u_xlat6 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat6 = clamp(u_xlat6, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat6) * u_xlat0.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					bool u_xlatb1;
					float u_xlat6;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1.x = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat6 = u_xlat0.w * u_xlat1.x;
					    u_xlat0.xyz = u_xlat0.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    u_xlat6 = u_xlat6 * vs_COLOR0.w;
					    SV_Target0.w = u_xlat6;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    u_xlat6 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat6 = (-u_xlat6) + 1.0;
					    u_xlat6 = u_xlat6 * _ProjectionParams.z;
					    u_xlat6 = max(u_xlat6, 0.0);
					    u_xlat6 = u_xlat6 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat6 = clamp(u_xlat6, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat6) * u_xlat0.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					float u_xlat3;
					bool u_xlatb3;
					float u_xlat9;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3 = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat3 = u_xlat1.w * u_xlat3;
					    u_xlat0.x = u_xlat0.x * u_xlat3;
					    SV_Target0.w = u_xlat0.x;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0.xyz = u_xlat1.xyz * u_xlat0.xyz + (-unity_FogColor.xyz);
					    u_xlat9 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat9 = (-u_xlat9) + 1.0;
					    u_xlat9 = u_xlat9 * _ProjectionParams.z;
					    u_xlat9 = max(u_xlat9, 0.0);
					    u_xlat9 = u_xlat9 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat9 = clamp(u_xlat9, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat9) * u_xlat0.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					float u_xlat3;
					bool u_xlatb3;
					float u_xlat9;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3 = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat3 = u_xlat1.w * u_xlat3;
					    u_xlat0.x = u_xlat0.x * u_xlat3;
					    SV_Target0.w = u_xlat0.x;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0.xyz = u_xlat1.xyz * u_xlat0.xyz + (-unity_FogColor.xyz);
					    u_xlat9 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat9 = (-u_xlat9) + 1.0;
					    u_xlat9 = u_xlat9 * _ProjectionParams.z;
					    u_xlat9 = max(u_xlat9, 0.0);
					    u_xlat9 = u_xlat9 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat9 = clamp(u_xlat9, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat9) * u_xlat0.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					bool u_xlatb1;
					float u_xlat6;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1.x = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat6 = u_xlat0.w * u_xlat1.x;
					    u_xlat0.xyz = u_xlat0.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    u_xlat6 = u_xlat6 * vs_COLOR0.w;
					    SV_Target0.w = u_xlat6;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    u_xlat6 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat6 = (-u_xlat6) + 1.0;
					    u_xlat6 = u_xlat6 * _ProjectionParams.z;
					    u_xlat6 = max(u_xlat6, 0.0);
					    u_xlat6 = u_xlat6 * unity_FogParams.y;
					    u_xlat6 = exp2((-u_xlat6));
					    u_xlat6 = min(u_xlat6, 1.0);
					    SV_Target0.xyz = vec3(u_xlat6) * u_xlat0.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					bool u_xlatb1;
					float u_xlat6;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1.x = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat6 = u_xlat0.w * u_xlat1.x;
					    u_xlat0.xyz = u_xlat0.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    u_xlat6 = u_xlat6 * vs_COLOR0.w;
					    SV_Target0.w = u_xlat6;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    u_xlat6 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat6 = (-u_xlat6) + 1.0;
					    u_xlat6 = u_xlat6 * _ProjectionParams.z;
					    u_xlat6 = max(u_xlat6, 0.0);
					    u_xlat6 = u_xlat6 * unity_FogParams.y;
					    u_xlat6 = exp2((-u_xlat6));
					    u_xlat6 = min(u_xlat6, 1.0);
					    SV_Target0.xyz = vec3(u_xlat6) * u_xlat0.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					float u_xlat3;
					bool u_xlatb3;
					float u_xlat9;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3 = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat3 = u_xlat1.w * u_xlat3;
					    u_xlat0.x = u_xlat0.x * u_xlat3;
					    SV_Target0.w = u_xlat0.x;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0.xyz = u_xlat1.xyz * u_xlat0.xyz + (-unity_FogColor.xyz);
					    u_xlat9 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat9 = (-u_xlat9) + 1.0;
					    u_xlat9 = u_xlat9 * _ProjectionParams.z;
					    u_xlat9 = max(u_xlat9, 0.0);
					    u_xlat9 = u_xlat9 * unity_FogParams.y;
					    u_xlat9 = exp2((-u_xlat9));
					    u_xlat9 = min(u_xlat9, 1.0);
					    SV_Target0.xyz = vec3(u_xlat9) * u_xlat0.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					float u_xlat3;
					bool u_xlatb3;
					float u_xlat9;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3 = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat3 = u_xlat1.w * u_xlat3;
					    u_xlat0.x = u_xlat0.x * u_xlat3;
					    SV_Target0.w = u_xlat0.x;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0.xyz = u_xlat1.xyz * u_xlat0.xyz + (-unity_FogColor.xyz);
					    u_xlat9 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat9 = (-u_xlat9) + 1.0;
					    u_xlat9 = u_xlat9 * _ProjectionParams.z;
					    u_xlat9 = max(u_xlat9, 0.0);
					    u_xlat9 = u_xlat9 * unity_FogParams.y;
					    u_xlat9 = exp2((-u_xlat9));
					    u_xlat9 = min(u_xlat9, 1.0);
					    SV_Target0.xyz = vec3(u_xlat9) * u_xlat0.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					bool u_xlatb1;
					float u_xlat6;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1.x = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat6 = u_xlat0.w * u_xlat1.x;
					    u_xlat0.xyz = u_xlat0.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    u_xlat6 = u_xlat6 * vs_COLOR0.w;
					    SV_Target0.w = u_xlat6;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    u_xlat6 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat6 = (-u_xlat6) + 1.0;
					    u_xlat6 = u_xlat6 * _ProjectionParams.z;
					    u_xlat6 = max(u_xlat6, 0.0);
					    u_xlat6 = u_xlat6 * unity_FogParams.x;
					    u_xlat6 = u_xlat6 * (-u_xlat6);
					    u_xlat6 = exp2(u_xlat6);
					    SV_Target0.xyz = vec3(u_xlat6) * u_xlat0.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					bool u_xlatb1;
					float u_xlat6;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1.x = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat6 = u_xlat0.w * u_xlat1.x;
					    u_xlat0.xyz = u_xlat0.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    u_xlat6 = u_xlat6 * vs_COLOR0.w;
					    SV_Target0.w = u_xlat6;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    u_xlat6 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat6 = (-u_xlat6) + 1.0;
					    u_xlat6 = u_xlat6 * _ProjectionParams.z;
					    u_xlat6 = max(u_xlat6, 0.0);
					    u_xlat6 = u_xlat6 * unity_FogParams.x;
					    u_xlat6 = u_xlat6 * (-u_xlat6);
					    u_xlat6 = exp2(u_xlat6);
					    SV_Target0.xyz = vec3(u_xlat6) * u_xlat0.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					float u_xlat3;
					bool u_xlatb3;
					float u_xlat9;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3 = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat3 = u_xlat1.w * u_xlat3;
					    u_xlat0.x = u_xlat0.x * u_xlat3;
					    SV_Target0.w = u_xlat0.x;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0.xyz = u_xlat1.xyz * u_xlat0.xyz + (-unity_FogColor.xyz);
					    u_xlat9 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat9 = (-u_xlat9) + 1.0;
					    u_xlat9 = u_xlat9 * _ProjectionParams.z;
					    u_xlat9 = max(u_xlat9, 0.0);
					    u_xlat9 = u_xlat9 * unity_FogParams.x;
					    u_xlat9 = u_xlat9 * (-u_xlat9);
					    u_xlat9 = exp2(u_xlat9);
					    SV_Target0.xyz = vec3(u_xlat9) * u_xlat0.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					float u_xlat3;
					bool u_xlatb3;
					float u_xlat9;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3 = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat3 = u_xlat1.w * u_xlat3;
					    u_xlat0.x = u_xlat0.x * u_xlat3;
					    SV_Target0.w = u_xlat0.x;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0.xyz = u_xlat1.xyz * u_xlat0.xyz + (-unity_FogColor.xyz);
					    u_xlat9 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat9 = (-u_xlat9) + 1.0;
					    u_xlat9 = u_xlat9 * _ProjectionParams.z;
					    u_xlat9 = max(u_xlat9, 0.0);
					    u_xlat9 = u_xlat9 * unity_FogParams.x;
					    u_xlat9 = u_xlat9 * (-u_xlat9);
					    u_xlat9 = exp2(u_xlat9);
					    SV_Target0.xyz = vec3(u_xlat9) * u_xlat0.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[7];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					bool u_xlatb2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2.x = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2.x;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    SV_Target0.w = u_xlat0.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[6];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					bool u_xlatb2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2.x = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2.x;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    SV_Target0.w = u_xlat0.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[7];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					bool u_xlatb2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2.x = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2.x;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    SV_Target0.w = u_xlat0.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[6];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					bool u_xlatb2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2.x = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2.x;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    SV_Target0.w = u_xlat0.w;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					float u_xlat3;
					bool u_xlatb3;
					float u_xlat9;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3 = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat3 = u_xlat1.w * u_xlat3;
					    u_xlat0.x = u_xlat0.x * u_xlat3;
					    SV_Target0.w = u_xlat0.x;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0.xyz = u_xlat1.xyz * u_xlat0.xyz + (-unity_FogColor.xyz);
					    u_xlat9 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat9 = (-u_xlat9) + 1.0;
					    u_xlat9 = u_xlat9 * _ProjectionParams.z;
					    u_xlat9 = max(u_xlat9, 0.0);
					    u_xlat9 = u_xlat9 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat9 = clamp(u_xlat9, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat9) * u_xlat0.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					float u_xlat3;
					bool u_xlatb3;
					float u_xlat9;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3 = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat3 = u_xlat1.w * u_xlat3;
					    u_xlat0.x = u_xlat0.x * u_xlat3;
					    SV_Target0.w = u_xlat0.x;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0.xyz = u_xlat1.xyz * u_xlat0.xyz + (-unity_FogColor.xyz);
					    u_xlat9 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat9 = (-u_xlat9) + 1.0;
					    u_xlat9 = u_xlat9 * _ProjectionParams.z;
					    u_xlat9 = max(u_xlat9, 0.0);
					    u_xlat9 = u_xlat9 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat9 = clamp(u_xlat9, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat9) * u_xlat0.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					float u_xlat3;
					bool u_xlatb3;
					float u_xlat9;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3 = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat3 = u_xlat1.w * u_xlat3;
					    u_xlat0.x = u_xlat0.x * u_xlat3;
					    SV_Target0.w = u_xlat0.x;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0.xyz = u_xlat1.xyz * u_xlat0.xyz + (-unity_FogColor.xyz);
					    u_xlat9 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat9 = (-u_xlat9) + 1.0;
					    u_xlat9 = u_xlat9 * _ProjectionParams.z;
					    u_xlat9 = max(u_xlat9, 0.0);
					    u_xlat9 = u_xlat9 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat9 = clamp(u_xlat9, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat9) * u_xlat0.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					float u_xlat3;
					bool u_xlatb3;
					float u_xlat9;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3 = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat3 = u_xlat1.w * u_xlat3;
					    u_xlat0.x = u_xlat0.x * u_xlat3;
					    SV_Target0.w = u_xlat0.x;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0.xyz = u_xlat1.xyz * u_xlat0.xyz + (-unity_FogColor.xyz);
					    u_xlat9 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat9 = (-u_xlat9) + 1.0;
					    u_xlat9 = u_xlat9 * _ProjectionParams.z;
					    u_xlat9 = max(u_xlat9, 0.0);
					    u_xlat9 = u_xlat9 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat9 = clamp(u_xlat9, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat9) * u_xlat0.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					float u_xlat3;
					bool u_xlatb3;
					float u_xlat9;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3 = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat3 = u_xlat1.w * u_xlat3;
					    u_xlat0.x = u_xlat0.x * u_xlat3;
					    SV_Target0.w = u_xlat0.x;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0.xyz = u_xlat1.xyz * u_xlat0.xyz + (-unity_FogColor.xyz);
					    u_xlat9 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat9 = (-u_xlat9) + 1.0;
					    u_xlat9 = u_xlat9 * _ProjectionParams.z;
					    u_xlat9 = max(u_xlat9, 0.0);
					    u_xlat9 = u_xlat9 * unity_FogParams.y;
					    u_xlat9 = exp2((-u_xlat9));
					    u_xlat9 = min(u_xlat9, 1.0);
					    SV_Target0.xyz = vec3(u_xlat9) * u_xlat0.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					float u_xlat3;
					bool u_xlatb3;
					float u_xlat9;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3 = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat3 = u_xlat1.w * u_xlat3;
					    u_xlat0.x = u_xlat0.x * u_xlat3;
					    SV_Target0.w = u_xlat0.x;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0.xyz = u_xlat1.xyz * u_xlat0.xyz + (-unity_FogColor.xyz);
					    u_xlat9 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat9 = (-u_xlat9) + 1.0;
					    u_xlat9 = u_xlat9 * _ProjectionParams.z;
					    u_xlat9 = max(u_xlat9, 0.0);
					    u_xlat9 = u_xlat9 * unity_FogParams.y;
					    u_xlat9 = exp2((-u_xlat9));
					    u_xlat9 = min(u_xlat9, 1.0);
					    SV_Target0.xyz = vec3(u_xlat9) * u_xlat0.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					float u_xlat3;
					bool u_xlatb3;
					float u_xlat9;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3 = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat3 = u_xlat1.w * u_xlat3;
					    u_xlat0.x = u_xlat0.x * u_xlat3;
					    SV_Target0.w = u_xlat0.x;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0.xyz = u_xlat1.xyz * u_xlat0.xyz + (-unity_FogColor.xyz);
					    u_xlat9 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat9 = (-u_xlat9) + 1.0;
					    u_xlat9 = u_xlat9 * _ProjectionParams.z;
					    u_xlat9 = max(u_xlat9, 0.0);
					    u_xlat9 = u_xlat9 * unity_FogParams.y;
					    u_xlat9 = exp2((-u_xlat9));
					    u_xlat9 = min(u_xlat9, 1.0);
					    SV_Target0.xyz = vec3(u_xlat9) * u_xlat0.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					float u_xlat3;
					bool u_xlatb3;
					float u_xlat9;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3 = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat3 = u_xlat1.w * u_xlat3;
					    u_xlat0.x = u_xlat0.x * u_xlat3;
					    SV_Target0.w = u_xlat0.x;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0.xyz = u_xlat1.xyz * u_xlat0.xyz + (-unity_FogColor.xyz);
					    u_xlat9 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat9 = (-u_xlat9) + 1.0;
					    u_xlat9 = u_xlat9 * _ProjectionParams.z;
					    u_xlat9 = max(u_xlat9, 0.0);
					    u_xlat9 = u_xlat9 * unity_FogParams.y;
					    u_xlat9 = exp2((-u_xlat9));
					    u_xlat9 = min(u_xlat9, 1.0);
					    SV_Target0.xyz = vec3(u_xlat9) * u_xlat0.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					float u_xlat3;
					bool u_xlatb3;
					float u_xlat9;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3 = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat3 = u_xlat1.w * u_xlat3;
					    u_xlat0.x = u_xlat0.x * u_xlat3;
					    SV_Target0.w = u_xlat0.x;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0.xyz = u_xlat1.xyz * u_xlat0.xyz + (-unity_FogColor.xyz);
					    u_xlat9 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat9 = (-u_xlat9) + 1.0;
					    u_xlat9 = u_xlat9 * _ProjectionParams.z;
					    u_xlat9 = max(u_xlat9, 0.0);
					    u_xlat9 = u_xlat9 * unity_FogParams.x;
					    u_xlat9 = u_xlat9 * (-u_xlat9);
					    u_xlat9 = exp2(u_xlat9);
					    SV_Target0.xyz = vec3(u_xlat9) * u_xlat0.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					float u_xlat3;
					bool u_xlatb3;
					float u_xlat9;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3 = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat3 = u_xlat1.w * u_xlat3;
					    u_xlat0.x = u_xlat0.x * u_xlat3;
					    SV_Target0.w = u_xlat0.x;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0.xyz = u_xlat1.xyz * u_xlat0.xyz + (-unity_FogColor.xyz);
					    u_xlat9 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat9 = (-u_xlat9) + 1.0;
					    u_xlat9 = u_xlat9 * _ProjectionParams.z;
					    u_xlat9 = max(u_xlat9, 0.0);
					    u_xlat9 = u_xlat9 * unity_FogParams.x;
					    u_xlat9 = u_xlat9 * (-u_xlat9);
					    u_xlat9 = exp2(u_xlat9);
					    SV_Target0.xyz = vec3(u_xlat9) * u_xlat0.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					float u_xlat3;
					bool u_xlatb3;
					float u_xlat9;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3 = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat3 = u_xlat1.w * u_xlat3;
					    u_xlat0.x = u_xlat0.x * u_xlat3;
					    SV_Target0.w = u_xlat0.x;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0.xyz = u_xlat1.xyz * u_xlat0.xyz + (-unity_FogColor.xyz);
					    u_xlat9 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat9 = (-u_xlat9) + 1.0;
					    u_xlat9 = u_xlat9 * _ProjectionParams.z;
					    u_xlat9 = max(u_xlat9, 0.0);
					    u_xlat9 = u_xlat9 * unity_FogParams.x;
					    u_xlat9 = u_xlat9 * (-u_xlat9);
					    u_xlat9 = exp2(u_xlat9);
					    SV_Target0.xyz = vec3(u_xlat9) * u_xlat0.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					float u_xlat3;
					bool u_xlatb3;
					float u_xlat9;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3 = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat3 = u_xlat1.w * u_xlat3;
					    u_xlat0.x = u_xlat0.x * u_xlat3;
					    SV_Target0.w = u_xlat0.x;
					    SV_Target0.w = clamp(SV_Target0.w, 0.0, 1.0);
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0.xyz = u_xlat1.xyz * u_xlat0.xyz + (-unity_FogColor.xyz);
					    u_xlat9 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat9 = (-u_xlat9) + 1.0;
					    u_xlat9 = u_xlat9 * _ProjectionParams.z;
					    u_xlat9 = max(u_xlat9, 0.0);
					    u_xlat9 = u_xlat9 * unity_FogParams.x;
					    u_xlat9 = u_xlat9 * (-u_xlat9);
					    u_xlat9 = exp2(u_xlat9);
					    SV_Target0.xyz = vec3(u_xlat9) * u_xlat0.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					bool u_xlatb1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1.x = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat0.w = u_xlat0.w * u_xlat1.x;
					    u_xlat0 = u_xlat0.wxyz * vs_COLOR0.wxyz;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.yzw;
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					bool u_xlatb1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1.x = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat0.w = u_xlat0.w * u_xlat1.x;
					    u_xlat0 = u_xlat0.wxyz * vs_COLOR0.wxyz;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.yzw;
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[7];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					bool u_xlatb2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2.x = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2.x;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0.wxyz * u_xlat1.wxyz;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.yzw;
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[6];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					bool u_xlatb2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2.x = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2.x;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0.wxyz * u_xlat1.wxyz;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.yzw;
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					bool u_xlatb1;
					float u_xlat6;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1.x = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat6 = u_xlat0.w * u_xlat1.x;
					    u_xlat0.xyz = u_xlat0.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    u_xlat1.x = u_xlat6 * vs_COLOR0.w;
					    u_xlat1.x = u_xlat1.x;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat1.x * vs_TEXCOORD4;
					    u_xlat6 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat6 = (-u_xlat6) + 1.0;
					    u_xlat6 = u_xlat6 * _ProjectionParams.z;
					    u_xlat6 = max(u_xlat6, 0.0);
					    u_xlat6 = u_xlat6 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat6 = clamp(u_xlat6, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat6) * u_xlat0.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					bool u_xlatb1;
					float u_xlat6;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1.x = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat6 = u_xlat0.w * u_xlat1.x;
					    u_xlat0.xyz = u_xlat0.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    u_xlat1.x = u_xlat6 * vs_COLOR0.w;
					    u_xlat1.x = u_xlat1.x;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat1.x * vs_TEXCOORD4;
					    u_xlat6 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat6 = (-u_xlat6) + 1.0;
					    u_xlat6 = u_xlat6 * _ProjectionParams.z;
					    u_xlat6 = max(u_xlat6, 0.0);
					    u_xlat6 = u_xlat6 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat6 = clamp(u_xlat6, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat6) * u_xlat0.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					float u_xlat3;
					bool u_xlatb3;
					float u_xlat9;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3 = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat3 = u_xlat1.w * u_xlat3;
					    u_xlat0.x = u_xlat0.x * u_xlat3;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0.xyz = u_xlat1.xyz * u_xlat0.xyz + (-unity_FogColor.xyz);
					    u_xlat9 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat9 = (-u_xlat9) + 1.0;
					    u_xlat9 = u_xlat9 * _ProjectionParams.z;
					    u_xlat9 = max(u_xlat9, 0.0);
					    u_xlat9 = u_xlat9 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat9 = clamp(u_xlat9, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat9) * u_xlat0.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					float u_xlat3;
					bool u_xlatb3;
					float u_xlat9;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3 = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat3 = u_xlat1.w * u_xlat3;
					    u_xlat0.x = u_xlat0.x * u_xlat3;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0.xyz = u_xlat1.xyz * u_xlat0.xyz + (-unity_FogColor.xyz);
					    u_xlat9 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat9 = (-u_xlat9) + 1.0;
					    u_xlat9 = u_xlat9 * _ProjectionParams.z;
					    u_xlat9 = max(u_xlat9, 0.0);
					    u_xlat9 = u_xlat9 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat9 = clamp(u_xlat9, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat9) * u_xlat0.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					bool u_xlatb1;
					float u_xlat6;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1.x = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat6 = u_xlat0.w * u_xlat1.x;
					    u_xlat0.xyz = u_xlat0.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    u_xlat1.x = u_xlat6 * vs_COLOR0.w;
					    u_xlat1.x = u_xlat1.x;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat1.x * vs_TEXCOORD4;
					    u_xlat6 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat6 = (-u_xlat6) + 1.0;
					    u_xlat6 = u_xlat6 * _ProjectionParams.z;
					    u_xlat6 = max(u_xlat6, 0.0);
					    u_xlat6 = u_xlat6 * unity_FogParams.y;
					    u_xlat6 = exp2((-u_xlat6));
					    u_xlat6 = min(u_xlat6, 1.0);
					    SV_Target0.xyz = vec3(u_xlat6) * u_xlat0.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					bool u_xlatb1;
					float u_xlat6;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1.x = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat6 = u_xlat0.w * u_xlat1.x;
					    u_xlat0.xyz = u_xlat0.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    u_xlat1.x = u_xlat6 * vs_COLOR0.w;
					    u_xlat1.x = u_xlat1.x;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat1.x * vs_TEXCOORD4;
					    u_xlat6 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat6 = (-u_xlat6) + 1.0;
					    u_xlat6 = u_xlat6 * _ProjectionParams.z;
					    u_xlat6 = max(u_xlat6, 0.0);
					    u_xlat6 = u_xlat6 * unity_FogParams.y;
					    u_xlat6 = exp2((-u_xlat6));
					    u_xlat6 = min(u_xlat6, 1.0);
					    SV_Target0.xyz = vec3(u_xlat6) * u_xlat0.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					float u_xlat3;
					bool u_xlatb3;
					float u_xlat9;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3 = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat3 = u_xlat1.w * u_xlat3;
					    u_xlat0.x = u_xlat0.x * u_xlat3;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0.xyz = u_xlat1.xyz * u_xlat0.xyz + (-unity_FogColor.xyz);
					    u_xlat9 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat9 = (-u_xlat9) + 1.0;
					    u_xlat9 = u_xlat9 * _ProjectionParams.z;
					    u_xlat9 = max(u_xlat9, 0.0);
					    u_xlat9 = u_xlat9 * unity_FogParams.y;
					    u_xlat9 = exp2((-u_xlat9));
					    u_xlat9 = min(u_xlat9, 1.0);
					    SV_Target0.xyz = vec3(u_xlat9) * u_xlat0.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					float u_xlat3;
					bool u_xlatb3;
					float u_xlat9;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3 = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat3 = u_xlat1.w * u_xlat3;
					    u_xlat0.x = u_xlat0.x * u_xlat3;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0.xyz = u_xlat1.xyz * u_xlat0.xyz + (-unity_FogColor.xyz);
					    u_xlat9 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat9 = (-u_xlat9) + 1.0;
					    u_xlat9 = u_xlat9 * _ProjectionParams.z;
					    u_xlat9 = max(u_xlat9, 0.0);
					    u_xlat9 = u_xlat9 * unity_FogParams.y;
					    u_xlat9 = exp2((-u_xlat9));
					    u_xlat9 = min(u_xlat9, 1.0);
					    SV_Target0.xyz = vec3(u_xlat9) * u_xlat0.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					bool u_xlatb1;
					float u_xlat6;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1.x = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat6 = u_xlat0.w * u_xlat1.x;
					    u_xlat0.xyz = u_xlat0.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    u_xlat1.x = u_xlat6 * vs_COLOR0.w;
					    u_xlat1.x = u_xlat1.x;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat1.x * vs_TEXCOORD4;
					    u_xlat6 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat6 = (-u_xlat6) + 1.0;
					    u_xlat6 = u_xlat6 * _ProjectionParams.z;
					    u_xlat6 = max(u_xlat6, 0.0);
					    u_xlat6 = u_xlat6 * unity_FogParams.x;
					    u_xlat6 = u_xlat6 * (-u_xlat6);
					    u_xlat6 = exp2(u_xlat6);
					    SV_Target0.xyz = vec3(u_xlat6) * u_xlat0.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					bool u_xlatb1;
					float u_xlat6;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1.x = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat6 = u_xlat0.w * u_xlat1.x;
					    u_xlat0.xyz = u_xlat0.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    u_xlat1.x = u_xlat6 * vs_COLOR0.w;
					    u_xlat1.x = u_xlat1.x;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat1.x * vs_TEXCOORD4;
					    u_xlat6 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat6 = (-u_xlat6) + 1.0;
					    u_xlat6 = u_xlat6 * _ProjectionParams.z;
					    u_xlat6 = max(u_xlat6, 0.0);
					    u_xlat6 = u_xlat6 * unity_FogParams.x;
					    u_xlat6 = u_xlat6 * (-u_xlat6);
					    u_xlat6 = exp2(u_xlat6);
					    SV_Target0.xyz = vec3(u_xlat6) * u_xlat0.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					float u_xlat3;
					bool u_xlatb3;
					float u_xlat9;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3 = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat3 = u_xlat1.w * u_xlat3;
					    u_xlat0.x = u_xlat0.x * u_xlat3;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0.xyz = u_xlat1.xyz * u_xlat0.xyz + (-unity_FogColor.xyz);
					    u_xlat9 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat9 = (-u_xlat9) + 1.0;
					    u_xlat9 = u_xlat9 * _ProjectionParams.z;
					    u_xlat9 = max(u_xlat9, 0.0);
					    u_xlat9 = u_xlat9 * unity_FogParams.x;
					    u_xlat9 = u_xlat9 * (-u_xlat9);
					    u_xlat9 = exp2(u_xlat9);
					    SV_Target0.xyz = vec3(u_xlat9) * u_xlat0.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					float u_xlat3;
					bool u_xlatb3;
					float u_xlat9;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3 = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat3 = u_xlat1.w * u_xlat3;
					    u_xlat0.x = u_xlat0.x * u_xlat3;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0.xyz = u_xlat1.xyz * u_xlat0.xyz + (-unity_FogColor.xyz);
					    u_xlat9 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat9 = (-u_xlat9) + 1.0;
					    u_xlat9 = u_xlat9 * _ProjectionParams.z;
					    u_xlat9 = max(u_xlat9, 0.0);
					    u_xlat9 = u_xlat9 * unity_FogParams.x;
					    u_xlat9 = u_xlat9 * (-u_xlat9);
					    u_xlat9 = exp2(u_xlat9);
					    SV_Target0.xyz = vec3(u_xlat9) * u_xlat0.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[7];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					bool u_xlatb2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2.x = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2.x;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0.wxyz * u_xlat1.wxyz;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.yzw;
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[6];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					bool u_xlatb2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2.x = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2.x;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0.wxyz * u_xlat1.wxyz;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.yzw;
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[7];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					bool u_xlatb2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2.x = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2.x;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0.wxyz * u_xlat1.wxyz;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.yzw;
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[6];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					bool u_xlatb2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2.x = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2.x;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0.wxyz * u_xlat1.wxyz;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.yzw;
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					float u_xlat3;
					bool u_xlatb3;
					float u_xlat9;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3 = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat3 = u_xlat1.w * u_xlat3;
					    u_xlat0.x = u_xlat0.x * u_xlat3;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0.xyz = u_xlat1.xyz * u_xlat0.xyz + (-unity_FogColor.xyz);
					    u_xlat9 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat9 = (-u_xlat9) + 1.0;
					    u_xlat9 = u_xlat9 * _ProjectionParams.z;
					    u_xlat9 = max(u_xlat9, 0.0);
					    u_xlat9 = u_xlat9 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat9 = clamp(u_xlat9, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat9) * u_xlat0.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					float u_xlat3;
					bool u_xlatb3;
					float u_xlat9;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3 = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat3 = u_xlat1.w * u_xlat3;
					    u_xlat0.x = u_xlat0.x * u_xlat3;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0.xyz = u_xlat1.xyz * u_xlat0.xyz + (-unity_FogColor.xyz);
					    u_xlat9 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat9 = (-u_xlat9) + 1.0;
					    u_xlat9 = u_xlat9 * _ProjectionParams.z;
					    u_xlat9 = max(u_xlat9, 0.0);
					    u_xlat9 = u_xlat9 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat9 = clamp(u_xlat9, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat9) * u_xlat0.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					float u_xlat3;
					bool u_xlatb3;
					float u_xlat9;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3 = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat3 = u_xlat1.w * u_xlat3;
					    u_xlat0.x = u_xlat0.x * u_xlat3;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0.xyz = u_xlat1.xyz * u_xlat0.xyz + (-unity_FogColor.xyz);
					    u_xlat9 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat9 = (-u_xlat9) + 1.0;
					    u_xlat9 = u_xlat9 * _ProjectionParams.z;
					    u_xlat9 = max(u_xlat9, 0.0);
					    u_xlat9 = u_xlat9 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat9 = clamp(u_xlat9, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat9) * u_xlat0.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					float u_xlat3;
					bool u_xlatb3;
					float u_xlat9;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3 = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat3 = u_xlat1.w * u_xlat3;
					    u_xlat0.x = u_xlat0.x * u_xlat3;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0.xyz = u_xlat1.xyz * u_xlat0.xyz + (-unity_FogColor.xyz);
					    u_xlat9 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat9 = (-u_xlat9) + 1.0;
					    u_xlat9 = u_xlat9 * _ProjectionParams.z;
					    u_xlat9 = max(u_xlat9, 0.0);
					    u_xlat9 = u_xlat9 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat9 = clamp(u_xlat9, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat9) * u_xlat0.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					float u_xlat3;
					bool u_xlatb3;
					float u_xlat9;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3 = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat3 = u_xlat1.w * u_xlat3;
					    u_xlat0.x = u_xlat0.x * u_xlat3;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0.xyz = u_xlat1.xyz * u_xlat0.xyz + (-unity_FogColor.xyz);
					    u_xlat9 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat9 = (-u_xlat9) + 1.0;
					    u_xlat9 = u_xlat9 * _ProjectionParams.z;
					    u_xlat9 = max(u_xlat9, 0.0);
					    u_xlat9 = u_xlat9 * unity_FogParams.y;
					    u_xlat9 = exp2((-u_xlat9));
					    u_xlat9 = min(u_xlat9, 1.0);
					    SV_Target0.xyz = vec3(u_xlat9) * u_xlat0.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					float u_xlat3;
					bool u_xlatb3;
					float u_xlat9;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3 = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat3 = u_xlat1.w * u_xlat3;
					    u_xlat0.x = u_xlat0.x * u_xlat3;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0.xyz = u_xlat1.xyz * u_xlat0.xyz + (-unity_FogColor.xyz);
					    u_xlat9 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat9 = (-u_xlat9) + 1.0;
					    u_xlat9 = u_xlat9 * _ProjectionParams.z;
					    u_xlat9 = max(u_xlat9, 0.0);
					    u_xlat9 = u_xlat9 * unity_FogParams.y;
					    u_xlat9 = exp2((-u_xlat9));
					    u_xlat9 = min(u_xlat9, 1.0);
					    SV_Target0.xyz = vec3(u_xlat9) * u_xlat0.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					float u_xlat3;
					bool u_xlatb3;
					float u_xlat9;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3 = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat3 = u_xlat1.w * u_xlat3;
					    u_xlat0.x = u_xlat0.x * u_xlat3;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0.xyz = u_xlat1.xyz * u_xlat0.xyz + (-unity_FogColor.xyz);
					    u_xlat9 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat9 = (-u_xlat9) + 1.0;
					    u_xlat9 = u_xlat9 * _ProjectionParams.z;
					    u_xlat9 = max(u_xlat9, 0.0);
					    u_xlat9 = u_xlat9 * unity_FogParams.y;
					    u_xlat9 = exp2((-u_xlat9));
					    u_xlat9 = min(u_xlat9, 1.0);
					    SV_Target0.xyz = vec3(u_xlat9) * u_xlat0.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					float u_xlat3;
					bool u_xlatb3;
					float u_xlat9;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3 = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat3 = u_xlat1.w * u_xlat3;
					    u_xlat0.x = u_xlat0.x * u_xlat3;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0.xyz = u_xlat1.xyz * u_xlat0.xyz + (-unity_FogColor.xyz);
					    u_xlat9 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat9 = (-u_xlat9) + 1.0;
					    u_xlat9 = u_xlat9 * _ProjectionParams.z;
					    u_xlat9 = max(u_xlat9, 0.0);
					    u_xlat9 = u_xlat9 * unity_FogParams.y;
					    u_xlat9 = exp2((-u_xlat9));
					    u_xlat9 = min(u_xlat9, 1.0);
					    SV_Target0.xyz = vec3(u_xlat9) * u_xlat0.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					float u_xlat3;
					bool u_xlatb3;
					float u_xlat9;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3 = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat3 = u_xlat1.w * u_xlat3;
					    u_xlat0.x = u_xlat0.x * u_xlat3;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0.xyz = u_xlat1.xyz * u_xlat0.xyz + (-unity_FogColor.xyz);
					    u_xlat9 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat9 = (-u_xlat9) + 1.0;
					    u_xlat9 = u_xlat9 * _ProjectionParams.z;
					    u_xlat9 = max(u_xlat9, 0.0);
					    u_xlat9 = u_xlat9 * unity_FogParams.x;
					    u_xlat9 = u_xlat9 * (-u_xlat9);
					    u_xlat9 = exp2(u_xlat9);
					    SV_Target0.xyz = vec3(u_xlat9) * u_xlat0.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					float u_xlat3;
					bool u_xlatb3;
					float u_xlat9;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3 = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat3 = u_xlat1.w * u_xlat3;
					    u_xlat0.x = u_xlat0.x * u_xlat3;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0.xyz = u_xlat1.xyz * u_xlat0.xyz + (-unity_FogColor.xyz);
					    u_xlat9 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat9 = (-u_xlat9) + 1.0;
					    u_xlat9 = u_xlat9 * _ProjectionParams.z;
					    u_xlat9 = max(u_xlat9, 0.0);
					    u_xlat9 = u_xlat9 * unity_FogParams.x;
					    u_xlat9 = u_xlat9 * (-u_xlat9);
					    u_xlat9 = exp2(u_xlat9);
					    SV_Target0.xyz = vec3(u_xlat9) * u_xlat0.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					float u_xlat3;
					bool u_xlatb3;
					float u_xlat9;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3 = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat3 = u_xlat1.w * u_xlat3;
					    u_xlat0.x = u_xlat0.x * u_xlat3;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0.xyz = u_xlat1.xyz * u_xlat0.xyz + (-unity_FogColor.xyz);
					    u_xlat9 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat9 = (-u_xlat9) + 1.0;
					    u_xlat9 = u_xlat9 * _ProjectionParams.z;
					    u_xlat9 = max(u_xlat9, 0.0);
					    u_xlat9 = u_xlat9 * unity_FogParams.x;
					    u_xlat9 = u_xlat9 * (-u_xlat9);
					    u_xlat9 = exp2(u_xlat9);
					    SV_Target0.xyz = vec3(u_xlat9) * u_xlat0.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					float u_xlat3;
					bool u_xlatb3;
					float u_xlat9;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3 = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat3 = u_xlat1.w * u_xlat3;
					    u_xlat0.x = u_xlat0.x * u_xlat3;
					    u_xlat0.x = u_xlat0.x;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0.xyz = u_xlat1.xyz * u_xlat0.xyz + (-unity_FogColor.xyz);
					    u_xlat9 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat9 = (-u_xlat9) + 1.0;
					    u_xlat9 = u_xlat9 * _ProjectionParams.z;
					    u_xlat9 = max(u_xlat9, 0.0);
					    u_xlat9 = u_xlat9 * unity_FogParams.x;
					    u_xlat9 = u_xlat9 * (-u_xlat9);
					    u_xlat9 = exp2(u_xlat9);
					    SV_Target0.xyz = vec3(u_xlat9) * u_xlat0.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    SV_Target0.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    SV_Target0.w = u_xlatb0 ? 1.0 : float(0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    SV_Target0.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    SV_Target0.w = u_xlatb0 ? 1.0 : float(0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[7];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb0 = u_xlat1.w>=u_xlat0.x;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    SV_Target0.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    SV_Target0.w = u_xlatb0 ? 1.0 : float(0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[6];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb0 = u_xlat1.w>=u_xlat0.x;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    SV_Target0.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    SV_Target0.w = u_xlatb0 ? 1.0 : float(0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + unity_FogColor.xyz;
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    SV_Target0.w = u_xlatb0 ? 1.0 : float(0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + unity_FogColor.xyz;
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    SV_Target0.w = u_xlatb0 ? 1.0 : float(0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb0 = u_xlat1.w>=u_xlat0.x;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    SV_Target0.w = u_xlatb0 ? 1.0 : float(0.0);
					    u_xlat0.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0.x = (-u_xlat0.x) + 1.0;
					    u_xlat0.x = u_xlat0.x * _ProjectionParams.z;
					    u_xlat0.x = max(u_xlat0.x, 0.0);
					    u_xlat0.x = u_xlat0.x * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.xxx * u_xlat3.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb0 = u_xlat1.w>=u_xlat0.x;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    SV_Target0.w = u_xlatb0 ? 1.0 : float(0.0);
					    u_xlat0.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0.x = (-u_xlat0.x) + 1.0;
					    u_xlat0.x = u_xlat0.x * _ProjectionParams.z;
					    u_xlat0.x = max(u_xlat0.x, 0.0);
					    u_xlat0.x = u_xlat0.x * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.xxx * u_xlat3.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + unity_FogColor.xyz;
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    SV_Target0.w = u_xlatb0 ? 1.0 : float(0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + unity_FogColor.xyz;
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    SV_Target0.w = u_xlatb0 ? 1.0 : float(0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0.x = (-u_xlat0.x) + 1.0;
					    u_xlat0.x = u_xlat0.x * _ProjectionParams.z;
					    u_xlat0.x = max(u_xlat0.x, 0.0);
					    u_xlat0.x = u_xlat0.x * unity_FogParams.y;
					    u_xlat0.x = exp2((-u_xlat0.x));
					    u_xlat0.x = min(u_xlat0.x, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    SV_Target0.xyz = u_xlat0.xxx * u_xlat3.xyz + unity_FogColor.xyz;
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0.x;
					    SV_Target0.w = u_xlatb0 ? 1.0 : float(0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0.x = (-u_xlat0.x) + 1.0;
					    u_xlat0.x = u_xlat0.x * _ProjectionParams.z;
					    u_xlat0.x = max(u_xlat0.x, 0.0);
					    u_xlat0.x = u_xlat0.x * unity_FogParams.y;
					    u_xlat0.x = exp2((-u_xlat0.x));
					    u_xlat0.x = min(u_xlat0.x, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    SV_Target0.xyz = u_xlat0.xxx * u_xlat3.xyz + unity_FogColor.xyz;
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0.x;
					    SV_Target0.w = u_xlatb0 ? 1.0 : float(0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + unity_FogColor.xyz;
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    SV_Target0.w = u_xlatb0 ? 1.0 : float(0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + unity_FogColor.xyz;
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    SV_Target0.w = u_xlatb0 ? 1.0 : float(0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0.x = (-u_xlat0.x) + 1.0;
					    u_xlat0.x = u_xlat0.x * _ProjectionParams.z;
					    u_xlat0.x = max(u_xlat0.x, 0.0);
					    u_xlat0.x = u_xlat0.x * unity_FogParams.x;
					    u_xlat0.x = u_xlat0.x * (-u_xlat0.x);
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    SV_Target0.xyz = u_xlat0.xxx * u_xlat3.xyz + unity_FogColor.xyz;
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0.x;
					    SV_Target0.w = u_xlatb0 ? 1.0 : float(0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0.x = (-u_xlat0.x) + 1.0;
					    u_xlat0.x = u_xlat0.x * _ProjectionParams.z;
					    u_xlat0.x = max(u_xlat0.x, 0.0);
					    u_xlat0.x = u_xlat0.x * unity_FogParams.x;
					    u_xlat0.x = u_xlat0.x * (-u_xlat0.x);
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    SV_Target0.xyz = u_xlat0.xxx * u_xlat3.xyz + unity_FogColor.xyz;
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0.x;
					    SV_Target0.w = u_xlatb0 ? 1.0 : float(0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[7];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb0 = u_xlat1.w>=u_xlat0.x;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    SV_Target0.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    SV_Target0.w = u_xlatb0 ? 1.0 : float(0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[6];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb0 = u_xlat1.w>=u_xlat0.x;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    SV_Target0.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    SV_Target0.w = u_xlatb0 ? 1.0 : float(0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[7];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb0 = u_xlat1.w>=u_xlat0.x;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    SV_Target0.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    SV_Target0.w = u_xlatb0 ? 1.0 : float(0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[6];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb0 = u_xlat1.w>=u_xlat0.x;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    SV_Target0.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    SV_Target0.w = u_xlatb0 ? 1.0 : float(0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb0 = u_xlat1.w>=u_xlat0.x;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    SV_Target0.w = u_xlatb0 ? 1.0 : float(0.0);
					    u_xlat0.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0.x = (-u_xlat0.x) + 1.0;
					    u_xlat0.x = u_xlat0.x * _ProjectionParams.z;
					    u_xlat0.x = max(u_xlat0.x, 0.0);
					    u_xlat0.x = u_xlat0.x * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.xxx * u_xlat3.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb0 = u_xlat1.w>=u_xlat0.x;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    SV_Target0.w = u_xlatb0 ? 1.0 : float(0.0);
					    u_xlat0.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0.x = (-u_xlat0.x) + 1.0;
					    u_xlat0.x = u_xlat0.x * _ProjectionParams.z;
					    u_xlat0.x = max(u_xlat0.x, 0.0);
					    u_xlat0.x = u_xlat0.x * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.xxx * u_xlat3.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb0 = u_xlat1.w>=u_xlat0.x;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    SV_Target0.w = u_xlatb0 ? 1.0 : float(0.0);
					    u_xlat0.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0.x = (-u_xlat0.x) + 1.0;
					    u_xlat0.x = u_xlat0.x * _ProjectionParams.z;
					    u_xlat0.x = max(u_xlat0.x, 0.0);
					    u_xlat0.x = u_xlat0.x * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.xxx * u_xlat3.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb0 = u_xlat1.w>=u_xlat0.x;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    SV_Target0.w = u_xlatb0 ? 1.0 : float(0.0);
					    u_xlat0.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0.x = (-u_xlat0.x) + 1.0;
					    u_xlat0.x = u_xlat0.x * _ProjectionParams.z;
					    u_xlat0.x = max(u_xlat0.x, 0.0);
					    u_xlat0.x = u_xlat0.x * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.xxx * u_xlat3.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0.x = (-u_xlat0.x) + 1.0;
					    u_xlat0.x = u_xlat0.x * _ProjectionParams.z;
					    u_xlat0.x = max(u_xlat0.x, 0.0);
					    u_xlat0.x = u_xlat0.x * unity_FogParams.y;
					    u_xlat0.x = exp2((-u_xlat0.x));
					    u_xlat0.x = min(u_xlat0.x, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    SV_Target0.xyz = u_xlat0.xxx * u_xlat3.xyz + unity_FogColor.xyz;
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0.x;
					    SV_Target0.w = u_xlatb0 ? 1.0 : float(0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0.x = (-u_xlat0.x) + 1.0;
					    u_xlat0.x = u_xlat0.x * _ProjectionParams.z;
					    u_xlat0.x = max(u_xlat0.x, 0.0);
					    u_xlat0.x = u_xlat0.x * unity_FogParams.y;
					    u_xlat0.x = exp2((-u_xlat0.x));
					    u_xlat0.x = min(u_xlat0.x, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    SV_Target0.xyz = u_xlat0.xxx * u_xlat3.xyz + unity_FogColor.xyz;
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0.x;
					    SV_Target0.w = u_xlatb0 ? 1.0 : float(0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0.x = (-u_xlat0.x) + 1.0;
					    u_xlat0.x = u_xlat0.x * _ProjectionParams.z;
					    u_xlat0.x = max(u_xlat0.x, 0.0);
					    u_xlat0.x = u_xlat0.x * unity_FogParams.y;
					    u_xlat0.x = exp2((-u_xlat0.x));
					    u_xlat0.x = min(u_xlat0.x, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    SV_Target0.xyz = u_xlat0.xxx * u_xlat3.xyz + unity_FogColor.xyz;
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0.x;
					    SV_Target0.w = u_xlatb0 ? 1.0 : float(0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0.x = (-u_xlat0.x) + 1.0;
					    u_xlat0.x = u_xlat0.x * _ProjectionParams.z;
					    u_xlat0.x = max(u_xlat0.x, 0.0);
					    u_xlat0.x = u_xlat0.x * unity_FogParams.y;
					    u_xlat0.x = exp2((-u_xlat0.x));
					    u_xlat0.x = min(u_xlat0.x, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    SV_Target0.xyz = u_xlat0.xxx * u_xlat3.xyz + unity_FogColor.xyz;
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0.x;
					    SV_Target0.w = u_xlatb0 ? 1.0 : float(0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0.x = (-u_xlat0.x) + 1.0;
					    u_xlat0.x = u_xlat0.x * _ProjectionParams.z;
					    u_xlat0.x = max(u_xlat0.x, 0.0);
					    u_xlat0.x = u_xlat0.x * unity_FogParams.x;
					    u_xlat0.x = u_xlat0.x * (-u_xlat0.x);
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    SV_Target0.xyz = u_xlat0.xxx * u_xlat3.xyz + unity_FogColor.xyz;
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0.x;
					    SV_Target0.w = u_xlatb0 ? 1.0 : float(0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0.x = (-u_xlat0.x) + 1.0;
					    u_xlat0.x = u_xlat0.x * _ProjectionParams.z;
					    u_xlat0.x = max(u_xlat0.x, 0.0);
					    u_xlat0.x = u_xlat0.x * unity_FogParams.x;
					    u_xlat0.x = u_xlat0.x * (-u_xlat0.x);
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    SV_Target0.xyz = u_xlat0.xxx * u_xlat3.xyz + unity_FogColor.xyz;
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0.x;
					    SV_Target0.w = u_xlatb0 ? 1.0 : float(0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0.x = (-u_xlat0.x) + 1.0;
					    u_xlat0.x = u_xlat0.x * _ProjectionParams.z;
					    u_xlat0.x = max(u_xlat0.x, 0.0);
					    u_xlat0.x = u_xlat0.x * unity_FogParams.x;
					    u_xlat0.x = u_xlat0.x * (-u_xlat0.x);
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    SV_Target0.xyz = u_xlat0.xxx * u_xlat3.xyz + unity_FogColor.xyz;
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0.x;
					    SV_Target0.w = u_xlatb0 ? 1.0 : float(0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0.x = (-u_xlat0.x) + 1.0;
					    u_xlat0.x = u_xlat0.x * _ProjectionParams.z;
					    u_xlat0.x = max(u_xlat0.x, 0.0);
					    u_xlat0.x = u_xlat0.x * unity_FogParams.x;
					    u_xlat0.x = u_xlat0.x * (-u_xlat0.x);
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    SV_Target0.xyz = u_xlat0.xxx * u_xlat3.xyz + unity_FogColor.xyz;
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0.x;
					    SV_Target0.w = u_xlatb0 ? 1.0 : float(0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    SV_Target0.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat0 = u_xlatb0 ? 1.0 : float(0.0);
					    SV_Target0.w = u_xlat0 * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    SV_Target0.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat0 = u_xlatb0 ? 1.0 : float(0.0);
					    SV_Target0.w = u_xlat0 * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[7];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb0 = u_xlat1.w>=u_xlat0.x;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    SV_Target0.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat0.x = u_xlatb0 ? 1.0 : float(0.0);
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[6];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb0 = u_xlat1.w>=u_xlat0.x;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    SV_Target0.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat0.x = u_xlatb0 ? 1.0 : float(0.0);
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + unity_FogColor.xyz;
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    u_xlat0 = u_xlatb0 ? 1.0 : float(0.0);
					    SV_Target0.w = u_xlat0 * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + unity_FogColor.xyz;
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    u_xlat0 = u_xlatb0 ? 1.0 : float(0.0);
					    SV_Target0.w = u_xlat0 * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb0 = u_xlat1.w>=u_xlat0.x;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    u_xlat0.x = u_xlatb0 ? 1.0 : float(0.0);
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    u_xlat0.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0.x = (-u_xlat0.x) + 1.0;
					    u_xlat0.x = u_xlat0.x * _ProjectionParams.z;
					    u_xlat0.x = max(u_xlat0.x, 0.0);
					    u_xlat0.x = u_xlat0.x * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.xxx * u_xlat3.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb0 = u_xlat1.w>=u_xlat0.x;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    u_xlat0.x = u_xlatb0 ? 1.0 : float(0.0);
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    u_xlat0.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0.x = (-u_xlat0.x) + 1.0;
					    u_xlat0.x = u_xlat0.x * _ProjectionParams.z;
					    u_xlat0.x = max(u_xlat0.x, 0.0);
					    u_xlat0.x = u_xlat0.x * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.xxx * u_xlat3.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + unity_FogColor.xyz;
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    u_xlat0 = u_xlatb0 ? 1.0 : float(0.0);
					    SV_Target0.w = u_xlat0 * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + unity_FogColor.xyz;
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    u_xlat0 = u_xlatb0 ? 1.0 : float(0.0);
					    SV_Target0.w = u_xlat0 * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb0 = u_xlat1.w>=u_xlat0.x;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    u_xlat0.x = u_xlatb0 ? 1.0 : float(0.0);
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    u_xlat0.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0.x = (-u_xlat0.x) + 1.0;
					    u_xlat0.x = u_xlat0.x * _ProjectionParams.z;
					    u_xlat0.x = max(u_xlat0.x, 0.0);
					    u_xlat0.x = u_xlat0.x * unity_FogParams.y;
					    u_xlat0.x = exp2((-u_xlat0.x));
					    u_xlat0.x = min(u_xlat0.x, 1.0);
					    SV_Target0.xyz = u_xlat0.xxx * u_xlat3.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb0 = u_xlat1.w>=u_xlat0.x;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    u_xlat0.x = u_xlatb0 ? 1.0 : float(0.0);
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    u_xlat0.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0.x = (-u_xlat0.x) + 1.0;
					    u_xlat0.x = u_xlat0.x * _ProjectionParams.z;
					    u_xlat0.x = max(u_xlat0.x, 0.0);
					    u_xlat0.x = u_xlat0.x * unity_FogParams.y;
					    u_xlat0.x = exp2((-u_xlat0.x));
					    u_xlat0.x = min(u_xlat0.x, 1.0);
					    SV_Target0.xyz = u_xlat0.xxx * u_xlat3.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + unity_FogColor.xyz;
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    u_xlat0 = u_xlatb0 ? 1.0 : float(0.0);
					    SV_Target0.w = u_xlat0 * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + unity_FogColor.xyz;
					    u_xlat0 = (-vs_COLOR0.w) + 1.0;
					    u_xlat0 = u_xlat0 + _Cutout;
					    u_xlatb0 = u_xlat1.w>=u_xlat0;
					    u_xlat0 = u_xlatb0 ? 1.0 : float(0.0);
					    SV_Target0.w = u_xlat0 * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb0 = u_xlat1.w>=u_xlat0.x;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    u_xlat0.x = u_xlatb0 ? 1.0 : float(0.0);
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    u_xlat0.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0.x = (-u_xlat0.x) + 1.0;
					    u_xlat0.x = u_xlat0.x * _ProjectionParams.z;
					    u_xlat0.x = max(u_xlat0.x, 0.0);
					    u_xlat0.x = u_xlat0.x * unity_FogParams.x;
					    u_xlat0.x = u_xlat0.x * (-u_xlat0.x);
					    u_xlat0.x = exp2(u_xlat0.x);
					    SV_Target0.xyz = u_xlat0.xxx * u_xlat3.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb0 = u_xlat1.w>=u_xlat0.x;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    u_xlat0.x = u_xlatb0 ? 1.0 : float(0.0);
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    u_xlat0.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0.x = (-u_xlat0.x) + 1.0;
					    u_xlat0.x = u_xlat0.x * _ProjectionParams.z;
					    u_xlat0.x = max(u_xlat0.x, 0.0);
					    u_xlat0.x = u_xlat0.x * unity_FogParams.x;
					    u_xlat0.x = u_xlat0.x * (-u_xlat0.x);
					    u_xlat0.x = exp2(u_xlat0.x);
					    SV_Target0.xyz = u_xlat0.xxx * u_xlat3.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[7];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb0 = u_xlat1.w>=u_xlat0.x;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    SV_Target0.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat0.x = u_xlatb0 ? 1.0 : float(0.0);
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[6];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb0 = u_xlat1.w>=u_xlat0.x;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    SV_Target0.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat0.x = u_xlatb0 ? 1.0 : float(0.0);
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[7];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb0 = u_xlat1.w>=u_xlat0.x;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    SV_Target0.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat0.x = u_xlatb0 ? 1.0 : float(0.0);
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[6];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb0 = u_xlat1.w>=u_xlat0.x;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    SV_Target0.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat0.x = u_xlatb0 ? 1.0 : float(0.0);
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb0 = u_xlat1.w>=u_xlat0.x;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    u_xlat0.x = u_xlatb0 ? 1.0 : float(0.0);
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    u_xlat0.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0.x = (-u_xlat0.x) + 1.0;
					    u_xlat0.x = u_xlat0.x * _ProjectionParams.z;
					    u_xlat0.x = max(u_xlat0.x, 0.0);
					    u_xlat0.x = u_xlat0.x * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.xxx * u_xlat3.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb0 = u_xlat1.w>=u_xlat0.x;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    u_xlat0.x = u_xlatb0 ? 1.0 : float(0.0);
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    u_xlat0.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0.x = (-u_xlat0.x) + 1.0;
					    u_xlat0.x = u_xlat0.x * _ProjectionParams.z;
					    u_xlat0.x = max(u_xlat0.x, 0.0);
					    u_xlat0.x = u_xlat0.x * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.xxx * u_xlat3.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb0 = u_xlat1.w>=u_xlat0.x;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    u_xlat0.x = u_xlatb0 ? 1.0 : float(0.0);
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    u_xlat0.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0.x = (-u_xlat0.x) + 1.0;
					    u_xlat0.x = u_xlat0.x * _ProjectionParams.z;
					    u_xlat0.x = max(u_xlat0.x, 0.0);
					    u_xlat0.x = u_xlat0.x * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.xxx * u_xlat3.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb0 = u_xlat1.w>=u_xlat0.x;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    u_xlat0.x = u_xlatb0 ? 1.0 : float(0.0);
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    u_xlat0.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0.x = (-u_xlat0.x) + 1.0;
					    u_xlat0.x = u_xlat0.x * _ProjectionParams.z;
					    u_xlat0.x = max(u_xlat0.x, 0.0);
					    u_xlat0.x = u_xlat0.x * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    SV_Target0.xyz = u_xlat0.xxx * u_xlat3.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb0 = u_xlat1.w>=u_xlat0.x;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    u_xlat0.x = u_xlatb0 ? 1.0 : float(0.0);
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    u_xlat0.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0.x = (-u_xlat0.x) + 1.0;
					    u_xlat0.x = u_xlat0.x * _ProjectionParams.z;
					    u_xlat0.x = max(u_xlat0.x, 0.0);
					    u_xlat0.x = u_xlat0.x * unity_FogParams.y;
					    u_xlat0.x = exp2((-u_xlat0.x));
					    u_xlat0.x = min(u_xlat0.x, 1.0);
					    SV_Target0.xyz = u_xlat0.xxx * u_xlat3.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb0 = u_xlat1.w>=u_xlat0.x;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    u_xlat0.x = u_xlatb0 ? 1.0 : float(0.0);
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    u_xlat0.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0.x = (-u_xlat0.x) + 1.0;
					    u_xlat0.x = u_xlat0.x * _ProjectionParams.z;
					    u_xlat0.x = max(u_xlat0.x, 0.0);
					    u_xlat0.x = u_xlat0.x * unity_FogParams.y;
					    u_xlat0.x = exp2((-u_xlat0.x));
					    u_xlat0.x = min(u_xlat0.x, 1.0);
					    SV_Target0.xyz = u_xlat0.xxx * u_xlat3.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb0 = u_xlat1.w>=u_xlat0.x;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    u_xlat0.x = u_xlatb0 ? 1.0 : float(0.0);
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    u_xlat0.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0.x = (-u_xlat0.x) + 1.0;
					    u_xlat0.x = u_xlat0.x * _ProjectionParams.z;
					    u_xlat0.x = max(u_xlat0.x, 0.0);
					    u_xlat0.x = u_xlat0.x * unity_FogParams.y;
					    u_xlat0.x = exp2((-u_xlat0.x));
					    u_xlat0.x = min(u_xlat0.x, 1.0);
					    SV_Target0.xyz = u_xlat0.xxx * u_xlat3.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb0 = u_xlat1.w>=u_xlat0.x;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    u_xlat0.x = u_xlatb0 ? 1.0 : float(0.0);
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    u_xlat0.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0.x = (-u_xlat0.x) + 1.0;
					    u_xlat0.x = u_xlat0.x * _ProjectionParams.z;
					    u_xlat0.x = max(u_xlat0.x, 0.0);
					    u_xlat0.x = u_xlat0.x * unity_FogParams.y;
					    u_xlat0.x = exp2((-u_xlat0.x));
					    u_xlat0.x = min(u_xlat0.x, 1.0);
					    SV_Target0.xyz = u_xlat0.xxx * u_xlat3.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb0 = u_xlat1.w>=u_xlat0.x;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    u_xlat0.x = u_xlatb0 ? 1.0 : float(0.0);
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    u_xlat0.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0.x = (-u_xlat0.x) + 1.0;
					    u_xlat0.x = u_xlat0.x * _ProjectionParams.z;
					    u_xlat0.x = max(u_xlat0.x, 0.0);
					    u_xlat0.x = u_xlat0.x * unity_FogParams.x;
					    u_xlat0.x = u_xlat0.x * (-u_xlat0.x);
					    u_xlat0.x = exp2(u_xlat0.x);
					    SV_Target0.xyz = u_xlat0.xxx * u_xlat3.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb0 = u_xlat1.w>=u_xlat0.x;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    u_xlat0.x = u_xlatb0 ? 1.0 : float(0.0);
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    u_xlat0.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0.x = (-u_xlat0.x) + 1.0;
					    u_xlat0.x = u_xlat0.x * _ProjectionParams.z;
					    u_xlat0.x = max(u_xlat0.x, 0.0);
					    u_xlat0.x = u_xlat0.x * unity_FogParams.x;
					    u_xlat0.x = u_xlat0.x * (-u_xlat0.x);
					    u_xlat0.x = exp2(u_xlat0.x);
					    SV_Target0.xyz = u_xlat0.xxx * u_xlat3.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb0 = u_xlat1.w>=u_xlat0.x;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    u_xlat0.x = u_xlatb0 ? 1.0 : float(0.0);
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    u_xlat0.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0.x = (-u_xlat0.x) + 1.0;
					    u_xlat0.x = u_xlat0.x * _ProjectionParams.z;
					    u_xlat0.x = max(u_xlat0.x, 0.0);
					    u_xlat0.x = u_xlat0.x * unity_FogParams.x;
					    u_xlat0.x = u_xlat0.x * (-u_xlat0.x);
					    u_xlat0.x = exp2(u_xlat0.x);
					    SV_Target0.xyz = u_xlat0.xxx * u_xlat3.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendAlpha" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb0 = u_xlat1.w>=u_xlat0.x;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * vs_COLOR0.xyz + (-unity_FogColor.xyz);
					    u_xlat0.x = u_xlatb0 ? 1.0 : float(0.0);
					    SV_Target0.w = u_xlat0.x * vs_TEXCOORD4;
					    u_xlat0.x = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0.x = (-u_xlat0.x) + 1.0;
					    u_xlat0.x = u_xlat0.x * _ProjectionParams.z;
					    u_xlat0.x = max(u_xlat0.x, 0.0);
					    u_xlat0.x = u_xlat0.x * unity_FogParams.x;
					    u_xlat0.x = u_xlat0.x * (-u_xlat0.x);
					    u_xlat0.x = exp2(u_xlat0.x);
					    SV_Target0.xyz = u_xlat0.xxx * u_xlat3.xyz + unity_FogColor.xyz;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendMul" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat0 = u_xlat0 * vs_COLOR0;
					    u_xlat0.w = u_xlat0.w;
					    u_xlat0.w = clamp(u_xlat0.w, 0.0, 1.0);
					    u_xlat1 = u_xlat0 + vec4(-1.0, -1.0, -1.0, -1.0);
					    SV_Target0 = u_xlat0.wwww * u_xlat1 + vec4(1.0, 1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat0 = u_xlat0 * vs_COLOR0;
					    u_xlat0.w = u_xlat0.w;
					    u_xlat0.w = clamp(u_xlat0.w, 0.0, 1.0);
					    u_xlat1 = u_xlat0 + vec4(-1.0, -1.0, -1.0, -1.0);
					    SV_Target0 = u_xlat0.wwww * u_xlat1 + vec4(1.0, 1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendMul" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat0 = u_xlat0 * vs_COLOR0;
					    u_xlat0.w = u_xlat0.w;
					    u_xlat0.w = clamp(u_xlat0.w, 0.0, 1.0);
					    u_xlat1 = u_xlat0 + vec4(-1.0, -1.0, -1.0, -1.0);
					    SV_Target0 = u_xlat0.wwww * u_xlat1 + vec4(1.0, 1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat0 = u_xlat0 * vs_COLOR0;
					    u_xlat0.w = u_xlat0.w;
					    u_xlat0.w = clamp(u_xlat0.w, 0.0, 1.0);
					    u_xlat1 = u_xlat0 + vec4(-1.0, -1.0, -1.0, -1.0);
					    SV_Target0 = u_xlat0.wwww * u_xlat1 + vec4(1.0, 1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendMul" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendMul" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendMul" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendMul" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendMul" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendMul" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendMul" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat0 = u_xlat0 * vs_COLOR0;
					    u_xlat0.w = u_xlat0.w;
					    u_xlat0.w = clamp(u_xlat0.w, 0.0, 1.0);
					    u_xlat1 = u_xlat0 + vec4(-1.0, -1.0, -1.0, -1.0);
					    SV_Target0 = u_xlat0.wwww * u_xlat1 + vec4(1.0, 1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat0 = u_xlat0 * vs_COLOR0;
					    u_xlat0.w = u_xlat0.w;
					    u_xlat0.w = clamp(u_xlat0.w, 0.0, 1.0);
					    u_xlat1 = u_xlat0 + vec4(-1.0, -1.0, -1.0, -1.0);
					    SV_Target0 = u_xlat0.wwww * u_xlat1 + vec4(1.0, 1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendMul" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat0 = u_xlat0 * vs_COLOR0;
					    u_xlat0.w = u_xlat0.w;
					    u_xlat0.w = clamp(u_xlat0.w, 0.0, 1.0);
					    u_xlat1 = u_xlat0 + vec4(-1.0, -1.0, -1.0, -1.0);
					    SV_Target0 = u_xlat0.wwww * u_xlat1 + vec4(1.0, 1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat0 = u_xlat0 * vs_COLOR0;
					    u_xlat0.w = u_xlat0.w;
					    u_xlat0.w = clamp(u_xlat0.w, 0.0, 1.0);
					    u_xlat1 = u_xlat0 + vec4(-1.0, -1.0, -1.0, -1.0);
					    SV_Target0 = u_xlat0.wwww * u_xlat1 + vec4(1.0, 1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendMul" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendMul" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendMul" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendMul" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendMul" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendMul" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendMul" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat6;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat0 = u_xlat0 * vs_COLOR0;
					    u_xlat6 = u_xlat0.w;
					    u_xlat6 = clamp(u_xlat6, 0.0, 1.0);
					    u_xlat0.w = u_xlat6 * vs_TEXCOORD4;
					    u_xlat1 = u_xlat0 + vec4(-1.0, -1.0, -1.0, -1.0);
					    SV_Target0 = u_xlat0.wwww * u_xlat1 + vec4(1.0, 1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat6;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat0 = u_xlat0 * vs_COLOR0;
					    u_xlat6 = u_xlat0.w;
					    u_xlat6 = clamp(u_xlat6, 0.0, 1.0);
					    u_xlat0.w = u_xlat6 * vs_TEXCOORD4;
					    u_xlat1 = u_xlat0 + vec4(-1.0, -1.0, -1.0, -1.0);
					    SV_Target0 = u_xlat0.wwww * u_xlat1 + vec4(1.0, 1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendMul" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat6;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat0 = u_xlat0 * vs_COLOR0;
					    u_xlat6 = u_xlat0.w;
					    u_xlat6 = clamp(u_xlat6, 0.0, 1.0);
					    u_xlat0.w = u_xlat6 * vs_TEXCOORD4;
					    u_xlat1 = u_xlat0 + vec4(-1.0, -1.0, -1.0, -1.0);
					    SV_Target0 = u_xlat0.wwww * u_xlat1 + vec4(1.0, 1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat6;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat0 = u_xlat0 * vs_COLOR0;
					    u_xlat6 = u_xlat0.w;
					    u_xlat6 = clamp(u_xlat6, 0.0, 1.0);
					    u_xlat0.w = u_xlat6 * vs_TEXCOORD4;
					    u_xlat1 = u_xlat0 + vec4(-1.0, -1.0, -1.0, -1.0);
					    SV_Target0 = u_xlat0.wwww * u_xlat1 + vec4(1.0, 1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendMul" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendMul" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendMul" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendMul" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendMul" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendMul" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendMul" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat6;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat0 = u_xlat0 * vs_COLOR0;
					    u_xlat6 = u_xlat0.w;
					    u_xlat6 = clamp(u_xlat6, 0.0, 1.0);
					    u_xlat0.w = u_xlat6 * vs_TEXCOORD4;
					    u_xlat1 = u_xlat0 + vec4(-1.0, -1.0, -1.0, -1.0);
					    SV_Target0 = u_xlat0.wwww * u_xlat1 + vec4(1.0, 1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat6;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat0 = u_xlat0 * vs_COLOR0;
					    u_xlat6 = u_xlat0.w;
					    u_xlat6 = clamp(u_xlat6, 0.0, 1.0);
					    u_xlat0.w = u_xlat6 * vs_TEXCOORD4;
					    u_xlat1 = u_xlat0 + vec4(-1.0, -1.0, -1.0, -1.0);
					    SV_Target0 = u_xlat0.wwww * u_xlat1 + vec4(1.0, 1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendMul" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat6;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat0 = u_xlat0 * vs_COLOR0;
					    u_xlat6 = u_xlat0.w;
					    u_xlat6 = clamp(u_xlat6, 0.0, 1.0);
					    u_xlat0.w = u_xlat6 * vs_TEXCOORD4;
					    u_xlat1 = u_xlat0 + vec4(-1.0, -1.0, -1.0, -1.0);
					    SV_Target0 = u_xlat0.wwww * u_xlat1 + vec4(1.0, 1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat6;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat0 = u_xlat0 * vs_COLOR0;
					    u_xlat6 = u_xlat0.w;
					    u_xlat6 = clamp(u_xlat6, 0.0, 1.0);
					    u_xlat0.w = u_xlat6 * vs_TEXCOORD4;
					    u_xlat1 = u_xlat0 + vec4(-1.0, -1.0, -1.0, -1.0);
					    SV_Target0 = u_xlat0.wwww * u_xlat1 + vec4(1.0, 1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendMul" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendMul" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendMul" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendMul" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendMul" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendMul" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendMul" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					bool u_xlatb1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1.x = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat0.w = u_xlat0.w * u_xlat1.x;
					    u_xlat0 = u_xlat0 * vs_COLOR0;
					    u_xlat0.w = u_xlat0.w;
					    u_xlat0.w = clamp(u_xlat0.w, 0.0, 1.0);
					    u_xlat1 = u_xlat0 + vec4(-1.0, -1.0, -1.0, -1.0);
					    SV_Target0 = u_xlat0.wwww * u_xlat1 + vec4(1.0, 1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					bool u_xlatb1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1.x = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat0.w = u_xlat0.w * u_xlat1.x;
					    u_xlat0 = u_xlat0 * vs_COLOR0;
					    u_xlat0.w = u_xlat0.w;
					    u_xlat0.w = clamp(u_xlat0.w, 0.0, 1.0);
					    u_xlat1 = u_xlat0 + vec4(-1.0, -1.0, -1.0, -1.0);
					    SV_Target0 = u_xlat0.wwww * u_xlat1 + vec4(1.0, 1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendMul" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					bool u_xlatb1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1.x = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat0.w = u_xlat0.w * u_xlat1.x;
					    u_xlat0 = u_xlat0 * vs_COLOR0;
					    u_xlat0.w = u_xlat0.w;
					    u_xlat0.w = clamp(u_xlat0.w, 0.0, 1.0);
					    u_xlat1 = u_xlat0 + vec4(-1.0, -1.0, -1.0, -1.0);
					    SV_Target0 = u_xlat0.wwww * u_xlat1 + vec4(1.0, 1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					bool u_xlatb1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1.x = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat0.w = u_xlat0.w * u_xlat1.x;
					    u_xlat0 = u_xlat0 * vs_COLOR0;
					    u_xlat0.w = u_xlat0.w;
					    u_xlat0.w = clamp(u_xlat0.w, 0.0, 1.0);
					    u_xlat1 = u_xlat0 + vec4(-1.0, -1.0, -1.0, -1.0);
					    SV_Target0 = u_xlat0.wwww * u_xlat1 + vec4(1.0, 1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendMul" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3.x;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3.x;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendMul" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3.x;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3.x;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendMul" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3.x;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3.x;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendMul" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3.x;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3.x;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendMul" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3.x;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3.x;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendMul" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3.x;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3.x;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendMul" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					bool u_xlatb1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1.x = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat0.w = u_xlat0.w * u_xlat1.x;
					    u_xlat0 = u_xlat0 * vs_COLOR0;
					    u_xlat0.w = u_xlat0.w;
					    u_xlat0.w = clamp(u_xlat0.w, 0.0, 1.0);
					    u_xlat1 = u_xlat0 + vec4(-1.0, -1.0, -1.0, -1.0);
					    SV_Target0 = u_xlat0.wwww * u_xlat1 + vec4(1.0, 1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					bool u_xlatb1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1.x = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat0.w = u_xlat0.w * u_xlat1.x;
					    u_xlat0 = u_xlat0 * vs_COLOR0;
					    u_xlat0.w = u_xlat0.w;
					    u_xlat0.w = clamp(u_xlat0.w, 0.0, 1.0);
					    u_xlat1 = u_xlat0 + vec4(-1.0, -1.0, -1.0, -1.0);
					    SV_Target0 = u_xlat0.wwww * u_xlat1 + vec4(1.0, 1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendMul" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					bool u_xlatb1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1.x = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat0.w = u_xlat0.w * u_xlat1.x;
					    u_xlat0 = u_xlat0 * vs_COLOR0;
					    u_xlat0.w = u_xlat0.w;
					    u_xlat0.w = clamp(u_xlat0.w, 0.0, 1.0);
					    u_xlat1 = u_xlat0 + vec4(-1.0, -1.0, -1.0, -1.0);
					    SV_Target0 = u_xlat0.wwww * u_xlat1 + vec4(1.0, 1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					bool u_xlatb1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1.x = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat0.w = u_xlat0.w * u_xlat1.x;
					    u_xlat0 = u_xlat0 * vs_COLOR0;
					    u_xlat0.w = u_xlat0.w;
					    u_xlat0.w = clamp(u_xlat0.w, 0.0, 1.0);
					    u_xlat1 = u_xlat0 + vec4(-1.0, -1.0, -1.0, -1.0);
					    SV_Target0 = u_xlat0.wwww * u_xlat1 + vec4(1.0, 1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendMul" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3.x;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3.x;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendMul" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3.x;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3.x;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendMul" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3.x;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3.x;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendMul" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3.x;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3.x;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendMul" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3.x;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3.x;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendMul" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3.x;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3.x;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendMul" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					bool u_xlatb1;
					float u_xlat6;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1.x = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat0.w = u_xlat0.w * u_xlat1.x;
					    u_xlat0 = u_xlat0 * vs_COLOR0;
					    u_xlat6 = u_xlat0.w;
					    u_xlat6 = clamp(u_xlat6, 0.0, 1.0);
					    u_xlat0.w = u_xlat6 * vs_TEXCOORD4;
					    u_xlat1 = u_xlat0 + vec4(-1.0, -1.0, -1.0, -1.0);
					    SV_Target0 = u_xlat0.wwww * u_xlat1 + vec4(1.0, 1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					bool u_xlatb1;
					float u_xlat6;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1.x = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat0.w = u_xlat0.w * u_xlat1.x;
					    u_xlat0 = u_xlat0 * vs_COLOR0;
					    u_xlat6 = u_xlat0.w;
					    u_xlat6 = clamp(u_xlat6, 0.0, 1.0);
					    u_xlat0.w = u_xlat6 * vs_TEXCOORD4;
					    u_xlat1 = u_xlat0 + vec4(-1.0, -1.0, -1.0, -1.0);
					    SV_Target0 = u_xlat0.wwww * u_xlat1 + vec4(1.0, 1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendMul" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					bool u_xlatb1;
					float u_xlat6;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1.x = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat0.w = u_xlat0.w * u_xlat1.x;
					    u_xlat0 = u_xlat0 * vs_COLOR0;
					    u_xlat6 = u_xlat0.w;
					    u_xlat6 = clamp(u_xlat6, 0.0, 1.0);
					    u_xlat0.w = u_xlat6 * vs_TEXCOORD4;
					    u_xlat1 = u_xlat0 + vec4(-1.0, -1.0, -1.0, -1.0);
					    SV_Target0 = u_xlat0.wwww * u_xlat1 + vec4(1.0, 1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					bool u_xlatb1;
					float u_xlat6;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1.x = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat0.w = u_xlat0.w * u_xlat1.x;
					    u_xlat0 = u_xlat0 * vs_COLOR0;
					    u_xlat6 = u_xlat0.w;
					    u_xlat6 = clamp(u_xlat6, 0.0, 1.0);
					    u_xlat0.w = u_xlat6 * vs_TEXCOORD4;
					    u_xlat1 = u_xlat0 + vec4(-1.0, -1.0, -1.0, -1.0);
					    SV_Target0 = u_xlat0.wwww * u_xlat1 + vec4(1.0, 1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendMul" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3.x;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3.x;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendMul" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3.x;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3.x;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendMul" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3.x;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3.x;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendMul" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3.x;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3.x;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendMul" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3.x;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3.x;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendMul" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3.x;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3.x;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendMul" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					bool u_xlatb1;
					float u_xlat6;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1.x = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat0.w = u_xlat0.w * u_xlat1.x;
					    u_xlat0 = u_xlat0 * vs_COLOR0;
					    u_xlat6 = u_xlat0.w;
					    u_xlat6 = clamp(u_xlat6, 0.0, 1.0);
					    u_xlat0.w = u_xlat6 * vs_TEXCOORD4;
					    u_xlat1 = u_xlat0 + vec4(-1.0, -1.0, -1.0, -1.0);
					    SV_Target0 = u_xlat0.wwww * u_xlat1 + vec4(1.0, 1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					bool u_xlatb1;
					float u_xlat6;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1.x = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat0.w = u_xlat0.w * u_xlat1.x;
					    u_xlat0 = u_xlat0 * vs_COLOR0;
					    u_xlat6 = u_xlat0.w;
					    u_xlat6 = clamp(u_xlat6, 0.0, 1.0);
					    u_xlat0.w = u_xlat6 * vs_TEXCOORD4;
					    u_xlat1 = u_xlat0 + vec4(-1.0, -1.0, -1.0, -1.0);
					    SV_Target0 = u_xlat0.wwww * u_xlat1 + vec4(1.0, 1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendMul" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					bool u_xlatb1;
					float u_xlat6;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1.x = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat0.w = u_xlat0.w * u_xlat1.x;
					    u_xlat0 = u_xlat0 * vs_COLOR0;
					    u_xlat6 = u_xlat0.w;
					    u_xlat6 = clamp(u_xlat6, 0.0, 1.0);
					    u_xlat0.w = u_xlat6 * vs_TEXCOORD4;
					    u_xlat1 = u_xlat0 + vec4(-1.0, -1.0, -1.0, -1.0);
					    SV_Target0 = u_xlat0.wwww * u_xlat1 + vec4(1.0, 1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					bool u_xlatb1;
					float u_xlat6;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1.x = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat0.w = u_xlat0.w * u_xlat1.x;
					    u_xlat0 = u_xlat0 * vs_COLOR0;
					    u_xlat6 = u_xlat0.w;
					    u_xlat6 = clamp(u_xlat6, 0.0, 1.0);
					    u_xlat0.w = u_xlat6 * vs_TEXCOORD4;
					    u_xlat1 = u_xlat0 + vec4(-1.0, -1.0, -1.0, -1.0);
					    SV_Target0 = u_xlat0.wwww * u_xlat1 + vec4(1.0, 1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendMul" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3.x;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3.x;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendMul" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3.x;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3.x;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendMul" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3.x;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3.x;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendMul" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3.x;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3.x;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendMul" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3.x;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3.x;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendMul" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3.x;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3.x;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendMul" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0.xyz = u_xlat0.xyz + u_xlat0.xyz;
					    u_xlat0.xyz = u_xlat0.xyz * _TintColor.xyz;
					    u_xlat1.xyz = u_xlat0.xyz * vs_COLOR0.xyz;
					    u_xlat0.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlatb0 = u_xlat0.w>=u_xlat0.x;
					    u_xlat1.w = u_xlatb0 ? 1.0 : float(0.0);
					    u_xlat0 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    SV_Target0 = u_xlat1.wwww * u_xlat0 + vec4(1.0, 1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0.xyz = u_xlat0.xyz + u_xlat0.xyz;
					    u_xlat0.xyz = u_xlat0.xyz * _TintColor.xyz;
					    u_xlat1.xyz = u_xlat0.xyz * vs_COLOR0.xyz;
					    u_xlat0.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlatb0 = u_xlat0.w>=u_xlat0.x;
					    u_xlat1.w = u_xlatb0 ? 1.0 : float(0.0);
					    u_xlat0 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    SV_Target0 = u_xlat1.wwww * u_xlat0 + vec4(1.0, 1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendMul" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0.xyz = u_xlat0.xyz + u_xlat0.xyz;
					    u_xlat0.xyz = u_xlat0.xyz * _TintColor.xyz;
					    u_xlat1.xyz = u_xlat0.xyz * vs_COLOR0.xyz;
					    u_xlat0.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlatb0 = u_xlat0.w>=u_xlat0.x;
					    u_xlat1.w = u_xlatb0 ? 1.0 : float(0.0);
					    u_xlat0 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    SV_Target0 = u_xlat1.wwww * u_xlat0 + vec4(1.0, 1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0.xyz = u_xlat0.xyz + u_xlat0.xyz;
					    u_xlat0.xyz = u_xlat0.xyz * _TintColor.xyz;
					    u_xlat1.xyz = u_xlat0.xyz * vs_COLOR0.xyz;
					    u_xlat0.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlatb0 = u_xlat0.w>=u_xlat0.x;
					    u_xlat1.w = u_xlatb0 ? 1.0 : float(0.0);
					    u_xlat0 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    SV_Target0 = u_xlat1.wwww * u_xlat0 + vec4(1.0, 1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendMul" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat2.w = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1 = u_xlat2 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat2.w = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1 = u_xlat2 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendMul" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat2.w = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1 = u_xlat2 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat2.w = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1 = u_xlat2 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendMul" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat2.w = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1 = u_xlat2 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat2.w = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1 = u_xlat2 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendMul" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat2.w = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1 = u_xlat2 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat2.w = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1 = u_xlat2 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendMul" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat2.w = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1 = u_xlat2 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat2.w = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1 = u_xlat2 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendMul" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat2.w = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1 = u_xlat2 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat2.w = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1 = u_xlat2 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendMul" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0.xyz = u_xlat0.xyz + u_xlat0.xyz;
					    u_xlat0.xyz = u_xlat0.xyz * _TintColor.xyz;
					    u_xlat1.xyz = u_xlat0.xyz * vs_COLOR0.xyz;
					    u_xlat0.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlatb0 = u_xlat0.w>=u_xlat0.x;
					    u_xlat1.w = u_xlatb0 ? 1.0 : float(0.0);
					    u_xlat0 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    SV_Target0 = u_xlat1.wwww * u_xlat0 + vec4(1.0, 1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0.xyz = u_xlat0.xyz + u_xlat0.xyz;
					    u_xlat0.xyz = u_xlat0.xyz * _TintColor.xyz;
					    u_xlat1.xyz = u_xlat0.xyz * vs_COLOR0.xyz;
					    u_xlat0.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlatb0 = u_xlat0.w>=u_xlat0.x;
					    u_xlat1.w = u_xlatb0 ? 1.0 : float(0.0);
					    u_xlat0 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    SV_Target0 = u_xlat1.wwww * u_xlat0 + vec4(1.0, 1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendMul" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0.xyz = u_xlat0.xyz + u_xlat0.xyz;
					    u_xlat0.xyz = u_xlat0.xyz * _TintColor.xyz;
					    u_xlat1.xyz = u_xlat0.xyz * vs_COLOR0.xyz;
					    u_xlat0.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlatb0 = u_xlat0.w>=u_xlat0.x;
					    u_xlat1.w = u_xlatb0 ? 1.0 : float(0.0);
					    u_xlat0 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    SV_Target0 = u_xlat1.wwww * u_xlat0 + vec4(1.0, 1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0.xyz = u_xlat0.xyz + u_xlat0.xyz;
					    u_xlat0.xyz = u_xlat0.xyz * _TintColor.xyz;
					    u_xlat1.xyz = u_xlat0.xyz * vs_COLOR0.xyz;
					    u_xlat0.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlatb0 = u_xlat0.w>=u_xlat0.x;
					    u_xlat1.w = u_xlatb0 ? 1.0 : float(0.0);
					    u_xlat0 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    SV_Target0 = u_xlat1.wwww * u_xlat0 + vec4(1.0, 1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendMul" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat2.w = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1 = u_xlat2 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat2.w = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1 = u_xlat2 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendMul" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat2.w = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1 = u_xlat2 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat2.w = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1 = u_xlat2 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendMul" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat2.w = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1 = u_xlat2 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat2.w = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1 = u_xlat2 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendMul" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat2.w = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1 = u_xlat2 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat2.w = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1 = u_xlat2 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendMul" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat2.w = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1 = u_xlat2 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat2.w = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1 = u_xlat2 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendMul" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat2.w = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1 = u_xlat2 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat2.w = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1 = u_xlat2 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendMul" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0.xyz = u_xlat0.xyz + u_xlat0.xyz;
					    u_xlat0.xyz = u_xlat0.xyz * _TintColor.xyz;
					    u_xlat1.xyz = u_xlat0.xyz * vs_COLOR0.xyz;
					    u_xlat0.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlatb0 = u_xlat0.w>=u_xlat0.x;
					    u_xlat0.x = u_xlatb0 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat0.x * vs_TEXCOORD4;
					    u_xlat0 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    SV_Target0 = u_xlat1.wwww * u_xlat0 + vec4(1.0, 1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0.xyz = u_xlat0.xyz + u_xlat0.xyz;
					    u_xlat0.xyz = u_xlat0.xyz * _TintColor.xyz;
					    u_xlat1.xyz = u_xlat0.xyz * vs_COLOR0.xyz;
					    u_xlat0.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlatb0 = u_xlat0.w>=u_xlat0.x;
					    u_xlat0.x = u_xlatb0 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat0.x * vs_TEXCOORD4;
					    u_xlat0 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    SV_Target0 = u_xlat1.wwww * u_xlat0 + vec4(1.0, 1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendMul" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0.xyz = u_xlat0.xyz + u_xlat0.xyz;
					    u_xlat0.xyz = u_xlat0.xyz * _TintColor.xyz;
					    u_xlat1.xyz = u_xlat0.xyz * vs_COLOR0.xyz;
					    u_xlat0.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlatb0 = u_xlat0.w>=u_xlat0.x;
					    u_xlat0.x = u_xlatb0 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat0.x * vs_TEXCOORD4;
					    u_xlat0 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    SV_Target0 = u_xlat1.wwww * u_xlat0 + vec4(1.0, 1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0.xyz = u_xlat0.xyz + u_xlat0.xyz;
					    u_xlat0.xyz = u_xlat0.xyz * _TintColor.xyz;
					    u_xlat1.xyz = u_xlat0.xyz * vs_COLOR0.xyz;
					    u_xlat0.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlatb0 = u_xlat0.w>=u_xlat0.x;
					    u_xlat0.x = u_xlatb0 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat0.x * vs_TEXCOORD4;
					    u_xlat0 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    SV_Target0 = u_xlat1.wwww * u_xlat0 + vec4(1.0, 1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendMul" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat2.w = u_xlat3.x * vs_TEXCOORD4;
					    u_xlat1 = u_xlat2 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat2.w = u_xlat3.x * vs_TEXCOORD4;
					    u_xlat1 = u_xlat2 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendMul" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat2.w = u_xlat3.x * vs_TEXCOORD4;
					    u_xlat1 = u_xlat2 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat2.w = u_xlat3.x * vs_TEXCOORD4;
					    u_xlat1 = u_xlat2 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendMul" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat2.w = u_xlat3.x * vs_TEXCOORD4;
					    u_xlat1 = u_xlat2 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat2.w = u_xlat3.x * vs_TEXCOORD4;
					    u_xlat1 = u_xlat2 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendMul" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat2.w = u_xlat3.x * vs_TEXCOORD4;
					    u_xlat1 = u_xlat2 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat2.w = u_xlat3.x * vs_TEXCOORD4;
					    u_xlat1 = u_xlat2 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendMul" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat2.w = u_xlat3.x * vs_TEXCOORD4;
					    u_xlat1 = u_xlat2 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat2.w = u_xlat3.x * vs_TEXCOORD4;
					    u_xlat1 = u_xlat2 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendMul" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat2.w = u_xlat3.x * vs_TEXCOORD4;
					    u_xlat1 = u_xlat2 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat2.w = u_xlat3.x * vs_TEXCOORD4;
					    u_xlat1 = u_xlat2 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendMul" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0.xyz = u_xlat0.xyz + u_xlat0.xyz;
					    u_xlat0.xyz = u_xlat0.xyz * _TintColor.xyz;
					    u_xlat1.xyz = u_xlat0.xyz * vs_COLOR0.xyz;
					    u_xlat0.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlatb0 = u_xlat0.w>=u_xlat0.x;
					    u_xlat0.x = u_xlatb0 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat0.x * vs_TEXCOORD4;
					    u_xlat0 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    SV_Target0 = u_xlat1.wwww * u_xlat0 + vec4(1.0, 1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0.xyz = u_xlat0.xyz + u_xlat0.xyz;
					    u_xlat0.xyz = u_xlat0.xyz * _TintColor.xyz;
					    u_xlat1.xyz = u_xlat0.xyz * vs_COLOR0.xyz;
					    u_xlat0.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlatb0 = u_xlat0.w>=u_xlat0.x;
					    u_xlat0.x = u_xlatb0 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat0.x * vs_TEXCOORD4;
					    u_xlat0 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    SV_Target0 = u_xlat1.wwww * u_xlat0 + vec4(1.0, 1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendMul" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0.xyz = u_xlat0.xyz + u_xlat0.xyz;
					    u_xlat0.xyz = u_xlat0.xyz * _TintColor.xyz;
					    u_xlat1.xyz = u_xlat0.xyz * vs_COLOR0.xyz;
					    u_xlat0.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlatb0 = u_xlat0.w>=u_xlat0.x;
					    u_xlat0.x = u_xlatb0 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat0.x * vs_TEXCOORD4;
					    u_xlat0 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    SV_Target0 = u_xlat1.wwww * u_xlat0 + vec4(1.0, 1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0.xyz = u_xlat0.xyz + u_xlat0.xyz;
					    u_xlat0.xyz = u_xlat0.xyz * _TintColor.xyz;
					    u_xlat1.xyz = u_xlat0.xyz * vs_COLOR0.xyz;
					    u_xlat0.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlatb0 = u_xlat0.w>=u_xlat0.x;
					    u_xlat0.x = u_xlatb0 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat0.x * vs_TEXCOORD4;
					    u_xlat0 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    SV_Target0 = u_xlat1.wwww * u_xlat0 + vec4(1.0, 1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendMul" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat2.w = u_xlat3.x * vs_TEXCOORD4;
					    u_xlat1 = u_xlat2 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat2.w = u_xlat3.x * vs_TEXCOORD4;
					    u_xlat1 = u_xlat2 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendMul" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat2.w = u_xlat3.x * vs_TEXCOORD4;
					    u_xlat1 = u_xlat2 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat2.w = u_xlat3.x * vs_TEXCOORD4;
					    u_xlat1 = u_xlat2 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendMul" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat2.w = u_xlat3.x * vs_TEXCOORD4;
					    u_xlat1 = u_xlat2 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat2.w = u_xlat3.x * vs_TEXCOORD4;
					    u_xlat1 = u_xlat2 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendMul" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat2.w = u_xlat3.x * vs_TEXCOORD4;
					    u_xlat1 = u_xlat2 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat2.w = u_xlat3.x * vs_TEXCOORD4;
					    u_xlat1 = u_xlat2 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendMul" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat2.w = u_xlat3.x * vs_TEXCOORD4;
					    u_xlat1 = u_xlat2 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat2.w = u_xlat3.x * vs_TEXCOORD4;
					    u_xlat1 = u_xlat2 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendMul" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat2.w = u_xlat3.x * vs_TEXCOORD4;
					    u_xlat1 = u_xlat2 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat2.w = u_xlat3.x * vs_TEXCOORD4;
					    u_xlat1 = u_xlat2 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendMul" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat0 = u_xlat0 * vs_COLOR0;
					    u_xlat0.w = u_xlat0.w;
					    u_xlat0.w = clamp(u_xlat0.w, 0.0, 1.0);
					    u_xlat1 = u_xlat0 + vec4(-1.0, -1.0, -1.0, -1.0);
					    SV_Target0 = u_xlat0.wwww * u_xlat1 + vec4(1.0, 1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat0 = u_xlat0 * vs_COLOR0;
					    u_xlat0.w = u_xlat0.w;
					    u_xlat0.w = clamp(u_xlat0.w, 0.0, 1.0);
					    u_xlat1 = u_xlat0 + vec4(-1.0, -1.0, -1.0, -1.0);
					    SV_Target0 = u_xlat0.wwww * u_xlat1 + vec4(1.0, 1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendMul" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[7];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat0.w = u_xlat0.w;
					    u_xlat0.w = clamp(u_xlat0.w, 0.0, 1.0);
					    u_xlat1 = u_xlat0 + vec4(-1.0, -1.0, -1.0, -1.0);
					    SV_Target0 = u_xlat0.wwww * u_xlat1 + vec4(1.0, 1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[6];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat0.w = u_xlat0.w;
					    u_xlat0.w = clamp(u_xlat0.w, 0.0, 1.0);
					    u_xlat1 = u_xlat0 + vec4(-1.0, -1.0, -1.0, -1.0);
					    SV_Target0 = u_xlat0.wwww * u_xlat1 + vec4(1.0, 1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendMul" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendMul" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat3.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat1 = texture(_CameraDepthTexture, u_xlat3.xy);
					    u_xlat3.x = _ZBufferParams.z * u_xlat1.x + _ZBufferParams.w;
					    u_xlat3.x = float(1.0) / u_xlat3.x;
					    u_xlat3.x = u_xlat3.x + (-vs_TEXCOORD3.z);
					    u_xlat3.x = u_xlat3.x * _InvFade;
					    u_xlat3.x = clamp(u_xlat3.x, 0.0, 1.0);
					    u_xlat1.w = u_xlat3.x * vs_COLOR0.w;
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2 = u_xlat2 + u_xlat2;
					    u_xlat2 = u_xlat2 * _TintColor;
					    u_xlat1.xyz = vs_COLOR0.xyz;
					    u_xlat1 = u_xlat1 * u_xlat2;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat3.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat1 = texture(_CameraDepthTexture, u_xlat3.xy);
					    u_xlat3.x = _ZBufferParams.z * u_xlat1.x + _ZBufferParams.w;
					    u_xlat3.x = float(1.0) / u_xlat3.x;
					    u_xlat3.x = u_xlat3.x + (-vs_TEXCOORD3.z);
					    u_xlat3.x = u_xlat3.x * _InvFade;
					    u_xlat3.x = clamp(u_xlat3.x, 0.0, 1.0);
					    u_xlat1.w = u_xlat3.x * vs_COLOR0.w;
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2 = u_xlat2 + u_xlat2;
					    u_xlat2 = u_xlat2 * _TintColor;
					    u_xlat1.xyz = vs_COLOR0.xyz;
					    u_xlat1 = u_xlat1 * u_xlat2;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendMul" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendMul" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat3.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat1 = texture(_CameraDepthTexture, u_xlat3.xy);
					    u_xlat3.x = _ZBufferParams.z * u_xlat1.x + _ZBufferParams.w;
					    u_xlat3.x = float(1.0) / u_xlat3.x;
					    u_xlat3.x = u_xlat3.x + (-vs_TEXCOORD3.z);
					    u_xlat3.x = u_xlat3.x * _InvFade;
					    u_xlat3.x = clamp(u_xlat3.x, 0.0, 1.0);
					    u_xlat1.w = u_xlat3.x * vs_COLOR0.w;
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2 = u_xlat2 + u_xlat2;
					    u_xlat2 = u_xlat2 * _TintColor;
					    u_xlat1.xyz = vs_COLOR0.xyz;
					    u_xlat1 = u_xlat1 * u_xlat2;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat3.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat1 = texture(_CameraDepthTexture, u_xlat3.xy);
					    u_xlat3.x = _ZBufferParams.z * u_xlat1.x + _ZBufferParams.w;
					    u_xlat3.x = float(1.0) / u_xlat3.x;
					    u_xlat3.x = u_xlat3.x + (-vs_TEXCOORD3.z);
					    u_xlat3.x = u_xlat3.x * _InvFade;
					    u_xlat3.x = clamp(u_xlat3.x, 0.0, 1.0);
					    u_xlat1.w = u_xlat3.x * vs_COLOR0.w;
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2 = u_xlat2 + u_xlat2;
					    u_xlat2 = u_xlat2 * _TintColor;
					    u_xlat1.xyz = vs_COLOR0.xyz;
					    u_xlat1 = u_xlat1 * u_xlat2;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendMul" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendMul" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat3.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat1 = texture(_CameraDepthTexture, u_xlat3.xy);
					    u_xlat3.x = _ZBufferParams.z * u_xlat1.x + _ZBufferParams.w;
					    u_xlat3.x = float(1.0) / u_xlat3.x;
					    u_xlat3.x = u_xlat3.x + (-vs_TEXCOORD3.z);
					    u_xlat3.x = u_xlat3.x * _InvFade;
					    u_xlat3.x = clamp(u_xlat3.x, 0.0, 1.0);
					    u_xlat1.w = u_xlat3.x * vs_COLOR0.w;
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2 = u_xlat2 + u_xlat2;
					    u_xlat2 = u_xlat2 * _TintColor;
					    u_xlat1.xyz = vs_COLOR0.xyz;
					    u_xlat1 = u_xlat1 * u_xlat2;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat3.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat1 = texture(_CameraDepthTexture, u_xlat3.xy);
					    u_xlat3.x = _ZBufferParams.z * u_xlat1.x + _ZBufferParams.w;
					    u_xlat3.x = float(1.0) / u_xlat3.x;
					    u_xlat3.x = u_xlat3.x + (-vs_TEXCOORD3.z);
					    u_xlat3.x = u_xlat3.x * _InvFade;
					    u_xlat3.x = clamp(u_xlat3.x, 0.0, 1.0);
					    u_xlat1.w = u_xlat3.x * vs_COLOR0.w;
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2 = u_xlat2 + u_xlat2;
					    u_xlat2 = u_xlat2 * _TintColor;
					    u_xlat1.xyz = vs_COLOR0.xyz;
					    u_xlat1 = u_xlat1 * u_xlat2;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendMul" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[7];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat0.w = u_xlat0.w;
					    u_xlat0.w = clamp(u_xlat0.w, 0.0, 1.0);
					    u_xlat1 = u_xlat0 + vec4(-1.0, -1.0, -1.0, -1.0);
					    SV_Target0 = u_xlat0.wwww * u_xlat1 + vec4(1.0, 1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[6];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat0.w = u_xlat0.w;
					    u_xlat0.w = clamp(u_xlat0.w, 0.0, 1.0);
					    u_xlat1 = u_xlat0 + vec4(-1.0, -1.0, -1.0, -1.0);
					    SV_Target0 = u_xlat0.wwww * u_xlat1 + vec4(1.0, 1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendMul" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[7];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat0.w = u_xlat0.w;
					    u_xlat0.w = clamp(u_xlat0.w, 0.0, 1.0);
					    u_xlat1 = u_xlat0 + vec4(-1.0, -1.0, -1.0, -1.0);
					    SV_Target0 = u_xlat0.wwww * u_xlat1 + vec4(1.0, 1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[6];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat0.w = u_xlat0.w;
					    u_xlat0.w = clamp(u_xlat0.w, 0.0, 1.0);
					    u_xlat1 = u_xlat0 + vec4(-1.0, -1.0, -1.0, -1.0);
					    SV_Target0 = u_xlat0.wwww * u_xlat1 + vec4(1.0, 1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendMul" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat3.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat1 = texture(_CameraDepthTexture, u_xlat3.xy);
					    u_xlat3.x = _ZBufferParams.z * u_xlat1.x + _ZBufferParams.w;
					    u_xlat3.x = float(1.0) / u_xlat3.x;
					    u_xlat3.x = u_xlat3.x + (-vs_TEXCOORD3.z);
					    u_xlat3.x = u_xlat3.x * _InvFade;
					    u_xlat3.x = clamp(u_xlat3.x, 0.0, 1.0);
					    u_xlat1.w = u_xlat3.x * vs_COLOR0.w;
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2 = u_xlat2 + u_xlat2;
					    u_xlat2 = u_xlat2 * _TintColor;
					    u_xlat1.xyz = vs_COLOR0.xyz;
					    u_xlat1 = u_xlat1 * u_xlat2;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat3.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat1 = texture(_CameraDepthTexture, u_xlat3.xy);
					    u_xlat3.x = _ZBufferParams.z * u_xlat1.x + _ZBufferParams.w;
					    u_xlat3.x = float(1.0) / u_xlat3.x;
					    u_xlat3.x = u_xlat3.x + (-vs_TEXCOORD3.z);
					    u_xlat3.x = u_xlat3.x * _InvFade;
					    u_xlat3.x = clamp(u_xlat3.x, 0.0, 1.0);
					    u_xlat1.w = u_xlat3.x * vs_COLOR0.w;
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2 = u_xlat2 + u_xlat2;
					    u_xlat2 = u_xlat2 * _TintColor;
					    u_xlat1.xyz = vs_COLOR0.xyz;
					    u_xlat1 = u_xlat1 * u_xlat2;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendMul" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat3.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat1 = texture(_CameraDepthTexture, u_xlat3.xy);
					    u_xlat3.x = _ZBufferParams.z * u_xlat1.x + _ZBufferParams.w;
					    u_xlat3.x = float(1.0) / u_xlat3.x;
					    u_xlat3.x = u_xlat3.x + (-vs_TEXCOORD3.z);
					    u_xlat3.x = u_xlat3.x * _InvFade;
					    u_xlat3.x = clamp(u_xlat3.x, 0.0, 1.0);
					    u_xlat1.w = u_xlat3.x * vs_COLOR0.w;
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2 = u_xlat2 + u_xlat2;
					    u_xlat2 = u_xlat2 * _TintColor;
					    u_xlat1.xyz = vs_COLOR0.xyz;
					    u_xlat1 = u_xlat1 * u_xlat2;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat3.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat1 = texture(_CameraDepthTexture, u_xlat3.xy);
					    u_xlat3.x = _ZBufferParams.z * u_xlat1.x + _ZBufferParams.w;
					    u_xlat3.x = float(1.0) / u_xlat3.x;
					    u_xlat3.x = u_xlat3.x + (-vs_TEXCOORD3.z);
					    u_xlat3.x = u_xlat3.x * _InvFade;
					    u_xlat3.x = clamp(u_xlat3.x, 0.0, 1.0);
					    u_xlat1.w = u_xlat3.x * vs_COLOR0.w;
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2 = u_xlat2 + u_xlat2;
					    u_xlat2 = u_xlat2 * _TintColor;
					    u_xlat1.xyz = vs_COLOR0.xyz;
					    u_xlat1 = u_xlat1 * u_xlat2;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendMul" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat3.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat1 = texture(_CameraDepthTexture, u_xlat3.xy);
					    u_xlat3.x = _ZBufferParams.z * u_xlat1.x + _ZBufferParams.w;
					    u_xlat3.x = float(1.0) / u_xlat3.x;
					    u_xlat3.x = u_xlat3.x + (-vs_TEXCOORD3.z);
					    u_xlat3.x = u_xlat3.x * _InvFade;
					    u_xlat3.x = clamp(u_xlat3.x, 0.0, 1.0);
					    u_xlat1.w = u_xlat3.x * vs_COLOR0.w;
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2 = u_xlat2 + u_xlat2;
					    u_xlat2 = u_xlat2 * _TintColor;
					    u_xlat1.xyz = vs_COLOR0.xyz;
					    u_xlat1 = u_xlat1 * u_xlat2;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat3.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat1 = texture(_CameraDepthTexture, u_xlat3.xy);
					    u_xlat3.x = _ZBufferParams.z * u_xlat1.x + _ZBufferParams.w;
					    u_xlat3.x = float(1.0) / u_xlat3.x;
					    u_xlat3.x = u_xlat3.x + (-vs_TEXCOORD3.z);
					    u_xlat3.x = u_xlat3.x * _InvFade;
					    u_xlat3.x = clamp(u_xlat3.x, 0.0, 1.0);
					    u_xlat1.w = u_xlat3.x * vs_COLOR0.w;
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2 = u_xlat2 + u_xlat2;
					    u_xlat2 = u_xlat2 * _TintColor;
					    u_xlat1.xyz = vs_COLOR0.xyz;
					    u_xlat1 = u_xlat1 * u_xlat2;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendMul" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat3.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat1 = texture(_CameraDepthTexture, u_xlat3.xy);
					    u_xlat3.x = _ZBufferParams.z * u_xlat1.x + _ZBufferParams.w;
					    u_xlat3.x = float(1.0) / u_xlat3.x;
					    u_xlat3.x = u_xlat3.x + (-vs_TEXCOORD3.z);
					    u_xlat3.x = u_xlat3.x * _InvFade;
					    u_xlat3.x = clamp(u_xlat3.x, 0.0, 1.0);
					    u_xlat1.w = u_xlat3.x * vs_COLOR0.w;
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2 = u_xlat2 + u_xlat2;
					    u_xlat2 = u_xlat2 * _TintColor;
					    u_xlat1.xyz = vs_COLOR0.xyz;
					    u_xlat1 = u_xlat1 * u_xlat2;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat3.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat1 = texture(_CameraDepthTexture, u_xlat3.xy);
					    u_xlat3.x = _ZBufferParams.z * u_xlat1.x + _ZBufferParams.w;
					    u_xlat3.x = float(1.0) / u_xlat3.x;
					    u_xlat3.x = u_xlat3.x + (-vs_TEXCOORD3.z);
					    u_xlat3.x = u_xlat3.x * _InvFade;
					    u_xlat3.x = clamp(u_xlat3.x, 0.0, 1.0);
					    u_xlat1.w = u_xlat3.x * vs_COLOR0.w;
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2 = u_xlat2 + u_xlat2;
					    u_xlat2 = u_xlat2 * _TintColor;
					    u_xlat1.xyz = vs_COLOR0.xyz;
					    u_xlat1 = u_xlat1 * u_xlat2;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendMul" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat3.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat1 = texture(_CameraDepthTexture, u_xlat3.xy);
					    u_xlat3.x = _ZBufferParams.z * u_xlat1.x + _ZBufferParams.w;
					    u_xlat3.x = float(1.0) / u_xlat3.x;
					    u_xlat3.x = u_xlat3.x + (-vs_TEXCOORD3.z);
					    u_xlat3.x = u_xlat3.x * _InvFade;
					    u_xlat3.x = clamp(u_xlat3.x, 0.0, 1.0);
					    u_xlat1.w = u_xlat3.x * vs_COLOR0.w;
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2 = u_xlat2 + u_xlat2;
					    u_xlat2 = u_xlat2 * _TintColor;
					    u_xlat1.xyz = vs_COLOR0.xyz;
					    u_xlat1 = u_xlat1 * u_xlat2;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat3.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat1 = texture(_CameraDepthTexture, u_xlat3.xy);
					    u_xlat3.x = _ZBufferParams.z * u_xlat1.x + _ZBufferParams.w;
					    u_xlat3.x = float(1.0) / u_xlat3.x;
					    u_xlat3.x = u_xlat3.x + (-vs_TEXCOORD3.z);
					    u_xlat3.x = u_xlat3.x * _InvFade;
					    u_xlat3.x = clamp(u_xlat3.x, 0.0, 1.0);
					    u_xlat1.w = u_xlat3.x * vs_COLOR0.w;
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2 = u_xlat2 + u_xlat2;
					    u_xlat2 = u_xlat2 * _TintColor;
					    u_xlat1.xyz = vs_COLOR0.xyz;
					    u_xlat1 = u_xlat1 * u_xlat2;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendMul" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat3.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat1 = texture(_CameraDepthTexture, u_xlat3.xy);
					    u_xlat3.x = _ZBufferParams.z * u_xlat1.x + _ZBufferParams.w;
					    u_xlat3.x = float(1.0) / u_xlat3.x;
					    u_xlat3.x = u_xlat3.x + (-vs_TEXCOORD3.z);
					    u_xlat3.x = u_xlat3.x * _InvFade;
					    u_xlat3.x = clamp(u_xlat3.x, 0.0, 1.0);
					    u_xlat1.w = u_xlat3.x * vs_COLOR0.w;
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2 = u_xlat2 + u_xlat2;
					    u_xlat2 = u_xlat2 * _TintColor;
					    u_xlat1.xyz = vs_COLOR0.xyz;
					    u_xlat1 = u_xlat1 * u_xlat2;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat3.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat1 = texture(_CameraDepthTexture, u_xlat3.xy);
					    u_xlat3.x = _ZBufferParams.z * u_xlat1.x + _ZBufferParams.w;
					    u_xlat3.x = float(1.0) / u_xlat3.x;
					    u_xlat3.x = u_xlat3.x + (-vs_TEXCOORD3.z);
					    u_xlat3.x = u_xlat3.x * _InvFade;
					    u_xlat3.x = clamp(u_xlat3.x, 0.0, 1.0);
					    u_xlat1.w = u_xlat3.x * vs_COLOR0.w;
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2 = u_xlat2 + u_xlat2;
					    u_xlat2 = u_xlat2 * _TintColor;
					    u_xlat1.xyz = vs_COLOR0.xyz;
					    u_xlat1 = u_xlat1 * u_xlat2;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendMul" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat6;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat0 = u_xlat0 * vs_COLOR0;
					    u_xlat6 = u_xlat0.w;
					    u_xlat6 = clamp(u_xlat6, 0.0, 1.0);
					    u_xlat0.w = u_xlat6 * vs_TEXCOORD4;
					    u_xlat1 = u_xlat0 + vec4(-1.0, -1.0, -1.0, -1.0);
					    SV_Target0 = u_xlat0.wwww * u_xlat1 + vec4(1.0, 1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat6;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat0 = u_xlat0 * vs_COLOR0;
					    u_xlat6 = u_xlat0.w;
					    u_xlat6 = clamp(u_xlat6, 0.0, 1.0);
					    u_xlat0.w = u_xlat6 * vs_TEXCOORD4;
					    u_xlat1 = u_xlat0 + vec4(-1.0, -1.0, -1.0, -1.0);
					    SV_Target0 = u_xlat0.wwww * u_xlat1 + vec4(1.0, 1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendMul" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[7];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat6;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat6 = u_xlat0.w;
					    u_xlat6 = clamp(u_xlat6, 0.0, 1.0);
					    u_xlat0.w = u_xlat6 * vs_TEXCOORD4;
					    u_xlat1 = u_xlat0 + vec4(-1.0, -1.0, -1.0, -1.0);
					    SV_Target0 = u_xlat0.wwww * u_xlat1 + vec4(1.0, 1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[6];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat6;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat6 = u_xlat0.w;
					    u_xlat6 = clamp(u_xlat6, 0.0, 1.0);
					    u_xlat0.w = u_xlat6 * vs_TEXCOORD4;
					    u_xlat1 = u_xlat0 + vec4(-1.0, -1.0, -1.0, -1.0);
					    SV_Target0 = u_xlat0.wwww * u_xlat1 + vec4(1.0, 1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendMul" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendMul" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat6;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat6 = u_xlat0.w;
					    u_xlat6 = clamp(u_xlat6, 0.0, 1.0);
					    u_xlat0.w = u_xlat6 * vs_TEXCOORD4;
					    u_xlat1 = u_xlat0 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat0.xyz = u_xlat0.www * u_xlat1.xyz;
					    SV_Target0.w = u_xlat0.w * u_xlat1.w + 1.0;
					    u_xlat6 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat6 = (-u_xlat6) + 1.0;
					    u_xlat6 = u_xlat6 * _ProjectionParams.z;
					    u_xlat6 = max(u_xlat6, 0.0);
					    u_xlat6 = u_xlat6 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat6 = clamp(u_xlat6, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat6) * u_xlat0.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat6;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat6 = u_xlat0.w;
					    u_xlat6 = clamp(u_xlat6, 0.0, 1.0);
					    u_xlat0.w = u_xlat6 * vs_TEXCOORD4;
					    u_xlat1 = u_xlat0 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat0.xyz = u_xlat0.www * u_xlat1.xyz;
					    SV_Target0.w = u_xlat0.w * u_xlat1.w + 1.0;
					    u_xlat6 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat6 = (-u_xlat6) + 1.0;
					    u_xlat6 = u_xlat6 * _ProjectionParams.z;
					    u_xlat6 = max(u_xlat6, 0.0);
					    u_xlat6 = u_xlat6 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat6 = clamp(u_xlat6, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat6) * u_xlat0.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendMul" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendMul" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat3.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat1 = texture(_CameraDepthTexture, u_xlat3.xy);
					    u_xlat3.x = _ZBufferParams.z * u_xlat1.x + _ZBufferParams.w;
					    u_xlat3.x = float(1.0) / u_xlat3.x;
					    u_xlat3.x = u_xlat3.x + (-vs_TEXCOORD3.z);
					    u_xlat3.x = u_xlat3.x * _InvFade;
					    u_xlat3.x = clamp(u_xlat3.x, 0.0, 1.0);
					    u_xlat1.w = u_xlat3.x * vs_COLOR0.w;
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2 = u_xlat2 + u_xlat2;
					    u_xlat2 = u_xlat2 * _TintColor;
					    u_xlat1.xyz = vs_COLOR0.xyz;
					    u_xlat1 = u_xlat1 * u_xlat2;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat3.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat1 = texture(_CameraDepthTexture, u_xlat3.xy);
					    u_xlat3.x = _ZBufferParams.z * u_xlat1.x + _ZBufferParams.w;
					    u_xlat3.x = float(1.0) / u_xlat3.x;
					    u_xlat3.x = u_xlat3.x + (-vs_TEXCOORD3.z);
					    u_xlat3.x = u_xlat3.x * _InvFade;
					    u_xlat3.x = clamp(u_xlat3.x, 0.0, 1.0);
					    u_xlat1.w = u_xlat3.x * vs_COLOR0.w;
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2 = u_xlat2 + u_xlat2;
					    u_xlat2 = u_xlat2 * _TintColor;
					    u_xlat1.xyz = vs_COLOR0.xyz;
					    u_xlat1 = u_xlat1 * u_xlat2;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendMul" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendMul" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat3.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat1 = texture(_CameraDepthTexture, u_xlat3.xy);
					    u_xlat3.x = _ZBufferParams.z * u_xlat1.x + _ZBufferParams.w;
					    u_xlat3.x = float(1.0) / u_xlat3.x;
					    u_xlat3.x = u_xlat3.x + (-vs_TEXCOORD3.z);
					    u_xlat3.x = u_xlat3.x * _InvFade;
					    u_xlat3.x = clamp(u_xlat3.x, 0.0, 1.0);
					    u_xlat1.w = u_xlat3.x * vs_COLOR0.w;
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2 = u_xlat2 + u_xlat2;
					    u_xlat2 = u_xlat2 * _TintColor;
					    u_xlat1.xyz = vs_COLOR0.xyz;
					    u_xlat1 = u_xlat1 * u_xlat2;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat3.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat1 = texture(_CameraDepthTexture, u_xlat3.xy);
					    u_xlat3.x = _ZBufferParams.z * u_xlat1.x + _ZBufferParams.w;
					    u_xlat3.x = float(1.0) / u_xlat3.x;
					    u_xlat3.x = u_xlat3.x + (-vs_TEXCOORD3.z);
					    u_xlat3.x = u_xlat3.x * _InvFade;
					    u_xlat3.x = clamp(u_xlat3.x, 0.0, 1.0);
					    u_xlat1.w = u_xlat3.x * vs_COLOR0.w;
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2 = u_xlat2 + u_xlat2;
					    u_xlat2 = u_xlat2 * _TintColor;
					    u_xlat1.xyz = vs_COLOR0.xyz;
					    u_xlat1 = u_xlat1 * u_xlat2;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendMul" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[7];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat6;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat6 = u_xlat0.w;
					    u_xlat6 = clamp(u_xlat6, 0.0, 1.0);
					    u_xlat0.w = u_xlat6 * vs_TEXCOORD4;
					    u_xlat1 = u_xlat0 + vec4(-1.0, -1.0, -1.0, -1.0);
					    SV_Target0 = u_xlat0.wwww * u_xlat1 + vec4(1.0, 1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[6];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat6;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat6 = u_xlat0.w;
					    u_xlat6 = clamp(u_xlat6, 0.0, 1.0);
					    u_xlat0.w = u_xlat6 * vs_TEXCOORD4;
					    u_xlat1 = u_xlat0 + vec4(-1.0, -1.0, -1.0, -1.0);
					    SV_Target0 = u_xlat0.wwww * u_xlat1 + vec4(1.0, 1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendMul" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[7];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat6;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat6 = u_xlat0.w;
					    u_xlat6 = clamp(u_xlat6, 0.0, 1.0);
					    u_xlat0.w = u_xlat6 * vs_TEXCOORD4;
					    u_xlat1 = u_xlat0 + vec4(-1.0, -1.0, -1.0, -1.0);
					    SV_Target0 = u_xlat0.wwww * u_xlat1 + vec4(1.0, 1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[6];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat6;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat6 = u_xlat0.w;
					    u_xlat6 = clamp(u_xlat6, 0.0, 1.0);
					    u_xlat0.w = u_xlat6 * vs_TEXCOORD4;
					    u_xlat1 = u_xlat0 + vec4(-1.0, -1.0, -1.0, -1.0);
					    SV_Target0 = u_xlat0.wwww * u_xlat1 + vec4(1.0, 1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendMul" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat6;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat6 = u_xlat0.w;
					    u_xlat6 = clamp(u_xlat6, 0.0, 1.0);
					    u_xlat0.w = u_xlat6 * vs_TEXCOORD4;
					    u_xlat1 = u_xlat0 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat0.xyz = u_xlat0.www * u_xlat1.xyz;
					    SV_Target0.w = u_xlat0.w * u_xlat1.w + 1.0;
					    u_xlat6 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat6 = (-u_xlat6) + 1.0;
					    u_xlat6 = u_xlat6 * _ProjectionParams.z;
					    u_xlat6 = max(u_xlat6, 0.0);
					    u_xlat6 = u_xlat6 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat6 = clamp(u_xlat6, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat6) * u_xlat0.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat6;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat6 = u_xlat0.w;
					    u_xlat6 = clamp(u_xlat6, 0.0, 1.0);
					    u_xlat0.w = u_xlat6 * vs_TEXCOORD4;
					    u_xlat1 = u_xlat0 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat0.xyz = u_xlat0.www * u_xlat1.xyz;
					    SV_Target0.w = u_xlat0.w * u_xlat1.w + 1.0;
					    u_xlat6 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat6 = (-u_xlat6) + 1.0;
					    u_xlat6 = u_xlat6 * _ProjectionParams.z;
					    u_xlat6 = max(u_xlat6, 0.0);
					    u_xlat6 = u_xlat6 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat6 = clamp(u_xlat6, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat6) * u_xlat0.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendMul" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat6;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat6 = u_xlat0.w;
					    u_xlat6 = clamp(u_xlat6, 0.0, 1.0);
					    u_xlat0.w = u_xlat6 * vs_TEXCOORD4;
					    u_xlat1 = u_xlat0 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat0.xyz = u_xlat0.www * u_xlat1.xyz;
					    SV_Target0.w = u_xlat0.w * u_xlat1.w + 1.0;
					    u_xlat6 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat6 = (-u_xlat6) + 1.0;
					    u_xlat6 = u_xlat6 * _ProjectionParams.z;
					    u_xlat6 = max(u_xlat6, 0.0);
					    u_xlat6 = u_xlat6 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat6 = clamp(u_xlat6, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat6) * u_xlat0.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat6;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat6 = u_xlat0.w;
					    u_xlat6 = clamp(u_xlat6, 0.0, 1.0);
					    u_xlat0.w = u_xlat6 * vs_TEXCOORD4;
					    u_xlat1 = u_xlat0 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat0.xyz = u_xlat0.www * u_xlat1.xyz;
					    SV_Target0.w = u_xlat0.w * u_xlat1.w + 1.0;
					    u_xlat6 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat6 = (-u_xlat6) + 1.0;
					    u_xlat6 = u_xlat6 * _ProjectionParams.z;
					    u_xlat6 = max(u_xlat6, 0.0);
					    u_xlat6 = u_xlat6 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat6 = clamp(u_xlat6, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat6) * u_xlat0.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendMul" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat3.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat1 = texture(_CameraDepthTexture, u_xlat3.xy);
					    u_xlat3.x = _ZBufferParams.z * u_xlat1.x + _ZBufferParams.w;
					    u_xlat3.x = float(1.0) / u_xlat3.x;
					    u_xlat3.x = u_xlat3.x + (-vs_TEXCOORD3.z);
					    u_xlat3.x = u_xlat3.x * _InvFade;
					    u_xlat3.x = clamp(u_xlat3.x, 0.0, 1.0);
					    u_xlat1.w = u_xlat3.x * vs_COLOR0.w;
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2 = u_xlat2 + u_xlat2;
					    u_xlat2 = u_xlat2 * _TintColor;
					    u_xlat1.xyz = vs_COLOR0.xyz;
					    u_xlat1 = u_xlat1 * u_xlat2;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat3.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat1 = texture(_CameraDepthTexture, u_xlat3.xy);
					    u_xlat3.x = _ZBufferParams.z * u_xlat1.x + _ZBufferParams.w;
					    u_xlat3.x = float(1.0) / u_xlat3.x;
					    u_xlat3.x = u_xlat3.x + (-vs_TEXCOORD3.z);
					    u_xlat3.x = u_xlat3.x * _InvFade;
					    u_xlat3.x = clamp(u_xlat3.x, 0.0, 1.0);
					    u_xlat1.w = u_xlat3.x * vs_COLOR0.w;
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2 = u_xlat2 + u_xlat2;
					    u_xlat2 = u_xlat2 * _TintColor;
					    u_xlat1.xyz = vs_COLOR0.xyz;
					    u_xlat1 = u_xlat1 * u_xlat2;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendMul" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat3.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat1 = texture(_CameraDepthTexture, u_xlat3.xy);
					    u_xlat3.x = _ZBufferParams.z * u_xlat1.x + _ZBufferParams.w;
					    u_xlat3.x = float(1.0) / u_xlat3.x;
					    u_xlat3.x = u_xlat3.x + (-vs_TEXCOORD3.z);
					    u_xlat3.x = u_xlat3.x * _InvFade;
					    u_xlat3.x = clamp(u_xlat3.x, 0.0, 1.0);
					    u_xlat1.w = u_xlat3.x * vs_COLOR0.w;
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2 = u_xlat2 + u_xlat2;
					    u_xlat2 = u_xlat2 * _TintColor;
					    u_xlat1.xyz = vs_COLOR0.xyz;
					    u_xlat1 = u_xlat1 * u_xlat2;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat3.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat1 = texture(_CameraDepthTexture, u_xlat3.xy);
					    u_xlat3.x = _ZBufferParams.z * u_xlat1.x + _ZBufferParams.w;
					    u_xlat3.x = float(1.0) / u_xlat3.x;
					    u_xlat3.x = u_xlat3.x + (-vs_TEXCOORD3.z);
					    u_xlat3.x = u_xlat3.x * _InvFade;
					    u_xlat3.x = clamp(u_xlat3.x, 0.0, 1.0);
					    u_xlat1.w = u_xlat3.x * vs_COLOR0.w;
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2 = u_xlat2 + u_xlat2;
					    u_xlat2 = u_xlat2 * _TintColor;
					    u_xlat1.xyz = vs_COLOR0.xyz;
					    u_xlat1 = u_xlat1 * u_xlat2;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendMul" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat3.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat1 = texture(_CameraDepthTexture, u_xlat3.xy);
					    u_xlat3.x = _ZBufferParams.z * u_xlat1.x + _ZBufferParams.w;
					    u_xlat3.x = float(1.0) / u_xlat3.x;
					    u_xlat3.x = u_xlat3.x + (-vs_TEXCOORD3.z);
					    u_xlat3.x = u_xlat3.x * _InvFade;
					    u_xlat3.x = clamp(u_xlat3.x, 0.0, 1.0);
					    u_xlat1.w = u_xlat3.x * vs_COLOR0.w;
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2 = u_xlat2 + u_xlat2;
					    u_xlat2 = u_xlat2 * _TintColor;
					    u_xlat1.xyz = vs_COLOR0.xyz;
					    u_xlat1 = u_xlat1 * u_xlat2;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat3.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat1 = texture(_CameraDepthTexture, u_xlat3.xy);
					    u_xlat3.x = _ZBufferParams.z * u_xlat1.x + _ZBufferParams.w;
					    u_xlat3.x = float(1.0) / u_xlat3.x;
					    u_xlat3.x = u_xlat3.x + (-vs_TEXCOORD3.z);
					    u_xlat3.x = u_xlat3.x * _InvFade;
					    u_xlat3.x = clamp(u_xlat3.x, 0.0, 1.0);
					    u_xlat1.w = u_xlat3.x * vs_COLOR0.w;
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2 = u_xlat2 + u_xlat2;
					    u_xlat2 = u_xlat2 * _TintColor;
					    u_xlat1.xyz = vs_COLOR0.xyz;
					    u_xlat1 = u_xlat1 * u_xlat2;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendMul" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat3.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat1 = texture(_CameraDepthTexture, u_xlat3.xy);
					    u_xlat3.x = _ZBufferParams.z * u_xlat1.x + _ZBufferParams.w;
					    u_xlat3.x = float(1.0) / u_xlat3.x;
					    u_xlat3.x = u_xlat3.x + (-vs_TEXCOORD3.z);
					    u_xlat3.x = u_xlat3.x * _InvFade;
					    u_xlat3.x = clamp(u_xlat3.x, 0.0, 1.0);
					    u_xlat1.w = u_xlat3.x * vs_COLOR0.w;
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2 = u_xlat2 + u_xlat2;
					    u_xlat2 = u_xlat2 * _TintColor;
					    u_xlat1.xyz = vs_COLOR0.xyz;
					    u_xlat1 = u_xlat1 * u_xlat2;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat3.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat1 = texture(_CameraDepthTexture, u_xlat3.xy);
					    u_xlat3.x = _ZBufferParams.z * u_xlat1.x + _ZBufferParams.w;
					    u_xlat3.x = float(1.0) / u_xlat3.x;
					    u_xlat3.x = u_xlat3.x + (-vs_TEXCOORD3.z);
					    u_xlat3.x = u_xlat3.x * _InvFade;
					    u_xlat3.x = clamp(u_xlat3.x, 0.0, 1.0);
					    u_xlat1.w = u_xlat3.x * vs_COLOR0.w;
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2 = u_xlat2 + u_xlat2;
					    u_xlat2 = u_xlat2 * _TintColor;
					    u_xlat1.xyz = vs_COLOR0.xyz;
					    u_xlat1 = u_xlat1 * u_xlat2;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendMul" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					bool u_xlatb1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1.x = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat0.w = u_xlat0.w * u_xlat1.x;
					    u_xlat0 = u_xlat0 * vs_COLOR0;
					    u_xlat0.w = u_xlat0.w;
					    u_xlat0.w = clamp(u_xlat0.w, 0.0, 1.0);
					    u_xlat1 = u_xlat0 + vec4(-1.0, -1.0, -1.0, -1.0);
					    SV_Target0 = u_xlat0.wwww * u_xlat1 + vec4(1.0, 1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					bool u_xlatb1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1.x = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat0.w = u_xlat0.w * u_xlat1.x;
					    u_xlat0 = u_xlat0 * vs_COLOR0;
					    u_xlat0.w = u_xlat0.w;
					    u_xlat0.w = clamp(u_xlat0.w, 0.0, 1.0);
					    u_xlat1 = u_xlat0 + vec4(-1.0, -1.0, -1.0, -1.0);
					    SV_Target0 = u_xlat0.wwww * u_xlat1 + vec4(1.0, 1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendMul" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[7];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					bool u_xlatb2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2 = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat0.w = u_xlat0.w;
					    u_xlat0.w = clamp(u_xlat0.w, 0.0, 1.0);
					    u_xlat1 = u_xlat0 + vec4(-1.0, -1.0, -1.0, -1.0);
					    SV_Target0 = u_xlat0.wwww * u_xlat1 + vec4(1.0, 1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[6];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					bool u_xlatb2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2 = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat0.w = u_xlat0.w;
					    u_xlat0.w = clamp(u_xlat0.w, 0.0, 1.0);
					    u_xlat1 = u_xlat0 + vec4(-1.0, -1.0, -1.0, -1.0);
					    SV_Target0 = u_xlat0.wwww * u_xlat1 + vec4(1.0, 1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendMul" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3.x;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3.x;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendMul" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					bool u_xlatb2;
					float u_xlat9;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2 = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat0.w = u_xlat0.w;
					    u_xlat0.w = clamp(u_xlat0.w, 0.0, 1.0);
					    u_xlat1 = u_xlat0 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat0.xyz = u_xlat0.www * u_xlat1.xyz;
					    SV_Target0.w = u_xlat0.w * u_xlat1.w + 1.0;
					    u_xlat9 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat9 = (-u_xlat9) + 1.0;
					    u_xlat9 = u_xlat9 * _ProjectionParams.z;
					    u_xlat9 = max(u_xlat9, 0.0);
					    u_xlat9 = u_xlat9 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat9 = clamp(u_xlat9, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat9) * u_xlat0.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					bool u_xlatb2;
					float u_xlat9;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2 = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat0.w = u_xlat0.w;
					    u_xlat0.w = clamp(u_xlat0.w, 0.0, 1.0);
					    u_xlat1 = u_xlat0 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat0.xyz = u_xlat0.www * u_xlat1.xyz;
					    SV_Target0.w = u_xlat0.w * u_xlat1.w + 1.0;
					    u_xlat9 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat9 = (-u_xlat9) + 1.0;
					    u_xlat9 = u_xlat9 * _ProjectionParams.z;
					    u_xlat9 = max(u_xlat9, 0.0);
					    u_xlat9 = u_xlat9 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat9 = clamp(u_xlat9, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat9) * u_xlat0.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendMul" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3.x;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3.x;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendMul" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat3.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat1 = texture(_CameraDepthTexture, u_xlat3.xy);
					    u_xlat3.x = _ZBufferParams.z * u_xlat1.x + _ZBufferParams.w;
					    u_xlat3.x = float(1.0) / u_xlat3.x;
					    u_xlat3.x = u_xlat3.x + (-vs_TEXCOORD3.z);
					    u_xlat3.x = u_xlat3.x * _InvFade;
					    u_xlat3.x = clamp(u_xlat3.x, 0.0, 1.0);
					    u_xlat1.w = u_xlat3.x * vs_COLOR0.w;
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb3 = u_xlat2.w>=_Cutout;
					    u_xlat2 = u_xlat2 + u_xlat2;
					    u_xlat2 = u_xlat2 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat2.w = u_xlat2.w * u_xlat3.x;
					    u_xlat1.xyz = vs_COLOR0.xyz;
					    u_xlat1 = u_xlat1 * u_xlat2;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat3.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat1 = texture(_CameraDepthTexture, u_xlat3.xy);
					    u_xlat3.x = _ZBufferParams.z * u_xlat1.x + _ZBufferParams.w;
					    u_xlat3.x = float(1.0) / u_xlat3.x;
					    u_xlat3.x = u_xlat3.x + (-vs_TEXCOORD3.z);
					    u_xlat3.x = u_xlat3.x * _InvFade;
					    u_xlat3.x = clamp(u_xlat3.x, 0.0, 1.0);
					    u_xlat1.w = u_xlat3.x * vs_COLOR0.w;
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb3 = u_xlat2.w>=_Cutout;
					    u_xlat2 = u_xlat2 + u_xlat2;
					    u_xlat2 = u_xlat2 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat2.w = u_xlat2.w * u_xlat3.x;
					    u_xlat1.xyz = vs_COLOR0.xyz;
					    u_xlat1 = u_xlat1 * u_xlat2;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendMul" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3.x;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3.x;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendMul" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat3.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat1 = texture(_CameraDepthTexture, u_xlat3.xy);
					    u_xlat3.x = _ZBufferParams.z * u_xlat1.x + _ZBufferParams.w;
					    u_xlat3.x = float(1.0) / u_xlat3.x;
					    u_xlat3.x = u_xlat3.x + (-vs_TEXCOORD3.z);
					    u_xlat3.x = u_xlat3.x * _InvFade;
					    u_xlat3.x = clamp(u_xlat3.x, 0.0, 1.0);
					    u_xlat1.w = u_xlat3.x * vs_COLOR0.w;
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb3 = u_xlat2.w>=_Cutout;
					    u_xlat2 = u_xlat2 + u_xlat2;
					    u_xlat2 = u_xlat2 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat2.w = u_xlat2.w * u_xlat3.x;
					    u_xlat1.xyz = vs_COLOR0.xyz;
					    u_xlat1 = u_xlat1 * u_xlat2;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat3.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat1 = texture(_CameraDepthTexture, u_xlat3.xy);
					    u_xlat3.x = _ZBufferParams.z * u_xlat1.x + _ZBufferParams.w;
					    u_xlat3.x = float(1.0) / u_xlat3.x;
					    u_xlat3.x = u_xlat3.x + (-vs_TEXCOORD3.z);
					    u_xlat3.x = u_xlat3.x * _InvFade;
					    u_xlat3.x = clamp(u_xlat3.x, 0.0, 1.0);
					    u_xlat1.w = u_xlat3.x * vs_COLOR0.w;
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb3 = u_xlat2.w>=_Cutout;
					    u_xlat2 = u_xlat2 + u_xlat2;
					    u_xlat2 = u_xlat2 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat2.w = u_xlat2.w * u_xlat3.x;
					    u_xlat1.xyz = vs_COLOR0.xyz;
					    u_xlat1 = u_xlat1 * u_xlat2;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendMul" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[7];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					bool u_xlatb2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2 = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat0.w = u_xlat0.w;
					    u_xlat0.w = clamp(u_xlat0.w, 0.0, 1.0);
					    u_xlat1 = u_xlat0 + vec4(-1.0, -1.0, -1.0, -1.0);
					    SV_Target0 = u_xlat0.wwww * u_xlat1 + vec4(1.0, 1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[6];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					bool u_xlatb2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2 = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat0.w = u_xlat0.w;
					    u_xlat0.w = clamp(u_xlat0.w, 0.0, 1.0);
					    u_xlat1 = u_xlat0 + vec4(-1.0, -1.0, -1.0, -1.0);
					    SV_Target0 = u_xlat0.wwww * u_xlat1 + vec4(1.0, 1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendMul" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[7];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					bool u_xlatb2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2 = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat0.w = u_xlat0.w;
					    u_xlat0.w = clamp(u_xlat0.w, 0.0, 1.0);
					    u_xlat1 = u_xlat0 + vec4(-1.0, -1.0, -1.0, -1.0);
					    SV_Target0 = u_xlat0.wwww * u_xlat1 + vec4(1.0, 1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[6];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					bool u_xlatb2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2 = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat0.w = u_xlat0.w;
					    u_xlat0.w = clamp(u_xlat0.w, 0.0, 1.0);
					    u_xlat1 = u_xlat0 + vec4(-1.0, -1.0, -1.0, -1.0);
					    SV_Target0 = u_xlat0.wwww * u_xlat1 + vec4(1.0, 1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendMul" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					bool u_xlatb2;
					float u_xlat9;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2 = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat0.w = u_xlat0.w;
					    u_xlat0.w = clamp(u_xlat0.w, 0.0, 1.0);
					    u_xlat1 = u_xlat0 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat0.xyz = u_xlat0.www * u_xlat1.xyz;
					    SV_Target0.w = u_xlat0.w * u_xlat1.w + 1.0;
					    u_xlat9 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat9 = (-u_xlat9) + 1.0;
					    u_xlat9 = u_xlat9 * _ProjectionParams.z;
					    u_xlat9 = max(u_xlat9, 0.0);
					    u_xlat9 = u_xlat9 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat9 = clamp(u_xlat9, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat9) * u_xlat0.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					bool u_xlatb2;
					float u_xlat9;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2 = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat0.w = u_xlat0.w;
					    u_xlat0.w = clamp(u_xlat0.w, 0.0, 1.0);
					    u_xlat1 = u_xlat0 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat0.xyz = u_xlat0.www * u_xlat1.xyz;
					    SV_Target0.w = u_xlat0.w * u_xlat1.w + 1.0;
					    u_xlat9 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat9 = (-u_xlat9) + 1.0;
					    u_xlat9 = u_xlat9 * _ProjectionParams.z;
					    u_xlat9 = max(u_xlat9, 0.0);
					    u_xlat9 = u_xlat9 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat9 = clamp(u_xlat9, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat9) * u_xlat0.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendMul" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					bool u_xlatb2;
					float u_xlat9;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2 = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat0.w = u_xlat0.w;
					    u_xlat0.w = clamp(u_xlat0.w, 0.0, 1.0);
					    u_xlat1 = u_xlat0 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat0.xyz = u_xlat0.www * u_xlat1.xyz;
					    SV_Target0.w = u_xlat0.w * u_xlat1.w + 1.0;
					    u_xlat9 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat9 = (-u_xlat9) + 1.0;
					    u_xlat9 = u_xlat9 * _ProjectionParams.z;
					    u_xlat9 = max(u_xlat9, 0.0);
					    u_xlat9 = u_xlat9 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat9 = clamp(u_xlat9, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat9) * u_xlat0.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					bool u_xlatb2;
					float u_xlat9;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2 = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat0.w = u_xlat0.w;
					    u_xlat0.w = clamp(u_xlat0.w, 0.0, 1.0);
					    u_xlat1 = u_xlat0 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat0.xyz = u_xlat0.www * u_xlat1.xyz;
					    SV_Target0.w = u_xlat0.w * u_xlat1.w + 1.0;
					    u_xlat9 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat9 = (-u_xlat9) + 1.0;
					    u_xlat9 = u_xlat9 * _ProjectionParams.z;
					    u_xlat9 = max(u_xlat9, 0.0);
					    u_xlat9 = u_xlat9 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat9 = clamp(u_xlat9, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat9) * u_xlat0.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendMul" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat3.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat1 = texture(_CameraDepthTexture, u_xlat3.xy);
					    u_xlat3.x = _ZBufferParams.z * u_xlat1.x + _ZBufferParams.w;
					    u_xlat3.x = float(1.0) / u_xlat3.x;
					    u_xlat3.x = u_xlat3.x + (-vs_TEXCOORD3.z);
					    u_xlat3.x = u_xlat3.x * _InvFade;
					    u_xlat3.x = clamp(u_xlat3.x, 0.0, 1.0);
					    u_xlat1.w = u_xlat3.x * vs_COLOR0.w;
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb3 = u_xlat2.w>=_Cutout;
					    u_xlat2 = u_xlat2 + u_xlat2;
					    u_xlat2 = u_xlat2 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat2.w = u_xlat2.w * u_xlat3.x;
					    u_xlat1.xyz = vs_COLOR0.xyz;
					    u_xlat1 = u_xlat1 * u_xlat2;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat3.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat1 = texture(_CameraDepthTexture, u_xlat3.xy);
					    u_xlat3.x = _ZBufferParams.z * u_xlat1.x + _ZBufferParams.w;
					    u_xlat3.x = float(1.0) / u_xlat3.x;
					    u_xlat3.x = u_xlat3.x + (-vs_TEXCOORD3.z);
					    u_xlat3.x = u_xlat3.x * _InvFade;
					    u_xlat3.x = clamp(u_xlat3.x, 0.0, 1.0);
					    u_xlat1.w = u_xlat3.x * vs_COLOR0.w;
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb3 = u_xlat2.w>=_Cutout;
					    u_xlat2 = u_xlat2 + u_xlat2;
					    u_xlat2 = u_xlat2 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat2.w = u_xlat2.w * u_xlat3.x;
					    u_xlat1.xyz = vs_COLOR0.xyz;
					    u_xlat1 = u_xlat1 * u_xlat2;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendMul" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat3.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat1 = texture(_CameraDepthTexture, u_xlat3.xy);
					    u_xlat3.x = _ZBufferParams.z * u_xlat1.x + _ZBufferParams.w;
					    u_xlat3.x = float(1.0) / u_xlat3.x;
					    u_xlat3.x = u_xlat3.x + (-vs_TEXCOORD3.z);
					    u_xlat3.x = u_xlat3.x * _InvFade;
					    u_xlat3.x = clamp(u_xlat3.x, 0.0, 1.0);
					    u_xlat1.w = u_xlat3.x * vs_COLOR0.w;
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb3 = u_xlat2.w>=_Cutout;
					    u_xlat2 = u_xlat2 + u_xlat2;
					    u_xlat2 = u_xlat2 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat2.w = u_xlat2.w * u_xlat3.x;
					    u_xlat1.xyz = vs_COLOR0.xyz;
					    u_xlat1 = u_xlat1 * u_xlat2;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat3.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat1 = texture(_CameraDepthTexture, u_xlat3.xy);
					    u_xlat3.x = _ZBufferParams.z * u_xlat1.x + _ZBufferParams.w;
					    u_xlat3.x = float(1.0) / u_xlat3.x;
					    u_xlat3.x = u_xlat3.x + (-vs_TEXCOORD3.z);
					    u_xlat3.x = u_xlat3.x * _InvFade;
					    u_xlat3.x = clamp(u_xlat3.x, 0.0, 1.0);
					    u_xlat1.w = u_xlat3.x * vs_COLOR0.w;
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb3 = u_xlat2.w>=_Cutout;
					    u_xlat2 = u_xlat2 + u_xlat2;
					    u_xlat2 = u_xlat2 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat2.w = u_xlat2.w * u_xlat3.x;
					    u_xlat1.xyz = vs_COLOR0.xyz;
					    u_xlat1 = u_xlat1 * u_xlat2;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendMul" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat3.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat1 = texture(_CameraDepthTexture, u_xlat3.xy);
					    u_xlat3.x = _ZBufferParams.z * u_xlat1.x + _ZBufferParams.w;
					    u_xlat3.x = float(1.0) / u_xlat3.x;
					    u_xlat3.x = u_xlat3.x + (-vs_TEXCOORD3.z);
					    u_xlat3.x = u_xlat3.x * _InvFade;
					    u_xlat3.x = clamp(u_xlat3.x, 0.0, 1.0);
					    u_xlat1.w = u_xlat3.x * vs_COLOR0.w;
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb3 = u_xlat2.w>=_Cutout;
					    u_xlat2 = u_xlat2 + u_xlat2;
					    u_xlat2 = u_xlat2 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat2.w = u_xlat2.w * u_xlat3.x;
					    u_xlat1.xyz = vs_COLOR0.xyz;
					    u_xlat1 = u_xlat1 * u_xlat2;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat3.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat1 = texture(_CameraDepthTexture, u_xlat3.xy);
					    u_xlat3.x = _ZBufferParams.z * u_xlat1.x + _ZBufferParams.w;
					    u_xlat3.x = float(1.0) / u_xlat3.x;
					    u_xlat3.x = u_xlat3.x + (-vs_TEXCOORD3.z);
					    u_xlat3.x = u_xlat3.x * _InvFade;
					    u_xlat3.x = clamp(u_xlat3.x, 0.0, 1.0);
					    u_xlat1.w = u_xlat3.x * vs_COLOR0.w;
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb3 = u_xlat2.w>=_Cutout;
					    u_xlat2 = u_xlat2 + u_xlat2;
					    u_xlat2 = u_xlat2 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat2.w = u_xlat2.w * u_xlat3.x;
					    u_xlat1.xyz = vs_COLOR0.xyz;
					    u_xlat1 = u_xlat1 * u_xlat2;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendMul" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat3.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat1 = texture(_CameraDepthTexture, u_xlat3.xy);
					    u_xlat3.x = _ZBufferParams.z * u_xlat1.x + _ZBufferParams.w;
					    u_xlat3.x = float(1.0) / u_xlat3.x;
					    u_xlat3.x = u_xlat3.x + (-vs_TEXCOORD3.z);
					    u_xlat3.x = u_xlat3.x * _InvFade;
					    u_xlat3.x = clamp(u_xlat3.x, 0.0, 1.0);
					    u_xlat1.w = u_xlat3.x * vs_COLOR0.w;
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb3 = u_xlat2.w>=_Cutout;
					    u_xlat2 = u_xlat2 + u_xlat2;
					    u_xlat2 = u_xlat2 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat2.w = u_xlat2.w * u_xlat3.x;
					    u_xlat1.xyz = vs_COLOR0.xyz;
					    u_xlat1 = u_xlat1 * u_xlat2;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat3.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat1 = texture(_CameraDepthTexture, u_xlat3.xy);
					    u_xlat3.x = _ZBufferParams.z * u_xlat1.x + _ZBufferParams.w;
					    u_xlat3.x = float(1.0) / u_xlat3.x;
					    u_xlat3.x = u_xlat3.x + (-vs_TEXCOORD3.z);
					    u_xlat3.x = u_xlat3.x * _InvFade;
					    u_xlat3.x = clamp(u_xlat3.x, 0.0, 1.0);
					    u_xlat1.w = u_xlat3.x * vs_COLOR0.w;
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb3 = u_xlat2.w>=_Cutout;
					    u_xlat2 = u_xlat2 + u_xlat2;
					    u_xlat2 = u_xlat2 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat2.w = u_xlat2.w * u_xlat3.x;
					    u_xlat1.xyz = vs_COLOR0.xyz;
					    u_xlat1 = u_xlat1 * u_xlat2;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendMul" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					bool u_xlatb1;
					float u_xlat6;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1.x = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat0.w = u_xlat0.w * u_xlat1.x;
					    u_xlat0 = u_xlat0 * vs_COLOR0;
					    u_xlat6 = u_xlat0.w;
					    u_xlat6 = clamp(u_xlat6, 0.0, 1.0);
					    u_xlat0.w = u_xlat6 * vs_TEXCOORD4;
					    u_xlat1 = u_xlat0 + vec4(-1.0, -1.0, -1.0, -1.0);
					    SV_Target0 = u_xlat0.wwww * u_xlat1 + vec4(1.0, 1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					bool u_xlatb1;
					float u_xlat6;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1.x = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat0.w = u_xlat0.w * u_xlat1.x;
					    u_xlat0 = u_xlat0 * vs_COLOR0;
					    u_xlat6 = u_xlat0.w;
					    u_xlat6 = clamp(u_xlat6, 0.0, 1.0);
					    u_xlat0.w = u_xlat6 * vs_TEXCOORD4;
					    u_xlat1 = u_xlat0 + vec4(-1.0, -1.0, -1.0, -1.0);
					    SV_Target0 = u_xlat0.wwww * u_xlat1 + vec4(1.0, 1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendMul" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[7];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					bool u_xlatb2;
					float u_xlat9;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2 = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat9 = u_xlat0.w;
					    u_xlat9 = clamp(u_xlat9, 0.0, 1.0);
					    u_xlat0.w = u_xlat9 * vs_TEXCOORD4;
					    u_xlat1 = u_xlat0 + vec4(-1.0, -1.0, -1.0, -1.0);
					    SV_Target0 = u_xlat0.wwww * u_xlat1 + vec4(1.0, 1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[6];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					bool u_xlatb2;
					float u_xlat9;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2 = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat9 = u_xlat0.w;
					    u_xlat9 = clamp(u_xlat9, 0.0, 1.0);
					    u_xlat0.w = u_xlat9 * vs_TEXCOORD4;
					    u_xlat1 = u_xlat0 + vec4(-1.0, -1.0, -1.0, -1.0);
					    SV_Target0 = u_xlat0.wwww * u_xlat1 + vec4(1.0, 1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendMul" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3.x;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3.x;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendMul" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					bool u_xlatb2;
					float u_xlat9;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2 = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat9 = u_xlat0.w;
					    u_xlat9 = clamp(u_xlat9, 0.0, 1.0);
					    u_xlat0.w = u_xlat9 * vs_TEXCOORD4;
					    u_xlat1 = u_xlat0 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat0.xyz = u_xlat0.www * u_xlat1.xyz;
					    SV_Target0.w = u_xlat0.w * u_xlat1.w + 1.0;
					    u_xlat9 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat9 = (-u_xlat9) + 1.0;
					    u_xlat9 = u_xlat9 * _ProjectionParams.z;
					    u_xlat9 = max(u_xlat9, 0.0);
					    u_xlat9 = u_xlat9 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat9 = clamp(u_xlat9, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat9) * u_xlat0.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					bool u_xlatb2;
					float u_xlat9;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2 = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat9 = u_xlat0.w;
					    u_xlat9 = clamp(u_xlat9, 0.0, 1.0);
					    u_xlat0.w = u_xlat9 * vs_TEXCOORD4;
					    u_xlat1 = u_xlat0 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat0.xyz = u_xlat0.www * u_xlat1.xyz;
					    SV_Target0.w = u_xlat0.w * u_xlat1.w + 1.0;
					    u_xlat9 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat9 = (-u_xlat9) + 1.0;
					    u_xlat9 = u_xlat9 * _ProjectionParams.z;
					    u_xlat9 = max(u_xlat9, 0.0);
					    u_xlat9 = u_xlat9 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat9 = clamp(u_xlat9, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat9) * u_xlat0.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendMul" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3.x;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3.x;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendMul" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat3.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat1 = texture(_CameraDepthTexture, u_xlat3.xy);
					    u_xlat3.x = _ZBufferParams.z * u_xlat1.x + _ZBufferParams.w;
					    u_xlat3.x = float(1.0) / u_xlat3.x;
					    u_xlat3.x = u_xlat3.x + (-vs_TEXCOORD3.z);
					    u_xlat3.x = u_xlat3.x * _InvFade;
					    u_xlat3.x = clamp(u_xlat3.x, 0.0, 1.0);
					    u_xlat1.w = u_xlat3.x * vs_COLOR0.w;
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb3 = u_xlat2.w>=_Cutout;
					    u_xlat2 = u_xlat2 + u_xlat2;
					    u_xlat2 = u_xlat2 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat2.w = u_xlat2.w * u_xlat3.x;
					    u_xlat1.xyz = vs_COLOR0.xyz;
					    u_xlat1 = u_xlat1 * u_xlat2;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat3.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat1 = texture(_CameraDepthTexture, u_xlat3.xy);
					    u_xlat3.x = _ZBufferParams.z * u_xlat1.x + _ZBufferParams.w;
					    u_xlat3.x = float(1.0) / u_xlat3.x;
					    u_xlat3.x = u_xlat3.x + (-vs_TEXCOORD3.z);
					    u_xlat3.x = u_xlat3.x * _InvFade;
					    u_xlat3.x = clamp(u_xlat3.x, 0.0, 1.0);
					    u_xlat1.w = u_xlat3.x * vs_COLOR0.w;
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb3 = u_xlat2.w>=_Cutout;
					    u_xlat2 = u_xlat2 + u_xlat2;
					    u_xlat2 = u_xlat2 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat2.w = u_xlat2.w * u_xlat3.x;
					    u_xlat1.xyz = vs_COLOR0.xyz;
					    u_xlat1 = u_xlat1 * u_xlat2;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendMul" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3.x;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3.x;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendMul" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat3.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat1 = texture(_CameraDepthTexture, u_xlat3.xy);
					    u_xlat3.x = _ZBufferParams.z * u_xlat1.x + _ZBufferParams.w;
					    u_xlat3.x = float(1.0) / u_xlat3.x;
					    u_xlat3.x = u_xlat3.x + (-vs_TEXCOORD3.z);
					    u_xlat3.x = u_xlat3.x * _InvFade;
					    u_xlat3.x = clamp(u_xlat3.x, 0.0, 1.0);
					    u_xlat1.w = u_xlat3.x * vs_COLOR0.w;
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb3 = u_xlat2.w>=_Cutout;
					    u_xlat2 = u_xlat2 + u_xlat2;
					    u_xlat2 = u_xlat2 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat2.w = u_xlat2.w * u_xlat3.x;
					    u_xlat1.xyz = vs_COLOR0.xyz;
					    u_xlat1 = u_xlat1 * u_xlat2;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat3.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat1 = texture(_CameraDepthTexture, u_xlat3.xy);
					    u_xlat3.x = _ZBufferParams.z * u_xlat1.x + _ZBufferParams.w;
					    u_xlat3.x = float(1.0) / u_xlat3.x;
					    u_xlat3.x = u_xlat3.x + (-vs_TEXCOORD3.z);
					    u_xlat3.x = u_xlat3.x * _InvFade;
					    u_xlat3.x = clamp(u_xlat3.x, 0.0, 1.0);
					    u_xlat1.w = u_xlat3.x * vs_COLOR0.w;
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb3 = u_xlat2.w>=_Cutout;
					    u_xlat2 = u_xlat2 + u_xlat2;
					    u_xlat2 = u_xlat2 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat2.w = u_xlat2.w * u_xlat3.x;
					    u_xlat1.xyz = vs_COLOR0.xyz;
					    u_xlat1 = u_xlat1 * u_xlat2;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendMul" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[7];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					bool u_xlatb2;
					float u_xlat9;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2 = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat9 = u_xlat0.w;
					    u_xlat9 = clamp(u_xlat9, 0.0, 1.0);
					    u_xlat0.w = u_xlat9 * vs_TEXCOORD4;
					    u_xlat1 = u_xlat0 + vec4(-1.0, -1.0, -1.0, -1.0);
					    SV_Target0 = u_xlat0.wwww * u_xlat1 + vec4(1.0, 1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[6];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					bool u_xlatb2;
					float u_xlat9;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2 = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat9 = u_xlat0.w;
					    u_xlat9 = clamp(u_xlat9, 0.0, 1.0);
					    u_xlat0.w = u_xlat9 * vs_TEXCOORD4;
					    u_xlat1 = u_xlat0 + vec4(-1.0, -1.0, -1.0, -1.0);
					    SV_Target0 = u_xlat0.wwww * u_xlat1 + vec4(1.0, 1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendMul" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[7];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					bool u_xlatb2;
					float u_xlat9;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2 = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat9 = u_xlat0.w;
					    u_xlat9 = clamp(u_xlat9, 0.0, 1.0);
					    u_xlat0.w = u_xlat9 * vs_TEXCOORD4;
					    u_xlat1 = u_xlat0 + vec4(-1.0, -1.0, -1.0, -1.0);
					    SV_Target0 = u_xlat0.wwww * u_xlat1 + vec4(1.0, 1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[6];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					bool u_xlatb2;
					float u_xlat9;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2 = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat9 = u_xlat0.w;
					    u_xlat9 = clamp(u_xlat9, 0.0, 1.0);
					    u_xlat0.w = u_xlat9 * vs_TEXCOORD4;
					    u_xlat1 = u_xlat0 + vec4(-1.0, -1.0, -1.0, -1.0);
					    SV_Target0 = u_xlat0.wwww * u_xlat1 + vec4(1.0, 1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendMul" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					bool u_xlatb2;
					float u_xlat9;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2 = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat9 = u_xlat0.w;
					    u_xlat9 = clamp(u_xlat9, 0.0, 1.0);
					    u_xlat0.w = u_xlat9 * vs_TEXCOORD4;
					    u_xlat1 = u_xlat0 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat0.xyz = u_xlat0.www * u_xlat1.xyz;
					    SV_Target0.w = u_xlat0.w * u_xlat1.w + 1.0;
					    u_xlat9 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat9 = (-u_xlat9) + 1.0;
					    u_xlat9 = u_xlat9 * _ProjectionParams.z;
					    u_xlat9 = max(u_xlat9, 0.0);
					    u_xlat9 = u_xlat9 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat9 = clamp(u_xlat9, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat9) * u_xlat0.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					bool u_xlatb2;
					float u_xlat9;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2 = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat9 = u_xlat0.w;
					    u_xlat9 = clamp(u_xlat9, 0.0, 1.0);
					    u_xlat0.w = u_xlat9 * vs_TEXCOORD4;
					    u_xlat1 = u_xlat0 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat0.xyz = u_xlat0.www * u_xlat1.xyz;
					    SV_Target0.w = u_xlat0.w * u_xlat1.w + 1.0;
					    u_xlat9 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat9 = (-u_xlat9) + 1.0;
					    u_xlat9 = u_xlat9 * _ProjectionParams.z;
					    u_xlat9 = max(u_xlat9, 0.0);
					    u_xlat9 = u_xlat9 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat9 = clamp(u_xlat9, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat9) * u_xlat0.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendMul" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					bool u_xlatb2;
					float u_xlat9;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2 = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat9 = u_xlat0.w;
					    u_xlat9 = clamp(u_xlat9, 0.0, 1.0);
					    u_xlat0.w = u_xlat9 * vs_TEXCOORD4;
					    u_xlat1 = u_xlat0 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat0.xyz = u_xlat0.www * u_xlat1.xyz;
					    SV_Target0.w = u_xlat0.w * u_xlat1.w + 1.0;
					    u_xlat9 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat9 = (-u_xlat9) + 1.0;
					    u_xlat9 = u_xlat9 * _ProjectionParams.z;
					    u_xlat9 = max(u_xlat9, 0.0);
					    u_xlat9 = u_xlat9 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat9 = clamp(u_xlat9, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat9) * u_xlat0.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					bool u_xlatb2;
					float u_xlat9;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2 = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat9 = u_xlat0.w;
					    u_xlat9 = clamp(u_xlat9, 0.0, 1.0);
					    u_xlat0.w = u_xlat9 * vs_TEXCOORD4;
					    u_xlat1 = u_xlat0 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat0.xyz = u_xlat0.www * u_xlat1.xyz;
					    SV_Target0.w = u_xlat0.w * u_xlat1.w + 1.0;
					    u_xlat9 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat9 = (-u_xlat9) + 1.0;
					    u_xlat9 = u_xlat9 * _ProjectionParams.z;
					    u_xlat9 = max(u_xlat9, 0.0);
					    u_xlat9 = u_xlat9 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat9 = clamp(u_xlat9, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat9) * u_xlat0.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendMul" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat3.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat1 = texture(_CameraDepthTexture, u_xlat3.xy);
					    u_xlat3.x = _ZBufferParams.z * u_xlat1.x + _ZBufferParams.w;
					    u_xlat3.x = float(1.0) / u_xlat3.x;
					    u_xlat3.x = u_xlat3.x + (-vs_TEXCOORD3.z);
					    u_xlat3.x = u_xlat3.x * _InvFade;
					    u_xlat3.x = clamp(u_xlat3.x, 0.0, 1.0);
					    u_xlat1.w = u_xlat3.x * vs_COLOR0.w;
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb3 = u_xlat2.w>=_Cutout;
					    u_xlat2 = u_xlat2 + u_xlat2;
					    u_xlat2 = u_xlat2 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat2.w = u_xlat2.w * u_xlat3.x;
					    u_xlat1.xyz = vs_COLOR0.xyz;
					    u_xlat1 = u_xlat1 * u_xlat2;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat3.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat1 = texture(_CameraDepthTexture, u_xlat3.xy);
					    u_xlat3.x = _ZBufferParams.z * u_xlat1.x + _ZBufferParams.w;
					    u_xlat3.x = float(1.0) / u_xlat3.x;
					    u_xlat3.x = u_xlat3.x + (-vs_TEXCOORD3.z);
					    u_xlat3.x = u_xlat3.x * _InvFade;
					    u_xlat3.x = clamp(u_xlat3.x, 0.0, 1.0);
					    u_xlat1.w = u_xlat3.x * vs_COLOR0.w;
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb3 = u_xlat2.w>=_Cutout;
					    u_xlat2 = u_xlat2 + u_xlat2;
					    u_xlat2 = u_xlat2 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat2.w = u_xlat2.w * u_xlat3.x;
					    u_xlat1.xyz = vs_COLOR0.xyz;
					    u_xlat1 = u_xlat1 * u_xlat2;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendMul" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat3.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat1 = texture(_CameraDepthTexture, u_xlat3.xy);
					    u_xlat3.x = _ZBufferParams.z * u_xlat1.x + _ZBufferParams.w;
					    u_xlat3.x = float(1.0) / u_xlat3.x;
					    u_xlat3.x = u_xlat3.x + (-vs_TEXCOORD3.z);
					    u_xlat3.x = u_xlat3.x * _InvFade;
					    u_xlat3.x = clamp(u_xlat3.x, 0.0, 1.0);
					    u_xlat1.w = u_xlat3.x * vs_COLOR0.w;
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb3 = u_xlat2.w>=_Cutout;
					    u_xlat2 = u_xlat2 + u_xlat2;
					    u_xlat2 = u_xlat2 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat2.w = u_xlat2.w * u_xlat3.x;
					    u_xlat1.xyz = vs_COLOR0.xyz;
					    u_xlat1 = u_xlat1 * u_xlat2;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat3.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat1 = texture(_CameraDepthTexture, u_xlat3.xy);
					    u_xlat3.x = _ZBufferParams.z * u_xlat1.x + _ZBufferParams.w;
					    u_xlat3.x = float(1.0) / u_xlat3.x;
					    u_xlat3.x = u_xlat3.x + (-vs_TEXCOORD3.z);
					    u_xlat3.x = u_xlat3.x * _InvFade;
					    u_xlat3.x = clamp(u_xlat3.x, 0.0, 1.0);
					    u_xlat1.w = u_xlat3.x * vs_COLOR0.w;
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb3 = u_xlat2.w>=_Cutout;
					    u_xlat2 = u_xlat2 + u_xlat2;
					    u_xlat2 = u_xlat2 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat2.w = u_xlat2.w * u_xlat3.x;
					    u_xlat1.xyz = vs_COLOR0.xyz;
					    u_xlat1 = u_xlat1 * u_xlat2;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendMul" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat3.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat1 = texture(_CameraDepthTexture, u_xlat3.xy);
					    u_xlat3.x = _ZBufferParams.z * u_xlat1.x + _ZBufferParams.w;
					    u_xlat3.x = float(1.0) / u_xlat3.x;
					    u_xlat3.x = u_xlat3.x + (-vs_TEXCOORD3.z);
					    u_xlat3.x = u_xlat3.x * _InvFade;
					    u_xlat3.x = clamp(u_xlat3.x, 0.0, 1.0);
					    u_xlat1.w = u_xlat3.x * vs_COLOR0.w;
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb3 = u_xlat2.w>=_Cutout;
					    u_xlat2 = u_xlat2 + u_xlat2;
					    u_xlat2 = u_xlat2 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat2.w = u_xlat2.w * u_xlat3.x;
					    u_xlat1.xyz = vs_COLOR0.xyz;
					    u_xlat1 = u_xlat1 * u_xlat2;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat3.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat1 = texture(_CameraDepthTexture, u_xlat3.xy);
					    u_xlat3.x = _ZBufferParams.z * u_xlat1.x + _ZBufferParams.w;
					    u_xlat3.x = float(1.0) / u_xlat3.x;
					    u_xlat3.x = u_xlat3.x + (-vs_TEXCOORD3.z);
					    u_xlat3.x = u_xlat3.x * _InvFade;
					    u_xlat3.x = clamp(u_xlat3.x, 0.0, 1.0);
					    u_xlat1.w = u_xlat3.x * vs_COLOR0.w;
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb3 = u_xlat2.w>=_Cutout;
					    u_xlat2 = u_xlat2 + u_xlat2;
					    u_xlat2 = u_xlat2 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat2.w = u_xlat2.w * u_xlat3.x;
					    u_xlat1.xyz = vs_COLOR0.xyz;
					    u_xlat1 = u_xlat1 * u_xlat2;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendMul" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat3.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat1 = texture(_CameraDepthTexture, u_xlat3.xy);
					    u_xlat3.x = _ZBufferParams.z * u_xlat1.x + _ZBufferParams.w;
					    u_xlat3.x = float(1.0) / u_xlat3.x;
					    u_xlat3.x = u_xlat3.x + (-vs_TEXCOORD3.z);
					    u_xlat3.x = u_xlat3.x * _InvFade;
					    u_xlat3.x = clamp(u_xlat3.x, 0.0, 1.0);
					    u_xlat1.w = u_xlat3.x * vs_COLOR0.w;
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb3 = u_xlat2.w>=_Cutout;
					    u_xlat2 = u_xlat2 + u_xlat2;
					    u_xlat2 = u_xlat2 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat2.w = u_xlat2.w * u_xlat3.x;
					    u_xlat1.xyz = vs_COLOR0.xyz;
					    u_xlat1 = u_xlat1 * u_xlat2;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat3.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat1 = texture(_CameraDepthTexture, u_xlat3.xy);
					    u_xlat3.x = _ZBufferParams.z * u_xlat1.x + _ZBufferParams.w;
					    u_xlat3.x = float(1.0) / u_xlat3.x;
					    u_xlat3.x = u_xlat3.x + (-vs_TEXCOORD3.z);
					    u_xlat3.x = u_xlat3.x * _InvFade;
					    u_xlat3.x = clamp(u_xlat3.x, 0.0, 1.0);
					    u_xlat1.w = u_xlat3.x * vs_COLOR0.w;
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb3 = u_xlat2.w>=_Cutout;
					    u_xlat2 = u_xlat2 + u_xlat2;
					    u_xlat2 = u_xlat2 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat2.w = u_xlat2.w * u_xlat3.x;
					    u_xlat1.xyz = vs_COLOR0.xyz;
					    u_xlat1 = u_xlat1 * u_xlat2;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendMul" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0.xyz = u_xlat0.xyz + u_xlat0.xyz;
					    u_xlat0.xyz = u_xlat0.xyz * _TintColor.xyz;
					    u_xlat1.xyz = u_xlat0.xyz * vs_COLOR0.xyz;
					    u_xlat0.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlatb0 = u_xlat0.w>=u_xlat0.x;
					    u_xlat1.w = u_xlatb0 ? 1.0 : float(0.0);
					    u_xlat0 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    SV_Target0 = u_xlat1.wwww * u_xlat0 + vec4(1.0, 1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0.xyz = u_xlat0.xyz + u_xlat0.xyz;
					    u_xlat0.xyz = u_xlat0.xyz * _TintColor.xyz;
					    u_xlat1.xyz = u_xlat0.xyz * vs_COLOR0.xyz;
					    u_xlat0.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlatb0 = u_xlat0.w>=u_xlat0.x;
					    u_xlat1.w = u_xlatb0 ? 1.0 : float(0.0);
					    u_xlat0 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    SV_Target0 = u_xlat1.wwww * u_xlat0 + vec4(1.0, 1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendMul" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[7];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb0 = u_xlat1.w>=u_xlat0.x;
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    u_xlat1.xyz = u_xlat2.xyz * vs_COLOR0.xyz;
					    u_xlat1.w = u_xlatb0 ? 1.0 : float(0.0);
					    u_xlat0 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    SV_Target0 = u_xlat1.wwww * u_xlat0 + vec4(1.0, 1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[6];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb0 = u_xlat1.w>=u_xlat0.x;
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    u_xlat1.xyz = u_xlat2.xyz * vs_COLOR0.xyz;
					    u_xlat1.w = u_xlatb0 ? 1.0 : float(0.0);
					    u_xlat0 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    SV_Target0 = u_xlat1.wwww * u_xlat0 + vec4(1.0, 1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendMul" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat2.w = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1 = u_xlat2 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat2.w = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1 = u_xlat2 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendMul" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat3.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat1 = texture(_CameraDepthTexture, u_xlat3.xy);
					    u_xlat3.x = _ZBufferParams.z * u_xlat1.x + _ZBufferParams.w;
					    u_xlat3.x = float(1.0) / u_xlat3.x;
					    u_xlat3.x = u_xlat3.x + (-vs_TEXCOORD3.z);
					    u_xlat3.x = u_xlat3.x * _InvFade;
					    u_xlat3.x = clamp(u_xlat3.x, 0.0, 1.0);
					    u_xlat3.x = (-vs_COLOR0.w) * u_xlat3.x + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat1.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz * _TintColor.xyz;
					    u_xlat1.xyz = u_xlat1.xyz * vs_COLOR0.xyz;
					    u_xlat1.w = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat3.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat1 = texture(_CameraDepthTexture, u_xlat3.xy);
					    u_xlat3.x = _ZBufferParams.z * u_xlat1.x + _ZBufferParams.w;
					    u_xlat3.x = float(1.0) / u_xlat3.x;
					    u_xlat3.x = u_xlat3.x + (-vs_TEXCOORD3.z);
					    u_xlat3.x = u_xlat3.x * _InvFade;
					    u_xlat3.x = clamp(u_xlat3.x, 0.0, 1.0);
					    u_xlat3.x = (-vs_COLOR0.w) * u_xlat3.x + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat1.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz * _TintColor.xyz;
					    u_xlat1.xyz = u_xlat1.xyz * vs_COLOR0.xyz;
					    u_xlat1.w = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendMul" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat2.w = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1 = u_xlat2 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat2.w = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1 = u_xlat2 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendMul" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat3.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat1 = texture(_CameraDepthTexture, u_xlat3.xy);
					    u_xlat3.x = _ZBufferParams.z * u_xlat1.x + _ZBufferParams.w;
					    u_xlat3.x = float(1.0) / u_xlat3.x;
					    u_xlat3.x = u_xlat3.x + (-vs_TEXCOORD3.z);
					    u_xlat3.x = u_xlat3.x * _InvFade;
					    u_xlat3.x = clamp(u_xlat3.x, 0.0, 1.0);
					    u_xlat3.x = (-vs_COLOR0.w) * u_xlat3.x + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat1.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz * _TintColor.xyz;
					    u_xlat1.xyz = u_xlat1.xyz * vs_COLOR0.xyz;
					    u_xlat1.w = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat3.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat1 = texture(_CameraDepthTexture, u_xlat3.xy);
					    u_xlat3.x = _ZBufferParams.z * u_xlat1.x + _ZBufferParams.w;
					    u_xlat3.x = float(1.0) / u_xlat3.x;
					    u_xlat3.x = u_xlat3.x + (-vs_TEXCOORD3.z);
					    u_xlat3.x = u_xlat3.x * _InvFade;
					    u_xlat3.x = clamp(u_xlat3.x, 0.0, 1.0);
					    u_xlat3.x = (-vs_COLOR0.w) * u_xlat3.x + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat1.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz * _TintColor.xyz;
					    u_xlat1.xyz = u_xlat1.xyz * vs_COLOR0.xyz;
					    u_xlat1.w = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendMul" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat2.w = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1 = u_xlat2 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat2.w = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1 = u_xlat2 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendMul" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat3.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat1 = texture(_CameraDepthTexture, u_xlat3.xy);
					    u_xlat3.x = _ZBufferParams.z * u_xlat1.x + _ZBufferParams.w;
					    u_xlat3.x = float(1.0) / u_xlat3.x;
					    u_xlat3.x = u_xlat3.x + (-vs_TEXCOORD3.z);
					    u_xlat3.x = u_xlat3.x * _InvFade;
					    u_xlat3.x = clamp(u_xlat3.x, 0.0, 1.0);
					    u_xlat3.x = (-vs_COLOR0.w) * u_xlat3.x + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat1.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz * _TintColor.xyz;
					    u_xlat1.xyz = u_xlat1.xyz * vs_COLOR0.xyz;
					    u_xlat1.w = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat3.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat1 = texture(_CameraDepthTexture, u_xlat3.xy);
					    u_xlat3.x = _ZBufferParams.z * u_xlat1.x + _ZBufferParams.w;
					    u_xlat3.x = float(1.0) / u_xlat3.x;
					    u_xlat3.x = u_xlat3.x + (-vs_TEXCOORD3.z);
					    u_xlat3.x = u_xlat3.x * _InvFade;
					    u_xlat3.x = clamp(u_xlat3.x, 0.0, 1.0);
					    u_xlat3.x = (-vs_COLOR0.w) * u_xlat3.x + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat1.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz * _TintColor.xyz;
					    u_xlat1.xyz = u_xlat1.xyz * vs_COLOR0.xyz;
					    u_xlat1.w = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendMul" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[7];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb0 = u_xlat1.w>=u_xlat0.x;
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    u_xlat1.xyz = u_xlat2.xyz * vs_COLOR0.xyz;
					    u_xlat1.w = u_xlatb0 ? 1.0 : float(0.0);
					    u_xlat0 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    SV_Target0 = u_xlat1.wwww * u_xlat0 + vec4(1.0, 1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[6];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb0 = u_xlat1.w>=u_xlat0.x;
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    u_xlat1.xyz = u_xlat2.xyz * vs_COLOR0.xyz;
					    u_xlat1.w = u_xlatb0 ? 1.0 : float(0.0);
					    u_xlat0 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    SV_Target0 = u_xlat1.wwww * u_xlat0 + vec4(1.0, 1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendMul" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[7];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb0 = u_xlat1.w>=u_xlat0.x;
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    u_xlat1.xyz = u_xlat2.xyz * vs_COLOR0.xyz;
					    u_xlat1.w = u_xlatb0 ? 1.0 : float(0.0);
					    u_xlat0 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    SV_Target0 = u_xlat1.wwww * u_xlat0 + vec4(1.0, 1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[6];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb0 = u_xlat1.w>=u_xlat0.x;
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    u_xlat1.xyz = u_xlat2.xyz * vs_COLOR0.xyz;
					    u_xlat1.w = u_xlatb0 ? 1.0 : float(0.0);
					    u_xlat0 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    SV_Target0 = u_xlat1.wwww * u_xlat0 + vec4(1.0, 1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendMul" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat3.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat1 = texture(_CameraDepthTexture, u_xlat3.xy);
					    u_xlat3.x = _ZBufferParams.z * u_xlat1.x + _ZBufferParams.w;
					    u_xlat3.x = float(1.0) / u_xlat3.x;
					    u_xlat3.x = u_xlat3.x + (-vs_TEXCOORD3.z);
					    u_xlat3.x = u_xlat3.x * _InvFade;
					    u_xlat3.x = clamp(u_xlat3.x, 0.0, 1.0);
					    u_xlat3.x = (-vs_COLOR0.w) * u_xlat3.x + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat1.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz * _TintColor.xyz;
					    u_xlat1.xyz = u_xlat1.xyz * vs_COLOR0.xyz;
					    u_xlat1.w = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat3.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat1 = texture(_CameraDepthTexture, u_xlat3.xy);
					    u_xlat3.x = _ZBufferParams.z * u_xlat1.x + _ZBufferParams.w;
					    u_xlat3.x = float(1.0) / u_xlat3.x;
					    u_xlat3.x = u_xlat3.x + (-vs_TEXCOORD3.z);
					    u_xlat3.x = u_xlat3.x * _InvFade;
					    u_xlat3.x = clamp(u_xlat3.x, 0.0, 1.0);
					    u_xlat3.x = (-vs_COLOR0.w) * u_xlat3.x + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat1.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz * _TintColor.xyz;
					    u_xlat1.xyz = u_xlat1.xyz * vs_COLOR0.xyz;
					    u_xlat1.w = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendMul" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat3.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat1 = texture(_CameraDepthTexture, u_xlat3.xy);
					    u_xlat3.x = _ZBufferParams.z * u_xlat1.x + _ZBufferParams.w;
					    u_xlat3.x = float(1.0) / u_xlat3.x;
					    u_xlat3.x = u_xlat3.x + (-vs_TEXCOORD3.z);
					    u_xlat3.x = u_xlat3.x * _InvFade;
					    u_xlat3.x = clamp(u_xlat3.x, 0.0, 1.0);
					    u_xlat3.x = (-vs_COLOR0.w) * u_xlat3.x + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat1.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz * _TintColor.xyz;
					    u_xlat1.xyz = u_xlat1.xyz * vs_COLOR0.xyz;
					    u_xlat1.w = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat3.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat1 = texture(_CameraDepthTexture, u_xlat3.xy);
					    u_xlat3.x = _ZBufferParams.z * u_xlat1.x + _ZBufferParams.w;
					    u_xlat3.x = float(1.0) / u_xlat3.x;
					    u_xlat3.x = u_xlat3.x + (-vs_TEXCOORD3.z);
					    u_xlat3.x = u_xlat3.x * _InvFade;
					    u_xlat3.x = clamp(u_xlat3.x, 0.0, 1.0);
					    u_xlat3.x = (-vs_COLOR0.w) * u_xlat3.x + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat1.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz * _TintColor.xyz;
					    u_xlat1.xyz = u_xlat1.xyz * vs_COLOR0.xyz;
					    u_xlat1.w = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendMul" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat3.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat1 = texture(_CameraDepthTexture, u_xlat3.xy);
					    u_xlat3.x = _ZBufferParams.z * u_xlat1.x + _ZBufferParams.w;
					    u_xlat3.x = float(1.0) / u_xlat3.x;
					    u_xlat3.x = u_xlat3.x + (-vs_TEXCOORD3.z);
					    u_xlat3.x = u_xlat3.x * _InvFade;
					    u_xlat3.x = clamp(u_xlat3.x, 0.0, 1.0);
					    u_xlat3.x = (-vs_COLOR0.w) * u_xlat3.x + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat1.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz * _TintColor.xyz;
					    u_xlat1.xyz = u_xlat1.xyz * vs_COLOR0.xyz;
					    u_xlat1.w = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat3.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat1 = texture(_CameraDepthTexture, u_xlat3.xy);
					    u_xlat3.x = _ZBufferParams.z * u_xlat1.x + _ZBufferParams.w;
					    u_xlat3.x = float(1.0) / u_xlat3.x;
					    u_xlat3.x = u_xlat3.x + (-vs_TEXCOORD3.z);
					    u_xlat3.x = u_xlat3.x * _InvFade;
					    u_xlat3.x = clamp(u_xlat3.x, 0.0, 1.0);
					    u_xlat3.x = (-vs_COLOR0.w) * u_xlat3.x + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat1.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz * _TintColor.xyz;
					    u_xlat1.xyz = u_xlat1.xyz * vs_COLOR0.xyz;
					    u_xlat1.w = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendMul" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat3.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat1 = texture(_CameraDepthTexture, u_xlat3.xy);
					    u_xlat3.x = _ZBufferParams.z * u_xlat1.x + _ZBufferParams.w;
					    u_xlat3.x = float(1.0) / u_xlat3.x;
					    u_xlat3.x = u_xlat3.x + (-vs_TEXCOORD3.z);
					    u_xlat3.x = u_xlat3.x * _InvFade;
					    u_xlat3.x = clamp(u_xlat3.x, 0.0, 1.0);
					    u_xlat3.x = (-vs_COLOR0.w) * u_xlat3.x + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat1.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz * _TintColor.xyz;
					    u_xlat1.xyz = u_xlat1.xyz * vs_COLOR0.xyz;
					    u_xlat1.w = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat3.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat1 = texture(_CameraDepthTexture, u_xlat3.xy);
					    u_xlat3.x = _ZBufferParams.z * u_xlat1.x + _ZBufferParams.w;
					    u_xlat3.x = float(1.0) / u_xlat3.x;
					    u_xlat3.x = u_xlat3.x + (-vs_TEXCOORD3.z);
					    u_xlat3.x = u_xlat3.x * _InvFade;
					    u_xlat3.x = clamp(u_xlat3.x, 0.0, 1.0);
					    u_xlat3.x = (-vs_COLOR0.w) * u_xlat3.x + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat1.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz * _TintColor.xyz;
					    u_xlat1.xyz = u_xlat1.xyz * vs_COLOR0.xyz;
					    u_xlat1.w = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendMul" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat3.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat1 = texture(_CameraDepthTexture, u_xlat3.xy);
					    u_xlat3.x = _ZBufferParams.z * u_xlat1.x + _ZBufferParams.w;
					    u_xlat3.x = float(1.0) / u_xlat3.x;
					    u_xlat3.x = u_xlat3.x + (-vs_TEXCOORD3.z);
					    u_xlat3.x = u_xlat3.x * _InvFade;
					    u_xlat3.x = clamp(u_xlat3.x, 0.0, 1.0);
					    u_xlat3.x = (-vs_COLOR0.w) * u_xlat3.x + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat1.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz * _TintColor.xyz;
					    u_xlat1.xyz = u_xlat1.xyz * vs_COLOR0.xyz;
					    u_xlat1.w = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat3.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat1 = texture(_CameraDepthTexture, u_xlat3.xy);
					    u_xlat3.x = _ZBufferParams.z * u_xlat1.x + _ZBufferParams.w;
					    u_xlat3.x = float(1.0) / u_xlat3.x;
					    u_xlat3.x = u_xlat3.x + (-vs_TEXCOORD3.z);
					    u_xlat3.x = u_xlat3.x * _InvFade;
					    u_xlat3.x = clamp(u_xlat3.x, 0.0, 1.0);
					    u_xlat3.x = (-vs_COLOR0.w) * u_xlat3.x + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat1.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz * _TintColor.xyz;
					    u_xlat1.xyz = u_xlat1.xyz * vs_COLOR0.xyz;
					    u_xlat1.w = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendMul" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat3.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat1 = texture(_CameraDepthTexture, u_xlat3.xy);
					    u_xlat3.x = _ZBufferParams.z * u_xlat1.x + _ZBufferParams.w;
					    u_xlat3.x = float(1.0) / u_xlat3.x;
					    u_xlat3.x = u_xlat3.x + (-vs_TEXCOORD3.z);
					    u_xlat3.x = u_xlat3.x * _InvFade;
					    u_xlat3.x = clamp(u_xlat3.x, 0.0, 1.0);
					    u_xlat3.x = (-vs_COLOR0.w) * u_xlat3.x + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat1.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz * _TintColor.xyz;
					    u_xlat1.xyz = u_xlat1.xyz * vs_COLOR0.xyz;
					    u_xlat1.w = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat3.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat1 = texture(_CameraDepthTexture, u_xlat3.xy);
					    u_xlat3.x = _ZBufferParams.z * u_xlat1.x + _ZBufferParams.w;
					    u_xlat3.x = float(1.0) / u_xlat3.x;
					    u_xlat3.x = u_xlat3.x + (-vs_TEXCOORD3.z);
					    u_xlat3.x = u_xlat3.x * _InvFade;
					    u_xlat3.x = clamp(u_xlat3.x, 0.0, 1.0);
					    u_xlat3.x = (-vs_COLOR0.w) * u_xlat3.x + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat1.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz * _TintColor.xyz;
					    u_xlat1.xyz = u_xlat1.xyz * vs_COLOR0.xyz;
					    u_xlat1.w = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendMul" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0.xyz = u_xlat0.xyz + u_xlat0.xyz;
					    u_xlat0.xyz = u_xlat0.xyz * _TintColor.xyz;
					    u_xlat1.xyz = u_xlat0.xyz * vs_COLOR0.xyz;
					    u_xlat0.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlatb0 = u_xlat0.w>=u_xlat0.x;
					    u_xlat0.x = u_xlatb0 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat0.x * vs_TEXCOORD4;
					    u_xlat0 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    SV_Target0 = u_xlat1.wwww * u_xlat0 + vec4(1.0, 1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0.xyz = u_xlat0.xyz + u_xlat0.xyz;
					    u_xlat0.xyz = u_xlat0.xyz * _TintColor.xyz;
					    u_xlat1.xyz = u_xlat0.xyz * vs_COLOR0.xyz;
					    u_xlat0.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlatb0 = u_xlat0.w>=u_xlat0.x;
					    u_xlat0.x = u_xlatb0 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat0.x * vs_TEXCOORD4;
					    u_xlat0 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    SV_Target0 = u_xlat1.wwww * u_xlat0 + vec4(1.0, 1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendMul" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[7];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb0 = u_xlat1.w>=u_xlat0.x;
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    u_xlat1.xyz = u_xlat2.xyz * vs_COLOR0.xyz;
					    u_xlat0.x = u_xlatb0 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat0.x * vs_TEXCOORD4;
					    u_xlat0 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    SV_Target0 = u_xlat1.wwww * u_xlat0 + vec4(1.0, 1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[6];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb0 = u_xlat1.w>=u_xlat0.x;
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    u_xlat1.xyz = u_xlat2.xyz * vs_COLOR0.xyz;
					    u_xlat0.x = u_xlatb0 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat0.x * vs_TEXCOORD4;
					    u_xlat0 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    SV_Target0 = u_xlat1.wwww * u_xlat0 + vec4(1.0, 1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendMul" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat2.w = u_xlat3.x * vs_TEXCOORD4;
					    u_xlat1 = u_xlat2 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat2.w = u_xlat3.x * vs_TEXCOORD4;
					    u_xlat1 = u_xlat2 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendMul" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					float u_xlat6;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb0 = u_xlat1.w>=u_xlat0.x;
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    u_xlat1.xyz = u_xlat2.xyz * vs_COLOR0.xyz;
					    u_xlat0.x = u_xlatb0 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat0.x * vs_TEXCOORD4;
					    u_xlat0 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat0.xyz = u_xlat0.xyz * u_xlat1.www;
					    SV_Target0.w = u_xlat1.w * u_xlat0.w + 1.0;
					    u_xlat6 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat6 = (-u_xlat6) + 1.0;
					    u_xlat6 = u_xlat6 * _ProjectionParams.z;
					    u_xlat6 = max(u_xlat6, 0.0);
					    u_xlat6 = u_xlat6 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat6 = clamp(u_xlat6, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat6) * u_xlat0.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					float u_xlat6;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb0 = u_xlat1.w>=u_xlat0.x;
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    u_xlat1.xyz = u_xlat2.xyz * vs_COLOR0.xyz;
					    u_xlat0.x = u_xlatb0 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat0.x * vs_TEXCOORD4;
					    u_xlat0 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat0.xyz = u_xlat0.xyz * u_xlat1.www;
					    SV_Target0.w = u_xlat1.w * u_xlat0.w + 1.0;
					    u_xlat6 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat6 = (-u_xlat6) + 1.0;
					    u_xlat6 = u_xlat6 * _ProjectionParams.z;
					    u_xlat6 = max(u_xlat6, 0.0);
					    u_xlat6 = u_xlat6 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat6 = clamp(u_xlat6, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat6) * u_xlat0.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendMul" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat2.w = u_xlat3.x * vs_TEXCOORD4;
					    u_xlat1 = u_xlat2 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat2.w = u_xlat3.x * vs_TEXCOORD4;
					    u_xlat1 = u_xlat2 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendMul" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat3.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat1 = texture(_CameraDepthTexture, u_xlat3.xy);
					    u_xlat3.x = _ZBufferParams.z * u_xlat1.x + _ZBufferParams.w;
					    u_xlat3.x = float(1.0) / u_xlat3.x;
					    u_xlat3.x = u_xlat3.x + (-vs_TEXCOORD3.z);
					    u_xlat3.x = u_xlat3.x * _InvFade;
					    u_xlat3.x = clamp(u_xlat3.x, 0.0, 1.0);
					    u_xlat3.x = (-vs_COLOR0.w) * u_xlat3.x + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat1.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz * _TintColor.xyz;
					    u_xlat1.xyz = u_xlat1.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat3.x * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat3.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat1 = texture(_CameraDepthTexture, u_xlat3.xy);
					    u_xlat3.x = _ZBufferParams.z * u_xlat1.x + _ZBufferParams.w;
					    u_xlat3.x = float(1.0) / u_xlat3.x;
					    u_xlat3.x = u_xlat3.x + (-vs_TEXCOORD3.z);
					    u_xlat3.x = u_xlat3.x * _InvFade;
					    u_xlat3.x = clamp(u_xlat3.x, 0.0, 1.0);
					    u_xlat3.x = (-vs_COLOR0.w) * u_xlat3.x + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat1.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz * _TintColor.xyz;
					    u_xlat1.xyz = u_xlat1.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat3.x * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendMul" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat2.w = u_xlat3.x * vs_TEXCOORD4;
					    u_xlat1 = u_xlat2 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat2.w = u_xlat3.x * vs_TEXCOORD4;
					    u_xlat1 = u_xlat2 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendMul" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat3.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat1 = texture(_CameraDepthTexture, u_xlat3.xy);
					    u_xlat3.x = _ZBufferParams.z * u_xlat1.x + _ZBufferParams.w;
					    u_xlat3.x = float(1.0) / u_xlat3.x;
					    u_xlat3.x = u_xlat3.x + (-vs_TEXCOORD3.z);
					    u_xlat3.x = u_xlat3.x * _InvFade;
					    u_xlat3.x = clamp(u_xlat3.x, 0.0, 1.0);
					    u_xlat3.x = (-vs_COLOR0.w) * u_xlat3.x + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat1.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz * _TintColor.xyz;
					    u_xlat1.xyz = u_xlat1.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat3.x * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat3.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat1 = texture(_CameraDepthTexture, u_xlat3.xy);
					    u_xlat3.x = _ZBufferParams.z * u_xlat1.x + _ZBufferParams.w;
					    u_xlat3.x = float(1.0) / u_xlat3.x;
					    u_xlat3.x = u_xlat3.x + (-vs_TEXCOORD3.z);
					    u_xlat3.x = u_xlat3.x * _InvFade;
					    u_xlat3.x = clamp(u_xlat3.x, 0.0, 1.0);
					    u_xlat3.x = (-vs_COLOR0.w) * u_xlat3.x + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat1.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz * _TintColor.xyz;
					    u_xlat1.xyz = u_xlat1.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat3.x * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendMul" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[7];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb0 = u_xlat1.w>=u_xlat0.x;
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    u_xlat1.xyz = u_xlat2.xyz * vs_COLOR0.xyz;
					    u_xlat0.x = u_xlatb0 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat0.x * vs_TEXCOORD4;
					    u_xlat0 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    SV_Target0 = u_xlat1.wwww * u_xlat0 + vec4(1.0, 1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[6];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb0 = u_xlat1.w>=u_xlat0.x;
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    u_xlat1.xyz = u_xlat2.xyz * vs_COLOR0.xyz;
					    u_xlat0.x = u_xlatb0 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat0.x * vs_TEXCOORD4;
					    u_xlat0 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    SV_Target0 = u_xlat1.wwww * u_xlat0 + vec4(1.0, 1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendMul" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[7];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb0 = u_xlat1.w>=u_xlat0.x;
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    u_xlat1.xyz = u_xlat2.xyz * vs_COLOR0.xyz;
					    u_xlat0.x = u_xlatb0 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat0.x * vs_TEXCOORD4;
					    u_xlat0 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    SV_Target0 = u_xlat1.wwww * u_xlat0 + vec4(1.0, 1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[6];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb0 = u_xlat1.w>=u_xlat0.x;
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    u_xlat1.xyz = u_xlat2.xyz * vs_COLOR0.xyz;
					    u_xlat0.x = u_xlatb0 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat0.x * vs_TEXCOORD4;
					    u_xlat0 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    SV_Target0 = u_xlat1.wwww * u_xlat0 + vec4(1.0, 1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendMul" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					float u_xlat6;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb0 = u_xlat1.w>=u_xlat0.x;
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    u_xlat1.xyz = u_xlat2.xyz * vs_COLOR0.xyz;
					    u_xlat0.x = u_xlatb0 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat0.x * vs_TEXCOORD4;
					    u_xlat0 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat0.xyz = u_xlat0.xyz * u_xlat1.www;
					    SV_Target0.w = u_xlat1.w * u_xlat0.w + 1.0;
					    u_xlat6 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat6 = (-u_xlat6) + 1.0;
					    u_xlat6 = u_xlat6 * _ProjectionParams.z;
					    u_xlat6 = max(u_xlat6, 0.0);
					    u_xlat6 = u_xlat6 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat6 = clamp(u_xlat6, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat6) * u_xlat0.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					float u_xlat6;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb0 = u_xlat1.w>=u_xlat0.x;
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    u_xlat1.xyz = u_xlat2.xyz * vs_COLOR0.xyz;
					    u_xlat0.x = u_xlatb0 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat0.x * vs_TEXCOORD4;
					    u_xlat0 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat0.xyz = u_xlat0.xyz * u_xlat1.www;
					    SV_Target0.w = u_xlat1.w * u_xlat0.w + 1.0;
					    u_xlat6 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat6 = (-u_xlat6) + 1.0;
					    u_xlat6 = u_xlat6 * _ProjectionParams.z;
					    u_xlat6 = max(u_xlat6, 0.0);
					    u_xlat6 = u_xlat6 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat6 = clamp(u_xlat6, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat6) * u_xlat0.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendMul" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					float u_xlat6;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb0 = u_xlat1.w>=u_xlat0.x;
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    u_xlat1.xyz = u_xlat2.xyz * vs_COLOR0.xyz;
					    u_xlat0.x = u_xlatb0 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat0.x * vs_TEXCOORD4;
					    u_xlat0 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat0.xyz = u_xlat0.xyz * u_xlat1.www;
					    SV_Target0.w = u_xlat1.w * u_xlat0.w + 1.0;
					    u_xlat6 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat6 = (-u_xlat6) + 1.0;
					    u_xlat6 = u_xlat6 * _ProjectionParams.z;
					    u_xlat6 = max(u_xlat6, 0.0);
					    u_xlat6 = u_xlat6 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat6 = clamp(u_xlat6, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat6) * u_xlat0.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					float u_xlat6;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb0 = u_xlat1.w>=u_xlat0.x;
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    u_xlat1.xyz = u_xlat2.xyz * vs_COLOR0.xyz;
					    u_xlat0.x = u_xlatb0 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat0.x * vs_TEXCOORD4;
					    u_xlat0 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat0.xyz = u_xlat0.xyz * u_xlat1.www;
					    SV_Target0.w = u_xlat1.w * u_xlat0.w + 1.0;
					    u_xlat6 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat6 = (-u_xlat6) + 1.0;
					    u_xlat6 = u_xlat6 * _ProjectionParams.z;
					    u_xlat6 = max(u_xlat6, 0.0);
					    u_xlat6 = u_xlat6 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat6 = clamp(u_xlat6, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat6) * u_xlat0.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendMul" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat3.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat1 = texture(_CameraDepthTexture, u_xlat3.xy);
					    u_xlat3.x = _ZBufferParams.z * u_xlat1.x + _ZBufferParams.w;
					    u_xlat3.x = float(1.0) / u_xlat3.x;
					    u_xlat3.x = u_xlat3.x + (-vs_TEXCOORD3.z);
					    u_xlat3.x = u_xlat3.x * _InvFade;
					    u_xlat3.x = clamp(u_xlat3.x, 0.0, 1.0);
					    u_xlat3.x = (-vs_COLOR0.w) * u_xlat3.x + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat1.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz * _TintColor.xyz;
					    u_xlat1.xyz = u_xlat1.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat3.x * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat3.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat1 = texture(_CameraDepthTexture, u_xlat3.xy);
					    u_xlat3.x = _ZBufferParams.z * u_xlat1.x + _ZBufferParams.w;
					    u_xlat3.x = float(1.0) / u_xlat3.x;
					    u_xlat3.x = u_xlat3.x + (-vs_TEXCOORD3.z);
					    u_xlat3.x = u_xlat3.x * _InvFade;
					    u_xlat3.x = clamp(u_xlat3.x, 0.0, 1.0);
					    u_xlat3.x = (-vs_COLOR0.w) * u_xlat3.x + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat1.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz * _TintColor.xyz;
					    u_xlat1.xyz = u_xlat1.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat3.x * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendMul" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat3.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat1 = texture(_CameraDepthTexture, u_xlat3.xy);
					    u_xlat3.x = _ZBufferParams.z * u_xlat1.x + _ZBufferParams.w;
					    u_xlat3.x = float(1.0) / u_xlat3.x;
					    u_xlat3.x = u_xlat3.x + (-vs_TEXCOORD3.z);
					    u_xlat3.x = u_xlat3.x * _InvFade;
					    u_xlat3.x = clamp(u_xlat3.x, 0.0, 1.0);
					    u_xlat3.x = (-vs_COLOR0.w) * u_xlat3.x + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat1.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz * _TintColor.xyz;
					    u_xlat1.xyz = u_xlat1.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat3.x * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat3.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat1 = texture(_CameraDepthTexture, u_xlat3.xy);
					    u_xlat3.x = _ZBufferParams.z * u_xlat1.x + _ZBufferParams.w;
					    u_xlat3.x = float(1.0) / u_xlat3.x;
					    u_xlat3.x = u_xlat3.x + (-vs_TEXCOORD3.z);
					    u_xlat3.x = u_xlat3.x * _InvFade;
					    u_xlat3.x = clamp(u_xlat3.x, 0.0, 1.0);
					    u_xlat3.x = (-vs_COLOR0.w) * u_xlat3.x + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat1.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz * _TintColor.xyz;
					    u_xlat1.xyz = u_xlat1.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat3.x * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendMul" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat3.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat1 = texture(_CameraDepthTexture, u_xlat3.xy);
					    u_xlat3.x = _ZBufferParams.z * u_xlat1.x + _ZBufferParams.w;
					    u_xlat3.x = float(1.0) / u_xlat3.x;
					    u_xlat3.x = u_xlat3.x + (-vs_TEXCOORD3.z);
					    u_xlat3.x = u_xlat3.x * _InvFade;
					    u_xlat3.x = clamp(u_xlat3.x, 0.0, 1.0);
					    u_xlat3.x = (-vs_COLOR0.w) * u_xlat3.x + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat1.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz * _TintColor.xyz;
					    u_xlat1.xyz = u_xlat1.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat3.x * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat3.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat1 = texture(_CameraDepthTexture, u_xlat3.xy);
					    u_xlat3.x = _ZBufferParams.z * u_xlat1.x + _ZBufferParams.w;
					    u_xlat3.x = float(1.0) / u_xlat3.x;
					    u_xlat3.x = u_xlat3.x + (-vs_TEXCOORD3.z);
					    u_xlat3.x = u_xlat3.x * _InvFade;
					    u_xlat3.x = clamp(u_xlat3.x, 0.0, 1.0);
					    u_xlat3.x = (-vs_COLOR0.w) * u_xlat3.x + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat1.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz * _TintColor.xyz;
					    u_xlat1.xyz = u_xlat1.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat3.x * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendMul" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat3.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat1 = texture(_CameraDepthTexture, u_xlat3.xy);
					    u_xlat3.x = _ZBufferParams.z * u_xlat1.x + _ZBufferParams.w;
					    u_xlat3.x = float(1.0) / u_xlat3.x;
					    u_xlat3.x = u_xlat3.x + (-vs_TEXCOORD3.z);
					    u_xlat3.x = u_xlat3.x * _InvFade;
					    u_xlat3.x = clamp(u_xlat3.x, 0.0, 1.0);
					    u_xlat3.x = (-vs_COLOR0.w) * u_xlat3.x + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat1.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz * _TintColor.xyz;
					    u_xlat1.xyz = u_xlat1.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat3.x * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat3.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat1 = texture(_CameraDepthTexture, u_xlat3.xy);
					    u_xlat3.x = _ZBufferParams.z * u_xlat1.x + _ZBufferParams.w;
					    u_xlat3.x = float(1.0) / u_xlat3.x;
					    u_xlat3.x = u_xlat3.x + (-vs_TEXCOORD3.z);
					    u_xlat3.x = u_xlat3.x * _InvFade;
					    u_xlat3.x = clamp(u_xlat3.x, 0.0, 1.0);
					    u_xlat3.x = (-vs_COLOR0.w) * u_xlat3.x + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat1.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz * _TintColor.xyz;
					    u_xlat1.xyz = u_xlat1.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat3.x * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendMul" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat0 = u_xlat0 * vs_COLOR0;
					    u_xlat0.w = u_xlat0.w;
					    u_xlat0.w = clamp(u_xlat0.w, 0.0, 1.0);
					    u_xlat1 = u_xlat0 + vec4(-1.0, -1.0, -1.0, -1.0);
					    SV_Target0 = u_xlat0.wwww * u_xlat1 + vec4(1.0, 1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat0 = u_xlat0 * vs_COLOR0;
					    u_xlat0.w = u_xlat0.w;
					    u_xlat0.w = clamp(u_xlat0.w, 0.0, 1.0);
					    u_xlat1 = u_xlat0 + vec4(-1.0, -1.0, -1.0, -1.0);
					    SV_Target0 = u_xlat0.wwww * u_xlat1 + vec4(1.0, 1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendMul" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat0 = u_xlat0 * vs_COLOR0;
					    u_xlat0.w = u_xlat0.w;
					    u_xlat0.w = clamp(u_xlat0.w, 0.0, 1.0);
					    u_xlat1 = u_xlat0 + vec4(-1.0, -1.0, -1.0, -1.0);
					    SV_Target0 = u_xlat0.wwww * u_xlat1 + vec4(1.0, 1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat0 = u_xlat0 * vs_COLOR0;
					    u_xlat0.w = u_xlat0.w;
					    u_xlat0.w = clamp(u_xlat0.w, 0.0, 1.0);
					    u_xlat1 = u_xlat0 + vec4(-1.0, -1.0, -1.0, -1.0);
					    SV_Target0 = u_xlat0.wwww * u_xlat1 + vec4(1.0, 1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendMul" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendMul" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendMul" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendMul" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendMul" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendMul" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendMul" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat0 = u_xlat0 * vs_COLOR0;
					    u_xlat0.w = u_xlat0.w;
					    u_xlat0.w = clamp(u_xlat0.w, 0.0, 1.0);
					    u_xlat1 = u_xlat0 + vec4(-1.0, -1.0, -1.0, -1.0);
					    SV_Target0 = u_xlat0.wwww * u_xlat1 + vec4(1.0, 1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat0 = u_xlat0 * vs_COLOR0;
					    u_xlat0.w = u_xlat0.w;
					    u_xlat0.w = clamp(u_xlat0.w, 0.0, 1.0);
					    u_xlat1 = u_xlat0 + vec4(-1.0, -1.0, -1.0, -1.0);
					    SV_Target0 = u_xlat0.wwww * u_xlat1 + vec4(1.0, 1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendMul" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat0 = u_xlat0 * vs_COLOR0;
					    u_xlat0.w = u_xlat0.w;
					    u_xlat0.w = clamp(u_xlat0.w, 0.0, 1.0);
					    u_xlat1 = u_xlat0 + vec4(-1.0, -1.0, -1.0, -1.0);
					    SV_Target0 = u_xlat0.wwww * u_xlat1 + vec4(1.0, 1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat0 = u_xlat0 * vs_COLOR0;
					    u_xlat0.w = u_xlat0.w;
					    u_xlat0.w = clamp(u_xlat0.w, 0.0, 1.0);
					    u_xlat1 = u_xlat0 + vec4(-1.0, -1.0, -1.0, -1.0);
					    SV_Target0 = u_xlat0.wwww * u_xlat1 + vec4(1.0, 1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendMul" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendMul" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendMul" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendMul" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendMul" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendMul" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendMul" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat6;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat0 = u_xlat0 * vs_COLOR0;
					    u_xlat6 = u_xlat0.w;
					    u_xlat6 = clamp(u_xlat6, 0.0, 1.0);
					    u_xlat0.w = u_xlat6 * vs_TEXCOORD4;
					    u_xlat1 = u_xlat0 + vec4(-1.0, -1.0, -1.0, -1.0);
					    SV_Target0 = u_xlat0.wwww * u_xlat1 + vec4(1.0, 1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat6;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat0 = u_xlat0 * vs_COLOR0;
					    u_xlat6 = u_xlat0.w;
					    u_xlat6 = clamp(u_xlat6, 0.0, 1.0);
					    u_xlat0.w = u_xlat6 * vs_TEXCOORD4;
					    u_xlat1 = u_xlat0 + vec4(-1.0, -1.0, -1.0, -1.0);
					    SV_Target0 = u_xlat0.wwww * u_xlat1 + vec4(1.0, 1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendMul" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat6;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat0 = u_xlat0 * vs_COLOR0;
					    u_xlat6 = u_xlat0.w;
					    u_xlat6 = clamp(u_xlat6, 0.0, 1.0);
					    u_xlat0.w = u_xlat6 * vs_TEXCOORD4;
					    u_xlat1 = u_xlat0 + vec4(-1.0, -1.0, -1.0, -1.0);
					    SV_Target0 = u_xlat0.wwww * u_xlat1 + vec4(1.0, 1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat6;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat0 = u_xlat0 * vs_COLOR0;
					    u_xlat6 = u_xlat0.w;
					    u_xlat6 = clamp(u_xlat6, 0.0, 1.0);
					    u_xlat0.w = u_xlat6 * vs_TEXCOORD4;
					    u_xlat1 = u_xlat0 + vec4(-1.0, -1.0, -1.0, -1.0);
					    SV_Target0 = u_xlat0.wwww * u_xlat1 + vec4(1.0, 1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendMul" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendMul" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendMul" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendMul" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendMul" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendMul" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendMul" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat6;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat0 = u_xlat0 * vs_COLOR0;
					    u_xlat6 = u_xlat0.w;
					    u_xlat6 = clamp(u_xlat6, 0.0, 1.0);
					    u_xlat0.w = u_xlat6 * vs_TEXCOORD4;
					    u_xlat1 = u_xlat0 + vec4(-1.0, -1.0, -1.0, -1.0);
					    SV_Target0 = u_xlat0.wwww * u_xlat1 + vec4(1.0, 1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat6;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat0 = u_xlat0 * vs_COLOR0;
					    u_xlat6 = u_xlat0.w;
					    u_xlat6 = clamp(u_xlat6, 0.0, 1.0);
					    u_xlat0.w = u_xlat6 * vs_TEXCOORD4;
					    u_xlat1 = u_xlat0 + vec4(-1.0, -1.0, -1.0, -1.0);
					    SV_Target0 = u_xlat0.wwww * u_xlat1 + vec4(1.0, 1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendMul" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat6;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat0 = u_xlat0 * vs_COLOR0;
					    u_xlat6 = u_xlat0.w;
					    u_xlat6 = clamp(u_xlat6, 0.0, 1.0);
					    u_xlat0.w = u_xlat6 * vs_TEXCOORD4;
					    u_xlat1 = u_xlat0 + vec4(-1.0, -1.0, -1.0, -1.0);
					    SV_Target0 = u_xlat0.wwww * u_xlat1 + vec4(1.0, 1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat6;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat0 = u_xlat0 * vs_COLOR0;
					    u_xlat6 = u_xlat0.w;
					    u_xlat6 = clamp(u_xlat6, 0.0, 1.0);
					    u_xlat0.w = u_xlat6 * vs_TEXCOORD4;
					    u_xlat1 = u_xlat0 + vec4(-1.0, -1.0, -1.0, -1.0);
					    SV_Target0 = u_xlat0.wwww * u_xlat1 + vec4(1.0, 1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendMul" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendMul" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendMul" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendMul" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendMul" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendMul" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendMul" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					bool u_xlatb1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1.x = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat0.w = u_xlat0.w * u_xlat1.x;
					    u_xlat0 = u_xlat0 * vs_COLOR0;
					    u_xlat0.w = u_xlat0.w;
					    u_xlat0.w = clamp(u_xlat0.w, 0.0, 1.0);
					    u_xlat1 = u_xlat0 + vec4(-1.0, -1.0, -1.0, -1.0);
					    SV_Target0 = u_xlat0.wwww * u_xlat1 + vec4(1.0, 1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					bool u_xlatb1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1.x = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat0.w = u_xlat0.w * u_xlat1.x;
					    u_xlat0 = u_xlat0 * vs_COLOR0;
					    u_xlat0.w = u_xlat0.w;
					    u_xlat0.w = clamp(u_xlat0.w, 0.0, 1.0);
					    u_xlat1 = u_xlat0 + vec4(-1.0, -1.0, -1.0, -1.0);
					    SV_Target0 = u_xlat0.wwww * u_xlat1 + vec4(1.0, 1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendMul" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					bool u_xlatb1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1.x = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat0.w = u_xlat0.w * u_xlat1.x;
					    u_xlat0 = u_xlat0 * vs_COLOR0;
					    u_xlat0.w = u_xlat0.w;
					    u_xlat0.w = clamp(u_xlat0.w, 0.0, 1.0);
					    u_xlat1 = u_xlat0 + vec4(-1.0, -1.0, -1.0, -1.0);
					    SV_Target0 = u_xlat0.wwww * u_xlat1 + vec4(1.0, 1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					bool u_xlatb1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1.x = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat0.w = u_xlat0.w * u_xlat1.x;
					    u_xlat0 = u_xlat0 * vs_COLOR0;
					    u_xlat0.w = u_xlat0.w;
					    u_xlat0.w = clamp(u_xlat0.w, 0.0, 1.0);
					    u_xlat1 = u_xlat0 + vec4(-1.0, -1.0, -1.0, -1.0);
					    SV_Target0 = u_xlat0.wwww * u_xlat1 + vec4(1.0, 1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendMul" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3.x;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3.x;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendMul" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3.x;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3.x;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendMul" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3.x;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3.x;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendMul" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3.x;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3.x;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendMul" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3.x;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3.x;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendMul" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3.x;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3.x;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendMul" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					bool u_xlatb1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1.x = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat0.w = u_xlat0.w * u_xlat1.x;
					    u_xlat0 = u_xlat0 * vs_COLOR0;
					    u_xlat0.w = u_xlat0.w;
					    u_xlat0.w = clamp(u_xlat0.w, 0.0, 1.0);
					    u_xlat1 = u_xlat0 + vec4(-1.0, -1.0, -1.0, -1.0);
					    SV_Target0 = u_xlat0.wwww * u_xlat1 + vec4(1.0, 1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					bool u_xlatb1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1.x = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat0.w = u_xlat0.w * u_xlat1.x;
					    u_xlat0 = u_xlat0 * vs_COLOR0;
					    u_xlat0.w = u_xlat0.w;
					    u_xlat0.w = clamp(u_xlat0.w, 0.0, 1.0);
					    u_xlat1 = u_xlat0 + vec4(-1.0, -1.0, -1.0, -1.0);
					    SV_Target0 = u_xlat0.wwww * u_xlat1 + vec4(1.0, 1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendMul" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					bool u_xlatb1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1.x = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat0.w = u_xlat0.w * u_xlat1.x;
					    u_xlat0 = u_xlat0 * vs_COLOR0;
					    u_xlat0.w = u_xlat0.w;
					    u_xlat0.w = clamp(u_xlat0.w, 0.0, 1.0);
					    u_xlat1 = u_xlat0 + vec4(-1.0, -1.0, -1.0, -1.0);
					    SV_Target0 = u_xlat0.wwww * u_xlat1 + vec4(1.0, 1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					bool u_xlatb1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1.x = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat0.w = u_xlat0.w * u_xlat1.x;
					    u_xlat0 = u_xlat0 * vs_COLOR0;
					    u_xlat0.w = u_xlat0.w;
					    u_xlat0.w = clamp(u_xlat0.w, 0.0, 1.0);
					    u_xlat1 = u_xlat0 + vec4(-1.0, -1.0, -1.0, -1.0);
					    SV_Target0 = u_xlat0.wwww * u_xlat1 + vec4(1.0, 1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendMul" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3.x;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3.x;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendMul" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3.x;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3.x;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendMul" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3.x;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3.x;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendMul" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3.x;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3.x;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendMul" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3.x;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3.x;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendMul" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3.x;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3.x;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendMul" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					bool u_xlatb1;
					float u_xlat6;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1.x = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat0.w = u_xlat0.w * u_xlat1.x;
					    u_xlat0 = u_xlat0 * vs_COLOR0;
					    u_xlat6 = u_xlat0.w;
					    u_xlat6 = clamp(u_xlat6, 0.0, 1.0);
					    u_xlat0.w = u_xlat6 * vs_TEXCOORD4;
					    u_xlat1 = u_xlat0 + vec4(-1.0, -1.0, -1.0, -1.0);
					    SV_Target0 = u_xlat0.wwww * u_xlat1 + vec4(1.0, 1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					bool u_xlatb1;
					float u_xlat6;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1.x = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat0.w = u_xlat0.w * u_xlat1.x;
					    u_xlat0 = u_xlat0 * vs_COLOR0;
					    u_xlat6 = u_xlat0.w;
					    u_xlat6 = clamp(u_xlat6, 0.0, 1.0);
					    u_xlat0.w = u_xlat6 * vs_TEXCOORD4;
					    u_xlat1 = u_xlat0 + vec4(-1.0, -1.0, -1.0, -1.0);
					    SV_Target0 = u_xlat0.wwww * u_xlat1 + vec4(1.0, 1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendMul" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					bool u_xlatb1;
					float u_xlat6;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1.x = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat0.w = u_xlat0.w * u_xlat1.x;
					    u_xlat0 = u_xlat0 * vs_COLOR0;
					    u_xlat6 = u_xlat0.w;
					    u_xlat6 = clamp(u_xlat6, 0.0, 1.0);
					    u_xlat0.w = u_xlat6 * vs_TEXCOORD4;
					    u_xlat1 = u_xlat0 + vec4(-1.0, -1.0, -1.0, -1.0);
					    SV_Target0 = u_xlat0.wwww * u_xlat1 + vec4(1.0, 1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					bool u_xlatb1;
					float u_xlat6;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1.x = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat0.w = u_xlat0.w * u_xlat1.x;
					    u_xlat0 = u_xlat0 * vs_COLOR0;
					    u_xlat6 = u_xlat0.w;
					    u_xlat6 = clamp(u_xlat6, 0.0, 1.0);
					    u_xlat0.w = u_xlat6 * vs_TEXCOORD4;
					    u_xlat1 = u_xlat0 + vec4(-1.0, -1.0, -1.0, -1.0);
					    SV_Target0 = u_xlat0.wwww * u_xlat1 + vec4(1.0, 1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendMul" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3.x;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3.x;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendMul" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3.x;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3.x;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendMul" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3.x;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3.x;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendMul" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3.x;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3.x;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendMul" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3.x;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3.x;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendMul" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3.x;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3.x;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendMul" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					bool u_xlatb1;
					float u_xlat6;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1.x = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat0.w = u_xlat0.w * u_xlat1.x;
					    u_xlat0 = u_xlat0 * vs_COLOR0;
					    u_xlat6 = u_xlat0.w;
					    u_xlat6 = clamp(u_xlat6, 0.0, 1.0);
					    u_xlat0.w = u_xlat6 * vs_TEXCOORD4;
					    u_xlat1 = u_xlat0 + vec4(-1.0, -1.0, -1.0, -1.0);
					    SV_Target0 = u_xlat0.wwww * u_xlat1 + vec4(1.0, 1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					bool u_xlatb1;
					float u_xlat6;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1.x = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat0.w = u_xlat0.w * u_xlat1.x;
					    u_xlat0 = u_xlat0 * vs_COLOR0;
					    u_xlat6 = u_xlat0.w;
					    u_xlat6 = clamp(u_xlat6, 0.0, 1.0);
					    u_xlat0.w = u_xlat6 * vs_TEXCOORD4;
					    u_xlat1 = u_xlat0 + vec4(-1.0, -1.0, -1.0, -1.0);
					    SV_Target0 = u_xlat0.wwww * u_xlat1 + vec4(1.0, 1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendMul" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					bool u_xlatb1;
					float u_xlat6;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1.x = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat0.w = u_xlat0.w * u_xlat1.x;
					    u_xlat0 = u_xlat0 * vs_COLOR0;
					    u_xlat6 = u_xlat0.w;
					    u_xlat6 = clamp(u_xlat6, 0.0, 1.0);
					    u_xlat0.w = u_xlat6 * vs_TEXCOORD4;
					    u_xlat1 = u_xlat0 + vec4(-1.0, -1.0, -1.0, -1.0);
					    SV_Target0 = u_xlat0.wwww * u_xlat1 + vec4(1.0, 1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					bool u_xlatb1;
					float u_xlat6;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1.x = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat0.w = u_xlat0.w * u_xlat1.x;
					    u_xlat0 = u_xlat0 * vs_COLOR0;
					    u_xlat6 = u_xlat0.w;
					    u_xlat6 = clamp(u_xlat6, 0.0, 1.0);
					    u_xlat0.w = u_xlat6 * vs_TEXCOORD4;
					    u_xlat1 = u_xlat0 + vec4(-1.0, -1.0, -1.0, -1.0);
					    SV_Target0 = u_xlat0.wwww * u_xlat1 + vec4(1.0, 1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendMul" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3.x;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3.x;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendMul" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3.x;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3.x;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendMul" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3.x;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3.x;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendMul" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3.x;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3.x;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendMul" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3.x;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3.x;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendMul" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3.x;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3.x;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendMul" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlat0.xyz = u_xlat0.xyz + u_xlat0.xyz;
					    u_xlat0.xyz = u_xlat0.xyz * _TintColor.xyz;
					    u_xlat1.xyz = u_xlat0.xyz * vs_COLOR0.xyz;
					    u_xlat0.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlatb0 = u_xlat0.w>=u_xlat0.x;
					    u_xlat1.w = u_xlatb0 ? 1.0 : float(0.0);
					    u_xlat0 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    SV_Target0 = u_xlat1.wwww * u_xlat0 + vec4(1.0, 1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlat0.xyz = u_xlat0.xyz + u_xlat0.xyz;
					    u_xlat0.xyz = u_xlat0.xyz * _TintColor.xyz;
					    u_xlat1.xyz = u_xlat0.xyz * vs_COLOR0.xyz;
					    u_xlat0.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlatb0 = u_xlat0.w>=u_xlat0.x;
					    u_xlat1.w = u_xlatb0 ? 1.0 : float(0.0);
					    u_xlat0 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    SV_Target0 = u_xlat1.wwww * u_xlat0 + vec4(1.0, 1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendMul" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlat0.xyz = u_xlat0.xyz + u_xlat0.xyz;
					    u_xlat0.xyz = u_xlat0.xyz * _TintColor.xyz;
					    u_xlat1.xyz = u_xlat0.xyz * vs_COLOR0.xyz;
					    u_xlat0.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlatb0 = u_xlat0.w>=u_xlat0.x;
					    u_xlat1.w = u_xlatb0 ? 1.0 : float(0.0);
					    u_xlat0 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    SV_Target0 = u_xlat1.wwww * u_xlat0 + vec4(1.0, 1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlat0.xyz = u_xlat0.xyz + u_xlat0.xyz;
					    u_xlat0.xyz = u_xlat0.xyz * _TintColor.xyz;
					    u_xlat1.xyz = u_xlat0.xyz * vs_COLOR0.xyz;
					    u_xlat0.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlatb0 = u_xlat0.w>=u_xlat0.x;
					    u_xlat1.w = u_xlatb0 ? 1.0 : float(0.0);
					    u_xlat0 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    SV_Target0 = u_xlat1.wwww * u_xlat0 + vec4(1.0, 1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendMul" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat2.w = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1 = u_xlat2 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat2.w = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1 = u_xlat2 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendMul" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat2.w = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1 = u_xlat2 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat2.w = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1 = u_xlat2 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendMul" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat2.w = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1 = u_xlat2 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat2.w = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1 = u_xlat2 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendMul" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat2.w = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1 = u_xlat2 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat2.w = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1 = u_xlat2 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendMul" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat2.w = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1 = u_xlat2 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat2.w = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1 = u_xlat2 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendMul" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat2.w = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1 = u_xlat2 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat2.w = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1 = u_xlat2 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendMul" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlat0.xyz = u_xlat0.xyz + u_xlat0.xyz;
					    u_xlat0.xyz = u_xlat0.xyz * _TintColor.xyz;
					    u_xlat1.xyz = u_xlat0.xyz * vs_COLOR0.xyz;
					    u_xlat0.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlatb0 = u_xlat0.w>=u_xlat0.x;
					    u_xlat1.w = u_xlatb0 ? 1.0 : float(0.0);
					    u_xlat0 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    SV_Target0 = u_xlat1.wwww * u_xlat0 + vec4(1.0, 1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlat0.xyz = u_xlat0.xyz + u_xlat0.xyz;
					    u_xlat0.xyz = u_xlat0.xyz * _TintColor.xyz;
					    u_xlat1.xyz = u_xlat0.xyz * vs_COLOR0.xyz;
					    u_xlat0.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlatb0 = u_xlat0.w>=u_xlat0.x;
					    u_xlat1.w = u_xlatb0 ? 1.0 : float(0.0);
					    u_xlat0 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    SV_Target0 = u_xlat1.wwww * u_xlat0 + vec4(1.0, 1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendMul" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlat0.xyz = u_xlat0.xyz + u_xlat0.xyz;
					    u_xlat0.xyz = u_xlat0.xyz * _TintColor.xyz;
					    u_xlat1.xyz = u_xlat0.xyz * vs_COLOR0.xyz;
					    u_xlat0.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlatb0 = u_xlat0.w>=u_xlat0.x;
					    u_xlat1.w = u_xlatb0 ? 1.0 : float(0.0);
					    u_xlat0 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    SV_Target0 = u_xlat1.wwww * u_xlat0 + vec4(1.0, 1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlat0.xyz = u_xlat0.xyz + u_xlat0.xyz;
					    u_xlat0.xyz = u_xlat0.xyz * _TintColor.xyz;
					    u_xlat1.xyz = u_xlat0.xyz * vs_COLOR0.xyz;
					    u_xlat0.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlatb0 = u_xlat0.w>=u_xlat0.x;
					    u_xlat1.w = u_xlatb0 ? 1.0 : float(0.0);
					    u_xlat0 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    SV_Target0 = u_xlat1.wwww * u_xlat0 + vec4(1.0, 1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendMul" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat2.w = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1 = u_xlat2 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat2.w = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1 = u_xlat2 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendMul" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat2.w = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1 = u_xlat2 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat2.w = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1 = u_xlat2 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendMul" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat2.w = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1 = u_xlat2 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat2.w = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1 = u_xlat2 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendMul" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat2.w = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1 = u_xlat2 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat2.w = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1 = u_xlat2 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendMul" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat2.w = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1 = u_xlat2 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat2.w = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1 = u_xlat2 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendMul" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat2.w = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1 = u_xlat2 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat2.w = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1 = u_xlat2 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendMul" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlat0.xyz = u_xlat0.xyz + u_xlat0.xyz;
					    u_xlat0.xyz = u_xlat0.xyz * _TintColor.xyz;
					    u_xlat1.xyz = u_xlat0.xyz * vs_COLOR0.xyz;
					    u_xlat0.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlatb0 = u_xlat0.w>=u_xlat0.x;
					    u_xlat0.x = u_xlatb0 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat0.x * vs_TEXCOORD4;
					    u_xlat0 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    SV_Target0 = u_xlat1.wwww * u_xlat0 + vec4(1.0, 1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlat0.xyz = u_xlat0.xyz + u_xlat0.xyz;
					    u_xlat0.xyz = u_xlat0.xyz * _TintColor.xyz;
					    u_xlat1.xyz = u_xlat0.xyz * vs_COLOR0.xyz;
					    u_xlat0.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlatb0 = u_xlat0.w>=u_xlat0.x;
					    u_xlat0.x = u_xlatb0 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat0.x * vs_TEXCOORD4;
					    u_xlat0 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    SV_Target0 = u_xlat1.wwww * u_xlat0 + vec4(1.0, 1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendMul" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlat0.xyz = u_xlat0.xyz + u_xlat0.xyz;
					    u_xlat0.xyz = u_xlat0.xyz * _TintColor.xyz;
					    u_xlat1.xyz = u_xlat0.xyz * vs_COLOR0.xyz;
					    u_xlat0.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlatb0 = u_xlat0.w>=u_xlat0.x;
					    u_xlat0.x = u_xlatb0 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat0.x * vs_TEXCOORD4;
					    u_xlat0 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    SV_Target0 = u_xlat1.wwww * u_xlat0 + vec4(1.0, 1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlat0.xyz = u_xlat0.xyz + u_xlat0.xyz;
					    u_xlat0.xyz = u_xlat0.xyz * _TintColor.xyz;
					    u_xlat1.xyz = u_xlat0.xyz * vs_COLOR0.xyz;
					    u_xlat0.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlatb0 = u_xlat0.w>=u_xlat0.x;
					    u_xlat0.x = u_xlatb0 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat0.x * vs_TEXCOORD4;
					    u_xlat0 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    SV_Target0 = u_xlat1.wwww * u_xlat0 + vec4(1.0, 1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendMul" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat2.w = u_xlat3.x * vs_TEXCOORD4;
					    u_xlat1 = u_xlat2 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat2.w = u_xlat3.x * vs_TEXCOORD4;
					    u_xlat1 = u_xlat2 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendMul" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat2.w = u_xlat3.x * vs_TEXCOORD4;
					    u_xlat1 = u_xlat2 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat2.w = u_xlat3.x * vs_TEXCOORD4;
					    u_xlat1 = u_xlat2 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendMul" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat2.w = u_xlat3.x * vs_TEXCOORD4;
					    u_xlat1 = u_xlat2 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat2.w = u_xlat3.x * vs_TEXCOORD4;
					    u_xlat1 = u_xlat2 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendMul" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat2.w = u_xlat3.x * vs_TEXCOORD4;
					    u_xlat1 = u_xlat2 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat2.w = u_xlat3.x * vs_TEXCOORD4;
					    u_xlat1 = u_xlat2 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendMul" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat2.w = u_xlat3.x * vs_TEXCOORD4;
					    u_xlat1 = u_xlat2 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat2.w = u_xlat3.x * vs_TEXCOORD4;
					    u_xlat1 = u_xlat2 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendMul" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat2.w = u_xlat3.x * vs_TEXCOORD4;
					    u_xlat1 = u_xlat2 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat2.w = u_xlat3.x * vs_TEXCOORD4;
					    u_xlat1 = u_xlat2 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendMul" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlat0.xyz = u_xlat0.xyz + u_xlat0.xyz;
					    u_xlat0.xyz = u_xlat0.xyz * _TintColor.xyz;
					    u_xlat1.xyz = u_xlat0.xyz * vs_COLOR0.xyz;
					    u_xlat0.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlatb0 = u_xlat0.w>=u_xlat0.x;
					    u_xlat0.x = u_xlatb0 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat0.x * vs_TEXCOORD4;
					    u_xlat0 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    SV_Target0 = u_xlat1.wwww * u_xlat0 + vec4(1.0, 1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlat0.xyz = u_xlat0.xyz + u_xlat0.xyz;
					    u_xlat0.xyz = u_xlat0.xyz * _TintColor.xyz;
					    u_xlat1.xyz = u_xlat0.xyz * vs_COLOR0.xyz;
					    u_xlat0.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlatb0 = u_xlat0.w>=u_xlat0.x;
					    u_xlat0.x = u_xlatb0 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat0.x * vs_TEXCOORD4;
					    u_xlat0 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    SV_Target0 = u_xlat1.wwww * u_xlat0 + vec4(1.0, 1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendMul" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlat0.xyz = u_xlat0.xyz + u_xlat0.xyz;
					    u_xlat0.xyz = u_xlat0.xyz * _TintColor.xyz;
					    u_xlat1.xyz = u_xlat0.xyz * vs_COLOR0.xyz;
					    u_xlat0.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlatb0 = u_xlat0.w>=u_xlat0.x;
					    u_xlat0.x = u_xlatb0 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat0.x * vs_TEXCOORD4;
					    u_xlat0 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    SV_Target0 = u_xlat1.wwww * u_xlat0 + vec4(1.0, 1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlat0.xyz = u_xlat0.xyz + u_xlat0.xyz;
					    u_xlat0.xyz = u_xlat0.xyz * _TintColor.xyz;
					    u_xlat1.xyz = u_xlat0.xyz * vs_COLOR0.xyz;
					    u_xlat0.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlatb0 = u_xlat0.w>=u_xlat0.x;
					    u_xlat0.x = u_xlatb0 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat0.x * vs_TEXCOORD4;
					    u_xlat0 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    SV_Target0 = u_xlat1.wwww * u_xlat0 + vec4(1.0, 1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendMul" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat2.w = u_xlat3.x * vs_TEXCOORD4;
					    u_xlat1 = u_xlat2 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat2.w = u_xlat3.x * vs_TEXCOORD4;
					    u_xlat1 = u_xlat2 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendMul" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat2.w = u_xlat3.x * vs_TEXCOORD4;
					    u_xlat1 = u_xlat2 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat2.w = u_xlat3.x * vs_TEXCOORD4;
					    u_xlat1 = u_xlat2 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendMul" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat2.w = u_xlat3.x * vs_TEXCOORD4;
					    u_xlat1 = u_xlat2 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat2.w = u_xlat3.x * vs_TEXCOORD4;
					    u_xlat1 = u_xlat2 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendMul" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat2.w = u_xlat3.x * vs_TEXCOORD4;
					    u_xlat1 = u_xlat2 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat2.w = u_xlat3.x * vs_TEXCOORD4;
					    u_xlat1 = u_xlat2 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendMul" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat2.w = u_xlat3.x * vs_TEXCOORD4;
					    u_xlat1 = u_xlat2 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat2.w = u_xlat3.x * vs_TEXCOORD4;
					    u_xlat1 = u_xlat2 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendMul" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat2.w = u_xlat3.x * vs_TEXCOORD4;
					    u_xlat1 = u_xlat2 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat2.w = u_xlat3.x * vs_TEXCOORD4;
					    u_xlat1 = u_xlat2 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendMul" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat0 = u_xlat0 * vs_COLOR0;
					    u_xlat0.w = u_xlat0.w;
					    u_xlat0.w = clamp(u_xlat0.w, 0.0, 1.0);
					    u_xlat1 = u_xlat0 + vec4(-1.0, -1.0, -1.0, -1.0);
					    SV_Target0 = u_xlat0.wwww * u_xlat1 + vec4(1.0, 1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat0 = u_xlat0 * vs_COLOR0;
					    u_xlat0.w = u_xlat0.w;
					    u_xlat0.w = clamp(u_xlat0.w, 0.0, 1.0);
					    u_xlat1 = u_xlat0 + vec4(-1.0, -1.0, -1.0, -1.0);
					    SV_Target0 = u_xlat0.wwww * u_xlat1 + vec4(1.0, 1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendMul" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[7];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat0.w = u_xlat0.w;
					    u_xlat0.w = clamp(u_xlat0.w, 0.0, 1.0);
					    u_xlat1 = u_xlat0 + vec4(-1.0, -1.0, -1.0, -1.0);
					    SV_Target0 = u_xlat0.wwww * u_xlat1 + vec4(1.0, 1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[6];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat0.w = u_xlat0.w;
					    u_xlat0.w = clamp(u_xlat0.w, 0.0, 1.0);
					    u_xlat1 = u_xlat0 + vec4(-1.0, -1.0, -1.0, -1.0);
					    SV_Target0 = u_xlat0.wwww * u_xlat1 + vec4(1.0, 1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendMul" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendMul" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					float u_xlat9;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat0.w = u_xlat0.w;
					    u_xlat0.w = clamp(u_xlat0.w, 0.0, 1.0);
					    u_xlat1 = u_xlat0 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat0.xyz = u_xlat0.www * u_xlat1.xyz;
					    SV_Target0.w = u_xlat0.w * u_xlat1.w + 1.0;
					    u_xlat9 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat9 = (-u_xlat9) + 1.0;
					    u_xlat9 = u_xlat9 * _ProjectionParams.z;
					    u_xlat9 = max(u_xlat9, 0.0);
					    u_xlat9 = u_xlat9 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat9 = clamp(u_xlat9, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat9) * u_xlat0.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					float u_xlat9;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat0.w = u_xlat0.w;
					    u_xlat0.w = clamp(u_xlat0.w, 0.0, 1.0);
					    u_xlat1 = u_xlat0 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat0.xyz = u_xlat0.www * u_xlat1.xyz;
					    SV_Target0.w = u_xlat0.w * u_xlat1.w + 1.0;
					    u_xlat9 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat9 = (-u_xlat9) + 1.0;
					    u_xlat9 = u_xlat9 * _ProjectionParams.z;
					    u_xlat9 = max(u_xlat9, 0.0);
					    u_xlat9 = u_xlat9 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat9 = clamp(u_xlat9, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat9) * u_xlat0.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendMul" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendMul" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec3 u_xlat4;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat4.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat1 = texture(_CameraDepthTexture, u_xlat4.xy);
					    u_xlat4.x = _ZBufferParams.z * u_xlat1.x + _ZBufferParams.w;
					    u_xlat4.x = float(1.0) / u_xlat4.x;
					    u_xlat4.x = u_xlat4.x + (-vs_TEXCOORD3.z);
					    u_xlat4.x = u_xlat4.x * _InvFade;
					    u_xlat4.x = clamp(u_xlat4.x, 0.0, 1.0);
					    u_xlat1.w = u_xlat4.x * vs_COLOR0.w;
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat3 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2 = u_xlat2 + (-u_xlat3);
					    u_xlat2 = vec4(vs_TEXCOORD1) * u_xlat2 + u_xlat3;
					    u_xlat2 = u_xlat2 + u_xlat2;
					    u_xlat2 = u_xlat2 * _TintColor;
					    u_xlat1.xyz = vs_COLOR0.xyz;
					    u_xlat1 = u_xlat1 * u_xlat2;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat4.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat4.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec3 u_xlat4;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat4.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat1 = texture(_CameraDepthTexture, u_xlat4.xy);
					    u_xlat4.x = _ZBufferParams.z * u_xlat1.x + _ZBufferParams.w;
					    u_xlat4.x = float(1.0) / u_xlat4.x;
					    u_xlat4.x = u_xlat4.x + (-vs_TEXCOORD3.z);
					    u_xlat4.x = u_xlat4.x * _InvFade;
					    u_xlat4.x = clamp(u_xlat4.x, 0.0, 1.0);
					    u_xlat1.w = u_xlat4.x * vs_COLOR0.w;
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat3 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2 = u_xlat2 + (-u_xlat3);
					    u_xlat2 = vec4(vs_TEXCOORD1) * u_xlat2 + u_xlat3;
					    u_xlat2 = u_xlat2 + u_xlat2;
					    u_xlat2 = u_xlat2 * _TintColor;
					    u_xlat1.xyz = vs_COLOR0.xyz;
					    u_xlat1 = u_xlat1 * u_xlat2;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat4.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat4.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendMul" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendMul" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec3 u_xlat4;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat4.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat1 = texture(_CameraDepthTexture, u_xlat4.xy);
					    u_xlat4.x = _ZBufferParams.z * u_xlat1.x + _ZBufferParams.w;
					    u_xlat4.x = float(1.0) / u_xlat4.x;
					    u_xlat4.x = u_xlat4.x + (-vs_TEXCOORD3.z);
					    u_xlat4.x = u_xlat4.x * _InvFade;
					    u_xlat4.x = clamp(u_xlat4.x, 0.0, 1.0);
					    u_xlat1.w = u_xlat4.x * vs_COLOR0.w;
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat3 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2 = u_xlat2 + (-u_xlat3);
					    u_xlat2 = vec4(vs_TEXCOORD1) * u_xlat2 + u_xlat3;
					    u_xlat2 = u_xlat2 + u_xlat2;
					    u_xlat2 = u_xlat2 * _TintColor;
					    u_xlat1.xyz = vs_COLOR0.xyz;
					    u_xlat1 = u_xlat1 * u_xlat2;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat4.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat4.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec3 u_xlat4;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat4.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat1 = texture(_CameraDepthTexture, u_xlat4.xy);
					    u_xlat4.x = _ZBufferParams.z * u_xlat1.x + _ZBufferParams.w;
					    u_xlat4.x = float(1.0) / u_xlat4.x;
					    u_xlat4.x = u_xlat4.x + (-vs_TEXCOORD3.z);
					    u_xlat4.x = u_xlat4.x * _InvFade;
					    u_xlat4.x = clamp(u_xlat4.x, 0.0, 1.0);
					    u_xlat1.w = u_xlat4.x * vs_COLOR0.w;
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat3 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2 = u_xlat2 + (-u_xlat3);
					    u_xlat2 = vec4(vs_TEXCOORD1) * u_xlat2 + u_xlat3;
					    u_xlat2 = u_xlat2 + u_xlat2;
					    u_xlat2 = u_xlat2 * _TintColor;
					    u_xlat1.xyz = vs_COLOR0.xyz;
					    u_xlat1 = u_xlat1 * u_xlat2;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat4.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat4.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendMul" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[7];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat0.w = u_xlat0.w;
					    u_xlat0.w = clamp(u_xlat0.w, 0.0, 1.0);
					    u_xlat1 = u_xlat0 + vec4(-1.0, -1.0, -1.0, -1.0);
					    SV_Target0 = u_xlat0.wwww * u_xlat1 + vec4(1.0, 1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[6];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat0.w = u_xlat0.w;
					    u_xlat0.w = clamp(u_xlat0.w, 0.0, 1.0);
					    u_xlat1 = u_xlat0 + vec4(-1.0, -1.0, -1.0, -1.0);
					    SV_Target0 = u_xlat0.wwww * u_xlat1 + vec4(1.0, 1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendMul" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[7];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat0.w = u_xlat0.w;
					    u_xlat0.w = clamp(u_xlat0.w, 0.0, 1.0);
					    u_xlat1 = u_xlat0 + vec4(-1.0, -1.0, -1.0, -1.0);
					    SV_Target0 = u_xlat0.wwww * u_xlat1 + vec4(1.0, 1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[6];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat0.w = u_xlat0.w;
					    u_xlat0.w = clamp(u_xlat0.w, 0.0, 1.0);
					    u_xlat1 = u_xlat0 + vec4(-1.0, -1.0, -1.0, -1.0);
					    SV_Target0 = u_xlat0.wwww * u_xlat1 + vec4(1.0, 1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendMul" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					float u_xlat9;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat0.w = u_xlat0.w;
					    u_xlat0.w = clamp(u_xlat0.w, 0.0, 1.0);
					    u_xlat1 = u_xlat0 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat0.xyz = u_xlat0.www * u_xlat1.xyz;
					    SV_Target0.w = u_xlat0.w * u_xlat1.w + 1.0;
					    u_xlat9 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat9 = (-u_xlat9) + 1.0;
					    u_xlat9 = u_xlat9 * _ProjectionParams.z;
					    u_xlat9 = max(u_xlat9, 0.0);
					    u_xlat9 = u_xlat9 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat9 = clamp(u_xlat9, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat9) * u_xlat0.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					float u_xlat9;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat0.w = u_xlat0.w;
					    u_xlat0.w = clamp(u_xlat0.w, 0.0, 1.0);
					    u_xlat1 = u_xlat0 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat0.xyz = u_xlat0.www * u_xlat1.xyz;
					    SV_Target0.w = u_xlat0.w * u_xlat1.w + 1.0;
					    u_xlat9 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat9 = (-u_xlat9) + 1.0;
					    u_xlat9 = u_xlat9 * _ProjectionParams.z;
					    u_xlat9 = max(u_xlat9, 0.0);
					    u_xlat9 = u_xlat9 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat9 = clamp(u_xlat9, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat9) * u_xlat0.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendMul" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					float u_xlat9;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat0.w = u_xlat0.w;
					    u_xlat0.w = clamp(u_xlat0.w, 0.0, 1.0);
					    u_xlat1 = u_xlat0 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat0.xyz = u_xlat0.www * u_xlat1.xyz;
					    SV_Target0.w = u_xlat0.w * u_xlat1.w + 1.0;
					    u_xlat9 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat9 = (-u_xlat9) + 1.0;
					    u_xlat9 = u_xlat9 * _ProjectionParams.z;
					    u_xlat9 = max(u_xlat9, 0.0);
					    u_xlat9 = u_xlat9 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat9 = clamp(u_xlat9, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat9) * u_xlat0.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					float u_xlat9;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat0.w = u_xlat0.w;
					    u_xlat0.w = clamp(u_xlat0.w, 0.0, 1.0);
					    u_xlat1 = u_xlat0 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat0.xyz = u_xlat0.www * u_xlat1.xyz;
					    SV_Target0.w = u_xlat0.w * u_xlat1.w + 1.0;
					    u_xlat9 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat9 = (-u_xlat9) + 1.0;
					    u_xlat9 = u_xlat9 * _ProjectionParams.z;
					    u_xlat9 = max(u_xlat9, 0.0);
					    u_xlat9 = u_xlat9 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat9 = clamp(u_xlat9, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat9) * u_xlat0.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendMul" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec3 u_xlat4;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat4.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat1 = texture(_CameraDepthTexture, u_xlat4.xy);
					    u_xlat4.x = _ZBufferParams.z * u_xlat1.x + _ZBufferParams.w;
					    u_xlat4.x = float(1.0) / u_xlat4.x;
					    u_xlat4.x = u_xlat4.x + (-vs_TEXCOORD3.z);
					    u_xlat4.x = u_xlat4.x * _InvFade;
					    u_xlat4.x = clamp(u_xlat4.x, 0.0, 1.0);
					    u_xlat1.w = u_xlat4.x * vs_COLOR0.w;
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat3 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2 = u_xlat2 + (-u_xlat3);
					    u_xlat2 = vec4(vs_TEXCOORD1) * u_xlat2 + u_xlat3;
					    u_xlat2 = u_xlat2 + u_xlat2;
					    u_xlat2 = u_xlat2 * _TintColor;
					    u_xlat1.xyz = vs_COLOR0.xyz;
					    u_xlat1 = u_xlat1 * u_xlat2;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat4.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat4.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec3 u_xlat4;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat4.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat1 = texture(_CameraDepthTexture, u_xlat4.xy);
					    u_xlat4.x = _ZBufferParams.z * u_xlat1.x + _ZBufferParams.w;
					    u_xlat4.x = float(1.0) / u_xlat4.x;
					    u_xlat4.x = u_xlat4.x + (-vs_TEXCOORD3.z);
					    u_xlat4.x = u_xlat4.x * _InvFade;
					    u_xlat4.x = clamp(u_xlat4.x, 0.0, 1.0);
					    u_xlat1.w = u_xlat4.x * vs_COLOR0.w;
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat3 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2 = u_xlat2 + (-u_xlat3);
					    u_xlat2 = vec4(vs_TEXCOORD1) * u_xlat2 + u_xlat3;
					    u_xlat2 = u_xlat2 + u_xlat2;
					    u_xlat2 = u_xlat2 * _TintColor;
					    u_xlat1.xyz = vs_COLOR0.xyz;
					    u_xlat1 = u_xlat1 * u_xlat2;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat4.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat4.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendMul" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec3 u_xlat4;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat4.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat1 = texture(_CameraDepthTexture, u_xlat4.xy);
					    u_xlat4.x = _ZBufferParams.z * u_xlat1.x + _ZBufferParams.w;
					    u_xlat4.x = float(1.0) / u_xlat4.x;
					    u_xlat4.x = u_xlat4.x + (-vs_TEXCOORD3.z);
					    u_xlat4.x = u_xlat4.x * _InvFade;
					    u_xlat4.x = clamp(u_xlat4.x, 0.0, 1.0);
					    u_xlat1.w = u_xlat4.x * vs_COLOR0.w;
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat3 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2 = u_xlat2 + (-u_xlat3);
					    u_xlat2 = vec4(vs_TEXCOORD1) * u_xlat2 + u_xlat3;
					    u_xlat2 = u_xlat2 + u_xlat2;
					    u_xlat2 = u_xlat2 * _TintColor;
					    u_xlat1.xyz = vs_COLOR0.xyz;
					    u_xlat1 = u_xlat1 * u_xlat2;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat4.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat4.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec3 u_xlat4;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat4.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat1 = texture(_CameraDepthTexture, u_xlat4.xy);
					    u_xlat4.x = _ZBufferParams.z * u_xlat1.x + _ZBufferParams.w;
					    u_xlat4.x = float(1.0) / u_xlat4.x;
					    u_xlat4.x = u_xlat4.x + (-vs_TEXCOORD3.z);
					    u_xlat4.x = u_xlat4.x * _InvFade;
					    u_xlat4.x = clamp(u_xlat4.x, 0.0, 1.0);
					    u_xlat1.w = u_xlat4.x * vs_COLOR0.w;
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat3 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2 = u_xlat2 + (-u_xlat3);
					    u_xlat2 = vec4(vs_TEXCOORD1) * u_xlat2 + u_xlat3;
					    u_xlat2 = u_xlat2 + u_xlat2;
					    u_xlat2 = u_xlat2 * _TintColor;
					    u_xlat1.xyz = vs_COLOR0.xyz;
					    u_xlat1 = u_xlat1 * u_xlat2;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat4.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat4.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendMul" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec3 u_xlat4;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat4.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat1 = texture(_CameraDepthTexture, u_xlat4.xy);
					    u_xlat4.x = _ZBufferParams.z * u_xlat1.x + _ZBufferParams.w;
					    u_xlat4.x = float(1.0) / u_xlat4.x;
					    u_xlat4.x = u_xlat4.x + (-vs_TEXCOORD3.z);
					    u_xlat4.x = u_xlat4.x * _InvFade;
					    u_xlat4.x = clamp(u_xlat4.x, 0.0, 1.0);
					    u_xlat1.w = u_xlat4.x * vs_COLOR0.w;
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat3 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2 = u_xlat2 + (-u_xlat3);
					    u_xlat2 = vec4(vs_TEXCOORD1) * u_xlat2 + u_xlat3;
					    u_xlat2 = u_xlat2 + u_xlat2;
					    u_xlat2 = u_xlat2 * _TintColor;
					    u_xlat1.xyz = vs_COLOR0.xyz;
					    u_xlat1 = u_xlat1 * u_xlat2;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat4.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat4.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec3 u_xlat4;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat4.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat1 = texture(_CameraDepthTexture, u_xlat4.xy);
					    u_xlat4.x = _ZBufferParams.z * u_xlat1.x + _ZBufferParams.w;
					    u_xlat4.x = float(1.0) / u_xlat4.x;
					    u_xlat4.x = u_xlat4.x + (-vs_TEXCOORD3.z);
					    u_xlat4.x = u_xlat4.x * _InvFade;
					    u_xlat4.x = clamp(u_xlat4.x, 0.0, 1.0);
					    u_xlat1.w = u_xlat4.x * vs_COLOR0.w;
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat3 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2 = u_xlat2 + (-u_xlat3);
					    u_xlat2 = vec4(vs_TEXCOORD1) * u_xlat2 + u_xlat3;
					    u_xlat2 = u_xlat2 + u_xlat2;
					    u_xlat2 = u_xlat2 * _TintColor;
					    u_xlat1.xyz = vs_COLOR0.xyz;
					    u_xlat1 = u_xlat1 * u_xlat2;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat4.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat4.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendMul" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec3 u_xlat4;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat4.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat1 = texture(_CameraDepthTexture, u_xlat4.xy);
					    u_xlat4.x = _ZBufferParams.z * u_xlat1.x + _ZBufferParams.w;
					    u_xlat4.x = float(1.0) / u_xlat4.x;
					    u_xlat4.x = u_xlat4.x + (-vs_TEXCOORD3.z);
					    u_xlat4.x = u_xlat4.x * _InvFade;
					    u_xlat4.x = clamp(u_xlat4.x, 0.0, 1.0);
					    u_xlat1.w = u_xlat4.x * vs_COLOR0.w;
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat3 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2 = u_xlat2 + (-u_xlat3);
					    u_xlat2 = vec4(vs_TEXCOORD1) * u_xlat2 + u_xlat3;
					    u_xlat2 = u_xlat2 + u_xlat2;
					    u_xlat2 = u_xlat2 * _TintColor;
					    u_xlat1.xyz = vs_COLOR0.xyz;
					    u_xlat1 = u_xlat1 * u_xlat2;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat4.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat4.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec3 u_xlat4;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat4.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat1 = texture(_CameraDepthTexture, u_xlat4.xy);
					    u_xlat4.x = _ZBufferParams.z * u_xlat1.x + _ZBufferParams.w;
					    u_xlat4.x = float(1.0) / u_xlat4.x;
					    u_xlat4.x = u_xlat4.x + (-vs_TEXCOORD3.z);
					    u_xlat4.x = u_xlat4.x * _InvFade;
					    u_xlat4.x = clamp(u_xlat4.x, 0.0, 1.0);
					    u_xlat1.w = u_xlat4.x * vs_COLOR0.w;
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat3 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2 = u_xlat2 + (-u_xlat3);
					    u_xlat2 = vec4(vs_TEXCOORD1) * u_xlat2 + u_xlat3;
					    u_xlat2 = u_xlat2 + u_xlat2;
					    u_xlat2 = u_xlat2 * _TintColor;
					    u_xlat1.xyz = vs_COLOR0.xyz;
					    u_xlat1 = u_xlat1 * u_xlat2;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat4.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat4.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendMul" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat6;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat0 = u_xlat0 * vs_COLOR0;
					    u_xlat6 = u_xlat0.w;
					    u_xlat6 = clamp(u_xlat6, 0.0, 1.0);
					    u_xlat0.w = u_xlat6 * vs_TEXCOORD4;
					    u_xlat1 = u_xlat0 + vec4(-1.0, -1.0, -1.0, -1.0);
					    SV_Target0 = u_xlat0.wwww * u_xlat1 + vec4(1.0, 1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat6;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat0 = u_xlat0 * vs_COLOR0;
					    u_xlat6 = u_xlat0.w;
					    u_xlat6 = clamp(u_xlat6, 0.0, 1.0);
					    u_xlat0.w = u_xlat6 * vs_TEXCOORD4;
					    u_xlat1 = u_xlat0 + vec4(-1.0, -1.0, -1.0, -1.0);
					    SV_Target0 = u_xlat0.wwww * u_xlat1 + vec4(1.0, 1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendMul" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[7];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					float u_xlat9;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat9 = u_xlat0.w;
					    u_xlat9 = clamp(u_xlat9, 0.0, 1.0);
					    u_xlat0.w = u_xlat9 * vs_TEXCOORD4;
					    u_xlat1 = u_xlat0 + vec4(-1.0, -1.0, -1.0, -1.0);
					    SV_Target0 = u_xlat0.wwww * u_xlat1 + vec4(1.0, 1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[6];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					float u_xlat9;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat9 = u_xlat0.w;
					    u_xlat9 = clamp(u_xlat9, 0.0, 1.0);
					    u_xlat0.w = u_xlat9 * vs_TEXCOORD4;
					    u_xlat1 = u_xlat0 + vec4(-1.0, -1.0, -1.0, -1.0);
					    SV_Target0 = u_xlat0.wwww * u_xlat1 + vec4(1.0, 1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendMul" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendMul" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					float u_xlat9;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat9 = u_xlat0.w;
					    u_xlat9 = clamp(u_xlat9, 0.0, 1.0);
					    u_xlat0.w = u_xlat9 * vs_TEXCOORD4;
					    u_xlat1 = u_xlat0 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat0.xyz = u_xlat0.www * u_xlat1.xyz;
					    SV_Target0.w = u_xlat0.w * u_xlat1.w + 1.0;
					    u_xlat9 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat9 = (-u_xlat9) + 1.0;
					    u_xlat9 = u_xlat9 * _ProjectionParams.z;
					    u_xlat9 = max(u_xlat9, 0.0);
					    u_xlat9 = u_xlat9 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat9 = clamp(u_xlat9, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat9) * u_xlat0.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					float u_xlat9;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat9 = u_xlat0.w;
					    u_xlat9 = clamp(u_xlat9, 0.0, 1.0);
					    u_xlat0.w = u_xlat9 * vs_TEXCOORD4;
					    u_xlat1 = u_xlat0 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat0.xyz = u_xlat0.www * u_xlat1.xyz;
					    SV_Target0.w = u_xlat0.w * u_xlat1.w + 1.0;
					    u_xlat9 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat9 = (-u_xlat9) + 1.0;
					    u_xlat9 = u_xlat9 * _ProjectionParams.z;
					    u_xlat9 = max(u_xlat9, 0.0);
					    u_xlat9 = u_xlat9 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat9 = clamp(u_xlat9, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat9) * u_xlat0.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendMul" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendMul" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec3 u_xlat4;
					float u_xlat13;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat4.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat1 = texture(_CameraDepthTexture, u_xlat4.xy);
					    u_xlat4.x = _ZBufferParams.z * u_xlat1.x + _ZBufferParams.w;
					    u_xlat4.x = float(1.0) / u_xlat4.x;
					    u_xlat4.x = u_xlat4.x + (-vs_TEXCOORD3.z);
					    u_xlat4.x = u_xlat4.x * _InvFade;
					    u_xlat4.x = clamp(u_xlat4.x, 0.0, 1.0);
					    u_xlat1.w = u_xlat4.x * vs_COLOR0.w;
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat3 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2 = u_xlat2 + (-u_xlat3);
					    u_xlat2 = vec4(vs_TEXCOORD1) * u_xlat2 + u_xlat3;
					    u_xlat2 = u_xlat2 + u_xlat2;
					    u_xlat2 = u_xlat2 * _TintColor;
					    u_xlat1.xyz = vs_COLOR0.xyz;
					    u_xlat1 = u_xlat1 * u_xlat2;
					    u_xlat13 = u_xlat1.w;
					    u_xlat13 = clamp(u_xlat13, 0.0, 1.0);
					    u_xlat1.w = u_xlat13 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat4.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat4.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec3 u_xlat4;
					float u_xlat13;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat4.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat1 = texture(_CameraDepthTexture, u_xlat4.xy);
					    u_xlat4.x = _ZBufferParams.z * u_xlat1.x + _ZBufferParams.w;
					    u_xlat4.x = float(1.0) / u_xlat4.x;
					    u_xlat4.x = u_xlat4.x + (-vs_TEXCOORD3.z);
					    u_xlat4.x = u_xlat4.x * _InvFade;
					    u_xlat4.x = clamp(u_xlat4.x, 0.0, 1.0);
					    u_xlat1.w = u_xlat4.x * vs_COLOR0.w;
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat3 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2 = u_xlat2 + (-u_xlat3);
					    u_xlat2 = vec4(vs_TEXCOORD1) * u_xlat2 + u_xlat3;
					    u_xlat2 = u_xlat2 + u_xlat2;
					    u_xlat2 = u_xlat2 * _TintColor;
					    u_xlat1.xyz = vs_COLOR0.xyz;
					    u_xlat1 = u_xlat1 * u_xlat2;
					    u_xlat13 = u_xlat1.w;
					    u_xlat13 = clamp(u_xlat13, 0.0, 1.0);
					    u_xlat1.w = u_xlat13 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat4.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat4.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendMul" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendMul" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec3 u_xlat4;
					float u_xlat13;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat4.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat1 = texture(_CameraDepthTexture, u_xlat4.xy);
					    u_xlat4.x = _ZBufferParams.z * u_xlat1.x + _ZBufferParams.w;
					    u_xlat4.x = float(1.0) / u_xlat4.x;
					    u_xlat4.x = u_xlat4.x + (-vs_TEXCOORD3.z);
					    u_xlat4.x = u_xlat4.x * _InvFade;
					    u_xlat4.x = clamp(u_xlat4.x, 0.0, 1.0);
					    u_xlat1.w = u_xlat4.x * vs_COLOR0.w;
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat3 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2 = u_xlat2 + (-u_xlat3);
					    u_xlat2 = vec4(vs_TEXCOORD1) * u_xlat2 + u_xlat3;
					    u_xlat2 = u_xlat2 + u_xlat2;
					    u_xlat2 = u_xlat2 * _TintColor;
					    u_xlat1.xyz = vs_COLOR0.xyz;
					    u_xlat1 = u_xlat1 * u_xlat2;
					    u_xlat13 = u_xlat1.w;
					    u_xlat13 = clamp(u_xlat13, 0.0, 1.0);
					    u_xlat1.w = u_xlat13 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat4.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat4.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec3 u_xlat4;
					float u_xlat13;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat4.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat1 = texture(_CameraDepthTexture, u_xlat4.xy);
					    u_xlat4.x = _ZBufferParams.z * u_xlat1.x + _ZBufferParams.w;
					    u_xlat4.x = float(1.0) / u_xlat4.x;
					    u_xlat4.x = u_xlat4.x + (-vs_TEXCOORD3.z);
					    u_xlat4.x = u_xlat4.x * _InvFade;
					    u_xlat4.x = clamp(u_xlat4.x, 0.0, 1.0);
					    u_xlat1.w = u_xlat4.x * vs_COLOR0.w;
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat3 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2 = u_xlat2 + (-u_xlat3);
					    u_xlat2 = vec4(vs_TEXCOORD1) * u_xlat2 + u_xlat3;
					    u_xlat2 = u_xlat2 + u_xlat2;
					    u_xlat2 = u_xlat2 * _TintColor;
					    u_xlat1.xyz = vs_COLOR0.xyz;
					    u_xlat1 = u_xlat1 * u_xlat2;
					    u_xlat13 = u_xlat1.w;
					    u_xlat13 = clamp(u_xlat13, 0.0, 1.0);
					    u_xlat1.w = u_xlat13 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat4.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat4.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendMul" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[7];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					float u_xlat9;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat9 = u_xlat0.w;
					    u_xlat9 = clamp(u_xlat9, 0.0, 1.0);
					    u_xlat0.w = u_xlat9 * vs_TEXCOORD4;
					    u_xlat1 = u_xlat0 + vec4(-1.0, -1.0, -1.0, -1.0);
					    SV_Target0 = u_xlat0.wwww * u_xlat1 + vec4(1.0, 1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[6];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					float u_xlat9;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat9 = u_xlat0.w;
					    u_xlat9 = clamp(u_xlat9, 0.0, 1.0);
					    u_xlat0.w = u_xlat9 * vs_TEXCOORD4;
					    u_xlat1 = u_xlat0 + vec4(-1.0, -1.0, -1.0, -1.0);
					    SV_Target0 = u_xlat0.wwww * u_xlat1 + vec4(1.0, 1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendMul" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[7];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					float u_xlat9;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat9 = u_xlat0.w;
					    u_xlat9 = clamp(u_xlat9, 0.0, 1.0);
					    u_xlat0.w = u_xlat9 * vs_TEXCOORD4;
					    u_xlat1 = u_xlat0 + vec4(-1.0, -1.0, -1.0, -1.0);
					    SV_Target0 = u_xlat0.wwww * u_xlat1 + vec4(1.0, 1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[6];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					float u_xlat9;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat9 = u_xlat0.w;
					    u_xlat9 = clamp(u_xlat9, 0.0, 1.0);
					    u_xlat0.w = u_xlat9 * vs_TEXCOORD4;
					    u_xlat1 = u_xlat0 + vec4(-1.0, -1.0, -1.0, -1.0);
					    SV_Target0 = u_xlat0.wwww * u_xlat1 + vec4(1.0, 1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendMul" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					float u_xlat9;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat9 = u_xlat0.w;
					    u_xlat9 = clamp(u_xlat9, 0.0, 1.0);
					    u_xlat0.w = u_xlat9 * vs_TEXCOORD4;
					    u_xlat1 = u_xlat0 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat0.xyz = u_xlat0.www * u_xlat1.xyz;
					    SV_Target0.w = u_xlat0.w * u_xlat1.w + 1.0;
					    u_xlat9 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat9 = (-u_xlat9) + 1.0;
					    u_xlat9 = u_xlat9 * _ProjectionParams.z;
					    u_xlat9 = max(u_xlat9, 0.0);
					    u_xlat9 = u_xlat9 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat9 = clamp(u_xlat9, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat9) * u_xlat0.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					float u_xlat9;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat9 = u_xlat0.w;
					    u_xlat9 = clamp(u_xlat9, 0.0, 1.0);
					    u_xlat0.w = u_xlat9 * vs_TEXCOORD4;
					    u_xlat1 = u_xlat0 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat0.xyz = u_xlat0.www * u_xlat1.xyz;
					    SV_Target0.w = u_xlat0.w * u_xlat1.w + 1.0;
					    u_xlat9 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat9 = (-u_xlat9) + 1.0;
					    u_xlat9 = u_xlat9 * _ProjectionParams.z;
					    u_xlat9 = max(u_xlat9, 0.0);
					    u_xlat9 = u_xlat9 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat9 = clamp(u_xlat9, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat9) * u_xlat0.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendMul" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					float u_xlat9;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat9 = u_xlat0.w;
					    u_xlat9 = clamp(u_xlat9, 0.0, 1.0);
					    u_xlat0.w = u_xlat9 * vs_TEXCOORD4;
					    u_xlat1 = u_xlat0 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat0.xyz = u_xlat0.www * u_xlat1.xyz;
					    SV_Target0.w = u_xlat0.w * u_xlat1.w + 1.0;
					    u_xlat9 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat9 = (-u_xlat9) + 1.0;
					    u_xlat9 = u_xlat9 * _ProjectionParams.z;
					    u_xlat9 = max(u_xlat9, 0.0);
					    u_xlat9 = u_xlat9 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat9 = clamp(u_xlat9, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat9) * u_xlat0.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					float u_xlat9;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat9 = u_xlat0.w;
					    u_xlat9 = clamp(u_xlat9, 0.0, 1.0);
					    u_xlat0.w = u_xlat9 * vs_TEXCOORD4;
					    u_xlat1 = u_xlat0 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat0.xyz = u_xlat0.www * u_xlat1.xyz;
					    SV_Target0.w = u_xlat0.w * u_xlat1.w + 1.0;
					    u_xlat9 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat9 = (-u_xlat9) + 1.0;
					    u_xlat9 = u_xlat9 * _ProjectionParams.z;
					    u_xlat9 = max(u_xlat9, 0.0);
					    u_xlat9 = u_xlat9 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat9 = clamp(u_xlat9, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat9) * u_xlat0.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendMul" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec3 u_xlat4;
					float u_xlat13;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat4.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat1 = texture(_CameraDepthTexture, u_xlat4.xy);
					    u_xlat4.x = _ZBufferParams.z * u_xlat1.x + _ZBufferParams.w;
					    u_xlat4.x = float(1.0) / u_xlat4.x;
					    u_xlat4.x = u_xlat4.x + (-vs_TEXCOORD3.z);
					    u_xlat4.x = u_xlat4.x * _InvFade;
					    u_xlat4.x = clamp(u_xlat4.x, 0.0, 1.0);
					    u_xlat1.w = u_xlat4.x * vs_COLOR0.w;
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat3 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2 = u_xlat2 + (-u_xlat3);
					    u_xlat2 = vec4(vs_TEXCOORD1) * u_xlat2 + u_xlat3;
					    u_xlat2 = u_xlat2 + u_xlat2;
					    u_xlat2 = u_xlat2 * _TintColor;
					    u_xlat1.xyz = vs_COLOR0.xyz;
					    u_xlat1 = u_xlat1 * u_xlat2;
					    u_xlat13 = u_xlat1.w;
					    u_xlat13 = clamp(u_xlat13, 0.0, 1.0);
					    u_xlat1.w = u_xlat13 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat4.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat4.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec3 u_xlat4;
					float u_xlat13;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat4.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat1 = texture(_CameraDepthTexture, u_xlat4.xy);
					    u_xlat4.x = _ZBufferParams.z * u_xlat1.x + _ZBufferParams.w;
					    u_xlat4.x = float(1.0) / u_xlat4.x;
					    u_xlat4.x = u_xlat4.x + (-vs_TEXCOORD3.z);
					    u_xlat4.x = u_xlat4.x * _InvFade;
					    u_xlat4.x = clamp(u_xlat4.x, 0.0, 1.0);
					    u_xlat1.w = u_xlat4.x * vs_COLOR0.w;
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat3 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2 = u_xlat2 + (-u_xlat3);
					    u_xlat2 = vec4(vs_TEXCOORD1) * u_xlat2 + u_xlat3;
					    u_xlat2 = u_xlat2 + u_xlat2;
					    u_xlat2 = u_xlat2 * _TintColor;
					    u_xlat1.xyz = vs_COLOR0.xyz;
					    u_xlat1 = u_xlat1 * u_xlat2;
					    u_xlat13 = u_xlat1.w;
					    u_xlat13 = clamp(u_xlat13, 0.0, 1.0);
					    u_xlat1.w = u_xlat13 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat4.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat4.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendMul" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec3 u_xlat4;
					float u_xlat13;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat4.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat1 = texture(_CameraDepthTexture, u_xlat4.xy);
					    u_xlat4.x = _ZBufferParams.z * u_xlat1.x + _ZBufferParams.w;
					    u_xlat4.x = float(1.0) / u_xlat4.x;
					    u_xlat4.x = u_xlat4.x + (-vs_TEXCOORD3.z);
					    u_xlat4.x = u_xlat4.x * _InvFade;
					    u_xlat4.x = clamp(u_xlat4.x, 0.0, 1.0);
					    u_xlat1.w = u_xlat4.x * vs_COLOR0.w;
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat3 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2 = u_xlat2 + (-u_xlat3);
					    u_xlat2 = vec4(vs_TEXCOORD1) * u_xlat2 + u_xlat3;
					    u_xlat2 = u_xlat2 + u_xlat2;
					    u_xlat2 = u_xlat2 * _TintColor;
					    u_xlat1.xyz = vs_COLOR0.xyz;
					    u_xlat1 = u_xlat1 * u_xlat2;
					    u_xlat13 = u_xlat1.w;
					    u_xlat13 = clamp(u_xlat13, 0.0, 1.0);
					    u_xlat1.w = u_xlat13 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat4.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat4.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec3 u_xlat4;
					float u_xlat13;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat4.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat1 = texture(_CameraDepthTexture, u_xlat4.xy);
					    u_xlat4.x = _ZBufferParams.z * u_xlat1.x + _ZBufferParams.w;
					    u_xlat4.x = float(1.0) / u_xlat4.x;
					    u_xlat4.x = u_xlat4.x + (-vs_TEXCOORD3.z);
					    u_xlat4.x = u_xlat4.x * _InvFade;
					    u_xlat4.x = clamp(u_xlat4.x, 0.0, 1.0);
					    u_xlat1.w = u_xlat4.x * vs_COLOR0.w;
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat3 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2 = u_xlat2 + (-u_xlat3);
					    u_xlat2 = vec4(vs_TEXCOORD1) * u_xlat2 + u_xlat3;
					    u_xlat2 = u_xlat2 + u_xlat2;
					    u_xlat2 = u_xlat2 * _TintColor;
					    u_xlat1.xyz = vs_COLOR0.xyz;
					    u_xlat1 = u_xlat1 * u_xlat2;
					    u_xlat13 = u_xlat1.w;
					    u_xlat13 = clamp(u_xlat13, 0.0, 1.0);
					    u_xlat1.w = u_xlat13 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat4.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat4.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendMul" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec3 u_xlat4;
					float u_xlat13;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat4.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat1 = texture(_CameraDepthTexture, u_xlat4.xy);
					    u_xlat4.x = _ZBufferParams.z * u_xlat1.x + _ZBufferParams.w;
					    u_xlat4.x = float(1.0) / u_xlat4.x;
					    u_xlat4.x = u_xlat4.x + (-vs_TEXCOORD3.z);
					    u_xlat4.x = u_xlat4.x * _InvFade;
					    u_xlat4.x = clamp(u_xlat4.x, 0.0, 1.0);
					    u_xlat1.w = u_xlat4.x * vs_COLOR0.w;
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat3 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2 = u_xlat2 + (-u_xlat3);
					    u_xlat2 = vec4(vs_TEXCOORD1) * u_xlat2 + u_xlat3;
					    u_xlat2 = u_xlat2 + u_xlat2;
					    u_xlat2 = u_xlat2 * _TintColor;
					    u_xlat1.xyz = vs_COLOR0.xyz;
					    u_xlat1 = u_xlat1 * u_xlat2;
					    u_xlat13 = u_xlat1.w;
					    u_xlat13 = clamp(u_xlat13, 0.0, 1.0);
					    u_xlat1.w = u_xlat13 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat4.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat4.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec3 u_xlat4;
					float u_xlat13;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat4.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat1 = texture(_CameraDepthTexture, u_xlat4.xy);
					    u_xlat4.x = _ZBufferParams.z * u_xlat1.x + _ZBufferParams.w;
					    u_xlat4.x = float(1.0) / u_xlat4.x;
					    u_xlat4.x = u_xlat4.x + (-vs_TEXCOORD3.z);
					    u_xlat4.x = u_xlat4.x * _InvFade;
					    u_xlat4.x = clamp(u_xlat4.x, 0.0, 1.0);
					    u_xlat1.w = u_xlat4.x * vs_COLOR0.w;
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat3 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2 = u_xlat2 + (-u_xlat3);
					    u_xlat2 = vec4(vs_TEXCOORD1) * u_xlat2 + u_xlat3;
					    u_xlat2 = u_xlat2 + u_xlat2;
					    u_xlat2 = u_xlat2 * _TintColor;
					    u_xlat1.xyz = vs_COLOR0.xyz;
					    u_xlat1 = u_xlat1 * u_xlat2;
					    u_xlat13 = u_xlat1.w;
					    u_xlat13 = clamp(u_xlat13, 0.0, 1.0);
					    u_xlat1.w = u_xlat13 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat4.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat4.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendMul" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec3 u_xlat4;
					float u_xlat13;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat4.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat1 = texture(_CameraDepthTexture, u_xlat4.xy);
					    u_xlat4.x = _ZBufferParams.z * u_xlat1.x + _ZBufferParams.w;
					    u_xlat4.x = float(1.0) / u_xlat4.x;
					    u_xlat4.x = u_xlat4.x + (-vs_TEXCOORD3.z);
					    u_xlat4.x = u_xlat4.x * _InvFade;
					    u_xlat4.x = clamp(u_xlat4.x, 0.0, 1.0);
					    u_xlat1.w = u_xlat4.x * vs_COLOR0.w;
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat3 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2 = u_xlat2 + (-u_xlat3);
					    u_xlat2 = vec4(vs_TEXCOORD1) * u_xlat2 + u_xlat3;
					    u_xlat2 = u_xlat2 + u_xlat2;
					    u_xlat2 = u_xlat2 * _TintColor;
					    u_xlat1.xyz = vs_COLOR0.xyz;
					    u_xlat1 = u_xlat1 * u_xlat2;
					    u_xlat13 = u_xlat1.w;
					    u_xlat13 = clamp(u_xlat13, 0.0, 1.0);
					    u_xlat1.w = u_xlat13 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat4.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat4.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec3 u_xlat4;
					float u_xlat13;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat4.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat1 = texture(_CameraDepthTexture, u_xlat4.xy);
					    u_xlat4.x = _ZBufferParams.z * u_xlat1.x + _ZBufferParams.w;
					    u_xlat4.x = float(1.0) / u_xlat4.x;
					    u_xlat4.x = u_xlat4.x + (-vs_TEXCOORD3.z);
					    u_xlat4.x = u_xlat4.x * _InvFade;
					    u_xlat4.x = clamp(u_xlat4.x, 0.0, 1.0);
					    u_xlat1.w = u_xlat4.x * vs_COLOR0.w;
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat3 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2 = u_xlat2 + (-u_xlat3);
					    u_xlat2 = vec4(vs_TEXCOORD1) * u_xlat2 + u_xlat3;
					    u_xlat2 = u_xlat2 + u_xlat2;
					    u_xlat2 = u_xlat2 * _TintColor;
					    u_xlat1.xyz = vs_COLOR0.xyz;
					    u_xlat1 = u_xlat1 * u_xlat2;
					    u_xlat13 = u_xlat1.w;
					    u_xlat13 = clamp(u_xlat13, 0.0, 1.0);
					    u_xlat1.w = u_xlat13 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat4.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat4.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendMul" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					bool u_xlatb1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1.x = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat0.w = u_xlat0.w * u_xlat1.x;
					    u_xlat0 = u_xlat0 * vs_COLOR0;
					    u_xlat0.w = u_xlat0.w;
					    u_xlat0.w = clamp(u_xlat0.w, 0.0, 1.0);
					    u_xlat1 = u_xlat0 + vec4(-1.0, -1.0, -1.0, -1.0);
					    SV_Target0 = u_xlat0.wwww * u_xlat1 + vec4(1.0, 1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					bool u_xlatb1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1.x = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat0.w = u_xlat0.w * u_xlat1.x;
					    u_xlat0 = u_xlat0 * vs_COLOR0;
					    u_xlat0.w = u_xlat0.w;
					    u_xlat0.w = clamp(u_xlat0.w, 0.0, 1.0);
					    u_xlat1 = u_xlat0 + vec4(-1.0, -1.0, -1.0, -1.0);
					    SV_Target0 = u_xlat0.wwww * u_xlat1 + vec4(1.0, 1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendMul" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[7];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					bool u_xlatb2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2.x = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2.x;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat0.w = u_xlat0.w;
					    u_xlat0.w = clamp(u_xlat0.w, 0.0, 1.0);
					    u_xlat1 = u_xlat0 + vec4(-1.0, -1.0, -1.0, -1.0);
					    SV_Target0 = u_xlat0.wwww * u_xlat1 + vec4(1.0, 1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[6];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					bool u_xlatb2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2.x = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2.x;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat0.w = u_xlat0.w;
					    u_xlat0.w = clamp(u_xlat0.w, 0.0, 1.0);
					    u_xlat1 = u_xlat0 + vec4(-1.0, -1.0, -1.0, -1.0);
					    SV_Target0 = u_xlat0.wwww * u_xlat1 + vec4(1.0, 1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendMul" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3.x;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3.x;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendMul" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					bool u_xlatb2;
					float u_xlat9;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2.x = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2.x;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat0.w = u_xlat0.w;
					    u_xlat0.w = clamp(u_xlat0.w, 0.0, 1.0);
					    u_xlat1 = u_xlat0 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat0.xyz = u_xlat0.www * u_xlat1.xyz;
					    SV_Target0.w = u_xlat0.w * u_xlat1.w + 1.0;
					    u_xlat9 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat9 = (-u_xlat9) + 1.0;
					    u_xlat9 = u_xlat9 * _ProjectionParams.z;
					    u_xlat9 = max(u_xlat9, 0.0);
					    u_xlat9 = u_xlat9 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat9 = clamp(u_xlat9, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat9) * u_xlat0.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					bool u_xlatb2;
					float u_xlat9;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2.x = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2.x;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat0.w = u_xlat0.w;
					    u_xlat0.w = clamp(u_xlat0.w, 0.0, 1.0);
					    u_xlat1 = u_xlat0 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat0.xyz = u_xlat0.www * u_xlat1.xyz;
					    SV_Target0.w = u_xlat0.w * u_xlat1.w + 1.0;
					    u_xlat9 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat9 = (-u_xlat9) + 1.0;
					    u_xlat9 = u_xlat9 * _ProjectionParams.z;
					    u_xlat9 = max(u_xlat9, 0.0);
					    u_xlat9 = u_xlat9 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat9 = clamp(u_xlat9, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat9) * u_xlat0.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendMul" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3.x;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3.x;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendMul" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					bool u_xlatb2;
					float u_xlat9;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2.x = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2.x;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat0.w = u_xlat0.w;
					    u_xlat0.w = clamp(u_xlat0.w, 0.0, 1.0);
					    u_xlat1 = u_xlat0 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat0.xyz = u_xlat0.www * u_xlat1.xyz;
					    SV_Target0.w = u_xlat0.w * u_xlat1.w + 1.0;
					    u_xlat9 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat9 = (-u_xlat9) + 1.0;
					    u_xlat9 = u_xlat9 * _ProjectionParams.z;
					    u_xlat9 = max(u_xlat9, 0.0);
					    u_xlat9 = u_xlat9 * unity_FogParams.y;
					    u_xlat9 = exp2((-u_xlat9));
					    u_xlat9 = min(u_xlat9, 1.0);
					    SV_Target0.xyz = vec3(u_xlat9) * u_xlat0.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					bool u_xlatb2;
					float u_xlat9;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2.x = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2.x;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat0.w = u_xlat0.w;
					    u_xlat0.w = clamp(u_xlat0.w, 0.0, 1.0);
					    u_xlat1 = u_xlat0 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat0.xyz = u_xlat0.www * u_xlat1.xyz;
					    SV_Target0.w = u_xlat0.w * u_xlat1.w + 1.0;
					    u_xlat9 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat9 = (-u_xlat9) + 1.0;
					    u_xlat9 = u_xlat9 * _ProjectionParams.z;
					    u_xlat9 = max(u_xlat9, 0.0);
					    u_xlat9 = u_xlat9 * unity_FogParams.y;
					    u_xlat9 = exp2((-u_xlat9));
					    u_xlat9 = min(u_xlat9, 1.0);
					    SV_Target0.xyz = vec3(u_xlat9) * u_xlat0.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendMul" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3.x;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3.x;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendMul" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					bool u_xlatb2;
					float u_xlat9;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2.x = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2.x;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat0.w = u_xlat0.w;
					    u_xlat0.w = clamp(u_xlat0.w, 0.0, 1.0);
					    u_xlat1 = u_xlat0 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat0.xyz = u_xlat0.www * u_xlat1.xyz;
					    SV_Target0.w = u_xlat0.w * u_xlat1.w + 1.0;
					    u_xlat9 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat9 = (-u_xlat9) + 1.0;
					    u_xlat9 = u_xlat9 * _ProjectionParams.z;
					    u_xlat9 = max(u_xlat9, 0.0);
					    u_xlat9 = u_xlat9 * unity_FogParams.x;
					    u_xlat9 = u_xlat9 * (-u_xlat9);
					    u_xlat9 = exp2(u_xlat9);
					    SV_Target0.xyz = vec3(u_xlat9) * u_xlat0.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					bool u_xlatb2;
					float u_xlat9;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2.x = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2.x;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat0.w = u_xlat0.w;
					    u_xlat0.w = clamp(u_xlat0.w, 0.0, 1.0);
					    u_xlat1 = u_xlat0 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat0.xyz = u_xlat0.www * u_xlat1.xyz;
					    SV_Target0.w = u_xlat0.w * u_xlat1.w + 1.0;
					    u_xlat9 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat9 = (-u_xlat9) + 1.0;
					    u_xlat9 = u_xlat9 * _ProjectionParams.z;
					    u_xlat9 = max(u_xlat9, 0.0);
					    u_xlat9 = u_xlat9 * unity_FogParams.x;
					    u_xlat9 = u_xlat9 * (-u_xlat9);
					    u_xlat9 = exp2(u_xlat9);
					    SV_Target0.xyz = vec3(u_xlat9) * u_xlat0.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendMul" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[7];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					bool u_xlatb2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2.x = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2.x;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat0.w = u_xlat0.w;
					    u_xlat0.w = clamp(u_xlat0.w, 0.0, 1.0);
					    u_xlat1 = u_xlat0 + vec4(-1.0, -1.0, -1.0, -1.0);
					    SV_Target0 = u_xlat0.wwww * u_xlat1 + vec4(1.0, 1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[6];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					bool u_xlatb2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2.x = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2.x;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat0.w = u_xlat0.w;
					    u_xlat0.w = clamp(u_xlat0.w, 0.0, 1.0);
					    u_xlat1 = u_xlat0 + vec4(-1.0, -1.0, -1.0, -1.0);
					    SV_Target0 = u_xlat0.wwww * u_xlat1 + vec4(1.0, 1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendMul" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[7];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					bool u_xlatb2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2.x = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2.x;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat0.w = u_xlat0.w;
					    u_xlat0.w = clamp(u_xlat0.w, 0.0, 1.0);
					    u_xlat1 = u_xlat0 + vec4(-1.0, -1.0, -1.0, -1.0);
					    SV_Target0 = u_xlat0.wwww * u_xlat1 + vec4(1.0, 1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[6];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					bool u_xlatb2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2.x = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2.x;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat0.w = u_xlat0.w;
					    u_xlat0.w = clamp(u_xlat0.w, 0.0, 1.0);
					    u_xlat1 = u_xlat0 + vec4(-1.0, -1.0, -1.0, -1.0);
					    SV_Target0 = u_xlat0.wwww * u_xlat1 + vec4(1.0, 1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendMul" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					bool u_xlatb2;
					float u_xlat9;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2.x = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2.x;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat0.w = u_xlat0.w;
					    u_xlat0.w = clamp(u_xlat0.w, 0.0, 1.0);
					    u_xlat1 = u_xlat0 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat0.xyz = u_xlat0.www * u_xlat1.xyz;
					    SV_Target0.w = u_xlat0.w * u_xlat1.w + 1.0;
					    u_xlat9 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat9 = (-u_xlat9) + 1.0;
					    u_xlat9 = u_xlat9 * _ProjectionParams.z;
					    u_xlat9 = max(u_xlat9, 0.0);
					    u_xlat9 = u_xlat9 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat9 = clamp(u_xlat9, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat9) * u_xlat0.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					bool u_xlatb2;
					float u_xlat9;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2.x = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2.x;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat0.w = u_xlat0.w;
					    u_xlat0.w = clamp(u_xlat0.w, 0.0, 1.0);
					    u_xlat1 = u_xlat0 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat0.xyz = u_xlat0.www * u_xlat1.xyz;
					    SV_Target0.w = u_xlat0.w * u_xlat1.w + 1.0;
					    u_xlat9 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat9 = (-u_xlat9) + 1.0;
					    u_xlat9 = u_xlat9 * _ProjectionParams.z;
					    u_xlat9 = max(u_xlat9, 0.0);
					    u_xlat9 = u_xlat9 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat9 = clamp(u_xlat9, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat9) * u_xlat0.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendMul" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					bool u_xlatb2;
					float u_xlat9;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2.x = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2.x;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat0.w = u_xlat0.w;
					    u_xlat0.w = clamp(u_xlat0.w, 0.0, 1.0);
					    u_xlat1 = u_xlat0 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat0.xyz = u_xlat0.www * u_xlat1.xyz;
					    SV_Target0.w = u_xlat0.w * u_xlat1.w + 1.0;
					    u_xlat9 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat9 = (-u_xlat9) + 1.0;
					    u_xlat9 = u_xlat9 * _ProjectionParams.z;
					    u_xlat9 = max(u_xlat9, 0.0);
					    u_xlat9 = u_xlat9 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat9 = clamp(u_xlat9, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat9) * u_xlat0.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					bool u_xlatb2;
					float u_xlat9;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2.x = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2.x;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat0.w = u_xlat0.w;
					    u_xlat0.w = clamp(u_xlat0.w, 0.0, 1.0);
					    u_xlat1 = u_xlat0 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat0.xyz = u_xlat0.www * u_xlat1.xyz;
					    SV_Target0.w = u_xlat0.w * u_xlat1.w + 1.0;
					    u_xlat9 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat9 = (-u_xlat9) + 1.0;
					    u_xlat9 = u_xlat9 * _ProjectionParams.z;
					    u_xlat9 = max(u_xlat9, 0.0);
					    u_xlat9 = u_xlat9 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat9 = clamp(u_xlat9, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat9) * u_xlat0.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendMul" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					bool u_xlatb2;
					float u_xlat9;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2.x = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2.x;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat0.w = u_xlat0.w;
					    u_xlat0.w = clamp(u_xlat0.w, 0.0, 1.0);
					    u_xlat1 = u_xlat0 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat0.xyz = u_xlat0.www * u_xlat1.xyz;
					    SV_Target0.w = u_xlat0.w * u_xlat1.w + 1.0;
					    u_xlat9 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat9 = (-u_xlat9) + 1.0;
					    u_xlat9 = u_xlat9 * _ProjectionParams.z;
					    u_xlat9 = max(u_xlat9, 0.0);
					    u_xlat9 = u_xlat9 * unity_FogParams.y;
					    u_xlat9 = exp2((-u_xlat9));
					    u_xlat9 = min(u_xlat9, 1.0);
					    SV_Target0.xyz = vec3(u_xlat9) * u_xlat0.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					bool u_xlatb2;
					float u_xlat9;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2.x = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2.x;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat0.w = u_xlat0.w;
					    u_xlat0.w = clamp(u_xlat0.w, 0.0, 1.0);
					    u_xlat1 = u_xlat0 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat0.xyz = u_xlat0.www * u_xlat1.xyz;
					    SV_Target0.w = u_xlat0.w * u_xlat1.w + 1.0;
					    u_xlat9 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat9 = (-u_xlat9) + 1.0;
					    u_xlat9 = u_xlat9 * _ProjectionParams.z;
					    u_xlat9 = max(u_xlat9, 0.0);
					    u_xlat9 = u_xlat9 * unity_FogParams.y;
					    u_xlat9 = exp2((-u_xlat9));
					    u_xlat9 = min(u_xlat9, 1.0);
					    SV_Target0.xyz = vec3(u_xlat9) * u_xlat0.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendMul" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					bool u_xlatb2;
					float u_xlat9;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2.x = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2.x;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat0.w = u_xlat0.w;
					    u_xlat0.w = clamp(u_xlat0.w, 0.0, 1.0);
					    u_xlat1 = u_xlat0 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat0.xyz = u_xlat0.www * u_xlat1.xyz;
					    SV_Target0.w = u_xlat0.w * u_xlat1.w + 1.0;
					    u_xlat9 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat9 = (-u_xlat9) + 1.0;
					    u_xlat9 = u_xlat9 * _ProjectionParams.z;
					    u_xlat9 = max(u_xlat9, 0.0);
					    u_xlat9 = u_xlat9 * unity_FogParams.y;
					    u_xlat9 = exp2((-u_xlat9));
					    u_xlat9 = min(u_xlat9, 1.0);
					    SV_Target0.xyz = vec3(u_xlat9) * u_xlat0.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					bool u_xlatb2;
					float u_xlat9;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2.x = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2.x;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat0.w = u_xlat0.w;
					    u_xlat0.w = clamp(u_xlat0.w, 0.0, 1.0);
					    u_xlat1 = u_xlat0 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat0.xyz = u_xlat0.www * u_xlat1.xyz;
					    SV_Target0.w = u_xlat0.w * u_xlat1.w + 1.0;
					    u_xlat9 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat9 = (-u_xlat9) + 1.0;
					    u_xlat9 = u_xlat9 * _ProjectionParams.z;
					    u_xlat9 = max(u_xlat9, 0.0);
					    u_xlat9 = u_xlat9 * unity_FogParams.y;
					    u_xlat9 = exp2((-u_xlat9));
					    u_xlat9 = min(u_xlat9, 1.0);
					    SV_Target0.xyz = vec3(u_xlat9) * u_xlat0.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendMul" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					bool u_xlatb2;
					float u_xlat9;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2.x = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2.x;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat0.w = u_xlat0.w;
					    u_xlat0.w = clamp(u_xlat0.w, 0.0, 1.0);
					    u_xlat1 = u_xlat0 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat0.xyz = u_xlat0.www * u_xlat1.xyz;
					    SV_Target0.w = u_xlat0.w * u_xlat1.w + 1.0;
					    u_xlat9 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat9 = (-u_xlat9) + 1.0;
					    u_xlat9 = u_xlat9 * _ProjectionParams.z;
					    u_xlat9 = max(u_xlat9, 0.0);
					    u_xlat9 = u_xlat9 * unity_FogParams.x;
					    u_xlat9 = u_xlat9 * (-u_xlat9);
					    u_xlat9 = exp2(u_xlat9);
					    SV_Target0.xyz = vec3(u_xlat9) * u_xlat0.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					bool u_xlatb2;
					float u_xlat9;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2.x = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2.x;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat0.w = u_xlat0.w;
					    u_xlat0.w = clamp(u_xlat0.w, 0.0, 1.0);
					    u_xlat1 = u_xlat0 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat0.xyz = u_xlat0.www * u_xlat1.xyz;
					    SV_Target0.w = u_xlat0.w * u_xlat1.w + 1.0;
					    u_xlat9 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat9 = (-u_xlat9) + 1.0;
					    u_xlat9 = u_xlat9 * _ProjectionParams.z;
					    u_xlat9 = max(u_xlat9, 0.0);
					    u_xlat9 = u_xlat9 * unity_FogParams.x;
					    u_xlat9 = u_xlat9 * (-u_xlat9);
					    u_xlat9 = exp2(u_xlat9);
					    SV_Target0.xyz = vec3(u_xlat9) * u_xlat0.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendMul" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					bool u_xlatb2;
					float u_xlat9;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2.x = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2.x;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat0.w = u_xlat0.w;
					    u_xlat0.w = clamp(u_xlat0.w, 0.0, 1.0);
					    u_xlat1 = u_xlat0 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat0.xyz = u_xlat0.www * u_xlat1.xyz;
					    SV_Target0.w = u_xlat0.w * u_xlat1.w + 1.0;
					    u_xlat9 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat9 = (-u_xlat9) + 1.0;
					    u_xlat9 = u_xlat9 * _ProjectionParams.z;
					    u_xlat9 = max(u_xlat9, 0.0);
					    u_xlat9 = u_xlat9 * unity_FogParams.x;
					    u_xlat9 = u_xlat9 * (-u_xlat9);
					    u_xlat9 = exp2(u_xlat9);
					    SV_Target0.xyz = vec3(u_xlat9) * u_xlat0.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					bool u_xlatb2;
					float u_xlat9;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2.x = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2.x;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat0.w = u_xlat0.w;
					    u_xlat0.w = clamp(u_xlat0.w, 0.0, 1.0);
					    u_xlat1 = u_xlat0 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat0.xyz = u_xlat0.www * u_xlat1.xyz;
					    SV_Target0.w = u_xlat0.w * u_xlat1.w + 1.0;
					    u_xlat9 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat9 = (-u_xlat9) + 1.0;
					    u_xlat9 = u_xlat9 * _ProjectionParams.z;
					    u_xlat9 = max(u_xlat9, 0.0);
					    u_xlat9 = u_xlat9 * unity_FogParams.x;
					    u_xlat9 = u_xlat9 * (-u_xlat9);
					    u_xlat9 = exp2(u_xlat9);
					    SV_Target0.xyz = vec3(u_xlat9) * u_xlat0.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendMul" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					bool u_xlatb1;
					float u_xlat6;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1.x = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat0.w = u_xlat0.w * u_xlat1.x;
					    u_xlat0 = u_xlat0 * vs_COLOR0;
					    u_xlat6 = u_xlat0.w;
					    u_xlat6 = clamp(u_xlat6, 0.0, 1.0);
					    u_xlat0.w = u_xlat6 * vs_TEXCOORD4;
					    u_xlat1 = u_xlat0 + vec4(-1.0, -1.0, -1.0, -1.0);
					    SV_Target0 = u_xlat0.wwww * u_xlat1 + vec4(1.0, 1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					bool u_xlatb1;
					float u_xlat6;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1.x = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat0.w = u_xlat0.w * u_xlat1.x;
					    u_xlat0 = u_xlat0 * vs_COLOR0;
					    u_xlat6 = u_xlat0.w;
					    u_xlat6 = clamp(u_xlat6, 0.0, 1.0);
					    u_xlat0.w = u_xlat6 * vs_TEXCOORD4;
					    u_xlat1 = u_xlat0 + vec4(-1.0, -1.0, -1.0, -1.0);
					    SV_Target0 = u_xlat0.wwww * u_xlat1 + vec4(1.0, 1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendMul" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[7];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					bool u_xlatb2;
					float u_xlat9;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2.x = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2.x;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat9 = u_xlat0.w;
					    u_xlat9 = clamp(u_xlat9, 0.0, 1.0);
					    u_xlat0.w = u_xlat9 * vs_TEXCOORD4;
					    u_xlat1 = u_xlat0 + vec4(-1.0, -1.0, -1.0, -1.0);
					    SV_Target0 = u_xlat0.wwww * u_xlat1 + vec4(1.0, 1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[6];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					bool u_xlatb2;
					float u_xlat9;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2.x = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2.x;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat9 = u_xlat0.w;
					    u_xlat9 = clamp(u_xlat9, 0.0, 1.0);
					    u_xlat0.w = u_xlat9 * vs_TEXCOORD4;
					    u_xlat1 = u_xlat0 + vec4(-1.0, -1.0, -1.0, -1.0);
					    SV_Target0 = u_xlat0.wwww * u_xlat1 + vec4(1.0, 1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendMul" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3.x;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3.x;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendMul" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					bool u_xlatb2;
					float u_xlat9;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2.x = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2.x;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat9 = u_xlat0.w;
					    u_xlat9 = clamp(u_xlat9, 0.0, 1.0);
					    u_xlat0.w = u_xlat9 * vs_TEXCOORD4;
					    u_xlat1 = u_xlat0 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat0.xyz = u_xlat0.www * u_xlat1.xyz;
					    SV_Target0.w = u_xlat0.w * u_xlat1.w + 1.0;
					    u_xlat9 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat9 = (-u_xlat9) + 1.0;
					    u_xlat9 = u_xlat9 * _ProjectionParams.z;
					    u_xlat9 = max(u_xlat9, 0.0);
					    u_xlat9 = u_xlat9 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat9 = clamp(u_xlat9, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat9) * u_xlat0.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					bool u_xlatb2;
					float u_xlat9;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2.x = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2.x;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat9 = u_xlat0.w;
					    u_xlat9 = clamp(u_xlat9, 0.0, 1.0);
					    u_xlat0.w = u_xlat9 * vs_TEXCOORD4;
					    u_xlat1 = u_xlat0 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat0.xyz = u_xlat0.www * u_xlat1.xyz;
					    SV_Target0.w = u_xlat0.w * u_xlat1.w + 1.0;
					    u_xlat9 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat9 = (-u_xlat9) + 1.0;
					    u_xlat9 = u_xlat9 * _ProjectionParams.z;
					    u_xlat9 = max(u_xlat9, 0.0);
					    u_xlat9 = u_xlat9 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat9 = clamp(u_xlat9, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat9) * u_xlat0.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendMul" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3.x;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3.x;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendMul" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					bool u_xlatb2;
					float u_xlat9;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2.x = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2.x;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat9 = u_xlat0.w;
					    u_xlat9 = clamp(u_xlat9, 0.0, 1.0);
					    u_xlat0.w = u_xlat9 * vs_TEXCOORD4;
					    u_xlat1 = u_xlat0 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat0.xyz = u_xlat0.www * u_xlat1.xyz;
					    SV_Target0.w = u_xlat0.w * u_xlat1.w + 1.0;
					    u_xlat9 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat9 = (-u_xlat9) + 1.0;
					    u_xlat9 = u_xlat9 * _ProjectionParams.z;
					    u_xlat9 = max(u_xlat9, 0.0);
					    u_xlat9 = u_xlat9 * unity_FogParams.y;
					    u_xlat9 = exp2((-u_xlat9));
					    u_xlat9 = min(u_xlat9, 1.0);
					    SV_Target0.xyz = vec3(u_xlat9) * u_xlat0.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					bool u_xlatb2;
					float u_xlat9;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2.x = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2.x;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat9 = u_xlat0.w;
					    u_xlat9 = clamp(u_xlat9, 0.0, 1.0);
					    u_xlat0.w = u_xlat9 * vs_TEXCOORD4;
					    u_xlat1 = u_xlat0 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat0.xyz = u_xlat0.www * u_xlat1.xyz;
					    SV_Target0.w = u_xlat0.w * u_xlat1.w + 1.0;
					    u_xlat9 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat9 = (-u_xlat9) + 1.0;
					    u_xlat9 = u_xlat9 * _ProjectionParams.z;
					    u_xlat9 = max(u_xlat9, 0.0);
					    u_xlat9 = u_xlat9 * unity_FogParams.y;
					    u_xlat9 = exp2((-u_xlat9));
					    u_xlat9 = min(u_xlat9, 1.0);
					    SV_Target0.xyz = vec3(u_xlat9) * u_xlat0.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendMul" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3.x;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3.x;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendMul" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					bool u_xlatb2;
					float u_xlat9;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2.x = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2.x;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat9 = u_xlat0.w;
					    u_xlat9 = clamp(u_xlat9, 0.0, 1.0);
					    u_xlat0.w = u_xlat9 * vs_TEXCOORD4;
					    u_xlat1 = u_xlat0 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat0.xyz = u_xlat0.www * u_xlat1.xyz;
					    SV_Target0.w = u_xlat0.w * u_xlat1.w + 1.0;
					    u_xlat9 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat9 = (-u_xlat9) + 1.0;
					    u_xlat9 = u_xlat9 * _ProjectionParams.z;
					    u_xlat9 = max(u_xlat9, 0.0);
					    u_xlat9 = u_xlat9 * unity_FogParams.x;
					    u_xlat9 = u_xlat9 * (-u_xlat9);
					    u_xlat9 = exp2(u_xlat9);
					    SV_Target0.xyz = vec3(u_xlat9) * u_xlat0.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					bool u_xlatb2;
					float u_xlat9;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2.x = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2.x;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat9 = u_xlat0.w;
					    u_xlat9 = clamp(u_xlat9, 0.0, 1.0);
					    u_xlat0.w = u_xlat9 * vs_TEXCOORD4;
					    u_xlat1 = u_xlat0 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat0.xyz = u_xlat0.www * u_xlat1.xyz;
					    SV_Target0.w = u_xlat0.w * u_xlat1.w + 1.0;
					    u_xlat9 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat9 = (-u_xlat9) + 1.0;
					    u_xlat9 = u_xlat9 * _ProjectionParams.z;
					    u_xlat9 = max(u_xlat9, 0.0);
					    u_xlat9 = u_xlat9 * unity_FogParams.x;
					    u_xlat9 = u_xlat9 * (-u_xlat9);
					    u_xlat9 = exp2(u_xlat9);
					    SV_Target0.xyz = vec3(u_xlat9) * u_xlat0.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendMul" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[7];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					bool u_xlatb2;
					float u_xlat9;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2.x = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2.x;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat9 = u_xlat0.w;
					    u_xlat9 = clamp(u_xlat9, 0.0, 1.0);
					    u_xlat0.w = u_xlat9 * vs_TEXCOORD4;
					    u_xlat1 = u_xlat0 + vec4(-1.0, -1.0, -1.0, -1.0);
					    SV_Target0 = u_xlat0.wwww * u_xlat1 + vec4(1.0, 1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[6];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					bool u_xlatb2;
					float u_xlat9;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2.x = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2.x;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat9 = u_xlat0.w;
					    u_xlat9 = clamp(u_xlat9, 0.0, 1.0);
					    u_xlat0.w = u_xlat9 * vs_TEXCOORD4;
					    u_xlat1 = u_xlat0 + vec4(-1.0, -1.0, -1.0, -1.0);
					    SV_Target0 = u_xlat0.wwww * u_xlat1 + vec4(1.0, 1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendMul" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[7];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					bool u_xlatb2;
					float u_xlat9;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2.x = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2.x;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat9 = u_xlat0.w;
					    u_xlat9 = clamp(u_xlat9, 0.0, 1.0);
					    u_xlat0.w = u_xlat9 * vs_TEXCOORD4;
					    u_xlat1 = u_xlat0 + vec4(-1.0, -1.0, -1.0, -1.0);
					    SV_Target0 = u_xlat0.wwww * u_xlat1 + vec4(1.0, 1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[6];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					bool u_xlatb2;
					float u_xlat9;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2.x = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2.x;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat9 = u_xlat0.w;
					    u_xlat9 = clamp(u_xlat9, 0.0, 1.0);
					    u_xlat0.w = u_xlat9 * vs_TEXCOORD4;
					    u_xlat1 = u_xlat0 + vec4(-1.0, -1.0, -1.0, -1.0);
					    SV_Target0 = u_xlat0.wwww * u_xlat1 + vec4(1.0, 1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendMul" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					bool u_xlatb2;
					float u_xlat9;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2.x = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2.x;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat9 = u_xlat0.w;
					    u_xlat9 = clamp(u_xlat9, 0.0, 1.0);
					    u_xlat0.w = u_xlat9 * vs_TEXCOORD4;
					    u_xlat1 = u_xlat0 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat0.xyz = u_xlat0.www * u_xlat1.xyz;
					    SV_Target0.w = u_xlat0.w * u_xlat1.w + 1.0;
					    u_xlat9 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat9 = (-u_xlat9) + 1.0;
					    u_xlat9 = u_xlat9 * _ProjectionParams.z;
					    u_xlat9 = max(u_xlat9, 0.0);
					    u_xlat9 = u_xlat9 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat9 = clamp(u_xlat9, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat9) * u_xlat0.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					bool u_xlatb2;
					float u_xlat9;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2.x = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2.x;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat9 = u_xlat0.w;
					    u_xlat9 = clamp(u_xlat9, 0.0, 1.0);
					    u_xlat0.w = u_xlat9 * vs_TEXCOORD4;
					    u_xlat1 = u_xlat0 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat0.xyz = u_xlat0.www * u_xlat1.xyz;
					    SV_Target0.w = u_xlat0.w * u_xlat1.w + 1.0;
					    u_xlat9 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat9 = (-u_xlat9) + 1.0;
					    u_xlat9 = u_xlat9 * _ProjectionParams.z;
					    u_xlat9 = max(u_xlat9, 0.0);
					    u_xlat9 = u_xlat9 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat9 = clamp(u_xlat9, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat9) * u_xlat0.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendMul" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					bool u_xlatb2;
					float u_xlat9;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2.x = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2.x;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat9 = u_xlat0.w;
					    u_xlat9 = clamp(u_xlat9, 0.0, 1.0);
					    u_xlat0.w = u_xlat9 * vs_TEXCOORD4;
					    u_xlat1 = u_xlat0 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat0.xyz = u_xlat0.www * u_xlat1.xyz;
					    SV_Target0.w = u_xlat0.w * u_xlat1.w + 1.0;
					    u_xlat9 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat9 = (-u_xlat9) + 1.0;
					    u_xlat9 = u_xlat9 * _ProjectionParams.z;
					    u_xlat9 = max(u_xlat9, 0.0);
					    u_xlat9 = u_xlat9 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat9 = clamp(u_xlat9, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat9) * u_xlat0.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					bool u_xlatb2;
					float u_xlat9;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2.x = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2.x;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat9 = u_xlat0.w;
					    u_xlat9 = clamp(u_xlat9, 0.0, 1.0);
					    u_xlat0.w = u_xlat9 * vs_TEXCOORD4;
					    u_xlat1 = u_xlat0 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat0.xyz = u_xlat0.www * u_xlat1.xyz;
					    SV_Target0.w = u_xlat0.w * u_xlat1.w + 1.0;
					    u_xlat9 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat9 = (-u_xlat9) + 1.0;
					    u_xlat9 = u_xlat9 * _ProjectionParams.z;
					    u_xlat9 = max(u_xlat9, 0.0);
					    u_xlat9 = u_xlat9 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat9 = clamp(u_xlat9, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat9) * u_xlat0.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendMul" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					bool u_xlatb2;
					float u_xlat9;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2.x = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2.x;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat9 = u_xlat0.w;
					    u_xlat9 = clamp(u_xlat9, 0.0, 1.0);
					    u_xlat0.w = u_xlat9 * vs_TEXCOORD4;
					    u_xlat1 = u_xlat0 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat0.xyz = u_xlat0.www * u_xlat1.xyz;
					    SV_Target0.w = u_xlat0.w * u_xlat1.w + 1.0;
					    u_xlat9 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat9 = (-u_xlat9) + 1.0;
					    u_xlat9 = u_xlat9 * _ProjectionParams.z;
					    u_xlat9 = max(u_xlat9, 0.0);
					    u_xlat9 = u_xlat9 * unity_FogParams.y;
					    u_xlat9 = exp2((-u_xlat9));
					    u_xlat9 = min(u_xlat9, 1.0);
					    SV_Target0.xyz = vec3(u_xlat9) * u_xlat0.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					bool u_xlatb2;
					float u_xlat9;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2.x = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2.x;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat9 = u_xlat0.w;
					    u_xlat9 = clamp(u_xlat9, 0.0, 1.0);
					    u_xlat0.w = u_xlat9 * vs_TEXCOORD4;
					    u_xlat1 = u_xlat0 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat0.xyz = u_xlat0.www * u_xlat1.xyz;
					    SV_Target0.w = u_xlat0.w * u_xlat1.w + 1.0;
					    u_xlat9 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat9 = (-u_xlat9) + 1.0;
					    u_xlat9 = u_xlat9 * _ProjectionParams.z;
					    u_xlat9 = max(u_xlat9, 0.0);
					    u_xlat9 = u_xlat9 * unity_FogParams.y;
					    u_xlat9 = exp2((-u_xlat9));
					    u_xlat9 = min(u_xlat9, 1.0);
					    SV_Target0.xyz = vec3(u_xlat9) * u_xlat0.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendMul" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					bool u_xlatb2;
					float u_xlat9;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2.x = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2.x;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat9 = u_xlat0.w;
					    u_xlat9 = clamp(u_xlat9, 0.0, 1.0);
					    u_xlat0.w = u_xlat9 * vs_TEXCOORD4;
					    u_xlat1 = u_xlat0 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat0.xyz = u_xlat0.www * u_xlat1.xyz;
					    SV_Target0.w = u_xlat0.w * u_xlat1.w + 1.0;
					    u_xlat9 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat9 = (-u_xlat9) + 1.0;
					    u_xlat9 = u_xlat9 * _ProjectionParams.z;
					    u_xlat9 = max(u_xlat9, 0.0);
					    u_xlat9 = u_xlat9 * unity_FogParams.y;
					    u_xlat9 = exp2((-u_xlat9));
					    u_xlat9 = min(u_xlat9, 1.0);
					    SV_Target0.xyz = vec3(u_xlat9) * u_xlat0.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					bool u_xlatb2;
					float u_xlat9;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2.x = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2.x;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat9 = u_xlat0.w;
					    u_xlat9 = clamp(u_xlat9, 0.0, 1.0);
					    u_xlat0.w = u_xlat9 * vs_TEXCOORD4;
					    u_xlat1 = u_xlat0 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat0.xyz = u_xlat0.www * u_xlat1.xyz;
					    SV_Target0.w = u_xlat0.w * u_xlat1.w + 1.0;
					    u_xlat9 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat9 = (-u_xlat9) + 1.0;
					    u_xlat9 = u_xlat9 * _ProjectionParams.z;
					    u_xlat9 = max(u_xlat9, 0.0);
					    u_xlat9 = u_xlat9 * unity_FogParams.y;
					    u_xlat9 = exp2((-u_xlat9));
					    u_xlat9 = min(u_xlat9, 1.0);
					    SV_Target0.xyz = vec3(u_xlat9) * u_xlat0.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendMul" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					bool u_xlatb2;
					float u_xlat9;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2.x = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2.x;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat9 = u_xlat0.w;
					    u_xlat9 = clamp(u_xlat9, 0.0, 1.0);
					    u_xlat0.w = u_xlat9 * vs_TEXCOORD4;
					    u_xlat1 = u_xlat0 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat0.xyz = u_xlat0.www * u_xlat1.xyz;
					    SV_Target0.w = u_xlat0.w * u_xlat1.w + 1.0;
					    u_xlat9 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat9 = (-u_xlat9) + 1.0;
					    u_xlat9 = u_xlat9 * _ProjectionParams.z;
					    u_xlat9 = max(u_xlat9, 0.0);
					    u_xlat9 = u_xlat9 * unity_FogParams.x;
					    u_xlat9 = u_xlat9 * (-u_xlat9);
					    u_xlat9 = exp2(u_xlat9);
					    SV_Target0.xyz = vec3(u_xlat9) * u_xlat0.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					bool u_xlatb2;
					float u_xlat9;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2.x = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2.x;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat9 = u_xlat0.w;
					    u_xlat9 = clamp(u_xlat9, 0.0, 1.0);
					    u_xlat0.w = u_xlat9 * vs_TEXCOORD4;
					    u_xlat1 = u_xlat0 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat0.xyz = u_xlat0.www * u_xlat1.xyz;
					    SV_Target0.w = u_xlat0.w * u_xlat1.w + 1.0;
					    u_xlat9 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat9 = (-u_xlat9) + 1.0;
					    u_xlat9 = u_xlat9 * _ProjectionParams.z;
					    u_xlat9 = max(u_xlat9, 0.0);
					    u_xlat9 = u_xlat9 * unity_FogParams.x;
					    u_xlat9 = u_xlat9 * (-u_xlat9);
					    u_xlat9 = exp2(u_xlat9);
					    SV_Target0.xyz = vec3(u_xlat9) * u_xlat0.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendMul" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					bool u_xlatb2;
					float u_xlat9;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2.x = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2.x;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat9 = u_xlat0.w;
					    u_xlat9 = clamp(u_xlat9, 0.0, 1.0);
					    u_xlat0.w = u_xlat9 * vs_TEXCOORD4;
					    u_xlat1 = u_xlat0 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat0.xyz = u_xlat0.www * u_xlat1.xyz;
					    SV_Target0.w = u_xlat0.w * u_xlat1.w + 1.0;
					    u_xlat9 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat9 = (-u_xlat9) + 1.0;
					    u_xlat9 = u_xlat9 * _ProjectionParams.z;
					    u_xlat9 = max(u_xlat9, 0.0);
					    u_xlat9 = u_xlat9 * unity_FogParams.x;
					    u_xlat9 = u_xlat9 * (-u_xlat9);
					    u_xlat9 = exp2(u_xlat9);
					    SV_Target0.xyz = vec3(u_xlat9) * u_xlat0.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					bool u_xlatb2;
					float u_xlat9;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2.x = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2.x;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat9 = u_xlat0.w;
					    u_xlat9 = clamp(u_xlat9, 0.0, 1.0);
					    u_xlat0.w = u_xlat9 * vs_TEXCOORD4;
					    u_xlat1 = u_xlat0 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat0.xyz = u_xlat0.www * u_xlat1.xyz;
					    SV_Target0.w = u_xlat0.w * u_xlat1.w + 1.0;
					    u_xlat9 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat9 = (-u_xlat9) + 1.0;
					    u_xlat9 = u_xlat9 * _ProjectionParams.z;
					    u_xlat9 = max(u_xlat9, 0.0);
					    u_xlat9 = u_xlat9 * unity_FogParams.x;
					    u_xlat9 = u_xlat9 * (-u_xlat9);
					    u_xlat9 = exp2(u_xlat9);
					    SV_Target0.xyz = vec3(u_xlat9) * u_xlat0.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendMul" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlat0.xyz = u_xlat0.xyz + u_xlat0.xyz;
					    u_xlat0.xyz = u_xlat0.xyz * _TintColor.xyz;
					    u_xlat1.xyz = u_xlat0.xyz * vs_COLOR0.xyz;
					    u_xlat0.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlatb0 = u_xlat0.w>=u_xlat0.x;
					    u_xlat1.w = u_xlatb0 ? 1.0 : float(0.0);
					    u_xlat0 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    SV_Target0 = u_xlat1.wwww * u_xlat0 + vec4(1.0, 1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlat0.xyz = u_xlat0.xyz + u_xlat0.xyz;
					    u_xlat0.xyz = u_xlat0.xyz * _TintColor.xyz;
					    u_xlat1.xyz = u_xlat0.xyz * vs_COLOR0.xyz;
					    u_xlat0.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlatb0 = u_xlat0.w>=u_xlat0.x;
					    u_xlat1.w = u_xlatb0 ? 1.0 : float(0.0);
					    u_xlat0 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    SV_Target0 = u_xlat1.wwww * u_xlat0 + vec4(1.0, 1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendMul" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[7];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb0 = u_xlat1.w>=u_xlat0.x;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat1.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat1.w = u_xlatb0 ? 1.0 : float(0.0);
					    u_xlat0 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    SV_Target0 = u_xlat1.wwww * u_xlat0 + vec4(1.0, 1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[6];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb0 = u_xlat1.w>=u_xlat0.x;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat1.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat1.w = u_xlatb0 ? 1.0 : float(0.0);
					    u_xlat0 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    SV_Target0 = u_xlat1.wwww * u_xlat0 + vec4(1.0, 1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendMul" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat2.w = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1 = u_xlat2 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat2.w = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1 = u_xlat2 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendMul" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					float u_xlat9;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlat0.xyz = u_xlat0.xyz + u_xlat0.xyz;
					    u_xlat0.xyz = u_xlat0.xyz * _TintColor.xyz;
					    u_xlat1.xyz = u_xlat0.xyz * vs_COLOR0.xyz;
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat2 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat2.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlatb0 = u_xlat0.w>=u_xlat0.x;
					    u_xlat1.w = u_xlatb0 ? 1.0 : float(0.0);
					    u_xlat0 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat0.xyz = u_xlat0.xyz * u_xlat1.www;
					    SV_Target0.w = u_xlat1.w * u_xlat0.w + 1.0;
					    u_xlat9 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat9 = (-u_xlat9) + 1.0;
					    u_xlat9 = u_xlat9 * _ProjectionParams.z;
					    u_xlat9 = max(u_xlat9, 0.0);
					    u_xlat9 = u_xlat9 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat9 = clamp(u_xlat9, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat9) * u_xlat0.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					float u_xlat9;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlat0.xyz = u_xlat0.xyz + u_xlat0.xyz;
					    u_xlat0.xyz = u_xlat0.xyz * _TintColor.xyz;
					    u_xlat1.xyz = u_xlat0.xyz * vs_COLOR0.xyz;
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat2 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat2.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlatb0 = u_xlat0.w>=u_xlat0.x;
					    u_xlat1.w = u_xlatb0 ? 1.0 : float(0.0);
					    u_xlat0 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat0.xyz = u_xlat0.xyz * u_xlat1.www;
					    SV_Target0.w = u_xlat1.w * u_xlat0.w + 1.0;
					    u_xlat9 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat9 = (-u_xlat9) + 1.0;
					    u_xlat9 = u_xlat9 * _ProjectionParams.z;
					    u_xlat9 = max(u_xlat9, 0.0);
					    u_xlat9 = u_xlat9 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat9 = clamp(u_xlat9, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat9) * u_xlat0.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendMul" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat2.w = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1 = u_xlat2 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat2.w = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1 = u_xlat2 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendMul" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec3 u_xlat4;
					bool u_xlatb4;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat4.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat4.xyz = u_xlat4.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat4.xyz * vs_COLOR0.xyz;
					    u_xlat4.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat3 = texture(_CameraDepthTexture, u_xlat4.xy);
					    u_xlat4.x = _ZBufferParams.z * u_xlat3.x + _ZBufferParams.w;
					    u_xlat4.x = float(1.0) / u_xlat4.x;
					    u_xlat4.x = u_xlat4.x + (-vs_TEXCOORD3.z);
					    u_xlat4.x = u_xlat4.x * _InvFade;
					    u_xlat4.x = clamp(u_xlat4.x, 0.0, 1.0);
					    u_xlat4.x = (-vs_COLOR0.w) * u_xlat4.x + 1.0;
					    u_xlat4.x = u_xlat4.x + _Cutout;
					    u_xlatb4 = u_xlat1.w>=u_xlat4.x;
					    u_xlat2.w = u_xlatb4 ? 1.0 : float(0.0);
					    u_xlat1 = u_xlat2 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat4.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat4.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec3 u_xlat4;
					bool u_xlatb4;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat4.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat4.xyz = u_xlat4.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat4.xyz * vs_COLOR0.xyz;
					    u_xlat4.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat3 = texture(_CameraDepthTexture, u_xlat4.xy);
					    u_xlat4.x = _ZBufferParams.z * u_xlat3.x + _ZBufferParams.w;
					    u_xlat4.x = float(1.0) / u_xlat4.x;
					    u_xlat4.x = u_xlat4.x + (-vs_TEXCOORD3.z);
					    u_xlat4.x = u_xlat4.x * _InvFade;
					    u_xlat4.x = clamp(u_xlat4.x, 0.0, 1.0);
					    u_xlat4.x = (-vs_COLOR0.w) * u_xlat4.x + 1.0;
					    u_xlat4.x = u_xlat4.x + _Cutout;
					    u_xlatb4 = u_xlat1.w>=u_xlat4.x;
					    u_xlat2.w = u_xlatb4 ? 1.0 : float(0.0);
					    u_xlat1 = u_xlat2 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat4.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat4.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendMul" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat2.w = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1 = u_xlat2 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat2.w = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1 = u_xlat2 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendMul" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec3 u_xlat4;
					bool u_xlatb4;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat4.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat4.xyz = u_xlat4.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat4.xyz * vs_COLOR0.xyz;
					    u_xlat4.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat3 = texture(_CameraDepthTexture, u_xlat4.xy);
					    u_xlat4.x = _ZBufferParams.z * u_xlat3.x + _ZBufferParams.w;
					    u_xlat4.x = float(1.0) / u_xlat4.x;
					    u_xlat4.x = u_xlat4.x + (-vs_TEXCOORD3.z);
					    u_xlat4.x = u_xlat4.x * _InvFade;
					    u_xlat4.x = clamp(u_xlat4.x, 0.0, 1.0);
					    u_xlat4.x = (-vs_COLOR0.w) * u_xlat4.x + 1.0;
					    u_xlat4.x = u_xlat4.x + _Cutout;
					    u_xlatb4 = u_xlat1.w>=u_xlat4.x;
					    u_xlat2.w = u_xlatb4 ? 1.0 : float(0.0);
					    u_xlat1 = u_xlat2 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat4.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat4.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec3 u_xlat4;
					bool u_xlatb4;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat4.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat4.xyz = u_xlat4.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat4.xyz * vs_COLOR0.xyz;
					    u_xlat4.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat3 = texture(_CameraDepthTexture, u_xlat4.xy);
					    u_xlat4.x = _ZBufferParams.z * u_xlat3.x + _ZBufferParams.w;
					    u_xlat4.x = float(1.0) / u_xlat4.x;
					    u_xlat4.x = u_xlat4.x + (-vs_TEXCOORD3.z);
					    u_xlat4.x = u_xlat4.x * _InvFade;
					    u_xlat4.x = clamp(u_xlat4.x, 0.0, 1.0);
					    u_xlat4.x = (-vs_COLOR0.w) * u_xlat4.x + 1.0;
					    u_xlat4.x = u_xlat4.x + _Cutout;
					    u_xlatb4 = u_xlat1.w>=u_xlat4.x;
					    u_xlat2.w = u_xlatb4 ? 1.0 : float(0.0);
					    u_xlat1 = u_xlat2 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat4.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat4.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendMul" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[7];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb0 = u_xlat1.w>=u_xlat0.x;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat1.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat1.w = u_xlatb0 ? 1.0 : float(0.0);
					    u_xlat0 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    SV_Target0 = u_xlat1.wwww * u_xlat0 + vec4(1.0, 1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[6];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb0 = u_xlat1.w>=u_xlat0.x;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat1.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat1.w = u_xlatb0 ? 1.0 : float(0.0);
					    u_xlat0 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    SV_Target0 = u_xlat1.wwww * u_xlat0 + vec4(1.0, 1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendMul" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[7];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb0 = u_xlat1.w>=u_xlat0.x;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat1.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat1.w = u_xlatb0 ? 1.0 : float(0.0);
					    u_xlat0 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    SV_Target0 = u_xlat1.wwww * u_xlat0 + vec4(1.0, 1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[6];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb0 = u_xlat1.w>=u_xlat0.x;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat1.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat1.w = u_xlatb0 ? 1.0 : float(0.0);
					    u_xlat0 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    SV_Target0 = u_xlat1.wwww * u_xlat0 + vec4(1.0, 1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendMul" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					float u_xlat9;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlat0.xyz = u_xlat0.xyz + u_xlat0.xyz;
					    u_xlat0.xyz = u_xlat0.xyz * _TintColor.xyz;
					    u_xlat1.xyz = u_xlat0.xyz * vs_COLOR0.xyz;
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat2 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat2.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlatb0 = u_xlat0.w>=u_xlat0.x;
					    u_xlat1.w = u_xlatb0 ? 1.0 : float(0.0);
					    u_xlat0 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat0.xyz = u_xlat0.xyz * u_xlat1.www;
					    SV_Target0.w = u_xlat1.w * u_xlat0.w + 1.0;
					    u_xlat9 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat9 = (-u_xlat9) + 1.0;
					    u_xlat9 = u_xlat9 * _ProjectionParams.z;
					    u_xlat9 = max(u_xlat9, 0.0);
					    u_xlat9 = u_xlat9 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat9 = clamp(u_xlat9, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat9) * u_xlat0.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					float u_xlat9;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlat0.xyz = u_xlat0.xyz + u_xlat0.xyz;
					    u_xlat0.xyz = u_xlat0.xyz * _TintColor.xyz;
					    u_xlat1.xyz = u_xlat0.xyz * vs_COLOR0.xyz;
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat2 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat2.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlatb0 = u_xlat0.w>=u_xlat0.x;
					    u_xlat1.w = u_xlatb0 ? 1.0 : float(0.0);
					    u_xlat0 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat0.xyz = u_xlat0.xyz * u_xlat1.www;
					    SV_Target0.w = u_xlat1.w * u_xlat0.w + 1.0;
					    u_xlat9 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat9 = (-u_xlat9) + 1.0;
					    u_xlat9 = u_xlat9 * _ProjectionParams.z;
					    u_xlat9 = max(u_xlat9, 0.0);
					    u_xlat9 = u_xlat9 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat9 = clamp(u_xlat9, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat9) * u_xlat0.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendMul" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					float u_xlat9;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlat0.xyz = u_xlat0.xyz + u_xlat0.xyz;
					    u_xlat0.xyz = u_xlat0.xyz * _TintColor.xyz;
					    u_xlat1.xyz = u_xlat0.xyz * vs_COLOR0.xyz;
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat2 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat2.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlatb0 = u_xlat0.w>=u_xlat0.x;
					    u_xlat1.w = u_xlatb0 ? 1.0 : float(0.0);
					    u_xlat0 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat0.xyz = u_xlat0.xyz * u_xlat1.www;
					    SV_Target0.w = u_xlat1.w * u_xlat0.w + 1.0;
					    u_xlat9 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat9 = (-u_xlat9) + 1.0;
					    u_xlat9 = u_xlat9 * _ProjectionParams.z;
					    u_xlat9 = max(u_xlat9, 0.0);
					    u_xlat9 = u_xlat9 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat9 = clamp(u_xlat9, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat9) * u_xlat0.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					float u_xlat9;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlat0.xyz = u_xlat0.xyz + u_xlat0.xyz;
					    u_xlat0.xyz = u_xlat0.xyz * _TintColor.xyz;
					    u_xlat1.xyz = u_xlat0.xyz * vs_COLOR0.xyz;
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat2 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat2.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlatb0 = u_xlat0.w>=u_xlat0.x;
					    u_xlat1.w = u_xlatb0 ? 1.0 : float(0.0);
					    u_xlat0 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat0.xyz = u_xlat0.xyz * u_xlat1.www;
					    SV_Target0.w = u_xlat1.w * u_xlat0.w + 1.0;
					    u_xlat9 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat9 = (-u_xlat9) + 1.0;
					    u_xlat9 = u_xlat9 * _ProjectionParams.z;
					    u_xlat9 = max(u_xlat9, 0.0);
					    u_xlat9 = u_xlat9 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat9 = clamp(u_xlat9, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat9) * u_xlat0.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendMul" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec3 u_xlat4;
					bool u_xlatb4;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat4.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat4.xyz = u_xlat4.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat4.xyz * vs_COLOR0.xyz;
					    u_xlat4.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat3 = texture(_CameraDepthTexture, u_xlat4.xy);
					    u_xlat4.x = _ZBufferParams.z * u_xlat3.x + _ZBufferParams.w;
					    u_xlat4.x = float(1.0) / u_xlat4.x;
					    u_xlat4.x = u_xlat4.x + (-vs_TEXCOORD3.z);
					    u_xlat4.x = u_xlat4.x * _InvFade;
					    u_xlat4.x = clamp(u_xlat4.x, 0.0, 1.0);
					    u_xlat4.x = (-vs_COLOR0.w) * u_xlat4.x + 1.0;
					    u_xlat4.x = u_xlat4.x + _Cutout;
					    u_xlatb4 = u_xlat1.w>=u_xlat4.x;
					    u_xlat2.w = u_xlatb4 ? 1.0 : float(0.0);
					    u_xlat1 = u_xlat2 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat4.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat4.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec3 u_xlat4;
					bool u_xlatb4;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat4.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat4.xyz = u_xlat4.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat4.xyz * vs_COLOR0.xyz;
					    u_xlat4.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat3 = texture(_CameraDepthTexture, u_xlat4.xy);
					    u_xlat4.x = _ZBufferParams.z * u_xlat3.x + _ZBufferParams.w;
					    u_xlat4.x = float(1.0) / u_xlat4.x;
					    u_xlat4.x = u_xlat4.x + (-vs_TEXCOORD3.z);
					    u_xlat4.x = u_xlat4.x * _InvFade;
					    u_xlat4.x = clamp(u_xlat4.x, 0.0, 1.0);
					    u_xlat4.x = (-vs_COLOR0.w) * u_xlat4.x + 1.0;
					    u_xlat4.x = u_xlat4.x + _Cutout;
					    u_xlatb4 = u_xlat1.w>=u_xlat4.x;
					    u_xlat2.w = u_xlatb4 ? 1.0 : float(0.0);
					    u_xlat1 = u_xlat2 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat4.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat4.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendMul" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec3 u_xlat4;
					bool u_xlatb4;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat4.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat4.xyz = u_xlat4.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat4.xyz * vs_COLOR0.xyz;
					    u_xlat4.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat3 = texture(_CameraDepthTexture, u_xlat4.xy);
					    u_xlat4.x = _ZBufferParams.z * u_xlat3.x + _ZBufferParams.w;
					    u_xlat4.x = float(1.0) / u_xlat4.x;
					    u_xlat4.x = u_xlat4.x + (-vs_TEXCOORD3.z);
					    u_xlat4.x = u_xlat4.x * _InvFade;
					    u_xlat4.x = clamp(u_xlat4.x, 0.0, 1.0);
					    u_xlat4.x = (-vs_COLOR0.w) * u_xlat4.x + 1.0;
					    u_xlat4.x = u_xlat4.x + _Cutout;
					    u_xlatb4 = u_xlat1.w>=u_xlat4.x;
					    u_xlat2.w = u_xlatb4 ? 1.0 : float(0.0);
					    u_xlat1 = u_xlat2 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat4.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat4.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec3 u_xlat4;
					bool u_xlatb4;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat4.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat4.xyz = u_xlat4.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat4.xyz * vs_COLOR0.xyz;
					    u_xlat4.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat3 = texture(_CameraDepthTexture, u_xlat4.xy);
					    u_xlat4.x = _ZBufferParams.z * u_xlat3.x + _ZBufferParams.w;
					    u_xlat4.x = float(1.0) / u_xlat4.x;
					    u_xlat4.x = u_xlat4.x + (-vs_TEXCOORD3.z);
					    u_xlat4.x = u_xlat4.x * _InvFade;
					    u_xlat4.x = clamp(u_xlat4.x, 0.0, 1.0);
					    u_xlat4.x = (-vs_COLOR0.w) * u_xlat4.x + 1.0;
					    u_xlat4.x = u_xlat4.x + _Cutout;
					    u_xlatb4 = u_xlat1.w>=u_xlat4.x;
					    u_xlat2.w = u_xlatb4 ? 1.0 : float(0.0);
					    u_xlat1 = u_xlat2 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat4.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat4.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendMul" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec3 u_xlat4;
					bool u_xlatb4;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat4.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat4.xyz = u_xlat4.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat4.xyz * vs_COLOR0.xyz;
					    u_xlat4.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat3 = texture(_CameraDepthTexture, u_xlat4.xy);
					    u_xlat4.x = _ZBufferParams.z * u_xlat3.x + _ZBufferParams.w;
					    u_xlat4.x = float(1.0) / u_xlat4.x;
					    u_xlat4.x = u_xlat4.x + (-vs_TEXCOORD3.z);
					    u_xlat4.x = u_xlat4.x * _InvFade;
					    u_xlat4.x = clamp(u_xlat4.x, 0.0, 1.0);
					    u_xlat4.x = (-vs_COLOR0.w) * u_xlat4.x + 1.0;
					    u_xlat4.x = u_xlat4.x + _Cutout;
					    u_xlatb4 = u_xlat1.w>=u_xlat4.x;
					    u_xlat2.w = u_xlatb4 ? 1.0 : float(0.0);
					    u_xlat1 = u_xlat2 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat4.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat4.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec3 u_xlat4;
					bool u_xlatb4;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat4.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat4.xyz = u_xlat4.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat4.xyz * vs_COLOR0.xyz;
					    u_xlat4.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat3 = texture(_CameraDepthTexture, u_xlat4.xy);
					    u_xlat4.x = _ZBufferParams.z * u_xlat3.x + _ZBufferParams.w;
					    u_xlat4.x = float(1.0) / u_xlat4.x;
					    u_xlat4.x = u_xlat4.x + (-vs_TEXCOORD3.z);
					    u_xlat4.x = u_xlat4.x * _InvFade;
					    u_xlat4.x = clamp(u_xlat4.x, 0.0, 1.0);
					    u_xlat4.x = (-vs_COLOR0.w) * u_xlat4.x + 1.0;
					    u_xlat4.x = u_xlat4.x + _Cutout;
					    u_xlatb4 = u_xlat1.w>=u_xlat4.x;
					    u_xlat2.w = u_xlatb4 ? 1.0 : float(0.0);
					    u_xlat1 = u_xlat2 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat4.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat4.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendMul" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec3 u_xlat4;
					bool u_xlatb4;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat4.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat4.xyz = u_xlat4.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat4.xyz * vs_COLOR0.xyz;
					    u_xlat4.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat3 = texture(_CameraDepthTexture, u_xlat4.xy);
					    u_xlat4.x = _ZBufferParams.z * u_xlat3.x + _ZBufferParams.w;
					    u_xlat4.x = float(1.0) / u_xlat4.x;
					    u_xlat4.x = u_xlat4.x + (-vs_TEXCOORD3.z);
					    u_xlat4.x = u_xlat4.x * _InvFade;
					    u_xlat4.x = clamp(u_xlat4.x, 0.0, 1.0);
					    u_xlat4.x = (-vs_COLOR0.w) * u_xlat4.x + 1.0;
					    u_xlat4.x = u_xlat4.x + _Cutout;
					    u_xlatb4 = u_xlat1.w>=u_xlat4.x;
					    u_xlat2.w = u_xlatb4 ? 1.0 : float(0.0);
					    u_xlat1 = u_xlat2 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat4.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat4.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec3 u_xlat4;
					bool u_xlatb4;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat4.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat4.xyz = u_xlat4.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat4.xyz * vs_COLOR0.xyz;
					    u_xlat4.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat3 = texture(_CameraDepthTexture, u_xlat4.xy);
					    u_xlat4.x = _ZBufferParams.z * u_xlat3.x + _ZBufferParams.w;
					    u_xlat4.x = float(1.0) / u_xlat4.x;
					    u_xlat4.x = u_xlat4.x + (-vs_TEXCOORD3.z);
					    u_xlat4.x = u_xlat4.x * _InvFade;
					    u_xlat4.x = clamp(u_xlat4.x, 0.0, 1.0);
					    u_xlat4.x = (-vs_COLOR0.w) * u_xlat4.x + 1.0;
					    u_xlat4.x = u_xlat4.x + _Cutout;
					    u_xlatb4 = u_xlat1.w>=u_xlat4.x;
					    u_xlat2.w = u_xlatb4 ? 1.0 : float(0.0);
					    u_xlat1 = u_xlat2 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat4.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat4.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendMul" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlat0.xyz = u_xlat0.xyz + u_xlat0.xyz;
					    u_xlat0.xyz = u_xlat0.xyz * _TintColor.xyz;
					    u_xlat1.xyz = u_xlat0.xyz * vs_COLOR0.xyz;
					    u_xlat0.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlatb0 = u_xlat0.w>=u_xlat0.x;
					    u_xlat0.x = u_xlatb0 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat0.x * vs_TEXCOORD4;
					    u_xlat0 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    SV_Target0 = u_xlat1.wwww * u_xlat0 + vec4(1.0, 1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlat0.xyz = u_xlat0.xyz + u_xlat0.xyz;
					    u_xlat0.xyz = u_xlat0.xyz * _TintColor.xyz;
					    u_xlat1.xyz = u_xlat0.xyz * vs_COLOR0.xyz;
					    u_xlat0.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlatb0 = u_xlat0.w>=u_xlat0.x;
					    u_xlat0.x = u_xlatb0 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat0.x * vs_TEXCOORD4;
					    u_xlat0 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    SV_Target0 = u_xlat1.wwww * u_xlat0 + vec4(1.0, 1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendMul" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[7];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb0 = u_xlat1.w>=u_xlat0.x;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat1.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat0.x = u_xlatb0 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat0.x * vs_TEXCOORD4;
					    u_xlat0 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    SV_Target0 = u_xlat1.wwww * u_xlat0 + vec4(1.0, 1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[6];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb0 = u_xlat1.w>=u_xlat0.x;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat1.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat0.x = u_xlatb0 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat0.x * vs_TEXCOORD4;
					    u_xlat0 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    SV_Target0 = u_xlat1.wwww * u_xlat0 + vec4(1.0, 1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendMul" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat2.w = u_xlat3.x * vs_TEXCOORD4;
					    u_xlat1 = u_xlat2 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat2.w = u_xlat3.x * vs_TEXCOORD4;
					    u_xlat1 = u_xlat2 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendMul" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					float u_xlat9;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlat0.xyz = u_xlat0.xyz + u_xlat0.xyz;
					    u_xlat0.xyz = u_xlat0.xyz * _TintColor.xyz;
					    u_xlat1.xyz = u_xlat0.xyz * vs_COLOR0.xyz;
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat2 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat2.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlatb0 = u_xlat0.w>=u_xlat0.x;
					    u_xlat0.x = u_xlatb0 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat0.x * vs_TEXCOORD4;
					    u_xlat0 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat0.xyz = u_xlat0.xyz * u_xlat1.www;
					    SV_Target0.w = u_xlat1.w * u_xlat0.w + 1.0;
					    u_xlat9 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat9 = (-u_xlat9) + 1.0;
					    u_xlat9 = u_xlat9 * _ProjectionParams.z;
					    u_xlat9 = max(u_xlat9, 0.0);
					    u_xlat9 = u_xlat9 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat9 = clamp(u_xlat9, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat9) * u_xlat0.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					float u_xlat9;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlat0.xyz = u_xlat0.xyz + u_xlat0.xyz;
					    u_xlat0.xyz = u_xlat0.xyz * _TintColor.xyz;
					    u_xlat1.xyz = u_xlat0.xyz * vs_COLOR0.xyz;
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat2 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat2.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlatb0 = u_xlat0.w>=u_xlat0.x;
					    u_xlat0.x = u_xlatb0 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat0.x * vs_TEXCOORD4;
					    u_xlat0 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat0.xyz = u_xlat0.xyz * u_xlat1.www;
					    SV_Target0.w = u_xlat1.w * u_xlat0.w + 1.0;
					    u_xlat9 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat9 = (-u_xlat9) + 1.0;
					    u_xlat9 = u_xlat9 * _ProjectionParams.z;
					    u_xlat9 = max(u_xlat9, 0.0);
					    u_xlat9 = u_xlat9 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat9 = clamp(u_xlat9, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat9) * u_xlat0.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendMul" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat2.w = u_xlat3.x * vs_TEXCOORD4;
					    u_xlat1 = u_xlat2 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat2.w = u_xlat3.x * vs_TEXCOORD4;
					    u_xlat1 = u_xlat2 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendMul" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec3 u_xlat4;
					bool u_xlatb4;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat4.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat4.xyz = u_xlat4.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat4.xyz * vs_COLOR0.xyz;
					    u_xlat4.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat3 = texture(_CameraDepthTexture, u_xlat4.xy);
					    u_xlat4.x = _ZBufferParams.z * u_xlat3.x + _ZBufferParams.w;
					    u_xlat4.x = float(1.0) / u_xlat4.x;
					    u_xlat4.x = u_xlat4.x + (-vs_TEXCOORD3.z);
					    u_xlat4.x = u_xlat4.x * _InvFade;
					    u_xlat4.x = clamp(u_xlat4.x, 0.0, 1.0);
					    u_xlat4.x = (-vs_COLOR0.w) * u_xlat4.x + 1.0;
					    u_xlat4.x = u_xlat4.x + _Cutout;
					    u_xlatb4 = u_xlat1.w>=u_xlat4.x;
					    u_xlat4.x = u_xlatb4 ? 1.0 : float(0.0);
					    u_xlat2.w = u_xlat4.x * vs_TEXCOORD4;
					    u_xlat1 = u_xlat2 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat4.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat4.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec3 u_xlat4;
					bool u_xlatb4;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat4.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat4.xyz = u_xlat4.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat4.xyz * vs_COLOR0.xyz;
					    u_xlat4.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat3 = texture(_CameraDepthTexture, u_xlat4.xy);
					    u_xlat4.x = _ZBufferParams.z * u_xlat3.x + _ZBufferParams.w;
					    u_xlat4.x = float(1.0) / u_xlat4.x;
					    u_xlat4.x = u_xlat4.x + (-vs_TEXCOORD3.z);
					    u_xlat4.x = u_xlat4.x * _InvFade;
					    u_xlat4.x = clamp(u_xlat4.x, 0.0, 1.0);
					    u_xlat4.x = (-vs_COLOR0.w) * u_xlat4.x + 1.0;
					    u_xlat4.x = u_xlat4.x + _Cutout;
					    u_xlatb4 = u_xlat1.w>=u_xlat4.x;
					    u_xlat4.x = u_xlatb4 ? 1.0 : float(0.0);
					    u_xlat2.w = u_xlat4.x * vs_TEXCOORD4;
					    u_xlat1 = u_xlat2 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat4.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat4.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendMul" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat2.w = u_xlat3.x * vs_TEXCOORD4;
					    u_xlat1 = u_xlat2 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat2.w = u_xlat3.x * vs_TEXCOORD4;
					    u_xlat1 = u_xlat2 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendMul" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec3 u_xlat4;
					bool u_xlatb4;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat4.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat4.xyz = u_xlat4.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat4.xyz * vs_COLOR0.xyz;
					    u_xlat4.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat3 = texture(_CameraDepthTexture, u_xlat4.xy);
					    u_xlat4.x = _ZBufferParams.z * u_xlat3.x + _ZBufferParams.w;
					    u_xlat4.x = float(1.0) / u_xlat4.x;
					    u_xlat4.x = u_xlat4.x + (-vs_TEXCOORD3.z);
					    u_xlat4.x = u_xlat4.x * _InvFade;
					    u_xlat4.x = clamp(u_xlat4.x, 0.0, 1.0);
					    u_xlat4.x = (-vs_COLOR0.w) * u_xlat4.x + 1.0;
					    u_xlat4.x = u_xlat4.x + _Cutout;
					    u_xlatb4 = u_xlat1.w>=u_xlat4.x;
					    u_xlat4.x = u_xlatb4 ? 1.0 : float(0.0);
					    u_xlat2.w = u_xlat4.x * vs_TEXCOORD4;
					    u_xlat1 = u_xlat2 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat4.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat4.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec3 u_xlat4;
					bool u_xlatb4;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat4.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat4.xyz = u_xlat4.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat4.xyz * vs_COLOR0.xyz;
					    u_xlat4.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat3 = texture(_CameraDepthTexture, u_xlat4.xy);
					    u_xlat4.x = _ZBufferParams.z * u_xlat3.x + _ZBufferParams.w;
					    u_xlat4.x = float(1.0) / u_xlat4.x;
					    u_xlat4.x = u_xlat4.x + (-vs_TEXCOORD3.z);
					    u_xlat4.x = u_xlat4.x * _InvFade;
					    u_xlat4.x = clamp(u_xlat4.x, 0.0, 1.0);
					    u_xlat4.x = (-vs_COLOR0.w) * u_xlat4.x + 1.0;
					    u_xlat4.x = u_xlat4.x + _Cutout;
					    u_xlatb4 = u_xlat1.w>=u_xlat4.x;
					    u_xlat4.x = u_xlatb4 ? 1.0 : float(0.0);
					    u_xlat2.w = u_xlat4.x * vs_TEXCOORD4;
					    u_xlat1 = u_xlat2 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat4.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat4.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendMul" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[7];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb0 = u_xlat1.w>=u_xlat0.x;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat1.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat0.x = u_xlatb0 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat0.x * vs_TEXCOORD4;
					    u_xlat0 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    SV_Target0 = u_xlat1.wwww * u_xlat0 + vec4(1.0, 1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[6];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb0 = u_xlat1.w>=u_xlat0.x;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat1.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat0.x = u_xlatb0 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat0.x * vs_TEXCOORD4;
					    u_xlat0 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    SV_Target0 = u_xlat1.wwww * u_xlat0 + vec4(1.0, 1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendMul" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[7];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb0 = u_xlat1.w>=u_xlat0.x;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat1.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat0.x = u_xlatb0 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat0.x * vs_TEXCOORD4;
					    u_xlat0 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    SV_Target0 = u_xlat1.wwww * u_xlat0 + vec4(1.0, 1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[6];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb0 = u_xlat1.w>=u_xlat0.x;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat1.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat0.x = u_xlatb0 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat0.x * vs_TEXCOORD4;
					    u_xlat0 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    SV_Target0 = u_xlat1.wwww * u_xlat0 + vec4(1.0, 1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendMul" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					float u_xlat9;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlat0.xyz = u_xlat0.xyz + u_xlat0.xyz;
					    u_xlat0.xyz = u_xlat0.xyz * _TintColor.xyz;
					    u_xlat1.xyz = u_xlat0.xyz * vs_COLOR0.xyz;
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat2 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat2.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlatb0 = u_xlat0.w>=u_xlat0.x;
					    u_xlat0.x = u_xlatb0 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat0.x * vs_TEXCOORD4;
					    u_xlat0 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat0.xyz = u_xlat0.xyz * u_xlat1.www;
					    SV_Target0.w = u_xlat1.w * u_xlat0.w + 1.0;
					    u_xlat9 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat9 = (-u_xlat9) + 1.0;
					    u_xlat9 = u_xlat9 * _ProjectionParams.z;
					    u_xlat9 = max(u_xlat9, 0.0);
					    u_xlat9 = u_xlat9 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat9 = clamp(u_xlat9, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat9) * u_xlat0.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					float u_xlat9;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlat0.xyz = u_xlat0.xyz + u_xlat0.xyz;
					    u_xlat0.xyz = u_xlat0.xyz * _TintColor.xyz;
					    u_xlat1.xyz = u_xlat0.xyz * vs_COLOR0.xyz;
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat2 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat2.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlatb0 = u_xlat0.w>=u_xlat0.x;
					    u_xlat0.x = u_xlatb0 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat0.x * vs_TEXCOORD4;
					    u_xlat0 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat0.xyz = u_xlat0.xyz * u_xlat1.www;
					    SV_Target0.w = u_xlat1.w * u_xlat0.w + 1.0;
					    u_xlat9 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat9 = (-u_xlat9) + 1.0;
					    u_xlat9 = u_xlat9 * _ProjectionParams.z;
					    u_xlat9 = max(u_xlat9, 0.0);
					    u_xlat9 = u_xlat9 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat9 = clamp(u_xlat9, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat9) * u_xlat0.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendMul" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					float u_xlat9;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlat0.xyz = u_xlat0.xyz + u_xlat0.xyz;
					    u_xlat0.xyz = u_xlat0.xyz * _TintColor.xyz;
					    u_xlat1.xyz = u_xlat0.xyz * vs_COLOR0.xyz;
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat2 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat2.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlatb0 = u_xlat0.w>=u_xlat0.x;
					    u_xlat0.x = u_xlatb0 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat0.x * vs_TEXCOORD4;
					    u_xlat0 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat0.xyz = u_xlat0.xyz * u_xlat1.www;
					    SV_Target0.w = u_xlat1.w * u_xlat0.w + 1.0;
					    u_xlat9 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat9 = (-u_xlat9) + 1.0;
					    u_xlat9 = u_xlat9 * _ProjectionParams.z;
					    u_xlat9 = max(u_xlat9, 0.0);
					    u_xlat9 = u_xlat9 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat9 = clamp(u_xlat9, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat9) * u_xlat0.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					float u_xlat9;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlat0.xyz = u_xlat0.xyz + u_xlat0.xyz;
					    u_xlat0.xyz = u_xlat0.xyz * _TintColor.xyz;
					    u_xlat1.xyz = u_xlat0.xyz * vs_COLOR0.xyz;
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat2 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat2.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlatb0 = u_xlat0.w>=u_xlat0.x;
					    u_xlat0.x = u_xlatb0 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat0.x * vs_TEXCOORD4;
					    u_xlat0 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat0.xyz = u_xlat0.xyz * u_xlat1.www;
					    SV_Target0.w = u_xlat1.w * u_xlat0.w + 1.0;
					    u_xlat9 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat9 = (-u_xlat9) + 1.0;
					    u_xlat9 = u_xlat9 * _ProjectionParams.z;
					    u_xlat9 = max(u_xlat9, 0.0);
					    u_xlat9 = u_xlat9 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat9 = clamp(u_xlat9, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat9) * u_xlat0.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendMul" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec3 u_xlat4;
					bool u_xlatb4;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat4.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat4.xyz = u_xlat4.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat4.xyz * vs_COLOR0.xyz;
					    u_xlat4.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat3 = texture(_CameraDepthTexture, u_xlat4.xy);
					    u_xlat4.x = _ZBufferParams.z * u_xlat3.x + _ZBufferParams.w;
					    u_xlat4.x = float(1.0) / u_xlat4.x;
					    u_xlat4.x = u_xlat4.x + (-vs_TEXCOORD3.z);
					    u_xlat4.x = u_xlat4.x * _InvFade;
					    u_xlat4.x = clamp(u_xlat4.x, 0.0, 1.0);
					    u_xlat4.x = (-vs_COLOR0.w) * u_xlat4.x + 1.0;
					    u_xlat4.x = u_xlat4.x + _Cutout;
					    u_xlatb4 = u_xlat1.w>=u_xlat4.x;
					    u_xlat4.x = u_xlatb4 ? 1.0 : float(0.0);
					    u_xlat2.w = u_xlat4.x * vs_TEXCOORD4;
					    u_xlat1 = u_xlat2 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat4.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat4.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec3 u_xlat4;
					bool u_xlatb4;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat4.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat4.xyz = u_xlat4.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat4.xyz * vs_COLOR0.xyz;
					    u_xlat4.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat3 = texture(_CameraDepthTexture, u_xlat4.xy);
					    u_xlat4.x = _ZBufferParams.z * u_xlat3.x + _ZBufferParams.w;
					    u_xlat4.x = float(1.0) / u_xlat4.x;
					    u_xlat4.x = u_xlat4.x + (-vs_TEXCOORD3.z);
					    u_xlat4.x = u_xlat4.x * _InvFade;
					    u_xlat4.x = clamp(u_xlat4.x, 0.0, 1.0);
					    u_xlat4.x = (-vs_COLOR0.w) * u_xlat4.x + 1.0;
					    u_xlat4.x = u_xlat4.x + _Cutout;
					    u_xlatb4 = u_xlat1.w>=u_xlat4.x;
					    u_xlat4.x = u_xlatb4 ? 1.0 : float(0.0);
					    u_xlat2.w = u_xlat4.x * vs_TEXCOORD4;
					    u_xlat1 = u_xlat2 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat4.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat4.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendMul" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec3 u_xlat4;
					bool u_xlatb4;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat4.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat4.xyz = u_xlat4.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat4.xyz * vs_COLOR0.xyz;
					    u_xlat4.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat3 = texture(_CameraDepthTexture, u_xlat4.xy);
					    u_xlat4.x = _ZBufferParams.z * u_xlat3.x + _ZBufferParams.w;
					    u_xlat4.x = float(1.0) / u_xlat4.x;
					    u_xlat4.x = u_xlat4.x + (-vs_TEXCOORD3.z);
					    u_xlat4.x = u_xlat4.x * _InvFade;
					    u_xlat4.x = clamp(u_xlat4.x, 0.0, 1.0);
					    u_xlat4.x = (-vs_COLOR0.w) * u_xlat4.x + 1.0;
					    u_xlat4.x = u_xlat4.x + _Cutout;
					    u_xlatb4 = u_xlat1.w>=u_xlat4.x;
					    u_xlat4.x = u_xlatb4 ? 1.0 : float(0.0);
					    u_xlat2.w = u_xlat4.x * vs_TEXCOORD4;
					    u_xlat1 = u_xlat2 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat4.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat4.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec3 u_xlat4;
					bool u_xlatb4;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat4.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat4.xyz = u_xlat4.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat4.xyz * vs_COLOR0.xyz;
					    u_xlat4.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat3 = texture(_CameraDepthTexture, u_xlat4.xy);
					    u_xlat4.x = _ZBufferParams.z * u_xlat3.x + _ZBufferParams.w;
					    u_xlat4.x = float(1.0) / u_xlat4.x;
					    u_xlat4.x = u_xlat4.x + (-vs_TEXCOORD3.z);
					    u_xlat4.x = u_xlat4.x * _InvFade;
					    u_xlat4.x = clamp(u_xlat4.x, 0.0, 1.0);
					    u_xlat4.x = (-vs_COLOR0.w) * u_xlat4.x + 1.0;
					    u_xlat4.x = u_xlat4.x + _Cutout;
					    u_xlatb4 = u_xlat1.w>=u_xlat4.x;
					    u_xlat4.x = u_xlatb4 ? 1.0 : float(0.0);
					    u_xlat2.w = u_xlat4.x * vs_TEXCOORD4;
					    u_xlat1 = u_xlat2 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat4.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat4.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendMul" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec3 u_xlat4;
					bool u_xlatb4;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat4.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat4.xyz = u_xlat4.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat4.xyz * vs_COLOR0.xyz;
					    u_xlat4.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat3 = texture(_CameraDepthTexture, u_xlat4.xy);
					    u_xlat4.x = _ZBufferParams.z * u_xlat3.x + _ZBufferParams.w;
					    u_xlat4.x = float(1.0) / u_xlat4.x;
					    u_xlat4.x = u_xlat4.x + (-vs_TEXCOORD3.z);
					    u_xlat4.x = u_xlat4.x * _InvFade;
					    u_xlat4.x = clamp(u_xlat4.x, 0.0, 1.0);
					    u_xlat4.x = (-vs_COLOR0.w) * u_xlat4.x + 1.0;
					    u_xlat4.x = u_xlat4.x + _Cutout;
					    u_xlatb4 = u_xlat1.w>=u_xlat4.x;
					    u_xlat4.x = u_xlatb4 ? 1.0 : float(0.0);
					    u_xlat2.w = u_xlat4.x * vs_TEXCOORD4;
					    u_xlat1 = u_xlat2 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat4.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat4.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec3 u_xlat4;
					bool u_xlatb4;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat4.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat4.xyz = u_xlat4.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat4.xyz * vs_COLOR0.xyz;
					    u_xlat4.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat3 = texture(_CameraDepthTexture, u_xlat4.xy);
					    u_xlat4.x = _ZBufferParams.z * u_xlat3.x + _ZBufferParams.w;
					    u_xlat4.x = float(1.0) / u_xlat4.x;
					    u_xlat4.x = u_xlat4.x + (-vs_TEXCOORD3.z);
					    u_xlat4.x = u_xlat4.x * _InvFade;
					    u_xlat4.x = clamp(u_xlat4.x, 0.0, 1.0);
					    u_xlat4.x = (-vs_COLOR0.w) * u_xlat4.x + 1.0;
					    u_xlat4.x = u_xlat4.x + _Cutout;
					    u_xlatb4 = u_xlat1.w>=u_xlat4.x;
					    u_xlat4.x = u_xlatb4 ? 1.0 : float(0.0);
					    u_xlat2.w = u_xlat4.x * vs_TEXCOORD4;
					    u_xlat1 = u_xlat2 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat4.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat4.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendMul" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec3 u_xlat4;
					bool u_xlatb4;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat4.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat4.xyz = u_xlat4.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat4.xyz * vs_COLOR0.xyz;
					    u_xlat4.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat3 = texture(_CameraDepthTexture, u_xlat4.xy);
					    u_xlat4.x = _ZBufferParams.z * u_xlat3.x + _ZBufferParams.w;
					    u_xlat4.x = float(1.0) / u_xlat4.x;
					    u_xlat4.x = u_xlat4.x + (-vs_TEXCOORD3.z);
					    u_xlat4.x = u_xlat4.x * _InvFade;
					    u_xlat4.x = clamp(u_xlat4.x, 0.0, 1.0);
					    u_xlat4.x = (-vs_COLOR0.w) * u_xlat4.x + 1.0;
					    u_xlat4.x = u_xlat4.x + _Cutout;
					    u_xlatb4 = u_xlat1.w>=u_xlat4.x;
					    u_xlat4.x = u_xlatb4 ? 1.0 : float(0.0);
					    u_xlat2.w = u_xlat4.x * vs_TEXCOORD4;
					    u_xlat1 = u_xlat2 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat4.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat4.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec3 u_xlat4;
					bool u_xlatb4;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat4.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat4.xyz = u_xlat4.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat4.xyz * vs_COLOR0.xyz;
					    u_xlat4.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat3 = texture(_CameraDepthTexture, u_xlat4.xy);
					    u_xlat4.x = _ZBufferParams.z * u_xlat3.x + _ZBufferParams.w;
					    u_xlat4.x = float(1.0) / u_xlat4.x;
					    u_xlat4.x = u_xlat4.x + (-vs_TEXCOORD3.z);
					    u_xlat4.x = u_xlat4.x * _InvFade;
					    u_xlat4.x = clamp(u_xlat4.x, 0.0, 1.0);
					    u_xlat4.x = (-vs_COLOR0.w) * u_xlat4.x + 1.0;
					    u_xlat4.x = u_xlat4.x + _Cutout;
					    u_xlatb4 = u_xlat1.w>=u_xlat4.x;
					    u_xlat4.x = u_xlatb4 ? 1.0 : float(0.0);
					    u_xlat2.w = u_xlat4.x * vs_TEXCOORD4;
					    u_xlat1 = u_xlat2 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat4.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat4.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendMul" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat0 = u_xlat0 * vs_COLOR0;
					    u_xlat0.w = u_xlat0.w;
					    u_xlat0.w = clamp(u_xlat0.w, 0.0, 1.0);
					    u_xlat1 = u_xlat0 + vec4(-1.0, -1.0, -1.0, -1.0);
					    SV_Target0 = u_xlat0.wwww * u_xlat1 + vec4(1.0, 1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat0 = u_xlat0 * vs_COLOR0;
					    u_xlat0.w = u_xlat0.w;
					    u_xlat0.w = clamp(u_xlat0.w, 0.0, 1.0);
					    u_xlat1 = u_xlat0 + vec4(-1.0, -1.0, -1.0, -1.0);
					    SV_Target0 = u_xlat0.wwww * u_xlat1 + vec4(1.0, 1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendMul" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat0 = u_xlat0 * vs_COLOR0;
					    u_xlat0.w = u_xlat0.w;
					    u_xlat0.w = clamp(u_xlat0.w, 0.0, 1.0);
					    u_xlat1 = u_xlat0 + vec4(-1.0, -1.0, -1.0, -1.0);
					    SV_Target0 = u_xlat0.wwww * u_xlat1 + vec4(1.0, 1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat0 = u_xlat0 * vs_COLOR0;
					    u_xlat0.w = u_xlat0.w;
					    u_xlat0.w = clamp(u_xlat0.w, 0.0, 1.0);
					    u_xlat1 = u_xlat0 + vec4(-1.0, -1.0, -1.0, -1.0);
					    SV_Target0 = u_xlat0.wwww * u_xlat1 + vec4(1.0, 1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendMul" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendMul" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendMul" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendMul" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendMul" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendMul" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendMul" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat0 = u_xlat0 * vs_COLOR0;
					    u_xlat0.w = u_xlat0.w;
					    u_xlat0.w = clamp(u_xlat0.w, 0.0, 1.0);
					    u_xlat1 = u_xlat0 + vec4(-1.0, -1.0, -1.0, -1.0);
					    SV_Target0 = u_xlat0.wwww * u_xlat1 + vec4(1.0, 1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat0 = u_xlat0 * vs_COLOR0;
					    u_xlat0.w = u_xlat0.w;
					    u_xlat0.w = clamp(u_xlat0.w, 0.0, 1.0);
					    u_xlat1 = u_xlat0 + vec4(-1.0, -1.0, -1.0, -1.0);
					    SV_Target0 = u_xlat0.wwww * u_xlat1 + vec4(1.0, 1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendMul" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat0 = u_xlat0 * vs_COLOR0;
					    u_xlat0.w = u_xlat0.w;
					    u_xlat0.w = clamp(u_xlat0.w, 0.0, 1.0);
					    u_xlat1 = u_xlat0 + vec4(-1.0, -1.0, -1.0, -1.0);
					    SV_Target0 = u_xlat0.wwww * u_xlat1 + vec4(1.0, 1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat0 = u_xlat0 * vs_COLOR0;
					    u_xlat0.w = u_xlat0.w;
					    u_xlat0.w = clamp(u_xlat0.w, 0.0, 1.0);
					    u_xlat1 = u_xlat0 + vec4(-1.0, -1.0, -1.0, -1.0);
					    SV_Target0 = u_xlat0.wwww * u_xlat1 + vec4(1.0, 1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendMul" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendMul" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendMul" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendMul" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendMul" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendMul" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendMul" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat6;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat0 = u_xlat0 * vs_COLOR0;
					    u_xlat6 = u_xlat0.w;
					    u_xlat6 = clamp(u_xlat6, 0.0, 1.0);
					    u_xlat0.w = u_xlat6 * vs_TEXCOORD4;
					    u_xlat1 = u_xlat0 + vec4(-1.0, -1.0, -1.0, -1.0);
					    SV_Target0 = u_xlat0.wwww * u_xlat1 + vec4(1.0, 1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat6;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat0 = u_xlat0 * vs_COLOR0;
					    u_xlat6 = u_xlat0.w;
					    u_xlat6 = clamp(u_xlat6, 0.0, 1.0);
					    u_xlat0.w = u_xlat6 * vs_TEXCOORD4;
					    u_xlat1 = u_xlat0 + vec4(-1.0, -1.0, -1.0, -1.0);
					    SV_Target0 = u_xlat0.wwww * u_xlat1 + vec4(1.0, 1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendMul" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat6;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat0 = u_xlat0 * vs_COLOR0;
					    u_xlat6 = u_xlat0.w;
					    u_xlat6 = clamp(u_xlat6, 0.0, 1.0);
					    u_xlat0.w = u_xlat6 * vs_TEXCOORD4;
					    u_xlat1 = u_xlat0 + vec4(-1.0, -1.0, -1.0, -1.0);
					    SV_Target0 = u_xlat0.wwww * u_xlat1 + vec4(1.0, 1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat6;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat0 = u_xlat0 * vs_COLOR0;
					    u_xlat6 = u_xlat0.w;
					    u_xlat6 = clamp(u_xlat6, 0.0, 1.0);
					    u_xlat0.w = u_xlat6 * vs_TEXCOORD4;
					    u_xlat1 = u_xlat0 + vec4(-1.0, -1.0, -1.0, -1.0);
					    SV_Target0 = u_xlat0.wwww * u_xlat1 + vec4(1.0, 1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendMul" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendMul" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendMul" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendMul" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendMul" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendMul" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendMul" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat6;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat0 = u_xlat0 * vs_COLOR0;
					    u_xlat6 = u_xlat0.w;
					    u_xlat6 = clamp(u_xlat6, 0.0, 1.0);
					    u_xlat0.w = u_xlat6 * vs_TEXCOORD4;
					    u_xlat1 = u_xlat0 + vec4(-1.0, -1.0, -1.0, -1.0);
					    SV_Target0 = u_xlat0.wwww * u_xlat1 + vec4(1.0, 1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat6;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat0 = u_xlat0 * vs_COLOR0;
					    u_xlat6 = u_xlat0.w;
					    u_xlat6 = clamp(u_xlat6, 0.0, 1.0);
					    u_xlat0.w = u_xlat6 * vs_TEXCOORD4;
					    u_xlat1 = u_xlat0 + vec4(-1.0, -1.0, -1.0, -1.0);
					    SV_Target0 = u_xlat0.wwww * u_xlat1 + vec4(1.0, 1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendMul" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat6;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat0 = u_xlat0 * vs_COLOR0;
					    u_xlat6 = u_xlat0.w;
					    u_xlat6 = clamp(u_xlat6, 0.0, 1.0);
					    u_xlat0.w = u_xlat6 * vs_TEXCOORD4;
					    u_xlat1 = u_xlat0 + vec4(-1.0, -1.0, -1.0, -1.0);
					    SV_Target0 = u_xlat0.wwww * u_xlat1 + vec4(1.0, 1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat6;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat0 = u_xlat0 * vs_COLOR0;
					    u_xlat6 = u_xlat0.w;
					    u_xlat6 = clamp(u_xlat6, 0.0, 1.0);
					    u_xlat0.w = u_xlat6 * vs_TEXCOORD4;
					    u_xlat1 = u_xlat0 + vec4(-1.0, -1.0, -1.0, -1.0);
					    SV_Target0 = u_xlat0.wwww * u_xlat1 + vec4(1.0, 1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendMul" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendMul" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendMul" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendMul" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendMul" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendMul" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendMul" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					bool u_xlatb1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1.x = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat0.w = u_xlat0.w * u_xlat1.x;
					    u_xlat0 = u_xlat0 * vs_COLOR0;
					    u_xlat0.w = u_xlat0.w;
					    u_xlat0.w = clamp(u_xlat0.w, 0.0, 1.0);
					    u_xlat1 = u_xlat0 + vec4(-1.0, -1.0, -1.0, -1.0);
					    SV_Target0 = u_xlat0.wwww * u_xlat1 + vec4(1.0, 1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					bool u_xlatb1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1.x = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat0.w = u_xlat0.w * u_xlat1.x;
					    u_xlat0 = u_xlat0 * vs_COLOR0;
					    u_xlat0.w = u_xlat0.w;
					    u_xlat0.w = clamp(u_xlat0.w, 0.0, 1.0);
					    u_xlat1 = u_xlat0 + vec4(-1.0, -1.0, -1.0, -1.0);
					    SV_Target0 = u_xlat0.wwww * u_xlat1 + vec4(1.0, 1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendMul" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					bool u_xlatb1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1.x = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat0.w = u_xlat0.w * u_xlat1.x;
					    u_xlat0 = u_xlat0 * vs_COLOR0;
					    u_xlat0.w = u_xlat0.w;
					    u_xlat0.w = clamp(u_xlat0.w, 0.0, 1.0);
					    u_xlat1 = u_xlat0 + vec4(-1.0, -1.0, -1.0, -1.0);
					    SV_Target0 = u_xlat0.wwww * u_xlat1 + vec4(1.0, 1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					bool u_xlatb1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1.x = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat0.w = u_xlat0.w * u_xlat1.x;
					    u_xlat0 = u_xlat0 * vs_COLOR0;
					    u_xlat0.w = u_xlat0.w;
					    u_xlat0.w = clamp(u_xlat0.w, 0.0, 1.0);
					    u_xlat1 = u_xlat0 + vec4(-1.0, -1.0, -1.0, -1.0);
					    SV_Target0 = u_xlat0.wwww * u_xlat1 + vec4(1.0, 1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendMul" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3.x;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3.x;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendMul" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3.x;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3.x;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendMul" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3.x;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3.x;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendMul" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3.x;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3.x;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendMul" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3.x;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3.x;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendMul" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3.x;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3.x;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendMul" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					bool u_xlatb1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1.x = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat0.w = u_xlat0.w * u_xlat1.x;
					    u_xlat0 = u_xlat0 * vs_COLOR0;
					    u_xlat0.w = u_xlat0.w;
					    u_xlat0.w = clamp(u_xlat0.w, 0.0, 1.0);
					    u_xlat1 = u_xlat0 + vec4(-1.0, -1.0, -1.0, -1.0);
					    SV_Target0 = u_xlat0.wwww * u_xlat1 + vec4(1.0, 1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					bool u_xlatb1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1.x = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat0.w = u_xlat0.w * u_xlat1.x;
					    u_xlat0 = u_xlat0 * vs_COLOR0;
					    u_xlat0.w = u_xlat0.w;
					    u_xlat0.w = clamp(u_xlat0.w, 0.0, 1.0);
					    u_xlat1 = u_xlat0 + vec4(-1.0, -1.0, -1.0, -1.0);
					    SV_Target0 = u_xlat0.wwww * u_xlat1 + vec4(1.0, 1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendMul" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					bool u_xlatb1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1.x = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat0.w = u_xlat0.w * u_xlat1.x;
					    u_xlat0 = u_xlat0 * vs_COLOR0;
					    u_xlat0.w = u_xlat0.w;
					    u_xlat0.w = clamp(u_xlat0.w, 0.0, 1.0);
					    u_xlat1 = u_xlat0 + vec4(-1.0, -1.0, -1.0, -1.0);
					    SV_Target0 = u_xlat0.wwww * u_xlat1 + vec4(1.0, 1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					bool u_xlatb1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1.x = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat0.w = u_xlat0.w * u_xlat1.x;
					    u_xlat0 = u_xlat0 * vs_COLOR0;
					    u_xlat0.w = u_xlat0.w;
					    u_xlat0.w = clamp(u_xlat0.w, 0.0, 1.0);
					    u_xlat1 = u_xlat0 + vec4(-1.0, -1.0, -1.0, -1.0);
					    SV_Target0 = u_xlat0.wwww * u_xlat1 + vec4(1.0, 1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendMul" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3.x;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3.x;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendMul" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3.x;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3.x;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendMul" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3.x;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3.x;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendMul" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3.x;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3.x;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendMul" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3.x;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3.x;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendMul" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3.x;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3.x;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendMul" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					bool u_xlatb1;
					float u_xlat6;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1.x = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat0.w = u_xlat0.w * u_xlat1.x;
					    u_xlat0 = u_xlat0 * vs_COLOR0;
					    u_xlat6 = u_xlat0.w;
					    u_xlat6 = clamp(u_xlat6, 0.0, 1.0);
					    u_xlat0.w = u_xlat6 * vs_TEXCOORD4;
					    u_xlat1 = u_xlat0 + vec4(-1.0, -1.0, -1.0, -1.0);
					    SV_Target0 = u_xlat0.wwww * u_xlat1 + vec4(1.0, 1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					bool u_xlatb1;
					float u_xlat6;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1.x = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat0.w = u_xlat0.w * u_xlat1.x;
					    u_xlat0 = u_xlat0 * vs_COLOR0;
					    u_xlat6 = u_xlat0.w;
					    u_xlat6 = clamp(u_xlat6, 0.0, 1.0);
					    u_xlat0.w = u_xlat6 * vs_TEXCOORD4;
					    u_xlat1 = u_xlat0 + vec4(-1.0, -1.0, -1.0, -1.0);
					    SV_Target0 = u_xlat0.wwww * u_xlat1 + vec4(1.0, 1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendMul" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					bool u_xlatb1;
					float u_xlat6;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1.x = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat0.w = u_xlat0.w * u_xlat1.x;
					    u_xlat0 = u_xlat0 * vs_COLOR0;
					    u_xlat6 = u_xlat0.w;
					    u_xlat6 = clamp(u_xlat6, 0.0, 1.0);
					    u_xlat0.w = u_xlat6 * vs_TEXCOORD4;
					    u_xlat1 = u_xlat0 + vec4(-1.0, -1.0, -1.0, -1.0);
					    SV_Target0 = u_xlat0.wwww * u_xlat1 + vec4(1.0, 1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					bool u_xlatb1;
					float u_xlat6;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1.x = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat0.w = u_xlat0.w * u_xlat1.x;
					    u_xlat0 = u_xlat0 * vs_COLOR0;
					    u_xlat6 = u_xlat0.w;
					    u_xlat6 = clamp(u_xlat6, 0.0, 1.0);
					    u_xlat0.w = u_xlat6 * vs_TEXCOORD4;
					    u_xlat1 = u_xlat0 + vec4(-1.0, -1.0, -1.0, -1.0);
					    SV_Target0 = u_xlat0.wwww * u_xlat1 + vec4(1.0, 1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendMul" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3.x;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3.x;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendMul" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3.x;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3.x;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendMul" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3.x;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3.x;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendMul" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3.x;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3.x;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendMul" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3.x;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3.x;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendMul" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3.x;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3.x;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendMul" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					bool u_xlatb1;
					float u_xlat6;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1.x = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat0.w = u_xlat0.w * u_xlat1.x;
					    u_xlat0 = u_xlat0 * vs_COLOR0;
					    u_xlat6 = u_xlat0.w;
					    u_xlat6 = clamp(u_xlat6, 0.0, 1.0);
					    u_xlat0.w = u_xlat6 * vs_TEXCOORD4;
					    u_xlat1 = u_xlat0 + vec4(-1.0, -1.0, -1.0, -1.0);
					    SV_Target0 = u_xlat0.wwww * u_xlat1 + vec4(1.0, 1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					bool u_xlatb1;
					float u_xlat6;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1.x = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat0.w = u_xlat0.w * u_xlat1.x;
					    u_xlat0 = u_xlat0 * vs_COLOR0;
					    u_xlat6 = u_xlat0.w;
					    u_xlat6 = clamp(u_xlat6, 0.0, 1.0);
					    u_xlat0.w = u_xlat6 * vs_TEXCOORD4;
					    u_xlat1 = u_xlat0 + vec4(-1.0, -1.0, -1.0, -1.0);
					    SV_Target0 = u_xlat0.wwww * u_xlat1 + vec4(1.0, 1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendMul" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					bool u_xlatb1;
					float u_xlat6;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1.x = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat0.w = u_xlat0.w * u_xlat1.x;
					    u_xlat0 = u_xlat0 * vs_COLOR0;
					    u_xlat6 = u_xlat0.w;
					    u_xlat6 = clamp(u_xlat6, 0.0, 1.0);
					    u_xlat0.w = u_xlat6 * vs_TEXCOORD4;
					    u_xlat1 = u_xlat0 + vec4(-1.0, -1.0, -1.0, -1.0);
					    SV_Target0 = u_xlat0.wwww * u_xlat1 + vec4(1.0, 1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					bool u_xlatb1;
					float u_xlat6;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1.x = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat0.w = u_xlat0.w * u_xlat1.x;
					    u_xlat0 = u_xlat0 * vs_COLOR0;
					    u_xlat6 = u_xlat0.w;
					    u_xlat6 = clamp(u_xlat6, 0.0, 1.0);
					    u_xlat0.w = u_xlat6 * vs_TEXCOORD4;
					    u_xlat1 = u_xlat0 + vec4(-1.0, -1.0, -1.0, -1.0);
					    SV_Target0 = u_xlat0.wwww * u_xlat1 + vec4(1.0, 1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendMul" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3.x;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3.x;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendMul" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3.x;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3.x;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendMul" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3.x;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3.x;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendMul" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3.x;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3.x;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendMul" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3.x;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3.x;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendMul" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3.x;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3.x;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendMul" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0.xyz = u_xlat0.xyz + u_xlat0.xyz;
					    u_xlat0.xyz = u_xlat0.xyz * _TintColor.xyz;
					    u_xlat1.xyz = u_xlat0.xyz * vs_COLOR0.xyz;
					    u_xlat0.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlatb0 = u_xlat0.w>=u_xlat0.x;
					    u_xlat1.w = u_xlatb0 ? 1.0 : float(0.0);
					    u_xlat0 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    SV_Target0 = u_xlat1.wwww * u_xlat0 + vec4(1.0, 1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0.xyz = u_xlat0.xyz + u_xlat0.xyz;
					    u_xlat0.xyz = u_xlat0.xyz * _TintColor.xyz;
					    u_xlat1.xyz = u_xlat0.xyz * vs_COLOR0.xyz;
					    u_xlat0.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlatb0 = u_xlat0.w>=u_xlat0.x;
					    u_xlat1.w = u_xlatb0 ? 1.0 : float(0.0);
					    u_xlat0 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    SV_Target0 = u_xlat1.wwww * u_xlat0 + vec4(1.0, 1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendMul" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0.xyz = u_xlat0.xyz + u_xlat0.xyz;
					    u_xlat0.xyz = u_xlat0.xyz * _TintColor.xyz;
					    u_xlat1.xyz = u_xlat0.xyz * vs_COLOR0.xyz;
					    u_xlat0.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlatb0 = u_xlat0.w>=u_xlat0.x;
					    u_xlat1.w = u_xlatb0 ? 1.0 : float(0.0);
					    u_xlat0 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    SV_Target0 = u_xlat1.wwww * u_xlat0 + vec4(1.0, 1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0.xyz = u_xlat0.xyz + u_xlat0.xyz;
					    u_xlat0.xyz = u_xlat0.xyz * _TintColor.xyz;
					    u_xlat1.xyz = u_xlat0.xyz * vs_COLOR0.xyz;
					    u_xlat0.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlatb0 = u_xlat0.w>=u_xlat0.x;
					    u_xlat1.w = u_xlatb0 ? 1.0 : float(0.0);
					    u_xlat0 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    SV_Target0 = u_xlat1.wwww * u_xlat0 + vec4(1.0, 1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendMul" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat2.w = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1 = u_xlat2 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat2.w = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1 = u_xlat2 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendMul" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat2.w = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1 = u_xlat2 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat2.w = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1 = u_xlat2 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendMul" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat2.w = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1 = u_xlat2 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat2.w = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1 = u_xlat2 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendMul" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat2.w = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1 = u_xlat2 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat2.w = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1 = u_xlat2 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendMul" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat2.w = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1 = u_xlat2 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat2.w = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1 = u_xlat2 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendMul" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat2.w = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1 = u_xlat2 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat2.w = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1 = u_xlat2 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendMul" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0.xyz = u_xlat0.xyz + u_xlat0.xyz;
					    u_xlat0.xyz = u_xlat0.xyz * _TintColor.xyz;
					    u_xlat1.xyz = u_xlat0.xyz * vs_COLOR0.xyz;
					    u_xlat0.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlatb0 = u_xlat0.w>=u_xlat0.x;
					    u_xlat1.w = u_xlatb0 ? 1.0 : float(0.0);
					    u_xlat0 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    SV_Target0 = u_xlat1.wwww * u_xlat0 + vec4(1.0, 1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0.xyz = u_xlat0.xyz + u_xlat0.xyz;
					    u_xlat0.xyz = u_xlat0.xyz * _TintColor.xyz;
					    u_xlat1.xyz = u_xlat0.xyz * vs_COLOR0.xyz;
					    u_xlat0.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlatb0 = u_xlat0.w>=u_xlat0.x;
					    u_xlat1.w = u_xlatb0 ? 1.0 : float(0.0);
					    u_xlat0 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    SV_Target0 = u_xlat1.wwww * u_xlat0 + vec4(1.0, 1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendMul" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0.xyz = u_xlat0.xyz + u_xlat0.xyz;
					    u_xlat0.xyz = u_xlat0.xyz * _TintColor.xyz;
					    u_xlat1.xyz = u_xlat0.xyz * vs_COLOR0.xyz;
					    u_xlat0.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlatb0 = u_xlat0.w>=u_xlat0.x;
					    u_xlat1.w = u_xlatb0 ? 1.0 : float(0.0);
					    u_xlat0 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    SV_Target0 = u_xlat1.wwww * u_xlat0 + vec4(1.0, 1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0.xyz = u_xlat0.xyz + u_xlat0.xyz;
					    u_xlat0.xyz = u_xlat0.xyz * _TintColor.xyz;
					    u_xlat1.xyz = u_xlat0.xyz * vs_COLOR0.xyz;
					    u_xlat0.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlatb0 = u_xlat0.w>=u_xlat0.x;
					    u_xlat1.w = u_xlatb0 ? 1.0 : float(0.0);
					    u_xlat0 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    SV_Target0 = u_xlat1.wwww * u_xlat0 + vec4(1.0, 1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendMul" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat2.w = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1 = u_xlat2 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat2.w = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1 = u_xlat2 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendMul" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat2.w = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1 = u_xlat2 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat2.w = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1 = u_xlat2 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendMul" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat2.w = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1 = u_xlat2 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat2.w = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1 = u_xlat2 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendMul" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat2.w = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1 = u_xlat2 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat2.w = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1 = u_xlat2 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendMul" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat2.w = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1 = u_xlat2 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat2.w = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1 = u_xlat2 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendMul" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat2.w = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1 = u_xlat2 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat2.w = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1 = u_xlat2 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendMul" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0.xyz = u_xlat0.xyz + u_xlat0.xyz;
					    u_xlat0.xyz = u_xlat0.xyz * _TintColor.xyz;
					    u_xlat1.xyz = u_xlat0.xyz * vs_COLOR0.xyz;
					    u_xlat0.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlatb0 = u_xlat0.w>=u_xlat0.x;
					    u_xlat0.x = u_xlatb0 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat0.x * vs_TEXCOORD4;
					    u_xlat0 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    SV_Target0 = u_xlat1.wwww * u_xlat0 + vec4(1.0, 1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0.xyz = u_xlat0.xyz + u_xlat0.xyz;
					    u_xlat0.xyz = u_xlat0.xyz * _TintColor.xyz;
					    u_xlat1.xyz = u_xlat0.xyz * vs_COLOR0.xyz;
					    u_xlat0.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlatb0 = u_xlat0.w>=u_xlat0.x;
					    u_xlat0.x = u_xlatb0 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat0.x * vs_TEXCOORD4;
					    u_xlat0 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    SV_Target0 = u_xlat1.wwww * u_xlat0 + vec4(1.0, 1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendMul" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0.xyz = u_xlat0.xyz + u_xlat0.xyz;
					    u_xlat0.xyz = u_xlat0.xyz * _TintColor.xyz;
					    u_xlat1.xyz = u_xlat0.xyz * vs_COLOR0.xyz;
					    u_xlat0.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlatb0 = u_xlat0.w>=u_xlat0.x;
					    u_xlat0.x = u_xlatb0 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat0.x * vs_TEXCOORD4;
					    u_xlat0 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    SV_Target0 = u_xlat1.wwww * u_xlat0 + vec4(1.0, 1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0.xyz = u_xlat0.xyz + u_xlat0.xyz;
					    u_xlat0.xyz = u_xlat0.xyz * _TintColor.xyz;
					    u_xlat1.xyz = u_xlat0.xyz * vs_COLOR0.xyz;
					    u_xlat0.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlatb0 = u_xlat0.w>=u_xlat0.x;
					    u_xlat0.x = u_xlatb0 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat0.x * vs_TEXCOORD4;
					    u_xlat0 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    SV_Target0 = u_xlat1.wwww * u_xlat0 + vec4(1.0, 1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendMul" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat2.w = u_xlat3.x * vs_TEXCOORD4;
					    u_xlat1 = u_xlat2 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat2.w = u_xlat3.x * vs_TEXCOORD4;
					    u_xlat1 = u_xlat2 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendMul" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat2.w = u_xlat3.x * vs_TEXCOORD4;
					    u_xlat1 = u_xlat2 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat2.w = u_xlat3.x * vs_TEXCOORD4;
					    u_xlat1 = u_xlat2 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendMul" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat2.w = u_xlat3.x * vs_TEXCOORD4;
					    u_xlat1 = u_xlat2 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat2.w = u_xlat3.x * vs_TEXCOORD4;
					    u_xlat1 = u_xlat2 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendMul" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat2.w = u_xlat3.x * vs_TEXCOORD4;
					    u_xlat1 = u_xlat2 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat2.w = u_xlat3.x * vs_TEXCOORD4;
					    u_xlat1 = u_xlat2 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendMul" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat2.w = u_xlat3.x * vs_TEXCOORD4;
					    u_xlat1 = u_xlat2 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat2.w = u_xlat3.x * vs_TEXCOORD4;
					    u_xlat1 = u_xlat2 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendMul" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat2.w = u_xlat3.x * vs_TEXCOORD4;
					    u_xlat1 = u_xlat2 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat2.w = u_xlat3.x * vs_TEXCOORD4;
					    u_xlat1 = u_xlat2 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendMul" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0.xyz = u_xlat0.xyz + u_xlat0.xyz;
					    u_xlat0.xyz = u_xlat0.xyz * _TintColor.xyz;
					    u_xlat1.xyz = u_xlat0.xyz * vs_COLOR0.xyz;
					    u_xlat0.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlatb0 = u_xlat0.w>=u_xlat0.x;
					    u_xlat0.x = u_xlatb0 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat0.x * vs_TEXCOORD4;
					    u_xlat0 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    SV_Target0 = u_xlat1.wwww * u_xlat0 + vec4(1.0, 1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0.xyz = u_xlat0.xyz + u_xlat0.xyz;
					    u_xlat0.xyz = u_xlat0.xyz * _TintColor.xyz;
					    u_xlat1.xyz = u_xlat0.xyz * vs_COLOR0.xyz;
					    u_xlat0.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlatb0 = u_xlat0.w>=u_xlat0.x;
					    u_xlat0.x = u_xlatb0 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat0.x * vs_TEXCOORD4;
					    u_xlat0 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    SV_Target0 = u_xlat1.wwww * u_xlat0 + vec4(1.0, 1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendMul" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0.xyz = u_xlat0.xyz + u_xlat0.xyz;
					    u_xlat0.xyz = u_xlat0.xyz * _TintColor.xyz;
					    u_xlat1.xyz = u_xlat0.xyz * vs_COLOR0.xyz;
					    u_xlat0.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlatb0 = u_xlat0.w>=u_xlat0.x;
					    u_xlat0.x = u_xlatb0 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat0.x * vs_TEXCOORD4;
					    u_xlat0 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    SV_Target0 = u_xlat1.wwww * u_xlat0 + vec4(1.0, 1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0.xyz = u_xlat0.xyz + u_xlat0.xyz;
					    u_xlat0.xyz = u_xlat0.xyz * _TintColor.xyz;
					    u_xlat1.xyz = u_xlat0.xyz * vs_COLOR0.xyz;
					    u_xlat0.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlatb0 = u_xlat0.w>=u_xlat0.x;
					    u_xlat0.x = u_xlatb0 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat0.x * vs_TEXCOORD4;
					    u_xlat0 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    SV_Target0 = u_xlat1.wwww * u_xlat0 + vec4(1.0, 1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendMul" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat2.w = u_xlat3.x * vs_TEXCOORD4;
					    u_xlat1 = u_xlat2 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat2.w = u_xlat3.x * vs_TEXCOORD4;
					    u_xlat1 = u_xlat2 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendMul" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat2.w = u_xlat3.x * vs_TEXCOORD4;
					    u_xlat1 = u_xlat2 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat2.w = u_xlat3.x * vs_TEXCOORD4;
					    u_xlat1 = u_xlat2 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendMul" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat2.w = u_xlat3.x * vs_TEXCOORD4;
					    u_xlat1 = u_xlat2 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat2.w = u_xlat3.x * vs_TEXCOORD4;
					    u_xlat1 = u_xlat2 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendMul" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat2.w = u_xlat3.x * vs_TEXCOORD4;
					    u_xlat1 = u_xlat2 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat2.w = u_xlat3.x * vs_TEXCOORD4;
					    u_xlat1 = u_xlat2 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendMul" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat2.w = u_xlat3.x * vs_TEXCOORD4;
					    u_xlat1 = u_xlat2 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat2.w = u_xlat3.x * vs_TEXCOORD4;
					    u_xlat1 = u_xlat2 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendMul" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat2.w = u_xlat3.x * vs_TEXCOORD4;
					    u_xlat1 = u_xlat2 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat2.w = u_xlat3.x * vs_TEXCOORD4;
					    u_xlat1 = u_xlat2 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendMul" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat0 = u_xlat0 * vs_COLOR0;
					    u_xlat0.w = u_xlat0.w;
					    u_xlat0.w = clamp(u_xlat0.w, 0.0, 1.0);
					    u_xlat1 = u_xlat0 + vec4(-1.0, -1.0, -1.0, -1.0);
					    SV_Target0 = u_xlat0.wwww * u_xlat1 + vec4(1.0, 1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat0 = u_xlat0 * vs_COLOR0;
					    u_xlat0.w = u_xlat0.w;
					    u_xlat0.w = clamp(u_xlat0.w, 0.0, 1.0);
					    u_xlat1 = u_xlat0 + vec4(-1.0, -1.0, -1.0, -1.0);
					    SV_Target0 = u_xlat0.wwww * u_xlat1 + vec4(1.0, 1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendMul" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[7];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat0.w = u_xlat0.w;
					    u_xlat0.w = clamp(u_xlat0.w, 0.0, 1.0);
					    u_xlat1 = u_xlat0 + vec4(-1.0, -1.0, -1.0, -1.0);
					    SV_Target0 = u_xlat0.wwww * u_xlat1 + vec4(1.0, 1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[6];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat0.w = u_xlat0.w;
					    u_xlat0.w = clamp(u_xlat0.w, 0.0, 1.0);
					    u_xlat1 = u_xlat0 + vec4(-1.0, -1.0, -1.0, -1.0);
					    SV_Target0 = u_xlat0.wwww * u_xlat1 + vec4(1.0, 1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendMul" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendMul" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat3.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat1 = texture(_CameraDepthTexture, u_xlat3.xy);
					    u_xlat3.x = _ZBufferParams.z * u_xlat1.x + _ZBufferParams.w;
					    u_xlat3.x = float(1.0) / u_xlat3.x;
					    u_xlat3.x = u_xlat3.x + (-vs_TEXCOORD3.z);
					    u_xlat3.x = u_xlat3.x * _InvFade;
					    u_xlat3.x = clamp(u_xlat3.x, 0.0, 1.0);
					    u_xlat1.w = u_xlat3.x * vs_COLOR0.w;
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2 = u_xlat2 + u_xlat2;
					    u_xlat2 = u_xlat2 * _TintColor;
					    u_xlat1.xyz = vs_COLOR0.xyz;
					    u_xlat1 = u_xlat1 * u_xlat2;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat3.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat1 = texture(_CameraDepthTexture, u_xlat3.xy);
					    u_xlat3.x = _ZBufferParams.z * u_xlat1.x + _ZBufferParams.w;
					    u_xlat3.x = float(1.0) / u_xlat3.x;
					    u_xlat3.x = u_xlat3.x + (-vs_TEXCOORD3.z);
					    u_xlat3.x = u_xlat3.x * _InvFade;
					    u_xlat3.x = clamp(u_xlat3.x, 0.0, 1.0);
					    u_xlat1.w = u_xlat3.x * vs_COLOR0.w;
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2 = u_xlat2 + u_xlat2;
					    u_xlat2 = u_xlat2 * _TintColor;
					    u_xlat1.xyz = vs_COLOR0.xyz;
					    u_xlat1 = u_xlat1 * u_xlat2;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendMul" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendMul" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat3.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat1 = texture(_CameraDepthTexture, u_xlat3.xy);
					    u_xlat3.x = _ZBufferParams.z * u_xlat1.x + _ZBufferParams.w;
					    u_xlat3.x = float(1.0) / u_xlat3.x;
					    u_xlat3.x = u_xlat3.x + (-vs_TEXCOORD3.z);
					    u_xlat3.x = u_xlat3.x * _InvFade;
					    u_xlat3.x = clamp(u_xlat3.x, 0.0, 1.0);
					    u_xlat1.w = u_xlat3.x * vs_COLOR0.w;
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2 = u_xlat2 + u_xlat2;
					    u_xlat2 = u_xlat2 * _TintColor;
					    u_xlat1.xyz = vs_COLOR0.xyz;
					    u_xlat1 = u_xlat1 * u_xlat2;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat3.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat1 = texture(_CameraDepthTexture, u_xlat3.xy);
					    u_xlat3.x = _ZBufferParams.z * u_xlat1.x + _ZBufferParams.w;
					    u_xlat3.x = float(1.0) / u_xlat3.x;
					    u_xlat3.x = u_xlat3.x + (-vs_TEXCOORD3.z);
					    u_xlat3.x = u_xlat3.x * _InvFade;
					    u_xlat3.x = clamp(u_xlat3.x, 0.0, 1.0);
					    u_xlat1.w = u_xlat3.x * vs_COLOR0.w;
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2 = u_xlat2 + u_xlat2;
					    u_xlat2 = u_xlat2 * _TintColor;
					    u_xlat1.xyz = vs_COLOR0.xyz;
					    u_xlat1 = u_xlat1 * u_xlat2;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendMul" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendMul" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat3.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat1 = texture(_CameraDepthTexture, u_xlat3.xy);
					    u_xlat3.x = _ZBufferParams.z * u_xlat1.x + _ZBufferParams.w;
					    u_xlat3.x = float(1.0) / u_xlat3.x;
					    u_xlat3.x = u_xlat3.x + (-vs_TEXCOORD3.z);
					    u_xlat3.x = u_xlat3.x * _InvFade;
					    u_xlat3.x = clamp(u_xlat3.x, 0.0, 1.0);
					    u_xlat1.w = u_xlat3.x * vs_COLOR0.w;
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2 = u_xlat2 + u_xlat2;
					    u_xlat2 = u_xlat2 * _TintColor;
					    u_xlat1.xyz = vs_COLOR0.xyz;
					    u_xlat1 = u_xlat1 * u_xlat2;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat3.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat1 = texture(_CameraDepthTexture, u_xlat3.xy);
					    u_xlat3.x = _ZBufferParams.z * u_xlat1.x + _ZBufferParams.w;
					    u_xlat3.x = float(1.0) / u_xlat3.x;
					    u_xlat3.x = u_xlat3.x + (-vs_TEXCOORD3.z);
					    u_xlat3.x = u_xlat3.x * _InvFade;
					    u_xlat3.x = clamp(u_xlat3.x, 0.0, 1.0);
					    u_xlat1.w = u_xlat3.x * vs_COLOR0.w;
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2 = u_xlat2 + u_xlat2;
					    u_xlat2 = u_xlat2 * _TintColor;
					    u_xlat1.xyz = vs_COLOR0.xyz;
					    u_xlat1 = u_xlat1 * u_xlat2;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendMul" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[7];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat0.w = u_xlat0.w;
					    u_xlat0.w = clamp(u_xlat0.w, 0.0, 1.0);
					    u_xlat1 = u_xlat0 + vec4(-1.0, -1.0, -1.0, -1.0);
					    SV_Target0 = u_xlat0.wwww * u_xlat1 + vec4(1.0, 1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[6];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat0.w = u_xlat0.w;
					    u_xlat0.w = clamp(u_xlat0.w, 0.0, 1.0);
					    u_xlat1 = u_xlat0 + vec4(-1.0, -1.0, -1.0, -1.0);
					    SV_Target0 = u_xlat0.wwww * u_xlat1 + vec4(1.0, 1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendMul" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[7];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat0.w = u_xlat0.w;
					    u_xlat0.w = clamp(u_xlat0.w, 0.0, 1.0);
					    u_xlat1 = u_xlat0 + vec4(-1.0, -1.0, -1.0, -1.0);
					    SV_Target0 = u_xlat0.wwww * u_xlat1 + vec4(1.0, 1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[6];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat0.w = u_xlat0.w;
					    u_xlat0.w = clamp(u_xlat0.w, 0.0, 1.0);
					    u_xlat1 = u_xlat0 + vec4(-1.0, -1.0, -1.0, -1.0);
					    SV_Target0 = u_xlat0.wwww * u_xlat1 + vec4(1.0, 1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendMul" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat3.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat1 = texture(_CameraDepthTexture, u_xlat3.xy);
					    u_xlat3.x = _ZBufferParams.z * u_xlat1.x + _ZBufferParams.w;
					    u_xlat3.x = float(1.0) / u_xlat3.x;
					    u_xlat3.x = u_xlat3.x + (-vs_TEXCOORD3.z);
					    u_xlat3.x = u_xlat3.x * _InvFade;
					    u_xlat3.x = clamp(u_xlat3.x, 0.0, 1.0);
					    u_xlat1.w = u_xlat3.x * vs_COLOR0.w;
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2 = u_xlat2 + u_xlat2;
					    u_xlat2 = u_xlat2 * _TintColor;
					    u_xlat1.xyz = vs_COLOR0.xyz;
					    u_xlat1 = u_xlat1 * u_xlat2;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat3.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat1 = texture(_CameraDepthTexture, u_xlat3.xy);
					    u_xlat3.x = _ZBufferParams.z * u_xlat1.x + _ZBufferParams.w;
					    u_xlat3.x = float(1.0) / u_xlat3.x;
					    u_xlat3.x = u_xlat3.x + (-vs_TEXCOORD3.z);
					    u_xlat3.x = u_xlat3.x * _InvFade;
					    u_xlat3.x = clamp(u_xlat3.x, 0.0, 1.0);
					    u_xlat1.w = u_xlat3.x * vs_COLOR0.w;
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2 = u_xlat2 + u_xlat2;
					    u_xlat2 = u_xlat2 * _TintColor;
					    u_xlat1.xyz = vs_COLOR0.xyz;
					    u_xlat1 = u_xlat1 * u_xlat2;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendMul" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat3.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat1 = texture(_CameraDepthTexture, u_xlat3.xy);
					    u_xlat3.x = _ZBufferParams.z * u_xlat1.x + _ZBufferParams.w;
					    u_xlat3.x = float(1.0) / u_xlat3.x;
					    u_xlat3.x = u_xlat3.x + (-vs_TEXCOORD3.z);
					    u_xlat3.x = u_xlat3.x * _InvFade;
					    u_xlat3.x = clamp(u_xlat3.x, 0.0, 1.0);
					    u_xlat1.w = u_xlat3.x * vs_COLOR0.w;
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2 = u_xlat2 + u_xlat2;
					    u_xlat2 = u_xlat2 * _TintColor;
					    u_xlat1.xyz = vs_COLOR0.xyz;
					    u_xlat1 = u_xlat1 * u_xlat2;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat3.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat1 = texture(_CameraDepthTexture, u_xlat3.xy);
					    u_xlat3.x = _ZBufferParams.z * u_xlat1.x + _ZBufferParams.w;
					    u_xlat3.x = float(1.0) / u_xlat3.x;
					    u_xlat3.x = u_xlat3.x + (-vs_TEXCOORD3.z);
					    u_xlat3.x = u_xlat3.x * _InvFade;
					    u_xlat3.x = clamp(u_xlat3.x, 0.0, 1.0);
					    u_xlat1.w = u_xlat3.x * vs_COLOR0.w;
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2 = u_xlat2 + u_xlat2;
					    u_xlat2 = u_xlat2 * _TintColor;
					    u_xlat1.xyz = vs_COLOR0.xyz;
					    u_xlat1 = u_xlat1 * u_xlat2;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendMul" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat3.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat1 = texture(_CameraDepthTexture, u_xlat3.xy);
					    u_xlat3.x = _ZBufferParams.z * u_xlat1.x + _ZBufferParams.w;
					    u_xlat3.x = float(1.0) / u_xlat3.x;
					    u_xlat3.x = u_xlat3.x + (-vs_TEXCOORD3.z);
					    u_xlat3.x = u_xlat3.x * _InvFade;
					    u_xlat3.x = clamp(u_xlat3.x, 0.0, 1.0);
					    u_xlat1.w = u_xlat3.x * vs_COLOR0.w;
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2 = u_xlat2 + u_xlat2;
					    u_xlat2 = u_xlat2 * _TintColor;
					    u_xlat1.xyz = vs_COLOR0.xyz;
					    u_xlat1 = u_xlat1 * u_xlat2;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat3.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat1 = texture(_CameraDepthTexture, u_xlat3.xy);
					    u_xlat3.x = _ZBufferParams.z * u_xlat1.x + _ZBufferParams.w;
					    u_xlat3.x = float(1.0) / u_xlat3.x;
					    u_xlat3.x = u_xlat3.x + (-vs_TEXCOORD3.z);
					    u_xlat3.x = u_xlat3.x * _InvFade;
					    u_xlat3.x = clamp(u_xlat3.x, 0.0, 1.0);
					    u_xlat1.w = u_xlat3.x * vs_COLOR0.w;
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2 = u_xlat2 + u_xlat2;
					    u_xlat2 = u_xlat2 * _TintColor;
					    u_xlat1.xyz = vs_COLOR0.xyz;
					    u_xlat1 = u_xlat1 * u_xlat2;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendMul" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat3.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat1 = texture(_CameraDepthTexture, u_xlat3.xy);
					    u_xlat3.x = _ZBufferParams.z * u_xlat1.x + _ZBufferParams.w;
					    u_xlat3.x = float(1.0) / u_xlat3.x;
					    u_xlat3.x = u_xlat3.x + (-vs_TEXCOORD3.z);
					    u_xlat3.x = u_xlat3.x * _InvFade;
					    u_xlat3.x = clamp(u_xlat3.x, 0.0, 1.0);
					    u_xlat1.w = u_xlat3.x * vs_COLOR0.w;
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2 = u_xlat2 + u_xlat2;
					    u_xlat2 = u_xlat2 * _TintColor;
					    u_xlat1.xyz = vs_COLOR0.xyz;
					    u_xlat1 = u_xlat1 * u_xlat2;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat3.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat1 = texture(_CameraDepthTexture, u_xlat3.xy);
					    u_xlat3.x = _ZBufferParams.z * u_xlat1.x + _ZBufferParams.w;
					    u_xlat3.x = float(1.0) / u_xlat3.x;
					    u_xlat3.x = u_xlat3.x + (-vs_TEXCOORD3.z);
					    u_xlat3.x = u_xlat3.x * _InvFade;
					    u_xlat3.x = clamp(u_xlat3.x, 0.0, 1.0);
					    u_xlat1.w = u_xlat3.x * vs_COLOR0.w;
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2 = u_xlat2 + u_xlat2;
					    u_xlat2 = u_xlat2 * _TintColor;
					    u_xlat1.xyz = vs_COLOR0.xyz;
					    u_xlat1 = u_xlat1 * u_xlat2;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendMul" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat3.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat1 = texture(_CameraDepthTexture, u_xlat3.xy);
					    u_xlat3.x = _ZBufferParams.z * u_xlat1.x + _ZBufferParams.w;
					    u_xlat3.x = float(1.0) / u_xlat3.x;
					    u_xlat3.x = u_xlat3.x + (-vs_TEXCOORD3.z);
					    u_xlat3.x = u_xlat3.x * _InvFade;
					    u_xlat3.x = clamp(u_xlat3.x, 0.0, 1.0);
					    u_xlat1.w = u_xlat3.x * vs_COLOR0.w;
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2 = u_xlat2 + u_xlat2;
					    u_xlat2 = u_xlat2 * _TintColor;
					    u_xlat1.xyz = vs_COLOR0.xyz;
					    u_xlat1 = u_xlat1 * u_xlat2;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat3.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat1 = texture(_CameraDepthTexture, u_xlat3.xy);
					    u_xlat3.x = _ZBufferParams.z * u_xlat1.x + _ZBufferParams.w;
					    u_xlat3.x = float(1.0) / u_xlat3.x;
					    u_xlat3.x = u_xlat3.x + (-vs_TEXCOORD3.z);
					    u_xlat3.x = u_xlat3.x * _InvFade;
					    u_xlat3.x = clamp(u_xlat3.x, 0.0, 1.0);
					    u_xlat1.w = u_xlat3.x * vs_COLOR0.w;
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2 = u_xlat2 + u_xlat2;
					    u_xlat2 = u_xlat2 * _TintColor;
					    u_xlat1.xyz = vs_COLOR0.xyz;
					    u_xlat1 = u_xlat1 * u_xlat2;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendMul" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat3.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat1 = texture(_CameraDepthTexture, u_xlat3.xy);
					    u_xlat3.x = _ZBufferParams.z * u_xlat1.x + _ZBufferParams.w;
					    u_xlat3.x = float(1.0) / u_xlat3.x;
					    u_xlat3.x = u_xlat3.x + (-vs_TEXCOORD3.z);
					    u_xlat3.x = u_xlat3.x * _InvFade;
					    u_xlat3.x = clamp(u_xlat3.x, 0.0, 1.0);
					    u_xlat1.w = u_xlat3.x * vs_COLOR0.w;
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2 = u_xlat2 + u_xlat2;
					    u_xlat2 = u_xlat2 * _TintColor;
					    u_xlat1.xyz = vs_COLOR0.xyz;
					    u_xlat1 = u_xlat1 * u_xlat2;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat3.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat1 = texture(_CameraDepthTexture, u_xlat3.xy);
					    u_xlat3.x = _ZBufferParams.z * u_xlat1.x + _ZBufferParams.w;
					    u_xlat3.x = float(1.0) / u_xlat3.x;
					    u_xlat3.x = u_xlat3.x + (-vs_TEXCOORD3.z);
					    u_xlat3.x = u_xlat3.x * _InvFade;
					    u_xlat3.x = clamp(u_xlat3.x, 0.0, 1.0);
					    u_xlat1.w = u_xlat3.x * vs_COLOR0.w;
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2 = u_xlat2 + u_xlat2;
					    u_xlat2 = u_xlat2 * _TintColor;
					    u_xlat1.xyz = vs_COLOR0.xyz;
					    u_xlat1 = u_xlat1 * u_xlat2;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendMul" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat6;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat0 = u_xlat0 * vs_COLOR0;
					    u_xlat6 = u_xlat0.w;
					    u_xlat6 = clamp(u_xlat6, 0.0, 1.0);
					    u_xlat0.w = u_xlat6 * vs_TEXCOORD4;
					    u_xlat1 = u_xlat0 + vec4(-1.0, -1.0, -1.0, -1.0);
					    SV_Target0 = u_xlat0.wwww * u_xlat1 + vec4(1.0, 1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat6;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat0 = u_xlat0 * vs_COLOR0;
					    u_xlat6 = u_xlat0.w;
					    u_xlat6 = clamp(u_xlat6, 0.0, 1.0);
					    u_xlat0.w = u_xlat6 * vs_TEXCOORD4;
					    u_xlat1 = u_xlat0 + vec4(-1.0, -1.0, -1.0, -1.0);
					    SV_Target0 = u_xlat0.wwww * u_xlat1 + vec4(1.0, 1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendMul" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[7];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat6;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat6 = u_xlat0.w;
					    u_xlat6 = clamp(u_xlat6, 0.0, 1.0);
					    u_xlat0.w = u_xlat6 * vs_TEXCOORD4;
					    u_xlat1 = u_xlat0 + vec4(-1.0, -1.0, -1.0, -1.0);
					    SV_Target0 = u_xlat0.wwww * u_xlat1 + vec4(1.0, 1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[6];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat6;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat6 = u_xlat0.w;
					    u_xlat6 = clamp(u_xlat6, 0.0, 1.0);
					    u_xlat0.w = u_xlat6 * vs_TEXCOORD4;
					    u_xlat1 = u_xlat0 + vec4(-1.0, -1.0, -1.0, -1.0);
					    SV_Target0 = u_xlat0.wwww * u_xlat1 + vec4(1.0, 1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendMul" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendMul" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat6;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat6 = u_xlat0.w;
					    u_xlat6 = clamp(u_xlat6, 0.0, 1.0);
					    u_xlat0.w = u_xlat6 * vs_TEXCOORD4;
					    u_xlat1 = u_xlat0 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat0.xyz = u_xlat0.www * u_xlat1.xyz;
					    SV_Target0.w = u_xlat0.w * u_xlat1.w + 1.0;
					    u_xlat6 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat6 = (-u_xlat6) + 1.0;
					    u_xlat6 = u_xlat6 * _ProjectionParams.z;
					    u_xlat6 = max(u_xlat6, 0.0);
					    u_xlat6 = u_xlat6 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat6 = clamp(u_xlat6, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat6) * u_xlat0.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat6;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat6 = u_xlat0.w;
					    u_xlat6 = clamp(u_xlat6, 0.0, 1.0);
					    u_xlat0.w = u_xlat6 * vs_TEXCOORD4;
					    u_xlat1 = u_xlat0 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat0.xyz = u_xlat0.www * u_xlat1.xyz;
					    SV_Target0.w = u_xlat0.w * u_xlat1.w + 1.0;
					    u_xlat6 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat6 = (-u_xlat6) + 1.0;
					    u_xlat6 = u_xlat6 * _ProjectionParams.z;
					    u_xlat6 = max(u_xlat6, 0.0);
					    u_xlat6 = u_xlat6 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat6 = clamp(u_xlat6, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat6) * u_xlat0.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendMul" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendMul" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat3.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat1 = texture(_CameraDepthTexture, u_xlat3.xy);
					    u_xlat3.x = _ZBufferParams.z * u_xlat1.x + _ZBufferParams.w;
					    u_xlat3.x = float(1.0) / u_xlat3.x;
					    u_xlat3.x = u_xlat3.x + (-vs_TEXCOORD3.z);
					    u_xlat3.x = u_xlat3.x * _InvFade;
					    u_xlat3.x = clamp(u_xlat3.x, 0.0, 1.0);
					    u_xlat1.w = u_xlat3.x * vs_COLOR0.w;
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2 = u_xlat2 + u_xlat2;
					    u_xlat2 = u_xlat2 * _TintColor;
					    u_xlat1.xyz = vs_COLOR0.xyz;
					    u_xlat1 = u_xlat1 * u_xlat2;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat3.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat1 = texture(_CameraDepthTexture, u_xlat3.xy);
					    u_xlat3.x = _ZBufferParams.z * u_xlat1.x + _ZBufferParams.w;
					    u_xlat3.x = float(1.0) / u_xlat3.x;
					    u_xlat3.x = u_xlat3.x + (-vs_TEXCOORD3.z);
					    u_xlat3.x = u_xlat3.x * _InvFade;
					    u_xlat3.x = clamp(u_xlat3.x, 0.0, 1.0);
					    u_xlat1.w = u_xlat3.x * vs_COLOR0.w;
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2 = u_xlat2 + u_xlat2;
					    u_xlat2 = u_xlat2 * _TintColor;
					    u_xlat1.xyz = vs_COLOR0.xyz;
					    u_xlat1 = u_xlat1 * u_xlat2;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendMul" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendMul" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat3.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat1 = texture(_CameraDepthTexture, u_xlat3.xy);
					    u_xlat3.x = _ZBufferParams.z * u_xlat1.x + _ZBufferParams.w;
					    u_xlat3.x = float(1.0) / u_xlat3.x;
					    u_xlat3.x = u_xlat3.x + (-vs_TEXCOORD3.z);
					    u_xlat3.x = u_xlat3.x * _InvFade;
					    u_xlat3.x = clamp(u_xlat3.x, 0.0, 1.0);
					    u_xlat1.w = u_xlat3.x * vs_COLOR0.w;
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2 = u_xlat2 + u_xlat2;
					    u_xlat2 = u_xlat2 * _TintColor;
					    u_xlat1.xyz = vs_COLOR0.xyz;
					    u_xlat1 = u_xlat1 * u_xlat2;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat3.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat1 = texture(_CameraDepthTexture, u_xlat3.xy);
					    u_xlat3.x = _ZBufferParams.z * u_xlat1.x + _ZBufferParams.w;
					    u_xlat3.x = float(1.0) / u_xlat3.x;
					    u_xlat3.x = u_xlat3.x + (-vs_TEXCOORD3.z);
					    u_xlat3.x = u_xlat3.x * _InvFade;
					    u_xlat3.x = clamp(u_xlat3.x, 0.0, 1.0);
					    u_xlat1.w = u_xlat3.x * vs_COLOR0.w;
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2 = u_xlat2 + u_xlat2;
					    u_xlat2 = u_xlat2 * _TintColor;
					    u_xlat1.xyz = vs_COLOR0.xyz;
					    u_xlat1 = u_xlat1 * u_xlat2;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendMul" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[7];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat6;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat6 = u_xlat0.w;
					    u_xlat6 = clamp(u_xlat6, 0.0, 1.0);
					    u_xlat0.w = u_xlat6 * vs_TEXCOORD4;
					    u_xlat1 = u_xlat0 + vec4(-1.0, -1.0, -1.0, -1.0);
					    SV_Target0 = u_xlat0.wwww * u_xlat1 + vec4(1.0, 1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[6];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat6;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat6 = u_xlat0.w;
					    u_xlat6 = clamp(u_xlat6, 0.0, 1.0);
					    u_xlat0.w = u_xlat6 * vs_TEXCOORD4;
					    u_xlat1 = u_xlat0 + vec4(-1.0, -1.0, -1.0, -1.0);
					    SV_Target0 = u_xlat0.wwww * u_xlat1 + vec4(1.0, 1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendMul" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[7];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat6;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat6 = u_xlat0.w;
					    u_xlat6 = clamp(u_xlat6, 0.0, 1.0);
					    u_xlat0.w = u_xlat6 * vs_TEXCOORD4;
					    u_xlat1 = u_xlat0 + vec4(-1.0, -1.0, -1.0, -1.0);
					    SV_Target0 = u_xlat0.wwww * u_xlat1 + vec4(1.0, 1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[6];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat6;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat6 = u_xlat0.w;
					    u_xlat6 = clamp(u_xlat6, 0.0, 1.0);
					    u_xlat0.w = u_xlat6 * vs_TEXCOORD4;
					    u_xlat1 = u_xlat0 + vec4(-1.0, -1.0, -1.0, -1.0);
					    SV_Target0 = u_xlat0.wwww * u_xlat1 + vec4(1.0, 1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendMul" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat6;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat6 = u_xlat0.w;
					    u_xlat6 = clamp(u_xlat6, 0.0, 1.0);
					    u_xlat0.w = u_xlat6 * vs_TEXCOORD4;
					    u_xlat1 = u_xlat0 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat0.xyz = u_xlat0.www * u_xlat1.xyz;
					    SV_Target0.w = u_xlat0.w * u_xlat1.w + 1.0;
					    u_xlat6 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat6 = (-u_xlat6) + 1.0;
					    u_xlat6 = u_xlat6 * _ProjectionParams.z;
					    u_xlat6 = max(u_xlat6, 0.0);
					    u_xlat6 = u_xlat6 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat6 = clamp(u_xlat6, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat6) * u_xlat0.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat6;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat6 = u_xlat0.w;
					    u_xlat6 = clamp(u_xlat6, 0.0, 1.0);
					    u_xlat0.w = u_xlat6 * vs_TEXCOORD4;
					    u_xlat1 = u_xlat0 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat0.xyz = u_xlat0.www * u_xlat1.xyz;
					    SV_Target0.w = u_xlat0.w * u_xlat1.w + 1.0;
					    u_xlat6 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat6 = (-u_xlat6) + 1.0;
					    u_xlat6 = u_xlat6 * _ProjectionParams.z;
					    u_xlat6 = max(u_xlat6, 0.0);
					    u_xlat6 = u_xlat6 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat6 = clamp(u_xlat6, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat6) * u_xlat0.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendMul" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat6;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat6 = u_xlat0.w;
					    u_xlat6 = clamp(u_xlat6, 0.0, 1.0);
					    u_xlat0.w = u_xlat6 * vs_TEXCOORD4;
					    u_xlat1 = u_xlat0 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat0.xyz = u_xlat0.www * u_xlat1.xyz;
					    SV_Target0.w = u_xlat0.w * u_xlat1.w + 1.0;
					    u_xlat6 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat6 = (-u_xlat6) + 1.0;
					    u_xlat6 = u_xlat6 * _ProjectionParams.z;
					    u_xlat6 = max(u_xlat6, 0.0);
					    u_xlat6 = u_xlat6 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat6 = clamp(u_xlat6, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat6) * u_xlat0.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat6;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat6 = u_xlat0.w;
					    u_xlat6 = clamp(u_xlat6, 0.0, 1.0);
					    u_xlat0.w = u_xlat6 * vs_TEXCOORD4;
					    u_xlat1 = u_xlat0 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat0.xyz = u_xlat0.www * u_xlat1.xyz;
					    SV_Target0.w = u_xlat0.w * u_xlat1.w + 1.0;
					    u_xlat6 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat6 = (-u_xlat6) + 1.0;
					    u_xlat6 = u_xlat6 * _ProjectionParams.z;
					    u_xlat6 = max(u_xlat6, 0.0);
					    u_xlat6 = u_xlat6 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat6 = clamp(u_xlat6, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat6) * u_xlat0.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendMul" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat3.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat1 = texture(_CameraDepthTexture, u_xlat3.xy);
					    u_xlat3.x = _ZBufferParams.z * u_xlat1.x + _ZBufferParams.w;
					    u_xlat3.x = float(1.0) / u_xlat3.x;
					    u_xlat3.x = u_xlat3.x + (-vs_TEXCOORD3.z);
					    u_xlat3.x = u_xlat3.x * _InvFade;
					    u_xlat3.x = clamp(u_xlat3.x, 0.0, 1.0);
					    u_xlat1.w = u_xlat3.x * vs_COLOR0.w;
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2 = u_xlat2 + u_xlat2;
					    u_xlat2 = u_xlat2 * _TintColor;
					    u_xlat1.xyz = vs_COLOR0.xyz;
					    u_xlat1 = u_xlat1 * u_xlat2;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat3.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat1 = texture(_CameraDepthTexture, u_xlat3.xy);
					    u_xlat3.x = _ZBufferParams.z * u_xlat1.x + _ZBufferParams.w;
					    u_xlat3.x = float(1.0) / u_xlat3.x;
					    u_xlat3.x = u_xlat3.x + (-vs_TEXCOORD3.z);
					    u_xlat3.x = u_xlat3.x * _InvFade;
					    u_xlat3.x = clamp(u_xlat3.x, 0.0, 1.0);
					    u_xlat1.w = u_xlat3.x * vs_COLOR0.w;
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2 = u_xlat2 + u_xlat2;
					    u_xlat2 = u_xlat2 * _TintColor;
					    u_xlat1.xyz = vs_COLOR0.xyz;
					    u_xlat1 = u_xlat1 * u_xlat2;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendMul" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat3.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat1 = texture(_CameraDepthTexture, u_xlat3.xy);
					    u_xlat3.x = _ZBufferParams.z * u_xlat1.x + _ZBufferParams.w;
					    u_xlat3.x = float(1.0) / u_xlat3.x;
					    u_xlat3.x = u_xlat3.x + (-vs_TEXCOORD3.z);
					    u_xlat3.x = u_xlat3.x * _InvFade;
					    u_xlat3.x = clamp(u_xlat3.x, 0.0, 1.0);
					    u_xlat1.w = u_xlat3.x * vs_COLOR0.w;
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2 = u_xlat2 + u_xlat2;
					    u_xlat2 = u_xlat2 * _TintColor;
					    u_xlat1.xyz = vs_COLOR0.xyz;
					    u_xlat1 = u_xlat1 * u_xlat2;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat3.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat1 = texture(_CameraDepthTexture, u_xlat3.xy);
					    u_xlat3.x = _ZBufferParams.z * u_xlat1.x + _ZBufferParams.w;
					    u_xlat3.x = float(1.0) / u_xlat3.x;
					    u_xlat3.x = u_xlat3.x + (-vs_TEXCOORD3.z);
					    u_xlat3.x = u_xlat3.x * _InvFade;
					    u_xlat3.x = clamp(u_xlat3.x, 0.0, 1.0);
					    u_xlat1.w = u_xlat3.x * vs_COLOR0.w;
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2 = u_xlat2 + u_xlat2;
					    u_xlat2 = u_xlat2 * _TintColor;
					    u_xlat1.xyz = vs_COLOR0.xyz;
					    u_xlat1 = u_xlat1 * u_xlat2;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendMul" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat3.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat1 = texture(_CameraDepthTexture, u_xlat3.xy);
					    u_xlat3.x = _ZBufferParams.z * u_xlat1.x + _ZBufferParams.w;
					    u_xlat3.x = float(1.0) / u_xlat3.x;
					    u_xlat3.x = u_xlat3.x + (-vs_TEXCOORD3.z);
					    u_xlat3.x = u_xlat3.x * _InvFade;
					    u_xlat3.x = clamp(u_xlat3.x, 0.0, 1.0);
					    u_xlat1.w = u_xlat3.x * vs_COLOR0.w;
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2 = u_xlat2 + u_xlat2;
					    u_xlat2 = u_xlat2 * _TintColor;
					    u_xlat1.xyz = vs_COLOR0.xyz;
					    u_xlat1 = u_xlat1 * u_xlat2;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat3.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat1 = texture(_CameraDepthTexture, u_xlat3.xy);
					    u_xlat3.x = _ZBufferParams.z * u_xlat1.x + _ZBufferParams.w;
					    u_xlat3.x = float(1.0) / u_xlat3.x;
					    u_xlat3.x = u_xlat3.x + (-vs_TEXCOORD3.z);
					    u_xlat3.x = u_xlat3.x * _InvFade;
					    u_xlat3.x = clamp(u_xlat3.x, 0.0, 1.0);
					    u_xlat1.w = u_xlat3.x * vs_COLOR0.w;
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2 = u_xlat2 + u_xlat2;
					    u_xlat2 = u_xlat2 * _TintColor;
					    u_xlat1.xyz = vs_COLOR0.xyz;
					    u_xlat1 = u_xlat1 * u_xlat2;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendMul" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat3.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat1 = texture(_CameraDepthTexture, u_xlat3.xy);
					    u_xlat3.x = _ZBufferParams.z * u_xlat1.x + _ZBufferParams.w;
					    u_xlat3.x = float(1.0) / u_xlat3.x;
					    u_xlat3.x = u_xlat3.x + (-vs_TEXCOORD3.z);
					    u_xlat3.x = u_xlat3.x * _InvFade;
					    u_xlat3.x = clamp(u_xlat3.x, 0.0, 1.0);
					    u_xlat1.w = u_xlat3.x * vs_COLOR0.w;
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2 = u_xlat2 + u_xlat2;
					    u_xlat2 = u_xlat2 * _TintColor;
					    u_xlat1.xyz = vs_COLOR0.xyz;
					    u_xlat1 = u_xlat1 * u_xlat2;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat3.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat1 = texture(_CameraDepthTexture, u_xlat3.xy);
					    u_xlat3.x = _ZBufferParams.z * u_xlat1.x + _ZBufferParams.w;
					    u_xlat3.x = float(1.0) / u_xlat3.x;
					    u_xlat3.x = u_xlat3.x + (-vs_TEXCOORD3.z);
					    u_xlat3.x = u_xlat3.x * _InvFade;
					    u_xlat3.x = clamp(u_xlat3.x, 0.0, 1.0);
					    u_xlat1.w = u_xlat3.x * vs_COLOR0.w;
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2 = u_xlat2 + u_xlat2;
					    u_xlat2 = u_xlat2 * _TintColor;
					    u_xlat1.xyz = vs_COLOR0.xyz;
					    u_xlat1 = u_xlat1 * u_xlat2;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendMul" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					bool u_xlatb1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1.x = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat0.w = u_xlat0.w * u_xlat1.x;
					    u_xlat0 = u_xlat0 * vs_COLOR0;
					    u_xlat0.w = u_xlat0.w;
					    u_xlat0.w = clamp(u_xlat0.w, 0.0, 1.0);
					    u_xlat1 = u_xlat0 + vec4(-1.0, -1.0, -1.0, -1.0);
					    SV_Target0 = u_xlat0.wwww * u_xlat1 + vec4(1.0, 1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					bool u_xlatb1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1.x = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat0.w = u_xlat0.w * u_xlat1.x;
					    u_xlat0 = u_xlat0 * vs_COLOR0;
					    u_xlat0.w = u_xlat0.w;
					    u_xlat0.w = clamp(u_xlat0.w, 0.0, 1.0);
					    u_xlat1 = u_xlat0 + vec4(-1.0, -1.0, -1.0, -1.0);
					    SV_Target0 = u_xlat0.wwww * u_xlat1 + vec4(1.0, 1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendMul" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[7];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					bool u_xlatb2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2 = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat0.w = u_xlat0.w;
					    u_xlat0.w = clamp(u_xlat0.w, 0.0, 1.0);
					    u_xlat1 = u_xlat0 + vec4(-1.0, -1.0, -1.0, -1.0);
					    SV_Target0 = u_xlat0.wwww * u_xlat1 + vec4(1.0, 1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[6];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					bool u_xlatb2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2 = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat0.w = u_xlat0.w;
					    u_xlat0.w = clamp(u_xlat0.w, 0.0, 1.0);
					    u_xlat1 = u_xlat0 + vec4(-1.0, -1.0, -1.0, -1.0);
					    SV_Target0 = u_xlat0.wwww * u_xlat1 + vec4(1.0, 1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendMul" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3.x;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3.x;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendMul" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					bool u_xlatb2;
					float u_xlat9;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2 = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat0.w = u_xlat0.w;
					    u_xlat0.w = clamp(u_xlat0.w, 0.0, 1.0);
					    u_xlat1 = u_xlat0 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat0.xyz = u_xlat0.www * u_xlat1.xyz;
					    SV_Target0.w = u_xlat0.w * u_xlat1.w + 1.0;
					    u_xlat9 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat9 = (-u_xlat9) + 1.0;
					    u_xlat9 = u_xlat9 * _ProjectionParams.z;
					    u_xlat9 = max(u_xlat9, 0.0);
					    u_xlat9 = u_xlat9 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat9 = clamp(u_xlat9, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat9) * u_xlat0.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					bool u_xlatb2;
					float u_xlat9;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2 = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat0.w = u_xlat0.w;
					    u_xlat0.w = clamp(u_xlat0.w, 0.0, 1.0);
					    u_xlat1 = u_xlat0 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat0.xyz = u_xlat0.www * u_xlat1.xyz;
					    SV_Target0.w = u_xlat0.w * u_xlat1.w + 1.0;
					    u_xlat9 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat9 = (-u_xlat9) + 1.0;
					    u_xlat9 = u_xlat9 * _ProjectionParams.z;
					    u_xlat9 = max(u_xlat9, 0.0);
					    u_xlat9 = u_xlat9 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat9 = clamp(u_xlat9, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat9) * u_xlat0.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendMul" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3.x;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3.x;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendMul" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat3.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat1 = texture(_CameraDepthTexture, u_xlat3.xy);
					    u_xlat3.x = _ZBufferParams.z * u_xlat1.x + _ZBufferParams.w;
					    u_xlat3.x = float(1.0) / u_xlat3.x;
					    u_xlat3.x = u_xlat3.x + (-vs_TEXCOORD3.z);
					    u_xlat3.x = u_xlat3.x * _InvFade;
					    u_xlat3.x = clamp(u_xlat3.x, 0.0, 1.0);
					    u_xlat1.w = u_xlat3.x * vs_COLOR0.w;
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb3 = u_xlat2.w>=_Cutout;
					    u_xlat2 = u_xlat2 + u_xlat2;
					    u_xlat2 = u_xlat2 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat2.w = u_xlat2.w * u_xlat3.x;
					    u_xlat1.xyz = vs_COLOR0.xyz;
					    u_xlat1 = u_xlat1 * u_xlat2;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat3.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat1 = texture(_CameraDepthTexture, u_xlat3.xy);
					    u_xlat3.x = _ZBufferParams.z * u_xlat1.x + _ZBufferParams.w;
					    u_xlat3.x = float(1.0) / u_xlat3.x;
					    u_xlat3.x = u_xlat3.x + (-vs_TEXCOORD3.z);
					    u_xlat3.x = u_xlat3.x * _InvFade;
					    u_xlat3.x = clamp(u_xlat3.x, 0.0, 1.0);
					    u_xlat1.w = u_xlat3.x * vs_COLOR0.w;
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb3 = u_xlat2.w>=_Cutout;
					    u_xlat2 = u_xlat2 + u_xlat2;
					    u_xlat2 = u_xlat2 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat2.w = u_xlat2.w * u_xlat3.x;
					    u_xlat1.xyz = vs_COLOR0.xyz;
					    u_xlat1 = u_xlat1 * u_xlat2;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendMul" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3.x;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3.x;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendMul" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat3.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat1 = texture(_CameraDepthTexture, u_xlat3.xy);
					    u_xlat3.x = _ZBufferParams.z * u_xlat1.x + _ZBufferParams.w;
					    u_xlat3.x = float(1.0) / u_xlat3.x;
					    u_xlat3.x = u_xlat3.x + (-vs_TEXCOORD3.z);
					    u_xlat3.x = u_xlat3.x * _InvFade;
					    u_xlat3.x = clamp(u_xlat3.x, 0.0, 1.0);
					    u_xlat1.w = u_xlat3.x * vs_COLOR0.w;
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb3 = u_xlat2.w>=_Cutout;
					    u_xlat2 = u_xlat2 + u_xlat2;
					    u_xlat2 = u_xlat2 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat2.w = u_xlat2.w * u_xlat3.x;
					    u_xlat1.xyz = vs_COLOR0.xyz;
					    u_xlat1 = u_xlat1 * u_xlat2;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat3.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat1 = texture(_CameraDepthTexture, u_xlat3.xy);
					    u_xlat3.x = _ZBufferParams.z * u_xlat1.x + _ZBufferParams.w;
					    u_xlat3.x = float(1.0) / u_xlat3.x;
					    u_xlat3.x = u_xlat3.x + (-vs_TEXCOORD3.z);
					    u_xlat3.x = u_xlat3.x * _InvFade;
					    u_xlat3.x = clamp(u_xlat3.x, 0.0, 1.0);
					    u_xlat1.w = u_xlat3.x * vs_COLOR0.w;
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb3 = u_xlat2.w>=_Cutout;
					    u_xlat2 = u_xlat2 + u_xlat2;
					    u_xlat2 = u_xlat2 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat2.w = u_xlat2.w * u_xlat3.x;
					    u_xlat1.xyz = vs_COLOR0.xyz;
					    u_xlat1 = u_xlat1 * u_xlat2;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendMul" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[7];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					bool u_xlatb2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2 = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat0.w = u_xlat0.w;
					    u_xlat0.w = clamp(u_xlat0.w, 0.0, 1.0);
					    u_xlat1 = u_xlat0 + vec4(-1.0, -1.0, -1.0, -1.0);
					    SV_Target0 = u_xlat0.wwww * u_xlat1 + vec4(1.0, 1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[6];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					bool u_xlatb2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2 = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat0.w = u_xlat0.w;
					    u_xlat0.w = clamp(u_xlat0.w, 0.0, 1.0);
					    u_xlat1 = u_xlat0 + vec4(-1.0, -1.0, -1.0, -1.0);
					    SV_Target0 = u_xlat0.wwww * u_xlat1 + vec4(1.0, 1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendMul" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[7];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					bool u_xlatb2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2 = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat0.w = u_xlat0.w;
					    u_xlat0.w = clamp(u_xlat0.w, 0.0, 1.0);
					    u_xlat1 = u_xlat0 + vec4(-1.0, -1.0, -1.0, -1.0);
					    SV_Target0 = u_xlat0.wwww * u_xlat1 + vec4(1.0, 1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[6];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					bool u_xlatb2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2 = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat0.w = u_xlat0.w;
					    u_xlat0.w = clamp(u_xlat0.w, 0.0, 1.0);
					    u_xlat1 = u_xlat0 + vec4(-1.0, -1.0, -1.0, -1.0);
					    SV_Target0 = u_xlat0.wwww * u_xlat1 + vec4(1.0, 1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendMul" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					bool u_xlatb2;
					float u_xlat9;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2 = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat0.w = u_xlat0.w;
					    u_xlat0.w = clamp(u_xlat0.w, 0.0, 1.0);
					    u_xlat1 = u_xlat0 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat0.xyz = u_xlat0.www * u_xlat1.xyz;
					    SV_Target0.w = u_xlat0.w * u_xlat1.w + 1.0;
					    u_xlat9 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat9 = (-u_xlat9) + 1.0;
					    u_xlat9 = u_xlat9 * _ProjectionParams.z;
					    u_xlat9 = max(u_xlat9, 0.0);
					    u_xlat9 = u_xlat9 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat9 = clamp(u_xlat9, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat9) * u_xlat0.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					bool u_xlatb2;
					float u_xlat9;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2 = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat0.w = u_xlat0.w;
					    u_xlat0.w = clamp(u_xlat0.w, 0.0, 1.0);
					    u_xlat1 = u_xlat0 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat0.xyz = u_xlat0.www * u_xlat1.xyz;
					    SV_Target0.w = u_xlat0.w * u_xlat1.w + 1.0;
					    u_xlat9 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat9 = (-u_xlat9) + 1.0;
					    u_xlat9 = u_xlat9 * _ProjectionParams.z;
					    u_xlat9 = max(u_xlat9, 0.0);
					    u_xlat9 = u_xlat9 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat9 = clamp(u_xlat9, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat9) * u_xlat0.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendMul" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					bool u_xlatb2;
					float u_xlat9;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2 = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat0.w = u_xlat0.w;
					    u_xlat0.w = clamp(u_xlat0.w, 0.0, 1.0);
					    u_xlat1 = u_xlat0 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat0.xyz = u_xlat0.www * u_xlat1.xyz;
					    SV_Target0.w = u_xlat0.w * u_xlat1.w + 1.0;
					    u_xlat9 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat9 = (-u_xlat9) + 1.0;
					    u_xlat9 = u_xlat9 * _ProjectionParams.z;
					    u_xlat9 = max(u_xlat9, 0.0);
					    u_xlat9 = u_xlat9 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat9 = clamp(u_xlat9, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat9) * u_xlat0.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					bool u_xlatb2;
					float u_xlat9;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2 = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat0.w = u_xlat0.w;
					    u_xlat0.w = clamp(u_xlat0.w, 0.0, 1.0);
					    u_xlat1 = u_xlat0 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat0.xyz = u_xlat0.www * u_xlat1.xyz;
					    SV_Target0.w = u_xlat0.w * u_xlat1.w + 1.0;
					    u_xlat9 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat9 = (-u_xlat9) + 1.0;
					    u_xlat9 = u_xlat9 * _ProjectionParams.z;
					    u_xlat9 = max(u_xlat9, 0.0);
					    u_xlat9 = u_xlat9 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat9 = clamp(u_xlat9, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat9) * u_xlat0.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendMul" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat3.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat1 = texture(_CameraDepthTexture, u_xlat3.xy);
					    u_xlat3.x = _ZBufferParams.z * u_xlat1.x + _ZBufferParams.w;
					    u_xlat3.x = float(1.0) / u_xlat3.x;
					    u_xlat3.x = u_xlat3.x + (-vs_TEXCOORD3.z);
					    u_xlat3.x = u_xlat3.x * _InvFade;
					    u_xlat3.x = clamp(u_xlat3.x, 0.0, 1.0);
					    u_xlat1.w = u_xlat3.x * vs_COLOR0.w;
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb3 = u_xlat2.w>=_Cutout;
					    u_xlat2 = u_xlat2 + u_xlat2;
					    u_xlat2 = u_xlat2 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat2.w = u_xlat2.w * u_xlat3.x;
					    u_xlat1.xyz = vs_COLOR0.xyz;
					    u_xlat1 = u_xlat1 * u_xlat2;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat3.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat1 = texture(_CameraDepthTexture, u_xlat3.xy);
					    u_xlat3.x = _ZBufferParams.z * u_xlat1.x + _ZBufferParams.w;
					    u_xlat3.x = float(1.0) / u_xlat3.x;
					    u_xlat3.x = u_xlat3.x + (-vs_TEXCOORD3.z);
					    u_xlat3.x = u_xlat3.x * _InvFade;
					    u_xlat3.x = clamp(u_xlat3.x, 0.0, 1.0);
					    u_xlat1.w = u_xlat3.x * vs_COLOR0.w;
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb3 = u_xlat2.w>=_Cutout;
					    u_xlat2 = u_xlat2 + u_xlat2;
					    u_xlat2 = u_xlat2 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat2.w = u_xlat2.w * u_xlat3.x;
					    u_xlat1.xyz = vs_COLOR0.xyz;
					    u_xlat1 = u_xlat1 * u_xlat2;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendMul" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat3.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat1 = texture(_CameraDepthTexture, u_xlat3.xy);
					    u_xlat3.x = _ZBufferParams.z * u_xlat1.x + _ZBufferParams.w;
					    u_xlat3.x = float(1.0) / u_xlat3.x;
					    u_xlat3.x = u_xlat3.x + (-vs_TEXCOORD3.z);
					    u_xlat3.x = u_xlat3.x * _InvFade;
					    u_xlat3.x = clamp(u_xlat3.x, 0.0, 1.0);
					    u_xlat1.w = u_xlat3.x * vs_COLOR0.w;
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb3 = u_xlat2.w>=_Cutout;
					    u_xlat2 = u_xlat2 + u_xlat2;
					    u_xlat2 = u_xlat2 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat2.w = u_xlat2.w * u_xlat3.x;
					    u_xlat1.xyz = vs_COLOR0.xyz;
					    u_xlat1 = u_xlat1 * u_xlat2;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat3.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat1 = texture(_CameraDepthTexture, u_xlat3.xy);
					    u_xlat3.x = _ZBufferParams.z * u_xlat1.x + _ZBufferParams.w;
					    u_xlat3.x = float(1.0) / u_xlat3.x;
					    u_xlat3.x = u_xlat3.x + (-vs_TEXCOORD3.z);
					    u_xlat3.x = u_xlat3.x * _InvFade;
					    u_xlat3.x = clamp(u_xlat3.x, 0.0, 1.0);
					    u_xlat1.w = u_xlat3.x * vs_COLOR0.w;
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb3 = u_xlat2.w>=_Cutout;
					    u_xlat2 = u_xlat2 + u_xlat2;
					    u_xlat2 = u_xlat2 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat2.w = u_xlat2.w * u_xlat3.x;
					    u_xlat1.xyz = vs_COLOR0.xyz;
					    u_xlat1 = u_xlat1 * u_xlat2;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendMul" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat3.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat1 = texture(_CameraDepthTexture, u_xlat3.xy);
					    u_xlat3.x = _ZBufferParams.z * u_xlat1.x + _ZBufferParams.w;
					    u_xlat3.x = float(1.0) / u_xlat3.x;
					    u_xlat3.x = u_xlat3.x + (-vs_TEXCOORD3.z);
					    u_xlat3.x = u_xlat3.x * _InvFade;
					    u_xlat3.x = clamp(u_xlat3.x, 0.0, 1.0);
					    u_xlat1.w = u_xlat3.x * vs_COLOR0.w;
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb3 = u_xlat2.w>=_Cutout;
					    u_xlat2 = u_xlat2 + u_xlat2;
					    u_xlat2 = u_xlat2 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat2.w = u_xlat2.w * u_xlat3.x;
					    u_xlat1.xyz = vs_COLOR0.xyz;
					    u_xlat1 = u_xlat1 * u_xlat2;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat3.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat1 = texture(_CameraDepthTexture, u_xlat3.xy);
					    u_xlat3.x = _ZBufferParams.z * u_xlat1.x + _ZBufferParams.w;
					    u_xlat3.x = float(1.0) / u_xlat3.x;
					    u_xlat3.x = u_xlat3.x + (-vs_TEXCOORD3.z);
					    u_xlat3.x = u_xlat3.x * _InvFade;
					    u_xlat3.x = clamp(u_xlat3.x, 0.0, 1.0);
					    u_xlat1.w = u_xlat3.x * vs_COLOR0.w;
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb3 = u_xlat2.w>=_Cutout;
					    u_xlat2 = u_xlat2 + u_xlat2;
					    u_xlat2 = u_xlat2 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat2.w = u_xlat2.w * u_xlat3.x;
					    u_xlat1.xyz = vs_COLOR0.xyz;
					    u_xlat1 = u_xlat1 * u_xlat2;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendMul" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat3.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat1 = texture(_CameraDepthTexture, u_xlat3.xy);
					    u_xlat3.x = _ZBufferParams.z * u_xlat1.x + _ZBufferParams.w;
					    u_xlat3.x = float(1.0) / u_xlat3.x;
					    u_xlat3.x = u_xlat3.x + (-vs_TEXCOORD3.z);
					    u_xlat3.x = u_xlat3.x * _InvFade;
					    u_xlat3.x = clamp(u_xlat3.x, 0.0, 1.0);
					    u_xlat1.w = u_xlat3.x * vs_COLOR0.w;
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb3 = u_xlat2.w>=_Cutout;
					    u_xlat2 = u_xlat2 + u_xlat2;
					    u_xlat2 = u_xlat2 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat2.w = u_xlat2.w * u_xlat3.x;
					    u_xlat1.xyz = vs_COLOR0.xyz;
					    u_xlat1 = u_xlat1 * u_xlat2;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat3.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat1 = texture(_CameraDepthTexture, u_xlat3.xy);
					    u_xlat3.x = _ZBufferParams.z * u_xlat1.x + _ZBufferParams.w;
					    u_xlat3.x = float(1.0) / u_xlat3.x;
					    u_xlat3.x = u_xlat3.x + (-vs_TEXCOORD3.z);
					    u_xlat3.x = u_xlat3.x * _InvFade;
					    u_xlat3.x = clamp(u_xlat3.x, 0.0, 1.0);
					    u_xlat1.w = u_xlat3.x * vs_COLOR0.w;
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb3 = u_xlat2.w>=_Cutout;
					    u_xlat2 = u_xlat2 + u_xlat2;
					    u_xlat2 = u_xlat2 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat2.w = u_xlat2.w * u_xlat3.x;
					    u_xlat1.xyz = vs_COLOR0.xyz;
					    u_xlat1 = u_xlat1 * u_xlat2;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendMul" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					bool u_xlatb1;
					float u_xlat6;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1.x = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat0.w = u_xlat0.w * u_xlat1.x;
					    u_xlat0 = u_xlat0 * vs_COLOR0;
					    u_xlat6 = u_xlat0.w;
					    u_xlat6 = clamp(u_xlat6, 0.0, 1.0);
					    u_xlat0.w = u_xlat6 * vs_TEXCOORD4;
					    u_xlat1 = u_xlat0 + vec4(-1.0, -1.0, -1.0, -1.0);
					    SV_Target0 = u_xlat0.wwww * u_xlat1 + vec4(1.0, 1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					bool u_xlatb1;
					float u_xlat6;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1.x = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat0.w = u_xlat0.w * u_xlat1.x;
					    u_xlat0 = u_xlat0 * vs_COLOR0;
					    u_xlat6 = u_xlat0.w;
					    u_xlat6 = clamp(u_xlat6, 0.0, 1.0);
					    u_xlat0.w = u_xlat6 * vs_TEXCOORD4;
					    u_xlat1 = u_xlat0 + vec4(-1.0, -1.0, -1.0, -1.0);
					    SV_Target0 = u_xlat0.wwww * u_xlat1 + vec4(1.0, 1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendMul" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[7];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					bool u_xlatb2;
					float u_xlat9;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2 = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat9 = u_xlat0.w;
					    u_xlat9 = clamp(u_xlat9, 0.0, 1.0);
					    u_xlat0.w = u_xlat9 * vs_TEXCOORD4;
					    u_xlat1 = u_xlat0 + vec4(-1.0, -1.0, -1.0, -1.0);
					    SV_Target0 = u_xlat0.wwww * u_xlat1 + vec4(1.0, 1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[6];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					bool u_xlatb2;
					float u_xlat9;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2 = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat9 = u_xlat0.w;
					    u_xlat9 = clamp(u_xlat9, 0.0, 1.0);
					    u_xlat0.w = u_xlat9 * vs_TEXCOORD4;
					    u_xlat1 = u_xlat0 + vec4(-1.0, -1.0, -1.0, -1.0);
					    SV_Target0 = u_xlat0.wwww * u_xlat1 + vec4(1.0, 1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendMul" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3.x;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3.x;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendMul" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					bool u_xlatb2;
					float u_xlat9;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2 = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat9 = u_xlat0.w;
					    u_xlat9 = clamp(u_xlat9, 0.0, 1.0);
					    u_xlat0.w = u_xlat9 * vs_TEXCOORD4;
					    u_xlat1 = u_xlat0 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat0.xyz = u_xlat0.www * u_xlat1.xyz;
					    SV_Target0.w = u_xlat0.w * u_xlat1.w + 1.0;
					    u_xlat9 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat9 = (-u_xlat9) + 1.0;
					    u_xlat9 = u_xlat9 * _ProjectionParams.z;
					    u_xlat9 = max(u_xlat9, 0.0);
					    u_xlat9 = u_xlat9 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat9 = clamp(u_xlat9, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat9) * u_xlat0.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					bool u_xlatb2;
					float u_xlat9;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2 = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat9 = u_xlat0.w;
					    u_xlat9 = clamp(u_xlat9, 0.0, 1.0);
					    u_xlat0.w = u_xlat9 * vs_TEXCOORD4;
					    u_xlat1 = u_xlat0 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat0.xyz = u_xlat0.www * u_xlat1.xyz;
					    SV_Target0.w = u_xlat0.w * u_xlat1.w + 1.0;
					    u_xlat9 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat9 = (-u_xlat9) + 1.0;
					    u_xlat9 = u_xlat9 * _ProjectionParams.z;
					    u_xlat9 = max(u_xlat9, 0.0);
					    u_xlat9 = u_xlat9 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat9 = clamp(u_xlat9, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat9) * u_xlat0.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendMul" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3.x;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3.x;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendMul" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat3.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat1 = texture(_CameraDepthTexture, u_xlat3.xy);
					    u_xlat3.x = _ZBufferParams.z * u_xlat1.x + _ZBufferParams.w;
					    u_xlat3.x = float(1.0) / u_xlat3.x;
					    u_xlat3.x = u_xlat3.x + (-vs_TEXCOORD3.z);
					    u_xlat3.x = u_xlat3.x * _InvFade;
					    u_xlat3.x = clamp(u_xlat3.x, 0.0, 1.0);
					    u_xlat1.w = u_xlat3.x * vs_COLOR0.w;
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb3 = u_xlat2.w>=_Cutout;
					    u_xlat2 = u_xlat2 + u_xlat2;
					    u_xlat2 = u_xlat2 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat2.w = u_xlat2.w * u_xlat3.x;
					    u_xlat1.xyz = vs_COLOR0.xyz;
					    u_xlat1 = u_xlat1 * u_xlat2;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat3.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat1 = texture(_CameraDepthTexture, u_xlat3.xy);
					    u_xlat3.x = _ZBufferParams.z * u_xlat1.x + _ZBufferParams.w;
					    u_xlat3.x = float(1.0) / u_xlat3.x;
					    u_xlat3.x = u_xlat3.x + (-vs_TEXCOORD3.z);
					    u_xlat3.x = u_xlat3.x * _InvFade;
					    u_xlat3.x = clamp(u_xlat3.x, 0.0, 1.0);
					    u_xlat1.w = u_xlat3.x * vs_COLOR0.w;
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb3 = u_xlat2.w>=_Cutout;
					    u_xlat2 = u_xlat2 + u_xlat2;
					    u_xlat2 = u_xlat2 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat2.w = u_xlat2.w * u_xlat3.x;
					    u_xlat1.xyz = vs_COLOR0.xyz;
					    u_xlat1 = u_xlat1 * u_xlat2;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendMul" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3.x;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3.x;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendMul" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat3.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat1 = texture(_CameraDepthTexture, u_xlat3.xy);
					    u_xlat3.x = _ZBufferParams.z * u_xlat1.x + _ZBufferParams.w;
					    u_xlat3.x = float(1.0) / u_xlat3.x;
					    u_xlat3.x = u_xlat3.x + (-vs_TEXCOORD3.z);
					    u_xlat3.x = u_xlat3.x * _InvFade;
					    u_xlat3.x = clamp(u_xlat3.x, 0.0, 1.0);
					    u_xlat1.w = u_xlat3.x * vs_COLOR0.w;
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb3 = u_xlat2.w>=_Cutout;
					    u_xlat2 = u_xlat2 + u_xlat2;
					    u_xlat2 = u_xlat2 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat2.w = u_xlat2.w * u_xlat3.x;
					    u_xlat1.xyz = vs_COLOR0.xyz;
					    u_xlat1 = u_xlat1 * u_xlat2;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat3.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat1 = texture(_CameraDepthTexture, u_xlat3.xy);
					    u_xlat3.x = _ZBufferParams.z * u_xlat1.x + _ZBufferParams.w;
					    u_xlat3.x = float(1.0) / u_xlat3.x;
					    u_xlat3.x = u_xlat3.x + (-vs_TEXCOORD3.z);
					    u_xlat3.x = u_xlat3.x * _InvFade;
					    u_xlat3.x = clamp(u_xlat3.x, 0.0, 1.0);
					    u_xlat1.w = u_xlat3.x * vs_COLOR0.w;
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb3 = u_xlat2.w>=_Cutout;
					    u_xlat2 = u_xlat2 + u_xlat2;
					    u_xlat2 = u_xlat2 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat2.w = u_xlat2.w * u_xlat3.x;
					    u_xlat1.xyz = vs_COLOR0.xyz;
					    u_xlat1 = u_xlat1 * u_xlat2;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendMul" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[7];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					bool u_xlatb2;
					float u_xlat9;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2 = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat9 = u_xlat0.w;
					    u_xlat9 = clamp(u_xlat9, 0.0, 1.0);
					    u_xlat0.w = u_xlat9 * vs_TEXCOORD4;
					    u_xlat1 = u_xlat0 + vec4(-1.0, -1.0, -1.0, -1.0);
					    SV_Target0 = u_xlat0.wwww * u_xlat1 + vec4(1.0, 1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[6];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					bool u_xlatb2;
					float u_xlat9;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2 = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat9 = u_xlat0.w;
					    u_xlat9 = clamp(u_xlat9, 0.0, 1.0);
					    u_xlat0.w = u_xlat9 * vs_TEXCOORD4;
					    u_xlat1 = u_xlat0 + vec4(-1.0, -1.0, -1.0, -1.0);
					    SV_Target0 = u_xlat0.wwww * u_xlat1 + vec4(1.0, 1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendMul" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[7];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					bool u_xlatb2;
					float u_xlat9;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2 = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat9 = u_xlat0.w;
					    u_xlat9 = clamp(u_xlat9, 0.0, 1.0);
					    u_xlat0.w = u_xlat9 * vs_TEXCOORD4;
					    u_xlat1 = u_xlat0 + vec4(-1.0, -1.0, -1.0, -1.0);
					    SV_Target0 = u_xlat0.wwww * u_xlat1 + vec4(1.0, 1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[6];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					bool u_xlatb2;
					float u_xlat9;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2 = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat9 = u_xlat0.w;
					    u_xlat9 = clamp(u_xlat9, 0.0, 1.0);
					    u_xlat0.w = u_xlat9 * vs_TEXCOORD4;
					    u_xlat1 = u_xlat0 + vec4(-1.0, -1.0, -1.0, -1.0);
					    SV_Target0 = u_xlat0.wwww * u_xlat1 + vec4(1.0, 1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendMul" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					bool u_xlatb2;
					float u_xlat9;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2 = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat9 = u_xlat0.w;
					    u_xlat9 = clamp(u_xlat9, 0.0, 1.0);
					    u_xlat0.w = u_xlat9 * vs_TEXCOORD4;
					    u_xlat1 = u_xlat0 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat0.xyz = u_xlat0.www * u_xlat1.xyz;
					    SV_Target0.w = u_xlat0.w * u_xlat1.w + 1.0;
					    u_xlat9 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat9 = (-u_xlat9) + 1.0;
					    u_xlat9 = u_xlat9 * _ProjectionParams.z;
					    u_xlat9 = max(u_xlat9, 0.0);
					    u_xlat9 = u_xlat9 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat9 = clamp(u_xlat9, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat9) * u_xlat0.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					bool u_xlatb2;
					float u_xlat9;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2 = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat9 = u_xlat0.w;
					    u_xlat9 = clamp(u_xlat9, 0.0, 1.0);
					    u_xlat0.w = u_xlat9 * vs_TEXCOORD4;
					    u_xlat1 = u_xlat0 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat0.xyz = u_xlat0.www * u_xlat1.xyz;
					    SV_Target0.w = u_xlat0.w * u_xlat1.w + 1.0;
					    u_xlat9 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat9 = (-u_xlat9) + 1.0;
					    u_xlat9 = u_xlat9 * _ProjectionParams.z;
					    u_xlat9 = max(u_xlat9, 0.0);
					    u_xlat9 = u_xlat9 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat9 = clamp(u_xlat9, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat9) * u_xlat0.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendMul" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					bool u_xlatb2;
					float u_xlat9;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2 = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat9 = u_xlat0.w;
					    u_xlat9 = clamp(u_xlat9, 0.0, 1.0);
					    u_xlat0.w = u_xlat9 * vs_TEXCOORD4;
					    u_xlat1 = u_xlat0 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat0.xyz = u_xlat0.www * u_xlat1.xyz;
					    SV_Target0.w = u_xlat0.w * u_xlat1.w + 1.0;
					    u_xlat9 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat9 = (-u_xlat9) + 1.0;
					    u_xlat9 = u_xlat9 * _ProjectionParams.z;
					    u_xlat9 = max(u_xlat9, 0.0);
					    u_xlat9 = u_xlat9 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat9 = clamp(u_xlat9, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat9) * u_xlat0.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					bool u_xlatb2;
					float u_xlat9;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2 = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat9 = u_xlat0.w;
					    u_xlat9 = clamp(u_xlat9, 0.0, 1.0);
					    u_xlat0.w = u_xlat9 * vs_TEXCOORD4;
					    u_xlat1 = u_xlat0 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat0.xyz = u_xlat0.www * u_xlat1.xyz;
					    SV_Target0.w = u_xlat0.w * u_xlat1.w + 1.0;
					    u_xlat9 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat9 = (-u_xlat9) + 1.0;
					    u_xlat9 = u_xlat9 * _ProjectionParams.z;
					    u_xlat9 = max(u_xlat9, 0.0);
					    u_xlat9 = u_xlat9 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat9 = clamp(u_xlat9, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat9) * u_xlat0.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendMul" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat3.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat1 = texture(_CameraDepthTexture, u_xlat3.xy);
					    u_xlat3.x = _ZBufferParams.z * u_xlat1.x + _ZBufferParams.w;
					    u_xlat3.x = float(1.0) / u_xlat3.x;
					    u_xlat3.x = u_xlat3.x + (-vs_TEXCOORD3.z);
					    u_xlat3.x = u_xlat3.x * _InvFade;
					    u_xlat3.x = clamp(u_xlat3.x, 0.0, 1.0);
					    u_xlat1.w = u_xlat3.x * vs_COLOR0.w;
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb3 = u_xlat2.w>=_Cutout;
					    u_xlat2 = u_xlat2 + u_xlat2;
					    u_xlat2 = u_xlat2 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat2.w = u_xlat2.w * u_xlat3.x;
					    u_xlat1.xyz = vs_COLOR0.xyz;
					    u_xlat1 = u_xlat1 * u_xlat2;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat3.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat1 = texture(_CameraDepthTexture, u_xlat3.xy);
					    u_xlat3.x = _ZBufferParams.z * u_xlat1.x + _ZBufferParams.w;
					    u_xlat3.x = float(1.0) / u_xlat3.x;
					    u_xlat3.x = u_xlat3.x + (-vs_TEXCOORD3.z);
					    u_xlat3.x = u_xlat3.x * _InvFade;
					    u_xlat3.x = clamp(u_xlat3.x, 0.0, 1.0);
					    u_xlat1.w = u_xlat3.x * vs_COLOR0.w;
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb3 = u_xlat2.w>=_Cutout;
					    u_xlat2 = u_xlat2 + u_xlat2;
					    u_xlat2 = u_xlat2 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat2.w = u_xlat2.w * u_xlat3.x;
					    u_xlat1.xyz = vs_COLOR0.xyz;
					    u_xlat1 = u_xlat1 * u_xlat2;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendMul" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat3.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat1 = texture(_CameraDepthTexture, u_xlat3.xy);
					    u_xlat3.x = _ZBufferParams.z * u_xlat1.x + _ZBufferParams.w;
					    u_xlat3.x = float(1.0) / u_xlat3.x;
					    u_xlat3.x = u_xlat3.x + (-vs_TEXCOORD3.z);
					    u_xlat3.x = u_xlat3.x * _InvFade;
					    u_xlat3.x = clamp(u_xlat3.x, 0.0, 1.0);
					    u_xlat1.w = u_xlat3.x * vs_COLOR0.w;
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb3 = u_xlat2.w>=_Cutout;
					    u_xlat2 = u_xlat2 + u_xlat2;
					    u_xlat2 = u_xlat2 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat2.w = u_xlat2.w * u_xlat3.x;
					    u_xlat1.xyz = vs_COLOR0.xyz;
					    u_xlat1 = u_xlat1 * u_xlat2;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat3.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat1 = texture(_CameraDepthTexture, u_xlat3.xy);
					    u_xlat3.x = _ZBufferParams.z * u_xlat1.x + _ZBufferParams.w;
					    u_xlat3.x = float(1.0) / u_xlat3.x;
					    u_xlat3.x = u_xlat3.x + (-vs_TEXCOORD3.z);
					    u_xlat3.x = u_xlat3.x * _InvFade;
					    u_xlat3.x = clamp(u_xlat3.x, 0.0, 1.0);
					    u_xlat1.w = u_xlat3.x * vs_COLOR0.w;
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb3 = u_xlat2.w>=_Cutout;
					    u_xlat2 = u_xlat2 + u_xlat2;
					    u_xlat2 = u_xlat2 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat2.w = u_xlat2.w * u_xlat3.x;
					    u_xlat1.xyz = vs_COLOR0.xyz;
					    u_xlat1 = u_xlat1 * u_xlat2;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendMul" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat3.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat1 = texture(_CameraDepthTexture, u_xlat3.xy);
					    u_xlat3.x = _ZBufferParams.z * u_xlat1.x + _ZBufferParams.w;
					    u_xlat3.x = float(1.0) / u_xlat3.x;
					    u_xlat3.x = u_xlat3.x + (-vs_TEXCOORD3.z);
					    u_xlat3.x = u_xlat3.x * _InvFade;
					    u_xlat3.x = clamp(u_xlat3.x, 0.0, 1.0);
					    u_xlat1.w = u_xlat3.x * vs_COLOR0.w;
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb3 = u_xlat2.w>=_Cutout;
					    u_xlat2 = u_xlat2 + u_xlat2;
					    u_xlat2 = u_xlat2 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat2.w = u_xlat2.w * u_xlat3.x;
					    u_xlat1.xyz = vs_COLOR0.xyz;
					    u_xlat1 = u_xlat1 * u_xlat2;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat3.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat1 = texture(_CameraDepthTexture, u_xlat3.xy);
					    u_xlat3.x = _ZBufferParams.z * u_xlat1.x + _ZBufferParams.w;
					    u_xlat3.x = float(1.0) / u_xlat3.x;
					    u_xlat3.x = u_xlat3.x + (-vs_TEXCOORD3.z);
					    u_xlat3.x = u_xlat3.x * _InvFade;
					    u_xlat3.x = clamp(u_xlat3.x, 0.0, 1.0);
					    u_xlat1.w = u_xlat3.x * vs_COLOR0.w;
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb3 = u_xlat2.w>=_Cutout;
					    u_xlat2 = u_xlat2 + u_xlat2;
					    u_xlat2 = u_xlat2 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat2.w = u_xlat2.w * u_xlat3.x;
					    u_xlat1.xyz = vs_COLOR0.xyz;
					    u_xlat1 = u_xlat1 * u_xlat2;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendMul" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat3.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat1 = texture(_CameraDepthTexture, u_xlat3.xy);
					    u_xlat3.x = _ZBufferParams.z * u_xlat1.x + _ZBufferParams.w;
					    u_xlat3.x = float(1.0) / u_xlat3.x;
					    u_xlat3.x = u_xlat3.x + (-vs_TEXCOORD3.z);
					    u_xlat3.x = u_xlat3.x * _InvFade;
					    u_xlat3.x = clamp(u_xlat3.x, 0.0, 1.0);
					    u_xlat1.w = u_xlat3.x * vs_COLOR0.w;
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb3 = u_xlat2.w>=_Cutout;
					    u_xlat2 = u_xlat2 + u_xlat2;
					    u_xlat2 = u_xlat2 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat2.w = u_xlat2.w * u_xlat3.x;
					    u_xlat1.xyz = vs_COLOR0.xyz;
					    u_xlat1 = u_xlat1 * u_xlat2;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat3.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat1 = texture(_CameraDepthTexture, u_xlat3.xy);
					    u_xlat3.x = _ZBufferParams.z * u_xlat1.x + _ZBufferParams.w;
					    u_xlat3.x = float(1.0) / u_xlat3.x;
					    u_xlat3.x = u_xlat3.x + (-vs_TEXCOORD3.z);
					    u_xlat3.x = u_xlat3.x * _InvFade;
					    u_xlat3.x = clamp(u_xlat3.x, 0.0, 1.0);
					    u_xlat1.w = u_xlat3.x * vs_COLOR0.w;
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb3 = u_xlat2.w>=_Cutout;
					    u_xlat2 = u_xlat2 + u_xlat2;
					    u_xlat2 = u_xlat2 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat2.w = u_xlat2.w * u_xlat3.x;
					    u_xlat1.xyz = vs_COLOR0.xyz;
					    u_xlat1 = u_xlat1 * u_xlat2;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendMul" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0.xyz = u_xlat0.xyz + u_xlat0.xyz;
					    u_xlat0.xyz = u_xlat0.xyz * _TintColor.xyz;
					    u_xlat1.xyz = u_xlat0.xyz * vs_COLOR0.xyz;
					    u_xlat0.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlatb0 = u_xlat0.w>=u_xlat0.x;
					    u_xlat1.w = u_xlatb0 ? 1.0 : float(0.0);
					    u_xlat0 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    SV_Target0 = u_xlat1.wwww * u_xlat0 + vec4(1.0, 1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0.xyz = u_xlat0.xyz + u_xlat0.xyz;
					    u_xlat0.xyz = u_xlat0.xyz * _TintColor.xyz;
					    u_xlat1.xyz = u_xlat0.xyz * vs_COLOR0.xyz;
					    u_xlat0.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlatb0 = u_xlat0.w>=u_xlat0.x;
					    u_xlat1.w = u_xlatb0 ? 1.0 : float(0.0);
					    u_xlat0 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    SV_Target0 = u_xlat1.wwww * u_xlat0 + vec4(1.0, 1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendMul" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[7];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb0 = u_xlat1.w>=u_xlat0.x;
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    u_xlat1.xyz = u_xlat2.xyz * vs_COLOR0.xyz;
					    u_xlat1.w = u_xlatb0 ? 1.0 : float(0.0);
					    u_xlat0 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    SV_Target0 = u_xlat1.wwww * u_xlat0 + vec4(1.0, 1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[6];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb0 = u_xlat1.w>=u_xlat0.x;
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    u_xlat1.xyz = u_xlat2.xyz * vs_COLOR0.xyz;
					    u_xlat1.w = u_xlatb0 ? 1.0 : float(0.0);
					    u_xlat0 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    SV_Target0 = u_xlat1.wwww * u_xlat0 + vec4(1.0, 1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendMul" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat2.w = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1 = u_xlat2 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat2.w = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1 = u_xlat2 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendMul" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat3.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat1 = texture(_CameraDepthTexture, u_xlat3.xy);
					    u_xlat3.x = _ZBufferParams.z * u_xlat1.x + _ZBufferParams.w;
					    u_xlat3.x = float(1.0) / u_xlat3.x;
					    u_xlat3.x = u_xlat3.x + (-vs_TEXCOORD3.z);
					    u_xlat3.x = u_xlat3.x * _InvFade;
					    u_xlat3.x = clamp(u_xlat3.x, 0.0, 1.0);
					    u_xlat3.x = (-vs_COLOR0.w) * u_xlat3.x + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat1.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz * _TintColor.xyz;
					    u_xlat1.xyz = u_xlat1.xyz * vs_COLOR0.xyz;
					    u_xlat1.w = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat3.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat1 = texture(_CameraDepthTexture, u_xlat3.xy);
					    u_xlat3.x = _ZBufferParams.z * u_xlat1.x + _ZBufferParams.w;
					    u_xlat3.x = float(1.0) / u_xlat3.x;
					    u_xlat3.x = u_xlat3.x + (-vs_TEXCOORD3.z);
					    u_xlat3.x = u_xlat3.x * _InvFade;
					    u_xlat3.x = clamp(u_xlat3.x, 0.0, 1.0);
					    u_xlat3.x = (-vs_COLOR0.w) * u_xlat3.x + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat1.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz * _TintColor.xyz;
					    u_xlat1.xyz = u_xlat1.xyz * vs_COLOR0.xyz;
					    u_xlat1.w = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendMul" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat2.w = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1 = u_xlat2 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat2.w = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1 = u_xlat2 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendMul" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat3.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat1 = texture(_CameraDepthTexture, u_xlat3.xy);
					    u_xlat3.x = _ZBufferParams.z * u_xlat1.x + _ZBufferParams.w;
					    u_xlat3.x = float(1.0) / u_xlat3.x;
					    u_xlat3.x = u_xlat3.x + (-vs_TEXCOORD3.z);
					    u_xlat3.x = u_xlat3.x * _InvFade;
					    u_xlat3.x = clamp(u_xlat3.x, 0.0, 1.0);
					    u_xlat3.x = (-vs_COLOR0.w) * u_xlat3.x + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat1.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz * _TintColor.xyz;
					    u_xlat1.xyz = u_xlat1.xyz * vs_COLOR0.xyz;
					    u_xlat1.w = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat3.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat1 = texture(_CameraDepthTexture, u_xlat3.xy);
					    u_xlat3.x = _ZBufferParams.z * u_xlat1.x + _ZBufferParams.w;
					    u_xlat3.x = float(1.0) / u_xlat3.x;
					    u_xlat3.x = u_xlat3.x + (-vs_TEXCOORD3.z);
					    u_xlat3.x = u_xlat3.x * _InvFade;
					    u_xlat3.x = clamp(u_xlat3.x, 0.0, 1.0);
					    u_xlat3.x = (-vs_COLOR0.w) * u_xlat3.x + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat1.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz * _TintColor.xyz;
					    u_xlat1.xyz = u_xlat1.xyz * vs_COLOR0.xyz;
					    u_xlat1.w = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendMul" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat2.w = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1 = u_xlat2 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat2.w = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1 = u_xlat2 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendMul" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat3.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat1 = texture(_CameraDepthTexture, u_xlat3.xy);
					    u_xlat3.x = _ZBufferParams.z * u_xlat1.x + _ZBufferParams.w;
					    u_xlat3.x = float(1.0) / u_xlat3.x;
					    u_xlat3.x = u_xlat3.x + (-vs_TEXCOORD3.z);
					    u_xlat3.x = u_xlat3.x * _InvFade;
					    u_xlat3.x = clamp(u_xlat3.x, 0.0, 1.0);
					    u_xlat3.x = (-vs_COLOR0.w) * u_xlat3.x + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat1.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz * _TintColor.xyz;
					    u_xlat1.xyz = u_xlat1.xyz * vs_COLOR0.xyz;
					    u_xlat1.w = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat3.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat1 = texture(_CameraDepthTexture, u_xlat3.xy);
					    u_xlat3.x = _ZBufferParams.z * u_xlat1.x + _ZBufferParams.w;
					    u_xlat3.x = float(1.0) / u_xlat3.x;
					    u_xlat3.x = u_xlat3.x + (-vs_TEXCOORD3.z);
					    u_xlat3.x = u_xlat3.x * _InvFade;
					    u_xlat3.x = clamp(u_xlat3.x, 0.0, 1.0);
					    u_xlat3.x = (-vs_COLOR0.w) * u_xlat3.x + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat1.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz * _TintColor.xyz;
					    u_xlat1.xyz = u_xlat1.xyz * vs_COLOR0.xyz;
					    u_xlat1.w = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendMul" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[7];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb0 = u_xlat1.w>=u_xlat0.x;
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    u_xlat1.xyz = u_xlat2.xyz * vs_COLOR0.xyz;
					    u_xlat1.w = u_xlatb0 ? 1.0 : float(0.0);
					    u_xlat0 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    SV_Target0 = u_xlat1.wwww * u_xlat0 + vec4(1.0, 1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[6];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb0 = u_xlat1.w>=u_xlat0.x;
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    u_xlat1.xyz = u_xlat2.xyz * vs_COLOR0.xyz;
					    u_xlat1.w = u_xlatb0 ? 1.0 : float(0.0);
					    u_xlat0 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    SV_Target0 = u_xlat1.wwww * u_xlat0 + vec4(1.0, 1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendMul" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[7];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb0 = u_xlat1.w>=u_xlat0.x;
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    u_xlat1.xyz = u_xlat2.xyz * vs_COLOR0.xyz;
					    u_xlat1.w = u_xlatb0 ? 1.0 : float(0.0);
					    u_xlat0 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    SV_Target0 = u_xlat1.wwww * u_xlat0 + vec4(1.0, 1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[6];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb0 = u_xlat1.w>=u_xlat0.x;
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    u_xlat1.xyz = u_xlat2.xyz * vs_COLOR0.xyz;
					    u_xlat1.w = u_xlatb0 ? 1.0 : float(0.0);
					    u_xlat0 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    SV_Target0 = u_xlat1.wwww * u_xlat0 + vec4(1.0, 1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendMul" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat3.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat1 = texture(_CameraDepthTexture, u_xlat3.xy);
					    u_xlat3.x = _ZBufferParams.z * u_xlat1.x + _ZBufferParams.w;
					    u_xlat3.x = float(1.0) / u_xlat3.x;
					    u_xlat3.x = u_xlat3.x + (-vs_TEXCOORD3.z);
					    u_xlat3.x = u_xlat3.x * _InvFade;
					    u_xlat3.x = clamp(u_xlat3.x, 0.0, 1.0);
					    u_xlat3.x = (-vs_COLOR0.w) * u_xlat3.x + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat1.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz * _TintColor.xyz;
					    u_xlat1.xyz = u_xlat1.xyz * vs_COLOR0.xyz;
					    u_xlat1.w = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat3.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat1 = texture(_CameraDepthTexture, u_xlat3.xy);
					    u_xlat3.x = _ZBufferParams.z * u_xlat1.x + _ZBufferParams.w;
					    u_xlat3.x = float(1.0) / u_xlat3.x;
					    u_xlat3.x = u_xlat3.x + (-vs_TEXCOORD3.z);
					    u_xlat3.x = u_xlat3.x * _InvFade;
					    u_xlat3.x = clamp(u_xlat3.x, 0.0, 1.0);
					    u_xlat3.x = (-vs_COLOR0.w) * u_xlat3.x + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat1.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz * _TintColor.xyz;
					    u_xlat1.xyz = u_xlat1.xyz * vs_COLOR0.xyz;
					    u_xlat1.w = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendMul" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat3.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat1 = texture(_CameraDepthTexture, u_xlat3.xy);
					    u_xlat3.x = _ZBufferParams.z * u_xlat1.x + _ZBufferParams.w;
					    u_xlat3.x = float(1.0) / u_xlat3.x;
					    u_xlat3.x = u_xlat3.x + (-vs_TEXCOORD3.z);
					    u_xlat3.x = u_xlat3.x * _InvFade;
					    u_xlat3.x = clamp(u_xlat3.x, 0.0, 1.0);
					    u_xlat3.x = (-vs_COLOR0.w) * u_xlat3.x + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat1.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz * _TintColor.xyz;
					    u_xlat1.xyz = u_xlat1.xyz * vs_COLOR0.xyz;
					    u_xlat1.w = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat3.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat1 = texture(_CameraDepthTexture, u_xlat3.xy);
					    u_xlat3.x = _ZBufferParams.z * u_xlat1.x + _ZBufferParams.w;
					    u_xlat3.x = float(1.0) / u_xlat3.x;
					    u_xlat3.x = u_xlat3.x + (-vs_TEXCOORD3.z);
					    u_xlat3.x = u_xlat3.x * _InvFade;
					    u_xlat3.x = clamp(u_xlat3.x, 0.0, 1.0);
					    u_xlat3.x = (-vs_COLOR0.w) * u_xlat3.x + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat1.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz * _TintColor.xyz;
					    u_xlat1.xyz = u_xlat1.xyz * vs_COLOR0.xyz;
					    u_xlat1.w = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendMul" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat3.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat1 = texture(_CameraDepthTexture, u_xlat3.xy);
					    u_xlat3.x = _ZBufferParams.z * u_xlat1.x + _ZBufferParams.w;
					    u_xlat3.x = float(1.0) / u_xlat3.x;
					    u_xlat3.x = u_xlat3.x + (-vs_TEXCOORD3.z);
					    u_xlat3.x = u_xlat3.x * _InvFade;
					    u_xlat3.x = clamp(u_xlat3.x, 0.0, 1.0);
					    u_xlat3.x = (-vs_COLOR0.w) * u_xlat3.x + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat1.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz * _TintColor.xyz;
					    u_xlat1.xyz = u_xlat1.xyz * vs_COLOR0.xyz;
					    u_xlat1.w = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat3.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat1 = texture(_CameraDepthTexture, u_xlat3.xy);
					    u_xlat3.x = _ZBufferParams.z * u_xlat1.x + _ZBufferParams.w;
					    u_xlat3.x = float(1.0) / u_xlat3.x;
					    u_xlat3.x = u_xlat3.x + (-vs_TEXCOORD3.z);
					    u_xlat3.x = u_xlat3.x * _InvFade;
					    u_xlat3.x = clamp(u_xlat3.x, 0.0, 1.0);
					    u_xlat3.x = (-vs_COLOR0.w) * u_xlat3.x + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat1.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz * _TintColor.xyz;
					    u_xlat1.xyz = u_xlat1.xyz * vs_COLOR0.xyz;
					    u_xlat1.w = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendMul" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat3.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat1 = texture(_CameraDepthTexture, u_xlat3.xy);
					    u_xlat3.x = _ZBufferParams.z * u_xlat1.x + _ZBufferParams.w;
					    u_xlat3.x = float(1.0) / u_xlat3.x;
					    u_xlat3.x = u_xlat3.x + (-vs_TEXCOORD3.z);
					    u_xlat3.x = u_xlat3.x * _InvFade;
					    u_xlat3.x = clamp(u_xlat3.x, 0.0, 1.0);
					    u_xlat3.x = (-vs_COLOR0.w) * u_xlat3.x + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat1.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz * _TintColor.xyz;
					    u_xlat1.xyz = u_xlat1.xyz * vs_COLOR0.xyz;
					    u_xlat1.w = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat3.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat1 = texture(_CameraDepthTexture, u_xlat3.xy);
					    u_xlat3.x = _ZBufferParams.z * u_xlat1.x + _ZBufferParams.w;
					    u_xlat3.x = float(1.0) / u_xlat3.x;
					    u_xlat3.x = u_xlat3.x + (-vs_TEXCOORD3.z);
					    u_xlat3.x = u_xlat3.x * _InvFade;
					    u_xlat3.x = clamp(u_xlat3.x, 0.0, 1.0);
					    u_xlat3.x = (-vs_COLOR0.w) * u_xlat3.x + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat1.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz * _TintColor.xyz;
					    u_xlat1.xyz = u_xlat1.xyz * vs_COLOR0.xyz;
					    u_xlat1.w = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendMul" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat3.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat1 = texture(_CameraDepthTexture, u_xlat3.xy);
					    u_xlat3.x = _ZBufferParams.z * u_xlat1.x + _ZBufferParams.w;
					    u_xlat3.x = float(1.0) / u_xlat3.x;
					    u_xlat3.x = u_xlat3.x + (-vs_TEXCOORD3.z);
					    u_xlat3.x = u_xlat3.x * _InvFade;
					    u_xlat3.x = clamp(u_xlat3.x, 0.0, 1.0);
					    u_xlat3.x = (-vs_COLOR0.w) * u_xlat3.x + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat1.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz * _TintColor.xyz;
					    u_xlat1.xyz = u_xlat1.xyz * vs_COLOR0.xyz;
					    u_xlat1.w = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat3.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat1 = texture(_CameraDepthTexture, u_xlat3.xy);
					    u_xlat3.x = _ZBufferParams.z * u_xlat1.x + _ZBufferParams.w;
					    u_xlat3.x = float(1.0) / u_xlat3.x;
					    u_xlat3.x = u_xlat3.x + (-vs_TEXCOORD3.z);
					    u_xlat3.x = u_xlat3.x * _InvFade;
					    u_xlat3.x = clamp(u_xlat3.x, 0.0, 1.0);
					    u_xlat3.x = (-vs_COLOR0.w) * u_xlat3.x + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat1.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz * _TintColor.xyz;
					    u_xlat1.xyz = u_xlat1.xyz * vs_COLOR0.xyz;
					    u_xlat1.w = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendMul" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat3.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat1 = texture(_CameraDepthTexture, u_xlat3.xy);
					    u_xlat3.x = _ZBufferParams.z * u_xlat1.x + _ZBufferParams.w;
					    u_xlat3.x = float(1.0) / u_xlat3.x;
					    u_xlat3.x = u_xlat3.x + (-vs_TEXCOORD3.z);
					    u_xlat3.x = u_xlat3.x * _InvFade;
					    u_xlat3.x = clamp(u_xlat3.x, 0.0, 1.0);
					    u_xlat3.x = (-vs_COLOR0.w) * u_xlat3.x + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat1.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz * _TintColor.xyz;
					    u_xlat1.xyz = u_xlat1.xyz * vs_COLOR0.xyz;
					    u_xlat1.w = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat3.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat1 = texture(_CameraDepthTexture, u_xlat3.xy);
					    u_xlat3.x = _ZBufferParams.z * u_xlat1.x + _ZBufferParams.w;
					    u_xlat3.x = float(1.0) / u_xlat3.x;
					    u_xlat3.x = u_xlat3.x + (-vs_TEXCOORD3.z);
					    u_xlat3.x = u_xlat3.x * _InvFade;
					    u_xlat3.x = clamp(u_xlat3.x, 0.0, 1.0);
					    u_xlat3.x = (-vs_COLOR0.w) * u_xlat3.x + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat1.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz * _TintColor.xyz;
					    u_xlat1.xyz = u_xlat1.xyz * vs_COLOR0.xyz;
					    u_xlat1.w = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendMul" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0.xyz = u_xlat0.xyz + u_xlat0.xyz;
					    u_xlat0.xyz = u_xlat0.xyz * _TintColor.xyz;
					    u_xlat1.xyz = u_xlat0.xyz * vs_COLOR0.xyz;
					    u_xlat0.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlatb0 = u_xlat0.w>=u_xlat0.x;
					    u_xlat0.x = u_xlatb0 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat0.x * vs_TEXCOORD4;
					    u_xlat0 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    SV_Target0 = u_xlat1.wwww * u_xlat0 + vec4(1.0, 1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0.xyz = u_xlat0.xyz + u_xlat0.xyz;
					    u_xlat0.xyz = u_xlat0.xyz * _TintColor.xyz;
					    u_xlat1.xyz = u_xlat0.xyz * vs_COLOR0.xyz;
					    u_xlat0.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlatb0 = u_xlat0.w>=u_xlat0.x;
					    u_xlat0.x = u_xlatb0 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat0.x * vs_TEXCOORD4;
					    u_xlat0 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    SV_Target0 = u_xlat1.wwww * u_xlat0 + vec4(1.0, 1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendMul" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[7];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb0 = u_xlat1.w>=u_xlat0.x;
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    u_xlat1.xyz = u_xlat2.xyz * vs_COLOR0.xyz;
					    u_xlat0.x = u_xlatb0 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat0.x * vs_TEXCOORD4;
					    u_xlat0 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    SV_Target0 = u_xlat1.wwww * u_xlat0 + vec4(1.0, 1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[6];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb0 = u_xlat1.w>=u_xlat0.x;
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    u_xlat1.xyz = u_xlat2.xyz * vs_COLOR0.xyz;
					    u_xlat0.x = u_xlatb0 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat0.x * vs_TEXCOORD4;
					    u_xlat0 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    SV_Target0 = u_xlat1.wwww * u_xlat0 + vec4(1.0, 1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendMul" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat2.w = u_xlat3.x * vs_TEXCOORD4;
					    u_xlat1 = u_xlat2 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat2.w = u_xlat3.x * vs_TEXCOORD4;
					    u_xlat1 = u_xlat2 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendMul" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					float u_xlat6;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb0 = u_xlat1.w>=u_xlat0.x;
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    u_xlat1.xyz = u_xlat2.xyz * vs_COLOR0.xyz;
					    u_xlat0.x = u_xlatb0 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat0.x * vs_TEXCOORD4;
					    u_xlat0 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat0.xyz = u_xlat0.xyz * u_xlat1.www;
					    SV_Target0.w = u_xlat1.w * u_xlat0.w + 1.0;
					    u_xlat6 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat6 = (-u_xlat6) + 1.0;
					    u_xlat6 = u_xlat6 * _ProjectionParams.z;
					    u_xlat6 = max(u_xlat6, 0.0);
					    u_xlat6 = u_xlat6 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat6 = clamp(u_xlat6, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat6) * u_xlat0.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					float u_xlat6;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb0 = u_xlat1.w>=u_xlat0.x;
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    u_xlat1.xyz = u_xlat2.xyz * vs_COLOR0.xyz;
					    u_xlat0.x = u_xlatb0 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat0.x * vs_TEXCOORD4;
					    u_xlat0 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat0.xyz = u_xlat0.xyz * u_xlat1.www;
					    SV_Target0.w = u_xlat1.w * u_xlat0.w + 1.0;
					    u_xlat6 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat6 = (-u_xlat6) + 1.0;
					    u_xlat6 = u_xlat6 * _ProjectionParams.z;
					    u_xlat6 = max(u_xlat6, 0.0);
					    u_xlat6 = u_xlat6 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat6 = clamp(u_xlat6, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat6) * u_xlat0.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendMul" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat2.w = u_xlat3.x * vs_TEXCOORD4;
					    u_xlat1 = u_xlat2 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat2.w = u_xlat3.x * vs_TEXCOORD4;
					    u_xlat1 = u_xlat2 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendMul" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat3.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat1 = texture(_CameraDepthTexture, u_xlat3.xy);
					    u_xlat3.x = _ZBufferParams.z * u_xlat1.x + _ZBufferParams.w;
					    u_xlat3.x = float(1.0) / u_xlat3.x;
					    u_xlat3.x = u_xlat3.x + (-vs_TEXCOORD3.z);
					    u_xlat3.x = u_xlat3.x * _InvFade;
					    u_xlat3.x = clamp(u_xlat3.x, 0.0, 1.0);
					    u_xlat3.x = (-vs_COLOR0.w) * u_xlat3.x + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat1.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz * _TintColor.xyz;
					    u_xlat1.xyz = u_xlat1.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat3.x * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat3.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat1 = texture(_CameraDepthTexture, u_xlat3.xy);
					    u_xlat3.x = _ZBufferParams.z * u_xlat1.x + _ZBufferParams.w;
					    u_xlat3.x = float(1.0) / u_xlat3.x;
					    u_xlat3.x = u_xlat3.x + (-vs_TEXCOORD3.z);
					    u_xlat3.x = u_xlat3.x * _InvFade;
					    u_xlat3.x = clamp(u_xlat3.x, 0.0, 1.0);
					    u_xlat3.x = (-vs_COLOR0.w) * u_xlat3.x + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat1.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz * _TintColor.xyz;
					    u_xlat1.xyz = u_xlat1.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat3.x * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendMul" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat2.w = u_xlat3.x * vs_TEXCOORD4;
					    u_xlat1 = u_xlat2 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat2.w = u_xlat3.x * vs_TEXCOORD4;
					    u_xlat1 = u_xlat2 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendMul" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat3.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat1 = texture(_CameraDepthTexture, u_xlat3.xy);
					    u_xlat3.x = _ZBufferParams.z * u_xlat1.x + _ZBufferParams.w;
					    u_xlat3.x = float(1.0) / u_xlat3.x;
					    u_xlat3.x = u_xlat3.x + (-vs_TEXCOORD3.z);
					    u_xlat3.x = u_xlat3.x * _InvFade;
					    u_xlat3.x = clamp(u_xlat3.x, 0.0, 1.0);
					    u_xlat3.x = (-vs_COLOR0.w) * u_xlat3.x + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat1.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz * _TintColor.xyz;
					    u_xlat1.xyz = u_xlat1.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat3.x * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat3.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat1 = texture(_CameraDepthTexture, u_xlat3.xy);
					    u_xlat3.x = _ZBufferParams.z * u_xlat1.x + _ZBufferParams.w;
					    u_xlat3.x = float(1.0) / u_xlat3.x;
					    u_xlat3.x = u_xlat3.x + (-vs_TEXCOORD3.z);
					    u_xlat3.x = u_xlat3.x * _InvFade;
					    u_xlat3.x = clamp(u_xlat3.x, 0.0, 1.0);
					    u_xlat3.x = (-vs_COLOR0.w) * u_xlat3.x + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat1.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz * _TintColor.xyz;
					    u_xlat1.xyz = u_xlat1.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat3.x * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendMul" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[7];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb0 = u_xlat1.w>=u_xlat0.x;
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    u_xlat1.xyz = u_xlat2.xyz * vs_COLOR0.xyz;
					    u_xlat0.x = u_xlatb0 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat0.x * vs_TEXCOORD4;
					    u_xlat0 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    SV_Target0 = u_xlat1.wwww * u_xlat0 + vec4(1.0, 1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[6];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb0 = u_xlat1.w>=u_xlat0.x;
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    u_xlat1.xyz = u_xlat2.xyz * vs_COLOR0.xyz;
					    u_xlat0.x = u_xlatb0 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat0.x * vs_TEXCOORD4;
					    u_xlat0 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    SV_Target0 = u_xlat1.wwww * u_xlat0 + vec4(1.0, 1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendMul" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[7];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb0 = u_xlat1.w>=u_xlat0.x;
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    u_xlat1.xyz = u_xlat2.xyz * vs_COLOR0.xyz;
					    u_xlat0.x = u_xlatb0 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat0.x * vs_TEXCOORD4;
					    u_xlat0 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    SV_Target0 = u_xlat1.wwww * u_xlat0 + vec4(1.0, 1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[6];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb0 = u_xlat1.w>=u_xlat0.x;
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    u_xlat1.xyz = u_xlat2.xyz * vs_COLOR0.xyz;
					    u_xlat0.x = u_xlatb0 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat0.x * vs_TEXCOORD4;
					    u_xlat0 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    SV_Target0 = u_xlat1.wwww * u_xlat0 + vec4(1.0, 1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendMul" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					float u_xlat6;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb0 = u_xlat1.w>=u_xlat0.x;
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    u_xlat1.xyz = u_xlat2.xyz * vs_COLOR0.xyz;
					    u_xlat0.x = u_xlatb0 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat0.x * vs_TEXCOORD4;
					    u_xlat0 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat0.xyz = u_xlat0.xyz * u_xlat1.www;
					    SV_Target0.w = u_xlat1.w * u_xlat0.w + 1.0;
					    u_xlat6 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat6 = (-u_xlat6) + 1.0;
					    u_xlat6 = u_xlat6 * _ProjectionParams.z;
					    u_xlat6 = max(u_xlat6, 0.0);
					    u_xlat6 = u_xlat6 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat6 = clamp(u_xlat6, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat6) * u_xlat0.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					float u_xlat6;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb0 = u_xlat1.w>=u_xlat0.x;
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    u_xlat1.xyz = u_xlat2.xyz * vs_COLOR0.xyz;
					    u_xlat0.x = u_xlatb0 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat0.x * vs_TEXCOORD4;
					    u_xlat0 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat0.xyz = u_xlat0.xyz * u_xlat1.www;
					    SV_Target0.w = u_xlat1.w * u_xlat0.w + 1.0;
					    u_xlat6 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat6 = (-u_xlat6) + 1.0;
					    u_xlat6 = u_xlat6 * _ProjectionParams.z;
					    u_xlat6 = max(u_xlat6, 0.0);
					    u_xlat6 = u_xlat6 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat6 = clamp(u_xlat6, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat6) * u_xlat0.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendMul" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					float u_xlat6;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb0 = u_xlat1.w>=u_xlat0.x;
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    u_xlat1.xyz = u_xlat2.xyz * vs_COLOR0.xyz;
					    u_xlat0.x = u_xlatb0 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat0.x * vs_TEXCOORD4;
					    u_xlat0 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat0.xyz = u_xlat0.xyz * u_xlat1.www;
					    SV_Target0.w = u_xlat1.w * u_xlat0.w + 1.0;
					    u_xlat6 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat6 = (-u_xlat6) + 1.0;
					    u_xlat6 = u_xlat6 * _ProjectionParams.z;
					    u_xlat6 = max(u_xlat6, 0.0);
					    u_xlat6 = u_xlat6 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat6 = clamp(u_xlat6, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat6) * u_xlat0.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					float u_xlat6;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb0 = u_xlat1.w>=u_xlat0.x;
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    u_xlat1.xyz = u_xlat2.xyz * vs_COLOR0.xyz;
					    u_xlat0.x = u_xlatb0 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat0.x * vs_TEXCOORD4;
					    u_xlat0 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat0.xyz = u_xlat0.xyz * u_xlat1.www;
					    SV_Target0.w = u_xlat1.w * u_xlat0.w + 1.0;
					    u_xlat6 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat6 = (-u_xlat6) + 1.0;
					    u_xlat6 = u_xlat6 * _ProjectionParams.z;
					    u_xlat6 = max(u_xlat6, 0.0);
					    u_xlat6 = u_xlat6 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat6 = clamp(u_xlat6, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat6) * u_xlat0.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendMul" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat3.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat1 = texture(_CameraDepthTexture, u_xlat3.xy);
					    u_xlat3.x = _ZBufferParams.z * u_xlat1.x + _ZBufferParams.w;
					    u_xlat3.x = float(1.0) / u_xlat3.x;
					    u_xlat3.x = u_xlat3.x + (-vs_TEXCOORD3.z);
					    u_xlat3.x = u_xlat3.x * _InvFade;
					    u_xlat3.x = clamp(u_xlat3.x, 0.0, 1.0);
					    u_xlat3.x = (-vs_COLOR0.w) * u_xlat3.x + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat1.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz * _TintColor.xyz;
					    u_xlat1.xyz = u_xlat1.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat3.x * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat3.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat1 = texture(_CameraDepthTexture, u_xlat3.xy);
					    u_xlat3.x = _ZBufferParams.z * u_xlat1.x + _ZBufferParams.w;
					    u_xlat3.x = float(1.0) / u_xlat3.x;
					    u_xlat3.x = u_xlat3.x + (-vs_TEXCOORD3.z);
					    u_xlat3.x = u_xlat3.x * _InvFade;
					    u_xlat3.x = clamp(u_xlat3.x, 0.0, 1.0);
					    u_xlat3.x = (-vs_COLOR0.w) * u_xlat3.x + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat1.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz * _TintColor.xyz;
					    u_xlat1.xyz = u_xlat1.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat3.x * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendMul" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat3.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat1 = texture(_CameraDepthTexture, u_xlat3.xy);
					    u_xlat3.x = _ZBufferParams.z * u_xlat1.x + _ZBufferParams.w;
					    u_xlat3.x = float(1.0) / u_xlat3.x;
					    u_xlat3.x = u_xlat3.x + (-vs_TEXCOORD3.z);
					    u_xlat3.x = u_xlat3.x * _InvFade;
					    u_xlat3.x = clamp(u_xlat3.x, 0.0, 1.0);
					    u_xlat3.x = (-vs_COLOR0.w) * u_xlat3.x + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat1.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz * _TintColor.xyz;
					    u_xlat1.xyz = u_xlat1.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat3.x * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat3.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat1 = texture(_CameraDepthTexture, u_xlat3.xy);
					    u_xlat3.x = _ZBufferParams.z * u_xlat1.x + _ZBufferParams.w;
					    u_xlat3.x = float(1.0) / u_xlat3.x;
					    u_xlat3.x = u_xlat3.x + (-vs_TEXCOORD3.z);
					    u_xlat3.x = u_xlat3.x * _InvFade;
					    u_xlat3.x = clamp(u_xlat3.x, 0.0, 1.0);
					    u_xlat3.x = (-vs_COLOR0.w) * u_xlat3.x + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat1.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz * _TintColor.xyz;
					    u_xlat1.xyz = u_xlat1.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat3.x * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendMul" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat3.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat1 = texture(_CameraDepthTexture, u_xlat3.xy);
					    u_xlat3.x = _ZBufferParams.z * u_xlat1.x + _ZBufferParams.w;
					    u_xlat3.x = float(1.0) / u_xlat3.x;
					    u_xlat3.x = u_xlat3.x + (-vs_TEXCOORD3.z);
					    u_xlat3.x = u_xlat3.x * _InvFade;
					    u_xlat3.x = clamp(u_xlat3.x, 0.0, 1.0);
					    u_xlat3.x = (-vs_COLOR0.w) * u_xlat3.x + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat1.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz * _TintColor.xyz;
					    u_xlat1.xyz = u_xlat1.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat3.x * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat3.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat1 = texture(_CameraDepthTexture, u_xlat3.xy);
					    u_xlat3.x = _ZBufferParams.z * u_xlat1.x + _ZBufferParams.w;
					    u_xlat3.x = float(1.0) / u_xlat3.x;
					    u_xlat3.x = u_xlat3.x + (-vs_TEXCOORD3.z);
					    u_xlat3.x = u_xlat3.x * _InvFade;
					    u_xlat3.x = clamp(u_xlat3.x, 0.0, 1.0);
					    u_xlat3.x = (-vs_COLOR0.w) * u_xlat3.x + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat1.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz * _TintColor.xyz;
					    u_xlat1.xyz = u_xlat1.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat3.x * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendMul" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat3.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat1 = texture(_CameraDepthTexture, u_xlat3.xy);
					    u_xlat3.x = _ZBufferParams.z * u_xlat1.x + _ZBufferParams.w;
					    u_xlat3.x = float(1.0) / u_xlat3.x;
					    u_xlat3.x = u_xlat3.x + (-vs_TEXCOORD3.z);
					    u_xlat3.x = u_xlat3.x * _InvFade;
					    u_xlat3.x = clamp(u_xlat3.x, 0.0, 1.0);
					    u_xlat3.x = (-vs_COLOR0.w) * u_xlat3.x + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat1.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz * _TintColor.xyz;
					    u_xlat1.xyz = u_xlat1.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat3.x * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat3.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat1 = texture(_CameraDepthTexture, u_xlat3.xy);
					    u_xlat3.x = _ZBufferParams.z * u_xlat1.x + _ZBufferParams.w;
					    u_xlat3.x = float(1.0) / u_xlat3.x;
					    u_xlat3.x = u_xlat3.x + (-vs_TEXCOORD3.z);
					    u_xlat3.x = u_xlat3.x * _InvFade;
					    u_xlat3.x = clamp(u_xlat3.x, 0.0, 1.0);
					    u_xlat3.x = (-vs_COLOR0.w) * u_xlat3.x + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat1.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz * _TintColor.xyz;
					    u_xlat1.xyz = u_xlat1.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat3.x * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendMul" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat0 = u_xlat0 * vs_COLOR0;
					    u_xlat0.w = u_xlat0.w;
					    u_xlat0.w = clamp(u_xlat0.w, 0.0, 1.0);
					    u_xlat1 = u_xlat0 + vec4(-1.0, -1.0, -1.0, -1.0);
					    SV_Target0 = u_xlat0.wwww * u_xlat1 + vec4(1.0, 1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat0 = u_xlat0 * vs_COLOR0;
					    u_xlat0.w = u_xlat0.w;
					    u_xlat0.w = clamp(u_xlat0.w, 0.0, 1.0);
					    u_xlat1 = u_xlat0 + vec4(-1.0, -1.0, -1.0, -1.0);
					    SV_Target0 = u_xlat0.wwww * u_xlat1 + vec4(1.0, 1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendMul" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat0 = u_xlat0 * vs_COLOR0;
					    u_xlat0.w = u_xlat0.w;
					    u_xlat0.w = clamp(u_xlat0.w, 0.0, 1.0);
					    u_xlat1 = u_xlat0 + vec4(-1.0, -1.0, -1.0, -1.0);
					    SV_Target0 = u_xlat0.wwww * u_xlat1 + vec4(1.0, 1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat0 = u_xlat0 * vs_COLOR0;
					    u_xlat0.w = u_xlat0.w;
					    u_xlat0.w = clamp(u_xlat0.w, 0.0, 1.0);
					    u_xlat1 = u_xlat0 + vec4(-1.0, -1.0, -1.0, -1.0);
					    SV_Target0 = u_xlat0.wwww * u_xlat1 + vec4(1.0, 1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendMul" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendMul" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendMul" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendMul" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendMul" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendMul" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendMul" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat0 = u_xlat0 * vs_COLOR0;
					    u_xlat0.w = u_xlat0.w;
					    u_xlat0.w = clamp(u_xlat0.w, 0.0, 1.0);
					    u_xlat1 = u_xlat0 + vec4(-1.0, -1.0, -1.0, -1.0);
					    SV_Target0 = u_xlat0.wwww * u_xlat1 + vec4(1.0, 1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat0 = u_xlat0 * vs_COLOR0;
					    u_xlat0.w = u_xlat0.w;
					    u_xlat0.w = clamp(u_xlat0.w, 0.0, 1.0);
					    u_xlat1 = u_xlat0 + vec4(-1.0, -1.0, -1.0, -1.0);
					    SV_Target0 = u_xlat0.wwww * u_xlat1 + vec4(1.0, 1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendMul" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat0 = u_xlat0 * vs_COLOR0;
					    u_xlat0.w = u_xlat0.w;
					    u_xlat0.w = clamp(u_xlat0.w, 0.0, 1.0);
					    u_xlat1 = u_xlat0 + vec4(-1.0, -1.0, -1.0, -1.0);
					    SV_Target0 = u_xlat0.wwww * u_xlat1 + vec4(1.0, 1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat0 = u_xlat0 * vs_COLOR0;
					    u_xlat0.w = u_xlat0.w;
					    u_xlat0.w = clamp(u_xlat0.w, 0.0, 1.0);
					    u_xlat1 = u_xlat0 + vec4(-1.0, -1.0, -1.0, -1.0);
					    SV_Target0 = u_xlat0.wwww * u_xlat1 + vec4(1.0, 1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendMul" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendMul" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendMul" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendMul" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendMul" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendMul" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendMul" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat6;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat0 = u_xlat0 * vs_COLOR0;
					    u_xlat6 = u_xlat0.w;
					    u_xlat6 = clamp(u_xlat6, 0.0, 1.0);
					    u_xlat0.w = u_xlat6 * vs_TEXCOORD4;
					    u_xlat1 = u_xlat0 + vec4(-1.0, -1.0, -1.0, -1.0);
					    SV_Target0 = u_xlat0.wwww * u_xlat1 + vec4(1.0, 1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat6;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat0 = u_xlat0 * vs_COLOR0;
					    u_xlat6 = u_xlat0.w;
					    u_xlat6 = clamp(u_xlat6, 0.0, 1.0);
					    u_xlat0.w = u_xlat6 * vs_TEXCOORD4;
					    u_xlat1 = u_xlat0 + vec4(-1.0, -1.0, -1.0, -1.0);
					    SV_Target0 = u_xlat0.wwww * u_xlat1 + vec4(1.0, 1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendMul" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat6;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat0 = u_xlat0 * vs_COLOR0;
					    u_xlat6 = u_xlat0.w;
					    u_xlat6 = clamp(u_xlat6, 0.0, 1.0);
					    u_xlat0.w = u_xlat6 * vs_TEXCOORD4;
					    u_xlat1 = u_xlat0 + vec4(-1.0, -1.0, -1.0, -1.0);
					    SV_Target0 = u_xlat0.wwww * u_xlat1 + vec4(1.0, 1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat6;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat0 = u_xlat0 * vs_COLOR0;
					    u_xlat6 = u_xlat0.w;
					    u_xlat6 = clamp(u_xlat6, 0.0, 1.0);
					    u_xlat0.w = u_xlat6 * vs_TEXCOORD4;
					    u_xlat1 = u_xlat0 + vec4(-1.0, -1.0, -1.0, -1.0);
					    SV_Target0 = u_xlat0.wwww * u_xlat1 + vec4(1.0, 1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendMul" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendMul" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendMul" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendMul" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendMul" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendMul" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendMul" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat6;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat0 = u_xlat0 * vs_COLOR0;
					    u_xlat6 = u_xlat0.w;
					    u_xlat6 = clamp(u_xlat6, 0.0, 1.0);
					    u_xlat0.w = u_xlat6 * vs_TEXCOORD4;
					    u_xlat1 = u_xlat0 + vec4(-1.0, -1.0, -1.0, -1.0);
					    SV_Target0 = u_xlat0.wwww * u_xlat1 + vec4(1.0, 1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat6;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat0 = u_xlat0 * vs_COLOR0;
					    u_xlat6 = u_xlat0.w;
					    u_xlat6 = clamp(u_xlat6, 0.0, 1.0);
					    u_xlat0.w = u_xlat6 * vs_TEXCOORD4;
					    u_xlat1 = u_xlat0 + vec4(-1.0, -1.0, -1.0, -1.0);
					    SV_Target0 = u_xlat0.wwww * u_xlat1 + vec4(1.0, 1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendMul" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat6;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat0 = u_xlat0 * vs_COLOR0;
					    u_xlat6 = u_xlat0.w;
					    u_xlat6 = clamp(u_xlat6, 0.0, 1.0);
					    u_xlat0.w = u_xlat6 * vs_TEXCOORD4;
					    u_xlat1 = u_xlat0 + vec4(-1.0, -1.0, -1.0, -1.0);
					    SV_Target0 = u_xlat0.wwww * u_xlat1 + vec4(1.0, 1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat6;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat0 = u_xlat0 * vs_COLOR0;
					    u_xlat6 = u_xlat0.w;
					    u_xlat6 = clamp(u_xlat6, 0.0, 1.0);
					    u_xlat0.w = u_xlat6 * vs_TEXCOORD4;
					    u_xlat1 = u_xlat0 + vec4(-1.0, -1.0, -1.0, -1.0);
					    SV_Target0 = u_xlat0.wwww * u_xlat1 + vec4(1.0, 1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendMul" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendMul" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendMul" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendMul" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendMul" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendMul" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendMul" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					bool u_xlatb1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1.x = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat0.w = u_xlat0.w * u_xlat1.x;
					    u_xlat0 = u_xlat0 * vs_COLOR0;
					    u_xlat0.w = u_xlat0.w;
					    u_xlat0.w = clamp(u_xlat0.w, 0.0, 1.0);
					    u_xlat1 = u_xlat0 + vec4(-1.0, -1.0, -1.0, -1.0);
					    SV_Target0 = u_xlat0.wwww * u_xlat1 + vec4(1.0, 1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					bool u_xlatb1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1.x = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat0.w = u_xlat0.w * u_xlat1.x;
					    u_xlat0 = u_xlat0 * vs_COLOR0;
					    u_xlat0.w = u_xlat0.w;
					    u_xlat0.w = clamp(u_xlat0.w, 0.0, 1.0);
					    u_xlat1 = u_xlat0 + vec4(-1.0, -1.0, -1.0, -1.0);
					    SV_Target0 = u_xlat0.wwww * u_xlat1 + vec4(1.0, 1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendMul" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					bool u_xlatb1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1.x = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat0.w = u_xlat0.w * u_xlat1.x;
					    u_xlat0 = u_xlat0 * vs_COLOR0;
					    u_xlat0.w = u_xlat0.w;
					    u_xlat0.w = clamp(u_xlat0.w, 0.0, 1.0);
					    u_xlat1 = u_xlat0 + vec4(-1.0, -1.0, -1.0, -1.0);
					    SV_Target0 = u_xlat0.wwww * u_xlat1 + vec4(1.0, 1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					bool u_xlatb1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1.x = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat0.w = u_xlat0.w * u_xlat1.x;
					    u_xlat0 = u_xlat0 * vs_COLOR0;
					    u_xlat0.w = u_xlat0.w;
					    u_xlat0.w = clamp(u_xlat0.w, 0.0, 1.0);
					    u_xlat1 = u_xlat0 + vec4(-1.0, -1.0, -1.0, -1.0);
					    SV_Target0 = u_xlat0.wwww * u_xlat1 + vec4(1.0, 1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendMul" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3.x;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3.x;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendMul" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3.x;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3.x;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendMul" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3.x;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3.x;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendMul" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3.x;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3.x;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendMul" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3.x;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3.x;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendMul" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3.x;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3.x;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendMul" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					bool u_xlatb1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1.x = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat0.w = u_xlat0.w * u_xlat1.x;
					    u_xlat0 = u_xlat0 * vs_COLOR0;
					    u_xlat0.w = u_xlat0.w;
					    u_xlat0.w = clamp(u_xlat0.w, 0.0, 1.0);
					    u_xlat1 = u_xlat0 + vec4(-1.0, -1.0, -1.0, -1.0);
					    SV_Target0 = u_xlat0.wwww * u_xlat1 + vec4(1.0, 1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					bool u_xlatb1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1.x = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat0.w = u_xlat0.w * u_xlat1.x;
					    u_xlat0 = u_xlat0 * vs_COLOR0;
					    u_xlat0.w = u_xlat0.w;
					    u_xlat0.w = clamp(u_xlat0.w, 0.0, 1.0);
					    u_xlat1 = u_xlat0 + vec4(-1.0, -1.0, -1.0, -1.0);
					    SV_Target0 = u_xlat0.wwww * u_xlat1 + vec4(1.0, 1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendMul" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					bool u_xlatb1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1.x = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat0.w = u_xlat0.w * u_xlat1.x;
					    u_xlat0 = u_xlat0 * vs_COLOR0;
					    u_xlat0.w = u_xlat0.w;
					    u_xlat0.w = clamp(u_xlat0.w, 0.0, 1.0);
					    u_xlat1 = u_xlat0 + vec4(-1.0, -1.0, -1.0, -1.0);
					    SV_Target0 = u_xlat0.wwww * u_xlat1 + vec4(1.0, 1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					bool u_xlatb1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1.x = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat0.w = u_xlat0.w * u_xlat1.x;
					    u_xlat0 = u_xlat0 * vs_COLOR0;
					    u_xlat0.w = u_xlat0.w;
					    u_xlat0.w = clamp(u_xlat0.w, 0.0, 1.0);
					    u_xlat1 = u_xlat0 + vec4(-1.0, -1.0, -1.0, -1.0);
					    SV_Target0 = u_xlat0.wwww * u_xlat1 + vec4(1.0, 1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendMul" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3.x;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3.x;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendMul" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3.x;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3.x;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendMul" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3.x;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3.x;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendMul" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3.x;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3.x;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendMul" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3.x;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3.x;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendMul" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3.x;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3.x;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendMul" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					bool u_xlatb1;
					float u_xlat6;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1.x = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat0.w = u_xlat0.w * u_xlat1.x;
					    u_xlat0 = u_xlat0 * vs_COLOR0;
					    u_xlat6 = u_xlat0.w;
					    u_xlat6 = clamp(u_xlat6, 0.0, 1.0);
					    u_xlat0.w = u_xlat6 * vs_TEXCOORD4;
					    u_xlat1 = u_xlat0 + vec4(-1.0, -1.0, -1.0, -1.0);
					    SV_Target0 = u_xlat0.wwww * u_xlat1 + vec4(1.0, 1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					bool u_xlatb1;
					float u_xlat6;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1.x = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat0.w = u_xlat0.w * u_xlat1.x;
					    u_xlat0 = u_xlat0 * vs_COLOR0;
					    u_xlat6 = u_xlat0.w;
					    u_xlat6 = clamp(u_xlat6, 0.0, 1.0);
					    u_xlat0.w = u_xlat6 * vs_TEXCOORD4;
					    u_xlat1 = u_xlat0 + vec4(-1.0, -1.0, -1.0, -1.0);
					    SV_Target0 = u_xlat0.wwww * u_xlat1 + vec4(1.0, 1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendMul" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					bool u_xlatb1;
					float u_xlat6;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1.x = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat0.w = u_xlat0.w * u_xlat1.x;
					    u_xlat0 = u_xlat0 * vs_COLOR0;
					    u_xlat6 = u_xlat0.w;
					    u_xlat6 = clamp(u_xlat6, 0.0, 1.0);
					    u_xlat0.w = u_xlat6 * vs_TEXCOORD4;
					    u_xlat1 = u_xlat0 + vec4(-1.0, -1.0, -1.0, -1.0);
					    SV_Target0 = u_xlat0.wwww * u_xlat1 + vec4(1.0, 1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					bool u_xlatb1;
					float u_xlat6;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1.x = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat0.w = u_xlat0.w * u_xlat1.x;
					    u_xlat0 = u_xlat0 * vs_COLOR0;
					    u_xlat6 = u_xlat0.w;
					    u_xlat6 = clamp(u_xlat6, 0.0, 1.0);
					    u_xlat0.w = u_xlat6 * vs_TEXCOORD4;
					    u_xlat1 = u_xlat0 + vec4(-1.0, -1.0, -1.0, -1.0);
					    SV_Target0 = u_xlat0.wwww * u_xlat1 + vec4(1.0, 1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendMul" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3.x;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3.x;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendMul" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3.x;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3.x;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendMul" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3.x;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3.x;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendMul" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3.x;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3.x;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendMul" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3.x;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3.x;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendMul" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3.x;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3.x;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendMul" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					bool u_xlatb1;
					float u_xlat6;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1.x = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat0.w = u_xlat0.w * u_xlat1.x;
					    u_xlat0 = u_xlat0 * vs_COLOR0;
					    u_xlat6 = u_xlat0.w;
					    u_xlat6 = clamp(u_xlat6, 0.0, 1.0);
					    u_xlat0.w = u_xlat6 * vs_TEXCOORD4;
					    u_xlat1 = u_xlat0 + vec4(-1.0, -1.0, -1.0, -1.0);
					    SV_Target0 = u_xlat0.wwww * u_xlat1 + vec4(1.0, 1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					bool u_xlatb1;
					float u_xlat6;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1.x = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat0.w = u_xlat0.w * u_xlat1.x;
					    u_xlat0 = u_xlat0 * vs_COLOR0;
					    u_xlat6 = u_xlat0.w;
					    u_xlat6 = clamp(u_xlat6, 0.0, 1.0);
					    u_xlat0.w = u_xlat6 * vs_TEXCOORD4;
					    u_xlat1 = u_xlat0 + vec4(-1.0, -1.0, -1.0, -1.0);
					    SV_Target0 = u_xlat0.wwww * u_xlat1 + vec4(1.0, 1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendMul" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					bool u_xlatb1;
					float u_xlat6;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1.x = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat0.w = u_xlat0.w * u_xlat1.x;
					    u_xlat0 = u_xlat0 * vs_COLOR0;
					    u_xlat6 = u_xlat0.w;
					    u_xlat6 = clamp(u_xlat6, 0.0, 1.0);
					    u_xlat0.w = u_xlat6 * vs_TEXCOORD4;
					    u_xlat1 = u_xlat0 + vec4(-1.0, -1.0, -1.0, -1.0);
					    SV_Target0 = u_xlat0.wwww * u_xlat1 + vec4(1.0, 1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					bool u_xlatb1;
					float u_xlat6;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1.x = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat0.w = u_xlat0.w * u_xlat1.x;
					    u_xlat0 = u_xlat0 * vs_COLOR0;
					    u_xlat6 = u_xlat0.w;
					    u_xlat6 = clamp(u_xlat6, 0.0, 1.0);
					    u_xlat0.w = u_xlat6 * vs_TEXCOORD4;
					    u_xlat1 = u_xlat0 + vec4(-1.0, -1.0, -1.0, -1.0);
					    SV_Target0 = u_xlat0.wwww * u_xlat1 + vec4(1.0, 1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendMul" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3.x;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3.x;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendMul" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3.x;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3.x;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendMul" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3.x;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3.x;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendMul" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3.x;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3.x;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendMul" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3.x;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3.x;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendMul" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3.x;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3.x;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendMul" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlat0.xyz = u_xlat0.xyz + u_xlat0.xyz;
					    u_xlat0.xyz = u_xlat0.xyz * _TintColor.xyz;
					    u_xlat1.xyz = u_xlat0.xyz * vs_COLOR0.xyz;
					    u_xlat0.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlatb0 = u_xlat0.w>=u_xlat0.x;
					    u_xlat1.w = u_xlatb0 ? 1.0 : float(0.0);
					    u_xlat0 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    SV_Target0 = u_xlat1.wwww * u_xlat0 + vec4(1.0, 1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlat0.xyz = u_xlat0.xyz + u_xlat0.xyz;
					    u_xlat0.xyz = u_xlat0.xyz * _TintColor.xyz;
					    u_xlat1.xyz = u_xlat0.xyz * vs_COLOR0.xyz;
					    u_xlat0.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlatb0 = u_xlat0.w>=u_xlat0.x;
					    u_xlat1.w = u_xlatb0 ? 1.0 : float(0.0);
					    u_xlat0 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    SV_Target0 = u_xlat1.wwww * u_xlat0 + vec4(1.0, 1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendMul" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlat0.xyz = u_xlat0.xyz + u_xlat0.xyz;
					    u_xlat0.xyz = u_xlat0.xyz * _TintColor.xyz;
					    u_xlat1.xyz = u_xlat0.xyz * vs_COLOR0.xyz;
					    u_xlat0.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlatb0 = u_xlat0.w>=u_xlat0.x;
					    u_xlat1.w = u_xlatb0 ? 1.0 : float(0.0);
					    u_xlat0 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    SV_Target0 = u_xlat1.wwww * u_xlat0 + vec4(1.0, 1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlat0.xyz = u_xlat0.xyz + u_xlat0.xyz;
					    u_xlat0.xyz = u_xlat0.xyz * _TintColor.xyz;
					    u_xlat1.xyz = u_xlat0.xyz * vs_COLOR0.xyz;
					    u_xlat0.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlatb0 = u_xlat0.w>=u_xlat0.x;
					    u_xlat1.w = u_xlatb0 ? 1.0 : float(0.0);
					    u_xlat0 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    SV_Target0 = u_xlat1.wwww * u_xlat0 + vec4(1.0, 1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendMul" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat2.w = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1 = u_xlat2 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat2.w = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1 = u_xlat2 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendMul" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat2.w = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1 = u_xlat2 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat2.w = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1 = u_xlat2 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendMul" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat2.w = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1 = u_xlat2 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat2.w = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1 = u_xlat2 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendMul" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat2.w = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1 = u_xlat2 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat2.w = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1 = u_xlat2 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendMul" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat2.w = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1 = u_xlat2 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat2.w = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1 = u_xlat2 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendMul" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat2.w = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1 = u_xlat2 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat2.w = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1 = u_xlat2 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendMul" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlat0.xyz = u_xlat0.xyz + u_xlat0.xyz;
					    u_xlat0.xyz = u_xlat0.xyz * _TintColor.xyz;
					    u_xlat1.xyz = u_xlat0.xyz * vs_COLOR0.xyz;
					    u_xlat0.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlatb0 = u_xlat0.w>=u_xlat0.x;
					    u_xlat1.w = u_xlatb0 ? 1.0 : float(0.0);
					    u_xlat0 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    SV_Target0 = u_xlat1.wwww * u_xlat0 + vec4(1.0, 1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlat0.xyz = u_xlat0.xyz + u_xlat0.xyz;
					    u_xlat0.xyz = u_xlat0.xyz * _TintColor.xyz;
					    u_xlat1.xyz = u_xlat0.xyz * vs_COLOR0.xyz;
					    u_xlat0.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlatb0 = u_xlat0.w>=u_xlat0.x;
					    u_xlat1.w = u_xlatb0 ? 1.0 : float(0.0);
					    u_xlat0 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    SV_Target0 = u_xlat1.wwww * u_xlat0 + vec4(1.0, 1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendMul" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlat0.xyz = u_xlat0.xyz + u_xlat0.xyz;
					    u_xlat0.xyz = u_xlat0.xyz * _TintColor.xyz;
					    u_xlat1.xyz = u_xlat0.xyz * vs_COLOR0.xyz;
					    u_xlat0.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlatb0 = u_xlat0.w>=u_xlat0.x;
					    u_xlat1.w = u_xlatb0 ? 1.0 : float(0.0);
					    u_xlat0 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    SV_Target0 = u_xlat1.wwww * u_xlat0 + vec4(1.0, 1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlat0.xyz = u_xlat0.xyz + u_xlat0.xyz;
					    u_xlat0.xyz = u_xlat0.xyz * _TintColor.xyz;
					    u_xlat1.xyz = u_xlat0.xyz * vs_COLOR0.xyz;
					    u_xlat0.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlatb0 = u_xlat0.w>=u_xlat0.x;
					    u_xlat1.w = u_xlatb0 ? 1.0 : float(0.0);
					    u_xlat0 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    SV_Target0 = u_xlat1.wwww * u_xlat0 + vec4(1.0, 1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendMul" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat2.w = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1 = u_xlat2 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat2.w = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1 = u_xlat2 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendMul" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat2.w = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1 = u_xlat2 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat2.w = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1 = u_xlat2 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendMul" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat2.w = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1 = u_xlat2 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat2.w = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1 = u_xlat2 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendMul" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat2.w = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1 = u_xlat2 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat2.w = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1 = u_xlat2 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendMul" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat2.w = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1 = u_xlat2 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat2.w = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1 = u_xlat2 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendMul" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat2.w = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1 = u_xlat2 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat2.w = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1 = u_xlat2 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendMul" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlat0.xyz = u_xlat0.xyz + u_xlat0.xyz;
					    u_xlat0.xyz = u_xlat0.xyz * _TintColor.xyz;
					    u_xlat1.xyz = u_xlat0.xyz * vs_COLOR0.xyz;
					    u_xlat0.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlatb0 = u_xlat0.w>=u_xlat0.x;
					    u_xlat0.x = u_xlatb0 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat0.x * vs_TEXCOORD4;
					    u_xlat0 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    SV_Target0 = u_xlat1.wwww * u_xlat0 + vec4(1.0, 1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlat0.xyz = u_xlat0.xyz + u_xlat0.xyz;
					    u_xlat0.xyz = u_xlat0.xyz * _TintColor.xyz;
					    u_xlat1.xyz = u_xlat0.xyz * vs_COLOR0.xyz;
					    u_xlat0.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlatb0 = u_xlat0.w>=u_xlat0.x;
					    u_xlat0.x = u_xlatb0 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat0.x * vs_TEXCOORD4;
					    u_xlat0 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    SV_Target0 = u_xlat1.wwww * u_xlat0 + vec4(1.0, 1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendMul" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlat0.xyz = u_xlat0.xyz + u_xlat0.xyz;
					    u_xlat0.xyz = u_xlat0.xyz * _TintColor.xyz;
					    u_xlat1.xyz = u_xlat0.xyz * vs_COLOR0.xyz;
					    u_xlat0.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlatb0 = u_xlat0.w>=u_xlat0.x;
					    u_xlat0.x = u_xlatb0 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat0.x * vs_TEXCOORD4;
					    u_xlat0 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    SV_Target0 = u_xlat1.wwww * u_xlat0 + vec4(1.0, 1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlat0.xyz = u_xlat0.xyz + u_xlat0.xyz;
					    u_xlat0.xyz = u_xlat0.xyz * _TintColor.xyz;
					    u_xlat1.xyz = u_xlat0.xyz * vs_COLOR0.xyz;
					    u_xlat0.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlatb0 = u_xlat0.w>=u_xlat0.x;
					    u_xlat0.x = u_xlatb0 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat0.x * vs_TEXCOORD4;
					    u_xlat0 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    SV_Target0 = u_xlat1.wwww * u_xlat0 + vec4(1.0, 1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendMul" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat2.w = u_xlat3.x * vs_TEXCOORD4;
					    u_xlat1 = u_xlat2 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat2.w = u_xlat3.x * vs_TEXCOORD4;
					    u_xlat1 = u_xlat2 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendMul" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat2.w = u_xlat3.x * vs_TEXCOORD4;
					    u_xlat1 = u_xlat2 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat2.w = u_xlat3.x * vs_TEXCOORD4;
					    u_xlat1 = u_xlat2 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendMul" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat2.w = u_xlat3.x * vs_TEXCOORD4;
					    u_xlat1 = u_xlat2 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat2.w = u_xlat3.x * vs_TEXCOORD4;
					    u_xlat1 = u_xlat2 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendMul" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat2.w = u_xlat3.x * vs_TEXCOORD4;
					    u_xlat1 = u_xlat2 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat2.w = u_xlat3.x * vs_TEXCOORD4;
					    u_xlat1 = u_xlat2 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendMul" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat2.w = u_xlat3.x * vs_TEXCOORD4;
					    u_xlat1 = u_xlat2 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat2.w = u_xlat3.x * vs_TEXCOORD4;
					    u_xlat1 = u_xlat2 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendMul" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat2.w = u_xlat3.x * vs_TEXCOORD4;
					    u_xlat1 = u_xlat2 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat2.w = u_xlat3.x * vs_TEXCOORD4;
					    u_xlat1 = u_xlat2 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendMul" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlat0.xyz = u_xlat0.xyz + u_xlat0.xyz;
					    u_xlat0.xyz = u_xlat0.xyz * _TintColor.xyz;
					    u_xlat1.xyz = u_xlat0.xyz * vs_COLOR0.xyz;
					    u_xlat0.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlatb0 = u_xlat0.w>=u_xlat0.x;
					    u_xlat0.x = u_xlatb0 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat0.x * vs_TEXCOORD4;
					    u_xlat0 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    SV_Target0 = u_xlat1.wwww * u_xlat0 + vec4(1.0, 1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlat0.xyz = u_xlat0.xyz + u_xlat0.xyz;
					    u_xlat0.xyz = u_xlat0.xyz * _TintColor.xyz;
					    u_xlat1.xyz = u_xlat0.xyz * vs_COLOR0.xyz;
					    u_xlat0.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlatb0 = u_xlat0.w>=u_xlat0.x;
					    u_xlat0.x = u_xlatb0 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat0.x * vs_TEXCOORD4;
					    u_xlat0 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    SV_Target0 = u_xlat1.wwww * u_xlat0 + vec4(1.0, 1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendMul" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlat0.xyz = u_xlat0.xyz + u_xlat0.xyz;
					    u_xlat0.xyz = u_xlat0.xyz * _TintColor.xyz;
					    u_xlat1.xyz = u_xlat0.xyz * vs_COLOR0.xyz;
					    u_xlat0.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlatb0 = u_xlat0.w>=u_xlat0.x;
					    u_xlat0.x = u_xlatb0 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat0.x * vs_TEXCOORD4;
					    u_xlat0 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    SV_Target0 = u_xlat1.wwww * u_xlat0 + vec4(1.0, 1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlat0.xyz = u_xlat0.xyz + u_xlat0.xyz;
					    u_xlat0.xyz = u_xlat0.xyz * _TintColor.xyz;
					    u_xlat1.xyz = u_xlat0.xyz * vs_COLOR0.xyz;
					    u_xlat0.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlatb0 = u_xlat0.w>=u_xlat0.x;
					    u_xlat0.x = u_xlatb0 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat0.x * vs_TEXCOORD4;
					    u_xlat0 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    SV_Target0 = u_xlat1.wwww * u_xlat0 + vec4(1.0, 1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendMul" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat2.w = u_xlat3.x * vs_TEXCOORD4;
					    u_xlat1 = u_xlat2 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat2.w = u_xlat3.x * vs_TEXCOORD4;
					    u_xlat1 = u_xlat2 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendMul" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat2.w = u_xlat3.x * vs_TEXCOORD4;
					    u_xlat1 = u_xlat2 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat2.w = u_xlat3.x * vs_TEXCOORD4;
					    u_xlat1 = u_xlat2 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendMul" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat2.w = u_xlat3.x * vs_TEXCOORD4;
					    u_xlat1 = u_xlat2 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat2.w = u_xlat3.x * vs_TEXCOORD4;
					    u_xlat1 = u_xlat2 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendMul" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat2.w = u_xlat3.x * vs_TEXCOORD4;
					    u_xlat1 = u_xlat2 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat2.w = u_xlat3.x * vs_TEXCOORD4;
					    u_xlat1 = u_xlat2 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendMul" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat2.w = u_xlat3.x * vs_TEXCOORD4;
					    u_xlat1 = u_xlat2 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat2.w = u_xlat3.x * vs_TEXCOORD4;
					    u_xlat1 = u_xlat2 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendMul" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat2.w = u_xlat3.x * vs_TEXCOORD4;
					    u_xlat1 = u_xlat2 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat2.w = u_xlat3.x * vs_TEXCOORD4;
					    u_xlat1 = u_xlat2 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendMul" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat0 = u_xlat0 * vs_COLOR0;
					    u_xlat0.w = u_xlat0.w;
					    u_xlat0.w = clamp(u_xlat0.w, 0.0, 1.0);
					    u_xlat1 = u_xlat0 + vec4(-1.0, -1.0, -1.0, -1.0);
					    SV_Target0 = u_xlat0.wwww * u_xlat1 + vec4(1.0, 1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat0 = u_xlat0 * vs_COLOR0;
					    u_xlat0.w = u_xlat0.w;
					    u_xlat0.w = clamp(u_xlat0.w, 0.0, 1.0);
					    u_xlat1 = u_xlat0 + vec4(-1.0, -1.0, -1.0, -1.0);
					    SV_Target0 = u_xlat0.wwww * u_xlat1 + vec4(1.0, 1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendMul" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[7];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat0.w = u_xlat0.w;
					    u_xlat0.w = clamp(u_xlat0.w, 0.0, 1.0);
					    u_xlat1 = u_xlat0 + vec4(-1.0, -1.0, -1.0, -1.0);
					    SV_Target0 = u_xlat0.wwww * u_xlat1 + vec4(1.0, 1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[6];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat0.w = u_xlat0.w;
					    u_xlat0.w = clamp(u_xlat0.w, 0.0, 1.0);
					    u_xlat1 = u_xlat0 + vec4(-1.0, -1.0, -1.0, -1.0);
					    SV_Target0 = u_xlat0.wwww * u_xlat1 + vec4(1.0, 1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendMul" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendMul" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					float u_xlat9;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat0.w = u_xlat0.w;
					    u_xlat0.w = clamp(u_xlat0.w, 0.0, 1.0);
					    u_xlat1 = u_xlat0 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat0.xyz = u_xlat0.www * u_xlat1.xyz;
					    SV_Target0.w = u_xlat0.w * u_xlat1.w + 1.0;
					    u_xlat9 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat9 = (-u_xlat9) + 1.0;
					    u_xlat9 = u_xlat9 * _ProjectionParams.z;
					    u_xlat9 = max(u_xlat9, 0.0);
					    u_xlat9 = u_xlat9 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat9 = clamp(u_xlat9, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat9) * u_xlat0.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					float u_xlat9;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat0.w = u_xlat0.w;
					    u_xlat0.w = clamp(u_xlat0.w, 0.0, 1.0);
					    u_xlat1 = u_xlat0 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat0.xyz = u_xlat0.www * u_xlat1.xyz;
					    SV_Target0.w = u_xlat0.w * u_xlat1.w + 1.0;
					    u_xlat9 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat9 = (-u_xlat9) + 1.0;
					    u_xlat9 = u_xlat9 * _ProjectionParams.z;
					    u_xlat9 = max(u_xlat9, 0.0);
					    u_xlat9 = u_xlat9 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat9 = clamp(u_xlat9, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat9) * u_xlat0.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendMul" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendMul" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec3 u_xlat4;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat4.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat1 = texture(_CameraDepthTexture, u_xlat4.xy);
					    u_xlat4.x = _ZBufferParams.z * u_xlat1.x + _ZBufferParams.w;
					    u_xlat4.x = float(1.0) / u_xlat4.x;
					    u_xlat4.x = u_xlat4.x + (-vs_TEXCOORD3.z);
					    u_xlat4.x = u_xlat4.x * _InvFade;
					    u_xlat4.x = clamp(u_xlat4.x, 0.0, 1.0);
					    u_xlat1.w = u_xlat4.x * vs_COLOR0.w;
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat3 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2 = u_xlat2 + (-u_xlat3);
					    u_xlat2 = vec4(vs_TEXCOORD1) * u_xlat2 + u_xlat3;
					    u_xlat2 = u_xlat2 + u_xlat2;
					    u_xlat2 = u_xlat2 * _TintColor;
					    u_xlat1.xyz = vs_COLOR0.xyz;
					    u_xlat1 = u_xlat1 * u_xlat2;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat4.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat4.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec3 u_xlat4;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat4.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat1 = texture(_CameraDepthTexture, u_xlat4.xy);
					    u_xlat4.x = _ZBufferParams.z * u_xlat1.x + _ZBufferParams.w;
					    u_xlat4.x = float(1.0) / u_xlat4.x;
					    u_xlat4.x = u_xlat4.x + (-vs_TEXCOORD3.z);
					    u_xlat4.x = u_xlat4.x * _InvFade;
					    u_xlat4.x = clamp(u_xlat4.x, 0.0, 1.0);
					    u_xlat1.w = u_xlat4.x * vs_COLOR0.w;
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat3 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2 = u_xlat2 + (-u_xlat3);
					    u_xlat2 = vec4(vs_TEXCOORD1) * u_xlat2 + u_xlat3;
					    u_xlat2 = u_xlat2 + u_xlat2;
					    u_xlat2 = u_xlat2 * _TintColor;
					    u_xlat1.xyz = vs_COLOR0.xyz;
					    u_xlat1 = u_xlat1 * u_xlat2;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat4.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat4.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendMul" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendMul" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec3 u_xlat4;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat4.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat1 = texture(_CameraDepthTexture, u_xlat4.xy);
					    u_xlat4.x = _ZBufferParams.z * u_xlat1.x + _ZBufferParams.w;
					    u_xlat4.x = float(1.0) / u_xlat4.x;
					    u_xlat4.x = u_xlat4.x + (-vs_TEXCOORD3.z);
					    u_xlat4.x = u_xlat4.x * _InvFade;
					    u_xlat4.x = clamp(u_xlat4.x, 0.0, 1.0);
					    u_xlat1.w = u_xlat4.x * vs_COLOR0.w;
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat3 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2 = u_xlat2 + (-u_xlat3);
					    u_xlat2 = vec4(vs_TEXCOORD1) * u_xlat2 + u_xlat3;
					    u_xlat2 = u_xlat2 + u_xlat2;
					    u_xlat2 = u_xlat2 * _TintColor;
					    u_xlat1.xyz = vs_COLOR0.xyz;
					    u_xlat1 = u_xlat1 * u_xlat2;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat4.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat4.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec3 u_xlat4;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat4.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat1 = texture(_CameraDepthTexture, u_xlat4.xy);
					    u_xlat4.x = _ZBufferParams.z * u_xlat1.x + _ZBufferParams.w;
					    u_xlat4.x = float(1.0) / u_xlat4.x;
					    u_xlat4.x = u_xlat4.x + (-vs_TEXCOORD3.z);
					    u_xlat4.x = u_xlat4.x * _InvFade;
					    u_xlat4.x = clamp(u_xlat4.x, 0.0, 1.0);
					    u_xlat1.w = u_xlat4.x * vs_COLOR0.w;
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat3 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2 = u_xlat2 + (-u_xlat3);
					    u_xlat2 = vec4(vs_TEXCOORD1) * u_xlat2 + u_xlat3;
					    u_xlat2 = u_xlat2 + u_xlat2;
					    u_xlat2 = u_xlat2 * _TintColor;
					    u_xlat1.xyz = vs_COLOR0.xyz;
					    u_xlat1 = u_xlat1 * u_xlat2;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat4.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat4.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendMul" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[7];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat0.w = u_xlat0.w;
					    u_xlat0.w = clamp(u_xlat0.w, 0.0, 1.0);
					    u_xlat1 = u_xlat0 + vec4(-1.0, -1.0, -1.0, -1.0);
					    SV_Target0 = u_xlat0.wwww * u_xlat1 + vec4(1.0, 1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[6];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat0.w = u_xlat0.w;
					    u_xlat0.w = clamp(u_xlat0.w, 0.0, 1.0);
					    u_xlat1 = u_xlat0 + vec4(-1.0, -1.0, -1.0, -1.0);
					    SV_Target0 = u_xlat0.wwww * u_xlat1 + vec4(1.0, 1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendMul" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[7];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat0.w = u_xlat0.w;
					    u_xlat0.w = clamp(u_xlat0.w, 0.0, 1.0);
					    u_xlat1 = u_xlat0 + vec4(-1.0, -1.0, -1.0, -1.0);
					    SV_Target0 = u_xlat0.wwww * u_xlat1 + vec4(1.0, 1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[6];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat0.w = u_xlat0.w;
					    u_xlat0.w = clamp(u_xlat0.w, 0.0, 1.0);
					    u_xlat1 = u_xlat0 + vec4(-1.0, -1.0, -1.0, -1.0);
					    SV_Target0 = u_xlat0.wwww * u_xlat1 + vec4(1.0, 1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendMul" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					float u_xlat9;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat0.w = u_xlat0.w;
					    u_xlat0.w = clamp(u_xlat0.w, 0.0, 1.0);
					    u_xlat1 = u_xlat0 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat0.xyz = u_xlat0.www * u_xlat1.xyz;
					    SV_Target0.w = u_xlat0.w * u_xlat1.w + 1.0;
					    u_xlat9 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat9 = (-u_xlat9) + 1.0;
					    u_xlat9 = u_xlat9 * _ProjectionParams.z;
					    u_xlat9 = max(u_xlat9, 0.0);
					    u_xlat9 = u_xlat9 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat9 = clamp(u_xlat9, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat9) * u_xlat0.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					float u_xlat9;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat0.w = u_xlat0.w;
					    u_xlat0.w = clamp(u_xlat0.w, 0.0, 1.0);
					    u_xlat1 = u_xlat0 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat0.xyz = u_xlat0.www * u_xlat1.xyz;
					    SV_Target0.w = u_xlat0.w * u_xlat1.w + 1.0;
					    u_xlat9 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat9 = (-u_xlat9) + 1.0;
					    u_xlat9 = u_xlat9 * _ProjectionParams.z;
					    u_xlat9 = max(u_xlat9, 0.0);
					    u_xlat9 = u_xlat9 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat9 = clamp(u_xlat9, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat9) * u_xlat0.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendMul" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					float u_xlat9;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat0.w = u_xlat0.w;
					    u_xlat0.w = clamp(u_xlat0.w, 0.0, 1.0);
					    u_xlat1 = u_xlat0 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat0.xyz = u_xlat0.www * u_xlat1.xyz;
					    SV_Target0.w = u_xlat0.w * u_xlat1.w + 1.0;
					    u_xlat9 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat9 = (-u_xlat9) + 1.0;
					    u_xlat9 = u_xlat9 * _ProjectionParams.z;
					    u_xlat9 = max(u_xlat9, 0.0);
					    u_xlat9 = u_xlat9 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat9 = clamp(u_xlat9, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat9) * u_xlat0.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					float u_xlat9;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat0.w = u_xlat0.w;
					    u_xlat0.w = clamp(u_xlat0.w, 0.0, 1.0);
					    u_xlat1 = u_xlat0 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat0.xyz = u_xlat0.www * u_xlat1.xyz;
					    SV_Target0.w = u_xlat0.w * u_xlat1.w + 1.0;
					    u_xlat9 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat9 = (-u_xlat9) + 1.0;
					    u_xlat9 = u_xlat9 * _ProjectionParams.z;
					    u_xlat9 = max(u_xlat9, 0.0);
					    u_xlat9 = u_xlat9 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat9 = clamp(u_xlat9, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat9) * u_xlat0.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendMul" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec3 u_xlat4;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat4.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat1 = texture(_CameraDepthTexture, u_xlat4.xy);
					    u_xlat4.x = _ZBufferParams.z * u_xlat1.x + _ZBufferParams.w;
					    u_xlat4.x = float(1.0) / u_xlat4.x;
					    u_xlat4.x = u_xlat4.x + (-vs_TEXCOORD3.z);
					    u_xlat4.x = u_xlat4.x * _InvFade;
					    u_xlat4.x = clamp(u_xlat4.x, 0.0, 1.0);
					    u_xlat1.w = u_xlat4.x * vs_COLOR0.w;
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat3 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2 = u_xlat2 + (-u_xlat3);
					    u_xlat2 = vec4(vs_TEXCOORD1) * u_xlat2 + u_xlat3;
					    u_xlat2 = u_xlat2 + u_xlat2;
					    u_xlat2 = u_xlat2 * _TintColor;
					    u_xlat1.xyz = vs_COLOR0.xyz;
					    u_xlat1 = u_xlat1 * u_xlat2;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat4.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat4.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec3 u_xlat4;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat4.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat1 = texture(_CameraDepthTexture, u_xlat4.xy);
					    u_xlat4.x = _ZBufferParams.z * u_xlat1.x + _ZBufferParams.w;
					    u_xlat4.x = float(1.0) / u_xlat4.x;
					    u_xlat4.x = u_xlat4.x + (-vs_TEXCOORD3.z);
					    u_xlat4.x = u_xlat4.x * _InvFade;
					    u_xlat4.x = clamp(u_xlat4.x, 0.0, 1.0);
					    u_xlat1.w = u_xlat4.x * vs_COLOR0.w;
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat3 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2 = u_xlat2 + (-u_xlat3);
					    u_xlat2 = vec4(vs_TEXCOORD1) * u_xlat2 + u_xlat3;
					    u_xlat2 = u_xlat2 + u_xlat2;
					    u_xlat2 = u_xlat2 * _TintColor;
					    u_xlat1.xyz = vs_COLOR0.xyz;
					    u_xlat1 = u_xlat1 * u_xlat2;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat4.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat4.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendMul" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec3 u_xlat4;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat4.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat1 = texture(_CameraDepthTexture, u_xlat4.xy);
					    u_xlat4.x = _ZBufferParams.z * u_xlat1.x + _ZBufferParams.w;
					    u_xlat4.x = float(1.0) / u_xlat4.x;
					    u_xlat4.x = u_xlat4.x + (-vs_TEXCOORD3.z);
					    u_xlat4.x = u_xlat4.x * _InvFade;
					    u_xlat4.x = clamp(u_xlat4.x, 0.0, 1.0);
					    u_xlat1.w = u_xlat4.x * vs_COLOR0.w;
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat3 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2 = u_xlat2 + (-u_xlat3);
					    u_xlat2 = vec4(vs_TEXCOORD1) * u_xlat2 + u_xlat3;
					    u_xlat2 = u_xlat2 + u_xlat2;
					    u_xlat2 = u_xlat2 * _TintColor;
					    u_xlat1.xyz = vs_COLOR0.xyz;
					    u_xlat1 = u_xlat1 * u_xlat2;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat4.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat4.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec3 u_xlat4;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat4.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat1 = texture(_CameraDepthTexture, u_xlat4.xy);
					    u_xlat4.x = _ZBufferParams.z * u_xlat1.x + _ZBufferParams.w;
					    u_xlat4.x = float(1.0) / u_xlat4.x;
					    u_xlat4.x = u_xlat4.x + (-vs_TEXCOORD3.z);
					    u_xlat4.x = u_xlat4.x * _InvFade;
					    u_xlat4.x = clamp(u_xlat4.x, 0.0, 1.0);
					    u_xlat1.w = u_xlat4.x * vs_COLOR0.w;
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat3 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2 = u_xlat2 + (-u_xlat3);
					    u_xlat2 = vec4(vs_TEXCOORD1) * u_xlat2 + u_xlat3;
					    u_xlat2 = u_xlat2 + u_xlat2;
					    u_xlat2 = u_xlat2 * _TintColor;
					    u_xlat1.xyz = vs_COLOR0.xyz;
					    u_xlat1 = u_xlat1 * u_xlat2;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat4.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat4.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendMul" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec3 u_xlat4;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat4.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat1 = texture(_CameraDepthTexture, u_xlat4.xy);
					    u_xlat4.x = _ZBufferParams.z * u_xlat1.x + _ZBufferParams.w;
					    u_xlat4.x = float(1.0) / u_xlat4.x;
					    u_xlat4.x = u_xlat4.x + (-vs_TEXCOORD3.z);
					    u_xlat4.x = u_xlat4.x * _InvFade;
					    u_xlat4.x = clamp(u_xlat4.x, 0.0, 1.0);
					    u_xlat1.w = u_xlat4.x * vs_COLOR0.w;
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat3 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2 = u_xlat2 + (-u_xlat3);
					    u_xlat2 = vec4(vs_TEXCOORD1) * u_xlat2 + u_xlat3;
					    u_xlat2 = u_xlat2 + u_xlat2;
					    u_xlat2 = u_xlat2 * _TintColor;
					    u_xlat1.xyz = vs_COLOR0.xyz;
					    u_xlat1 = u_xlat1 * u_xlat2;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat4.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat4.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec3 u_xlat4;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat4.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat1 = texture(_CameraDepthTexture, u_xlat4.xy);
					    u_xlat4.x = _ZBufferParams.z * u_xlat1.x + _ZBufferParams.w;
					    u_xlat4.x = float(1.0) / u_xlat4.x;
					    u_xlat4.x = u_xlat4.x + (-vs_TEXCOORD3.z);
					    u_xlat4.x = u_xlat4.x * _InvFade;
					    u_xlat4.x = clamp(u_xlat4.x, 0.0, 1.0);
					    u_xlat1.w = u_xlat4.x * vs_COLOR0.w;
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat3 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2 = u_xlat2 + (-u_xlat3);
					    u_xlat2 = vec4(vs_TEXCOORD1) * u_xlat2 + u_xlat3;
					    u_xlat2 = u_xlat2 + u_xlat2;
					    u_xlat2 = u_xlat2 * _TintColor;
					    u_xlat1.xyz = vs_COLOR0.xyz;
					    u_xlat1 = u_xlat1 * u_xlat2;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat4.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat4.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendMul" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec3 u_xlat4;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat4.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat1 = texture(_CameraDepthTexture, u_xlat4.xy);
					    u_xlat4.x = _ZBufferParams.z * u_xlat1.x + _ZBufferParams.w;
					    u_xlat4.x = float(1.0) / u_xlat4.x;
					    u_xlat4.x = u_xlat4.x + (-vs_TEXCOORD3.z);
					    u_xlat4.x = u_xlat4.x * _InvFade;
					    u_xlat4.x = clamp(u_xlat4.x, 0.0, 1.0);
					    u_xlat1.w = u_xlat4.x * vs_COLOR0.w;
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat3 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2 = u_xlat2 + (-u_xlat3);
					    u_xlat2 = vec4(vs_TEXCOORD1) * u_xlat2 + u_xlat3;
					    u_xlat2 = u_xlat2 + u_xlat2;
					    u_xlat2 = u_xlat2 * _TintColor;
					    u_xlat1.xyz = vs_COLOR0.xyz;
					    u_xlat1 = u_xlat1 * u_xlat2;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat4.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat4.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec3 u_xlat4;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat4.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat1 = texture(_CameraDepthTexture, u_xlat4.xy);
					    u_xlat4.x = _ZBufferParams.z * u_xlat1.x + _ZBufferParams.w;
					    u_xlat4.x = float(1.0) / u_xlat4.x;
					    u_xlat4.x = u_xlat4.x + (-vs_TEXCOORD3.z);
					    u_xlat4.x = u_xlat4.x * _InvFade;
					    u_xlat4.x = clamp(u_xlat4.x, 0.0, 1.0);
					    u_xlat1.w = u_xlat4.x * vs_COLOR0.w;
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat3 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2 = u_xlat2 + (-u_xlat3);
					    u_xlat2 = vec4(vs_TEXCOORD1) * u_xlat2 + u_xlat3;
					    u_xlat2 = u_xlat2 + u_xlat2;
					    u_xlat2 = u_xlat2 * _TintColor;
					    u_xlat1.xyz = vs_COLOR0.xyz;
					    u_xlat1 = u_xlat1 * u_xlat2;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat4.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat4.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendMul" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat6;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat0 = u_xlat0 * vs_COLOR0;
					    u_xlat6 = u_xlat0.w;
					    u_xlat6 = clamp(u_xlat6, 0.0, 1.0);
					    u_xlat0.w = u_xlat6 * vs_TEXCOORD4;
					    u_xlat1 = u_xlat0 + vec4(-1.0, -1.0, -1.0, -1.0);
					    SV_Target0 = u_xlat0.wwww * u_xlat1 + vec4(1.0, 1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat6;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat0 = u_xlat0 * vs_COLOR0;
					    u_xlat6 = u_xlat0.w;
					    u_xlat6 = clamp(u_xlat6, 0.0, 1.0);
					    u_xlat0.w = u_xlat6 * vs_TEXCOORD4;
					    u_xlat1 = u_xlat0 + vec4(-1.0, -1.0, -1.0, -1.0);
					    SV_Target0 = u_xlat0.wwww * u_xlat1 + vec4(1.0, 1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendMul" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[7];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					float u_xlat9;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat9 = u_xlat0.w;
					    u_xlat9 = clamp(u_xlat9, 0.0, 1.0);
					    u_xlat0.w = u_xlat9 * vs_TEXCOORD4;
					    u_xlat1 = u_xlat0 + vec4(-1.0, -1.0, -1.0, -1.0);
					    SV_Target0 = u_xlat0.wwww * u_xlat1 + vec4(1.0, 1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[6];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					float u_xlat9;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat9 = u_xlat0.w;
					    u_xlat9 = clamp(u_xlat9, 0.0, 1.0);
					    u_xlat0.w = u_xlat9 * vs_TEXCOORD4;
					    u_xlat1 = u_xlat0 + vec4(-1.0, -1.0, -1.0, -1.0);
					    SV_Target0 = u_xlat0.wwww * u_xlat1 + vec4(1.0, 1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendMul" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendMul" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					float u_xlat9;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat9 = u_xlat0.w;
					    u_xlat9 = clamp(u_xlat9, 0.0, 1.0);
					    u_xlat0.w = u_xlat9 * vs_TEXCOORD4;
					    u_xlat1 = u_xlat0 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat0.xyz = u_xlat0.www * u_xlat1.xyz;
					    SV_Target0.w = u_xlat0.w * u_xlat1.w + 1.0;
					    u_xlat9 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat9 = (-u_xlat9) + 1.0;
					    u_xlat9 = u_xlat9 * _ProjectionParams.z;
					    u_xlat9 = max(u_xlat9, 0.0);
					    u_xlat9 = u_xlat9 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat9 = clamp(u_xlat9, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat9) * u_xlat0.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					float u_xlat9;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat9 = u_xlat0.w;
					    u_xlat9 = clamp(u_xlat9, 0.0, 1.0);
					    u_xlat0.w = u_xlat9 * vs_TEXCOORD4;
					    u_xlat1 = u_xlat0 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat0.xyz = u_xlat0.www * u_xlat1.xyz;
					    SV_Target0.w = u_xlat0.w * u_xlat1.w + 1.0;
					    u_xlat9 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat9 = (-u_xlat9) + 1.0;
					    u_xlat9 = u_xlat9 * _ProjectionParams.z;
					    u_xlat9 = max(u_xlat9, 0.0);
					    u_xlat9 = u_xlat9 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat9 = clamp(u_xlat9, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat9) * u_xlat0.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendMul" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendMul" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec3 u_xlat4;
					float u_xlat13;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat4.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat1 = texture(_CameraDepthTexture, u_xlat4.xy);
					    u_xlat4.x = _ZBufferParams.z * u_xlat1.x + _ZBufferParams.w;
					    u_xlat4.x = float(1.0) / u_xlat4.x;
					    u_xlat4.x = u_xlat4.x + (-vs_TEXCOORD3.z);
					    u_xlat4.x = u_xlat4.x * _InvFade;
					    u_xlat4.x = clamp(u_xlat4.x, 0.0, 1.0);
					    u_xlat1.w = u_xlat4.x * vs_COLOR0.w;
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat3 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2 = u_xlat2 + (-u_xlat3);
					    u_xlat2 = vec4(vs_TEXCOORD1) * u_xlat2 + u_xlat3;
					    u_xlat2 = u_xlat2 + u_xlat2;
					    u_xlat2 = u_xlat2 * _TintColor;
					    u_xlat1.xyz = vs_COLOR0.xyz;
					    u_xlat1 = u_xlat1 * u_xlat2;
					    u_xlat13 = u_xlat1.w;
					    u_xlat13 = clamp(u_xlat13, 0.0, 1.0);
					    u_xlat1.w = u_xlat13 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat4.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat4.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec3 u_xlat4;
					float u_xlat13;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat4.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat1 = texture(_CameraDepthTexture, u_xlat4.xy);
					    u_xlat4.x = _ZBufferParams.z * u_xlat1.x + _ZBufferParams.w;
					    u_xlat4.x = float(1.0) / u_xlat4.x;
					    u_xlat4.x = u_xlat4.x + (-vs_TEXCOORD3.z);
					    u_xlat4.x = u_xlat4.x * _InvFade;
					    u_xlat4.x = clamp(u_xlat4.x, 0.0, 1.0);
					    u_xlat1.w = u_xlat4.x * vs_COLOR0.w;
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat3 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2 = u_xlat2 + (-u_xlat3);
					    u_xlat2 = vec4(vs_TEXCOORD1) * u_xlat2 + u_xlat3;
					    u_xlat2 = u_xlat2 + u_xlat2;
					    u_xlat2 = u_xlat2 * _TintColor;
					    u_xlat1.xyz = vs_COLOR0.xyz;
					    u_xlat1 = u_xlat1 * u_xlat2;
					    u_xlat13 = u_xlat1.w;
					    u_xlat13 = clamp(u_xlat13, 0.0, 1.0);
					    u_xlat1.w = u_xlat13 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat4.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat4.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendMul" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendMul" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec3 u_xlat4;
					float u_xlat13;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat4.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat1 = texture(_CameraDepthTexture, u_xlat4.xy);
					    u_xlat4.x = _ZBufferParams.z * u_xlat1.x + _ZBufferParams.w;
					    u_xlat4.x = float(1.0) / u_xlat4.x;
					    u_xlat4.x = u_xlat4.x + (-vs_TEXCOORD3.z);
					    u_xlat4.x = u_xlat4.x * _InvFade;
					    u_xlat4.x = clamp(u_xlat4.x, 0.0, 1.0);
					    u_xlat1.w = u_xlat4.x * vs_COLOR0.w;
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat3 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2 = u_xlat2 + (-u_xlat3);
					    u_xlat2 = vec4(vs_TEXCOORD1) * u_xlat2 + u_xlat3;
					    u_xlat2 = u_xlat2 + u_xlat2;
					    u_xlat2 = u_xlat2 * _TintColor;
					    u_xlat1.xyz = vs_COLOR0.xyz;
					    u_xlat1 = u_xlat1 * u_xlat2;
					    u_xlat13 = u_xlat1.w;
					    u_xlat13 = clamp(u_xlat13, 0.0, 1.0);
					    u_xlat1.w = u_xlat13 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat4.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat4.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec3 u_xlat4;
					float u_xlat13;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat4.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat1 = texture(_CameraDepthTexture, u_xlat4.xy);
					    u_xlat4.x = _ZBufferParams.z * u_xlat1.x + _ZBufferParams.w;
					    u_xlat4.x = float(1.0) / u_xlat4.x;
					    u_xlat4.x = u_xlat4.x + (-vs_TEXCOORD3.z);
					    u_xlat4.x = u_xlat4.x * _InvFade;
					    u_xlat4.x = clamp(u_xlat4.x, 0.0, 1.0);
					    u_xlat1.w = u_xlat4.x * vs_COLOR0.w;
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat3 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2 = u_xlat2 + (-u_xlat3);
					    u_xlat2 = vec4(vs_TEXCOORD1) * u_xlat2 + u_xlat3;
					    u_xlat2 = u_xlat2 + u_xlat2;
					    u_xlat2 = u_xlat2 * _TintColor;
					    u_xlat1.xyz = vs_COLOR0.xyz;
					    u_xlat1 = u_xlat1 * u_xlat2;
					    u_xlat13 = u_xlat1.w;
					    u_xlat13 = clamp(u_xlat13, 0.0, 1.0);
					    u_xlat1.w = u_xlat13 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat4.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat4.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendMul" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[7];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					float u_xlat9;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat9 = u_xlat0.w;
					    u_xlat9 = clamp(u_xlat9, 0.0, 1.0);
					    u_xlat0.w = u_xlat9 * vs_TEXCOORD4;
					    u_xlat1 = u_xlat0 + vec4(-1.0, -1.0, -1.0, -1.0);
					    SV_Target0 = u_xlat0.wwww * u_xlat1 + vec4(1.0, 1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[6];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					float u_xlat9;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat9 = u_xlat0.w;
					    u_xlat9 = clamp(u_xlat9, 0.0, 1.0);
					    u_xlat0.w = u_xlat9 * vs_TEXCOORD4;
					    u_xlat1 = u_xlat0 + vec4(-1.0, -1.0, -1.0, -1.0);
					    SV_Target0 = u_xlat0.wwww * u_xlat1 + vec4(1.0, 1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendMul" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[7];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					float u_xlat9;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat9 = u_xlat0.w;
					    u_xlat9 = clamp(u_xlat9, 0.0, 1.0);
					    u_xlat0.w = u_xlat9 * vs_TEXCOORD4;
					    u_xlat1 = u_xlat0 + vec4(-1.0, -1.0, -1.0, -1.0);
					    SV_Target0 = u_xlat0.wwww * u_xlat1 + vec4(1.0, 1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[6];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					float u_xlat9;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat9 = u_xlat0.w;
					    u_xlat9 = clamp(u_xlat9, 0.0, 1.0);
					    u_xlat0.w = u_xlat9 * vs_TEXCOORD4;
					    u_xlat1 = u_xlat0 + vec4(-1.0, -1.0, -1.0, -1.0);
					    SV_Target0 = u_xlat0.wwww * u_xlat1 + vec4(1.0, 1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendMul" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					float u_xlat9;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat9 = u_xlat0.w;
					    u_xlat9 = clamp(u_xlat9, 0.0, 1.0);
					    u_xlat0.w = u_xlat9 * vs_TEXCOORD4;
					    u_xlat1 = u_xlat0 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat0.xyz = u_xlat0.www * u_xlat1.xyz;
					    SV_Target0.w = u_xlat0.w * u_xlat1.w + 1.0;
					    u_xlat9 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat9 = (-u_xlat9) + 1.0;
					    u_xlat9 = u_xlat9 * _ProjectionParams.z;
					    u_xlat9 = max(u_xlat9, 0.0);
					    u_xlat9 = u_xlat9 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat9 = clamp(u_xlat9, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat9) * u_xlat0.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					float u_xlat9;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat9 = u_xlat0.w;
					    u_xlat9 = clamp(u_xlat9, 0.0, 1.0);
					    u_xlat0.w = u_xlat9 * vs_TEXCOORD4;
					    u_xlat1 = u_xlat0 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat0.xyz = u_xlat0.www * u_xlat1.xyz;
					    SV_Target0.w = u_xlat0.w * u_xlat1.w + 1.0;
					    u_xlat9 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat9 = (-u_xlat9) + 1.0;
					    u_xlat9 = u_xlat9 * _ProjectionParams.z;
					    u_xlat9 = max(u_xlat9, 0.0);
					    u_xlat9 = u_xlat9 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat9 = clamp(u_xlat9, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat9) * u_xlat0.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendMul" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					float u_xlat9;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat9 = u_xlat0.w;
					    u_xlat9 = clamp(u_xlat9, 0.0, 1.0);
					    u_xlat0.w = u_xlat9 * vs_TEXCOORD4;
					    u_xlat1 = u_xlat0 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat0.xyz = u_xlat0.www * u_xlat1.xyz;
					    SV_Target0.w = u_xlat0.w * u_xlat1.w + 1.0;
					    u_xlat9 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat9 = (-u_xlat9) + 1.0;
					    u_xlat9 = u_xlat9 * _ProjectionParams.z;
					    u_xlat9 = max(u_xlat9, 0.0);
					    u_xlat9 = u_xlat9 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat9 = clamp(u_xlat9, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat9) * u_xlat0.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					float u_xlat9;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat9 = u_xlat0.w;
					    u_xlat9 = clamp(u_xlat9, 0.0, 1.0);
					    u_xlat0.w = u_xlat9 * vs_TEXCOORD4;
					    u_xlat1 = u_xlat0 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat0.xyz = u_xlat0.www * u_xlat1.xyz;
					    SV_Target0.w = u_xlat0.w * u_xlat1.w + 1.0;
					    u_xlat9 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat9 = (-u_xlat9) + 1.0;
					    u_xlat9 = u_xlat9 * _ProjectionParams.z;
					    u_xlat9 = max(u_xlat9, 0.0);
					    u_xlat9 = u_xlat9 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat9 = clamp(u_xlat9, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat9) * u_xlat0.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendMul" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec3 u_xlat4;
					float u_xlat13;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat4.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat1 = texture(_CameraDepthTexture, u_xlat4.xy);
					    u_xlat4.x = _ZBufferParams.z * u_xlat1.x + _ZBufferParams.w;
					    u_xlat4.x = float(1.0) / u_xlat4.x;
					    u_xlat4.x = u_xlat4.x + (-vs_TEXCOORD3.z);
					    u_xlat4.x = u_xlat4.x * _InvFade;
					    u_xlat4.x = clamp(u_xlat4.x, 0.0, 1.0);
					    u_xlat1.w = u_xlat4.x * vs_COLOR0.w;
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat3 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2 = u_xlat2 + (-u_xlat3);
					    u_xlat2 = vec4(vs_TEXCOORD1) * u_xlat2 + u_xlat3;
					    u_xlat2 = u_xlat2 + u_xlat2;
					    u_xlat2 = u_xlat2 * _TintColor;
					    u_xlat1.xyz = vs_COLOR0.xyz;
					    u_xlat1 = u_xlat1 * u_xlat2;
					    u_xlat13 = u_xlat1.w;
					    u_xlat13 = clamp(u_xlat13, 0.0, 1.0);
					    u_xlat1.w = u_xlat13 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat4.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat4.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec3 u_xlat4;
					float u_xlat13;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat4.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat1 = texture(_CameraDepthTexture, u_xlat4.xy);
					    u_xlat4.x = _ZBufferParams.z * u_xlat1.x + _ZBufferParams.w;
					    u_xlat4.x = float(1.0) / u_xlat4.x;
					    u_xlat4.x = u_xlat4.x + (-vs_TEXCOORD3.z);
					    u_xlat4.x = u_xlat4.x * _InvFade;
					    u_xlat4.x = clamp(u_xlat4.x, 0.0, 1.0);
					    u_xlat1.w = u_xlat4.x * vs_COLOR0.w;
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat3 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2 = u_xlat2 + (-u_xlat3);
					    u_xlat2 = vec4(vs_TEXCOORD1) * u_xlat2 + u_xlat3;
					    u_xlat2 = u_xlat2 + u_xlat2;
					    u_xlat2 = u_xlat2 * _TintColor;
					    u_xlat1.xyz = vs_COLOR0.xyz;
					    u_xlat1 = u_xlat1 * u_xlat2;
					    u_xlat13 = u_xlat1.w;
					    u_xlat13 = clamp(u_xlat13, 0.0, 1.0);
					    u_xlat1.w = u_xlat13 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat4.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat4.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendMul" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec3 u_xlat4;
					float u_xlat13;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat4.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat1 = texture(_CameraDepthTexture, u_xlat4.xy);
					    u_xlat4.x = _ZBufferParams.z * u_xlat1.x + _ZBufferParams.w;
					    u_xlat4.x = float(1.0) / u_xlat4.x;
					    u_xlat4.x = u_xlat4.x + (-vs_TEXCOORD3.z);
					    u_xlat4.x = u_xlat4.x * _InvFade;
					    u_xlat4.x = clamp(u_xlat4.x, 0.0, 1.0);
					    u_xlat1.w = u_xlat4.x * vs_COLOR0.w;
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat3 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2 = u_xlat2 + (-u_xlat3);
					    u_xlat2 = vec4(vs_TEXCOORD1) * u_xlat2 + u_xlat3;
					    u_xlat2 = u_xlat2 + u_xlat2;
					    u_xlat2 = u_xlat2 * _TintColor;
					    u_xlat1.xyz = vs_COLOR0.xyz;
					    u_xlat1 = u_xlat1 * u_xlat2;
					    u_xlat13 = u_xlat1.w;
					    u_xlat13 = clamp(u_xlat13, 0.0, 1.0);
					    u_xlat1.w = u_xlat13 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat4.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat4.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec3 u_xlat4;
					float u_xlat13;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat4.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat1 = texture(_CameraDepthTexture, u_xlat4.xy);
					    u_xlat4.x = _ZBufferParams.z * u_xlat1.x + _ZBufferParams.w;
					    u_xlat4.x = float(1.0) / u_xlat4.x;
					    u_xlat4.x = u_xlat4.x + (-vs_TEXCOORD3.z);
					    u_xlat4.x = u_xlat4.x * _InvFade;
					    u_xlat4.x = clamp(u_xlat4.x, 0.0, 1.0);
					    u_xlat1.w = u_xlat4.x * vs_COLOR0.w;
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat3 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2 = u_xlat2 + (-u_xlat3);
					    u_xlat2 = vec4(vs_TEXCOORD1) * u_xlat2 + u_xlat3;
					    u_xlat2 = u_xlat2 + u_xlat2;
					    u_xlat2 = u_xlat2 * _TintColor;
					    u_xlat1.xyz = vs_COLOR0.xyz;
					    u_xlat1 = u_xlat1 * u_xlat2;
					    u_xlat13 = u_xlat1.w;
					    u_xlat13 = clamp(u_xlat13, 0.0, 1.0);
					    u_xlat1.w = u_xlat13 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat4.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat4.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendMul" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec3 u_xlat4;
					float u_xlat13;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat4.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat1 = texture(_CameraDepthTexture, u_xlat4.xy);
					    u_xlat4.x = _ZBufferParams.z * u_xlat1.x + _ZBufferParams.w;
					    u_xlat4.x = float(1.0) / u_xlat4.x;
					    u_xlat4.x = u_xlat4.x + (-vs_TEXCOORD3.z);
					    u_xlat4.x = u_xlat4.x * _InvFade;
					    u_xlat4.x = clamp(u_xlat4.x, 0.0, 1.0);
					    u_xlat1.w = u_xlat4.x * vs_COLOR0.w;
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat3 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2 = u_xlat2 + (-u_xlat3);
					    u_xlat2 = vec4(vs_TEXCOORD1) * u_xlat2 + u_xlat3;
					    u_xlat2 = u_xlat2 + u_xlat2;
					    u_xlat2 = u_xlat2 * _TintColor;
					    u_xlat1.xyz = vs_COLOR0.xyz;
					    u_xlat1 = u_xlat1 * u_xlat2;
					    u_xlat13 = u_xlat1.w;
					    u_xlat13 = clamp(u_xlat13, 0.0, 1.0);
					    u_xlat1.w = u_xlat13 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat4.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat4.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec3 u_xlat4;
					float u_xlat13;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat4.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat1 = texture(_CameraDepthTexture, u_xlat4.xy);
					    u_xlat4.x = _ZBufferParams.z * u_xlat1.x + _ZBufferParams.w;
					    u_xlat4.x = float(1.0) / u_xlat4.x;
					    u_xlat4.x = u_xlat4.x + (-vs_TEXCOORD3.z);
					    u_xlat4.x = u_xlat4.x * _InvFade;
					    u_xlat4.x = clamp(u_xlat4.x, 0.0, 1.0);
					    u_xlat1.w = u_xlat4.x * vs_COLOR0.w;
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat3 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2 = u_xlat2 + (-u_xlat3);
					    u_xlat2 = vec4(vs_TEXCOORD1) * u_xlat2 + u_xlat3;
					    u_xlat2 = u_xlat2 + u_xlat2;
					    u_xlat2 = u_xlat2 * _TintColor;
					    u_xlat1.xyz = vs_COLOR0.xyz;
					    u_xlat1 = u_xlat1 * u_xlat2;
					    u_xlat13 = u_xlat1.w;
					    u_xlat13 = clamp(u_xlat13, 0.0, 1.0);
					    u_xlat1.w = u_xlat13 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat4.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat4.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendMul" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec3 u_xlat4;
					float u_xlat13;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat4.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat1 = texture(_CameraDepthTexture, u_xlat4.xy);
					    u_xlat4.x = _ZBufferParams.z * u_xlat1.x + _ZBufferParams.w;
					    u_xlat4.x = float(1.0) / u_xlat4.x;
					    u_xlat4.x = u_xlat4.x + (-vs_TEXCOORD3.z);
					    u_xlat4.x = u_xlat4.x * _InvFade;
					    u_xlat4.x = clamp(u_xlat4.x, 0.0, 1.0);
					    u_xlat1.w = u_xlat4.x * vs_COLOR0.w;
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat3 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2 = u_xlat2 + (-u_xlat3);
					    u_xlat2 = vec4(vs_TEXCOORD1) * u_xlat2 + u_xlat3;
					    u_xlat2 = u_xlat2 + u_xlat2;
					    u_xlat2 = u_xlat2 * _TintColor;
					    u_xlat1.xyz = vs_COLOR0.xyz;
					    u_xlat1 = u_xlat1 * u_xlat2;
					    u_xlat13 = u_xlat1.w;
					    u_xlat13 = clamp(u_xlat13, 0.0, 1.0);
					    u_xlat1.w = u_xlat13 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat4.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat4.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec3 u_xlat4;
					float u_xlat13;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat4.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat1 = texture(_CameraDepthTexture, u_xlat4.xy);
					    u_xlat4.x = _ZBufferParams.z * u_xlat1.x + _ZBufferParams.w;
					    u_xlat4.x = float(1.0) / u_xlat4.x;
					    u_xlat4.x = u_xlat4.x + (-vs_TEXCOORD3.z);
					    u_xlat4.x = u_xlat4.x * _InvFade;
					    u_xlat4.x = clamp(u_xlat4.x, 0.0, 1.0);
					    u_xlat1.w = u_xlat4.x * vs_COLOR0.w;
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat3 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2 = u_xlat2 + (-u_xlat3);
					    u_xlat2 = vec4(vs_TEXCOORD1) * u_xlat2 + u_xlat3;
					    u_xlat2 = u_xlat2 + u_xlat2;
					    u_xlat2 = u_xlat2 * _TintColor;
					    u_xlat1.xyz = vs_COLOR0.xyz;
					    u_xlat1 = u_xlat1 * u_xlat2;
					    u_xlat13 = u_xlat1.w;
					    u_xlat13 = clamp(u_xlat13, 0.0, 1.0);
					    u_xlat1.w = u_xlat13 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat4.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat4.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendMul" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					bool u_xlatb1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1.x = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat0.w = u_xlat0.w * u_xlat1.x;
					    u_xlat0 = u_xlat0 * vs_COLOR0;
					    u_xlat0.w = u_xlat0.w;
					    u_xlat0.w = clamp(u_xlat0.w, 0.0, 1.0);
					    u_xlat1 = u_xlat0 + vec4(-1.0, -1.0, -1.0, -1.0);
					    SV_Target0 = u_xlat0.wwww * u_xlat1 + vec4(1.0, 1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					bool u_xlatb1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1.x = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat0.w = u_xlat0.w * u_xlat1.x;
					    u_xlat0 = u_xlat0 * vs_COLOR0;
					    u_xlat0.w = u_xlat0.w;
					    u_xlat0.w = clamp(u_xlat0.w, 0.0, 1.0);
					    u_xlat1 = u_xlat0 + vec4(-1.0, -1.0, -1.0, -1.0);
					    SV_Target0 = u_xlat0.wwww * u_xlat1 + vec4(1.0, 1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendMul" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[7];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					bool u_xlatb2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2.x = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2.x;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat0.w = u_xlat0.w;
					    u_xlat0.w = clamp(u_xlat0.w, 0.0, 1.0);
					    u_xlat1 = u_xlat0 + vec4(-1.0, -1.0, -1.0, -1.0);
					    SV_Target0 = u_xlat0.wwww * u_xlat1 + vec4(1.0, 1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[6];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					bool u_xlatb2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2.x = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2.x;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat0.w = u_xlat0.w;
					    u_xlat0.w = clamp(u_xlat0.w, 0.0, 1.0);
					    u_xlat1 = u_xlat0 + vec4(-1.0, -1.0, -1.0, -1.0);
					    SV_Target0 = u_xlat0.wwww * u_xlat1 + vec4(1.0, 1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendMul" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3.x;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3.x;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendMul" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					bool u_xlatb2;
					float u_xlat9;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2.x = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2.x;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat0.w = u_xlat0.w;
					    u_xlat0.w = clamp(u_xlat0.w, 0.0, 1.0);
					    u_xlat1 = u_xlat0 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat0.xyz = u_xlat0.www * u_xlat1.xyz;
					    SV_Target0.w = u_xlat0.w * u_xlat1.w + 1.0;
					    u_xlat9 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat9 = (-u_xlat9) + 1.0;
					    u_xlat9 = u_xlat9 * _ProjectionParams.z;
					    u_xlat9 = max(u_xlat9, 0.0);
					    u_xlat9 = u_xlat9 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat9 = clamp(u_xlat9, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat9) * u_xlat0.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					bool u_xlatb2;
					float u_xlat9;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2.x = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2.x;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat0.w = u_xlat0.w;
					    u_xlat0.w = clamp(u_xlat0.w, 0.0, 1.0);
					    u_xlat1 = u_xlat0 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat0.xyz = u_xlat0.www * u_xlat1.xyz;
					    SV_Target0.w = u_xlat0.w * u_xlat1.w + 1.0;
					    u_xlat9 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat9 = (-u_xlat9) + 1.0;
					    u_xlat9 = u_xlat9 * _ProjectionParams.z;
					    u_xlat9 = max(u_xlat9, 0.0);
					    u_xlat9 = u_xlat9 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat9 = clamp(u_xlat9, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat9) * u_xlat0.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendMul" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3.x;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3.x;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendMul" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					bool u_xlatb2;
					float u_xlat9;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2.x = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2.x;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat0.w = u_xlat0.w;
					    u_xlat0.w = clamp(u_xlat0.w, 0.0, 1.0);
					    u_xlat1 = u_xlat0 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat0.xyz = u_xlat0.www * u_xlat1.xyz;
					    SV_Target0.w = u_xlat0.w * u_xlat1.w + 1.0;
					    u_xlat9 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat9 = (-u_xlat9) + 1.0;
					    u_xlat9 = u_xlat9 * _ProjectionParams.z;
					    u_xlat9 = max(u_xlat9, 0.0);
					    u_xlat9 = u_xlat9 * unity_FogParams.y;
					    u_xlat9 = exp2((-u_xlat9));
					    u_xlat9 = min(u_xlat9, 1.0);
					    SV_Target0.xyz = vec3(u_xlat9) * u_xlat0.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					bool u_xlatb2;
					float u_xlat9;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2.x = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2.x;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat0.w = u_xlat0.w;
					    u_xlat0.w = clamp(u_xlat0.w, 0.0, 1.0);
					    u_xlat1 = u_xlat0 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat0.xyz = u_xlat0.www * u_xlat1.xyz;
					    SV_Target0.w = u_xlat0.w * u_xlat1.w + 1.0;
					    u_xlat9 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat9 = (-u_xlat9) + 1.0;
					    u_xlat9 = u_xlat9 * _ProjectionParams.z;
					    u_xlat9 = max(u_xlat9, 0.0);
					    u_xlat9 = u_xlat9 * unity_FogParams.y;
					    u_xlat9 = exp2((-u_xlat9));
					    u_xlat9 = min(u_xlat9, 1.0);
					    SV_Target0.xyz = vec3(u_xlat9) * u_xlat0.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendMul" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3.x;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3.x;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendMul" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					bool u_xlatb2;
					float u_xlat9;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2.x = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2.x;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat0.w = u_xlat0.w;
					    u_xlat0.w = clamp(u_xlat0.w, 0.0, 1.0);
					    u_xlat1 = u_xlat0 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat0.xyz = u_xlat0.www * u_xlat1.xyz;
					    SV_Target0.w = u_xlat0.w * u_xlat1.w + 1.0;
					    u_xlat9 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat9 = (-u_xlat9) + 1.0;
					    u_xlat9 = u_xlat9 * _ProjectionParams.z;
					    u_xlat9 = max(u_xlat9, 0.0);
					    u_xlat9 = u_xlat9 * unity_FogParams.x;
					    u_xlat9 = u_xlat9 * (-u_xlat9);
					    u_xlat9 = exp2(u_xlat9);
					    SV_Target0.xyz = vec3(u_xlat9) * u_xlat0.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					bool u_xlatb2;
					float u_xlat9;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2.x = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2.x;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat0.w = u_xlat0.w;
					    u_xlat0.w = clamp(u_xlat0.w, 0.0, 1.0);
					    u_xlat1 = u_xlat0 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat0.xyz = u_xlat0.www * u_xlat1.xyz;
					    SV_Target0.w = u_xlat0.w * u_xlat1.w + 1.0;
					    u_xlat9 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat9 = (-u_xlat9) + 1.0;
					    u_xlat9 = u_xlat9 * _ProjectionParams.z;
					    u_xlat9 = max(u_xlat9, 0.0);
					    u_xlat9 = u_xlat9 * unity_FogParams.x;
					    u_xlat9 = u_xlat9 * (-u_xlat9);
					    u_xlat9 = exp2(u_xlat9);
					    SV_Target0.xyz = vec3(u_xlat9) * u_xlat0.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendMul" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[7];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					bool u_xlatb2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2.x = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2.x;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat0.w = u_xlat0.w;
					    u_xlat0.w = clamp(u_xlat0.w, 0.0, 1.0);
					    u_xlat1 = u_xlat0 + vec4(-1.0, -1.0, -1.0, -1.0);
					    SV_Target0 = u_xlat0.wwww * u_xlat1 + vec4(1.0, 1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[6];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					bool u_xlatb2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2.x = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2.x;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat0.w = u_xlat0.w;
					    u_xlat0.w = clamp(u_xlat0.w, 0.0, 1.0);
					    u_xlat1 = u_xlat0 + vec4(-1.0, -1.0, -1.0, -1.0);
					    SV_Target0 = u_xlat0.wwww * u_xlat1 + vec4(1.0, 1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendMul" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[7];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					bool u_xlatb2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2.x = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2.x;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat0.w = u_xlat0.w;
					    u_xlat0.w = clamp(u_xlat0.w, 0.0, 1.0);
					    u_xlat1 = u_xlat0 + vec4(-1.0, -1.0, -1.0, -1.0);
					    SV_Target0 = u_xlat0.wwww * u_xlat1 + vec4(1.0, 1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[6];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					bool u_xlatb2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2.x = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2.x;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat0.w = u_xlat0.w;
					    u_xlat0.w = clamp(u_xlat0.w, 0.0, 1.0);
					    u_xlat1 = u_xlat0 + vec4(-1.0, -1.0, -1.0, -1.0);
					    SV_Target0 = u_xlat0.wwww * u_xlat1 + vec4(1.0, 1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendMul" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					bool u_xlatb2;
					float u_xlat9;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2.x = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2.x;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat0.w = u_xlat0.w;
					    u_xlat0.w = clamp(u_xlat0.w, 0.0, 1.0);
					    u_xlat1 = u_xlat0 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat0.xyz = u_xlat0.www * u_xlat1.xyz;
					    SV_Target0.w = u_xlat0.w * u_xlat1.w + 1.0;
					    u_xlat9 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat9 = (-u_xlat9) + 1.0;
					    u_xlat9 = u_xlat9 * _ProjectionParams.z;
					    u_xlat9 = max(u_xlat9, 0.0);
					    u_xlat9 = u_xlat9 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat9 = clamp(u_xlat9, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat9) * u_xlat0.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					bool u_xlatb2;
					float u_xlat9;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2.x = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2.x;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat0.w = u_xlat0.w;
					    u_xlat0.w = clamp(u_xlat0.w, 0.0, 1.0);
					    u_xlat1 = u_xlat0 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat0.xyz = u_xlat0.www * u_xlat1.xyz;
					    SV_Target0.w = u_xlat0.w * u_xlat1.w + 1.0;
					    u_xlat9 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat9 = (-u_xlat9) + 1.0;
					    u_xlat9 = u_xlat9 * _ProjectionParams.z;
					    u_xlat9 = max(u_xlat9, 0.0);
					    u_xlat9 = u_xlat9 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat9 = clamp(u_xlat9, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat9) * u_xlat0.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendMul" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					bool u_xlatb2;
					float u_xlat9;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2.x = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2.x;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat0.w = u_xlat0.w;
					    u_xlat0.w = clamp(u_xlat0.w, 0.0, 1.0);
					    u_xlat1 = u_xlat0 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat0.xyz = u_xlat0.www * u_xlat1.xyz;
					    SV_Target0.w = u_xlat0.w * u_xlat1.w + 1.0;
					    u_xlat9 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat9 = (-u_xlat9) + 1.0;
					    u_xlat9 = u_xlat9 * _ProjectionParams.z;
					    u_xlat9 = max(u_xlat9, 0.0);
					    u_xlat9 = u_xlat9 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat9 = clamp(u_xlat9, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat9) * u_xlat0.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					bool u_xlatb2;
					float u_xlat9;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2.x = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2.x;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat0.w = u_xlat0.w;
					    u_xlat0.w = clamp(u_xlat0.w, 0.0, 1.0);
					    u_xlat1 = u_xlat0 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat0.xyz = u_xlat0.www * u_xlat1.xyz;
					    SV_Target0.w = u_xlat0.w * u_xlat1.w + 1.0;
					    u_xlat9 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat9 = (-u_xlat9) + 1.0;
					    u_xlat9 = u_xlat9 * _ProjectionParams.z;
					    u_xlat9 = max(u_xlat9, 0.0);
					    u_xlat9 = u_xlat9 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat9 = clamp(u_xlat9, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat9) * u_xlat0.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendMul" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					bool u_xlatb2;
					float u_xlat9;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2.x = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2.x;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat0.w = u_xlat0.w;
					    u_xlat0.w = clamp(u_xlat0.w, 0.0, 1.0);
					    u_xlat1 = u_xlat0 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat0.xyz = u_xlat0.www * u_xlat1.xyz;
					    SV_Target0.w = u_xlat0.w * u_xlat1.w + 1.0;
					    u_xlat9 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat9 = (-u_xlat9) + 1.0;
					    u_xlat9 = u_xlat9 * _ProjectionParams.z;
					    u_xlat9 = max(u_xlat9, 0.0);
					    u_xlat9 = u_xlat9 * unity_FogParams.y;
					    u_xlat9 = exp2((-u_xlat9));
					    u_xlat9 = min(u_xlat9, 1.0);
					    SV_Target0.xyz = vec3(u_xlat9) * u_xlat0.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					bool u_xlatb2;
					float u_xlat9;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2.x = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2.x;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat0.w = u_xlat0.w;
					    u_xlat0.w = clamp(u_xlat0.w, 0.0, 1.0);
					    u_xlat1 = u_xlat0 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat0.xyz = u_xlat0.www * u_xlat1.xyz;
					    SV_Target0.w = u_xlat0.w * u_xlat1.w + 1.0;
					    u_xlat9 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat9 = (-u_xlat9) + 1.0;
					    u_xlat9 = u_xlat9 * _ProjectionParams.z;
					    u_xlat9 = max(u_xlat9, 0.0);
					    u_xlat9 = u_xlat9 * unity_FogParams.y;
					    u_xlat9 = exp2((-u_xlat9));
					    u_xlat9 = min(u_xlat9, 1.0);
					    SV_Target0.xyz = vec3(u_xlat9) * u_xlat0.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendMul" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					bool u_xlatb2;
					float u_xlat9;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2.x = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2.x;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat0.w = u_xlat0.w;
					    u_xlat0.w = clamp(u_xlat0.w, 0.0, 1.0);
					    u_xlat1 = u_xlat0 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat0.xyz = u_xlat0.www * u_xlat1.xyz;
					    SV_Target0.w = u_xlat0.w * u_xlat1.w + 1.0;
					    u_xlat9 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat9 = (-u_xlat9) + 1.0;
					    u_xlat9 = u_xlat9 * _ProjectionParams.z;
					    u_xlat9 = max(u_xlat9, 0.0);
					    u_xlat9 = u_xlat9 * unity_FogParams.y;
					    u_xlat9 = exp2((-u_xlat9));
					    u_xlat9 = min(u_xlat9, 1.0);
					    SV_Target0.xyz = vec3(u_xlat9) * u_xlat0.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					bool u_xlatb2;
					float u_xlat9;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2.x = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2.x;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat0.w = u_xlat0.w;
					    u_xlat0.w = clamp(u_xlat0.w, 0.0, 1.0);
					    u_xlat1 = u_xlat0 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat0.xyz = u_xlat0.www * u_xlat1.xyz;
					    SV_Target0.w = u_xlat0.w * u_xlat1.w + 1.0;
					    u_xlat9 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat9 = (-u_xlat9) + 1.0;
					    u_xlat9 = u_xlat9 * _ProjectionParams.z;
					    u_xlat9 = max(u_xlat9, 0.0);
					    u_xlat9 = u_xlat9 * unity_FogParams.y;
					    u_xlat9 = exp2((-u_xlat9));
					    u_xlat9 = min(u_xlat9, 1.0);
					    SV_Target0.xyz = vec3(u_xlat9) * u_xlat0.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendMul" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					bool u_xlatb2;
					float u_xlat9;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2.x = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2.x;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat0.w = u_xlat0.w;
					    u_xlat0.w = clamp(u_xlat0.w, 0.0, 1.0);
					    u_xlat1 = u_xlat0 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat0.xyz = u_xlat0.www * u_xlat1.xyz;
					    SV_Target0.w = u_xlat0.w * u_xlat1.w + 1.0;
					    u_xlat9 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat9 = (-u_xlat9) + 1.0;
					    u_xlat9 = u_xlat9 * _ProjectionParams.z;
					    u_xlat9 = max(u_xlat9, 0.0);
					    u_xlat9 = u_xlat9 * unity_FogParams.x;
					    u_xlat9 = u_xlat9 * (-u_xlat9);
					    u_xlat9 = exp2(u_xlat9);
					    SV_Target0.xyz = vec3(u_xlat9) * u_xlat0.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					bool u_xlatb2;
					float u_xlat9;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2.x = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2.x;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat0.w = u_xlat0.w;
					    u_xlat0.w = clamp(u_xlat0.w, 0.0, 1.0);
					    u_xlat1 = u_xlat0 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat0.xyz = u_xlat0.www * u_xlat1.xyz;
					    SV_Target0.w = u_xlat0.w * u_xlat1.w + 1.0;
					    u_xlat9 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat9 = (-u_xlat9) + 1.0;
					    u_xlat9 = u_xlat9 * _ProjectionParams.z;
					    u_xlat9 = max(u_xlat9, 0.0);
					    u_xlat9 = u_xlat9 * unity_FogParams.x;
					    u_xlat9 = u_xlat9 * (-u_xlat9);
					    u_xlat9 = exp2(u_xlat9);
					    SV_Target0.xyz = vec3(u_xlat9) * u_xlat0.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendMul" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					bool u_xlatb2;
					float u_xlat9;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2.x = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2.x;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat0.w = u_xlat0.w;
					    u_xlat0.w = clamp(u_xlat0.w, 0.0, 1.0);
					    u_xlat1 = u_xlat0 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat0.xyz = u_xlat0.www * u_xlat1.xyz;
					    SV_Target0.w = u_xlat0.w * u_xlat1.w + 1.0;
					    u_xlat9 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat9 = (-u_xlat9) + 1.0;
					    u_xlat9 = u_xlat9 * _ProjectionParams.z;
					    u_xlat9 = max(u_xlat9, 0.0);
					    u_xlat9 = u_xlat9 * unity_FogParams.x;
					    u_xlat9 = u_xlat9 * (-u_xlat9);
					    u_xlat9 = exp2(u_xlat9);
					    SV_Target0.xyz = vec3(u_xlat9) * u_xlat0.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					bool u_xlatb2;
					float u_xlat9;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2.x = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2.x;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat0.w = u_xlat0.w;
					    u_xlat0.w = clamp(u_xlat0.w, 0.0, 1.0);
					    u_xlat1 = u_xlat0 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat0.xyz = u_xlat0.www * u_xlat1.xyz;
					    SV_Target0.w = u_xlat0.w * u_xlat1.w + 1.0;
					    u_xlat9 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat9 = (-u_xlat9) + 1.0;
					    u_xlat9 = u_xlat9 * _ProjectionParams.z;
					    u_xlat9 = max(u_xlat9, 0.0);
					    u_xlat9 = u_xlat9 * unity_FogParams.x;
					    u_xlat9 = u_xlat9 * (-u_xlat9);
					    u_xlat9 = exp2(u_xlat9);
					    SV_Target0.xyz = vec3(u_xlat9) * u_xlat0.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendMul" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					bool u_xlatb1;
					float u_xlat6;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1.x = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat0.w = u_xlat0.w * u_xlat1.x;
					    u_xlat0 = u_xlat0 * vs_COLOR0;
					    u_xlat6 = u_xlat0.w;
					    u_xlat6 = clamp(u_xlat6, 0.0, 1.0);
					    u_xlat0.w = u_xlat6 * vs_TEXCOORD4;
					    u_xlat1 = u_xlat0 + vec4(-1.0, -1.0, -1.0, -1.0);
					    SV_Target0 = u_xlat0.wwww * u_xlat1 + vec4(1.0, 1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					bool u_xlatb1;
					float u_xlat6;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1.x = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat0.w = u_xlat0.w * u_xlat1.x;
					    u_xlat0 = u_xlat0 * vs_COLOR0;
					    u_xlat6 = u_xlat0.w;
					    u_xlat6 = clamp(u_xlat6, 0.0, 1.0);
					    u_xlat0.w = u_xlat6 * vs_TEXCOORD4;
					    u_xlat1 = u_xlat0 + vec4(-1.0, -1.0, -1.0, -1.0);
					    SV_Target0 = u_xlat0.wwww * u_xlat1 + vec4(1.0, 1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendMul" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[7];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					bool u_xlatb2;
					float u_xlat9;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2.x = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2.x;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat9 = u_xlat0.w;
					    u_xlat9 = clamp(u_xlat9, 0.0, 1.0);
					    u_xlat0.w = u_xlat9 * vs_TEXCOORD4;
					    u_xlat1 = u_xlat0 + vec4(-1.0, -1.0, -1.0, -1.0);
					    SV_Target0 = u_xlat0.wwww * u_xlat1 + vec4(1.0, 1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[6];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					bool u_xlatb2;
					float u_xlat9;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2.x = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2.x;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat9 = u_xlat0.w;
					    u_xlat9 = clamp(u_xlat9, 0.0, 1.0);
					    u_xlat0.w = u_xlat9 * vs_TEXCOORD4;
					    u_xlat1 = u_xlat0 + vec4(-1.0, -1.0, -1.0, -1.0);
					    SV_Target0 = u_xlat0.wwww * u_xlat1 + vec4(1.0, 1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendMul" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3.x;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3.x;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendMul" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					bool u_xlatb2;
					float u_xlat9;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2.x = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2.x;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat9 = u_xlat0.w;
					    u_xlat9 = clamp(u_xlat9, 0.0, 1.0);
					    u_xlat0.w = u_xlat9 * vs_TEXCOORD4;
					    u_xlat1 = u_xlat0 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat0.xyz = u_xlat0.www * u_xlat1.xyz;
					    SV_Target0.w = u_xlat0.w * u_xlat1.w + 1.0;
					    u_xlat9 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat9 = (-u_xlat9) + 1.0;
					    u_xlat9 = u_xlat9 * _ProjectionParams.z;
					    u_xlat9 = max(u_xlat9, 0.0);
					    u_xlat9 = u_xlat9 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat9 = clamp(u_xlat9, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat9) * u_xlat0.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					bool u_xlatb2;
					float u_xlat9;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2.x = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2.x;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat9 = u_xlat0.w;
					    u_xlat9 = clamp(u_xlat9, 0.0, 1.0);
					    u_xlat0.w = u_xlat9 * vs_TEXCOORD4;
					    u_xlat1 = u_xlat0 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat0.xyz = u_xlat0.www * u_xlat1.xyz;
					    SV_Target0.w = u_xlat0.w * u_xlat1.w + 1.0;
					    u_xlat9 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat9 = (-u_xlat9) + 1.0;
					    u_xlat9 = u_xlat9 * _ProjectionParams.z;
					    u_xlat9 = max(u_xlat9, 0.0);
					    u_xlat9 = u_xlat9 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat9 = clamp(u_xlat9, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat9) * u_xlat0.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendMul" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3.x;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3.x;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendMul" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					bool u_xlatb2;
					float u_xlat9;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2.x = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2.x;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat9 = u_xlat0.w;
					    u_xlat9 = clamp(u_xlat9, 0.0, 1.0);
					    u_xlat0.w = u_xlat9 * vs_TEXCOORD4;
					    u_xlat1 = u_xlat0 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat0.xyz = u_xlat0.www * u_xlat1.xyz;
					    SV_Target0.w = u_xlat0.w * u_xlat1.w + 1.0;
					    u_xlat9 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat9 = (-u_xlat9) + 1.0;
					    u_xlat9 = u_xlat9 * _ProjectionParams.z;
					    u_xlat9 = max(u_xlat9, 0.0);
					    u_xlat9 = u_xlat9 * unity_FogParams.y;
					    u_xlat9 = exp2((-u_xlat9));
					    u_xlat9 = min(u_xlat9, 1.0);
					    SV_Target0.xyz = vec3(u_xlat9) * u_xlat0.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					bool u_xlatb2;
					float u_xlat9;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2.x = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2.x;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat9 = u_xlat0.w;
					    u_xlat9 = clamp(u_xlat9, 0.0, 1.0);
					    u_xlat0.w = u_xlat9 * vs_TEXCOORD4;
					    u_xlat1 = u_xlat0 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat0.xyz = u_xlat0.www * u_xlat1.xyz;
					    SV_Target0.w = u_xlat0.w * u_xlat1.w + 1.0;
					    u_xlat9 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat9 = (-u_xlat9) + 1.0;
					    u_xlat9 = u_xlat9 * _ProjectionParams.z;
					    u_xlat9 = max(u_xlat9, 0.0);
					    u_xlat9 = u_xlat9 * unity_FogParams.y;
					    u_xlat9 = exp2((-u_xlat9));
					    u_xlat9 = min(u_xlat9, 1.0);
					    SV_Target0.xyz = vec3(u_xlat9) * u_xlat0.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendMul" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3.x;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3.x;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendMul" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					bool u_xlatb2;
					float u_xlat9;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2.x = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2.x;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat9 = u_xlat0.w;
					    u_xlat9 = clamp(u_xlat9, 0.0, 1.0);
					    u_xlat0.w = u_xlat9 * vs_TEXCOORD4;
					    u_xlat1 = u_xlat0 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat0.xyz = u_xlat0.www * u_xlat1.xyz;
					    SV_Target0.w = u_xlat0.w * u_xlat1.w + 1.0;
					    u_xlat9 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat9 = (-u_xlat9) + 1.0;
					    u_xlat9 = u_xlat9 * _ProjectionParams.z;
					    u_xlat9 = max(u_xlat9, 0.0);
					    u_xlat9 = u_xlat9 * unity_FogParams.x;
					    u_xlat9 = u_xlat9 * (-u_xlat9);
					    u_xlat9 = exp2(u_xlat9);
					    SV_Target0.xyz = vec3(u_xlat9) * u_xlat0.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					bool u_xlatb2;
					float u_xlat9;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2.x = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2.x;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat9 = u_xlat0.w;
					    u_xlat9 = clamp(u_xlat9, 0.0, 1.0);
					    u_xlat0.w = u_xlat9 * vs_TEXCOORD4;
					    u_xlat1 = u_xlat0 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat0.xyz = u_xlat0.www * u_xlat1.xyz;
					    SV_Target0.w = u_xlat0.w * u_xlat1.w + 1.0;
					    u_xlat9 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat9 = (-u_xlat9) + 1.0;
					    u_xlat9 = u_xlat9 * _ProjectionParams.z;
					    u_xlat9 = max(u_xlat9, 0.0);
					    u_xlat9 = u_xlat9 * unity_FogParams.x;
					    u_xlat9 = u_xlat9 * (-u_xlat9);
					    u_xlat9 = exp2(u_xlat9);
					    SV_Target0.xyz = vec3(u_xlat9) * u_xlat0.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendMul" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[7];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					bool u_xlatb2;
					float u_xlat9;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2.x = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2.x;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat9 = u_xlat0.w;
					    u_xlat9 = clamp(u_xlat9, 0.0, 1.0);
					    u_xlat0.w = u_xlat9 * vs_TEXCOORD4;
					    u_xlat1 = u_xlat0 + vec4(-1.0, -1.0, -1.0, -1.0);
					    SV_Target0 = u_xlat0.wwww * u_xlat1 + vec4(1.0, 1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[6];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					bool u_xlatb2;
					float u_xlat9;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2.x = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2.x;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat9 = u_xlat0.w;
					    u_xlat9 = clamp(u_xlat9, 0.0, 1.0);
					    u_xlat0.w = u_xlat9 * vs_TEXCOORD4;
					    u_xlat1 = u_xlat0 + vec4(-1.0, -1.0, -1.0, -1.0);
					    SV_Target0 = u_xlat0.wwww * u_xlat1 + vec4(1.0, 1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendMul" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[7];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					bool u_xlatb2;
					float u_xlat9;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2.x = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2.x;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat9 = u_xlat0.w;
					    u_xlat9 = clamp(u_xlat9, 0.0, 1.0);
					    u_xlat0.w = u_xlat9 * vs_TEXCOORD4;
					    u_xlat1 = u_xlat0 + vec4(-1.0, -1.0, -1.0, -1.0);
					    SV_Target0 = u_xlat0.wwww * u_xlat1 + vec4(1.0, 1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[6];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					bool u_xlatb2;
					float u_xlat9;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2.x = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2.x;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat9 = u_xlat0.w;
					    u_xlat9 = clamp(u_xlat9, 0.0, 1.0);
					    u_xlat0.w = u_xlat9 * vs_TEXCOORD4;
					    u_xlat1 = u_xlat0 + vec4(-1.0, -1.0, -1.0, -1.0);
					    SV_Target0 = u_xlat0.wwww * u_xlat1 + vec4(1.0, 1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendMul" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					bool u_xlatb2;
					float u_xlat9;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2.x = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2.x;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat9 = u_xlat0.w;
					    u_xlat9 = clamp(u_xlat9, 0.0, 1.0);
					    u_xlat0.w = u_xlat9 * vs_TEXCOORD4;
					    u_xlat1 = u_xlat0 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat0.xyz = u_xlat0.www * u_xlat1.xyz;
					    SV_Target0.w = u_xlat0.w * u_xlat1.w + 1.0;
					    u_xlat9 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat9 = (-u_xlat9) + 1.0;
					    u_xlat9 = u_xlat9 * _ProjectionParams.z;
					    u_xlat9 = max(u_xlat9, 0.0);
					    u_xlat9 = u_xlat9 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat9 = clamp(u_xlat9, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat9) * u_xlat0.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					bool u_xlatb2;
					float u_xlat9;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2.x = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2.x;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat9 = u_xlat0.w;
					    u_xlat9 = clamp(u_xlat9, 0.0, 1.0);
					    u_xlat0.w = u_xlat9 * vs_TEXCOORD4;
					    u_xlat1 = u_xlat0 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat0.xyz = u_xlat0.www * u_xlat1.xyz;
					    SV_Target0.w = u_xlat0.w * u_xlat1.w + 1.0;
					    u_xlat9 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat9 = (-u_xlat9) + 1.0;
					    u_xlat9 = u_xlat9 * _ProjectionParams.z;
					    u_xlat9 = max(u_xlat9, 0.0);
					    u_xlat9 = u_xlat9 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat9 = clamp(u_xlat9, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat9) * u_xlat0.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendMul" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					bool u_xlatb2;
					float u_xlat9;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2.x = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2.x;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat9 = u_xlat0.w;
					    u_xlat9 = clamp(u_xlat9, 0.0, 1.0);
					    u_xlat0.w = u_xlat9 * vs_TEXCOORD4;
					    u_xlat1 = u_xlat0 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat0.xyz = u_xlat0.www * u_xlat1.xyz;
					    SV_Target0.w = u_xlat0.w * u_xlat1.w + 1.0;
					    u_xlat9 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat9 = (-u_xlat9) + 1.0;
					    u_xlat9 = u_xlat9 * _ProjectionParams.z;
					    u_xlat9 = max(u_xlat9, 0.0);
					    u_xlat9 = u_xlat9 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat9 = clamp(u_xlat9, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat9) * u_xlat0.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					bool u_xlatb2;
					float u_xlat9;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2.x = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2.x;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat9 = u_xlat0.w;
					    u_xlat9 = clamp(u_xlat9, 0.0, 1.0);
					    u_xlat0.w = u_xlat9 * vs_TEXCOORD4;
					    u_xlat1 = u_xlat0 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat0.xyz = u_xlat0.www * u_xlat1.xyz;
					    SV_Target0.w = u_xlat0.w * u_xlat1.w + 1.0;
					    u_xlat9 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat9 = (-u_xlat9) + 1.0;
					    u_xlat9 = u_xlat9 * _ProjectionParams.z;
					    u_xlat9 = max(u_xlat9, 0.0);
					    u_xlat9 = u_xlat9 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat9 = clamp(u_xlat9, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat9) * u_xlat0.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendMul" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					bool u_xlatb2;
					float u_xlat9;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2.x = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2.x;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat9 = u_xlat0.w;
					    u_xlat9 = clamp(u_xlat9, 0.0, 1.0);
					    u_xlat0.w = u_xlat9 * vs_TEXCOORD4;
					    u_xlat1 = u_xlat0 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat0.xyz = u_xlat0.www * u_xlat1.xyz;
					    SV_Target0.w = u_xlat0.w * u_xlat1.w + 1.0;
					    u_xlat9 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat9 = (-u_xlat9) + 1.0;
					    u_xlat9 = u_xlat9 * _ProjectionParams.z;
					    u_xlat9 = max(u_xlat9, 0.0);
					    u_xlat9 = u_xlat9 * unity_FogParams.y;
					    u_xlat9 = exp2((-u_xlat9));
					    u_xlat9 = min(u_xlat9, 1.0);
					    SV_Target0.xyz = vec3(u_xlat9) * u_xlat0.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					bool u_xlatb2;
					float u_xlat9;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2.x = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2.x;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat9 = u_xlat0.w;
					    u_xlat9 = clamp(u_xlat9, 0.0, 1.0);
					    u_xlat0.w = u_xlat9 * vs_TEXCOORD4;
					    u_xlat1 = u_xlat0 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat0.xyz = u_xlat0.www * u_xlat1.xyz;
					    SV_Target0.w = u_xlat0.w * u_xlat1.w + 1.0;
					    u_xlat9 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat9 = (-u_xlat9) + 1.0;
					    u_xlat9 = u_xlat9 * _ProjectionParams.z;
					    u_xlat9 = max(u_xlat9, 0.0);
					    u_xlat9 = u_xlat9 * unity_FogParams.y;
					    u_xlat9 = exp2((-u_xlat9));
					    u_xlat9 = min(u_xlat9, 1.0);
					    SV_Target0.xyz = vec3(u_xlat9) * u_xlat0.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendMul" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					bool u_xlatb2;
					float u_xlat9;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2.x = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2.x;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat9 = u_xlat0.w;
					    u_xlat9 = clamp(u_xlat9, 0.0, 1.0);
					    u_xlat0.w = u_xlat9 * vs_TEXCOORD4;
					    u_xlat1 = u_xlat0 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat0.xyz = u_xlat0.www * u_xlat1.xyz;
					    SV_Target0.w = u_xlat0.w * u_xlat1.w + 1.0;
					    u_xlat9 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat9 = (-u_xlat9) + 1.0;
					    u_xlat9 = u_xlat9 * _ProjectionParams.z;
					    u_xlat9 = max(u_xlat9, 0.0);
					    u_xlat9 = u_xlat9 * unity_FogParams.y;
					    u_xlat9 = exp2((-u_xlat9));
					    u_xlat9 = min(u_xlat9, 1.0);
					    SV_Target0.xyz = vec3(u_xlat9) * u_xlat0.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					bool u_xlatb2;
					float u_xlat9;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2.x = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2.x;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat9 = u_xlat0.w;
					    u_xlat9 = clamp(u_xlat9, 0.0, 1.0);
					    u_xlat0.w = u_xlat9 * vs_TEXCOORD4;
					    u_xlat1 = u_xlat0 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat0.xyz = u_xlat0.www * u_xlat1.xyz;
					    SV_Target0.w = u_xlat0.w * u_xlat1.w + 1.0;
					    u_xlat9 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat9 = (-u_xlat9) + 1.0;
					    u_xlat9 = u_xlat9 * _ProjectionParams.z;
					    u_xlat9 = max(u_xlat9, 0.0);
					    u_xlat9 = u_xlat9 * unity_FogParams.y;
					    u_xlat9 = exp2((-u_xlat9));
					    u_xlat9 = min(u_xlat9, 1.0);
					    SV_Target0.xyz = vec3(u_xlat9) * u_xlat0.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendMul" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					bool u_xlatb2;
					float u_xlat9;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2.x = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2.x;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat9 = u_xlat0.w;
					    u_xlat9 = clamp(u_xlat9, 0.0, 1.0);
					    u_xlat0.w = u_xlat9 * vs_TEXCOORD4;
					    u_xlat1 = u_xlat0 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat0.xyz = u_xlat0.www * u_xlat1.xyz;
					    SV_Target0.w = u_xlat0.w * u_xlat1.w + 1.0;
					    u_xlat9 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat9 = (-u_xlat9) + 1.0;
					    u_xlat9 = u_xlat9 * _ProjectionParams.z;
					    u_xlat9 = max(u_xlat9, 0.0);
					    u_xlat9 = u_xlat9 * unity_FogParams.x;
					    u_xlat9 = u_xlat9 * (-u_xlat9);
					    u_xlat9 = exp2(u_xlat9);
					    SV_Target0.xyz = vec3(u_xlat9) * u_xlat0.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					bool u_xlatb2;
					float u_xlat9;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2.x = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2.x;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat9 = u_xlat0.w;
					    u_xlat9 = clamp(u_xlat9, 0.0, 1.0);
					    u_xlat0.w = u_xlat9 * vs_TEXCOORD4;
					    u_xlat1 = u_xlat0 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat0.xyz = u_xlat0.www * u_xlat1.xyz;
					    SV_Target0.w = u_xlat0.w * u_xlat1.w + 1.0;
					    u_xlat9 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat9 = (-u_xlat9) + 1.0;
					    u_xlat9 = u_xlat9 * _ProjectionParams.z;
					    u_xlat9 = max(u_xlat9, 0.0);
					    u_xlat9 = u_xlat9 * unity_FogParams.x;
					    u_xlat9 = u_xlat9 * (-u_xlat9);
					    u_xlat9 = exp2(u_xlat9);
					    SV_Target0.xyz = vec3(u_xlat9) * u_xlat0.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendMul" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					bool u_xlatb2;
					float u_xlat9;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2.x = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2.x;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat9 = u_xlat0.w;
					    u_xlat9 = clamp(u_xlat9, 0.0, 1.0);
					    u_xlat0.w = u_xlat9 * vs_TEXCOORD4;
					    u_xlat1 = u_xlat0 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat0.xyz = u_xlat0.www * u_xlat1.xyz;
					    SV_Target0.w = u_xlat0.w * u_xlat1.w + 1.0;
					    u_xlat9 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat9 = (-u_xlat9) + 1.0;
					    u_xlat9 = u_xlat9 * _ProjectionParams.z;
					    u_xlat9 = max(u_xlat9, 0.0);
					    u_xlat9 = u_xlat9 * unity_FogParams.x;
					    u_xlat9 = u_xlat9 * (-u_xlat9);
					    u_xlat9 = exp2(u_xlat9);
					    SV_Target0.xyz = vec3(u_xlat9) * u_xlat0.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					bool u_xlatb2;
					float u_xlat9;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2.x = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2.x;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat9 = u_xlat0.w;
					    u_xlat9 = clamp(u_xlat9, 0.0, 1.0);
					    u_xlat0.w = u_xlat9 * vs_TEXCOORD4;
					    u_xlat1 = u_xlat0 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat0.xyz = u_xlat0.www * u_xlat1.xyz;
					    SV_Target0.w = u_xlat0.w * u_xlat1.w + 1.0;
					    u_xlat9 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat9 = (-u_xlat9) + 1.0;
					    u_xlat9 = u_xlat9 * _ProjectionParams.z;
					    u_xlat9 = max(u_xlat9, 0.0);
					    u_xlat9 = u_xlat9 * unity_FogParams.x;
					    u_xlat9 = u_xlat9 * (-u_xlat9);
					    u_xlat9 = exp2(u_xlat9);
					    SV_Target0.xyz = vec3(u_xlat9) * u_xlat0.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendMul" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlat0.xyz = u_xlat0.xyz + u_xlat0.xyz;
					    u_xlat0.xyz = u_xlat0.xyz * _TintColor.xyz;
					    u_xlat1.xyz = u_xlat0.xyz * vs_COLOR0.xyz;
					    u_xlat0.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlatb0 = u_xlat0.w>=u_xlat0.x;
					    u_xlat1.w = u_xlatb0 ? 1.0 : float(0.0);
					    u_xlat0 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    SV_Target0 = u_xlat1.wwww * u_xlat0 + vec4(1.0, 1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlat0.xyz = u_xlat0.xyz + u_xlat0.xyz;
					    u_xlat0.xyz = u_xlat0.xyz * _TintColor.xyz;
					    u_xlat1.xyz = u_xlat0.xyz * vs_COLOR0.xyz;
					    u_xlat0.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlatb0 = u_xlat0.w>=u_xlat0.x;
					    u_xlat1.w = u_xlatb0 ? 1.0 : float(0.0);
					    u_xlat0 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    SV_Target0 = u_xlat1.wwww * u_xlat0 + vec4(1.0, 1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendMul" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[7];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb0 = u_xlat1.w>=u_xlat0.x;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat1.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat1.w = u_xlatb0 ? 1.0 : float(0.0);
					    u_xlat0 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    SV_Target0 = u_xlat1.wwww * u_xlat0 + vec4(1.0, 1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[6];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb0 = u_xlat1.w>=u_xlat0.x;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat1.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat1.w = u_xlatb0 ? 1.0 : float(0.0);
					    u_xlat0 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    SV_Target0 = u_xlat1.wwww * u_xlat0 + vec4(1.0, 1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendMul" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat2.w = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1 = u_xlat2 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat2.w = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1 = u_xlat2 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendMul" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					float u_xlat9;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlat0.xyz = u_xlat0.xyz + u_xlat0.xyz;
					    u_xlat0.xyz = u_xlat0.xyz * _TintColor.xyz;
					    u_xlat1.xyz = u_xlat0.xyz * vs_COLOR0.xyz;
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat2 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat2.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlatb0 = u_xlat0.w>=u_xlat0.x;
					    u_xlat1.w = u_xlatb0 ? 1.0 : float(0.0);
					    u_xlat0 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat0.xyz = u_xlat0.xyz * u_xlat1.www;
					    SV_Target0.w = u_xlat1.w * u_xlat0.w + 1.0;
					    u_xlat9 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat9 = (-u_xlat9) + 1.0;
					    u_xlat9 = u_xlat9 * _ProjectionParams.z;
					    u_xlat9 = max(u_xlat9, 0.0);
					    u_xlat9 = u_xlat9 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat9 = clamp(u_xlat9, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat9) * u_xlat0.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					float u_xlat9;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlat0.xyz = u_xlat0.xyz + u_xlat0.xyz;
					    u_xlat0.xyz = u_xlat0.xyz * _TintColor.xyz;
					    u_xlat1.xyz = u_xlat0.xyz * vs_COLOR0.xyz;
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat2 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat2.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlatb0 = u_xlat0.w>=u_xlat0.x;
					    u_xlat1.w = u_xlatb0 ? 1.0 : float(0.0);
					    u_xlat0 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat0.xyz = u_xlat0.xyz * u_xlat1.www;
					    SV_Target0.w = u_xlat1.w * u_xlat0.w + 1.0;
					    u_xlat9 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat9 = (-u_xlat9) + 1.0;
					    u_xlat9 = u_xlat9 * _ProjectionParams.z;
					    u_xlat9 = max(u_xlat9, 0.0);
					    u_xlat9 = u_xlat9 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat9 = clamp(u_xlat9, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat9) * u_xlat0.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendMul" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat2.w = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1 = u_xlat2 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat2.w = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1 = u_xlat2 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendMul" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec3 u_xlat4;
					bool u_xlatb4;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat4.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat4.xyz = u_xlat4.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat4.xyz * vs_COLOR0.xyz;
					    u_xlat4.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat3 = texture(_CameraDepthTexture, u_xlat4.xy);
					    u_xlat4.x = _ZBufferParams.z * u_xlat3.x + _ZBufferParams.w;
					    u_xlat4.x = float(1.0) / u_xlat4.x;
					    u_xlat4.x = u_xlat4.x + (-vs_TEXCOORD3.z);
					    u_xlat4.x = u_xlat4.x * _InvFade;
					    u_xlat4.x = clamp(u_xlat4.x, 0.0, 1.0);
					    u_xlat4.x = (-vs_COLOR0.w) * u_xlat4.x + 1.0;
					    u_xlat4.x = u_xlat4.x + _Cutout;
					    u_xlatb4 = u_xlat1.w>=u_xlat4.x;
					    u_xlat2.w = u_xlatb4 ? 1.0 : float(0.0);
					    u_xlat1 = u_xlat2 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat4.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat4.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec3 u_xlat4;
					bool u_xlatb4;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat4.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat4.xyz = u_xlat4.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat4.xyz * vs_COLOR0.xyz;
					    u_xlat4.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat3 = texture(_CameraDepthTexture, u_xlat4.xy);
					    u_xlat4.x = _ZBufferParams.z * u_xlat3.x + _ZBufferParams.w;
					    u_xlat4.x = float(1.0) / u_xlat4.x;
					    u_xlat4.x = u_xlat4.x + (-vs_TEXCOORD3.z);
					    u_xlat4.x = u_xlat4.x * _InvFade;
					    u_xlat4.x = clamp(u_xlat4.x, 0.0, 1.0);
					    u_xlat4.x = (-vs_COLOR0.w) * u_xlat4.x + 1.0;
					    u_xlat4.x = u_xlat4.x + _Cutout;
					    u_xlatb4 = u_xlat1.w>=u_xlat4.x;
					    u_xlat2.w = u_xlatb4 ? 1.0 : float(0.0);
					    u_xlat1 = u_xlat2 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat4.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat4.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendMul" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat2.w = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1 = u_xlat2 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat2.w = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1 = u_xlat2 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendMul" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec3 u_xlat4;
					bool u_xlatb4;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat4.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat4.xyz = u_xlat4.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat4.xyz * vs_COLOR0.xyz;
					    u_xlat4.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat3 = texture(_CameraDepthTexture, u_xlat4.xy);
					    u_xlat4.x = _ZBufferParams.z * u_xlat3.x + _ZBufferParams.w;
					    u_xlat4.x = float(1.0) / u_xlat4.x;
					    u_xlat4.x = u_xlat4.x + (-vs_TEXCOORD3.z);
					    u_xlat4.x = u_xlat4.x * _InvFade;
					    u_xlat4.x = clamp(u_xlat4.x, 0.0, 1.0);
					    u_xlat4.x = (-vs_COLOR0.w) * u_xlat4.x + 1.0;
					    u_xlat4.x = u_xlat4.x + _Cutout;
					    u_xlatb4 = u_xlat1.w>=u_xlat4.x;
					    u_xlat2.w = u_xlatb4 ? 1.0 : float(0.0);
					    u_xlat1 = u_xlat2 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat4.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat4.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec3 u_xlat4;
					bool u_xlatb4;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat4.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat4.xyz = u_xlat4.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat4.xyz * vs_COLOR0.xyz;
					    u_xlat4.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat3 = texture(_CameraDepthTexture, u_xlat4.xy);
					    u_xlat4.x = _ZBufferParams.z * u_xlat3.x + _ZBufferParams.w;
					    u_xlat4.x = float(1.0) / u_xlat4.x;
					    u_xlat4.x = u_xlat4.x + (-vs_TEXCOORD3.z);
					    u_xlat4.x = u_xlat4.x * _InvFade;
					    u_xlat4.x = clamp(u_xlat4.x, 0.0, 1.0);
					    u_xlat4.x = (-vs_COLOR0.w) * u_xlat4.x + 1.0;
					    u_xlat4.x = u_xlat4.x + _Cutout;
					    u_xlatb4 = u_xlat1.w>=u_xlat4.x;
					    u_xlat2.w = u_xlatb4 ? 1.0 : float(0.0);
					    u_xlat1 = u_xlat2 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat4.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat4.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendMul" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[7];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb0 = u_xlat1.w>=u_xlat0.x;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat1.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat1.w = u_xlatb0 ? 1.0 : float(0.0);
					    u_xlat0 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    SV_Target0 = u_xlat1.wwww * u_xlat0 + vec4(1.0, 1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[6];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb0 = u_xlat1.w>=u_xlat0.x;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat1.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat1.w = u_xlatb0 ? 1.0 : float(0.0);
					    u_xlat0 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    SV_Target0 = u_xlat1.wwww * u_xlat0 + vec4(1.0, 1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendMul" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[7];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb0 = u_xlat1.w>=u_xlat0.x;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat1.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat1.w = u_xlatb0 ? 1.0 : float(0.0);
					    u_xlat0 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    SV_Target0 = u_xlat1.wwww * u_xlat0 + vec4(1.0, 1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[6];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb0 = u_xlat1.w>=u_xlat0.x;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat1.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat1.w = u_xlatb0 ? 1.0 : float(0.0);
					    u_xlat0 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    SV_Target0 = u_xlat1.wwww * u_xlat0 + vec4(1.0, 1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendMul" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					float u_xlat9;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlat0.xyz = u_xlat0.xyz + u_xlat0.xyz;
					    u_xlat0.xyz = u_xlat0.xyz * _TintColor.xyz;
					    u_xlat1.xyz = u_xlat0.xyz * vs_COLOR0.xyz;
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat2 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat2.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlatb0 = u_xlat0.w>=u_xlat0.x;
					    u_xlat1.w = u_xlatb0 ? 1.0 : float(0.0);
					    u_xlat0 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat0.xyz = u_xlat0.xyz * u_xlat1.www;
					    SV_Target0.w = u_xlat1.w * u_xlat0.w + 1.0;
					    u_xlat9 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat9 = (-u_xlat9) + 1.0;
					    u_xlat9 = u_xlat9 * _ProjectionParams.z;
					    u_xlat9 = max(u_xlat9, 0.0);
					    u_xlat9 = u_xlat9 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat9 = clamp(u_xlat9, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat9) * u_xlat0.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					float u_xlat9;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlat0.xyz = u_xlat0.xyz + u_xlat0.xyz;
					    u_xlat0.xyz = u_xlat0.xyz * _TintColor.xyz;
					    u_xlat1.xyz = u_xlat0.xyz * vs_COLOR0.xyz;
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat2 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat2.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlatb0 = u_xlat0.w>=u_xlat0.x;
					    u_xlat1.w = u_xlatb0 ? 1.0 : float(0.0);
					    u_xlat0 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat0.xyz = u_xlat0.xyz * u_xlat1.www;
					    SV_Target0.w = u_xlat1.w * u_xlat0.w + 1.0;
					    u_xlat9 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat9 = (-u_xlat9) + 1.0;
					    u_xlat9 = u_xlat9 * _ProjectionParams.z;
					    u_xlat9 = max(u_xlat9, 0.0);
					    u_xlat9 = u_xlat9 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat9 = clamp(u_xlat9, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat9) * u_xlat0.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendMul" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					float u_xlat9;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlat0.xyz = u_xlat0.xyz + u_xlat0.xyz;
					    u_xlat0.xyz = u_xlat0.xyz * _TintColor.xyz;
					    u_xlat1.xyz = u_xlat0.xyz * vs_COLOR0.xyz;
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat2 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat2.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlatb0 = u_xlat0.w>=u_xlat0.x;
					    u_xlat1.w = u_xlatb0 ? 1.0 : float(0.0);
					    u_xlat0 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat0.xyz = u_xlat0.xyz * u_xlat1.www;
					    SV_Target0.w = u_xlat1.w * u_xlat0.w + 1.0;
					    u_xlat9 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat9 = (-u_xlat9) + 1.0;
					    u_xlat9 = u_xlat9 * _ProjectionParams.z;
					    u_xlat9 = max(u_xlat9, 0.0);
					    u_xlat9 = u_xlat9 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat9 = clamp(u_xlat9, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat9) * u_xlat0.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					float u_xlat9;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlat0.xyz = u_xlat0.xyz + u_xlat0.xyz;
					    u_xlat0.xyz = u_xlat0.xyz * _TintColor.xyz;
					    u_xlat1.xyz = u_xlat0.xyz * vs_COLOR0.xyz;
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat2 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat2.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlatb0 = u_xlat0.w>=u_xlat0.x;
					    u_xlat1.w = u_xlatb0 ? 1.0 : float(0.0);
					    u_xlat0 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat0.xyz = u_xlat0.xyz * u_xlat1.www;
					    SV_Target0.w = u_xlat1.w * u_xlat0.w + 1.0;
					    u_xlat9 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat9 = (-u_xlat9) + 1.0;
					    u_xlat9 = u_xlat9 * _ProjectionParams.z;
					    u_xlat9 = max(u_xlat9, 0.0);
					    u_xlat9 = u_xlat9 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat9 = clamp(u_xlat9, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat9) * u_xlat0.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendMul" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec3 u_xlat4;
					bool u_xlatb4;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat4.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat4.xyz = u_xlat4.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat4.xyz * vs_COLOR0.xyz;
					    u_xlat4.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat3 = texture(_CameraDepthTexture, u_xlat4.xy);
					    u_xlat4.x = _ZBufferParams.z * u_xlat3.x + _ZBufferParams.w;
					    u_xlat4.x = float(1.0) / u_xlat4.x;
					    u_xlat4.x = u_xlat4.x + (-vs_TEXCOORD3.z);
					    u_xlat4.x = u_xlat4.x * _InvFade;
					    u_xlat4.x = clamp(u_xlat4.x, 0.0, 1.0);
					    u_xlat4.x = (-vs_COLOR0.w) * u_xlat4.x + 1.0;
					    u_xlat4.x = u_xlat4.x + _Cutout;
					    u_xlatb4 = u_xlat1.w>=u_xlat4.x;
					    u_xlat2.w = u_xlatb4 ? 1.0 : float(0.0);
					    u_xlat1 = u_xlat2 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat4.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat4.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec3 u_xlat4;
					bool u_xlatb4;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat4.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat4.xyz = u_xlat4.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat4.xyz * vs_COLOR0.xyz;
					    u_xlat4.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat3 = texture(_CameraDepthTexture, u_xlat4.xy);
					    u_xlat4.x = _ZBufferParams.z * u_xlat3.x + _ZBufferParams.w;
					    u_xlat4.x = float(1.0) / u_xlat4.x;
					    u_xlat4.x = u_xlat4.x + (-vs_TEXCOORD3.z);
					    u_xlat4.x = u_xlat4.x * _InvFade;
					    u_xlat4.x = clamp(u_xlat4.x, 0.0, 1.0);
					    u_xlat4.x = (-vs_COLOR0.w) * u_xlat4.x + 1.0;
					    u_xlat4.x = u_xlat4.x + _Cutout;
					    u_xlatb4 = u_xlat1.w>=u_xlat4.x;
					    u_xlat2.w = u_xlatb4 ? 1.0 : float(0.0);
					    u_xlat1 = u_xlat2 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat4.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat4.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendMul" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec3 u_xlat4;
					bool u_xlatb4;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat4.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat4.xyz = u_xlat4.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat4.xyz * vs_COLOR0.xyz;
					    u_xlat4.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat3 = texture(_CameraDepthTexture, u_xlat4.xy);
					    u_xlat4.x = _ZBufferParams.z * u_xlat3.x + _ZBufferParams.w;
					    u_xlat4.x = float(1.0) / u_xlat4.x;
					    u_xlat4.x = u_xlat4.x + (-vs_TEXCOORD3.z);
					    u_xlat4.x = u_xlat4.x * _InvFade;
					    u_xlat4.x = clamp(u_xlat4.x, 0.0, 1.0);
					    u_xlat4.x = (-vs_COLOR0.w) * u_xlat4.x + 1.0;
					    u_xlat4.x = u_xlat4.x + _Cutout;
					    u_xlatb4 = u_xlat1.w>=u_xlat4.x;
					    u_xlat2.w = u_xlatb4 ? 1.0 : float(0.0);
					    u_xlat1 = u_xlat2 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat4.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat4.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec3 u_xlat4;
					bool u_xlatb4;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat4.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat4.xyz = u_xlat4.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat4.xyz * vs_COLOR0.xyz;
					    u_xlat4.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat3 = texture(_CameraDepthTexture, u_xlat4.xy);
					    u_xlat4.x = _ZBufferParams.z * u_xlat3.x + _ZBufferParams.w;
					    u_xlat4.x = float(1.0) / u_xlat4.x;
					    u_xlat4.x = u_xlat4.x + (-vs_TEXCOORD3.z);
					    u_xlat4.x = u_xlat4.x * _InvFade;
					    u_xlat4.x = clamp(u_xlat4.x, 0.0, 1.0);
					    u_xlat4.x = (-vs_COLOR0.w) * u_xlat4.x + 1.0;
					    u_xlat4.x = u_xlat4.x + _Cutout;
					    u_xlatb4 = u_xlat1.w>=u_xlat4.x;
					    u_xlat2.w = u_xlatb4 ? 1.0 : float(0.0);
					    u_xlat1 = u_xlat2 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat4.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat4.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendMul" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec3 u_xlat4;
					bool u_xlatb4;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat4.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat4.xyz = u_xlat4.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat4.xyz * vs_COLOR0.xyz;
					    u_xlat4.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat3 = texture(_CameraDepthTexture, u_xlat4.xy);
					    u_xlat4.x = _ZBufferParams.z * u_xlat3.x + _ZBufferParams.w;
					    u_xlat4.x = float(1.0) / u_xlat4.x;
					    u_xlat4.x = u_xlat4.x + (-vs_TEXCOORD3.z);
					    u_xlat4.x = u_xlat4.x * _InvFade;
					    u_xlat4.x = clamp(u_xlat4.x, 0.0, 1.0);
					    u_xlat4.x = (-vs_COLOR0.w) * u_xlat4.x + 1.0;
					    u_xlat4.x = u_xlat4.x + _Cutout;
					    u_xlatb4 = u_xlat1.w>=u_xlat4.x;
					    u_xlat2.w = u_xlatb4 ? 1.0 : float(0.0);
					    u_xlat1 = u_xlat2 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat4.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat4.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec3 u_xlat4;
					bool u_xlatb4;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat4.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat4.xyz = u_xlat4.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat4.xyz * vs_COLOR0.xyz;
					    u_xlat4.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat3 = texture(_CameraDepthTexture, u_xlat4.xy);
					    u_xlat4.x = _ZBufferParams.z * u_xlat3.x + _ZBufferParams.w;
					    u_xlat4.x = float(1.0) / u_xlat4.x;
					    u_xlat4.x = u_xlat4.x + (-vs_TEXCOORD3.z);
					    u_xlat4.x = u_xlat4.x * _InvFade;
					    u_xlat4.x = clamp(u_xlat4.x, 0.0, 1.0);
					    u_xlat4.x = (-vs_COLOR0.w) * u_xlat4.x + 1.0;
					    u_xlat4.x = u_xlat4.x + _Cutout;
					    u_xlatb4 = u_xlat1.w>=u_xlat4.x;
					    u_xlat2.w = u_xlatb4 ? 1.0 : float(0.0);
					    u_xlat1 = u_xlat2 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat4.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat4.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendMul" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec3 u_xlat4;
					bool u_xlatb4;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat4.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat4.xyz = u_xlat4.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat4.xyz * vs_COLOR0.xyz;
					    u_xlat4.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat3 = texture(_CameraDepthTexture, u_xlat4.xy);
					    u_xlat4.x = _ZBufferParams.z * u_xlat3.x + _ZBufferParams.w;
					    u_xlat4.x = float(1.0) / u_xlat4.x;
					    u_xlat4.x = u_xlat4.x + (-vs_TEXCOORD3.z);
					    u_xlat4.x = u_xlat4.x * _InvFade;
					    u_xlat4.x = clamp(u_xlat4.x, 0.0, 1.0);
					    u_xlat4.x = (-vs_COLOR0.w) * u_xlat4.x + 1.0;
					    u_xlat4.x = u_xlat4.x + _Cutout;
					    u_xlatb4 = u_xlat1.w>=u_xlat4.x;
					    u_xlat2.w = u_xlatb4 ? 1.0 : float(0.0);
					    u_xlat1 = u_xlat2 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat4.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat4.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec3 u_xlat4;
					bool u_xlatb4;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat4.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat4.xyz = u_xlat4.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat4.xyz * vs_COLOR0.xyz;
					    u_xlat4.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat3 = texture(_CameraDepthTexture, u_xlat4.xy);
					    u_xlat4.x = _ZBufferParams.z * u_xlat3.x + _ZBufferParams.w;
					    u_xlat4.x = float(1.0) / u_xlat4.x;
					    u_xlat4.x = u_xlat4.x + (-vs_TEXCOORD3.z);
					    u_xlat4.x = u_xlat4.x * _InvFade;
					    u_xlat4.x = clamp(u_xlat4.x, 0.0, 1.0);
					    u_xlat4.x = (-vs_COLOR0.w) * u_xlat4.x + 1.0;
					    u_xlat4.x = u_xlat4.x + _Cutout;
					    u_xlatb4 = u_xlat1.w>=u_xlat4.x;
					    u_xlat2.w = u_xlatb4 ? 1.0 : float(0.0);
					    u_xlat1 = u_xlat2 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat4.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat4.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendMul" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlat0.xyz = u_xlat0.xyz + u_xlat0.xyz;
					    u_xlat0.xyz = u_xlat0.xyz * _TintColor.xyz;
					    u_xlat1.xyz = u_xlat0.xyz * vs_COLOR0.xyz;
					    u_xlat0.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlatb0 = u_xlat0.w>=u_xlat0.x;
					    u_xlat0.x = u_xlatb0 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat0.x * vs_TEXCOORD4;
					    u_xlat0 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    SV_Target0 = u_xlat1.wwww * u_xlat0 + vec4(1.0, 1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlat0.xyz = u_xlat0.xyz + u_xlat0.xyz;
					    u_xlat0.xyz = u_xlat0.xyz * _TintColor.xyz;
					    u_xlat1.xyz = u_xlat0.xyz * vs_COLOR0.xyz;
					    u_xlat0.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlatb0 = u_xlat0.w>=u_xlat0.x;
					    u_xlat0.x = u_xlatb0 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat0.x * vs_TEXCOORD4;
					    u_xlat0 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    SV_Target0 = u_xlat1.wwww * u_xlat0 + vec4(1.0, 1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendMul" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[7];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb0 = u_xlat1.w>=u_xlat0.x;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat1.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat0.x = u_xlatb0 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat0.x * vs_TEXCOORD4;
					    u_xlat0 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    SV_Target0 = u_xlat1.wwww * u_xlat0 + vec4(1.0, 1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[6];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb0 = u_xlat1.w>=u_xlat0.x;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat1.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat0.x = u_xlatb0 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat0.x * vs_TEXCOORD4;
					    u_xlat0 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    SV_Target0 = u_xlat1.wwww * u_xlat0 + vec4(1.0, 1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendMul" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat2.w = u_xlat3.x * vs_TEXCOORD4;
					    u_xlat1 = u_xlat2 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat2.w = u_xlat3.x * vs_TEXCOORD4;
					    u_xlat1 = u_xlat2 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendMul" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					float u_xlat9;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlat0.xyz = u_xlat0.xyz + u_xlat0.xyz;
					    u_xlat0.xyz = u_xlat0.xyz * _TintColor.xyz;
					    u_xlat1.xyz = u_xlat0.xyz * vs_COLOR0.xyz;
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat2 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat2.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlatb0 = u_xlat0.w>=u_xlat0.x;
					    u_xlat0.x = u_xlatb0 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat0.x * vs_TEXCOORD4;
					    u_xlat0 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat0.xyz = u_xlat0.xyz * u_xlat1.www;
					    SV_Target0.w = u_xlat1.w * u_xlat0.w + 1.0;
					    u_xlat9 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat9 = (-u_xlat9) + 1.0;
					    u_xlat9 = u_xlat9 * _ProjectionParams.z;
					    u_xlat9 = max(u_xlat9, 0.0);
					    u_xlat9 = u_xlat9 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat9 = clamp(u_xlat9, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat9) * u_xlat0.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					float u_xlat9;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlat0.xyz = u_xlat0.xyz + u_xlat0.xyz;
					    u_xlat0.xyz = u_xlat0.xyz * _TintColor.xyz;
					    u_xlat1.xyz = u_xlat0.xyz * vs_COLOR0.xyz;
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat2 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat2.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlatb0 = u_xlat0.w>=u_xlat0.x;
					    u_xlat0.x = u_xlatb0 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat0.x * vs_TEXCOORD4;
					    u_xlat0 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat0.xyz = u_xlat0.xyz * u_xlat1.www;
					    SV_Target0.w = u_xlat1.w * u_xlat0.w + 1.0;
					    u_xlat9 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat9 = (-u_xlat9) + 1.0;
					    u_xlat9 = u_xlat9 * _ProjectionParams.z;
					    u_xlat9 = max(u_xlat9, 0.0);
					    u_xlat9 = u_xlat9 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat9 = clamp(u_xlat9, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat9) * u_xlat0.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendMul" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat2.w = u_xlat3.x * vs_TEXCOORD4;
					    u_xlat1 = u_xlat2 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat2.w = u_xlat3.x * vs_TEXCOORD4;
					    u_xlat1 = u_xlat2 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendMul" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec3 u_xlat4;
					bool u_xlatb4;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat4.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat4.xyz = u_xlat4.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat4.xyz * vs_COLOR0.xyz;
					    u_xlat4.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat3 = texture(_CameraDepthTexture, u_xlat4.xy);
					    u_xlat4.x = _ZBufferParams.z * u_xlat3.x + _ZBufferParams.w;
					    u_xlat4.x = float(1.0) / u_xlat4.x;
					    u_xlat4.x = u_xlat4.x + (-vs_TEXCOORD3.z);
					    u_xlat4.x = u_xlat4.x * _InvFade;
					    u_xlat4.x = clamp(u_xlat4.x, 0.0, 1.0);
					    u_xlat4.x = (-vs_COLOR0.w) * u_xlat4.x + 1.0;
					    u_xlat4.x = u_xlat4.x + _Cutout;
					    u_xlatb4 = u_xlat1.w>=u_xlat4.x;
					    u_xlat4.x = u_xlatb4 ? 1.0 : float(0.0);
					    u_xlat2.w = u_xlat4.x * vs_TEXCOORD4;
					    u_xlat1 = u_xlat2 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat4.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat4.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec3 u_xlat4;
					bool u_xlatb4;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat4.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat4.xyz = u_xlat4.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat4.xyz * vs_COLOR0.xyz;
					    u_xlat4.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat3 = texture(_CameraDepthTexture, u_xlat4.xy);
					    u_xlat4.x = _ZBufferParams.z * u_xlat3.x + _ZBufferParams.w;
					    u_xlat4.x = float(1.0) / u_xlat4.x;
					    u_xlat4.x = u_xlat4.x + (-vs_TEXCOORD3.z);
					    u_xlat4.x = u_xlat4.x * _InvFade;
					    u_xlat4.x = clamp(u_xlat4.x, 0.0, 1.0);
					    u_xlat4.x = (-vs_COLOR0.w) * u_xlat4.x + 1.0;
					    u_xlat4.x = u_xlat4.x + _Cutout;
					    u_xlatb4 = u_xlat1.w>=u_xlat4.x;
					    u_xlat4.x = u_xlatb4 ? 1.0 : float(0.0);
					    u_xlat2.w = u_xlat4.x * vs_TEXCOORD4;
					    u_xlat1 = u_xlat2 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat4.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat4.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendMul" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat2.w = u_xlat3.x * vs_TEXCOORD4;
					    u_xlat1 = u_xlat2 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat2.w = u_xlat3.x * vs_TEXCOORD4;
					    u_xlat1 = u_xlat2 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendMul" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec3 u_xlat4;
					bool u_xlatb4;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat4.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat4.xyz = u_xlat4.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat4.xyz * vs_COLOR0.xyz;
					    u_xlat4.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat3 = texture(_CameraDepthTexture, u_xlat4.xy);
					    u_xlat4.x = _ZBufferParams.z * u_xlat3.x + _ZBufferParams.w;
					    u_xlat4.x = float(1.0) / u_xlat4.x;
					    u_xlat4.x = u_xlat4.x + (-vs_TEXCOORD3.z);
					    u_xlat4.x = u_xlat4.x * _InvFade;
					    u_xlat4.x = clamp(u_xlat4.x, 0.0, 1.0);
					    u_xlat4.x = (-vs_COLOR0.w) * u_xlat4.x + 1.0;
					    u_xlat4.x = u_xlat4.x + _Cutout;
					    u_xlatb4 = u_xlat1.w>=u_xlat4.x;
					    u_xlat4.x = u_xlatb4 ? 1.0 : float(0.0);
					    u_xlat2.w = u_xlat4.x * vs_TEXCOORD4;
					    u_xlat1 = u_xlat2 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat4.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat4.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec3 u_xlat4;
					bool u_xlatb4;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat4.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat4.xyz = u_xlat4.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat4.xyz * vs_COLOR0.xyz;
					    u_xlat4.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat3 = texture(_CameraDepthTexture, u_xlat4.xy);
					    u_xlat4.x = _ZBufferParams.z * u_xlat3.x + _ZBufferParams.w;
					    u_xlat4.x = float(1.0) / u_xlat4.x;
					    u_xlat4.x = u_xlat4.x + (-vs_TEXCOORD3.z);
					    u_xlat4.x = u_xlat4.x * _InvFade;
					    u_xlat4.x = clamp(u_xlat4.x, 0.0, 1.0);
					    u_xlat4.x = (-vs_COLOR0.w) * u_xlat4.x + 1.0;
					    u_xlat4.x = u_xlat4.x + _Cutout;
					    u_xlatb4 = u_xlat1.w>=u_xlat4.x;
					    u_xlat4.x = u_xlatb4 ? 1.0 : float(0.0);
					    u_xlat2.w = u_xlat4.x * vs_TEXCOORD4;
					    u_xlat1 = u_xlat2 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat4.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat4.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendMul" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[7];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb0 = u_xlat1.w>=u_xlat0.x;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat1.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat0.x = u_xlatb0 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat0.x * vs_TEXCOORD4;
					    u_xlat0 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    SV_Target0 = u_xlat1.wwww * u_xlat0 + vec4(1.0, 1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[6];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb0 = u_xlat1.w>=u_xlat0.x;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat1.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat0.x = u_xlatb0 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat0.x * vs_TEXCOORD4;
					    u_xlat0 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    SV_Target0 = u_xlat1.wwww * u_xlat0 + vec4(1.0, 1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendMul" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[7];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb0 = u_xlat1.w>=u_xlat0.x;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat1.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat0.x = u_xlatb0 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat0.x * vs_TEXCOORD4;
					    u_xlat0 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    SV_Target0 = u_xlat1.wwww * u_xlat0 + vec4(1.0, 1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[6];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb0 = u_xlat1.w>=u_xlat0.x;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat1.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat0.x = u_xlatb0 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat0.x * vs_TEXCOORD4;
					    u_xlat0 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    SV_Target0 = u_xlat1.wwww * u_xlat0 + vec4(1.0, 1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendMul" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					float u_xlat9;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlat0.xyz = u_xlat0.xyz + u_xlat0.xyz;
					    u_xlat0.xyz = u_xlat0.xyz * _TintColor.xyz;
					    u_xlat1.xyz = u_xlat0.xyz * vs_COLOR0.xyz;
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat2 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat2.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlatb0 = u_xlat0.w>=u_xlat0.x;
					    u_xlat0.x = u_xlatb0 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat0.x * vs_TEXCOORD4;
					    u_xlat0 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat0.xyz = u_xlat0.xyz * u_xlat1.www;
					    SV_Target0.w = u_xlat1.w * u_xlat0.w + 1.0;
					    u_xlat9 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat9 = (-u_xlat9) + 1.0;
					    u_xlat9 = u_xlat9 * _ProjectionParams.z;
					    u_xlat9 = max(u_xlat9, 0.0);
					    u_xlat9 = u_xlat9 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat9 = clamp(u_xlat9, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat9) * u_xlat0.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					float u_xlat9;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlat0.xyz = u_xlat0.xyz + u_xlat0.xyz;
					    u_xlat0.xyz = u_xlat0.xyz * _TintColor.xyz;
					    u_xlat1.xyz = u_xlat0.xyz * vs_COLOR0.xyz;
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat2 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat2.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlatb0 = u_xlat0.w>=u_xlat0.x;
					    u_xlat0.x = u_xlatb0 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat0.x * vs_TEXCOORD4;
					    u_xlat0 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat0.xyz = u_xlat0.xyz * u_xlat1.www;
					    SV_Target0.w = u_xlat1.w * u_xlat0.w + 1.0;
					    u_xlat9 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat9 = (-u_xlat9) + 1.0;
					    u_xlat9 = u_xlat9 * _ProjectionParams.z;
					    u_xlat9 = max(u_xlat9, 0.0);
					    u_xlat9 = u_xlat9 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat9 = clamp(u_xlat9, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat9) * u_xlat0.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendMul" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					float u_xlat9;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlat0.xyz = u_xlat0.xyz + u_xlat0.xyz;
					    u_xlat0.xyz = u_xlat0.xyz * _TintColor.xyz;
					    u_xlat1.xyz = u_xlat0.xyz * vs_COLOR0.xyz;
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat2 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat2.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlatb0 = u_xlat0.w>=u_xlat0.x;
					    u_xlat0.x = u_xlatb0 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat0.x * vs_TEXCOORD4;
					    u_xlat0 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat0.xyz = u_xlat0.xyz * u_xlat1.www;
					    SV_Target0.w = u_xlat1.w * u_xlat0.w + 1.0;
					    u_xlat9 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat9 = (-u_xlat9) + 1.0;
					    u_xlat9 = u_xlat9 * _ProjectionParams.z;
					    u_xlat9 = max(u_xlat9, 0.0);
					    u_xlat9 = u_xlat9 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat9 = clamp(u_xlat9, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat9) * u_xlat0.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					float u_xlat9;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlat0.xyz = u_xlat0.xyz + u_xlat0.xyz;
					    u_xlat0.xyz = u_xlat0.xyz * _TintColor.xyz;
					    u_xlat1.xyz = u_xlat0.xyz * vs_COLOR0.xyz;
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat2 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat2.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlatb0 = u_xlat0.w>=u_xlat0.x;
					    u_xlat0.x = u_xlatb0 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat0.x * vs_TEXCOORD4;
					    u_xlat0 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat0.xyz = u_xlat0.xyz * u_xlat1.www;
					    SV_Target0.w = u_xlat1.w * u_xlat0.w + 1.0;
					    u_xlat9 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat9 = (-u_xlat9) + 1.0;
					    u_xlat9 = u_xlat9 * _ProjectionParams.z;
					    u_xlat9 = max(u_xlat9, 0.0);
					    u_xlat9 = u_xlat9 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat9 = clamp(u_xlat9, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat9) * u_xlat0.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendMul" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec3 u_xlat4;
					bool u_xlatb4;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat4.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat4.xyz = u_xlat4.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat4.xyz * vs_COLOR0.xyz;
					    u_xlat4.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat3 = texture(_CameraDepthTexture, u_xlat4.xy);
					    u_xlat4.x = _ZBufferParams.z * u_xlat3.x + _ZBufferParams.w;
					    u_xlat4.x = float(1.0) / u_xlat4.x;
					    u_xlat4.x = u_xlat4.x + (-vs_TEXCOORD3.z);
					    u_xlat4.x = u_xlat4.x * _InvFade;
					    u_xlat4.x = clamp(u_xlat4.x, 0.0, 1.0);
					    u_xlat4.x = (-vs_COLOR0.w) * u_xlat4.x + 1.0;
					    u_xlat4.x = u_xlat4.x + _Cutout;
					    u_xlatb4 = u_xlat1.w>=u_xlat4.x;
					    u_xlat4.x = u_xlatb4 ? 1.0 : float(0.0);
					    u_xlat2.w = u_xlat4.x * vs_TEXCOORD4;
					    u_xlat1 = u_xlat2 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat4.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat4.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec3 u_xlat4;
					bool u_xlatb4;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat4.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat4.xyz = u_xlat4.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat4.xyz * vs_COLOR0.xyz;
					    u_xlat4.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat3 = texture(_CameraDepthTexture, u_xlat4.xy);
					    u_xlat4.x = _ZBufferParams.z * u_xlat3.x + _ZBufferParams.w;
					    u_xlat4.x = float(1.0) / u_xlat4.x;
					    u_xlat4.x = u_xlat4.x + (-vs_TEXCOORD3.z);
					    u_xlat4.x = u_xlat4.x * _InvFade;
					    u_xlat4.x = clamp(u_xlat4.x, 0.0, 1.0);
					    u_xlat4.x = (-vs_COLOR0.w) * u_xlat4.x + 1.0;
					    u_xlat4.x = u_xlat4.x + _Cutout;
					    u_xlatb4 = u_xlat1.w>=u_xlat4.x;
					    u_xlat4.x = u_xlatb4 ? 1.0 : float(0.0);
					    u_xlat2.w = u_xlat4.x * vs_TEXCOORD4;
					    u_xlat1 = u_xlat2 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat4.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat4.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendMul" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec3 u_xlat4;
					bool u_xlatb4;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat4.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat4.xyz = u_xlat4.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat4.xyz * vs_COLOR0.xyz;
					    u_xlat4.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat3 = texture(_CameraDepthTexture, u_xlat4.xy);
					    u_xlat4.x = _ZBufferParams.z * u_xlat3.x + _ZBufferParams.w;
					    u_xlat4.x = float(1.0) / u_xlat4.x;
					    u_xlat4.x = u_xlat4.x + (-vs_TEXCOORD3.z);
					    u_xlat4.x = u_xlat4.x * _InvFade;
					    u_xlat4.x = clamp(u_xlat4.x, 0.0, 1.0);
					    u_xlat4.x = (-vs_COLOR0.w) * u_xlat4.x + 1.0;
					    u_xlat4.x = u_xlat4.x + _Cutout;
					    u_xlatb4 = u_xlat1.w>=u_xlat4.x;
					    u_xlat4.x = u_xlatb4 ? 1.0 : float(0.0);
					    u_xlat2.w = u_xlat4.x * vs_TEXCOORD4;
					    u_xlat1 = u_xlat2 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat4.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat4.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec3 u_xlat4;
					bool u_xlatb4;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat4.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat4.xyz = u_xlat4.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat4.xyz * vs_COLOR0.xyz;
					    u_xlat4.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat3 = texture(_CameraDepthTexture, u_xlat4.xy);
					    u_xlat4.x = _ZBufferParams.z * u_xlat3.x + _ZBufferParams.w;
					    u_xlat4.x = float(1.0) / u_xlat4.x;
					    u_xlat4.x = u_xlat4.x + (-vs_TEXCOORD3.z);
					    u_xlat4.x = u_xlat4.x * _InvFade;
					    u_xlat4.x = clamp(u_xlat4.x, 0.0, 1.0);
					    u_xlat4.x = (-vs_COLOR0.w) * u_xlat4.x + 1.0;
					    u_xlat4.x = u_xlat4.x + _Cutout;
					    u_xlatb4 = u_xlat1.w>=u_xlat4.x;
					    u_xlat4.x = u_xlatb4 ? 1.0 : float(0.0);
					    u_xlat2.w = u_xlat4.x * vs_TEXCOORD4;
					    u_xlat1 = u_xlat2 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat4.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat4.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendMul" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec3 u_xlat4;
					bool u_xlatb4;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat4.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat4.xyz = u_xlat4.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat4.xyz * vs_COLOR0.xyz;
					    u_xlat4.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat3 = texture(_CameraDepthTexture, u_xlat4.xy);
					    u_xlat4.x = _ZBufferParams.z * u_xlat3.x + _ZBufferParams.w;
					    u_xlat4.x = float(1.0) / u_xlat4.x;
					    u_xlat4.x = u_xlat4.x + (-vs_TEXCOORD3.z);
					    u_xlat4.x = u_xlat4.x * _InvFade;
					    u_xlat4.x = clamp(u_xlat4.x, 0.0, 1.0);
					    u_xlat4.x = (-vs_COLOR0.w) * u_xlat4.x + 1.0;
					    u_xlat4.x = u_xlat4.x + _Cutout;
					    u_xlatb4 = u_xlat1.w>=u_xlat4.x;
					    u_xlat4.x = u_xlatb4 ? 1.0 : float(0.0);
					    u_xlat2.w = u_xlat4.x * vs_TEXCOORD4;
					    u_xlat1 = u_xlat2 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat4.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat4.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec3 u_xlat4;
					bool u_xlatb4;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat4.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat4.xyz = u_xlat4.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat4.xyz * vs_COLOR0.xyz;
					    u_xlat4.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat3 = texture(_CameraDepthTexture, u_xlat4.xy);
					    u_xlat4.x = _ZBufferParams.z * u_xlat3.x + _ZBufferParams.w;
					    u_xlat4.x = float(1.0) / u_xlat4.x;
					    u_xlat4.x = u_xlat4.x + (-vs_TEXCOORD3.z);
					    u_xlat4.x = u_xlat4.x * _InvFade;
					    u_xlat4.x = clamp(u_xlat4.x, 0.0, 1.0);
					    u_xlat4.x = (-vs_COLOR0.w) * u_xlat4.x + 1.0;
					    u_xlat4.x = u_xlat4.x + _Cutout;
					    u_xlatb4 = u_xlat1.w>=u_xlat4.x;
					    u_xlat4.x = u_xlatb4 ? 1.0 : float(0.0);
					    u_xlat2.w = u_xlat4.x * vs_TEXCOORD4;
					    u_xlat1 = u_xlat2 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat4.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat4.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendMul" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec3 u_xlat4;
					bool u_xlatb4;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat4.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat4.xyz = u_xlat4.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat4.xyz * vs_COLOR0.xyz;
					    u_xlat4.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat3 = texture(_CameraDepthTexture, u_xlat4.xy);
					    u_xlat4.x = _ZBufferParams.z * u_xlat3.x + _ZBufferParams.w;
					    u_xlat4.x = float(1.0) / u_xlat4.x;
					    u_xlat4.x = u_xlat4.x + (-vs_TEXCOORD3.z);
					    u_xlat4.x = u_xlat4.x * _InvFade;
					    u_xlat4.x = clamp(u_xlat4.x, 0.0, 1.0);
					    u_xlat4.x = (-vs_COLOR0.w) * u_xlat4.x + 1.0;
					    u_xlat4.x = u_xlat4.x + _Cutout;
					    u_xlatb4 = u_xlat1.w>=u_xlat4.x;
					    u_xlat4.x = u_xlatb4 ? 1.0 : float(0.0);
					    u_xlat2.w = u_xlat4.x * vs_TEXCOORD4;
					    u_xlat1 = u_xlat2 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat4.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat4.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec3 u_xlat4;
					bool u_xlatb4;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat4.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat4.xyz = u_xlat4.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat4.xyz * vs_COLOR0.xyz;
					    u_xlat4.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat3 = texture(_CameraDepthTexture, u_xlat4.xy);
					    u_xlat4.x = _ZBufferParams.z * u_xlat3.x + _ZBufferParams.w;
					    u_xlat4.x = float(1.0) / u_xlat4.x;
					    u_xlat4.x = u_xlat4.x + (-vs_TEXCOORD3.z);
					    u_xlat4.x = u_xlat4.x * _InvFade;
					    u_xlat4.x = clamp(u_xlat4.x, 0.0, 1.0);
					    u_xlat4.x = (-vs_COLOR0.w) * u_xlat4.x + 1.0;
					    u_xlat4.x = u_xlat4.x + _Cutout;
					    u_xlatb4 = u_xlat1.w>=u_xlat4.x;
					    u_xlat4.x = u_xlatb4 ? 1.0 : float(0.0);
					    u_xlat2.w = u_xlat4.x * vs_TEXCOORD4;
					    u_xlat1 = u_xlat2 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat4.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat4.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendMul" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat0 = u_xlat0 * vs_COLOR0;
					    u_xlat0.w = u_xlat0.w;
					    u_xlat0.w = clamp(u_xlat0.w, 0.0, 1.0);
					    u_xlat1 = u_xlat0 + vec4(-1.0, -1.0, -1.0, -1.0);
					    SV_Target0 = u_xlat0.wwww * u_xlat1 + vec4(1.0, 1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat0 = u_xlat0 * vs_COLOR0;
					    u_xlat0.w = u_xlat0.w;
					    u_xlat0.w = clamp(u_xlat0.w, 0.0, 1.0);
					    u_xlat1 = u_xlat0 + vec4(-1.0, -1.0, -1.0, -1.0);
					    SV_Target0 = u_xlat0.wwww * u_xlat1 + vec4(1.0, 1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendMul" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat0 = u_xlat0 * vs_COLOR0;
					    u_xlat0.w = u_xlat0.w;
					    u_xlat0.w = clamp(u_xlat0.w, 0.0, 1.0);
					    u_xlat1 = u_xlat0 + vec4(-1.0, -1.0, -1.0, -1.0);
					    SV_Target0 = u_xlat0.wwww * u_xlat1 + vec4(1.0, 1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat0 = u_xlat0 * vs_COLOR0;
					    u_xlat0.w = u_xlat0.w;
					    u_xlat0.w = clamp(u_xlat0.w, 0.0, 1.0);
					    u_xlat1 = u_xlat0 + vec4(-1.0, -1.0, -1.0, -1.0);
					    SV_Target0 = u_xlat0.wwww * u_xlat1 + vec4(1.0, 1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendMul" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendMul" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendMul" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendMul" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendMul" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendMul" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendMul" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat0 = u_xlat0 * vs_COLOR0;
					    u_xlat0.w = u_xlat0.w;
					    u_xlat0.w = clamp(u_xlat0.w, 0.0, 1.0);
					    u_xlat1 = u_xlat0 + vec4(-1.0, -1.0, -1.0, -1.0);
					    SV_Target0 = u_xlat0.wwww * u_xlat1 + vec4(1.0, 1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat0 = u_xlat0 * vs_COLOR0;
					    u_xlat0.w = u_xlat0.w;
					    u_xlat0.w = clamp(u_xlat0.w, 0.0, 1.0);
					    u_xlat1 = u_xlat0 + vec4(-1.0, -1.0, -1.0, -1.0);
					    SV_Target0 = u_xlat0.wwww * u_xlat1 + vec4(1.0, 1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendMul" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat0 = u_xlat0 * vs_COLOR0;
					    u_xlat0.w = u_xlat0.w;
					    u_xlat0.w = clamp(u_xlat0.w, 0.0, 1.0);
					    u_xlat1 = u_xlat0 + vec4(-1.0, -1.0, -1.0, -1.0);
					    SV_Target0 = u_xlat0.wwww * u_xlat1 + vec4(1.0, 1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat0 = u_xlat0 * vs_COLOR0;
					    u_xlat0.w = u_xlat0.w;
					    u_xlat0.w = clamp(u_xlat0.w, 0.0, 1.0);
					    u_xlat1 = u_xlat0 + vec4(-1.0, -1.0, -1.0, -1.0);
					    SV_Target0 = u_xlat0.wwww * u_xlat1 + vec4(1.0, 1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendMul" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendMul" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendMul" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendMul" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendMul" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendMul" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendMul" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat6;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat0 = u_xlat0 * vs_COLOR0;
					    u_xlat6 = u_xlat0.w;
					    u_xlat6 = clamp(u_xlat6, 0.0, 1.0);
					    u_xlat0.w = u_xlat6 * vs_TEXCOORD4;
					    u_xlat1 = u_xlat0 + vec4(-1.0, -1.0, -1.0, -1.0);
					    SV_Target0 = u_xlat0.wwww * u_xlat1 + vec4(1.0, 1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat6;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat0 = u_xlat0 * vs_COLOR0;
					    u_xlat6 = u_xlat0.w;
					    u_xlat6 = clamp(u_xlat6, 0.0, 1.0);
					    u_xlat0.w = u_xlat6 * vs_TEXCOORD4;
					    u_xlat1 = u_xlat0 + vec4(-1.0, -1.0, -1.0, -1.0);
					    SV_Target0 = u_xlat0.wwww * u_xlat1 + vec4(1.0, 1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendMul" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat6;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat0 = u_xlat0 * vs_COLOR0;
					    u_xlat6 = u_xlat0.w;
					    u_xlat6 = clamp(u_xlat6, 0.0, 1.0);
					    u_xlat0.w = u_xlat6 * vs_TEXCOORD4;
					    u_xlat1 = u_xlat0 + vec4(-1.0, -1.0, -1.0, -1.0);
					    SV_Target0 = u_xlat0.wwww * u_xlat1 + vec4(1.0, 1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat6;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat0 = u_xlat0 * vs_COLOR0;
					    u_xlat6 = u_xlat0.w;
					    u_xlat6 = clamp(u_xlat6, 0.0, 1.0);
					    u_xlat0.w = u_xlat6 * vs_TEXCOORD4;
					    u_xlat1 = u_xlat0 + vec4(-1.0, -1.0, -1.0, -1.0);
					    SV_Target0 = u_xlat0.wwww * u_xlat1 + vec4(1.0, 1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendMul" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendMul" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendMul" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendMul" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendMul" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendMul" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendMul" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat6;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat0 = u_xlat0 * vs_COLOR0;
					    u_xlat6 = u_xlat0.w;
					    u_xlat6 = clamp(u_xlat6, 0.0, 1.0);
					    u_xlat0.w = u_xlat6 * vs_TEXCOORD4;
					    u_xlat1 = u_xlat0 + vec4(-1.0, -1.0, -1.0, -1.0);
					    SV_Target0 = u_xlat0.wwww * u_xlat1 + vec4(1.0, 1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat6;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat0 = u_xlat0 * vs_COLOR0;
					    u_xlat6 = u_xlat0.w;
					    u_xlat6 = clamp(u_xlat6, 0.0, 1.0);
					    u_xlat0.w = u_xlat6 * vs_TEXCOORD4;
					    u_xlat1 = u_xlat0 + vec4(-1.0, -1.0, -1.0, -1.0);
					    SV_Target0 = u_xlat0.wwww * u_xlat1 + vec4(1.0, 1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendMul" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat6;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat0 = u_xlat0 * vs_COLOR0;
					    u_xlat6 = u_xlat0.w;
					    u_xlat6 = clamp(u_xlat6, 0.0, 1.0);
					    u_xlat0.w = u_xlat6 * vs_TEXCOORD4;
					    u_xlat1 = u_xlat0 + vec4(-1.0, -1.0, -1.0, -1.0);
					    SV_Target0 = u_xlat0.wwww * u_xlat1 + vec4(1.0, 1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat6;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat0 = u_xlat0 * vs_COLOR0;
					    u_xlat6 = u_xlat0.w;
					    u_xlat6 = clamp(u_xlat6, 0.0, 1.0);
					    u_xlat0.w = u_xlat6 * vs_TEXCOORD4;
					    u_xlat1 = u_xlat0 + vec4(-1.0, -1.0, -1.0, -1.0);
					    SV_Target0 = u_xlat0.wwww * u_xlat1 + vec4(1.0, 1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendMul" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendMul" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendMul" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendMul" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendMul" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendMul" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendMul" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					bool u_xlatb1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1.x = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat0.w = u_xlat0.w * u_xlat1.x;
					    u_xlat0 = u_xlat0 * vs_COLOR0;
					    u_xlat0.w = u_xlat0.w;
					    u_xlat0.w = clamp(u_xlat0.w, 0.0, 1.0);
					    u_xlat1 = u_xlat0 + vec4(-1.0, -1.0, -1.0, -1.0);
					    SV_Target0 = u_xlat0.wwww * u_xlat1 + vec4(1.0, 1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					bool u_xlatb1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1.x = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat0.w = u_xlat0.w * u_xlat1.x;
					    u_xlat0 = u_xlat0 * vs_COLOR0;
					    u_xlat0.w = u_xlat0.w;
					    u_xlat0.w = clamp(u_xlat0.w, 0.0, 1.0);
					    u_xlat1 = u_xlat0 + vec4(-1.0, -1.0, -1.0, -1.0);
					    SV_Target0 = u_xlat0.wwww * u_xlat1 + vec4(1.0, 1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendMul" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					bool u_xlatb1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1.x = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat0.w = u_xlat0.w * u_xlat1.x;
					    u_xlat0 = u_xlat0 * vs_COLOR0;
					    u_xlat0.w = u_xlat0.w;
					    u_xlat0.w = clamp(u_xlat0.w, 0.0, 1.0);
					    u_xlat1 = u_xlat0 + vec4(-1.0, -1.0, -1.0, -1.0);
					    SV_Target0 = u_xlat0.wwww * u_xlat1 + vec4(1.0, 1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					bool u_xlatb1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1.x = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat0.w = u_xlat0.w * u_xlat1.x;
					    u_xlat0 = u_xlat0 * vs_COLOR0;
					    u_xlat0.w = u_xlat0.w;
					    u_xlat0.w = clamp(u_xlat0.w, 0.0, 1.0);
					    u_xlat1 = u_xlat0 + vec4(-1.0, -1.0, -1.0, -1.0);
					    SV_Target0 = u_xlat0.wwww * u_xlat1 + vec4(1.0, 1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendMul" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3.x;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3.x;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendMul" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3.x;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3.x;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendMul" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3.x;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3.x;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendMul" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3.x;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3.x;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendMul" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3.x;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3.x;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendMul" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3.x;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3.x;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendMul" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					bool u_xlatb1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1.x = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat0.w = u_xlat0.w * u_xlat1.x;
					    u_xlat0 = u_xlat0 * vs_COLOR0;
					    u_xlat0.w = u_xlat0.w;
					    u_xlat0.w = clamp(u_xlat0.w, 0.0, 1.0);
					    u_xlat1 = u_xlat0 + vec4(-1.0, -1.0, -1.0, -1.0);
					    SV_Target0 = u_xlat0.wwww * u_xlat1 + vec4(1.0, 1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					bool u_xlatb1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1.x = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat0.w = u_xlat0.w * u_xlat1.x;
					    u_xlat0 = u_xlat0 * vs_COLOR0;
					    u_xlat0.w = u_xlat0.w;
					    u_xlat0.w = clamp(u_xlat0.w, 0.0, 1.0);
					    u_xlat1 = u_xlat0 + vec4(-1.0, -1.0, -1.0, -1.0);
					    SV_Target0 = u_xlat0.wwww * u_xlat1 + vec4(1.0, 1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendMul" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					bool u_xlatb1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1.x = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat0.w = u_xlat0.w * u_xlat1.x;
					    u_xlat0 = u_xlat0 * vs_COLOR0;
					    u_xlat0.w = u_xlat0.w;
					    u_xlat0.w = clamp(u_xlat0.w, 0.0, 1.0);
					    u_xlat1 = u_xlat0 + vec4(-1.0, -1.0, -1.0, -1.0);
					    SV_Target0 = u_xlat0.wwww * u_xlat1 + vec4(1.0, 1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					bool u_xlatb1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1.x = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat0.w = u_xlat0.w * u_xlat1.x;
					    u_xlat0 = u_xlat0 * vs_COLOR0;
					    u_xlat0.w = u_xlat0.w;
					    u_xlat0.w = clamp(u_xlat0.w, 0.0, 1.0);
					    u_xlat1 = u_xlat0 + vec4(-1.0, -1.0, -1.0, -1.0);
					    SV_Target0 = u_xlat0.wwww * u_xlat1 + vec4(1.0, 1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendMul" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3.x;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3.x;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendMul" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3.x;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3.x;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendMul" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3.x;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3.x;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendMul" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3.x;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3.x;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendMul" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3.x;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3.x;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendMul" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3.x;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3.x;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendMul" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					bool u_xlatb1;
					float u_xlat6;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1.x = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat0.w = u_xlat0.w * u_xlat1.x;
					    u_xlat0 = u_xlat0 * vs_COLOR0;
					    u_xlat6 = u_xlat0.w;
					    u_xlat6 = clamp(u_xlat6, 0.0, 1.0);
					    u_xlat0.w = u_xlat6 * vs_TEXCOORD4;
					    u_xlat1 = u_xlat0 + vec4(-1.0, -1.0, -1.0, -1.0);
					    SV_Target0 = u_xlat0.wwww * u_xlat1 + vec4(1.0, 1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					bool u_xlatb1;
					float u_xlat6;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1.x = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat0.w = u_xlat0.w * u_xlat1.x;
					    u_xlat0 = u_xlat0 * vs_COLOR0;
					    u_xlat6 = u_xlat0.w;
					    u_xlat6 = clamp(u_xlat6, 0.0, 1.0);
					    u_xlat0.w = u_xlat6 * vs_TEXCOORD4;
					    u_xlat1 = u_xlat0 + vec4(-1.0, -1.0, -1.0, -1.0);
					    SV_Target0 = u_xlat0.wwww * u_xlat1 + vec4(1.0, 1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendMul" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					bool u_xlatb1;
					float u_xlat6;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1.x = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat0.w = u_xlat0.w * u_xlat1.x;
					    u_xlat0 = u_xlat0 * vs_COLOR0;
					    u_xlat6 = u_xlat0.w;
					    u_xlat6 = clamp(u_xlat6, 0.0, 1.0);
					    u_xlat0.w = u_xlat6 * vs_TEXCOORD4;
					    u_xlat1 = u_xlat0 + vec4(-1.0, -1.0, -1.0, -1.0);
					    SV_Target0 = u_xlat0.wwww * u_xlat1 + vec4(1.0, 1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					bool u_xlatb1;
					float u_xlat6;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1.x = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat0.w = u_xlat0.w * u_xlat1.x;
					    u_xlat0 = u_xlat0 * vs_COLOR0;
					    u_xlat6 = u_xlat0.w;
					    u_xlat6 = clamp(u_xlat6, 0.0, 1.0);
					    u_xlat0.w = u_xlat6 * vs_TEXCOORD4;
					    u_xlat1 = u_xlat0 + vec4(-1.0, -1.0, -1.0, -1.0);
					    SV_Target0 = u_xlat0.wwww * u_xlat1 + vec4(1.0, 1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendMul" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3.x;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3.x;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendMul" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3.x;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3.x;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendMul" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3.x;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3.x;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendMul" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3.x;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3.x;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendMul" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3.x;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3.x;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendMul" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3.x;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3.x;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendMul" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					bool u_xlatb1;
					float u_xlat6;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1.x = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat0.w = u_xlat0.w * u_xlat1.x;
					    u_xlat0 = u_xlat0 * vs_COLOR0;
					    u_xlat6 = u_xlat0.w;
					    u_xlat6 = clamp(u_xlat6, 0.0, 1.0);
					    u_xlat0.w = u_xlat6 * vs_TEXCOORD4;
					    u_xlat1 = u_xlat0 + vec4(-1.0, -1.0, -1.0, -1.0);
					    SV_Target0 = u_xlat0.wwww * u_xlat1 + vec4(1.0, 1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					bool u_xlatb1;
					float u_xlat6;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1.x = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat0.w = u_xlat0.w * u_xlat1.x;
					    u_xlat0 = u_xlat0 * vs_COLOR0;
					    u_xlat6 = u_xlat0.w;
					    u_xlat6 = clamp(u_xlat6, 0.0, 1.0);
					    u_xlat0.w = u_xlat6 * vs_TEXCOORD4;
					    u_xlat1 = u_xlat0 + vec4(-1.0, -1.0, -1.0, -1.0);
					    SV_Target0 = u_xlat0.wwww * u_xlat1 + vec4(1.0, 1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendMul" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					bool u_xlatb1;
					float u_xlat6;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1.x = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat0.w = u_xlat0.w * u_xlat1.x;
					    u_xlat0 = u_xlat0 * vs_COLOR0;
					    u_xlat6 = u_xlat0.w;
					    u_xlat6 = clamp(u_xlat6, 0.0, 1.0);
					    u_xlat0.w = u_xlat6 * vs_TEXCOORD4;
					    u_xlat1 = u_xlat0 + vec4(-1.0, -1.0, -1.0, -1.0);
					    SV_Target0 = u_xlat0.wwww * u_xlat1 + vec4(1.0, 1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					bool u_xlatb1;
					float u_xlat6;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1.x = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat0.w = u_xlat0.w * u_xlat1.x;
					    u_xlat0 = u_xlat0 * vs_COLOR0;
					    u_xlat6 = u_xlat0.w;
					    u_xlat6 = clamp(u_xlat6, 0.0, 1.0);
					    u_xlat0.w = u_xlat6 * vs_TEXCOORD4;
					    u_xlat1 = u_xlat0 + vec4(-1.0, -1.0, -1.0, -1.0);
					    SV_Target0 = u_xlat0.wwww * u_xlat1 + vec4(1.0, 1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendMul" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3.x;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3.x;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendMul" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3.x;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3.x;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendMul" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3.x;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3.x;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendMul" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3.x;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3.x;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendMul" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3.x;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3.x;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendMul" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3.x;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3.x;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendMul" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0.xyz = u_xlat0.xyz + u_xlat0.xyz;
					    u_xlat0.xyz = u_xlat0.xyz * _TintColor.xyz;
					    u_xlat1.xyz = u_xlat0.xyz * vs_COLOR0.xyz;
					    u_xlat0.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlatb0 = u_xlat0.w>=u_xlat0.x;
					    u_xlat1.w = u_xlatb0 ? 1.0 : float(0.0);
					    u_xlat0 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    SV_Target0 = u_xlat1.wwww * u_xlat0 + vec4(1.0, 1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0.xyz = u_xlat0.xyz + u_xlat0.xyz;
					    u_xlat0.xyz = u_xlat0.xyz * _TintColor.xyz;
					    u_xlat1.xyz = u_xlat0.xyz * vs_COLOR0.xyz;
					    u_xlat0.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlatb0 = u_xlat0.w>=u_xlat0.x;
					    u_xlat1.w = u_xlatb0 ? 1.0 : float(0.0);
					    u_xlat0 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    SV_Target0 = u_xlat1.wwww * u_xlat0 + vec4(1.0, 1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendMul" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0.xyz = u_xlat0.xyz + u_xlat0.xyz;
					    u_xlat0.xyz = u_xlat0.xyz * _TintColor.xyz;
					    u_xlat1.xyz = u_xlat0.xyz * vs_COLOR0.xyz;
					    u_xlat0.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlatb0 = u_xlat0.w>=u_xlat0.x;
					    u_xlat1.w = u_xlatb0 ? 1.0 : float(0.0);
					    u_xlat0 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    SV_Target0 = u_xlat1.wwww * u_xlat0 + vec4(1.0, 1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0.xyz = u_xlat0.xyz + u_xlat0.xyz;
					    u_xlat0.xyz = u_xlat0.xyz * _TintColor.xyz;
					    u_xlat1.xyz = u_xlat0.xyz * vs_COLOR0.xyz;
					    u_xlat0.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlatb0 = u_xlat0.w>=u_xlat0.x;
					    u_xlat1.w = u_xlatb0 ? 1.0 : float(0.0);
					    u_xlat0 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    SV_Target0 = u_xlat1.wwww * u_xlat0 + vec4(1.0, 1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendMul" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat2.w = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1 = u_xlat2 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat2.w = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1 = u_xlat2 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendMul" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat2.w = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1 = u_xlat2 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat2.w = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1 = u_xlat2 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendMul" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat2.w = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1 = u_xlat2 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat2.w = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1 = u_xlat2 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendMul" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat2.w = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1 = u_xlat2 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat2.w = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1 = u_xlat2 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendMul" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat2.w = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1 = u_xlat2 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat2.w = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1 = u_xlat2 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendMul" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat2.w = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1 = u_xlat2 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat2.w = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1 = u_xlat2 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendMul" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0.xyz = u_xlat0.xyz + u_xlat0.xyz;
					    u_xlat0.xyz = u_xlat0.xyz * _TintColor.xyz;
					    u_xlat1.xyz = u_xlat0.xyz * vs_COLOR0.xyz;
					    u_xlat0.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlatb0 = u_xlat0.w>=u_xlat0.x;
					    u_xlat1.w = u_xlatb0 ? 1.0 : float(0.0);
					    u_xlat0 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    SV_Target0 = u_xlat1.wwww * u_xlat0 + vec4(1.0, 1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0.xyz = u_xlat0.xyz + u_xlat0.xyz;
					    u_xlat0.xyz = u_xlat0.xyz * _TintColor.xyz;
					    u_xlat1.xyz = u_xlat0.xyz * vs_COLOR0.xyz;
					    u_xlat0.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlatb0 = u_xlat0.w>=u_xlat0.x;
					    u_xlat1.w = u_xlatb0 ? 1.0 : float(0.0);
					    u_xlat0 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    SV_Target0 = u_xlat1.wwww * u_xlat0 + vec4(1.0, 1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendMul" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0.xyz = u_xlat0.xyz + u_xlat0.xyz;
					    u_xlat0.xyz = u_xlat0.xyz * _TintColor.xyz;
					    u_xlat1.xyz = u_xlat0.xyz * vs_COLOR0.xyz;
					    u_xlat0.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlatb0 = u_xlat0.w>=u_xlat0.x;
					    u_xlat1.w = u_xlatb0 ? 1.0 : float(0.0);
					    u_xlat0 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    SV_Target0 = u_xlat1.wwww * u_xlat0 + vec4(1.0, 1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0.xyz = u_xlat0.xyz + u_xlat0.xyz;
					    u_xlat0.xyz = u_xlat0.xyz * _TintColor.xyz;
					    u_xlat1.xyz = u_xlat0.xyz * vs_COLOR0.xyz;
					    u_xlat0.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlatb0 = u_xlat0.w>=u_xlat0.x;
					    u_xlat1.w = u_xlatb0 ? 1.0 : float(0.0);
					    u_xlat0 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    SV_Target0 = u_xlat1.wwww * u_xlat0 + vec4(1.0, 1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendMul" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat2.w = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1 = u_xlat2 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat2.w = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1 = u_xlat2 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendMul" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat2.w = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1 = u_xlat2 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat2.w = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1 = u_xlat2 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendMul" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat2.w = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1 = u_xlat2 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat2.w = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1 = u_xlat2 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendMul" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat2.w = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1 = u_xlat2 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat2.w = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1 = u_xlat2 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendMul" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat2.w = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1 = u_xlat2 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat2.w = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1 = u_xlat2 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendMul" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat2.w = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1 = u_xlat2 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat2.w = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1 = u_xlat2 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendMul" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0.xyz = u_xlat0.xyz + u_xlat0.xyz;
					    u_xlat0.xyz = u_xlat0.xyz * _TintColor.xyz;
					    u_xlat1.xyz = u_xlat0.xyz * vs_COLOR0.xyz;
					    u_xlat0.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlatb0 = u_xlat0.w>=u_xlat0.x;
					    u_xlat0.x = u_xlatb0 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat0.x * vs_TEXCOORD4;
					    u_xlat0 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    SV_Target0 = u_xlat1.wwww * u_xlat0 + vec4(1.0, 1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0.xyz = u_xlat0.xyz + u_xlat0.xyz;
					    u_xlat0.xyz = u_xlat0.xyz * _TintColor.xyz;
					    u_xlat1.xyz = u_xlat0.xyz * vs_COLOR0.xyz;
					    u_xlat0.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlatb0 = u_xlat0.w>=u_xlat0.x;
					    u_xlat0.x = u_xlatb0 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat0.x * vs_TEXCOORD4;
					    u_xlat0 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    SV_Target0 = u_xlat1.wwww * u_xlat0 + vec4(1.0, 1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendMul" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0.xyz = u_xlat0.xyz + u_xlat0.xyz;
					    u_xlat0.xyz = u_xlat0.xyz * _TintColor.xyz;
					    u_xlat1.xyz = u_xlat0.xyz * vs_COLOR0.xyz;
					    u_xlat0.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlatb0 = u_xlat0.w>=u_xlat0.x;
					    u_xlat0.x = u_xlatb0 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat0.x * vs_TEXCOORD4;
					    u_xlat0 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    SV_Target0 = u_xlat1.wwww * u_xlat0 + vec4(1.0, 1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0.xyz = u_xlat0.xyz + u_xlat0.xyz;
					    u_xlat0.xyz = u_xlat0.xyz * _TintColor.xyz;
					    u_xlat1.xyz = u_xlat0.xyz * vs_COLOR0.xyz;
					    u_xlat0.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlatb0 = u_xlat0.w>=u_xlat0.x;
					    u_xlat0.x = u_xlatb0 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat0.x * vs_TEXCOORD4;
					    u_xlat0 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    SV_Target0 = u_xlat1.wwww * u_xlat0 + vec4(1.0, 1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendMul" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat2.w = u_xlat3.x * vs_TEXCOORD4;
					    u_xlat1 = u_xlat2 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat2.w = u_xlat3.x * vs_TEXCOORD4;
					    u_xlat1 = u_xlat2 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendMul" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat2.w = u_xlat3.x * vs_TEXCOORD4;
					    u_xlat1 = u_xlat2 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat2.w = u_xlat3.x * vs_TEXCOORD4;
					    u_xlat1 = u_xlat2 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendMul" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat2.w = u_xlat3.x * vs_TEXCOORD4;
					    u_xlat1 = u_xlat2 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat2.w = u_xlat3.x * vs_TEXCOORD4;
					    u_xlat1 = u_xlat2 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendMul" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat2.w = u_xlat3.x * vs_TEXCOORD4;
					    u_xlat1 = u_xlat2 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat2.w = u_xlat3.x * vs_TEXCOORD4;
					    u_xlat1 = u_xlat2 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendMul" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat2.w = u_xlat3.x * vs_TEXCOORD4;
					    u_xlat1 = u_xlat2 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat2.w = u_xlat3.x * vs_TEXCOORD4;
					    u_xlat1 = u_xlat2 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendMul" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat2.w = u_xlat3.x * vs_TEXCOORD4;
					    u_xlat1 = u_xlat2 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat2.w = u_xlat3.x * vs_TEXCOORD4;
					    u_xlat1 = u_xlat2 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendMul" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0.xyz = u_xlat0.xyz + u_xlat0.xyz;
					    u_xlat0.xyz = u_xlat0.xyz * _TintColor.xyz;
					    u_xlat1.xyz = u_xlat0.xyz * vs_COLOR0.xyz;
					    u_xlat0.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlatb0 = u_xlat0.w>=u_xlat0.x;
					    u_xlat0.x = u_xlatb0 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat0.x * vs_TEXCOORD4;
					    u_xlat0 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    SV_Target0 = u_xlat1.wwww * u_xlat0 + vec4(1.0, 1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0.xyz = u_xlat0.xyz + u_xlat0.xyz;
					    u_xlat0.xyz = u_xlat0.xyz * _TintColor.xyz;
					    u_xlat1.xyz = u_xlat0.xyz * vs_COLOR0.xyz;
					    u_xlat0.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlatb0 = u_xlat0.w>=u_xlat0.x;
					    u_xlat0.x = u_xlatb0 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat0.x * vs_TEXCOORD4;
					    u_xlat0 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    SV_Target0 = u_xlat1.wwww * u_xlat0 + vec4(1.0, 1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendMul" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0.xyz = u_xlat0.xyz + u_xlat0.xyz;
					    u_xlat0.xyz = u_xlat0.xyz * _TintColor.xyz;
					    u_xlat1.xyz = u_xlat0.xyz * vs_COLOR0.xyz;
					    u_xlat0.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlatb0 = u_xlat0.w>=u_xlat0.x;
					    u_xlat0.x = u_xlatb0 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat0.x * vs_TEXCOORD4;
					    u_xlat0 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    SV_Target0 = u_xlat1.wwww * u_xlat0 + vec4(1.0, 1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0.xyz = u_xlat0.xyz + u_xlat0.xyz;
					    u_xlat0.xyz = u_xlat0.xyz * _TintColor.xyz;
					    u_xlat1.xyz = u_xlat0.xyz * vs_COLOR0.xyz;
					    u_xlat0.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlatb0 = u_xlat0.w>=u_xlat0.x;
					    u_xlat0.x = u_xlatb0 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat0.x * vs_TEXCOORD4;
					    u_xlat0 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    SV_Target0 = u_xlat1.wwww * u_xlat0 + vec4(1.0, 1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendMul" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat2.w = u_xlat3.x * vs_TEXCOORD4;
					    u_xlat1 = u_xlat2 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat2.w = u_xlat3.x * vs_TEXCOORD4;
					    u_xlat1 = u_xlat2 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendMul" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat2.w = u_xlat3.x * vs_TEXCOORD4;
					    u_xlat1 = u_xlat2 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat2.w = u_xlat3.x * vs_TEXCOORD4;
					    u_xlat1 = u_xlat2 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendMul" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat2.w = u_xlat3.x * vs_TEXCOORD4;
					    u_xlat1 = u_xlat2 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat2.w = u_xlat3.x * vs_TEXCOORD4;
					    u_xlat1 = u_xlat2 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendMul" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat2.w = u_xlat3.x * vs_TEXCOORD4;
					    u_xlat1 = u_xlat2 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat2.w = u_xlat3.x * vs_TEXCOORD4;
					    u_xlat1 = u_xlat2 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendMul" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat2.w = u_xlat3.x * vs_TEXCOORD4;
					    u_xlat1 = u_xlat2 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat2.w = u_xlat3.x * vs_TEXCOORD4;
					    u_xlat1 = u_xlat2 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendMul" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat2.w = u_xlat3.x * vs_TEXCOORD4;
					    u_xlat1 = u_xlat2 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat2.w = u_xlat3.x * vs_TEXCOORD4;
					    u_xlat1 = u_xlat2 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendMul" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat0 = u_xlat0 * vs_COLOR0;
					    u_xlat0.w = u_xlat0.w;
					    u_xlat0.w = clamp(u_xlat0.w, 0.0, 1.0);
					    u_xlat1 = u_xlat0 + vec4(-1.0, -1.0, -1.0, -1.0);
					    SV_Target0 = u_xlat0.wwww * u_xlat1 + vec4(1.0, 1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat0 = u_xlat0 * vs_COLOR0;
					    u_xlat0.w = u_xlat0.w;
					    u_xlat0.w = clamp(u_xlat0.w, 0.0, 1.0);
					    u_xlat1 = u_xlat0 + vec4(-1.0, -1.0, -1.0, -1.0);
					    SV_Target0 = u_xlat0.wwww * u_xlat1 + vec4(1.0, 1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendMul" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[7];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat0.w = u_xlat0.w;
					    u_xlat0.w = clamp(u_xlat0.w, 0.0, 1.0);
					    u_xlat1 = u_xlat0 + vec4(-1.0, -1.0, -1.0, -1.0);
					    SV_Target0 = u_xlat0.wwww * u_xlat1 + vec4(1.0, 1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[6];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat0.w = u_xlat0.w;
					    u_xlat0.w = clamp(u_xlat0.w, 0.0, 1.0);
					    u_xlat1 = u_xlat0 + vec4(-1.0, -1.0, -1.0, -1.0);
					    SV_Target0 = u_xlat0.wwww * u_xlat1 + vec4(1.0, 1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendMul" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendMul" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat3.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat1 = texture(_CameraDepthTexture, u_xlat3.xy);
					    u_xlat3.x = _ZBufferParams.z * u_xlat1.x + _ZBufferParams.w;
					    u_xlat3.x = float(1.0) / u_xlat3.x;
					    u_xlat3.x = u_xlat3.x + (-vs_TEXCOORD3.z);
					    u_xlat3.x = u_xlat3.x * _InvFade;
					    u_xlat3.x = clamp(u_xlat3.x, 0.0, 1.0);
					    u_xlat1.w = u_xlat3.x * vs_COLOR0.w;
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2 = u_xlat2 + u_xlat2;
					    u_xlat2 = u_xlat2 * _TintColor;
					    u_xlat1.xyz = vs_COLOR0.xyz;
					    u_xlat1 = u_xlat1 * u_xlat2;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat3.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat1 = texture(_CameraDepthTexture, u_xlat3.xy);
					    u_xlat3.x = _ZBufferParams.z * u_xlat1.x + _ZBufferParams.w;
					    u_xlat3.x = float(1.0) / u_xlat3.x;
					    u_xlat3.x = u_xlat3.x + (-vs_TEXCOORD3.z);
					    u_xlat3.x = u_xlat3.x * _InvFade;
					    u_xlat3.x = clamp(u_xlat3.x, 0.0, 1.0);
					    u_xlat1.w = u_xlat3.x * vs_COLOR0.w;
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2 = u_xlat2 + u_xlat2;
					    u_xlat2 = u_xlat2 * _TintColor;
					    u_xlat1.xyz = vs_COLOR0.xyz;
					    u_xlat1 = u_xlat1 * u_xlat2;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendMul" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendMul" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat3.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat1 = texture(_CameraDepthTexture, u_xlat3.xy);
					    u_xlat3.x = _ZBufferParams.z * u_xlat1.x + _ZBufferParams.w;
					    u_xlat3.x = float(1.0) / u_xlat3.x;
					    u_xlat3.x = u_xlat3.x + (-vs_TEXCOORD3.z);
					    u_xlat3.x = u_xlat3.x * _InvFade;
					    u_xlat3.x = clamp(u_xlat3.x, 0.0, 1.0);
					    u_xlat1.w = u_xlat3.x * vs_COLOR0.w;
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2 = u_xlat2 + u_xlat2;
					    u_xlat2 = u_xlat2 * _TintColor;
					    u_xlat1.xyz = vs_COLOR0.xyz;
					    u_xlat1 = u_xlat1 * u_xlat2;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat3.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat1 = texture(_CameraDepthTexture, u_xlat3.xy);
					    u_xlat3.x = _ZBufferParams.z * u_xlat1.x + _ZBufferParams.w;
					    u_xlat3.x = float(1.0) / u_xlat3.x;
					    u_xlat3.x = u_xlat3.x + (-vs_TEXCOORD3.z);
					    u_xlat3.x = u_xlat3.x * _InvFade;
					    u_xlat3.x = clamp(u_xlat3.x, 0.0, 1.0);
					    u_xlat1.w = u_xlat3.x * vs_COLOR0.w;
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2 = u_xlat2 + u_xlat2;
					    u_xlat2 = u_xlat2 * _TintColor;
					    u_xlat1.xyz = vs_COLOR0.xyz;
					    u_xlat1 = u_xlat1 * u_xlat2;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendMul" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendMul" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat3.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat1 = texture(_CameraDepthTexture, u_xlat3.xy);
					    u_xlat3.x = _ZBufferParams.z * u_xlat1.x + _ZBufferParams.w;
					    u_xlat3.x = float(1.0) / u_xlat3.x;
					    u_xlat3.x = u_xlat3.x + (-vs_TEXCOORD3.z);
					    u_xlat3.x = u_xlat3.x * _InvFade;
					    u_xlat3.x = clamp(u_xlat3.x, 0.0, 1.0);
					    u_xlat1.w = u_xlat3.x * vs_COLOR0.w;
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2 = u_xlat2 + u_xlat2;
					    u_xlat2 = u_xlat2 * _TintColor;
					    u_xlat1.xyz = vs_COLOR0.xyz;
					    u_xlat1 = u_xlat1 * u_xlat2;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat3.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat1 = texture(_CameraDepthTexture, u_xlat3.xy);
					    u_xlat3.x = _ZBufferParams.z * u_xlat1.x + _ZBufferParams.w;
					    u_xlat3.x = float(1.0) / u_xlat3.x;
					    u_xlat3.x = u_xlat3.x + (-vs_TEXCOORD3.z);
					    u_xlat3.x = u_xlat3.x * _InvFade;
					    u_xlat3.x = clamp(u_xlat3.x, 0.0, 1.0);
					    u_xlat1.w = u_xlat3.x * vs_COLOR0.w;
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2 = u_xlat2 + u_xlat2;
					    u_xlat2 = u_xlat2 * _TintColor;
					    u_xlat1.xyz = vs_COLOR0.xyz;
					    u_xlat1 = u_xlat1 * u_xlat2;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendMul" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[7];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat0.w = u_xlat0.w;
					    u_xlat0.w = clamp(u_xlat0.w, 0.0, 1.0);
					    u_xlat1 = u_xlat0 + vec4(-1.0, -1.0, -1.0, -1.0);
					    SV_Target0 = u_xlat0.wwww * u_xlat1 + vec4(1.0, 1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[6];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat0.w = u_xlat0.w;
					    u_xlat0.w = clamp(u_xlat0.w, 0.0, 1.0);
					    u_xlat1 = u_xlat0 + vec4(-1.0, -1.0, -1.0, -1.0);
					    SV_Target0 = u_xlat0.wwww * u_xlat1 + vec4(1.0, 1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendMul" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[7];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat0.w = u_xlat0.w;
					    u_xlat0.w = clamp(u_xlat0.w, 0.0, 1.0);
					    u_xlat1 = u_xlat0 + vec4(-1.0, -1.0, -1.0, -1.0);
					    SV_Target0 = u_xlat0.wwww * u_xlat1 + vec4(1.0, 1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[6];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat0.w = u_xlat0.w;
					    u_xlat0.w = clamp(u_xlat0.w, 0.0, 1.0);
					    u_xlat1 = u_xlat0 + vec4(-1.0, -1.0, -1.0, -1.0);
					    SV_Target0 = u_xlat0.wwww * u_xlat1 + vec4(1.0, 1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendMul" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat3.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat1 = texture(_CameraDepthTexture, u_xlat3.xy);
					    u_xlat3.x = _ZBufferParams.z * u_xlat1.x + _ZBufferParams.w;
					    u_xlat3.x = float(1.0) / u_xlat3.x;
					    u_xlat3.x = u_xlat3.x + (-vs_TEXCOORD3.z);
					    u_xlat3.x = u_xlat3.x * _InvFade;
					    u_xlat3.x = clamp(u_xlat3.x, 0.0, 1.0);
					    u_xlat1.w = u_xlat3.x * vs_COLOR0.w;
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2 = u_xlat2 + u_xlat2;
					    u_xlat2 = u_xlat2 * _TintColor;
					    u_xlat1.xyz = vs_COLOR0.xyz;
					    u_xlat1 = u_xlat1 * u_xlat2;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat3.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat1 = texture(_CameraDepthTexture, u_xlat3.xy);
					    u_xlat3.x = _ZBufferParams.z * u_xlat1.x + _ZBufferParams.w;
					    u_xlat3.x = float(1.0) / u_xlat3.x;
					    u_xlat3.x = u_xlat3.x + (-vs_TEXCOORD3.z);
					    u_xlat3.x = u_xlat3.x * _InvFade;
					    u_xlat3.x = clamp(u_xlat3.x, 0.0, 1.0);
					    u_xlat1.w = u_xlat3.x * vs_COLOR0.w;
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2 = u_xlat2 + u_xlat2;
					    u_xlat2 = u_xlat2 * _TintColor;
					    u_xlat1.xyz = vs_COLOR0.xyz;
					    u_xlat1 = u_xlat1 * u_xlat2;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendMul" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat3.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat1 = texture(_CameraDepthTexture, u_xlat3.xy);
					    u_xlat3.x = _ZBufferParams.z * u_xlat1.x + _ZBufferParams.w;
					    u_xlat3.x = float(1.0) / u_xlat3.x;
					    u_xlat3.x = u_xlat3.x + (-vs_TEXCOORD3.z);
					    u_xlat3.x = u_xlat3.x * _InvFade;
					    u_xlat3.x = clamp(u_xlat3.x, 0.0, 1.0);
					    u_xlat1.w = u_xlat3.x * vs_COLOR0.w;
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2 = u_xlat2 + u_xlat2;
					    u_xlat2 = u_xlat2 * _TintColor;
					    u_xlat1.xyz = vs_COLOR0.xyz;
					    u_xlat1 = u_xlat1 * u_xlat2;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat3.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat1 = texture(_CameraDepthTexture, u_xlat3.xy);
					    u_xlat3.x = _ZBufferParams.z * u_xlat1.x + _ZBufferParams.w;
					    u_xlat3.x = float(1.0) / u_xlat3.x;
					    u_xlat3.x = u_xlat3.x + (-vs_TEXCOORD3.z);
					    u_xlat3.x = u_xlat3.x * _InvFade;
					    u_xlat3.x = clamp(u_xlat3.x, 0.0, 1.0);
					    u_xlat1.w = u_xlat3.x * vs_COLOR0.w;
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2 = u_xlat2 + u_xlat2;
					    u_xlat2 = u_xlat2 * _TintColor;
					    u_xlat1.xyz = vs_COLOR0.xyz;
					    u_xlat1 = u_xlat1 * u_xlat2;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendMul" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat3.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat1 = texture(_CameraDepthTexture, u_xlat3.xy);
					    u_xlat3.x = _ZBufferParams.z * u_xlat1.x + _ZBufferParams.w;
					    u_xlat3.x = float(1.0) / u_xlat3.x;
					    u_xlat3.x = u_xlat3.x + (-vs_TEXCOORD3.z);
					    u_xlat3.x = u_xlat3.x * _InvFade;
					    u_xlat3.x = clamp(u_xlat3.x, 0.0, 1.0);
					    u_xlat1.w = u_xlat3.x * vs_COLOR0.w;
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2 = u_xlat2 + u_xlat2;
					    u_xlat2 = u_xlat2 * _TintColor;
					    u_xlat1.xyz = vs_COLOR0.xyz;
					    u_xlat1 = u_xlat1 * u_xlat2;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat3.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat1 = texture(_CameraDepthTexture, u_xlat3.xy);
					    u_xlat3.x = _ZBufferParams.z * u_xlat1.x + _ZBufferParams.w;
					    u_xlat3.x = float(1.0) / u_xlat3.x;
					    u_xlat3.x = u_xlat3.x + (-vs_TEXCOORD3.z);
					    u_xlat3.x = u_xlat3.x * _InvFade;
					    u_xlat3.x = clamp(u_xlat3.x, 0.0, 1.0);
					    u_xlat1.w = u_xlat3.x * vs_COLOR0.w;
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2 = u_xlat2 + u_xlat2;
					    u_xlat2 = u_xlat2 * _TintColor;
					    u_xlat1.xyz = vs_COLOR0.xyz;
					    u_xlat1 = u_xlat1 * u_xlat2;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendMul" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat3.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat1 = texture(_CameraDepthTexture, u_xlat3.xy);
					    u_xlat3.x = _ZBufferParams.z * u_xlat1.x + _ZBufferParams.w;
					    u_xlat3.x = float(1.0) / u_xlat3.x;
					    u_xlat3.x = u_xlat3.x + (-vs_TEXCOORD3.z);
					    u_xlat3.x = u_xlat3.x * _InvFade;
					    u_xlat3.x = clamp(u_xlat3.x, 0.0, 1.0);
					    u_xlat1.w = u_xlat3.x * vs_COLOR0.w;
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2 = u_xlat2 + u_xlat2;
					    u_xlat2 = u_xlat2 * _TintColor;
					    u_xlat1.xyz = vs_COLOR0.xyz;
					    u_xlat1 = u_xlat1 * u_xlat2;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat3.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat1 = texture(_CameraDepthTexture, u_xlat3.xy);
					    u_xlat3.x = _ZBufferParams.z * u_xlat1.x + _ZBufferParams.w;
					    u_xlat3.x = float(1.0) / u_xlat3.x;
					    u_xlat3.x = u_xlat3.x + (-vs_TEXCOORD3.z);
					    u_xlat3.x = u_xlat3.x * _InvFade;
					    u_xlat3.x = clamp(u_xlat3.x, 0.0, 1.0);
					    u_xlat1.w = u_xlat3.x * vs_COLOR0.w;
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2 = u_xlat2 + u_xlat2;
					    u_xlat2 = u_xlat2 * _TintColor;
					    u_xlat1.xyz = vs_COLOR0.xyz;
					    u_xlat1 = u_xlat1 * u_xlat2;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendMul" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat3.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat1 = texture(_CameraDepthTexture, u_xlat3.xy);
					    u_xlat3.x = _ZBufferParams.z * u_xlat1.x + _ZBufferParams.w;
					    u_xlat3.x = float(1.0) / u_xlat3.x;
					    u_xlat3.x = u_xlat3.x + (-vs_TEXCOORD3.z);
					    u_xlat3.x = u_xlat3.x * _InvFade;
					    u_xlat3.x = clamp(u_xlat3.x, 0.0, 1.0);
					    u_xlat1.w = u_xlat3.x * vs_COLOR0.w;
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2 = u_xlat2 + u_xlat2;
					    u_xlat2 = u_xlat2 * _TintColor;
					    u_xlat1.xyz = vs_COLOR0.xyz;
					    u_xlat1 = u_xlat1 * u_xlat2;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat3.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat1 = texture(_CameraDepthTexture, u_xlat3.xy);
					    u_xlat3.x = _ZBufferParams.z * u_xlat1.x + _ZBufferParams.w;
					    u_xlat3.x = float(1.0) / u_xlat3.x;
					    u_xlat3.x = u_xlat3.x + (-vs_TEXCOORD3.z);
					    u_xlat3.x = u_xlat3.x * _InvFade;
					    u_xlat3.x = clamp(u_xlat3.x, 0.0, 1.0);
					    u_xlat1.w = u_xlat3.x * vs_COLOR0.w;
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2 = u_xlat2 + u_xlat2;
					    u_xlat2 = u_xlat2 * _TintColor;
					    u_xlat1.xyz = vs_COLOR0.xyz;
					    u_xlat1 = u_xlat1 * u_xlat2;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendMul" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat3.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat1 = texture(_CameraDepthTexture, u_xlat3.xy);
					    u_xlat3.x = _ZBufferParams.z * u_xlat1.x + _ZBufferParams.w;
					    u_xlat3.x = float(1.0) / u_xlat3.x;
					    u_xlat3.x = u_xlat3.x + (-vs_TEXCOORD3.z);
					    u_xlat3.x = u_xlat3.x * _InvFade;
					    u_xlat3.x = clamp(u_xlat3.x, 0.0, 1.0);
					    u_xlat1.w = u_xlat3.x * vs_COLOR0.w;
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2 = u_xlat2 + u_xlat2;
					    u_xlat2 = u_xlat2 * _TintColor;
					    u_xlat1.xyz = vs_COLOR0.xyz;
					    u_xlat1 = u_xlat1 * u_xlat2;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat3.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat1 = texture(_CameraDepthTexture, u_xlat3.xy);
					    u_xlat3.x = _ZBufferParams.z * u_xlat1.x + _ZBufferParams.w;
					    u_xlat3.x = float(1.0) / u_xlat3.x;
					    u_xlat3.x = u_xlat3.x + (-vs_TEXCOORD3.z);
					    u_xlat3.x = u_xlat3.x * _InvFade;
					    u_xlat3.x = clamp(u_xlat3.x, 0.0, 1.0);
					    u_xlat1.w = u_xlat3.x * vs_COLOR0.w;
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2 = u_xlat2 + u_xlat2;
					    u_xlat2 = u_xlat2 * _TintColor;
					    u_xlat1.xyz = vs_COLOR0.xyz;
					    u_xlat1 = u_xlat1 * u_xlat2;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendMul" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat6;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat0 = u_xlat0 * vs_COLOR0;
					    u_xlat6 = u_xlat0.w;
					    u_xlat6 = clamp(u_xlat6, 0.0, 1.0);
					    u_xlat0.w = u_xlat6 * vs_TEXCOORD4;
					    u_xlat1 = u_xlat0 + vec4(-1.0, -1.0, -1.0, -1.0);
					    SV_Target0 = u_xlat0.wwww * u_xlat1 + vec4(1.0, 1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat6;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat0 = u_xlat0 * vs_COLOR0;
					    u_xlat6 = u_xlat0.w;
					    u_xlat6 = clamp(u_xlat6, 0.0, 1.0);
					    u_xlat0.w = u_xlat6 * vs_TEXCOORD4;
					    u_xlat1 = u_xlat0 + vec4(-1.0, -1.0, -1.0, -1.0);
					    SV_Target0 = u_xlat0.wwww * u_xlat1 + vec4(1.0, 1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendMul" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[7];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat6;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat6 = u_xlat0.w;
					    u_xlat6 = clamp(u_xlat6, 0.0, 1.0);
					    u_xlat0.w = u_xlat6 * vs_TEXCOORD4;
					    u_xlat1 = u_xlat0 + vec4(-1.0, -1.0, -1.0, -1.0);
					    SV_Target0 = u_xlat0.wwww * u_xlat1 + vec4(1.0, 1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[6];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat6;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat6 = u_xlat0.w;
					    u_xlat6 = clamp(u_xlat6, 0.0, 1.0);
					    u_xlat0.w = u_xlat6 * vs_TEXCOORD4;
					    u_xlat1 = u_xlat0 + vec4(-1.0, -1.0, -1.0, -1.0);
					    SV_Target0 = u_xlat0.wwww * u_xlat1 + vec4(1.0, 1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendMul" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendMul" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat6;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat6 = u_xlat0.w;
					    u_xlat6 = clamp(u_xlat6, 0.0, 1.0);
					    u_xlat0.w = u_xlat6 * vs_TEXCOORD4;
					    u_xlat1 = u_xlat0 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat0.xyz = u_xlat0.www * u_xlat1.xyz;
					    SV_Target0.w = u_xlat0.w * u_xlat1.w + 1.0;
					    u_xlat6 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat6 = (-u_xlat6) + 1.0;
					    u_xlat6 = u_xlat6 * _ProjectionParams.z;
					    u_xlat6 = max(u_xlat6, 0.0);
					    u_xlat6 = u_xlat6 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat6 = clamp(u_xlat6, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat6) * u_xlat0.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat6;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat6 = u_xlat0.w;
					    u_xlat6 = clamp(u_xlat6, 0.0, 1.0);
					    u_xlat0.w = u_xlat6 * vs_TEXCOORD4;
					    u_xlat1 = u_xlat0 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat0.xyz = u_xlat0.www * u_xlat1.xyz;
					    SV_Target0.w = u_xlat0.w * u_xlat1.w + 1.0;
					    u_xlat6 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat6 = (-u_xlat6) + 1.0;
					    u_xlat6 = u_xlat6 * _ProjectionParams.z;
					    u_xlat6 = max(u_xlat6, 0.0);
					    u_xlat6 = u_xlat6 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat6 = clamp(u_xlat6, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat6) * u_xlat0.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendMul" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendMul" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat3.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat1 = texture(_CameraDepthTexture, u_xlat3.xy);
					    u_xlat3.x = _ZBufferParams.z * u_xlat1.x + _ZBufferParams.w;
					    u_xlat3.x = float(1.0) / u_xlat3.x;
					    u_xlat3.x = u_xlat3.x + (-vs_TEXCOORD3.z);
					    u_xlat3.x = u_xlat3.x * _InvFade;
					    u_xlat3.x = clamp(u_xlat3.x, 0.0, 1.0);
					    u_xlat1.w = u_xlat3.x * vs_COLOR0.w;
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2 = u_xlat2 + u_xlat2;
					    u_xlat2 = u_xlat2 * _TintColor;
					    u_xlat1.xyz = vs_COLOR0.xyz;
					    u_xlat1 = u_xlat1 * u_xlat2;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat3.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat1 = texture(_CameraDepthTexture, u_xlat3.xy);
					    u_xlat3.x = _ZBufferParams.z * u_xlat1.x + _ZBufferParams.w;
					    u_xlat3.x = float(1.0) / u_xlat3.x;
					    u_xlat3.x = u_xlat3.x + (-vs_TEXCOORD3.z);
					    u_xlat3.x = u_xlat3.x * _InvFade;
					    u_xlat3.x = clamp(u_xlat3.x, 0.0, 1.0);
					    u_xlat1.w = u_xlat3.x * vs_COLOR0.w;
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2 = u_xlat2 + u_xlat2;
					    u_xlat2 = u_xlat2 * _TintColor;
					    u_xlat1.xyz = vs_COLOR0.xyz;
					    u_xlat1 = u_xlat1 * u_xlat2;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendMul" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendMul" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat3.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat1 = texture(_CameraDepthTexture, u_xlat3.xy);
					    u_xlat3.x = _ZBufferParams.z * u_xlat1.x + _ZBufferParams.w;
					    u_xlat3.x = float(1.0) / u_xlat3.x;
					    u_xlat3.x = u_xlat3.x + (-vs_TEXCOORD3.z);
					    u_xlat3.x = u_xlat3.x * _InvFade;
					    u_xlat3.x = clamp(u_xlat3.x, 0.0, 1.0);
					    u_xlat1.w = u_xlat3.x * vs_COLOR0.w;
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2 = u_xlat2 + u_xlat2;
					    u_xlat2 = u_xlat2 * _TintColor;
					    u_xlat1.xyz = vs_COLOR0.xyz;
					    u_xlat1 = u_xlat1 * u_xlat2;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat3.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat1 = texture(_CameraDepthTexture, u_xlat3.xy);
					    u_xlat3.x = _ZBufferParams.z * u_xlat1.x + _ZBufferParams.w;
					    u_xlat3.x = float(1.0) / u_xlat3.x;
					    u_xlat3.x = u_xlat3.x + (-vs_TEXCOORD3.z);
					    u_xlat3.x = u_xlat3.x * _InvFade;
					    u_xlat3.x = clamp(u_xlat3.x, 0.0, 1.0);
					    u_xlat1.w = u_xlat3.x * vs_COLOR0.w;
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2 = u_xlat2 + u_xlat2;
					    u_xlat2 = u_xlat2 * _TintColor;
					    u_xlat1.xyz = vs_COLOR0.xyz;
					    u_xlat1 = u_xlat1 * u_xlat2;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendMul" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[7];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat6;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat6 = u_xlat0.w;
					    u_xlat6 = clamp(u_xlat6, 0.0, 1.0);
					    u_xlat0.w = u_xlat6 * vs_TEXCOORD4;
					    u_xlat1 = u_xlat0 + vec4(-1.0, -1.0, -1.0, -1.0);
					    SV_Target0 = u_xlat0.wwww * u_xlat1 + vec4(1.0, 1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[6];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat6;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat6 = u_xlat0.w;
					    u_xlat6 = clamp(u_xlat6, 0.0, 1.0);
					    u_xlat0.w = u_xlat6 * vs_TEXCOORD4;
					    u_xlat1 = u_xlat0 + vec4(-1.0, -1.0, -1.0, -1.0);
					    SV_Target0 = u_xlat0.wwww * u_xlat1 + vec4(1.0, 1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendMul" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[7];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat6;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat6 = u_xlat0.w;
					    u_xlat6 = clamp(u_xlat6, 0.0, 1.0);
					    u_xlat0.w = u_xlat6 * vs_TEXCOORD4;
					    u_xlat1 = u_xlat0 + vec4(-1.0, -1.0, -1.0, -1.0);
					    SV_Target0 = u_xlat0.wwww * u_xlat1 + vec4(1.0, 1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[6];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat6;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat6 = u_xlat0.w;
					    u_xlat6 = clamp(u_xlat6, 0.0, 1.0);
					    u_xlat0.w = u_xlat6 * vs_TEXCOORD4;
					    u_xlat1 = u_xlat0 + vec4(-1.0, -1.0, -1.0, -1.0);
					    SV_Target0 = u_xlat0.wwww * u_xlat1 + vec4(1.0, 1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendMul" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat6;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat6 = u_xlat0.w;
					    u_xlat6 = clamp(u_xlat6, 0.0, 1.0);
					    u_xlat0.w = u_xlat6 * vs_TEXCOORD4;
					    u_xlat1 = u_xlat0 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat0.xyz = u_xlat0.www * u_xlat1.xyz;
					    SV_Target0.w = u_xlat0.w * u_xlat1.w + 1.0;
					    u_xlat6 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat6 = (-u_xlat6) + 1.0;
					    u_xlat6 = u_xlat6 * _ProjectionParams.z;
					    u_xlat6 = max(u_xlat6, 0.0);
					    u_xlat6 = u_xlat6 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat6 = clamp(u_xlat6, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat6) * u_xlat0.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat6;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat6 = u_xlat0.w;
					    u_xlat6 = clamp(u_xlat6, 0.0, 1.0);
					    u_xlat0.w = u_xlat6 * vs_TEXCOORD4;
					    u_xlat1 = u_xlat0 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat0.xyz = u_xlat0.www * u_xlat1.xyz;
					    SV_Target0.w = u_xlat0.w * u_xlat1.w + 1.0;
					    u_xlat6 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat6 = (-u_xlat6) + 1.0;
					    u_xlat6 = u_xlat6 * _ProjectionParams.z;
					    u_xlat6 = max(u_xlat6, 0.0);
					    u_xlat6 = u_xlat6 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat6 = clamp(u_xlat6, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat6) * u_xlat0.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendMul" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat6;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat6 = u_xlat0.w;
					    u_xlat6 = clamp(u_xlat6, 0.0, 1.0);
					    u_xlat0.w = u_xlat6 * vs_TEXCOORD4;
					    u_xlat1 = u_xlat0 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat0.xyz = u_xlat0.www * u_xlat1.xyz;
					    SV_Target0.w = u_xlat0.w * u_xlat1.w + 1.0;
					    u_xlat6 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat6 = (-u_xlat6) + 1.0;
					    u_xlat6 = u_xlat6 * _ProjectionParams.z;
					    u_xlat6 = max(u_xlat6, 0.0);
					    u_xlat6 = u_xlat6 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat6 = clamp(u_xlat6, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat6) * u_xlat0.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat6;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat6 = u_xlat0.w;
					    u_xlat6 = clamp(u_xlat6, 0.0, 1.0);
					    u_xlat0.w = u_xlat6 * vs_TEXCOORD4;
					    u_xlat1 = u_xlat0 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat0.xyz = u_xlat0.www * u_xlat1.xyz;
					    SV_Target0.w = u_xlat0.w * u_xlat1.w + 1.0;
					    u_xlat6 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat6 = (-u_xlat6) + 1.0;
					    u_xlat6 = u_xlat6 * _ProjectionParams.z;
					    u_xlat6 = max(u_xlat6, 0.0);
					    u_xlat6 = u_xlat6 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat6 = clamp(u_xlat6, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat6) * u_xlat0.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendMul" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat3.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat1 = texture(_CameraDepthTexture, u_xlat3.xy);
					    u_xlat3.x = _ZBufferParams.z * u_xlat1.x + _ZBufferParams.w;
					    u_xlat3.x = float(1.0) / u_xlat3.x;
					    u_xlat3.x = u_xlat3.x + (-vs_TEXCOORD3.z);
					    u_xlat3.x = u_xlat3.x * _InvFade;
					    u_xlat3.x = clamp(u_xlat3.x, 0.0, 1.0);
					    u_xlat1.w = u_xlat3.x * vs_COLOR0.w;
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2 = u_xlat2 + u_xlat2;
					    u_xlat2 = u_xlat2 * _TintColor;
					    u_xlat1.xyz = vs_COLOR0.xyz;
					    u_xlat1 = u_xlat1 * u_xlat2;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat3.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat1 = texture(_CameraDepthTexture, u_xlat3.xy);
					    u_xlat3.x = _ZBufferParams.z * u_xlat1.x + _ZBufferParams.w;
					    u_xlat3.x = float(1.0) / u_xlat3.x;
					    u_xlat3.x = u_xlat3.x + (-vs_TEXCOORD3.z);
					    u_xlat3.x = u_xlat3.x * _InvFade;
					    u_xlat3.x = clamp(u_xlat3.x, 0.0, 1.0);
					    u_xlat1.w = u_xlat3.x * vs_COLOR0.w;
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2 = u_xlat2 + u_xlat2;
					    u_xlat2 = u_xlat2 * _TintColor;
					    u_xlat1.xyz = vs_COLOR0.xyz;
					    u_xlat1 = u_xlat1 * u_xlat2;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendMul" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat3.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat1 = texture(_CameraDepthTexture, u_xlat3.xy);
					    u_xlat3.x = _ZBufferParams.z * u_xlat1.x + _ZBufferParams.w;
					    u_xlat3.x = float(1.0) / u_xlat3.x;
					    u_xlat3.x = u_xlat3.x + (-vs_TEXCOORD3.z);
					    u_xlat3.x = u_xlat3.x * _InvFade;
					    u_xlat3.x = clamp(u_xlat3.x, 0.0, 1.0);
					    u_xlat1.w = u_xlat3.x * vs_COLOR0.w;
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2 = u_xlat2 + u_xlat2;
					    u_xlat2 = u_xlat2 * _TintColor;
					    u_xlat1.xyz = vs_COLOR0.xyz;
					    u_xlat1 = u_xlat1 * u_xlat2;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat3.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat1 = texture(_CameraDepthTexture, u_xlat3.xy);
					    u_xlat3.x = _ZBufferParams.z * u_xlat1.x + _ZBufferParams.w;
					    u_xlat3.x = float(1.0) / u_xlat3.x;
					    u_xlat3.x = u_xlat3.x + (-vs_TEXCOORD3.z);
					    u_xlat3.x = u_xlat3.x * _InvFade;
					    u_xlat3.x = clamp(u_xlat3.x, 0.0, 1.0);
					    u_xlat1.w = u_xlat3.x * vs_COLOR0.w;
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2 = u_xlat2 + u_xlat2;
					    u_xlat2 = u_xlat2 * _TintColor;
					    u_xlat1.xyz = vs_COLOR0.xyz;
					    u_xlat1 = u_xlat1 * u_xlat2;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendMul" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat3.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat1 = texture(_CameraDepthTexture, u_xlat3.xy);
					    u_xlat3.x = _ZBufferParams.z * u_xlat1.x + _ZBufferParams.w;
					    u_xlat3.x = float(1.0) / u_xlat3.x;
					    u_xlat3.x = u_xlat3.x + (-vs_TEXCOORD3.z);
					    u_xlat3.x = u_xlat3.x * _InvFade;
					    u_xlat3.x = clamp(u_xlat3.x, 0.0, 1.0);
					    u_xlat1.w = u_xlat3.x * vs_COLOR0.w;
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2 = u_xlat2 + u_xlat2;
					    u_xlat2 = u_xlat2 * _TintColor;
					    u_xlat1.xyz = vs_COLOR0.xyz;
					    u_xlat1 = u_xlat1 * u_xlat2;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat3.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat1 = texture(_CameraDepthTexture, u_xlat3.xy);
					    u_xlat3.x = _ZBufferParams.z * u_xlat1.x + _ZBufferParams.w;
					    u_xlat3.x = float(1.0) / u_xlat3.x;
					    u_xlat3.x = u_xlat3.x + (-vs_TEXCOORD3.z);
					    u_xlat3.x = u_xlat3.x * _InvFade;
					    u_xlat3.x = clamp(u_xlat3.x, 0.0, 1.0);
					    u_xlat1.w = u_xlat3.x * vs_COLOR0.w;
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2 = u_xlat2 + u_xlat2;
					    u_xlat2 = u_xlat2 * _TintColor;
					    u_xlat1.xyz = vs_COLOR0.xyz;
					    u_xlat1 = u_xlat1 * u_xlat2;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendMul" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat3.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat1 = texture(_CameraDepthTexture, u_xlat3.xy);
					    u_xlat3.x = _ZBufferParams.z * u_xlat1.x + _ZBufferParams.w;
					    u_xlat3.x = float(1.0) / u_xlat3.x;
					    u_xlat3.x = u_xlat3.x + (-vs_TEXCOORD3.z);
					    u_xlat3.x = u_xlat3.x * _InvFade;
					    u_xlat3.x = clamp(u_xlat3.x, 0.0, 1.0);
					    u_xlat1.w = u_xlat3.x * vs_COLOR0.w;
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2 = u_xlat2 + u_xlat2;
					    u_xlat2 = u_xlat2 * _TintColor;
					    u_xlat1.xyz = vs_COLOR0.xyz;
					    u_xlat1 = u_xlat1 * u_xlat2;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat3.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat1 = texture(_CameraDepthTexture, u_xlat3.xy);
					    u_xlat3.x = _ZBufferParams.z * u_xlat1.x + _ZBufferParams.w;
					    u_xlat3.x = float(1.0) / u_xlat3.x;
					    u_xlat3.x = u_xlat3.x + (-vs_TEXCOORD3.z);
					    u_xlat3.x = u_xlat3.x * _InvFade;
					    u_xlat3.x = clamp(u_xlat3.x, 0.0, 1.0);
					    u_xlat1.w = u_xlat3.x * vs_COLOR0.w;
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2 = u_xlat2 + u_xlat2;
					    u_xlat2 = u_xlat2 * _TintColor;
					    u_xlat1.xyz = vs_COLOR0.xyz;
					    u_xlat1 = u_xlat1 * u_xlat2;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendMul" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					bool u_xlatb1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1.x = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat0.w = u_xlat0.w * u_xlat1.x;
					    u_xlat0 = u_xlat0 * vs_COLOR0;
					    u_xlat0.w = u_xlat0.w;
					    u_xlat0.w = clamp(u_xlat0.w, 0.0, 1.0);
					    u_xlat1 = u_xlat0 + vec4(-1.0, -1.0, -1.0, -1.0);
					    SV_Target0 = u_xlat0.wwww * u_xlat1 + vec4(1.0, 1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					bool u_xlatb1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1.x = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat0.w = u_xlat0.w * u_xlat1.x;
					    u_xlat0 = u_xlat0 * vs_COLOR0;
					    u_xlat0.w = u_xlat0.w;
					    u_xlat0.w = clamp(u_xlat0.w, 0.0, 1.0);
					    u_xlat1 = u_xlat0 + vec4(-1.0, -1.0, -1.0, -1.0);
					    SV_Target0 = u_xlat0.wwww * u_xlat1 + vec4(1.0, 1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendMul" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[7];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					bool u_xlatb2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2 = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat0.w = u_xlat0.w;
					    u_xlat0.w = clamp(u_xlat0.w, 0.0, 1.0);
					    u_xlat1 = u_xlat0 + vec4(-1.0, -1.0, -1.0, -1.0);
					    SV_Target0 = u_xlat0.wwww * u_xlat1 + vec4(1.0, 1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[6];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					bool u_xlatb2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2 = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat0.w = u_xlat0.w;
					    u_xlat0.w = clamp(u_xlat0.w, 0.0, 1.0);
					    u_xlat1 = u_xlat0 + vec4(-1.0, -1.0, -1.0, -1.0);
					    SV_Target0 = u_xlat0.wwww * u_xlat1 + vec4(1.0, 1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendMul" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3.x;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3.x;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendMul" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					bool u_xlatb2;
					float u_xlat9;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2 = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat0.w = u_xlat0.w;
					    u_xlat0.w = clamp(u_xlat0.w, 0.0, 1.0);
					    u_xlat1 = u_xlat0 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat0.xyz = u_xlat0.www * u_xlat1.xyz;
					    SV_Target0.w = u_xlat0.w * u_xlat1.w + 1.0;
					    u_xlat9 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat9 = (-u_xlat9) + 1.0;
					    u_xlat9 = u_xlat9 * _ProjectionParams.z;
					    u_xlat9 = max(u_xlat9, 0.0);
					    u_xlat9 = u_xlat9 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat9 = clamp(u_xlat9, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat9) * u_xlat0.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					bool u_xlatb2;
					float u_xlat9;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2 = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat0.w = u_xlat0.w;
					    u_xlat0.w = clamp(u_xlat0.w, 0.0, 1.0);
					    u_xlat1 = u_xlat0 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat0.xyz = u_xlat0.www * u_xlat1.xyz;
					    SV_Target0.w = u_xlat0.w * u_xlat1.w + 1.0;
					    u_xlat9 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat9 = (-u_xlat9) + 1.0;
					    u_xlat9 = u_xlat9 * _ProjectionParams.z;
					    u_xlat9 = max(u_xlat9, 0.0);
					    u_xlat9 = u_xlat9 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat9 = clamp(u_xlat9, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat9) * u_xlat0.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendMul" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3.x;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3.x;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendMul" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat3.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat1 = texture(_CameraDepthTexture, u_xlat3.xy);
					    u_xlat3.x = _ZBufferParams.z * u_xlat1.x + _ZBufferParams.w;
					    u_xlat3.x = float(1.0) / u_xlat3.x;
					    u_xlat3.x = u_xlat3.x + (-vs_TEXCOORD3.z);
					    u_xlat3.x = u_xlat3.x * _InvFade;
					    u_xlat3.x = clamp(u_xlat3.x, 0.0, 1.0);
					    u_xlat1.w = u_xlat3.x * vs_COLOR0.w;
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb3 = u_xlat2.w>=_Cutout;
					    u_xlat2 = u_xlat2 + u_xlat2;
					    u_xlat2 = u_xlat2 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat2.w = u_xlat2.w * u_xlat3.x;
					    u_xlat1.xyz = vs_COLOR0.xyz;
					    u_xlat1 = u_xlat1 * u_xlat2;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat3.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat1 = texture(_CameraDepthTexture, u_xlat3.xy);
					    u_xlat3.x = _ZBufferParams.z * u_xlat1.x + _ZBufferParams.w;
					    u_xlat3.x = float(1.0) / u_xlat3.x;
					    u_xlat3.x = u_xlat3.x + (-vs_TEXCOORD3.z);
					    u_xlat3.x = u_xlat3.x * _InvFade;
					    u_xlat3.x = clamp(u_xlat3.x, 0.0, 1.0);
					    u_xlat1.w = u_xlat3.x * vs_COLOR0.w;
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb3 = u_xlat2.w>=_Cutout;
					    u_xlat2 = u_xlat2 + u_xlat2;
					    u_xlat2 = u_xlat2 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat2.w = u_xlat2.w * u_xlat3.x;
					    u_xlat1.xyz = vs_COLOR0.xyz;
					    u_xlat1 = u_xlat1 * u_xlat2;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendMul" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3.x;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3.x;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendMul" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat3.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat1 = texture(_CameraDepthTexture, u_xlat3.xy);
					    u_xlat3.x = _ZBufferParams.z * u_xlat1.x + _ZBufferParams.w;
					    u_xlat3.x = float(1.0) / u_xlat3.x;
					    u_xlat3.x = u_xlat3.x + (-vs_TEXCOORD3.z);
					    u_xlat3.x = u_xlat3.x * _InvFade;
					    u_xlat3.x = clamp(u_xlat3.x, 0.0, 1.0);
					    u_xlat1.w = u_xlat3.x * vs_COLOR0.w;
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb3 = u_xlat2.w>=_Cutout;
					    u_xlat2 = u_xlat2 + u_xlat2;
					    u_xlat2 = u_xlat2 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat2.w = u_xlat2.w * u_xlat3.x;
					    u_xlat1.xyz = vs_COLOR0.xyz;
					    u_xlat1 = u_xlat1 * u_xlat2;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat3.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat1 = texture(_CameraDepthTexture, u_xlat3.xy);
					    u_xlat3.x = _ZBufferParams.z * u_xlat1.x + _ZBufferParams.w;
					    u_xlat3.x = float(1.0) / u_xlat3.x;
					    u_xlat3.x = u_xlat3.x + (-vs_TEXCOORD3.z);
					    u_xlat3.x = u_xlat3.x * _InvFade;
					    u_xlat3.x = clamp(u_xlat3.x, 0.0, 1.0);
					    u_xlat1.w = u_xlat3.x * vs_COLOR0.w;
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb3 = u_xlat2.w>=_Cutout;
					    u_xlat2 = u_xlat2 + u_xlat2;
					    u_xlat2 = u_xlat2 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat2.w = u_xlat2.w * u_xlat3.x;
					    u_xlat1.xyz = vs_COLOR0.xyz;
					    u_xlat1 = u_xlat1 * u_xlat2;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendMul" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[7];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					bool u_xlatb2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2 = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat0.w = u_xlat0.w;
					    u_xlat0.w = clamp(u_xlat0.w, 0.0, 1.0);
					    u_xlat1 = u_xlat0 + vec4(-1.0, -1.0, -1.0, -1.0);
					    SV_Target0 = u_xlat0.wwww * u_xlat1 + vec4(1.0, 1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[6];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					bool u_xlatb2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2 = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat0.w = u_xlat0.w;
					    u_xlat0.w = clamp(u_xlat0.w, 0.0, 1.0);
					    u_xlat1 = u_xlat0 + vec4(-1.0, -1.0, -1.0, -1.0);
					    SV_Target0 = u_xlat0.wwww * u_xlat1 + vec4(1.0, 1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendMul" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[7];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					bool u_xlatb2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2 = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat0.w = u_xlat0.w;
					    u_xlat0.w = clamp(u_xlat0.w, 0.0, 1.0);
					    u_xlat1 = u_xlat0 + vec4(-1.0, -1.0, -1.0, -1.0);
					    SV_Target0 = u_xlat0.wwww * u_xlat1 + vec4(1.0, 1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[6];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					bool u_xlatb2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2 = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat0.w = u_xlat0.w;
					    u_xlat0.w = clamp(u_xlat0.w, 0.0, 1.0);
					    u_xlat1 = u_xlat0 + vec4(-1.0, -1.0, -1.0, -1.0);
					    SV_Target0 = u_xlat0.wwww * u_xlat1 + vec4(1.0, 1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendMul" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					bool u_xlatb2;
					float u_xlat9;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2 = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat0.w = u_xlat0.w;
					    u_xlat0.w = clamp(u_xlat0.w, 0.0, 1.0);
					    u_xlat1 = u_xlat0 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat0.xyz = u_xlat0.www * u_xlat1.xyz;
					    SV_Target0.w = u_xlat0.w * u_xlat1.w + 1.0;
					    u_xlat9 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat9 = (-u_xlat9) + 1.0;
					    u_xlat9 = u_xlat9 * _ProjectionParams.z;
					    u_xlat9 = max(u_xlat9, 0.0);
					    u_xlat9 = u_xlat9 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat9 = clamp(u_xlat9, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat9) * u_xlat0.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					bool u_xlatb2;
					float u_xlat9;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2 = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat0.w = u_xlat0.w;
					    u_xlat0.w = clamp(u_xlat0.w, 0.0, 1.0);
					    u_xlat1 = u_xlat0 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat0.xyz = u_xlat0.www * u_xlat1.xyz;
					    SV_Target0.w = u_xlat0.w * u_xlat1.w + 1.0;
					    u_xlat9 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat9 = (-u_xlat9) + 1.0;
					    u_xlat9 = u_xlat9 * _ProjectionParams.z;
					    u_xlat9 = max(u_xlat9, 0.0);
					    u_xlat9 = u_xlat9 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat9 = clamp(u_xlat9, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat9) * u_xlat0.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendMul" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					bool u_xlatb2;
					float u_xlat9;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2 = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat0.w = u_xlat0.w;
					    u_xlat0.w = clamp(u_xlat0.w, 0.0, 1.0);
					    u_xlat1 = u_xlat0 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat0.xyz = u_xlat0.www * u_xlat1.xyz;
					    SV_Target0.w = u_xlat0.w * u_xlat1.w + 1.0;
					    u_xlat9 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat9 = (-u_xlat9) + 1.0;
					    u_xlat9 = u_xlat9 * _ProjectionParams.z;
					    u_xlat9 = max(u_xlat9, 0.0);
					    u_xlat9 = u_xlat9 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat9 = clamp(u_xlat9, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat9) * u_xlat0.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					bool u_xlatb2;
					float u_xlat9;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2 = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat0.w = u_xlat0.w;
					    u_xlat0.w = clamp(u_xlat0.w, 0.0, 1.0);
					    u_xlat1 = u_xlat0 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat0.xyz = u_xlat0.www * u_xlat1.xyz;
					    SV_Target0.w = u_xlat0.w * u_xlat1.w + 1.0;
					    u_xlat9 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat9 = (-u_xlat9) + 1.0;
					    u_xlat9 = u_xlat9 * _ProjectionParams.z;
					    u_xlat9 = max(u_xlat9, 0.0);
					    u_xlat9 = u_xlat9 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat9 = clamp(u_xlat9, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat9) * u_xlat0.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendMul" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat3.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat1 = texture(_CameraDepthTexture, u_xlat3.xy);
					    u_xlat3.x = _ZBufferParams.z * u_xlat1.x + _ZBufferParams.w;
					    u_xlat3.x = float(1.0) / u_xlat3.x;
					    u_xlat3.x = u_xlat3.x + (-vs_TEXCOORD3.z);
					    u_xlat3.x = u_xlat3.x * _InvFade;
					    u_xlat3.x = clamp(u_xlat3.x, 0.0, 1.0);
					    u_xlat1.w = u_xlat3.x * vs_COLOR0.w;
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb3 = u_xlat2.w>=_Cutout;
					    u_xlat2 = u_xlat2 + u_xlat2;
					    u_xlat2 = u_xlat2 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat2.w = u_xlat2.w * u_xlat3.x;
					    u_xlat1.xyz = vs_COLOR0.xyz;
					    u_xlat1 = u_xlat1 * u_xlat2;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat3.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat1 = texture(_CameraDepthTexture, u_xlat3.xy);
					    u_xlat3.x = _ZBufferParams.z * u_xlat1.x + _ZBufferParams.w;
					    u_xlat3.x = float(1.0) / u_xlat3.x;
					    u_xlat3.x = u_xlat3.x + (-vs_TEXCOORD3.z);
					    u_xlat3.x = u_xlat3.x * _InvFade;
					    u_xlat3.x = clamp(u_xlat3.x, 0.0, 1.0);
					    u_xlat1.w = u_xlat3.x * vs_COLOR0.w;
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb3 = u_xlat2.w>=_Cutout;
					    u_xlat2 = u_xlat2 + u_xlat2;
					    u_xlat2 = u_xlat2 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat2.w = u_xlat2.w * u_xlat3.x;
					    u_xlat1.xyz = vs_COLOR0.xyz;
					    u_xlat1 = u_xlat1 * u_xlat2;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendMul" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat3.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat1 = texture(_CameraDepthTexture, u_xlat3.xy);
					    u_xlat3.x = _ZBufferParams.z * u_xlat1.x + _ZBufferParams.w;
					    u_xlat3.x = float(1.0) / u_xlat3.x;
					    u_xlat3.x = u_xlat3.x + (-vs_TEXCOORD3.z);
					    u_xlat3.x = u_xlat3.x * _InvFade;
					    u_xlat3.x = clamp(u_xlat3.x, 0.0, 1.0);
					    u_xlat1.w = u_xlat3.x * vs_COLOR0.w;
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb3 = u_xlat2.w>=_Cutout;
					    u_xlat2 = u_xlat2 + u_xlat2;
					    u_xlat2 = u_xlat2 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat2.w = u_xlat2.w * u_xlat3.x;
					    u_xlat1.xyz = vs_COLOR0.xyz;
					    u_xlat1 = u_xlat1 * u_xlat2;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat3.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat1 = texture(_CameraDepthTexture, u_xlat3.xy);
					    u_xlat3.x = _ZBufferParams.z * u_xlat1.x + _ZBufferParams.w;
					    u_xlat3.x = float(1.0) / u_xlat3.x;
					    u_xlat3.x = u_xlat3.x + (-vs_TEXCOORD3.z);
					    u_xlat3.x = u_xlat3.x * _InvFade;
					    u_xlat3.x = clamp(u_xlat3.x, 0.0, 1.0);
					    u_xlat1.w = u_xlat3.x * vs_COLOR0.w;
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb3 = u_xlat2.w>=_Cutout;
					    u_xlat2 = u_xlat2 + u_xlat2;
					    u_xlat2 = u_xlat2 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat2.w = u_xlat2.w * u_xlat3.x;
					    u_xlat1.xyz = vs_COLOR0.xyz;
					    u_xlat1 = u_xlat1 * u_xlat2;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendMul" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat3.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat1 = texture(_CameraDepthTexture, u_xlat3.xy);
					    u_xlat3.x = _ZBufferParams.z * u_xlat1.x + _ZBufferParams.w;
					    u_xlat3.x = float(1.0) / u_xlat3.x;
					    u_xlat3.x = u_xlat3.x + (-vs_TEXCOORD3.z);
					    u_xlat3.x = u_xlat3.x * _InvFade;
					    u_xlat3.x = clamp(u_xlat3.x, 0.0, 1.0);
					    u_xlat1.w = u_xlat3.x * vs_COLOR0.w;
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb3 = u_xlat2.w>=_Cutout;
					    u_xlat2 = u_xlat2 + u_xlat2;
					    u_xlat2 = u_xlat2 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat2.w = u_xlat2.w * u_xlat3.x;
					    u_xlat1.xyz = vs_COLOR0.xyz;
					    u_xlat1 = u_xlat1 * u_xlat2;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat3.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat1 = texture(_CameraDepthTexture, u_xlat3.xy);
					    u_xlat3.x = _ZBufferParams.z * u_xlat1.x + _ZBufferParams.w;
					    u_xlat3.x = float(1.0) / u_xlat3.x;
					    u_xlat3.x = u_xlat3.x + (-vs_TEXCOORD3.z);
					    u_xlat3.x = u_xlat3.x * _InvFade;
					    u_xlat3.x = clamp(u_xlat3.x, 0.0, 1.0);
					    u_xlat1.w = u_xlat3.x * vs_COLOR0.w;
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb3 = u_xlat2.w>=_Cutout;
					    u_xlat2 = u_xlat2 + u_xlat2;
					    u_xlat2 = u_xlat2 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat2.w = u_xlat2.w * u_xlat3.x;
					    u_xlat1.xyz = vs_COLOR0.xyz;
					    u_xlat1 = u_xlat1 * u_xlat2;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendMul" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat3.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat1 = texture(_CameraDepthTexture, u_xlat3.xy);
					    u_xlat3.x = _ZBufferParams.z * u_xlat1.x + _ZBufferParams.w;
					    u_xlat3.x = float(1.0) / u_xlat3.x;
					    u_xlat3.x = u_xlat3.x + (-vs_TEXCOORD3.z);
					    u_xlat3.x = u_xlat3.x * _InvFade;
					    u_xlat3.x = clamp(u_xlat3.x, 0.0, 1.0);
					    u_xlat1.w = u_xlat3.x * vs_COLOR0.w;
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb3 = u_xlat2.w>=_Cutout;
					    u_xlat2 = u_xlat2 + u_xlat2;
					    u_xlat2 = u_xlat2 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat2.w = u_xlat2.w * u_xlat3.x;
					    u_xlat1.xyz = vs_COLOR0.xyz;
					    u_xlat1 = u_xlat1 * u_xlat2;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat3.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat1 = texture(_CameraDepthTexture, u_xlat3.xy);
					    u_xlat3.x = _ZBufferParams.z * u_xlat1.x + _ZBufferParams.w;
					    u_xlat3.x = float(1.0) / u_xlat3.x;
					    u_xlat3.x = u_xlat3.x + (-vs_TEXCOORD3.z);
					    u_xlat3.x = u_xlat3.x * _InvFade;
					    u_xlat3.x = clamp(u_xlat3.x, 0.0, 1.0);
					    u_xlat1.w = u_xlat3.x * vs_COLOR0.w;
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb3 = u_xlat2.w>=_Cutout;
					    u_xlat2 = u_xlat2 + u_xlat2;
					    u_xlat2 = u_xlat2 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat2.w = u_xlat2.w * u_xlat3.x;
					    u_xlat1.xyz = vs_COLOR0.xyz;
					    u_xlat1 = u_xlat1 * u_xlat2;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendMul" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					bool u_xlatb1;
					float u_xlat6;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1.x = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat0.w = u_xlat0.w * u_xlat1.x;
					    u_xlat0 = u_xlat0 * vs_COLOR0;
					    u_xlat6 = u_xlat0.w;
					    u_xlat6 = clamp(u_xlat6, 0.0, 1.0);
					    u_xlat0.w = u_xlat6 * vs_TEXCOORD4;
					    u_xlat1 = u_xlat0 + vec4(-1.0, -1.0, -1.0, -1.0);
					    SV_Target0 = u_xlat0.wwww * u_xlat1 + vec4(1.0, 1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					bool u_xlatb1;
					float u_xlat6;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1.x = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat0.w = u_xlat0.w * u_xlat1.x;
					    u_xlat0 = u_xlat0 * vs_COLOR0;
					    u_xlat6 = u_xlat0.w;
					    u_xlat6 = clamp(u_xlat6, 0.0, 1.0);
					    u_xlat0.w = u_xlat6 * vs_TEXCOORD4;
					    u_xlat1 = u_xlat0 + vec4(-1.0, -1.0, -1.0, -1.0);
					    SV_Target0 = u_xlat0.wwww * u_xlat1 + vec4(1.0, 1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendMul" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[7];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					bool u_xlatb2;
					float u_xlat9;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2 = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat9 = u_xlat0.w;
					    u_xlat9 = clamp(u_xlat9, 0.0, 1.0);
					    u_xlat0.w = u_xlat9 * vs_TEXCOORD4;
					    u_xlat1 = u_xlat0 + vec4(-1.0, -1.0, -1.0, -1.0);
					    SV_Target0 = u_xlat0.wwww * u_xlat1 + vec4(1.0, 1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[6];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					bool u_xlatb2;
					float u_xlat9;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2 = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat9 = u_xlat0.w;
					    u_xlat9 = clamp(u_xlat9, 0.0, 1.0);
					    u_xlat0.w = u_xlat9 * vs_TEXCOORD4;
					    u_xlat1 = u_xlat0 + vec4(-1.0, -1.0, -1.0, -1.0);
					    SV_Target0 = u_xlat0.wwww * u_xlat1 + vec4(1.0, 1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendMul" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3.x;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3.x;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendMul" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					bool u_xlatb2;
					float u_xlat9;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2 = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat9 = u_xlat0.w;
					    u_xlat9 = clamp(u_xlat9, 0.0, 1.0);
					    u_xlat0.w = u_xlat9 * vs_TEXCOORD4;
					    u_xlat1 = u_xlat0 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat0.xyz = u_xlat0.www * u_xlat1.xyz;
					    SV_Target0.w = u_xlat0.w * u_xlat1.w + 1.0;
					    u_xlat9 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat9 = (-u_xlat9) + 1.0;
					    u_xlat9 = u_xlat9 * _ProjectionParams.z;
					    u_xlat9 = max(u_xlat9, 0.0);
					    u_xlat9 = u_xlat9 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat9 = clamp(u_xlat9, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat9) * u_xlat0.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					bool u_xlatb2;
					float u_xlat9;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2 = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat9 = u_xlat0.w;
					    u_xlat9 = clamp(u_xlat9, 0.0, 1.0);
					    u_xlat0.w = u_xlat9 * vs_TEXCOORD4;
					    u_xlat1 = u_xlat0 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat0.xyz = u_xlat0.www * u_xlat1.xyz;
					    SV_Target0.w = u_xlat0.w * u_xlat1.w + 1.0;
					    u_xlat9 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat9 = (-u_xlat9) + 1.0;
					    u_xlat9 = u_xlat9 * _ProjectionParams.z;
					    u_xlat9 = max(u_xlat9, 0.0);
					    u_xlat9 = u_xlat9 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat9 = clamp(u_xlat9, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat9) * u_xlat0.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendMul" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3.x;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3.x;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendMul" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat3.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat1 = texture(_CameraDepthTexture, u_xlat3.xy);
					    u_xlat3.x = _ZBufferParams.z * u_xlat1.x + _ZBufferParams.w;
					    u_xlat3.x = float(1.0) / u_xlat3.x;
					    u_xlat3.x = u_xlat3.x + (-vs_TEXCOORD3.z);
					    u_xlat3.x = u_xlat3.x * _InvFade;
					    u_xlat3.x = clamp(u_xlat3.x, 0.0, 1.0);
					    u_xlat1.w = u_xlat3.x * vs_COLOR0.w;
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb3 = u_xlat2.w>=_Cutout;
					    u_xlat2 = u_xlat2 + u_xlat2;
					    u_xlat2 = u_xlat2 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat2.w = u_xlat2.w * u_xlat3.x;
					    u_xlat1.xyz = vs_COLOR0.xyz;
					    u_xlat1 = u_xlat1 * u_xlat2;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat3.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat1 = texture(_CameraDepthTexture, u_xlat3.xy);
					    u_xlat3.x = _ZBufferParams.z * u_xlat1.x + _ZBufferParams.w;
					    u_xlat3.x = float(1.0) / u_xlat3.x;
					    u_xlat3.x = u_xlat3.x + (-vs_TEXCOORD3.z);
					    u_xlat3.x = u_xlat3.x * _InvFade;
					    u_xlat3.x = clamp(u_xlat3.x, 0.0, 1.0);
					    u_xlat1.w = u_xlat3.x * vs_COLOR0.w;
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb3 = u_xlat2.w>=_Cutout;
					    u_xlat2 = u_xlat2 + u_xlat2;
					    u_xlat2 = u_xlat2 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat2.w = u_xlat2.w * u_xlat3.x;
					    u_xlat1.xyz = vs_COLOR0.xyz;
					    u_xlat1 = u_xlat1 * u_xlat2;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendMul" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3.x;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3.x;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendMul" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat3.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat1 = texture(_CameraDepthTexture, u_xlat3.xy);
					    u_xlat3.x = _ZBufferParams.z * u_xlat1.x + _ZBufferParams.w;
					    u_xlat3.x = float(1.0) / u_xlat3.x;
					    u_xlat3.x = u_xlat3.x + (-vs_TEXCOORD3.z);
					    u_xlat3.x = u_xlat3.x * _InvFade;
					    u_xlat3.x = clamp(u_xlat3.x, 0.0, 1.0);
					    u_xlat1.w = u_xlat3.x * vs_COLOR0.w;
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb3 = u_xlat2.w>=_Cutout;
					    u_xlat2 = u_xlat2 + u_xlat2;
					    u_xlat2 = u_xlat2 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat2.w = u_xlat2.w * u_xlat3.x;
					    u_xlat1.xyz = vs_COLOR0.xyz;
					    u_xlat1 = u_xlat1 * u_xlat2;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat3.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat1 = texture(_CameraDepthTexture, u_xlat3.xy);
					    u_xlat3.x = _ZBufferParams.z * u_xlat1.x + _ZBufferParams.w;
					    u_xlat3.x = float(1.0) / u_xlat3.x;
					    u_xlat3.x = u_xlat3.x + (-vs_TEXCOORD3.z);
					    u_xlat3.x = u_xlat3.x * _InvFade;
					    u_xlat3.x = clamp(u_xlat3.x, 0.0, 1.0);
					    u_xlat1.w = u_xlat3.x * vs_COLOR0.w;
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb3 = u_xlat2.w>=_Cutout;
					    u_xlat2 = u_xlat2 + u_xlat2;
					    u_xlat2 = u_xlat2 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat2.w = u_xlat2.w * u_xlat3.x;
					    u_xlat1.xyz = vs_COLOR0.xyz;
					    u_xlat1 = u_xlat1 * u_xlat2;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendMul" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[7];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					bool u_xlatb2;
					float u_xlat9;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2 = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat9 = u_xlat0.w;
					    u_xlat9 = clamp(u_xlat9, 0.0, 1.0);
					    u_xlat0.w = u_xlat9 * vs_TEXCOORD4;
					    u_xlat1 = u_xlat0 + vec4(-1.0, -1.0, -1.0, -1.0);
					    SV_Target0 = u_xlat0.wwww * u_xlat1 + vec4(1.0, 1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[6];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					bool u_xlatb2;
					float u_xlat9;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2 = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat9 = u_xlat0.w;
					    u_xlat9 = clamp(u_xlat9, 0.0, 1.0);
					    u_xlat0.w = u_xlat9 * vs_TEXCOORD4;
					    u_xlat1 = u_xlat0 + vec4(-1.0, -1.0, -1.0, -1.0);
					    SV_Target0 = u_xlat0.wwww * u_xlat1 + vec4(1.0, 1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendMul" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[7];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					bool u_xlatb2;
					float u_xlat9;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2 = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat9 = u_xlat0.w;
					    u_xlat9 = clamp(u_xlat9, 0.0, 1.0);
					    u_xlat0.w = u_xlat9 * vs_TEXCOORD4;
					    u_xlat1 = u_xlat0 + vec4(-1.0, -1.0, -1.0, -1.0);
					    SV_Target0 = u_xlat0.wwww * u_xlat1 + vec4(1.0, 1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[6];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					bool u_xlatb2;
					float u_xlat9;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2 = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat9 = u_xlat0.w;
					    u_xlat9 = clamp(u_xlat9, 0.0, 1.0);
					    u_xlat0.w = u_xlat9 * vs_TEXCOORD4;
					    u_xlat1 = u_xlat0 + vec4(-1.0, -1.0, -1.0, -1.0);
					    SV_Target0 = u_xlat0.wwww * u_xlat1 + vec4(1.0, 1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendMul" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					bool u_xlatb2;
					float u_xlat9;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2 = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat9 = u_xlat0.w;
					    u_xlat9 = clamp(u_xlat9, 0.0, 1.0);
					    u_xlat0.w = u_xlat9 * vs_TEXCOORD4;
					    u_xlat1 = u_xlat0 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat0.xyz = u_xlat0.www * u_xlat1.xyz;
					    SV_Target0.w = u_xlat0.w * u_xlat1.w + 1.0;
					    u_xlat9 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat9 = (-u_xlat9) + 1.0;
					    u_xlat9 = u_xlat9 * _ProjectionParams.z;
					    u_xlat9 = max(u_xlat9, 0.0);
					    u_xlat9 = u_xlat9 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat9 = clamp(u_xlat9, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat9) * u_xlat0.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					bool u_xlatb2;
					float u_xlat9;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2 = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat9 = u_xlat0.w;
					    u_xlat9 = clamp(u_xlat9, 0.0, 1.0);
					    u_xlat0.w = u_xlat9 * vs_TEXCOORD4;
					    u_xlat1 = u_xlat0 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat0.xyz = u_xlat0.www * u_xlat1.xyz;
					    SV_Target0.w = u_xlat0.w * u_xlat1.w + 1.0;
					    u_xlat9 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat9 = (-u_xlat9) + 1.0;
					    u_xlat9 = u_xlat9 * _ProjectionParams.z;
					    u_xlat9 = max(u_xlat9, 0.0);
					    u_xlat9 = u_xlat9 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat9 = clamp(u_xlat9, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat9) * u_xlat0.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendMul" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					bool u_xlatb2;
					float u_xlat9;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2 = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat9 = u_xlat0.w;
					    u_xlat9 = clamp(u_xlat9, 0.0, 1.0);
					    u_xlat0.w = u_xlat9 * vs_TEXCOORD4;
					    u_xlat1 = u_xlat0 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat0.xyz = u_xlat0.www * u_xlat1.xyz;
					    SV_Target0.w = u_xlat0.w * u_xlat1.w + 1.0;
					    u_xlat9 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat9 = (-u_xlat9) + 1.0;
					    u_xlat9 = u_xlat9 * _ProjectionParams.z;
					    u_xlat9 = max(u_xlat9, 0.0);
					    u_xlat9 = u_xlat9 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat9 = clamp(u_xlat9, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat9) * u_xlat0.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					bool u_xlatb2;
					float u_xlat9;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2 = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat9 = u_xlat0.w;
					    u_xlat9 = clamp(u_xlat9, 0.0, 1.0);
					    u_xlat0.w = u_xlat9 * vs_TEXCOORD4;
					    u_xlat1 = u_xlat0 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat0.xyz = u_xlat0.www * u_xlat1.xyz;
					    SV_Target0.w = u_xlat0.w * u_xlat1.w + 1.0;
					    u_xlat9 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat9 = (-u_xlat9) + 1.0;
					    u_xlat9 = u_xlat9 * _ProjectionParams.z;
					    u_xlat9 = max(u_xlat9, 0.0);
					    u_xlat9 = u_xlat9 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat9 = clamp(u_xlat9, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat9) * u_xlat0.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendMul" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat3.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat1 = texture(_CameraDepthTexture, u_xlat3.xy);
					    u_xlat3.x = _ZBufferParams.z * u_xlat1.x + _ZBufferParams.w;
					    u_xlat3.x = float(1.0) / u_xlat3.x;
					    u_xlat3.x = u_xlat3.x + (-vs_TEXCOORD3.z);
					    u_xlat3.x = u_xlat3.x * _InvFade;
					    u_xlat3.x = clamp(u_xlat3.x, 0.0, 1.0);
					    u_xlat1.w = u_xlat3.x * vs_COLOR0.w;
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb3 = u_xlat2.w>=_Cutout;
					    u_xlat2 = u_xlat2 + u_xlat2;
					    u_xlat2 = u_xlat2 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat2.w = u_xlat2.w * u_xlat3.x;
					    u_xlat1.xyz = vs_COLOR0.xyz;
					    u_xlat1 = u_xlat1 * u_xlat2;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat3.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat1 = texture(_CameraDepthTexture, u_xlat3.xy);
					    u_xlat3.x = _ZBufferParams.z * u_xlat1.x + _ZBufferParams.w;
					    u_xlat3.x = float(1.0) / u_xlat3.x;
					    u_xlat3.x = u_xlat3.x + (-vs_TEXCOORD3.z);
					    u_xlat3.x = u_xlat3.x * _InvFade;
					    u_xlat3.x = clamp(u_xlat3.x, 0.0, 1.0);
					    u_xlat1.w = u_xlat3.x * vs_COLOR0.w;
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb3 = u_xlat2.w>=_Cutout;
					    u_xlat2 = u_xlat2 + u_xlat2;
					    u_xlat2 = u_xlat2 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat2.w = u_xlat2.w * u_xlat3.x;
					    u_xlat1.xyz = vs_COLOR0.xyz;
					    u_xlat1 = u_xlat1 * u_xlat2;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendMul" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat3.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat1 = texture(_CameraDepthTexture, u_xlat3.xy);
					    u_xlat3.x = _ZBufferParams.z * u_xlat1.x + _ZBufferParams.w;
					    u_xlat3.x = float(1.0) / u_xlat3.x;
					    u_xlat3.x = u_xlat3.x + (-vs_TEXCOORD3.z);
					    u_xlat3.x = u_xlat3.x * _InvFade;
					    u_xlat3.x = clamp(u_xlat3.x, 0.0, 1.0);
					    u_xlat1.w = u_xlat3.x * vs_COLOR0.w;
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb3 = u_xlat2.w>=_Cutout;
					    u_xlat2 = u_xlat2 + u_xlat2;
					    u_xlat2 = u_xlat2 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat2.w = u_xlat2.w * u_xlat3.x;
					    u_xlat1.xyz = vs_COLOR0.xyz;
					    u_xlat1 = u_xlat1 * u_xlat2;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat3.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat1 = texture(_CameraDepthTexture, u_xlat3.xy);
					    u_xlat3.x = _ZBufferParams.z * u_xlat1.x + _ZBufferParams.w;
					    u_xlat3.x = float(1.0) / u_xlat3.x;
					    u_xlat3.x = u_xlat3.x + (-vs_TEXCOORD3.z);
					    u_xlat3.x = u_xlat3.x * _InvFade;
					    u_xlat3.x = clamp(u_xlat3.x, 0.0, 1.0);
					    u_xlat1.w = u_xlat3.x * vs_COLOR0.w;
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb3 = u_xlat2.w>=_Cutout;
					    u_xlat2 = u_xlat2 + u_xlat2;
					    u_xlat2 = u_xlat2 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat2.w = u_xlat2.w * u_xlat3.x;
					    u_xlat1.xyz = vs_COLOR0.xyz;
					    u_xlat1 = u_xlat1 * u_xlat2;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendMul" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat3.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat1 = texture(_CameraDepthTexture, u_xlat3.xy);
					    u_xlat3.x = _ZBufferParams.z * u_xlat1.x + _ZBufferParams.w;
					    u_xlat3.x = float(1.0) / u_xlat3.x;
					    u_xlat3.x = u_xlat3.x + (-vs_TEXCOORD3.z);
					    u_xlat3.x = u_xlat3.x * _InvFade;
					    u_xlat3.x = clamp(u_xlat3.x, 0.0, 1.0);
					    u_xlat1.w = u_xlat3.x * vs_COLOR0.w;
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb3 = u_xlat2.w>=_Cutout;
					    u_xlat2 = u_xlat2 + u_xlat2;
					    u_xlat2 = u_xlat2 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat2.w = u_xlat2.w * u_xlat3.x;
					    u_xlat1.xyz = vs_COLOR0.xyz;
					    u_xlat1 = u_xlat1 * u_xlat2;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat3.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat1 = texture(_CameraDepthTexture, u_xlat3.xy);
					    u_xlat3.x = _ZBufferParams.z * u_xlat1.x + _ZBufferParams.w;
					    u_xlat3.x = float(1.0) / u_xlat3.x;
					    u_xlat3.x = u_xlat3.x + (-vs_TEXCOORD3.z);
					    u_xlat3.x = u_xlat3.x * _InvFade;
					    u_xlat3.x = clamp(u_xlat3.x, 0.0, 1.0);
					    u_xlat1.w = u_xlat3.x * vs_COLOR0.w;
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb3 = u_xlat2.w>=_Cutout;
					    u_xlat2 = u_xlat2 + u_xlat2;
					    u_xlat2 = u_xlat2 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat2.w = u_xlat2.w * u_xlat3.x;
					    u_xlat1.xyz = vs_COLOR0.xyz;
					    u_xlat1 = u_xlat1 * u_xlat2;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendMul" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat3.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat1 = texture(_CameraDepthTexture, u_xlat3.xy);
					    u_xlat3.x = _ZBufferParams.z * u_xlat1.x + _ZBufferParams.w;
					    u_xlat3.x = float(1.0) / u_xlat3.x;
					    u_xlat3.x = u_xlat3.x + (-vs_TEXCOORD3.z);
					    u_xlat3.x = u_xlat3.x * _InvFade;
					    u_xlat3.x = clamp(u_xlat3.x, 0.0, 1.0);
					    u_xlat1.w = u_xlat3.x * vs_COLOR0.w;
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb3 = u_xlat2.w>=_Cutout;
					    u_xlat2 = u_xlat2 + u_xlat2;
					    u_xlat2 = u_xlat2 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat2.w = u_xlat2.w * u_xlat3.x;
					    u_xlat1.xyz = vs_COLOR0.xyz;
					    u_xlat1 = u_xlat1 * u_xlat2;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat3.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat1 = texture(_CameraDepthTexture, u_xlat3.xy);
					    u_xlat3.x = _ZBufferParams.z * u_xlat1.x + _ZBufferParams.w;
					    u_xlat3.x = float(1.0) / u_xlat3.x;
					    u_xlat3.x = u_xlat3.x + (-vs_TEXCOORD3.z);
					    u_xlat3.x = u_xlat3.x * _InvFade;
					    u_xlat3.x = clamp(u_xlat3.x, 0.0, 1.0);
					    u_xlat1.w = u_xlat3.x * vs_COLOR0.w;
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb3 = u_xlat2.w>=_Cutout;
					    u_xlat2 = u_xlat2 + u_xlat2;
					    u_xlat2 = u_xlat2 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat2.w = u_xlat2.w * u_xlat3.x;
					    u_xlat1.xyz = vs_COLOR0.xyz;
					    u_xlat1 = u_xlat1 * u_xlat2;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendMul" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0.xyz = u_xlat0.xyz + u_xlat0.xyz;
					    u_xlat0.xyz = u_xlat0.xyz * _TintColor.xyz;
					    u_xlat1.xyz = u_xlat0.xyz * vs_COLOR0.xyz;
					    u_xlat0.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlatb0 = u_xlat0.w>=u_xlat0.x;
					    u_xlat1.w = u_xlatb0 ? 1.0 : float(0.0);
					    u_xlat0 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    SV_Target0 = u_xlat1.wwww * u_xlat0 + vec4(1.0, 1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0.xyz = u_xlat0.xyz + u_xlat0.xyz;
					    u_xlat0.xyz = u_xlat0.xyz * _TintColor.xyz;
					    u_xlat1.xyz = u_xlat0.xyz * vs_COLOR0.xyz;
					    u_xlat0.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlatb0 = u_xlat0.w>=u_xlat0.x;
					    u_xlat1.w = u_xlatb0 ? 1.0 : float(0.0);
					    u_xlat0 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    SV_Target0 = u_xlat1.wwww * u_xlat0 + vec4(1.0, 1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendMul" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[7];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb0 = u_xlat1.w>=u_xlat0.x;
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    u_xlat1.xyz = u_xlat2.xyz * vs_COLOR0.xyz;
					    u_xlat1.w = u_xlatb0 ? 1.0 : float(0.0);
					    u_xlat0 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    SV_Target0 = u_xlat1.wwww * u_xlat0 + vec4(1.0, 1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[6];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb0 = u_xlat1.w>=u_xlat0.x;
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    u_xlat1.xyz = u_xlat2.xyz * vs_COLOR0.xyz;
					    u_xlat1.w = u_xlatb0 ? 1.0 : float(0.0);
					    u_xlat0 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    SV_Target0 = u_xlat1.wwww * u_xlat0 + vec4(1.0, 1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendMul" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat2.w = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1 = u_xlat2 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat2.w = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1 = u_xlat2 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendMul" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat3.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat1 = texture(_CameraDepthTexture, u_xlat3.xy);
					    u_xlat3.x = _ZBufferParams.z * u_xlat1.x + _ZBufferParams.w;
					    u_xlat3.x = float(1.0) / u_xlat3.x;
					    u_xlat3.x = u_xlat3.x + (-vs_TEXCOORD3.z);
					    u_xlat3.x = u_xlat3.x * _InvFade;
					    u_xlat3.x = clamp(u_xlat3.x, 0.0, 1.0);
					    u_xlat3.x = (-vs_COLOR0.w) * u_xlat3.x + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat1.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz * _TintColor.xyz;
					    u_xlat1.xyz = u_xlat1.xyz * vs_COLOR0.xyz;
					    u_xlat1.w = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat3.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat1 = texture(_CameraDepthTexture, u_xlat3.xy);
					    u_xlat3.x = _ZBufferParams.z * u_xlat1.x + _ZBufferParams.w;
					    u_xlat3.x = float(1.0) / u_xlat3.x;
					    u_xlat3.x = u_xlat3.x + (-vs_TEXCOORD3.z);
					    u_xlat3.x = u_xlat3.x * _InvFade;
					    u_xlat3.x = clamp(u_xlat3.x, 0.0, 1.0);
					    u_xlat3.x = (-vs_COLOR0.w) * u_xlat3.x + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat1.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz * _TintColor.xyz;
					    u_xlat1.xyz = u_xlat1.xyz * vs_COLOR0.xyz;
					    u_xlat1.w = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendMul" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat2.w = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1 = u_xlat2 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat2.w = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1 = u_xlat2 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendMul" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat3.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat1 = texture(_CameraDepthTexture, u_xlat3.xy);
					    u_xlat3.x = _ZBufferParams.z * u_xlat1.x + _ZBufferParams.w;
					    u_xlat3.x = float(1.0) / u_xlat3.x;
					    u_xlat3.x = u_xlat3.x + (-vs_TEXCOORD3.z);
					    u_xlat3.x = u_xlat3.x * _InvFade;
					    u_xlat3.x = clamp(u_xlat3.x, 0.0, 1.0);
					    u_xlat3.x = (-vs_COLOR0.w) * u_xlat3.x + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat1.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz * _TintColor.xyz;
					    u_xlat1.xyz = u_xlat1.xyz * vs_COLOR0.xyz;
					    u_xlat1.w = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat3.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat1 = texture(_CameraDepthTexture, u_xlat3.xy);
					    u_xlat3.x = _ZBufferParams.z * u_xlat1.x + _ZBufferParams.w;
					    u_xlat3.x = float(1.0) / u_xlat3.x;
					    u_xlat3.x = u_xlat3.x + (-vs_TEXCOORD3.z);
					    u_xlat3.x = u_xlat3.x * _InvFade;
					    u_xlat3.x = clamp(u_xlat3.x, 0.0, 1.0);
					    u_xlat3.x = (-vs_COLOR0.w) * u_xlat3.x + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat1.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz * _TintColor.xyz;
					    u_xlat1.xyz = u_xlat1.xyz * vs_COLOR0.xyz;
					    u_xlat1.w = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendMul" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat2.w = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1 = u_xlat2 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat2.w = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1 = u_xlat2 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendMul" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat3.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat1 = texture(_CameraDepthTexture, u_xlat3.xy);
					    u_xlat3.x = _ZBufferParams.z * u_xlat1.x + _ZBufferParams.w;
					    u_xlat3.x = float(1.0) / u_xlat3.x;
					    u_xlat3.x = u_xlat3.x + (-vs_TEXCOORD3.z);
					    u_xlat3.x = u_xlat3.x * _InvFade;
					    u_xlat3.x = clamp(u_xlat3.x, 0.0, 1.0);
					    u_xlat3.x = (-vs_COLOR0.w) * u_xlat3.x + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat1.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz * _TintColor.xyz;
					    u_xlat1.xyz = u_xlat1.xyz * vs_COLOR0.xyz;
					    u_xlat1.w = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat3.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat1 = texture(_CameraDepthTexture, u_xlat3.xy);
					    u_xlat3.x = _ZBufferParams.z * u_xlat1.x + _ZBufferParams.w;
					    u_xlat3.x = float(1.0) / u_xlat3.x;
					    u_xlat3.x = u_xlat3.x + (-vs_TEXCOORD3.z);
					    u_xlat3.x = u_xlat3.x * _InvFade;
					    u_xlat3.x = clamp(u_xlat3.x, 0.0, 1.0);
					    u_xlat3.x = (-vs_COLOR0.w) * u_xlat3.x + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat1.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz * _TintColor.xyz;
					    u_xlat1.xyz = u_xlat1.xyz * vs_COLOR0.xyz;
					    u_xlat1.w = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendMul" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[7];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb0 = u_xlat1.w>=u_xlat0.x;
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    u_xlat1.xyz = u_xlat2.xyz * vs_COLOR0.xyz;
					    u_xlat1.w = u_xlatb0 ? 1.0 : float(0.0);
					    u_xlat0 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    SV_Target0 = u_xlat1.wwww * u_xlat0 + vec4(1.0, 1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[6];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb0 = u_xlat1.w>=u_xlat0.x;
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    u_xlat1.xyz = u_xlat2.xyz * vs_COLOR0.xyz;
					    u_xlat1.w = u_xlatb0 ? 1.0 : float(0.0);
					    u_xlat0 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    SV_Target0 = u_xlat1.wwww * u_xlat0 + vec4(1.0, 1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendMul" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[7];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb0 = u_xlat1.w>=u_xlat0.x;
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    u_xlat1.xyz = u_xlat2.xyz * vs_COLOR0.xyz;
					    u_xlat1.w = u_xlatb0 ? 1.0 : float(0.0);
					    u_xlat0 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    SV_Target0 = u_xlat1.wwww * u_xlat0 + vec4(1.0, 1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[6];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb0 = u_xlat1.w>=u_xlat0.x;
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    u_xlat1.xyz = u_xlat2.xyz * vs_COLOR0.xyz;
					    u_xlat1.w = u_xlatb0 ? 1.0 : float(0.0);
					    u_xlat0 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    SV_Target0 = u_xlat1.wwww * u_xlat0 + vec4(1.0, 1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendMul" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat3.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat1 = texture(_CameraDepthTexture, u_xlat3.xy);
					    u_xlat3.x = _ZBufferParams.z * u_xlat1.x + _ZBufferParams.w;
					    u_xlat3.x = float(1.0) / u_xlat3.x;
					    u_xlat3.x = u_xlat3.x + (-vs_TEXCOORD3.z);
					    u_xlat3.x = u_xlat3.x * _InvFade;
					    u_xlat3.x = clamp(u_xlat3.x, 0.0, 1.0);
					    u_xlat3.x = (-vs_COLOR0.w) * u_xlat3.x + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat1.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz * _TintColor.xyz;
					    u_xlat1.xyz = u_xlat1.xyz * vs_COLOR0.xyz;
					    u_xlat1.w = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat3.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat1 = texture(_CameraDepthTexture, u_xlat3.xy);
					    u_xlat3.x = _ZBufferParams.z * u_xlat1.x + _ZBufferParams.w;
					    u_xlat3.x = float(1.0) / u_xlat3.x;
					    u_xlat3.x = u_xlat3.x + (-vs_TEXCOORD3.z);
					    u_xlat3.x = u_xlat3.x * _InvFade;
					    u_xlat3.x = clamp(u_xlat3.x, 0.0, 1.0);
					    u_xlat3.x = (-vs_COLOR0.w) * u_xlat3.x + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat1.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz * _TintColor.xyz;
					    u_xlat1.xyz = u_xlat1.xyz * vs_COLOR0.xyz;
					    u_xlat1.w = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendMul" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat3.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat1 = texture(_CameraDepthTexture, u_xlat3.xy);
					    u_xlat3.x = _ZBufferParams.z * u_xlat1.x + _ZBufferParams.w;
					    u_xlat3.x = float(1.0) / u_xlat3.x;
					    u_xlat3.x = u_xlat3.x + (-vs_TEXCOORD3.z);
					    u_xlat3.x = u_xlat3.x * _InvFade;
					    u_xlat3.x = clamp(u_xlat3.x, 0.0, 1.0);
					    u_xlat3.x = (-vs_COLOR0.w) * u_xlat3.x + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat1.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz * _TintColor.xyz;
					    u_xlat1.xyz = u_xlat1.xyz * vs_COLOR0.xyz;
					    u_xlat1.w = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat3.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat1 = texture(_CameraDepthTexture, u_xlat3.xy);
					    u_xlat3.x = _ZBufferParams.z * u_xlat1.x + _ZBufferParams.w;
					    u_xlat3.x = float(1.0) / u_xlat3.x;
					    u_xlat3.x = u_xlat3.x + (-vs_TEXCOORD3.z);
					    u_xlat3.x = u_xlat3.x * _InvFade;
					    u_xlat3.x = clamp(u_xlat3.x, 0.0, 1.0);
					    u_xlat3.x = (-vs_COLOR0.w) * u_xlat3.x + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat1.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz * _TintColor.xyz;
					    u_xlat1.xyz = u_xlat1.xyz * vs_COLOR0.xyz;
					    u_xlat1.w = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendMul" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat3.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat1 = texture(_CameraDepthTexture, u_xlat3.xy);
					    u_xlat3.x = _ZBufferParams.z * u_xlat1.x + _ZBufferParams.w;
					    u_xlat3.x = float(1.0) / u_xlat3.x;
					    u_xlat3.x = u_xlat3.x + (-vs_TEXCOORD3.z);
					    u_xlat3.x = u_xlat3.x * _InvFade;
					    u_xlat3.x = clamp(u_xlat3.x, 0.0, 1.0);
					    u_xlat3.x = (-vs_COLOR0.w) * u_xlat3.x + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat1.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz * _TintColor.xyz;
					    u_xlat1.xyz = u_xlat1.xyz * vs_COLOR0.xyz;
					    u_xlat1.w = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat3.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat1 = texture(_CameraDepthTexture, u_xlat3.xy);
					    u_xlat3.x = _ZBufferParams.z * u_xlat1.x + _ZBufferParams.w;
					    u_xlat3.x = float(1.0) / u_xlat3.x;
					    u_xlat3.x = u_xlat3.x + (-vs_TEXCOORD3.z);
					    u_xlat3.x = u_xlat3.x * _InvFade;
					    u_xlat3.x = clamp(u_xlat3.x, 0.0, 1.0);
					    u_xlat3.x = (-vs_COLOR0.w) * u_xlat3.x + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat1.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz * _TintColor.xyz;
					    u_xlat1.xyz = u_xlat1.xyz * vs_COLOR0.xyz;
					    u_xlat1.w = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendMul" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat3.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat1 = texture(_CameraDepthTexture, u_xlat3.xy);
					    u_xlat3.x = _ZBufferParams.z * u_xlat1.x + _ZBufferParams.w;
					    u_xlat3.x = float(1.0) / u_xlat3.x;
					    u_xlat3.x = u_xlat3.x + (-vs_TEXCOORD3.z);
					    u_xlat3.x = u_xlat3.x * _InvFade;
					    u_xlat3.x = clamp(u_xlat3.x, 0.0, 1.0);
					    u_xlat3.x = (-vs_COLOR0.w) * u_xlat3.x + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat1.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz * _TintColor.xyz;
					    u_xlat1.xyz = u_xlat1.xyz * vs_COLOR0.xyz;
					    u_xlat1.w = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat3.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat1 = texture(_CameraDepthTexture, u_xlat3.xy);
					    u_xlat3.x = _ZBufferParams.z * u_xlat1.x + _ZBufferParams.w;
					    u_xlat3.x = float(1.0) / u_xlat3.x;
					    u_xlat3.x = u_xlat3.x + (-vs_TEXCOORD3.z);
					    u_xlat3.x = u_xlat3.x * _InvFade;
					    u_xlat3.x = clamp(u_xlat3.x, 0.0, 1.0);
					    u_xlat3.x = (-vs_COLOR0.w) * u_xlat3.x + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat1.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz * _TintColor.xyz;
					    u_xlat1.xyz = u_xlat1.xyz * vs_COLOR0.xyz;
					    u_xlat1.w = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendMul" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat3.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat1 = texture(_CameraDepthTexture, u_xlat3.xy);
					    u_xlat3.x = _ZBufferParams.z * u_xlat1.x + _ZBufferParams.w;
					    u_xlat3.x = float(1.0) / u_xlat3.x;
					    u_xlat3.x = u_xlat3.x + (-vs_TEXCOORD3.z);
					    u_xlat3.x = u_xlat3.x * _InvFade;
					    u_xlat3.x = clamp(u_xlat3.x, 0.0, 1.0);
					    u_xlat3.x = (-vs_COLOR0.w) * u_xlat3.x + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat1.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz * _TintColor.xyz;
					    u_xlat1.xyz = u_xlat1.xyz * vs_COLOR0.xyz;
					    u_xlat1.w = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat3.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat1 = texture(_CameraDepthTexture, u_xlat3.xy);
					    u_xlat3.x = _ZBufferParams.z * u_xlat1.x + _ZBufferParams.w;
					    u_xlat3.x = float(1.0) / u_xlat3.x;
					    u_xlat3.x = u_xlat3.x + (-vs_TEXCOORD3.z);
					    u_xlat3.x = u_xlat3.x * _InvFade;
					    u_xlat3.x = clamp(u_xlat3.x, 0.0, 1.0);
					    u_xlat3.x = (-vs_COLOR0.w) * u_xlat3.x + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat1.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz * _TintColor.xyz;
					    u_xlat1.xyz = u_xlat1.xyz * vs_COLOR0.xyz;
					    u_xlat1.w = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendMul" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat3.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat1 = texture(_CameraDepthTexture, u_xlat3.xy);
					    u_xlat3.x = _ZBufferParams.z * u_xlat1.x + _ZBufferParams.w;
					    u_xlat3.x = float(1.0) / u_xlat3.x;
					    u_xlat3.x = u_xlat3.x + (-vs_TEXCOORD3.z);
					    u_xlat3.x = u_xlat3.x * _InvFade;
					    u_xlat3.x = clamp(u_xlat3.x, 0.0, 1.0);
					    u_xlat3.x = (-vs_COLOR0.w) * u_xlat3.x + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat1.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz * _TintColor.xyz;
					    u_xlat1.xyz = u_xlat1.xyz * vs_COLOR0.xyz;
					    u_xlat1.w = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat3.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat1 = texture(_CameraDepthTexture, u_xlat3.xy);
					    u_xlat3.x = _ZBufferParams.z * u_xlat1.x + _ZBufferParams.w;
					    u_xlat3.x = float(1.0) / u_xlat3.x;
					    u_xlat3.x = u_xlat3.x + (-vs_TEXCOORD3.z);
					    u_xlat3.x = u_xlat3.x * _InvFade;
					    u_xlat3.x = clamp(u_xlat3.x, 0.0, 1.0);
					    u_xlat3.x = (-vs_COLOR0.w) * u_xlat3.x + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat1.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz * _TintColor.xyz;
					    u_xlat1.xyz = u_xlat1.xyz * vs_COLOR0.xyz;
					    u_xlat1.w = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendMul" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0.xyz = u_xlat0.xyz + u_xlat0.xyz;
					    u_xlat0.xyz = u_xlat0.xyz * _TintColor.xyz;
					    u_xlat1.xyz = u_xlat0.xyz * vs_COLOR0.xyz;
					    u_xlat0.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlatb0 = u_xlat0.w>=u_xlat0.x;
					    u_xlat0.x = u_xlatb0 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat0.x * vs_TEXCOORD4;
					    u_xlat0 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    SV_Target0 = u_xlat1.wwww * u_xlat0 + vec4(1.0, 1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0.xyz = u_xlat0.xyz + u_xlat0.xyz;
					    u_xlat0.xyz = u_xlat0.xyz * _TintColor.xyz;
					    u_xlat1.xyz = u_xlat0.xyz * vs_COLOR0.xyz;
					    u_xlat0.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlatb0 = u_xlat0.w>=u_xlat0.x;
					    u_xlat0.x = u_xlatb0 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat0.x * vs_TEXCOORD4;
					    u_xlat0 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    SV_Target0 = u_xlat1.wwww * u_xlat0 + vec4(1.0, 1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendMul" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[7];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb0 = u_xlat1.w>=u_xlat0.x;
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    u_xlat1.xyz = u_xlat2.xyz * vs_COLOR0.xyz;
					    u_xlat0.x = u_xlatb0 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat0.x * vs_TEXCOORD4;
					    u_xlat0 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    SV_Target0 = u_xlat1.wwww * u_xlat0 + vec4(1.0, 1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[6];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb0 = u_xlat1.w>=u_xlat0.x;
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    u_xlat1.xyz = u_xlat2.xyz * vs_COLOR0.xyz;
					    u_xlat0.x = u_xlatb0 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat0.x * vs_TEXCOORD4;
					    u_xlat0 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    SV_Target0 = u_xlat1.wwww * u_xlat0 + vec4(1.0, 1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendMul" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat2.w = u_xlat3.x * vs_TEXCOORD4;
					    u_xlat1 = u_xlat2 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat2.w = u_xlat3.x * vs_TEXCOORD4;
					    u_xlat1 = u_xlat2 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendMul" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					float u_xlat6;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb0 = u_xlat1.w>=u_xlat0.x;
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    u_xlat1.xyz = u_xlat2.xyz * vs_COLOR0.xyz;
					    u_xlat0.x = u_xlatb0 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat0.x * vs_TEXCOORD4;
					    u_xlat0 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat0.xyz = u_xlat0.xyz * u_xlat1.www;
					    SV_Target0.w = u_xlat1.w * u_xlat0.w + 1.0;
					    u_xlat6 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat6 = (-u_xlat6) + 1.0;
					    u_xlat6 = u_xlat6 * _ProjectionParams.z;
					    u_xlat6 = max(u_xlat6, 0.0);
					    u_xlat6 = u_xlat6 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat6 = clamp(u_xlat6, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat6) * u_xlat0.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					float u_xlat6;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb0 = u_xlat1.w>=u_xlat0.x;
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    u_xlat1.xyz = u_xlat2.xyz * vs_COLOR0.xyz;
					    u_xlat0.x = u_xlatb0 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat0.x * vs_TEXCOORD4;
					    u_xlat0 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat0.xyz = u_xlat0.xyz * u_xlat1.www;
					    SV_Target0.w = u_xlat1.w * u_xlat0.w + 1.0;
					    u_xlat6 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat6 = (-u_xlat6) + 1.0;
					    u_xlat6 = u_xlat6 * _ProjectionParams.z;
					    u_xlat6 = max(u_xlat6, 0.0);
					    u_xlat6 = u_xlat6 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat6 = clamp(u_xlat6, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat6) * u_xlat0.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendMul" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat2.w = u_xlat3.x * vs_TEXCOORD4;
					    u_xlat1 = u_xlat2 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat2.w = u_xlat3.x * vs_TEXCOORD4;
					    u_xlat1 = u_xlat2 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendMul" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat3.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat1 = texture(_CameraDepthTexture, u_xlat3.xy);
					    u_xlat3.x = _ZBufferParams.z * u_xlat1.x + _ZBufferParams.w;
					    u_xlat3.x = float(1.0) / u_xlat3.x;
					    u_xlat3.x = u_xlat3.x + (-vs_TEXCOORD3.z);
					    u_xlat3.x = u_xlat3.x * _InvFade;
					    u_xlat3.x = clamp(u_xlat3.x, 0.0, 1.0);
					    u_xlat3.x = (-vs_COLOR0.w) * u_xlat3.x + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat1.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz * _TintColor.xyz;
					    u_xlat1.xyz = u_xlat1.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat3.x * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat3.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat1 = texture(_CameraDepthTexture, u_xlat3.xy);
					    u_xlat3.x = _ZBufferParams.z * u_xlat1.x + _ZBufferParams.w;
					    u_xlat3.x = float(1.0) / u_xlat3.x;
					    u_xlat3.x = u_xlat3.x + (-vs_TEXCOORD3.z);
					    u_xlat3.x = u_xlat3.x * _InvFade;
					    u_xlat3.x = clamp(u_xlat3.x, 0.0, 1.0);
					    u_xlat3.x = (-vs_COLOR0.w) * u_xlat3.x + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat1.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz * _TintColor.xyz;
					    u_xlat1.xyz = u_xlat1.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat3.x * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendMul" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat2.w = u_xlat3.x * vs_TEXCOORD4;
					    u_xlat1 = u_xlat2 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat2.w = u_xlat3.x * vs_TEXCOORD4;
					    u_xlat1 = u_xlat2 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendMul" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat3.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat1 = texture(_CameraDepthTexture, u_xlat3.xy);
					    u_xlat3.x = _ZBufferParams.z * u_xlat1.x + _ZBufferParams.w;
					    u_xlat3.x = float(1.0) / u_xlat3.x;
					    u_xlat3.x = u_xlat3.x + (-vs_TEXCOORD3.z);
					    u_xlat3.x = u_xlat3.x * _InvFade;
					    u_xlat3.x = clamp(u_xlat3.x, 0.0, 1.0);
					    u_xlat3.x = (-vs_COLOR0.w) * u_xlat3.x + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat1.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz * _TintColor.xyz;
					    u_xlat1.xyz = u_xlat1.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat3.x * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat3.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat1 = texture(_CameraDepthTexture, u_xlat3.xy);
					    u_xlat3.x = _ZBufferParams.z * u_xlat1.x + _ZBufferParams.w;
					    u_xlat3.x = float(1.0) / u_xlat3.x;
					    u_xlat3.x = u_xlat3.x + (-vs_TEXCOORD3.z);
					    u_xlat3.x = u_xlat3.x * _InvFade;
					    u_xlat3.x = clamp(u_xlat3.x, 0.0, 1.0);
					    u_xlat3.x = (-vs_COLOR0.w) * u_xlat3.x + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat1.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz * _TintColor.xyz;
					    u_xlat1.xyz = u_xlat1.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat3.x * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendMul" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[7];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb0 = u_xlat1.w>=u_xlat0.x;
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    u_xlat1.xyz = u_xlat2.xyz * vs_COLOR0.xyz;
					    u_xlat0.x = u_xlatb0 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat0.x * vs_TEXCOORD4;
					    u_xlat0 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    SV_Target0 = u_xlat1.wwww * u_xlat0 + vec4(1.0, 1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[6];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb0 = u_xlat1.w>=u_xlat0.x;
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    u_xlat1.xyz = u_xlat2.xyz * vs_COLOR0.xyz;
					    u_xlat0.x = u_xlatb0 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat0.x * vs_TEXCOORD4;
					    u_xlat0 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    SV_Target0 = u_xlat1.wwww * u_xlat0 + vec4(1.0, 1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendMul" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[7];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb0 = u_xlat1.w>=u_xlat0.x;
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    u_xlat1.xyz = u_xlat2.xyz * vs_COLOR0.xyz;
					    u_xlat0.x = u_xlatb0 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat0.x * vs_TEXCOORD4;
					    u_xlat0 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    SV_Target0 = u_xlat1.wwww * u_xlat0 + vec4(1.0, 1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[6];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb0 = u_xlat1.w>=u_xlat0.x;
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    u_xlat1.xyz = u_xlat2.xyz * vs_COLOR0.xyz;
					    u_xlat0.x = u_xlatb0 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat0.x * vs_TEXCOORD4;
					    u_xlat0 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    SV_Target0 = u_xlat1.wwww * u_xlat0 + vec4(1.0, 1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendMul" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					float u_xlat6;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb0 = u_xlat1.w>=u_xlat0.x;
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    u_xlat1.xyz = u_xlat2.xyz * vs_COLOR0.xyz;
					    u_xlat0.x = u_xlatb0 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat0.x * vs_TEXCOORD4;
					    u_xlat0 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat0.xyz = u_xlat0.xyz * u_xlat1.www;
					    SV_Target0.w = u_xlat1.w * u_xlat0.w + 1.0;
					    u_xlat6 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat6 = (-u_xlat6) + 1.0;
					    u_xlat6 = u_xlat6 * _ProjectionParams.z;
					    u_xlat6 = max(u_xlat6, 0.0);
					    u_xlat6 = u_xlat6 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat6 = clamp(u_xlat6, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat6) * u_xlat0.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					float u_xlat6;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb0 = u_xlat1.w>=u_xlat0.x;
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    u_xlat1.xyz = u_xlat2.xyz * vs_COLOR0.xyz;
					    u_xlat0.x = u_xlatb0 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat0.x * vs_TEXCOORD4;
					    u_xlat0 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat0.xyz = u_xlat0.xyz * u_xlat1.www;
					    SV_Target0.w = u_xlat1.w * u_xlat0.w + 1.0;
					    u_xlat6 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat6 = (-u_xlat6) + 1.0;
					    u_xlat6 = u_xlat6 * _ProjectionParams.z;
					    u_xlat6 = max(u_xlat6, 0.0);
					    u_xlat6 = u_xlat6 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat6 = clamp(u_xlat6, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat6) * u_xlat0.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendMul" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					float u_xlat6;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb0 = u_xlat1.w>=u_xlat0.x;
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    u_xlat1.xyz = u_xlat2.xyz * vs_COLOR0.xyz;
					    u_xlat0.x = u_xlatb0 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat0.x * vs_TEXCOORD4;
					    u_xlat0 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat0.xyz = u_xlat0.xyz * u_xlat1.www;
					    SV_Target0.w = u_xlat1.w * u_xlat0.w + 1.0;
					    u_xlat6 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat6 = (-u_xlat6) + 1.0;
					    u_xlat6 = u_xlat6 * _ProjectionParams.z;
					    u_xlat6 = max(u_xlat6, 0.0);
					    u_xlat6 = u_xlat6 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat6 = clamp(u_xlat6, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat6) * u_xlat0.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					float u_xlat6;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb0 = u_xlat1.w>=u_xlat0.x;
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    u_xlat1.xyz = u_xlat2.xyz * vs_COLOR0.xyz;
					    u_xlat0.x = u_xlatb0 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat0.x * vs_TEXCOORD4;
					    u_xlat0 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat0.xyz = u_xlat0.xyz * u_xlat1.www;
					    SV_Target0.w = u_xlat1.w * u_xlat0.w + 1.0;
					    u_xlat6 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat6 = (-u_xlat6) + 1.0;
					    u_xlat6 = u_xlat6 * _ProjectionParams.z;
					    u_xlat6 = max(u_xlat6, 0.0);
					    u_xlat6 = u_xlat6 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat6 = clamp(u_xlat6, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat6) * u_xlat0.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendMul" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat3.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat1 = texture(_CameraDepthTexture, u_xlat3.xy);
					    u_xlat3.x = _ZBufferParams.z * u_xlat1.x + _ZBufferParams.w;
					    u_xlat3.x = float(1.0) / u_xlat3.x;
					    u_xlat3.x = u_xlat3.x + (-vs_TEXCOORD3.z);
					    u_xlat3.x = u_xlat3.x * _InvFade;
					    u_xlat3.x = clamp(u_xlat3.x, 0.0, 1.0);
					    u_xlat3.x = (-vs_COLOR0.w) * u_xlat3.x + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat1.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz * _TintColor.xyz;
					    u_xlat1.xyz = u_xlat1.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat3.x * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat3.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat1 = texture(_CameraDepthTexture, u_xlat3.xy);
					    u_xlat3.x = _ZBufferParams.z * u_xlat1.x + _ZBufferParams.w;
					    u_xlat3.x = float(1.0) / u_xlat3.x;
					    u_xlat3.x = u_xlat3.x + (-vs_TEXCOORD3.z);
					    u_xlat3.x = u_xlat3.x * _InvFade;
					    u_xlat3.x = clamp(u_xlat3.x, 0.0, 1.0);
					    u_xlat3.x = (-vs_COLOR0.w) * u_xlat3.x + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat1.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz * _TintColor.xyz;
					    u_xlat1.xyz = u_xlat1.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat3.x * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendMul" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat3.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat1 = texture(_CameraDepthTexture, u_xlat3.xy);
					    u_xlat3.x = _ZBufferParams.z * u_xlat1.x + _ZBufferParams.w;
					    u_xlat3.x = float(1.0) / u_xlat3.x;
					    u_xlat3.x = u_xlat3.x + (-vs_TEXCOORD3.z);
					    u_xlat3.x = u_xlat3.x * _InvFade;
					    u_xlat3.x = clamp(u_xlat3.x, 0.0, 1.0);
					    u_xlat3.x = (-vs_COLOR0.w) * u_xlat3.x + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat1.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz * _TintColor.xyz;
					    u_xlat1.xyz = u_xlat1.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat3.x * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat3.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat1 = texture(_CameraDepthTexture, u_xlat3.xy);
					    u_xlat3.x = _ZBufferParams.z * u_xlat1.x + _ZBufferParams.w;
					    u_xlat3.x = float(1.0) / u_xlat3.x;
					    u_xlat3.x = u_xlat3.x + (-vs_TEXCOORD3.z);
					    u_xlat3.x = u_xlat3.x * _InvFade;
					    u_xlat3.x = clamp(u_xlat3.x, 0.0, 1.0);
					    u_xlat3.x = (-vs_COLOR0.w) * u_xlat3.x + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat1.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz * _TintColor.xyz;
					    u_xlat1.xyz = u_xlat1.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat3.x * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendMul" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat3.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat1 = texture(_CameraDepthTexture, u_xlat3.xy);
					    u_xlat3.x = _ZBufferParams.z * u_xlat1.x + _ZBufferParams.w;
					    u_xlat3.x = float(1.0) / u_xlat3.x;
					    u_xlat3.x = u_xlat3.x + (-vs_TEXCOORD3.z);
					    u_xlat3.x = u_xlat3.x * _InvFade;
					    u_xlat3.x = clamp(u_xlat3.x, 0.0, 1.0);
					    u_xlat3.x = (-vs_COLOR0.w) * u_xlat3.x + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat1.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz * _TintColor.xyz;
					    u_xlat1.xyz = u_xlat1.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat3.x * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat3.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat1 = texture(_CameraDepthTexture, u_xlat3.xy);
					    u_xlat3.x = _ZBufferParams.z * u_xlat1.x + _ZBufferParams.w;
					    u_xlat3.x = float(1.0) / u_xlat3.x;
					    u_xlat3.x = u_xlat3.x + (-vs_TEXCOORD3.z);
					    u_xlat3.x = u_xlat3.x * _InvFade;
					    u_xlat3.x = clamp(u_xlat3.x, 0.0, 1.0);
					    u_xlat3.x = (-vs_COLOR0.w) * u_xlat3.x + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat1.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz * _TintColor.xyz;
					    u_xlat1.xyz = u_xlat1.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat3.x * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendMul" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat3.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat1 = texture(_CameraDepthTexture, u_xlat3.xy);
					    u_xlat3.x = _ZBufferParams.z * u_xlat1.x + _ZBufferParams.w;
					    u_xlat3.x = float(1.0) / u_xlat3.x;
					    u_xlat3.x = u_xlat3.x + (-vs_TEXCOORD3.z);
					    u_xlat3.x = u_xlat3.x * _InvFade;
					    u_xlat3.x = clamp(u_xlat3.x, 0.0, 1.0);
					    u_xlat3.x = (-vs_COLOR0.w) * u_xlat3.x + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat1.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz * _TintColor.xyz;
					    u_xlat1.xyz = u_xlat1.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat3.x * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat3.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat1 = texture(_CameraDepthTexture, u_xlat3.xy);
					    u_xlat3.x = _ZBufferParams.z * u_xlat1.x + _ZBufferParams.w;
					    u_xlat3.x = float(1.0) / u_xlat3.x;
					    u_xlat3.x = u_xlat3.x + (-vs_TEXCOORD3.z);
					    u_xlat3.x = u_xlat3.x * _InvFade;
					    u_xlat3.x = clamp(u_xlat3.x, 0.0, 1.0);
					    u_xlat3.x = (-vs_COLOR0.w) * u_xlat3.x + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat1.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz * _TintColor.xyz;
					    u_xlat1.xyz = u_xlat1.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat3.x * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendMul" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat0 = u_xlat0 * vs_COLOR0;
					    u_xlat0.w = u_xlat0.w;
					    u_xlat0.w = clamp(u_xlat0.w, 0.0, 1.0);
					    u_xlat1 = u_xlat0 + vec4(-1.0, -1.0, -1.0, -1.0);
					    SV_Target0 = u_xlat0.wwww * u_xlat1 + vec4(1.0, 1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat0 = u_xlat0 * vs_COLOR0;
					    u_xlat0.w = u_xlat0.w;
					    u_xlat0.w = clamp(u_xlat0.w, 0.0, 1.0);
					    u_xlat1 = u_xlat0 + vec4(-1.0, -1.0, -1.0, -1.0);
					    SV_Target0 = u_xlat0.wwww * u_xlat1 + vec4(1.0, 1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendMul" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat0 = u_xlat0 * vs_COLOR0;
					    u_xlat0.w = u_xlat0.w;
					    u_xlat0.w = clamp(u_xlat0.w, 0.0, 1.0);
					    u_xlat1 = u_xlat0 + vec4(-1.0, -1.0, -1.0, -1.0);
					    SV_Target0 = u_xlat0.wwww * u_xlat1 + vec4(1.0, 1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat0 = u_xlat0 * vs_COLOR0;
					    u_xlat0.w = u_xlat0.w;
					    u_xlat0.w = clamp(u_xlat0.w, 0.0, 1.0);
					    u_xlat1 = u_xlat0 + vec4(-1.0, -1.0, -1.0, -1.0);
					    SV_Target0 = u_xlat0.wwww * u_xlat1 + vec4(1.0, 1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendMul" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendMul" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendMul" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendMul" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendMul" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendMul" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendMul" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat0 = u_xlat0 * vs_COLOR0;
					    u_xlat0.w = u_xlat0.w;
					    u_xlat0.w = clamp(u_xlat0.w, 0.0, 1.0);
					    u_xlat1 = u_xlat0 + vec4(-1.0, -1.0, -1.0, -1.0);
					    SV_Target0 = u_xlat0.wwww * u_xlat1 + vec4(1.0, 1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat0 = u_xlat0 * vs_COLOR0;
					    u_xlat0.w = u_xlat0.w;
					    u_xlat0.w = clamp(u_xlat0.w, 0.0, 1.0);
					    u_xlat1 = u_xlat0 + vec4(-1.0, -1.0, -1.0, -1.0);
					    SV_Target0 = u_xlat0.wwww * u_xlat1 + vec4(1.0, 1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendMul" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat0 = u_xlat0 * vs_COLOR0;
					    u_xlat0.w = u_xlat0.w;
					    u_xlat0.w = clamp(u_xlat0.w, 0.0, 1.0);
					    u_xlat1 = u_xlat0 + vec4(-1.0, -1.0, -1.0, -1.0);
					    SV_Target0 = u_xlat0.wwww * u_xlat1 + vec4(1.0, 1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat0 = u_xlat0 * vs_COLOR0;
					    u_xlat0.w = u_xlat0.w;
					    u_xlat0.w = clamp(u_xlat0.w, 0.0, 1.0);
					    u_xlat1 = u_xlat0 + vec4(-1.0, -1.0, -1.0, -1.0);
					    SV_Target0 = u_xlat0.wwww * u_xlat1 + vec4(1.0, 1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendMul" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendMul" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendMul" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendMul" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendMul" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendMul" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendMul" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat6;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat0 = u_xlat0 * vs_COLOR0;
					    u_xlat6 = u_xlat0.w;
					    u_xlat6 = clamp(u_xlat6, 0.0, 1.0);
					    u_xlat0.w = u_xlat6 * vs_TEXCOORD4;
					    u_xlat1 = u_xlat0 + vec4(-1.0, -1.0, -1.0, -1.0);
					    SV_Target0 = u_xlat0.wwww * u_xlat1 + vec4(1.0, 1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat6;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat0 = u_xlat0 * vs_COLOR0;
					    u_xlat6 = u_xlat0.w;
					    u_xlat6 = clamp(u_xlat6, 0.0, 1.0);
					    u_xlat0.w = u_xlat6 * vs_TEXCOORD4;
					    u_xlat1 = u_xlat0 + vec4(-1.0, -1.0, -1.0, -1.0);
					    SV_Target0 = u_xlat0.wwww * u_xlat1 + vec4(1.0, 1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendMul" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat6;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat0 = u_xlat0 * vs_COLOR0;
					    u_xlat6 = u_xlat0.w;
					    u_xlat6 = clamp(u_xlat6, 0.0, 1.0);
					    u_xlat0.w = u_xlat6 * vs_TEXCOORD4;
					    u_xlat1 = u_xlat0 + vec4(-1.0, -1.0, -1.0, -1.0);
					    SV_Target0 = u_xlat0.wwww * u_xlat1 + vec4(1.0, 1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat6;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat0 = u_xlat0 * vs_COLOR0;
					    u_xlat6 = u_xlat0.w;
					    u_xlat6 = clamp(u_xlat6, 0.0, 1.0);
					    u_xlat0.w = u_xlat6 * vs_TEXCOORD4;
					    u_xlat1 = u_xlat0 + vec4(-1.0, -1.0, -1.0, -1.0);
					    SV_Target0 = u_xlat0.wwww * u_xlat1 + vec4(1.0, 1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendMul" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendMul" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendMul" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendMul" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendMul" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendMul" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendMul" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat6;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat0 = u_xlat0 * vs_COLOR0;
					    u_xlat6 = u_xlat0.w;
					    u_xlat6 = clamp(u_xlat6, 0.0, 1.0);
					    u_xlat0.w = u_xlat6 * vs_TEXCOORD4;
					    u_xlat1 = u_xlat0 + vec4(-1.0, -1.0, -1.0, -1.0);
					    SV_Target0 = u_xlat0.wwww * u_xlat1 + vec4(1.0, 1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat6;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat0 = u_xlat0 * vs_COLOR0;
					    u_xlat6 = u_xlat0.w;
					    u_xlat6 = clamp(u_xlat6, 0.0, 1.0);
					    u_xlat0.w = u_xlat6 * vs_TEXCOORD4;
					    u_xlat1 = u_xlat0 + vec4(-1.0, -1.0, -1.0, -1.0);
					    SV_Target0 = u_xlat0.wwww * u_xlat1 + vec4(1.0, 1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendMul" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat6;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat0 = u_xlat0 * vs_COLOR0;
					    u_xlat6 = u_xlat0.w;
					    u_xlat6 = clamp(u_xlat6, 0.0, 1.0);
					    u_xlat0.w = u_xlat6 * vs_TEXCOORD4;
					    u_xlat1 = u_xlat0 + vec4(-1.0, -1.0, -1.0, -1.0);
					    SV_Target0 = u_xlat0.wwww * u_xlat1 + vec4(1.0, 1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat6;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat0 = u_xlat0 * vs_COLOR0;
					    u_xlat6 = u_xlat0.w;
					    u_xlat6 = clamp(u_xlat6, 0.0, 1.0);
					    u_xlat0.w = u_xlat6 * vs_TEXCOORD4;
					    u_xlat1 = u_xlat0 + vec4(-1.0, -1.0, -1.0, -1.0);
					    SV_Target0 = u_xlat0.wwww * u_xlat1 + vec4(1.0, 1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendMul" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendMul" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendMul" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendMul" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendMul" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendMul" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendMul" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					bool u_xlatb1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1.x = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat0.w = u_xlat0.w * u_xlat1.x;
					    u_xlat0 = u_xlat0 * vs_COLOR0;
					    u_xlat0.w = u_xlat0.w;
					    u_xlat0.w = clamp(u_xlat0.w, 0.0, 1.0);
					    u_xlat1 = u_xlat0 + vec4(-1.0, -1.0, -1.0, -1.0);
					    SV_Target0 = u_xlat0.wwww * u_xlat1 + vec4(1.0, 1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					bool u_xlatb1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1.x = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat0.w = u_xlat0.w * u_xlat1.x;
					    u_xlat0 = u_xlat0 * vs_COLOR0;
					    u_xlat0.w = u_xlat0.w;
					    u_xlat0.w = clamp(u_xlat0.w, 0.0, 1.0);
					    u_xlat1 = u_xlat0 + vec4(-1.0, -1.0, -1.0, -1.0);
					    SV_Target0 = u_xlat0.wwww * u_xlat1 + vec4(1.0, 1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendMul" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					bool u_xlatb1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1.x = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat0.w = u_xlat0.w * u_xlat1.x;
					    u_xlat0 = u_xlat0 * vs_COLOR0;
					    u_xlat0.w = u_xlat0.w;
					    u_xlat0.w = clamp(u_xlat0.w, 0.0, 1.0);
					    u_xlat1 = u_xlat0 + vec4(-1.0, -1.0, -1.0, -1.0);
					    SV_Target0 = u_xlat0.wwww * u_xlat1 + vec4(1.0, 1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					bool u_xlatb1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1.x = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat0.w = u_xlat0.w * u_xlat1.x;
					    u_xlat0 = u_xlat0 * vs_COLOR0;
					    u_xlat0.w = u_xlat0.w;
					    u_xlat0.w = clamp(u_xlat0.w, 0.0, 1.0);
					    u_xlat1 = u_xlat0 + vec4(-1.0, -1.0, -1.0, -1.0);
					    SV_Target0 = u_xlat0.wwww * u_xlat1 + vec4(1.0, 1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendMul" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3.x;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3.x;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendMul" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3.x;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3.x;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendMul" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3.x;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3.x;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendMul" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3.x;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3.x;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendMul" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3.x;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3.x;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendMul" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3.x;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3.x;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendMul" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					bool u_xlatb1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1.x = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat0.w = u_xlat0.w * u_xlat1.x;
					    u_xlat0 = u_xlat0 * vs_COLOR0;
					    u_xlat0.w = u_xlat0.w;
					    u_xlat0.w = clamp(u_xlat0.w, 0.0, 1.0);
					    u_xlat1 = u_xlat0 + vec4(-1.0, -1.0, -1.0, -1.0);
					    SV_Target0 = u_xlat0.wwww * u_xlat1 + vec4(1.0, 1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					bool u_xlatb1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1.x = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat0.w = u_xlat0.w * u_xlat1.x;
					    u_xlat0 = u_xlat0 * vs_COLOR0;
					    u_xlat0.w = u_xlat0.w;
					    u_xlat0.w = clamp(u_xlat0.w, 0.0, 1.0);
					    u_xlat1 = u_xlat0 + vec4(-1.0, -1.0, -1.0, -1.0);
					    SV_Target0 = u_xlat0.wwww * u_xlat1 + vec4(1.0, 1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendMul" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					bool u_xlatb1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1.x = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat0.w = u_xlat0.w * u_xlat1.x;
					    u_xlat0 = u_xlat0 * vs_COLOR0;
					    u_xlat0.w = u_xlat0.w;
					    u_xlat0.w = clamp(u_xlat0.w, 0.0, 1.0);
					    u_xlat1 = u_xlat0 + vec4(-1.0, -1.0, -1.0, -1.0);
					    SV_Target0 = u_xlat0.wwww * u_xlat1 + vec4(1.0, 1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					bool u_xlatb1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1.x = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat0.w = u_xlat0.w * u_xlat1.x;
					    u_xlat0 = u_xlat0 * vs_COLOR0;
					    u_xlat0.w = u_xlat0.w;
					    u_xlat0.w = clamp(u_xlat0.w, 0.0, 1.0);
					    u_xlat1 = u_xlat0 + vec4(-1.0, -1.0, -1.0, -1.0);
					    SV_Target0 = u_xlat0.wwww * u_xlat1 + vec4(1.0, 1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendMul" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3.x;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3.x;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendMul" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3.x;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3.x;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendMul" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3.x;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3.x;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendMul" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3.x;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3.x;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendMul" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3.x;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3.x;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendMul" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3.x;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3.x;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendMul" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					bool u_xlatb1;
					float u_xlat6;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1.x = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat0.w = u_xlat0.w * u_xlat1.x;
					    u_xlat0 = u_xlat0 * vs_COLOR0;
					    u_xlat6 = u_xlat0.w;
					    u_xlat6 = clamp(u_xlat6, 0.0, 1.0);
					    u_xlat0.w = u_xlat6 * vs_TEXCOORD4;
					    u_xlat1 = u_xlat0 + vec4(-1.0, -1.0, -1.0, -1.0);
					    SV_Target0 = u_xlat0.wwww * u_xlat1 + vec4(1.0, 1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					bool u_xlatb1;
					float u_xlat6;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1.x = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat0.w = u_xlat0.w * u_xlat1.x;
					    u_xlat0 = u_xlat0 * vs_COLOR0;
					    u_xlat6 = u_xlat0.w;
					    u_xlat6 = clamp(u_xlat6, 0.0, 1.0);
					    u_xlat0.w = u_xlat6 * vs_TEXCOORD4;
					    u_xlat1 = u_xlat0 + vec4(-1.0, -1.0, -1.0, -1.0);
					    SV_Target0 = u_xlat0.wwww * u_xlat1 + vec4(1.0, 1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendMul" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					bool u_xlatb1;
					float u_xlat6;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1.x = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat0.w = u_xlat0.w * u_xlat1.x;
					    u_xlat0 = u_xlat0 * vs_COLOR0;
					    u_xlat6 = u_xlat0.w;
					    u_xlat6 = clamp(u_xlat6, 0.0, 1.0);
					    u_xlat0.w = u_xlat6 * vs_TEXCOORD4;
					    u_xlat1 = u_xlat0 + vec4(-1.0, -1.0, -1.0, -1.0);
					    SV_Target0 = u_xlat0.wwww * u_xlat1 + vec4(1.0, 1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					bool u_xlatb1;
					float u_xlat6;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1.x = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat0.w = u_xlat0.w * u_xlat1.x;
					    u_xlat0 = u_xlat0 * vs_COLOR0;
					    u_xlat6 = u_xlat0.w;
					    u_xlat6 = clamp(u_xlat6, 0.0, 1.0);
					    u_xlat0.w = u_xlat6 * vs_TEXCOORD4;
					    u_xlat1 = u_xlat0 + vec4(-1.0, -1.0, -1.0, -1.0);
					    SV_Target0 = u_xlat0.wwww * u_xlat1 + vec4(1.0, 1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendMul" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3.x;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3.x;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendMul" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3.x;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3.x;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendMul" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3.x;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3.x;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendMul" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3.x;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3.x;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendMul" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3.x;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3.x;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendMul" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3.x;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3.x;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendMul" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					bool u_xlatb1;
					float u_xlat6;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1.x = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat0.w = u_xlat0.w * u_xlat1.x;
					    u_xlat0 = u_xlat0 * vs_COLOR0;
					    u_xlat6 = u_xlat0.w;
					    u_xlat6 = clamp(u_xlat6, 0.0, 1.0);
					    u_xlat0.w = u_xlat6 * vs_TEXCOORD4;
					    u_xlat1 = u_xlat0 + vec4(-1.0, -1.0, -1.0, -1.0);
					    SV_Target0 = u_xlat0.wwww * u_xlat1 + vec4(1.0, 1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					bool u_xlatb1;
					float u_xlat6;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1.x = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat0.w = u_xlat0.w * u_xlat1.x;
					    u_xlat0 = u_xlat0 * vs_COLOR0;
					    u_xlat6 = u_xlat0.w;
					    u_xlat6 = clamp(u_xlat6, 0.0, 1.0);
					    u_xlat0.w = u_xlat6 * vs_TEXCOORD4;
					    u_xlat1 = u_xlat0 + vec4(-1.0, -1.0, -1.0, -1.0);
					    SV_Target0 = u_xlat0.wwww * u_xlat1 + vec4(1.0, 1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendMul" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					bool u_xlatb1;
					float u_xlat6;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1.x = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat0.w = u_xlat0.w * u_xlat1.x;
					    u_xlat0 = u_xlat0 * vs_COLOR0;
					    u_xlat6 = u_xlat0.w;
					    u_xlat6 = clamp(u_xlat6, 0.0, 1.0);
					    u_xlat0.w = u_xlat6 * vs_TEXCOORD4;
					    u_xlat1 = u_xlat0 + vec4(-1.0, -1.0, -1.0, -1.0);
					    SV_Target0 = u_xlat0.wwww * u_xlat1 + vec4(1.0, 1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					bool u_xlatb1;
					float u_xlat6;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1.x = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat0.w = u_xlat0.w * u_xlat1.x;
					    u_xlat0 = u_xlat0 * vs_COLOR0;
					    u_xlat6 = u_xlat0.w;
					    u_xlat6 = clamp(u_xlat6, 0.0, 1.0);
					    u_xlat0.w = u_xlat6 * vs_TEXCOORD4;
					    u_xlat1 = u_xlat0 + vec4(-1.0, -1.0, -1.0, -1.0);
					    SV_Target0 = u_xlat0.wwww * u_xlat1 + vec4(1.0, 1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendMul" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3.x;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3.x;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendMul" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3.x;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3.x;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendMul" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3.x;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3.x;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendMul" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3.x;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3.x;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendMul" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3.x;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3.x;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendMul" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3.x;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3.x;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendMul" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlat0.xyz = u_xlat0.xyz + u_xlat0.xyz;
					    u_xlat0.xyz = u_xlat0.xyz * _TintColor.xyz;
					    u_xlat1.xyz = u_xlat0.xyz * vs_COLOR0.xyz;
					    u_xlat0.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlatb0 = u_xlat0.w>=u_xlat0.x;
					    u_xlat1.w = u_xlatb0 ? 1.0 : float(0.0);
					    u_xlat0 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    SV_Target0 = u_xlat1.wwww * u_xlat0 + vec4(1.0, 1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlat0.xyz = u_xlat0.xyz + u_xlat0.xyz;
					    u_xlat0.xyz = u_xlat0.xyz * _TintColor.xyz;
					    u_xlat1.xyz = u_xlat0.xyz * vs_COLOR0.xyz;
					    u_xlat0.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlatb0 = u_xlat0.w>=u_xlat0.x;
					    u_xlat1.w = u_xlatb0 ? 1.0 : float(0.0);
					    u_xlat0 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    SV_Target0 = u_xlat1.wwww * u_xlat0 + vec4(1.0, 1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendMul" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlat0.xyz = u_xlat0.xyz + u_xlat0.xyz;
					    u_xlat0.xyz = u_xlat0.xyz * _TintColor.xyz;
					    u_xlat1.xyz = u_xlat0.xyz * vs_COLOR0.xyz;
					    u_xlat0.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlatb0 = u_xlat0.w>=u_xlat0.x;
					    u_xlat1.w = u_xlatb0 ? 1.0 : float(0.0);
					    u_xlat0 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    SV_Target0 = u_xlat1.wwww * u_xlat0 + vec4(1.0, 1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlat0.xyz = u_xlat0.xyz + u_xlat0.xyz;
					    u_xlat0.xyz = u_xlat0.xyz * _TintColor.xyz;
					    u_xlat1.xyz = u_xlat0.xyz * vs_COLOR0.xyz;
					    u_xlat0.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlatb0 = u_xlat0.w>=u_xlat0.x;
					    u_xlat1.w = u_xlatb0 ? 1.0 : float(0.0);
					    u_xlat0 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    SV_Target0 = u_xlat1.wwww * u_xlat0 + vec4(1.0, 1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendMul" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat2.w = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1 = u_xlat2 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat2.w = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1 = u_xlat2 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendMul" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat2.w = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1 = u_xlat2 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat2.w = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1 = u_xlat2 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendMul" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat2.w = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1 = u_xlat2 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat2.w = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1 = u_xlat2 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendMul" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat2.w = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1 = u_xlat2 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat2.w = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1 = u_xlat2 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendMul" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat2.w = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1 = u_xlat2 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat2.w = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1 = u_xlat2 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendMul" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat2.w = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1 = u_xlat2 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat2.w = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1 = u_xlat2 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendMul" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlat0.xyz = u_xlat0.xyz + u_xlat0.xyz;
					    u_xlat0.xyz = u_xlat0.xyz * _TintColor.xyz;
					    u_xlat1.xyz = u_xlat0.xyz * vs_COLOR0.xyz;
					    u_xlat0.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlatb0 = u_xlat0.w>=u_xlat0.x;
					    u_xlat1.w = u_xlatb0 ? 1.0 : float(0.0);
					    u_xlat0 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    SV_Target0 = u_xlat1.wwww * u_xlat0 + vec4(1.0, 1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlat0.xyz = u_xlat0.xyz + u_xlat0.xyz;
					    u_xlat0.xyz = u_xlat0.xyz * _TintColor.xyz;
					    u_xlat1.xyz = u_xlat0.xyz * vs_COLOR0.xyz;
					    u_xlat0.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlatb0 = u_xlat0.w>=u_xlat0.x;
					    u_xlat1.w = u_xlatb0 ? 1.0 : float(0.0);
					    u_xlat0 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    SV_Target0 = u_xlat1.wwww * u_xlat0 + vec4(1.0, 1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendMul" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlat0.xyz = u_xlat0.xyz + u_xlat0.xyz;
					    u_xlat0.xyz = u_xlat0.xyz * _TintColor.xyz;
					    u_xlat1.xyz = u_xlat0.xyz * vs_COLOR0.xyz;
					    u_xlat0.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlatb0 = u_xlat0.w>=u_xlat0.x;
					    u_xlat1.w = u_xlatb0 ? 1.0 : float(0.0);
					    u_xlat0 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    SV_Target0 = u_xlat1.wwww * u_xlat0 + vec4(1.0, 1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlat0.xyz = u_xlat0.xyz + u_xlat0.xyz;
					    u_xlat0.xyz = u_xlat0.xyz * _TintColor.xyz;
					    u_xlat1.xyz = u_xlat0.xyz * vs_COLOR0.xyz;
					    u_xlat0.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlatb0 = u_xlat0.w>=u_xlat0.x;
					    u_xlat1.w = u_xlatb0 ? 1.0 : float(0.0);
					    u_xlat0 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    SV_Target0 = u_xlat1.wwww * u_xlat0 + vec4(1.0, 1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendMul" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat2.w = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1 = u_xlat2 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat2.w = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1 = u_xlat2 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendMul" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat2.w = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1 = u_xlat2 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat2.w = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1 = u_xlat2 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendMul" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat2.w = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1 = u_xlat2 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat2.w = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1 = u_xlat2 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendMul" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat2.w = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1 = u_xlat2 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat2.w = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1 = u_xlat2 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendMul" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat2.w = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1 = u_xlat2 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat2.w = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1 = u_xlat2 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendMul" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat2.w = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1 = u_xlat2 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat2.w = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1 = u_xlat2 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendMul" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlat0.xyz = u_xlat0.xyz + u_xlat0.xyz;
					    u_xlat0.xyz = u_xlat0.xyz * _TintColor.xyz;
					    u_xlat1.xyz = u_xlat0.xyz * vs_COLOR0.xyz;
					    u_xlat0.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlatb0 = u_xlat0.w>=u_xlat0.x;
					    u_xlat0.x = u_xlatb0 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat0.x * vs_TEXCOORD4;
					    u_xlat0 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    SV_Target0 = u_xlat1.wwww * u_xlat0 + vec4(1.0, 1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlat0.xyz = u_xlat0.xyz + u_xlat0.xyz;
					    u_xlat0.xyz = u_xlat0.xyz * _TintColor.xyz;
					    u_xlat1.xyz = u_xlat0.xyz * vs_COLOR0.xyz;
					    u_xlat0.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlatb0 = u_xlat0.w>=u_xlat0.x;
					    u_xlat0.x = u_xlatb0 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat0.x * vs_TEXCOORD4;
					    u_xlat0 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    SV_Target0 = u_xlat1.wwww * u_xlat0 + vec4(1.0, 1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendMul" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlat0.xyz = u_xlat0.xyz + u_xlat0.xyz;
					    u_xlat0.xyz = u_xlat0.xyz * _TintColor.xyz;
					    u_xlat1.xyz = u_xlat0.xyz * vs_COLOR0.xyz;
					    u_xlat0.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlatb0 = u_xlat0.w>=u_xlat0.x;
					    u_xlat0.x = u_xlatb0 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat0.x * vs_TEXCOORD4;
					    u_xlat0 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    SV_Target0 = u_xlat1.wwww * u_xlat0 + vec4(1.0, 1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlat0.xyz = u_xlat0.xyz + u_xlat0.xyz;
					    u_xlat0.xyz = u_xlat0.xyz * _TintColor.xyz;
					    u_xlat1.xyz = u_xlat0.xyz * vs_COLOR0.xyz;
					    u_xlat0.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlatb0 = u_xlat0.w>=u_xlat0.x;
					    u_xlat0.x = u_xlatb0 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat0.x * vs_TEXCOORD4;
					    u_xlat0 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    SV_Target0 = u_xlat1.wwww * u_xlat0 + vec4(1.0, 1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendMul" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat2.w = u_xlat3.x * vs_TEXCOORD4;
					    u_xlat1 = u_xlat2 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat2.w = u_xlat3.x * vs_TEXCOORD4;
					    u_xlat1 = u_xlat2 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendMul" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat2.w = u_xlat3.x * vs_TEXCOORD4;
					    u_xlat1 = u_xlat2 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat2.w = u_xlat3.x * vs_TEXCOORD4;
					    u_xlat1 = u_xlat2 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendMul" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat2.w = u_xlat3.x * vs_TEXCOORD4;
					    u_xlat1 = u_xlat2 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat2.w = u_xlat3.x * vs_TEXCOORD4;
					    u_xlat1 = u_xlat2 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendMul" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat2.w = u_xlat3.x * vs_TEXCOORD4;
					    u_xlat1 = u_xlat2 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat2.w = u_xlat3.x * vs_TEXCOORD4;
					    u_xlat1 = u_xlat2 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendMul" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat2.w = u_xlat3.x * vs_TEXCOORD4;
					    u_xlat1 = u_xlat2 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat2.w = u_xlat3.x * vs_TEXCOORD4;
					    u_xlat1 = u_xlat2 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendMul" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat2.w = u_xlat3.x * vs_TEXCOORD4;
					    u_xlat1 = u_xlat2 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat2.w = u_xlat3.x * vs_TEXCOORD4;
					    u_xlat1 = u_xlat2 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendMul" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlat0.xyz = u_xlat0.xyz + u_xlat0.xyz;
					    u_xlat0.xyz = u_xlat0.xyz * _TintColor.xyz;
					    u_xlat1.xyz = u_xlat0.xyz * vs_COLOR0.xyz;
					    u_xlat0.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlatb0 = u_xlat0.w>=u_xlat0.x;
					    u_xlat0.x = u_xlatb0 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat0.x * vs_TEXCOORD4;
					    u_xlat0 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    SV_Target0 = u_xlat1.wwww * u_xlat0 + vec4(1.0, 1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlat0.xyz = u_xlat0.xyz + u_xlat0.xyz;
					    u_xlat0.xyz = u_xlat0.xyz * _TintColor.xyz;
					    u_xlat1.xyz = u_xlat0.xyz * vs_COLOR0.xyz;
					    u_xlat0.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlatb0 = u_xlat0.w>=u_xlat0.x;
					    u_xlat0.x = u_xlatb0 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat0.x * vs_TEXCOORD4;
					    u_xlat0 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    SV_Target0 = u_xlat1.wwww * u_xlat0 + vec4(1.0, 1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendMul" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlat0.xyz = u_xlat0.xyz + u_xlat0.xyz;
					    u_xlat0.xyz = u_xlat0.xyz * _TintColor.xyz;
					    u_xlat1.xyz = u_xlat0.xyz * vs_COLOR0.xyz;
					    u_xlat0.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlatb0 = u_xlat0.w>=u_xlat0.x;
					    u_xlat0.x = u_xlatb0 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat0.x * vs_TEXCOORD4;
					    u_xlat0 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    SV_Target0 = u_xlat1.wwww * u_xlat0 + vec4(1.0, 1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlat0.xyz = u_xlat0.xyz + u_xlat0.xyz;
					    u_xlat0.xyz = u_xlat0.xyz * _TintColor.xyz;
					    u_xlat1.xyz = u_xlat0.xyz * vs_COLOR0.xyz;
					    u_xlat0.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlatb0 = u_xlat0.w>=u_xlat0.x;
					    u_xlat0.x = u_xlatb0 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat0.x * vs_TEXCOORD4;
					    u_xlat0 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    SV_Target0 = u_xlat1.wwww * u_xlat0 + vec4(1.0, 1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendMul" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat2.w = u_xlat3.x * vs_TEXCOORD4;
					    u_xlat1 = u_xlat2 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat2.w = u_xlat3.x * vs_TEXCOORD4;
					    u_xlat1 = u_xlat2 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendMul" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat2.w = u_xlat3.x * vs_TEXCOORD4;
					    u_xlat1 = u_xlat2 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat2.w = u_xlat3.x * vs_TEXCOORD4;
					    u_xlat1 = u_xlat2 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendMul" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat2.w = u_xlat3.x * vs_TEXCOORD4;
					    u_xlat1 = u_xlat2 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat2.w = u_xlat3.x * vs_TEXCOORD4;
					    u_xlat1 = u_xlat2 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendMul" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat2.w = u_xlat3.x * vs_TEXCOORD4;
					    u_xlat1 = u_xlat2 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat2.w = u_xlat3.x * vs_TEXCOORD4;
					    u_xlat1 = u_xlat2 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendMul" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat2.w = u_xlat3.x * vs_TEXCOORD4;
					    u_xlat1 = u_xlat2 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat2.w = u_xlat3.x * vs_TEXCOORD4;
					    u_xlat1 = u_xlat2 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendMul" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat2.w = u_xlat3.x * vs_TEXCOORD4;
					    u_xlat1 = u_xlat2 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat2.w = u_xlat3.x * vs_TEXCOORD4;
					    u_xlat1 = u_xlat2 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendMul" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat0 = u_xlat0 * vs_COLOR0;
					    u_xlat0.w = u_xlat0.w;
					    u_xlat0.w = clamp(u_xlat0.w, 0.0, 1.0);
					    u_xlat1 = u_xlat0 + vec4(-1.0, -1.0, -1.0, -1.0);
					    SV_Target0 = u_xlat0.wwww * u_xlat1 + vec4(1.0, 1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat0 = u_xlat0 * vs_COLOR0;
					    u_xlat0.w = u_xlat0.w;
					    u_xlat0.w = clamp(u_xlat0.w, 0.0, 1.0);
					    u_xlat1 = u_xlat0 + vec4(-1.0, -1.0, -1.0, -1.0);
					    SV_Target0 = u_xlat0.wwww * u_xlat1 + vec4(1.0, 1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendMul" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[7];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat0.w = u_xlat0.w;
					    u_xlat0.w = clamp(u_xlat0.w, 0.0, 1.0);
					    u_xlat1 = u_xlat0 + vec4(-1.0, -1.0, -1.0, -1.0);
					    SV_Target0 = u_xlat0.wwww * u_xlat1 + vec4(1.0, 1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[6];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat0.w = u_xlat0.w;
					    u_xlat0.w = clamp(u_xlat0.w, 0.0, 1.0);
					    u_xlat1 = u_xlat0 + vec4(-1.0, -1.0, -1.0, -1.0);
					    SV_Target0 = u_xlat0.wwww * u_xlat1 + vec4(1.0, 1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendMul" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendMul" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					float u_xlat9;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat0.w = u_xlat0.w;
					    u_xlat0.w = clamp(u_xlat0.w, 0.0, 1.0);
					    u_xlat1 = u_xlat0 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat0.xyz = u_xlat0.www * u_xlat1.xyz;
					    SV_Target0.w = u_xlat0.w * u_xlat1.w + 1.0;
					    u_xlat9 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat9 = (-u_xlat9) + 1.0;
					    u_xlat9 = u_xlat9 * _ProjectionParams.z;
					    u_xlat9 = max(u_xlat9, 0.0);
					    u_xlat9 = u_xlat9 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat9 = clamp(u_xlat9, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat9) * u_xlat0.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					float u_xlat9;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat0.w = u_xlat0.w;
					    u_xlat0.w = clamp(u_xlat0.w, 0.0, 1.0);
					    u_xlat1 = u_xlat0 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat0.xyz = u_xlat0.www * u_xlat1.xyz;
					    SV_Target0.w = u_xlat0.w * u_xlat1.w + 1.0;
					    u_xlat9 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat9 = (-u_xlat9) + 1.0;
					    u_xlat9 = u_xlat9 * _ProjectionParams.z;
					    u_xlat9 = max(u_xlat9, 0.0);
					    u_xlat9 = u_xlat9 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat9 = clamp(u_xlat9, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat9) * u_xlat0.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendMul" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendMul" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec3 u_xlat4;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat4.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat1 = texture(_CameraDepthTexture, u_xlat4.xy);
					    u_xlat4.x = _ZBufferParams.z * u_xlat1.x + _ZBufferParams.w;
					    u_xlat4.x = float(1.0) / u_xlat4.x;
					    u_xlat4.x = u_xlat4.x + (-vs_TEXCOORD3.z);
					    u_xlat4.x = u_xlat4.x * _InvFade;
					    u_xlat4.x = clamp(u_xlat4.x, 0.0, 1.0);
					    u_xlat1.w = u_xlat4.x * vs_COLOR0.w;
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat3 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2 = u_xlat2 + (-u_xlat3);
					    u_xlat2 = vec4(vs_TEXCOORD1) * u_xlat2 + u_xlat3;
					    u_xlat2 = u_xlat2 + u_xlat2;
					    u_xlat2 = u_xlat2 * _TintColor;
					    u_xlat1.xyz = vs_COLOR0.xyz;
					    u_xlat1 = u_xlat1 * u_xlat2;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat4.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat4.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec3 u_xlat4;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat4.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat1 = texture(_CameraDepthTexture, u_xlat4.xy);
					    u_xlat4.x = _ZBufferParams.z * u_xlat1.x + _ZBufferParams.w;
					    u_xlat4.x = float(1.0) / u_xlat4.x;
					    u_xlat4.x = u_xlat4.x + (-vs_TEXCOORD3.z);
					    u_xlat4.x = u_xlat4.x * _InvFade;
					    u_xlat4.x = clamp(u_xlat4.x, 0.0, 1.0);
					    u_xlat1.w = u_xlat4.x * vs_COLOR0.w;
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat3 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2 = u_xlat2 + (-u_xlat3);
					    u_xlat2 = vec4(vs_TEXCOORD1) * u_xlat2 + u_xlat3;
					    u_xlat2 = u_xlat2 + u_xlat2;
					    u_xlat2 = u_xlat2 * _TintColor;
					    u_xlat1.xyz = vs_COLOR0.xyz;
					    u_xlat1 = u_xlat1 * u_xlat2;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat4.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat4.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendMul" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendMul" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec3 u_xlat4;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat4.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat1 = texture(_CameraDepthTexture, u_xlat4.xy);
					    u_xlat4.x = _ZBufferParams.z * u_xlat1.x + _ZBufferParams.w;
					    u_xlat4.x = float(1.0) / u_xlat4.x;
					    u_xlat4.x = u_xlat4.x + (-vs_TEXCOORD3.z);
					    u_xlat4.x = u_xlat4.x * _InvFade;
					    u_xlat4.x = clamp(u_xlat4.x, 0.0, 1.0);
					    u_xlat1.w = u_xlat4.x * vs_COLOR0.w;
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat3 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2 = u_xlat2 + (-u_xlat3);
					    u_xlat2 = vec4(vs_TEXCOORD1) * u_xlat2 + u_xlat3;
					    u_xlat2 = u_xlat2 + u_xlat2;
					    u_xlat2 = u_xlat2 * _TintColor;
					    u_xlat1.xyz = vs_COLOR0.xyz;
					    u_xlat1 = u_xlat1 * u_xlat2;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat4.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat4.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec3 u_xlat4;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat4.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat1 = texture(_CameraDepthTexture, u_xlat4.xy);
					    u_xlat4.x = _ZBufferParams.z * u_xlat1.x + _ZBufferParams.w;
					    u_xlat4.x = float(1.0) / u_xlat4.x;
					    u_xlat4.x = u_xlat4.x + (-vs_TEXCOORD3.z);
					    u_xlat4.x = u_xlat4.x * _InvFade;
					    u_xlat4.x = clamp(u_xlat4.x, 0.0, 1.0);
					    u_xlat1.w = u_xlat4.x * vs_COLOR0.w;
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat3 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2 = u_xlat2 + (-u_xlat3);
					    u_xlat2 = vec4(vs_TEXCOORD1) * u_xlat2 + u_xlat3;
					    u_xlat2 = u_xlat2 + u_xlat2;
					    u_xlat2 = u_xlat2 * _TintColor;
					    u_xlat1.xyz = vs_COLOR0.xyz;
					    u_xlat1 = u_xlat1 * u_xlat2;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat4.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat4.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendMul" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[7];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat0.w = u_xlat0.w;
					    u_xlat0.w = clamp(u_xlat0.w, 0.0, 1.0);
					    u_xlat1 = u_xlat0 + vec4(-1.0, -1.0, -1.0, -1.0);
					    SV_Target0 = u_xlat0.wwww * u_xlat1 + vec4(1.0, 1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[6];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat0.w = u_xlat0.w;
					    u_xlat0.w = clamp(u_xlat0.w, 0.0, 1.0);
					    u_xlat1 = u_xlat0 + vec4(-1.0, -1.0, -1.0, -1.0);
					    SV_Target0 = u_xlat0.wwww * u_xlat1 + vec4(1.0, 1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendMul" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[7];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat0.w = u_xlat0.w;
					    u_xlat0.w = clamp(u_xlat0.w, 0.0, 1.0);
					    u_xlat1 = u_xlat0 + vec4(-1.0, -1.0, -1.0, -1.0);
					    SV_Target0 = u_xlat0.wwww * u_xlat1 + vec4(1.0, 1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[6];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat0.w = u_xlat0.w;
					    u_xlat0.w = clamp(u_xlat0.w, 0.0, 1.0);
					    u_xlat1 = u_xlat0 + vec4(-1.0, -1.0, -1.0, -1.0);
					    SV_Target0 = u_xlat0.wwww * u_xlat1 + vec4(1.0, 1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendMul" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					float u_xlat9;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat0.w = u_xlat0.w;
					    u_xlat0.w = clamp(u_xlat0.w, 0.0, 1.0);
					    u_xlat1 = u_xlat0 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat0.xyz = u_xlat0.www * u_xlat1.xyz;
					    SV_Target0.w = u_xlat0.w * u_xlat1.w + 1.0;
					    u_xlat9 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat9 = (-u_xlat9) + 1.0;
					    u_xlat9 = u_xlat9 * _ProjectionParams.z;
					    u_xlat9 = max(u_xlat9, 0.0);
					    u_xlat9 = u_xlat9 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat9 = clamp(u_xlat9, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat9) * u_xlat0.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					float u_xlat9;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat0.w = u_xlat0.w;
					    u_xlat0.w = clamp(u_xlat0.w, 0.0, 1.0);
					    u_xlat1 = u_xlat0 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat0.xyz = u_xlat0.www * u_xlat1.xyz;
					    SV_Target0.w = u_xlat0.w * u_xlat1.w + 1.0;
					    u_xlat9 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat9 = (-u_xlat9) + 1.0;
					    u_xlat9 = u_xlat9 * _ProjectionParams.z;
					    u_xlat9 = max(u_xlat9, 0.0);
					    u_xlat9 = u_xlat9 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat9 = clamp(u_xlat9, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat9) * u_xlat0.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendMul" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					float u_xlat9;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat0.w = u_xlat0.w;
					    u_xlat0.w = clamp(u_xlat0.w, 0.0, 1.0);
					    u_xlat1 = u_xlat0 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat0.xyz = u_xlat0.www * u_xlat1.xyz;
					    SV_Target0.w = u_xlat0.w * u_xlat1.w + 1.0;
					    u_xlat9 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat9 = (-u_xlat9) + 1.0;
					    u_xlat9 = u_xlat9 * _ProjectionParams.z;
					    u_xlat9 = max(u_xlat9, 0.0);
					    u_xlat9 = u_xlat9 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat9 = clamp(u_xlat9, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat9) * u_xlat0.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					float u_xlat9;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat0.w = u_xlat0.w;
					    u_xlat0.w = clamp(u_xlat0.w, 0.0, 1.0);
					    u_xlat1 = u_xlat0 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat0.xyz = u_xlat0.www * u_xlat1.xyz;
					    SV_Target0.w = u_xlat0.w * u_xlat1.w + 1.0;
					    u_xlat9 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat9 = (-u_xlat9) + 1.0;
					    u_xlat9 = u_xlat9 * _ProjectionParams.z;
					    u_xlat9 = max(u_xlat9, 0.0);
					    u_xlat9 = u_xlat9 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat9 = clamp(u_xlat9, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat9) * u_xlat0.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendMul" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec3 u_xlat4;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat4.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat1 = texture(_CameraDepthTexture, u_xlat4.xy);
					    u_xlat4.x = _ZBufferParams.z * u_xlat1.x + _ZBufferParams.w;
					    u_xlat4.x = float(1.0) / u_xlat4.x;
					    u_xlat4.x = u_xlat4.x + (-vs_TEXCOORD3.z);
					    u_xlat4.x = u_xlat4.x * _InvFade;
					    u_xlat4.x = clamp(u_xlat4.x, 0.0, 1.0);
					    u_xlat1.w = u_xlat4.x * vs_COLOR0.w;
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat3 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2 = u_xlat2 + (-u_xlat3);
					    u_xlat2 = vec4(vs_TEXCOORD1) * u_xlat2 + u_xlat3;
					    u_xlat2 = u_xlat2 + u_xlat2;
					    u_xlat2 = u_xlat2 * _TintColor;
					    u_xlat1.xyz = vs_COLOR0.xyz;
					    u_xlat1 = u_xlat1 * u_xlat2;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat4.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat4.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec3 u_xlat4;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat4.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat1 = texture(_CameraDepthTexture, u_xlat4.xy);
					    u_xlat4.x = _ZBufferParams.z * u_xlat1.x + _ZBufferParams.w;
					    u_xlat4.x = float(1.0) / u_xlat4.x;
					    u_xlat4.x = u_xlat4.x + (-vs_TEXCOORD3.z);
					    u_xlat4.x = u_xlat4.x * _InvFade;
					    u_xlat4.x = clamp(u_xlat4.x, 0.0, 1.0);
					    u_xlat1.w = u_xlat4.x * vs_COLOR0.w;
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat3 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2 = u_xlat2 + (-u_xlat3);
					    u_xlat2 = vec4(vs_TEXCOORD1) * u_xlat2 + u_xlat3;
					    u_xlat2 = u_xlat2 + u_xlat2;
					    u_xlat2 = u_xlat2 * _TintColor;
					    u_xlat1.xyz = vs_COLOR0.xyz;
					    u_xlat1 = u_xlat1 * u_xlat2;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat4.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat4.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendMul" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec3 u_xlat4;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat4.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat1 = texture(_CameraDepthTexture, u_xlat4.xy);
					    u_xlat4.x = _ZBufferParams.z * u_xlat1.x + _ZBufferParams.w;
					    u_xlat4.x = float(1.0) / u_xlat4.x;
					    u_xlat4.x = u_xlat4.x + (-vs_TEXCOORD3.z);
					    u_xlat4.x = u_xlat4.x * _InvFade;
					    u_xlat4.x = clamp(u_xlat4.x, 0.0, 1.0);
					    u_xlat1.w = u_xlat4.x * vs_COLOR0.w;
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat3 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2 = u_xlat2 + (-u_xlat3);
					    u_xlat2 = vec4(vs_TEXCOORD1) * u_xlat2 + u_xlat3;
					    u_xlat2 = u_xlat2 + u_xlat2;
					    u_xlat2 = u_xlat2 * _TintColor;
					    u_xlat1.xyz = vs_COLOR0.xyz;
					    u_xlat1 = u_xlat1 * u_xlat2;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat4.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat4.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec3 u_xlat4;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat4.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat1 = texture(_CameraDepthTexture, u_xlat4.xy);
					    u_xlat4.x = _ZBufferParams.z * u_xlat1.x + _ZBufferParams.w;
					    u_xlat4.x = float(1.0) / u_xlat4.x;
					    u_xlat4.x = u_xlat4.x + (-vs_TEXCOORD3.z);
					    u_xlat4.x = u_xlat4.x * _InvFade;
					    u_xlat4.x = clamp(u_xlat4.x, 0.0, 1.0);
					    u_xlat1.w = u_xlat4.x * vs_COLOR0.w;
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat3 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2 = u_xlat2 + (-u_xlat3);
					    u_xlat2 = vec4(vs_TEXCOORD1) * u_xlat2 + u_xlat3;
					    u_xlat2 = u_xlat2 + u_xlat2;
					    u_xlat2 = u_xlat2 * _TintColor;
					    u_xlat1.xyz = vs_COLOR0.xyz;
					    u_xlat1 = u_xlat1 * u_xlat2;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat4.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat4.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendMul" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec3 u_xlat4;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat4.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat1 = texture(_CameraDepthTexture, u_xlat4.xy);
					    u_xlat4.x = _ZBufferParams.z * u_xlat1.x + _ZBufferParams.w;
					    u_xlat4.x = float(1.0) / u_xlat4.x;
					    u_xlat4.x = u_xlat4.x + (-vs_TEXCOORD3.z);
					    u_xlat4.x = u_xlat4.x * _InvFade;
					    u_xlat4.x = clamp(u_xlat4.x, 0.0, 1.0);
					    u_xlat1.w = u_xlat4.x * vs_COLOR0.w;
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat3 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2 = u_xlat2 + (-u_xlat3);
					    u_xlat2 = vec4(vs_TEXCOORD1) * u_xlat2 + u_xlat3;
					    u_xlat2 = u_xlat2 + u_xlat2;
					    u_xlat2 = u_xlat2 * _TintColor;
					    u_xlat1.xyz = vs_COLOR0.xyz;
					    u_xlat1 = u_xlat1 * u_xlat2;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat4.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat4.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec3 u_xlat4;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat4.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat1 = texture(_CameraDepthTexture, u_xlat4.xy);
					    u_xlat4.x = _ZBufferParams.z * u_xlat1.x + _ZBufferParams.w;
					    u_xlat4.x = float(1.0) / u_xlat4.x;
					    u_xlat4.x = u_xlat4.x + (-vs_TEXCOORD3.z);
					    u_xlat4.x = u_xlat4.x * _InvFade;
					    u_xlat4.x = clamp(u_xlat4.x, 0.0, 1.0);
					    u_xlat1.w = u_xlat4.x * vs_COLOR0.w;
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat3 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2 = u_xlat2 + (-u_xlat3);
					    u_xlat2 = vec4(vs_TEXCOORD1) * u_xlat2 + u_xlat3;
					    u_xlat2 = u_xlat2 + u_xlat2;
					    u_xlat2 = u_xlat2 * _TintColor;
					    u_xlat1.xyz = vs_COLOR0.xyz;
					    u_xlat1 = u_xlat1 * u_xlat2;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat4.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat4.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendMul" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec3 u_xlat4;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat4.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat1 = texture(_CameraDepthTexture, u_xlat4.xy);
					    u_xlat4.x = _ZBufferParams.z * u_xlat1.x + _ZBufferParams.w;
					    u_xlat4.x = float(1.0) / u_xlat4.x;
					    u_xlat4.x = u_xlat4.x + (-vs_TEXCOORD3.z);
					    u_xlat4.x = u_xlat4.x * _InvFade;
					    u_xlat4.x = clamp(u_xlat4.x, 0.0, 1.0);
					    u_xlat1.w = u_xlat4.x * vs_COLOR0.w;
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat3 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2 = u_xlat2 + (-u_xlat3);
					    u_xlat2 = vec4(vs_TEXCOORD1) * u_xlat2 + u_xlat3;
					    u_xlat2 = u_xlat2 + u_xlat2;
					    u_xlat2 = u_xlat2 * _TintColor;
					    u_xlat1.xyz = vs_COLOR0.xyz;
					    u_xlat1 = u_xlat1 * u_xlat2;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat4.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat4.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec3 u_xlat4;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat4.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat1 = texture(_CameraDepthTexture, u_xlat4.xy);
					    u_xlat4.x = _ZBufferParams.z * u_xlat1.x + _ZBufferParams.w;
					    u_xlat4.x = float(1.0) / u_xlat4.x;
					    u_xlat4.x = u_xlat4.x + (-vs_TEXCOORD3.z);
					    u_xlat4.x = u_xlat4.x * _InvFade;
					    u_xlat4.x = clamp(u_xlat4.x, 0.0, 1.0);
					    u_xlat1.w = u_xlat4.x * vs_COLOR0.w;
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat3 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2 = u_xlat2 + (-u_xlat3);
					    u_xlat2 = vec4(vs_TEXCOORD1) * u_xlat2 + u_xlat3;
					    u_xlat2 = u_xlat2 + u_xlat2;
					    u_xlat2 = u_xlat2 * _TintColor;
					    u_xlat1.xyz = vs_COLOR0.xyz;
					    u_xlat1 = u_xlat1 * u_xlat2;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat4.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat4.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendMul" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat6;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat0 = u_xlat0 * vs_COLOR0;
					    u_xlat6 = u_xlat0.w;
					    u_xlat6 = clamp(u_xlat6, 0.0, 1.0);
					    u_xlat0.w = u_xlat6 * vs_TEXCOORD4;
					    u_xlat1 = u_xlat0 + vec4(-1.0, -1.0, -1.0, -1.0);
					    SV_Target0 = u_xlat0.wwww * u_xlat1 + vec4(1.0, 1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat6;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat0 = u_xlat0 * vs_COLOR0;
					    u_xlat6 = u_xlat0.w;
					    u_xlat6 = clamp(u_xlat6, 0.0, 1.0);
					    u_xlat0.w = u_xlat6 * vs_TEXCOORD4;
					    u_xlat1 = u_xlat0 + vec4(-1.0, -1.0, -1.0, -1.0);
					    SV_Target0 = u_xlat0.wwww * u_xlat1 + vec4(1.0, 1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendMul" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[7];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					float u_xlat9;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat9 = u_xlat0.w;
					    u_xlat9 = clamp(u_xlat9, 0.0, 1.0);
					    u_xlat0.w = u_xlat9 * vs_TEXCOORD4;
					    u_xlat1 = u_xlat0 + vec4(-1.0, -1.0, -1.0, -1.0);
					    SV_Target0 = u_xlat0.wwww * u_xlat1 + vec4(1.0, 1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[6];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					float u_xlat9;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat9 = u_xlat0.w;
					    u_xlat9 = clamp(u_xlat9, 0.0, 1.0);
					    u_xlat0.w = u_xlat9 * vs_TEXCOORD4;
					    u_xlat1 = u_xlat0 + vec4(-1.0, -1.0, -1.0, -1.0);
					    SV_Target0 = u_xlat0.wwww * u_xlat1 + vec4(1.0, 1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendMul" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendMul" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					float u_xlat9;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat9 = u_xlat0.w;
					    u_xlat9 = clamp(u_xlat9, 0.0, 1.0);
					    u_xlat0.w = u_xlat9 * vs_TEXCOORD4;
					    u_xlat1 = u_xlat0 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat0.xyz = u_xlat0.www * u_xlat1.xyz;
					    SV_Target0.w = u_xlat0.w * u_xlat1.w + 1.0;
					    u_xlat9 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat9 = (-u_xlat9) + 1.0;
					    u_xlat9 = u_xlat9 * _ProjectionParams.z;
					    u_xlat9 = max(u_xlat9, 0.0);
					    u_xlat9 = u_xlat9 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat9 = clamp(u_xlat9, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat9) * u_xlat0.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					float u_xlat9;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat9 = u_xlat0.w;
					    u_xlat9 = clamp(u_xlat9, 0.0, 1.0);
					    u_xlat0.w = u_xlat9 * vs_TEXCOORD4;
					    u_xlat1 = u_xlat0 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat0.xyz = u_xlat0.www * u_xlat1.xyz;
					    SV_Target0.w = u_xlat0.w * u_xlat1.w + 1.0;
					    u_xlat9 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat9 = (-u_xlat9) + 1.0;
					    u_xlat9 = u_xlat9 * _ProjectionParams.z;
					    u_xlat9 = max(u_xlat9, 0.0);
					    u_xlat9 = u_xlat9 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat9 = clamp(u_xlat9, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat9) * u_xlat0.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendMul" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendMul" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec3 u_xlat4;
					float u_xlat13;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat4.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat1 = texture(_CameraDepthTexture, u_xlat4.xy);
					    u_xlat4.x = _ZBufferParams.z * u_xlat1.x + _ZBufferParams.w;
					    u_xlat4.x = float(1.0) / u_xlat4.x;
					    u_xlat4.x = u_xlat4.x + (-vs_TEXCOORD3.z);
					    u_xlat4.x = u_xlat4.x * _InvFade;
					    u_xlat4.x = clamp(u_xlat4.x, 0.0, 1.0);
					    u_xlat1.w = u_xlat4.x * vs_COLOR0.w;
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat3 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2 = u_xlat2 + (-u_xlat3);
					    u_xlat2 = vec4(vs_TEXCOORD1) * u_xlat2 + u_xlat3;
					    u_xlat2 = u_xlat2 + u_xlat2;
					    u_xlat2 = u_xlat2 * _TintColor;
					    u_xlat1.xyz = vs_COLOR0.xyz;
					    u_xlat1 = u_xlat1 * u_xlat2;
					    u_xlat13 = u_xlat1.w;
					    u_xlat13 = clamp(u_xlat13, 0.0, 1.0);
					    u_xlat1.w = u_xlat13 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat4.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat4.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec3 u_xlat4;
					float u_xlat13;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat4.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat1 = texture(_CameraDepthTexture, u_xlat4.xy);
					    u_xlat4.x = _ZBufferParams.z * u_xlat1.x + _ZBufferParams.w;
					    u_xlat4.x = float(1.0) / u_xlat4.x;
					    u_xlat4.x = u_xlat4.x + (-vs_TEXCOORD3.z);
					    u_xlat4.x = u_xlat4.x * _InvFade;
					    u_xlat4.x = clamp(u_xlat4.x, 0.0, 1.0);
					    u_xlat1.w = u_xlat4.x * vs_COLOR0.w;
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat3 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2 = u_xlat2 + (-u_xlat3);
					    u_xlat2 = vec4(vs_TEXCOORD1) * u_xlat2 + u_xlat3;
					    u_xlat2 = u_xlat2 + u_xlat2;
					    u_xlat2 = u_xlat2 * _TintColor;
					    u_xlat1.xyz = vs_COLOR0.xyz;
					    u_xlat1 = u_xlat1 * u_xlat2;
					    u_xlat13 = u_xlat1.w;
					    u_xlat13 = clamp(u_xlat13, 0.0, 1.0);
					    u_xlat1.w = u_xlat13 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat4.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat4.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendMul" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendMul" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec3 u_xlat4;
					float u_xlat13;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat4.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat1 = texture(_CameraDepthTexture, u_xlat4.xy);
					    u_xlat4.x = _ZBufferParams.z * u_xlat1.x + _ZBufferParams.w;
					    u_xlat4.x = float(1.0) / u_xlat4.x;
					    u_xlat4.x = u_xlat4.x + (-vs_TEXCOORD3.z);
					    u_xlat4.x = u_xlat4.x * _InvFade;
					    u_xlat4.x = clamp(u_xlat4.x, 0.0, 1.0);
					    u_xlat1.w = u_xlat4.x * vs_COLOR0.w;
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat3 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2 = u_xlat2 + (-u_xlat3);
					    u_xlat2 = vec4(vs_TEXCOORD1) * u_xlat2 + u_xlat3;
					    u_xlat2 = u_xlat2 + u_xlat2;
					    u_xlat2 = u_xlat2 * _TintColor;
					    u_xlat1.xyz = vs_COLOR0.xyz;
					    u_xlat1 = u_xlat1 * u_xlat2;
					    u_xlat13 = u_xlat1.w;
					    u_xlat13 = clamp(u_xlat13, 0.0, 1.0);
					    u_xlat1.w = u_xlat13 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat4.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat4.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec3 u_xlat4;
					float u_xlat13;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat4.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat1 = texture(_CameraDepthTexture, u_xlat4.xy);
					    u_xlat4.x = _ZBufferParams.z * u_xlat1.x + _ZBufferParams.w;
					    u_xlat4.x = float(1.0) / u_xlat4.x;
					    u_xlat4.x = u_xlat4.x + (-vs_TEXCOORD3.z);
					    u_xlat4.x = u_xlat4.x * _InvFade;
					    u_xlat4.x = clamp(u_xlat4.x, 0.0, 1.0);
					    u_xlat1.w = u_xlat4.x * vs_COLOR0.w;
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat3 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2 = u_xlat2 + (-u_xlat3);
					    u_xlat2 = vec4(vs_TEXCOORD1) * u_xlat2 + u_xlat3;
					    u_xlat2 = u_xlat2 + u_xlat2;
					    u_xlat2 = u_xlat2 * _TintColor;
					    u_xlat1.xyz = vs_COLOR0.xyz;
					    u_xlat1 = u_xlat1 * u_xlat2;
					    u_xlat13 = u_xlat1.w;
					    u_xlat13 = clamp(u_xlat13, 0.0, 1.0);
					    u_xlat1.w = u_xlat13 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat4.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat4.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendMul" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[7];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					float u_xlat9;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat9 = u_xlat0.w;
					    u_xlat9 = clamp(u_xlat9, 0.0, 1.0);
					    u_xlat0.w = u_xlat9 * vs_TEXCOORD4;
					    u_xlat1 = u_xlat0 + vec4(-1.0, -1.0, -1.0, -1.0);
					    SV_Target0 = u_xlat0.wwww * u_xlat1 + vec4(1.0, 1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[6];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					float u_xlat9;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat9 = u_xlat0.w;
					    u_xlat9 = clamp(u_xlat9, 0.0, 1.0);
					    u_xlat0.w = u_xlat9 * vs_TEXCOORD4;
					    u_xlat1 = u_xlat0 + vec4(-1.0, -1.0, -1.0, -1.0);
					    SV_Target0 = u_xlat0.wwww * u_xlat1 + vec4(1.0, 1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendMul" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[7];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					float u_xlat9;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat9 = u_xlat0.w;
					    u_xlat9 = clamp(u_xlat9, 0.0, 1.0);
					    u_xlat0.w = u_xlat9 * vs_TEXCOORD4;
					    u_xlat1 = u_xlat0 + vec4(-1.0, -1.0, -1.0, -1.0);
					    SV_Target0 = u_xlat0.wwww * u_xlat1 + vec4(1.0, 1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[6];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					float u_xlat9;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat9 = u_xlat0.w;
					    u_xlat9 = clamp(u_xlat9, 0.0, 1.0);
					    u_xlat0.w = u_xlat9 * vs_TEXCOORD4;
					    u_xlat1 = u_xlat0 + vec4(-1.0, -1.0, -1.0, -1.0);
					    SV_Target0 = u_xlat0.wwww * u_xlat1 + vec4(1.0, 1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendMul" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					float u_xlat9;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat9 = u_xlat0.w;
					    u_xlat9 = clamp(u_xlat9, 0.0, 1.0);
					    u_xlat0.w = u_xlat9 * vs_TEXCOORD4;
					    u_xlat1 = u_xlat0 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat0.xyz = u_xlat0.www * u_xlat1.xyz;
					    SV_Target0.w = u_xlat0.w * u_xlat1.w + 1.0;
					    u_xlat9 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat9 = (-u_xlat9) + 1.0;
					    u_xlat9 = u_xlat9 * _ProjectionParams.z;
					    u_xlat9 = max(u_xlat9, 0.0);
					    u_xlat9 = u_xlat9 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat9 = clamp(u_xlat9, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat9) * u_xlat0.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					float u_xlat9;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat9 = u_xlat0.w;
					    u_xlat9 = clamp(u_xlat9, 0.0, 1.0);
					    u_xlat0.w = u_xlat9 * vs_TEXCOORD4;
					    u_xlat1 = u_xlat0 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat0.xyz = u_xlat0.www * u_xlat1.xyz;
					    SV_Target0.w = u_xlat0.w * u_xlat1.w + 1.0;
					    u_xlat9 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat9 = (-u_xlat9) + 1.0;
					    u_xlat9 = u_xlat9 * _ProjectionParams.z;
					    u_xlat9 = max(u_xlat9, 0.0);
					    u_xlat9 = u_xlat9 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat9 = clamp(u_xlat9, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat9) * u_xlat0.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendMul" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					float u_xlat9;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat9 = u_xlat0.w;
					    u_xlat9 = clamp(u_xlat9, 0.0, 1.0);
					    u_xlat0.w = u_xlat9 * vs_TEXCOORD4;
					    u_xlat1 = u_xlat0 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat0.xyz = u_xlat0.www * u_xlat1.xyz;
					    SV_Target0.w = u_xlat0.w * u_xlat1.w + 1.0;
					    u_xlat9 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat9 = (-u_xlat9) + 1.0;
					    u_xlat9 = u_xlat9 * _ProjectionParams.z;
					    u_xlat9 = max(u_xlat9, 0.0);
					    u_xlat9 = u_xlat9 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat9 = clamp(u_xlat9, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat9) * u_xlat0.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					float u_xlat9;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat9 = u_xlat0.w;
					    u_xlat9 = clamp(u_xlat9, 0.0, 1.0);
					    u_xlat0.w = u_xlat9 * vs_TEXCOORD4;
					    u_xlat1 = u_xlat0 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat0.xyz = u_xlat0.www * u_xlat1.xyz;
					    SV_Target0.w = u_xlat0.w * u_xlat1.w + 1.0;
					    u_xlat9 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat9 = (-u_xlat9) + 1.0;
					    u_xlat9 = u_xlat9 * _ProjectionParams.z;
					    u_xlat9 = max(u_xlat9, 0.0);
					    u_xlat9 = u_xlat9 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat9 = clamp(u_xlat9, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat9) * u_xlat0.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendMul" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec3 u_xlat4;
					float u_xlat13;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat4.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat1 = texture(_CameraDepthTexture, u_xlat4.xy);
					    u_xlat4.x = _ZBufferParams.z * u_xlat1.x + _ZBufferParams.w;
					    u_xlat4.x = float(1.0) / u_xlat4.x;
					    u_xlat4.x = u_xlat4.x + (-vs_TEXCOORD3.z);
					    u_xlat4.x = u_xlat4.x * _InvFade;
					    u_xlat4.x = clamp(u_xlat4.x, 0.0, 1.0);
					    u_xlat1.w = u_xlat4.x * vs_COLOR0.w;
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat3 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2 = u_xlat2 + (-u_xlat3);
					    u_xlat2 = vec4(vs_TEXCOORD1) * u_xlat2 + u_xlat3;
					    u_xlat2 = u_xlat2 + u_xlat2;
					    u_xlat2 = u_xlat2 * _TintColor;
					    u_xlat1.xyz = vs_COLOR0.xyz;
					    u_xlat1 = u_xlat1 * u_xlat2;
					    u_xlat13 = u_xlat1.w;
					    u_xlat13 = clamp(u_xlat13, 0.0, 1.0);
					    u_xlat1.w = u_xlat13 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat4.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat4.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec3 u_xlat4;
					float u_xlat13;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat4.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat1 = texture(_CameraDepthTexture, u_xlat4.xy);
					    u_xlat4.x = _ZBufferParams.z * u_xlat1.x + _ZBufferParams.w;
					    u_xlat4.x = float(1.0) / u_xlat4.x;
					    u_xlat4.x = u_xlat4.x + (-vs_TEXCOORD3.z);
					    u_xlat4.x = u_xlat4.x * _InvFade;
					    u_xlat4.x = clamp(u_xlat4.x, 0.0, 1.0);
					    u_xlat1.w = u_xlat4.x * vs_COLOR0.w;
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat3 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2 = u_xlat2 + (-u_xlat3);
					    u_xlat2 = vec4(vs_TEXCOORD1) * u_xlat2 + u_xlat3;
					    u_xlat2 = u_xlat2 + u_xlat2;
					    u_xlat2 = u_xlat2 * _TintColor;
					    u_xlat1.xyz = vs_COLOR0.xyz;
					    u_xlat1 = u_xlat1 * u_xlat2;
					    u_xlat13 = u_xlat1.w;
					    u_xlat13 = clamp(u_xlat13, 0.0, 1.0);
					    u_xlat1.w = u_xlat13 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat4.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat4.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendMul" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec3 u_xlat4;
					float u_xlat13;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat4.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat1 = texture(_CameraDepthTexture, u_xlat4.xy);
					    u_xlat4.x = _ZBufferParams.z * u_xlat1.x + _ZBufferParams.w;
					    u_xlat4.x = float(1.0) / u_xlat4.x;
					    u_xlat4.x = u_xlat4.x + (-vs_TEXCOORD3.z);
					    u_xlat4.x = u_xlat4.x * _InvFade;
					    u_xlat4.x = clamp(u_xlat4.x, 0.0, 1.0);
					    u_xlat1.w = u_xlat4.x * vs_COLOR0.w;
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat3 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2 = u_xlat2 + (-u_xlat3);
					    u_xlat2 = vec4(vs_TEXCOORD1) * u_xlat2 + u_xlat3;
					    u_xlat2 = u_xlat2 + u_xlat2;
					    u_xlat2 = u_xlat2 * _TintColor;
					    u_xlat1.xyz = vs_COLOR0.xyz;
					    u_xlat1 = u_xlat1 * u_xlat2;
					    u_xlat13 = u_xlat1.w;
					    u_xlat13 = clamp(u_xlat13, 0.0, 1.0);
					    u_xlat1.w = u_xlat13 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat4.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat4.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec3 u_xlat4;
					float u_xlat13;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat4.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat1 = texture(_CameraDepthTexture, u_xlat4.xy);
					    u_xlat4.x = _ZBufferParams.z * u_xlat1.x + _ZBufferParams.w;
					    u_xlat4.x = float(1.0) / u_xlat4.x;
					    u_xlat4.x = u_xlat4.x + (-vs_TEXCOORD3.z);
					    u_xlat4.x = u_xlat4.x * _InvFade;
					    u_xlat4.x = clamp(u_xlat4.x, 0.0, 1.0);
					    u_xlat1.w = u_xlat4.x * vs_COLOR0.w;
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat3 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2 = u_xlat2 + (-u_xlat3);
					    u_xlat2 = vec4(vs_TEXCOORD1) * u_xlat2 + u_xlat3;
					    u_xlat2 = u_xlat2 + u_xlat2;
					    u_xlat2 = u_xlat2 * _TintColor;
					    u_xlat1.xyz = vs_COLOR0.xyz;
					    u_xlat1 = u_xlat1 * u_xlat2;
					    u_xlat13 = u_xlat1.w;
					    u_xlat13 = clamp(u_xlat13, 0.0, 1.0);
					    u_xlat1.w = u_xlat13 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat4.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat4.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendMul" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec3 u_xlat4;
					float u_xlat13;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat4.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat1 = texture(_CameraDepthTexture, u_xlat4.xy);
					    u_xlat4.x = _ZBufferParams.z * u_xlat1.x + _ZBufferParams.w;
					    u_xlat4.x = float(1.0) / u_xlat4.x;
					    u_xlat4.x = u_xlat4.x + (-vs_TEXCOORD3.z);
					    u_xlat4.x = u_xlat4.x * _InvFade;
					    u_xlat4.x = clamp(u_xlat4.x, 0.0, 1.0);
					    u_xlat1.w = u_xlat4.x * vs_COLOR0.w;
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat3 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2 = u_xlat2 + (-u_xlat3);
					    u_xlat2 = vec4(vs_TEXCOORD1) * u_xlat2 + u_xlat3;
					    u_xlat2 = u_xlat2 + u_xlat2;
					    u_xlat2 = u_xlat2 * _TintColor;
					    u_xlat1.xyz = vs_COLOR0.xyz;
					    u_xlat1 = u_xlat1 * u_xlat2;
					    u_xlat13 = u_xlat1.w;
					    u_xlat13 = clamp(u_xlat13, 0.0, 1.0);
					    u_xlat1.w = u_xlat13 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat4.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat4.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec3 u_xlat4;
					float u_xlat13;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat4.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat1 = texture(_CameraDepthTexture, u_xlat4.xy);
					    u_xlat4.x = _ZBufferParams.z * u_xlat1.x + _ZBufferParams.w;
					    u_xlat4.x = float(1.0) / u_xlat4.x;
					    u_xlat4.x = u_xlat4.x + (-vs_TEXCOORD3.z);
					    u_xlat4.x = u_xlat4.x * _InvFade;
					    u_xlat4.x = clamp(u_xlat4.x, 0.0, 1.0);
					    u_xlat1.w = u_xlat4.x * vs_COLOR0.w;
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat3 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2 = u_xlat2 + (-u_xlat3);
					    u_xlat2 = vec4(vs_TEXCOORD1) * u_xlat2 + u_xlat3;
					    u_xlat2 = u_xlat2 + u_xlat2;
					    u_xlat2 = u_xlat2 * _TintColor;
					    u_xlat1.xyz = vs_COLOR0.xyz;
					    u_xlat1 = u_xlat1 * u_xlat2;
					    u_xlat13 = u_xlat1.w;
					    u_xlat13 = clamp(u_xlat13, 0.0, 1.0);
					    u_xlat1.w = u_xlat13 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat4.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat4.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendMul" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec3 u_xlat4;
					float u_xlat13;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat4.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat1 = texture(_CameraDepthTexture, u_xlat4.xy);
					    u_xlat4.x = _ZBufferParams.z * u_xlat1.x + _ZBufferParams.w;
					    u_xlat4.x = float(1.0) / u_xlat4.x;
					    u_xlat4.x = u_xlat4.x + (-vs_TEXCOORD3.z);
					    u_xlat4.x = u_xlat4.x * _InvFade;
					    u_xlat4.x = clamp(u_xlat4.x, 0.0, 1.0);
					    u_xlat1.w = u_xlat4.x * vs_COLOR0.w;
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat3 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2 = u_xlat2 + (-u_xlat3);
					    u_xlat2 = vec4(vs_TEXCOORD1) * u_xlat2 + u_xlat3;
					    u_xlat2 = u_xlat2 + u_xlat2;
					    u_xlat2 = u_xlat2 * _TintColor;
					    u_xlat1.xyz = vs_COLOR0.xyz;
					    u_xlat1 = u_xlat1 * u_xlat2;
					    u_xlat13 = u_xlat1.w;
					    u_xlat13 = clamp(u_xlat13, 0.0, 1.0);
					    u_xlat1.w = u_xlat13 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat4.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat4.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec3 u_xlat4;
					float u_xlat13;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat4.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat1 = texture(_CameraDepthTexture, u_xlat4.xy);
					    u_xlat4.x = _ZBufferParams.z * u_xlat1.x + _ZBufferParams.w;
					    u_xlat4.x = float(1.0) / u_xlat4.x;
					    u_xlat4.x = u_xlat4.x + (-vs_TEXCOORD3.z);
					    u_xlat4.x = u_xlat4.x * _InvFade;
					    u_xlat4.x = clamp(u_xlat4.x, 0.0, 1.0);
					    u_xlat1.w = u_xlat4.x * vs_COLOR0.w;
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat3 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2 = u_xlat2 + (-u_xlat3);
					    u_xlat2 = vec4(vs_TEXCOORD1) * u_xlat2 + u_xlat3;
					    u_xlat2 = u_xlat2 + u_xlat2;
					    u_xlat2 = u_xlat2 * _TintColor;
					    u_xlat1.xyz = vs_COLOR0.xyz;
					    u_xlat1 = u_xlat1 * u_xlat2;
					    u_xlat13 = u_xlat1.w;
					    u_xlat13 = clamp(u_xlat13, 0.0, 1.0);
					    u_xlat1.w = u_xlat13 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat4.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat4.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendMul" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					bool u_xlatb1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1.x = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat0.w = u_xlat0.w * u_xlat1.x;
					    u_xlat0 = u_xlat0 * vs_COLOR0;
					    u_xlat0.w = u_xlat0.w;
					    u_xlat0.w = clamp(u_xlat0.w, 0.0, 1.0);
					    u_xlat1 = u_xlat0 + vec4(-1.0, -1.0, -1.0, -1.0);
					    SV_Target0 = u_xlat0.wwww * u_xlat1 + vec4(1.0, 1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					bool u_xlatb1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1.x = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat0.w = u_xlat0.w * u_xlat1.x;
					    u_xlat0 = u_xlat0 * vs_COLOR0;
					    u_xlat0.w = u_xlat0.w;
					    u_xlat0.w = clamp(u_xlat0.w, 0.0, 1.0);
					    u_xlat1 = u_xlat0 + vec4(-1.0, -1.0, -1.0, -1.0);
					    SV_Target0 = u_xlat0.wwww * u_xlat1 + vec4(1.0, 1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendMul" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[7];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					bool u_xlatb2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2.x = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2.x;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat0.w = u_xlat0.w;
					    u_xlat0.w = clamp(u_xlat0.w, 0.0, 1.0);
					    u_xlat1 = u_xlat0 + vec4(-1.0, -1.0, -1.0, -1.0);
					    SV_Target0 = u_xlat0.wwww * u_xlat1 + vec4(1.0, 1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[6];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					bool u_xlatb2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2.x = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2.x;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat0.w = u_xlat0.w;
					    u_xlat0.w = clamp(u_xlat0.w, 0.0, 1.0);
					    u_xlat1 = u_xlat0 + vec4(-1.0, -1.0, -1.0, -1.0);
					    SV_Target0 = u_xlat0.wwww * u_xlat1 + vec4(1.0, 1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendMul" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3.x;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3.x;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendMul" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					bool u_xlatb2;
					float u_xlat9;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2.x = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2.x;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat0.w = u_xlat0.w;
					    u_xlat0.w = clamp(u_xlat0.w, 0.0, 1.0);
					    u_xlat1 = u_xlat0 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat0.xyz = u_xlat0.www * u_xlat1.xyz;
					    SV_Target0.w = u_xlat0.w * u_xlat1.w + 1.0;
					    u_xlat9 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat9 = (-u_xlat9) + 1.0;
					    u_xlat9 = u_xlat9 * _ProjectionParams.z;
					    u_xlat9 = max(u_xlat9, 0.0);
					    u_xlat9 = u_xlat9 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat9 = clamp(u_xlat9, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat9) * u_xlat0.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					bool u_xlatb2;
					float u_xlat9;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2.x = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2.x;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat0.w = u_xlat0.w;
					    u_xlat0.w = clamp(u_xlat0.w, 0.0, 1.0);
					    u_xlat1 = u_xlat0 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat0.xyz = u_xlat0.www * u_xlat1.xyz;
					    SV_Target0.w = u_xlat0.w * u_xlat1.w + 1.0;
					    u_xlat9 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat9 = (-u_xlat9) + 1.0;
					    u_xlat9 = u_xlat9 * _ProjectionParams.z;
					    u_xlat9 = max(u_xlat9, 0.0);
					    u_xlat9 = u_xlat9 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat9 = clamp(u_xlat9, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat9) * u_xlat0.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendMul" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3.x;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3.x;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendMul" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					bool u_xlatb2;
					float u_xlat9;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2.x = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2.x;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat0.w = u_xlat0.w;
					    u_xlat0.w = clamp(u_xlat0.w, 0.0, 1.0);
					    u_xlat1 = u_xlat0 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat0.xyz = u_xlat0.www * u_xlat1.xyz;
					    SV_Target0.w = u_xlat0.w * u_xlat1.w + 1.0;
					    u_xlat9 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat9 = (-u_xlat9) + 1.0;
					    u_xlat9 = u_xlat9 * _ProjectionParams.z;
					    u_xlat9 = max(u_xlat9, 0.0);
					    u_xlat9 = u_xlat9 * unity_FogParams.y;
					    u_xlat9 = exp2((-u_xlat9));
					    u_xlat9 = min(u_xlat9, 1.0);
					    SV_Target0.xyz = vec3(u_xlat9) * u_xlat0.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					bool u_xlatb2;
					float u_xlat9;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2.x = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2.x;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat0.w = u_xlat0.w;
					    u_xlat0.w = clamp(u_xlat0.w, 0.0, 1.0);
					    u_xlat1 = u_xlat0 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat0.xyz = u_xlat0.www * u_xlat1.xyz;
					    SV_Target0.w = u_xlat0.w * u_xlat1.w + 1.0;
					    u_xlat9 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat9 = (-u_xlat9) + 1.0;
					    u_xlat9 = u_xlat9 * _ProjectionParams.z;
					    u_xlat9 = max(u_xlat9, 0.0);
					    u_xlat9 = u_xlat9 * unity_FogParams.y;
					    u_xlat9 = exp2((-u_xlat9));
					    u_xlat9 = min(u_xlat9, 1.0);
					    SV_Target0.xyz = vec3(u_xlat9) * u_xlat0.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendMul" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3.x;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3.x;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendMul" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					bool u_xlatb2;
					float u_xlat9;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2.x = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2.x;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat0.w = u_xlat0.w;
					    u_xlat0.w = clamp(u_xlat0.w, 0.0, 1.0);
					    u_xlat1 = u_xlat0 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat0.xyz = u_xlat0.www * u_xlat1.xyz;
					    SV_Target0.w = u_xlat0.w * u_xlat1.w + 1.0;
					    u_xlat9 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat9 = (-u_xlat9) + 1.0;
					    u_xlat9 = u_xlat9 * _ProjectionParams.z;
					    u_xlat9 = max(u_xlat9, 0.0);
					    u_xlat9 = u_xlat9 * unity_FogParams.x;
					    u_xlat9 = u_xlat9 * (-u_xlat9);
					    u_xlat9 = exp2(u_xlat9);
					    SV_Target0.xyz = vec3(u_xlat9) * u_xlat0.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					bool u_xlatb2;
					float u_xlat9;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2.x = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2.x;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat0.w = u_xlat0.w;
					    u_xlat0.w = clamp(u_xlat0.w, 0.0, 1.0);
					    u_xlat1 = u_xlat0 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat0.xyz = u_xlat0.www * u_xlat1.xyz;
					    SV_Target0.w = u_xlat0.w * u_xlat1.w + 1.0;
					    u_xlat9 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat9 = (-u_xlat9) + 1.0;
					    u_xlat9 = u_xlat9 * _ProjectionParams.z;
					    u_xlat9 = max(u_xlat9, 0.0);
					    u_xlat9 = u_xlat9 * unity_FogParams.x;
					    u_xlat9 = u_xlat9 * (-u_xlat9);
					    u_xlat9 = exp2(u_xlat9);
					    SV_Target0.xyz = vec3(u_xlat9) * u_xlat0.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendMul" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[7];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					bool u_xlatb2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2.x = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2.x;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat0.w = u_xlat0.w;
					    u_xlat0.w = clamp(u_xlat0.w, 0.0, 1.0);
					    u_xlat1 = u_xlat0 + vec4(-1.0, -1.0, -1.0, -1.0);
					    SV_Target0 = u_xlat0.wwww * u_xlat1 + vec4(1.0, 1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[6];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					bool u_xlatb2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2.x = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2.x;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat0.w = u_xlat0.w;
					    u_xlat0.w = clamp(u_xlat0.w, 0.0, 1.0);
					    u_xlat1 = u_xlat0 + vec4(-1.0, -1.0, -1.0, -1.0);
					    SV_Target0 = u_xlat0.wwww * u_xlat1 + vec4(1.0, 1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendMul" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[7];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					bool u_xlatb2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2.x = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2.x;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat0.w = u_xlat0.w;
					    u_xlat0.w = clamp(u_xlat0.w, 0.0, 1.0);
					    u_xlat1 = u_xlat0 + vec4(-1.0, -1.0, -1.0, -1.0);
					    SV_Target0 = u_xlat0.wwww * u_xlat1 + vec4(1.0, 1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[6];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					bool u_xlatb2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2.x = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2.x;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat0.w = u_xlat0.w;
					    u_xlat0.w = clamp(u_xlat0.w, 0.0, 1.0);
					    u_xlat1 = u_xlat0 + vec4(-1.0, -1.0, -1.0, -1.0);
					    SV_Target0 = u_xlat0.wwww * u_xlat1 + vec4(1.0, 1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendMul" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					bool u_xlatb2;
					float u_xlat9;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2.x = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2.x;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat0.w = u_xlat0.w;
					    u_xlat0.w = clamp(u_xlat0.w, 0.0, 1.0);
					    u_xlat1 = u_xlat0 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat0.xyz = u_xlat0.www * u_xlat1.xyz;
					    SV_Target0.w = u_xlat0.w * u_xlat1.w + 1.0;
					    u_xlat9 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat9 = (-u_xlat9) + 1.0;
					    u_xlat9 = u_xlat9 * _ProjectionParams.z;
					    u_xlat9 = max(u_xlat9, 0.0);
					    u_xlat9 = u_xlat9 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat9 = clamp(u_xlat9, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat9) * u_xlat0.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					bool u_xlatb2;
					float u_xlat9;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2.x = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2.x;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat0.w = u_xlat0.w;
					    u_xlat0.w = clamp(u_xlat0.w, 0.0, 1.0);
					    u_xlat1 = u_xlat0 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat0.xyz = u_xlat0.www * u_xlat1.xyz;
					    SV_Target0.w = u_xlat0.w * u_xlat1.w + 1.0;
					    u_xlat9 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat9 = (-u_xlat9) + 1.0;
					    u_xlat9 = u_xlat9 * _ProjectionParams.z;
					    u_xlat9 = max(u_xlat9, 0.0);
					    u_xlat9 = u_xlat9 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat9 = clamp(u_xlat9, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat9) * u_xlat0.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendMul" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					bool u_xlatb2;
					float u_xlat9;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2.x = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2.x;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat0.w = u_xlat0.w;
					    u_xlat0.w = clamp(u_xlat0.w, 0.0, 1.0);
					    u_xlat1 = u_xlat0 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat0.xyz = u_xlat0.www * u_xlat1.xyz;
					    SV_Target0.w = u_xlat0.w * u_xlat1.w + 1.0;
					    u_xlat9 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat9 = (-u_xlat9) + 1.0;
					    u_xlat9 = u_xlat9 * _ProjectionParams.z;
					    u_xlat9 = max(u_xlat9, 0.0);
					    u_xlat9 = u_xlat9 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat9 = clamp(u_xlat9, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat9) * u_xlat0.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					bool u_xlatb2;
					float u_xlat9;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2.x = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2.x;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat0.w = u_xlat0.w;
					    u_xlat0.w = clamp(u_xlat0.w, 0.0, 1.0);
					    u_xlat1 = u_xlat0 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat0.xyz = u_xlat0.www * u_xlat1.xyz;
					    SV_Target0.w = u_xlat0.w * u_xlat1.w + 1.0;
					    u_xlat9 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat9 = (-u_xlat9) + 1.0;
					    u_xlat9 = u_xlat9 * _ProjectionParams.z;
					    u_xlat9 = max(u_xlat9, 0.0);
					    u_xlat9 = u_xlat9 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat9 = clamp(u_xlat9, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat9) * u_xlat0.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendMul" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					bool u_xlatb2;
					float u_xlat9;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2.x = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2.x;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat0.w = u_xlat0.w;
					    u_xlat0.w = clamp(u_xlat0.w, 0.0, 1.0);
					    u_xlat1 = u_xlat0 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat0.xyz = u_xlat0.www * u_xlat1.xyz;
					    SV_Target0.w = u_xlat0.w * u_xlat1.w + 1.0;
					    u_xlat9 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat9 = (-u_xlat9) + 1.0;
					    u_xlat9 = u_xlat9 * _ProjectionParams.z;
					    u_xlat9 = max(u_xlat9, 0.0);
					    u_xlat9 = u_xlat9 * unity_FogParams.y;
					    u_xlat9 = exp2((-u_xlat9));
					    u_xlat9 = min(u_xlat9, 1.0);
					    SV_Target0.xyz = vec3(u_xlat9) * u_xlat0.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					bool u_xlatb2;
					float u_xlat9;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2.x = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2.x;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat0.w = u_xlat0.w;
					    u_xlat0.w = clamp(u_xlat0.w, 0.0, 1.0);
					    u_xlat1 = u_xlat0 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat0.xyz = u_xlat0.www * u_xlat1.xyz;
					    SV_Target0.w = u_xlat0.w * u_xlat1.w + 1.0;
					    u_xlat9 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat9 = (-u_xlat9) + 1.0;
					    u_xlat9 = u_xlat9 * _ProjectionParams.z;
					    u_xlat9 = max(u_xlat9, 0.0);
					    u_xlat9 = u_xlat9 * unity_FogParams.y;
					    u_xlat9 = exp2((-u_xlat9));
					    u_xlat9 = min(u_xlat9, 1.0);
					    SV_Target0.xyz = vec3(u_xlat9) * u_xlat0.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendMul" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					bool u_xlatb2;
					float u_xlat9;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2.x = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2.x;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat0.w = u_xlat0.w;
					    u_xlat0.w = clamp(u_xlat0.w, 0.0, 1.0);
					    u_xlat1 = u_xlat0 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat0.xyz = u_xlat0.www * u_xlat1.xyz;
					    SV_Target0.w = u_xlat0.w * u_xlat1.w + 1.0;
					    u_xlat9 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat9 = (-u_xlat9) + 1.0;
					    u_xlat9 = u_xlat9 * _ProjectionParams.z;
					    u_xlat9 = max(u_xlat9, 0.0);
					    u_xlat9 = u_xlat9 * unity_FogParams.y;
					    u_xlat9 = exp2((-u_xlat9));
					    u_xlat9 = min(u_xlat9, 1.0);
					    SV_Target0.xyz = vec3(u_xlat9) * u_xlat0.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					bool u_xlatb2;
					float u_xlat9;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2.x = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2.x;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat0.w = u_xlat0.w;
					    u_xlat0.w = clamp(u_xlat0.w, 0.0, 1.0);
					    u_xlat1 = u_xlat0 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat0.xyz = u_xlat0.www * u_xlat1.xyz;
					    SV_Target0.w = u_xlat0.w * u_xlat1.w + 1.0;
					    u_xlat9 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat9 = (-u_xlat9) + 1.0;
					    u_xlat9 = u_xlat9 * _ProjectionParams.z;
					    u_xlat9 = max(u_xlat9, 0.0);
					    u_xlat9 = u_xlat9 * unity_FogParams.y;
					    u_xlat9 = exp2((-u_xlat9));
					    u_xlat9 = min(u_xlat9, 1.0);
					    SV_Target0.xyz = vec3(u_xlat9) * u_xlat0.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendMul" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					bool u_xlatb2;
					float u_xlat9;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2.x = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2.x;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat0.w = u_xlat0.w;
					    u_xlat0.w = clamp(u_xlat0.w, 0.0, 1.0);
					    u_xlat1 = u_xlat0 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat0.xyz = u_xlat0.www * u_xlat1.xyz;
					    SV_Target0.w = u_xlat0.w * u_xlat1.w + 1.0;
					    u_xlat9 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat9 = (-u_xlat9) + 1.0;
					    u_xlat9 = u_xlat9 * _ProjectionParams.z;
					    u_xlat9 = max(u_xlat9, 0.0);
					    u_xlat9 = u_xlat9 * unity_FogParams.x;
					    u_xlat9 = u_xlat9 * (-u_xlat9);
					    u_xlat9 = exp2(u_xlat9);
					    SV_Target0.xyz = vec3(u_xlat9) * u_xlat0.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					bool u_xlatb2;
					float u_xlat9;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2.x = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2.x;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat0.w = u_xlat0.w;
					    u_xlat0.w = clamp(u_xlat0.w, 0.0, 1.0);
					    u_xlat1 = u_xlat0 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat0.xyz = u_xlat0.www * u_xlat1.xyz;
					    SV_Target0.w = u_xlat0.w * u_xlat1.w + 1.0;
					    u_xlat9 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat9 = (-u_xlat9) + 1.0;
					    u_xlat9 = u_xlat9 * _ProjectionParams.z;
					    u_xlat9 = max(u_xlat9, 0.0);
					    u_xlat9 = u_xlat9 * unity_FogParams.x;
					    u_xlat9 = u_xlat9 * (-u_xlat9);
					    u_xlat9 = exp2(u_xlat9);
					    SV_Target0.xyz = vec3(u_xlat9) * u_xlat0.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendMul" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					bool u_xlatb2;
					float u_xlat9;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2.x = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2.x;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat0.w = u_xlat0.w;
					    u_xlat0.w = clamp(u_xlat0.w, 0.0, 1.0);
					    u_xlat1 = u_xlat0 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat0.xyz = u_xlat0.www * u_xlat1.xyz;
					    SV_Target0.w = u_xlat0.w * u_xlat1.w + 1.0;
					    u_xlat9 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat9 = (-u_xlat9) + 1.0;
					    u_xlat9 = u_xlat9 * _ProjectionParams.z;
					    u_xlat9 = max(u_xlat9, 0.0);
					    u_xlat9 = u_xlat9 * unity_FogParams.x;
					    u_xlat9 = u_xlat9 * (-u_xlat9);
					    u_xlat9 = exp2(u_xlat9);
					    SV_Target0.xyz = vec3(u_xlat9) * u_xlat0.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					bool u_xlatb2;
					float u_xlat9;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2.x = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2.x;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat0.w = u_xlat0.w;
					    u_xlat0.w = clamp(u_xlat0.w, 0.0, 1.0);
					    u_xlat1 = u_xlat0 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat0.xyz = u_xlat0.www * u_xlat1.xyz;
					    SV_Target0.w = u_xlat0.w * u_xlat1.w + 1.0;
					    u_xlat9 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat9 = (-u_xlat9) + 1.0;
					    u_xlat9 = u_xlat9 * _ProjectionParams.z;
					    u_xlat9 = max(u_xlat9, 0.0);
					    u_xlat9 = u_xlat9 * unity_FogParams.x;
					    u_xlat9 = u_xlat9 * (-u_xlat9);
					    u_xlat9 = exp2(u_xlat9);
					    SV_Target0.xyz = vec3(u_xlat9) * u_xlat0.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendMul" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					bool u_xlatb1;
					float u_xlat6;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1.x = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat0.w = u_xlat0.w * u_xlat1.x;
					    u_xlat0 = u_xlat0 * vs_COLOR0;
					    u_xlat6 = u_xlat0.w;
					    u_xlat6 = clamp(u_xlat6, 0.0, 1.0);
					    u_xlat0.w = u_xlat6 * vs_TEXCOORD4;
					    u_xlat1 = u_xlat0 + vec4(-1.0, -1.0, -1.0, -1.0);
					    SV_Target0 = u_xlat0.wwww * u_xlat1 + vec4(1.0, 1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					bool u_xlatb1;
					float u_xlat6;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1.x = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat0.w = u_xlat0.w * u_xlat1.x;
					    u_xlat0 = u_xlat0 * vs_COLOR0;
					    u_xlat6 = u_xlat0.w;
					    u_xlat6 = clamp(u_xlat6, 0.0, 1.0);
					    u_xlat0.w = u_xlat6 * vs_TEXCOORD4;
					    u_xlat1 = u_xlat0 + vec4(-1.0, -1.0, -1.0, -1.0);
					    SV_Target0 = u_xlat0.wwww * u_xlat1 + vec4(1.0, 1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendMul" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[7];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					bool u_xlatb2;
					float u_xlat9;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2.x = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2.x;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat9 = u_xlat0.w;
					    u_xlat9 = clamp(u_xlat9, 0.0, 1.0);
					    u_xlat0.w = u_xlat9 * vs_TEXCOORD4;
					    u_xlat1 = u_xlat0 + vec4(-1.0, -1.0, -1.0, -1.0);
					    SV_Target0 = u_xlat0.wwww * u_xlat1 + vec4(1.0, 1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[6];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					bool u_xlatb2;
					float u_xlat9;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2.x = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2.x;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat9 = u_xlat0.w;
					    u_xlat9 = clamp(u_xlat9, 0.0, 1.0);
					    u_xlat0.w = u_xlat9 * vs_TEXCOORD4;
					    u_xlat1 = u_xlat0 + vec4(-1.0, -1.0, -1.0, -1.0);
					    SV_Target0 = u_xlat0.wwww * u_xlat1 + vec4(1.0, 1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendMul" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3.x;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3.x;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendMul" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					bool u_xlatb2;
					float u_xlat9;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2.x = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2.x;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat9 = u_xlat0.w;
					    u_xlat9 = clamp(u_xlat9, 0.0, 1.0);
					    u_xlat0.w = u_xlat9 * vs_TEXCOORD4;
					    u_xlat1 = u_xlat0 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat0.xyz = u_xlat0.www * u_xlat1.xyz;
					    SV_Target0.w = u_xlat0.w * u_xlat1.w + 1.0;
					    u_xlat9 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat9 = (-u_xlat9) + 1.0;
					    u_xlat9 = u_xlat9 * _ProjectionParams.z;
					    u_xlat9 = max(u_xlat9, 0.0);
					    u_xlat9 = u_xlat9 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat9 = clamp(u_xlat9, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat9) * u_xlat0.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					bool u_xlatb2;
					float u_xlat9;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2.x = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2.x;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat9 = u_xlat0.w;
					    u_xlat9 = clamp(u_xlat9, 0.0, 1.0);
					    u_xlat0.w = u_xlat9 * vs_TEXCOORD4;
					    u_xlat1 = u_xlat0 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat0.xyz = u_xlat0.www * u_xlat1.xyz;
					    SV_Target0.w = u_xlat0.w * u_xlat1.w + 1.0;
					    u_xlat9 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat9 = (-u_xlat9) + 1.0;
					    u_xlat9 = u_xlat9 * _ProjectionParams.z;
					    u_xlat9 = max(u_xlat9, 0.0);
					    u_xlat9 = u_xlat9 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat9 = clamp(u_xlat9, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat9) * u_xlat0.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendMul" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3.x;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3.x;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendMul" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					bool u_xlatb2;
					float u_xlat9;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2.x = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2.x;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat9 = u_xlat0.w;
					    u_xlat9 = clamp(u_xlat9, 0.0, 1.0);
					    u_xlat0.w = u_xlat9 * vs_TEXCOORD4;
					    u_xlat1 = u_xlat0 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat0.xyz = u_xlat0.www * u_xlat1.xyz;
					    SV_Target0.w = u_xlat0.w * u_xlat1.w + 1.0;
					    u_xlat9 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat9 = (-u_xlat9) + 1.0;
					    u_xlat9 = u_xlat9 * _ProjectionParams.z;
					    u_xlat9 = max(u_xlat9, 0.0);
					    u_xlat9 = u_xlat9 * unity_FogParams.y;
					    u_xlat9 = exp2((-u_xlat9));
					    u_xlat9 = min(u_xlat9, 1.0);
					    SV_Target0.xyz = vec3(u_xlat9) * u_xlat0.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					bool u_xlatb2;
					float u_xlat9;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2.x = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2.x;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat9 = u_xlat0.w;
					    u_xlat9 = clamp(u_xlat9, 0.0, 1.0);
					    u_xlat0.w = u_xlat9 * vs_TEXCOORD4;
					    u_xlat1 = u_xlat0 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat0.xyz = u_xlat0.www * u_xlat1.xyz;
					    SV_Target0.w = u_xlat0.w * u_xlat1.w + 1.0;
					    u_xlat9 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat9 = (-u_xlat9) + 1.0;
					    u_xlat9 = u_xlat9 * _ProjectionParams.z;
					    u_xlat9 = max(u_xlat9, 0.0);
					    u_xlat9 = u_xlat9 * unity_FogParams.y;
					    u_xlat9 = exp2((-u_xlat9));
					    u_xlat9 = min(u_xlat9, 1.0);
					    SV_Target0.xyz = vec3(u_xlat9) * u_xlat0.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendMul" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3.x;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3.x;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendMul" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					bool u_xlatb2;
					float u_xlat9;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2.x = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2.x;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat9 = u_xlat0.w;
					    u_xlat9 = clamp(u_xlat9, 0.0, 1.0);
					    u_xlat0.w = u_xlat9 * vs_TEXCOORD4;
					    u_xlat1 = u_xlat0 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat0.xyz = u_xlat0.www * u_xlat1.xyz;
					    SV_Target0.w = u_xlat0.w * u_xlat1.w + 1.0;
					    u_xlat9 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat9 = (-u_xlat9) + 1.0;
					    u_xlat9 = u_xlat9 * _ProjectionParams.z;
					    u_xlat9 = max(u_xlat9, 0.0);
					    u_xlat9 = u_xlat9 * unity_FogParams.x;
					    u_xlat9 = u_xlat9 * (-u_xlat9);
					    u_xlat9 = exp2(u_xlat9);
					    SV_Target0.xyz = vec3(u_xlat9) * u_xlat0.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					bool u_xlatb2;
					float u_xlat9;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2.x = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2.x;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat9 = u_xlat0.w;
					    u_xlat9 = clamp(u_xlat9, 0.0, 1.0);
					    u_xlat0.w = u_xlat9 * vs_TEXCOORD4;
					    u_xlat1 = u_xlat0 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat0.xyz = u_xlat0.www * u_xlat1.xyz;
					    SV_Target0.w = u_xlat0.w * u_xlat1.w + 1.0;
					    u_xlat9 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat9 = (-u_xlat9) + 1.0;
					    u_xlat9 = u_xlat9 * _ProjectionParams.z;
					    u_xlat9 = max(u_xlat9, 0.0);
					    u_xlat9 = u_xlat9 * unity_FogParams.x;
					    u_xlat9 = u_xlat9 * (-u_xlat9);
					    u_xlat9 = exp2(u_xlat9);
					    SV_Target0.xyz = vec3(u_xlat9) * u_xlat0.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendMul" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[7];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					bool u_xlatb2;
					float u_xlat9;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2.x = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2.x;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat9 = u_xlat0.w;
					    u_xlat9 = clamp(u_xlat9, 0.0, 1.0);
					    u_xlat0.w = u_xlat9 * vs_TEXCOORD4;
					    u_xlat1 = u_xlat0 + vec4(-1.0, -1.0, -1.0, -1.0);
					    SV_Target0 = u_xlat0.wwww * u_xlat1 + vec4(1.0, 1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[6];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					bool u_xlatb2;
					float u_xlat9;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2.x = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2.x;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat9 = u_xlat0.w;
					    u_xlat9 = clamp(u_xlat9, 0.0, 1.0);
					    u_xlat0.w = u_xlat9 * vs_TEXCOORD4;
					    u_xlat1 = u_xlat0 + vec4(-1.0, -1.0, -1.0, -1.0);
					    SV_Target0 = u_xlat0.wwww * u_xlat1 + vec4(1.0, 1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendMul" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[7];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					bool u_xlatb2;
					float u_xlat9;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2.x = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2.x;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat9 = u_xlat0.w;
					    u_xlat9 = clamp(u_xlat9, 0.0, 1.0);
					    u_xlat0.w = u_xlat9 * vs_TEXCOORD4;
					    u_xlat1 = u_xlat0 + vec4(-1.0, -1.0, -1.0, -1.0);
					    SV_Target0 = u_xlat0.wwww * u_xlat1 + vec4(1.0, 1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[6];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					bool u_xlatb2;
					float u_xlat9;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2.x = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2.x;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat9 = u_xlat0.w;
					    u_xlat9 = clamp(u_xlat9, 0.0, 1.0);
					    u_xlat0.w = u_xlat9 * vs_TEXCOORD4;
					    u_xlat1 = u_xlat0 + vec4(-1.0, -1.0, -1.0, -1.0);
					    SV_Target0 = u_xlat0.wwww * u_xlat1 + vec4(1.0, 1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendMul" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					bool u_xlatb2;
					float u_xlat9;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2.x = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2.x;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat9 = u_xlat0.w;
					    u_xlat9 = clamp(u_xlat9, 0.0, 1.0);
					    u_xlat0.w = u_xlat9 * vs_TEXCOORD4;
					    u_xlat1 = u_xlat0 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat0.xyz = u_xlat0.www * u_xlat1.xyz;
					    SV_Target0.w = u_xlat0.w * u_xlat1.w + 1.0;
					    u_xlat9 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat9 = (-u_xlat9) + 1.0;
					    u_xlat9 = u_xlat9 * _ProjectionParams.z;
					    u_xlat9 = max(u_xlat9, 0.0);
					    u_xlat9 = u_xlat9 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat9 = clamp(u_xlat9, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat9) * u_xlat0.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					bool u_xlatb2;
					float u_xlat9;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2.x = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2.x;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat9 = u_xlat0.w;
					    u_xlat9 = clamp(u_xlat9, 0.0, 1.0);
					    u_xlat0.w = u_xlat9 * vs_TEXCOORD4;
					    u_xlat1 = u_xlat0 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat0.xyz = u_xlat0.www * u_xlat1.xyz;
					    SV_Target0.w = u_xlat0.w * u_xlat1.w + 1.0;
					    u_xlat9 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat9 = (-u_xlat9) + 1.0;
					    u_xlat9 = u_xlat9 * _ProjectionParams.z;
					    u_xlat9 = max(u_xlat9, 0.0);
					    u_xlat9 = u_xlat9 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat9 = clamp(u_xlat9, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat9) * u_xlat0.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendMul" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					bool u_xlatb2;
					float u_xlat9;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2.x = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2.x;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat9 = u_xlat0.w;
					    u_xlat9 = clamp(u_xlat9, 0.0, 1.0);
					    u_xlat0.w = u_xlat9 * vs_TEXCOORD4;
					    u_xlat1 = u_xlat0 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat0.xyz = u_xlat0.www * u_xlat1.xyz;
					    SV_Target0.w = u_xlat0.w * u_xlat1.w + 1.0;
					    u_xlat9 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat9 = (-u_xlat9) + 1.0;
					    u_xlat9 = u_xlat9 * _ProjectionParams.z;
					    u_xlat9 = max(u_xlat9, 0.0);
					    u_xlat9 = u_xlat9 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat9 = clamp(u_xlat9, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat9) * u_xlat0.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					bool u_xlatb2;
					float u_xlat9;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2.x = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2.x;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat9 = u_xlat0.w;
					    u_xlat9 = clamp(u_xlat9, 0.0, 1.0);
					    u_xlat0.w = u_xlat9 * vs_TEXCOORD4;
					    u_xlat1 = u_xlat0 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat0.xyz = u_xlat0.www * u_xlat1.xyz;
					    SV_Target0.w = u_xlat0.w * u_xlat1.w + 1.0;
					    u_xlat9 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat9 = (-u_xlat9) + 1.0;
					    u_xlat9 = u_xlat9 * _ProjectionParams.z;
					    u_xlat9 = max(u_xlat9, 0.0);
					    u_xlat9 = u_xlat9 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat9 = clamp(u_xlat9, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat9) * u_xlat0.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendMul" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					bool u_xlatb2;
					float u_xlat9;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2.x = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2.x;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat9 = u_xlat0.w;
					    u_xlat9 = clamp(u_xlat9, 0.0, 1.0);
					    u_xlat0.w = u_xlat9 * vs_TEXCOORD4;
					    u_xlat1 = u_xlat0 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat0.xyz = u_xlat0.www * u_xlat1.xyz;
					    SV_Target0.w = u_xlat0.w * u_xlat1.w + 1.0;
					    u_xlat9 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat9 = (-u_xlat9) + 1.0;
					    u_xlat9 = u_xlat9 * _ProjectionParams.z;
					    u_xlat9 = max(u_xlat9, 0.0);
					    u_xlat9 = u_xlat9 * unity_FogParams.y;
					    u_xlat9 = exp2((-u_xlat9));
					    u_xlat9 = min(u_xlat9, 1.0);
					    SV_Target0.xyz = vec3(u_xlat9) * u_xlat0.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					bool u_xlatb2;
					float u_xlat9;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2.x = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2.x;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat9 = u_xlat0.w;
					    u_xlat9 = clamp(u_xlat9, 0.0, 1.0);
					    u_xlat0.w = u_xlat9 * vs_TEXCOORD4;
					    u_xlat1 = u_xlat0 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat0.xyz = u_xlat0.www * u_xlat1.xyz;
					    SV_Target0.w = u_xlat0.w * u_xlat1.w + 1.0;
					    u_xlat9 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat9 = (-u_xlat9) + 1.0;
					    u_xlat9 = u_xlat9 * _ProjectionParams.z;
					    u_xlat9 = max(u_xlat9, 0.0);
					    u_xlat9 = u_xlat9 * unity_FogParams.y;
					    u_xlat9 = exp2((-u_xlat9));
					    u_xlat9 = min(u_xlat9, 1.0);
					    SV_Target0.xyz = vec3(u_xlat9) * u_xlat0.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendMul" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					bool u_xlatb2;
					float u_xlat9;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2.x = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2.x;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat9 = u_xlat0.w;
					    u_xlat9 = clamp(u_xlat9, 0.0, 1.0);
					    u_xlat0.w = u_xlat9 * vs_TEXCOORD4;
					    u_xlat1 = u_xlat0 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat0.xyz = u_xlat0.www * u_xlat1.xyz;
					    SV_Target0.w = u_xlat0.w * u_xlat1.w + 1.0;
					    u_xlat9 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat9 = (-u_xlat9) + 1.0;
					    u_xlat9 = u_xlat9 * _ProjectionParams.z;
					    u_xlat9 = max(u_xlat9, 0.0);
					    u_xlat9 = u_xlat9 * unity_FogParams.y;
					    u_xlat9 = exp2((-u_xlat9));
					    u_xlat9 = min(u_xlat9, 1.0);
					    SV_Target0.xyz = vec3(u_xlat9) * u_xlat0.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					bool u_xlatb2;
					float u_xlat9;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2.x = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2.x;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat9 = u_xlat0.w;
					    u_xlat9 = clamp(u_xlat9, 0.0, 1.0);
					    u_xlat0.w = u_xlat9 * vs_TEXCOORD4;
					    u_xlat1 = u_xlat0 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat0.xyz = u_xlat0.www * u_xlat1.xyz;
					    SV_Target0.w = u_xlat0.w * u_xlat1.w + 1.0;
					    u_xlat9 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat9 = (-u_xlat9) + 1.0;
					    u_xlat9 = u_xlat9 * _ProjectionParams.z;
					    u_xlat9 = max(u_xlat9, 0.0);
					    u_xlat9 = u_xlat9 * unity_FogParams.y;
					    u_xlat9 = exp2((-u_xlat9));
					    u_xlat9 = min(u_xlat9, 1.0);
					    SV_Target0.xyz = vec3(u_xlat9) * u_xlat0.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendMul" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					bool u_xlatb2;
					float u_xlat9;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2.x = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2.x;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat9 = u_xlat0.w;
					    u_xlat9 = clamp(u_xlat9, 0.0, 1.0);
					    u_xlat0.w = u_xlat9 * vs_TEXCOORD4;
					    u_xlat1 = u_xlat0 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat0.xyz = u_xlat0.www * u_xlat1.xyz;
					    SV_Target0.w = u_xlat0.w * u_xlat1.w + 1.0;
					    u_xlat9 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat9 = (-u_xlat9) + 1.0;
					    u_xlat9 = u_xlat9 * _ProjectionParams.z;
					    u_xlat9 = max(u_xlat9, 0.0);
					    u_xlat9 = u_xlat9 * unity_FogParams.x;
					    u_xlat9 = u_xlat9 * (-u_xlat9);
					    u_xlat9 = exp2(u_xlat9);
					    SV_Target0.xyz = vec3(u_xlat9) * u_xlat0.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					bool u_xlatb2;
					float u_xlat9;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2.x = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2.x;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat9 = u_xlat0.w;
					    u_xlat9 = clamp(u_xlat9, 0.0, 1.0);
					    u_xlat0.w = u_xlat9 * vs_TEXCOORD4;
					    u_xlat1 = u_xlat0 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat0.xyz = u_xlat0.www * u_xlat1.xyz;
					    SV_Target0.w = u_xlat0.w * u_xlat1.w + 1.0;
					    u_xlat9 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat9 = (-u_xlat9) + 1.0;
					    u_xlat9 = u_xlat9 * _ProjectionParams.z;
					    u_xlat9 = max(u_xlat9, 0.0);
					    u_xlat9 = u_xlat9 * unity_FogParams.x;
					    u_xlat9 = u_xlat9 * (-u_xlat9);
					    u_xlat9 = exp2(u_xlat9);
					    SV_Target0.xyz = vec3(u_xlat9) * u_xlat0.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendMul" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					bool u_xlatb2;
					float u_xlat9;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2.x = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2.x;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat9 = u_xlat0.w;
					    u_xlat9 = clamp(u_xlat9, 0.0, 1.0);
					    u_xlat0.w = u_xlat9 * vs_TEXCOORD4;
					    u_xlat1 = u_xlat0 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat0.xyz = u_xlat0.www * u_xlat1.xyz;
					    SV_Target0.w = u_xlat0.w * u_xlat1.w + 1.0;
					    u_xlat9 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat9 = (-u_xlat9) + 1.0;
					    u_xlat9 = u_xlat9 * _ProjectionParams.z;
					    u_xlat9 = max(u_xlat9, 0.0);
					    u_xlat9 = u_xlat9 * unity_FogParams.x;
					    u_xlat9 = u_xlat9 * (-u_xlat9);
					    u_xlat9 = exp2(u_xlat9);
					    SV_Target0.xyz = vec3(u_xlat9) * u_xlat0.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					bool u_xlatb2;
					float u_xlat9;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2.x = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2.x;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat9 = u_xlat0.w;
					    u_xlat9 = clamp(u_xlat9, 0.0, 1.0);
					    u_xlat0.w = u_xlat9 * vs_TEXCOORD4;
					    u_xlat1 = u_xlat0 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat0.xyz = u_xlat0.www * u_xlat1.xyz;
					    SV_Target0.w = u_xlat0.w * u_xlat1.w + 1.0;
					    u_xlat9 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat9 = (-u_xlat9) + 1.0;
					    u_xlat9 = u_xlat9 * _ProjectionParams.z;
					    u_xlat9 = max(u_xlat9, 0.0);
					    u_xlat9 = u_xlat9 * unity_FogParams.x;
					    u_xlat9 = u_xlat9 * (-u_xlat9);
					    u_xlat9 = exp2(u_xlat9);
					    SV_Target0.xyz = vec3(u_xlat9) * u_xlat0.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendMul" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlat0.xyz = u_xlat0.xyz + u_xlat0.xyz;
					    u_xlat0.xyz = u_xlat0.xyz * _TintColor.xyz;
					    u_xlat1.xyz = u_xlat0.xyz * vs_COLOR0.xyz;
					    u_xlat0.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlatb0 = u_xlat0.w>=u_xlat0.x;
					    u_xlat1.w = u_xlatb0 ? 1.0 : float(0.0);
					    u_xlat0 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    SV_Target0 = u_xlat1.wwww * u_xlat0 + vec4(1.0, 1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlat0.xyz = u_xlat0.xyz + u_xlat0.xyz;
					    u_xlat0.xyz = u_xlat0.xyz * _TintColor.xyz;
					    u_xlat1.xyz = u_xlat0.xyz * vs_COLOR0.xyz;
					    u_xlat0.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlatb0 = u_xlat0.w>=u_xlat0.x;
					    u_xlat1.w = u_xlatb0 ? 1.0 : float(0.0);
					    u_xlat0 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    SV_Target0 = u_xlat1.wwww * u_xlat0 + vec4(1.0, 1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendMul" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[7];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb0 = u_xlat1.w>=u_xlat0.x;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat1.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat1.w = u_xlatb0 ? 1.0 : float(0.0);
					    u_xlat0 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    SV_Target0 = u_xlat1.wwww * u_xlat0 + vec4(1.0, 1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[6];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb0 = u_xlat1.w>=u_xlat0.x;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat1.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat1.w = u_xlatb0 ? 1.0 : float(0.0);
					    u_xlat0 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    SV_Target0 = u_xlat1.wwww * u_xlat0 + vec4(1.0, 1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendMul" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat2.w = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1 = u_xlat2 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat2.w = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1 = u_xlat2 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendMul" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					float u_xlat9;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlat0.xyz = u_xlat0.xyz + u_xlat0.xyz;
					    u_xlat0.xyz = u_xlat0.xyz * _TintColor.xyz;
					    u_xlat1.xyz = u_xlat0.xyz * vs_COLOR0.xyz;
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat2 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat2.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlatb0 = u_xlat0.w>=u_xlat0.x;
					    u_xlat1.w = u_xlatb0 ? 1.0 : float(0.0);
					    u_xlat0 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat0.xyz = u_xlat0.xyz * u_xlat1.www;
					    SV_Target0.w = u_xlat1.w * u_xlat0.w + 1.0;
					    u_xlat9 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat9 = (-u_xlat9) + 1.0;
					    u_xlat9 = u_xlat9 * _ProjectionParams.z;
					    u_xlat9 = max(u_xlat9, 0.0);
					    u_xlat9 = u_xlat9 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat9 = clamp(u_xlat9, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat9) * u_xlat0.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					float u_xlat9;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlat0.xyz = u_xlat0.xyz + u_xlat0.xyz;
					    u_xlat0.xyz = u_xlat0.xyz * _TintColor.xyz;
					    u_xlat1.xyz = u_xlat0.xyz * vs_COLOR0.xyz;
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat2 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat2.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlatb0 = u_xlat0.w>=u_xlat0.x;
					    u_xlat1.w = u_xlatb0 ? 1.0 : float(0.0);
					    u_xlat0 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat0.xyz = u_xlat0.xyz * u_xlat1.www;
					    SV_Target0.w = u_xlat1.w * u_xlat0.w + 1.0;
					    u_xlat9 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat9 = (-u_xlat9) + 1.0;
					    u_xlat9 = u_xlat9 * _ProjectionParams.z;
					    u_xlat9 = max(u_xlat9, 0.0);
					    u_xlat9 = u_xlat9 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat9 = clamp(u_xlat9, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat9) * u_xlat0.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendMul" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat2.w = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1 = u_xlat2 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat2.w = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1 = u_xlat2 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendMul" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec3 u_xlat4;
					bool u_xlatb4;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat4.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat4.xyz = u_xlat4.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat4.xyz * vs_COLOR0.xyz;
					    u_xlat4.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat3 = texture(_CameraDepthTexture, u_xlat4.xy);
					    u_xlat4.x = _ZBufferParams.z * u_xlat3.x + _ZBufferParams.w;
					    u_xlat4.x = float(1.0) / u_xlat4.x;
					    u_xlat4.x = u_xlat4.x + (-vs_TEXCOORD3.z);
					    u_xlat4.x = u_xlat4.x * _InvFade;
					    u_xlat4.x = clamp(u_xlat4.x, 0.0, 1.0);
					    u_xlat4.x = (-vs_COLOR0.w) * u_xlat4.x + 1.0;
					    u_xlat4.x = u_xlat4.x + _Cutout;
					    u_xlatb4 = u_xlat1.w>=u_xlat4.x;
					    u_xlat2.w = u_xlatb4 ? 1.0 : float(0.0);
					    u_xlat1 = u_xlat2 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat4.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat4.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec3 u_xlat4;
					bool u_xlatb4;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat4.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat4.xyz = u_xlat4.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat4.xyz * vs_COLOR0.xyz;
					    u_xlat4.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat3 = texture(_CameraDepthTexture, u_xlat4.xy);
					    u_xlat4.x = _ZBufferParams.z * u_xlat3.x + _ZBufferParams.w;
					    u_xlat4.x = float(1.0) / u_xlat4.x;
					    u_xlat4.x = u_xlat4.x + (-vs_TEXCOORD3.z);
					    u_xlat4.x = u_xlat4.x * _InvFade;
					    u_xlat4.x = clamp(u_xlat4.x, 0.0, 1.0);
					    u_xlat4.x = (-vs_COLOR0.w) * u_xlat4.x + 1.0;
					    u_xlat4.x = u_xlat4.x + _Cutout;
					    u_xlatb4 = u_xlat1.w>=u_xlat4.x;
					    u_xlat2.w = u_xlatb4 ? 1.0 : float(0.0);
					    u_xlat1 = u_xlat2 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat4.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat4.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendMul" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat2.w = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1 = u_xlat2 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat2.w = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1 = u_xlat2 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendMul" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec3 u_xlat4;
					bool u_xlatb4;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat4.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat4.xyz = u_xlat4.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat4.xyz * vs_COLOR0.xyz;
					    u_xlat4.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat3 = texture(_CameraDepthTexture, u_xlat4.xy);
					    u_xlat4.x = _ZBufferParams.z * u_xlat3.x + _ZBufferParams.w;
					    u_xlat4.x = float(1.0) / u_xlat4.x;
					    u_xlat4.x = u_xlat4.x + (-vs_TEXCOORD3.z);
					    u_xlat4.x = u_xlat4.x * _InvFade;
					    u_xlat4.x = clamp(u_xlat4.x, 0.0, 1.0);
					    u_xlat4.x = (-vs_COLOR0.w) * u_xlat4.x + 1.0;
					    u_xlat4.x = u_xlat4.x + _Cutout;
					    u_xlatb4 = u_xlat1.w>=u_xlat4.x;
					    u_xlat2.w = u_xlatb4 ? 1.0 : float(0.0);
					    u_xlat1 = u_xlat2 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat4.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat4.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec3 u_xlat4;
					bool u_xlatb4;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat4.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat4.xyz = u_xlat4.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat4.xyz * vs_COLOR0.xyz;
					    u_xlat4.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat3 = texture(_CameraDepthTexture, u_xlat4.xy);
					    u_xlat4.x = _ZBufferParams.z * u_xlat3.x + _ZBufferParams.w;
					    u_xlat4.x = float(1.0) / u_xlat4.x;
					    u_xlat4.x = u_xlat4.x + (-vs_TEXCOORD3.z);
					    u_xlat4.x = u_xlat4.x * _InvFade;
					    u_xlat4.x = clamp(u_xlat4.x, 0.0, 1.0);
					    u_xlat4.x = (-vs_COLOR0.w) * u_xlat4.x + 1.0;
					    u_xlat4.x = u_xlat4.x + _Cutout;
					    u_xlatb4 = u_xlat1.w>=u_xlat4.x;
					    u_xlat2.w = u_xlatb4 ? 1.0 : float(0.0);
					    u_xlat1 = u_xlat2 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat4.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat4.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendMul" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[7];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb0 = u_xlat1.w>=u_xlat0.x;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat1.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat1.w = u_xlatb0 ? 1.0 : float(0.0);
					    u_xlat0 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    SV_Target0 = u_xlat1.wwww * u_xlat0 + vec4(1.0, 1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[6];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb0 = u_xlat1.w>=u_xlat0.x;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat1.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat1.w = u_xlatb0 ? 1.0 : float(0.0);
					    u_xlat0 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    SV_Target0 = u_xlat1.wwww * u_xlat0 + vec4(1.0, 1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendMul" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[7];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb0 = u_xlat1.w>=u_xlat0.x;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat1.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat1.w = u_xlatb0 ? 1.0 : float(0.0);
					    u_xlat0 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    SV_Target0 = u_xlat1.wwww * u_xlat0 + vec4(1.0, 1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[6];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb0 = u_xlat1.w>=u_xlat0.x;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat1.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat1.w = u_xlatb0 ? 1.0 : float(0.0);
					    u_xlat0 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    SV_Target0 = u_xlat1.wwww * u_xlat0 + vec4(1.0, 1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendMul" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					float u_xlat9;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlat0.xyz = u_xlat0.xyz + u_xlat0.xyz;
					    u_xlat0.xyz = u_xlat0.xyz * _TintColor.xyz;
					    u_xlat1.xyz = u_xlat0.xyz * vs_COLOR0.xyz;
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat2 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat2.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlatb0 = u_xlat0.w>=u_xlat0.x;
					    u_xlat1.w = u_xlatb0 ? 1.0 : float(0.0);
					    u_xlat0 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat0.xyz = u_xlat0.xyz * u_xlat1.www;
					    SV_Target0.w = u_xlat1.w * u_xlat0.w + 1.0;
					    u_xlat9 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat9 = (-u_xlat9) + 1.0;
					    u_xlat9 = u_xlat9 * _ProjectionParams.z;
					    u_xlat9 = max(u_xlat9, 0.0);
					    u_xlat9 = u_xlat9 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat9 = clamp(u_xlat9, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat9) * u_xlat0.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					float u_xlat9;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlat0.xyz = u_xlat0.xyz + u_xlat0.xyz;
					    u_xlat0.xyz = u_xlat0.xyz * _TintColor.xyz;
					    u_xlat1.xyz = u_xlat0.xyz * vs_COLOR0.xyz;
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat2 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat2.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlatb0 = u_xlat0.w>=u_xlat0.x;
					    u_xlat1.w = u_xlatb0 ? 1.0 : float(0.0);
					    u_xlat0 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat0.xyz = u_xlat0.xyz * u_xlat1.www;
					    SV_Target0.w = u_xlat1.w * u_xlat0.w + 1.0;
					    u_xlat9 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat9 = (-u_xlat9) + 1.0;
					    u_xlat9 = u_xlat9 * _ProjectionParams.z;
					    u_xlat9 = max(u_xlat9, 0.0);
					    u_xlat9 = u_xlat9 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat9 = clamp(u_xlat9, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat9) * u_xlat0.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendMul" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					float u_xlat9;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlat0.xyz = u_xlat0.xyz + u_xlat0.xyz;
					    u_xlat0.xyz = u_xlat0.xyz * _TintColor.xyz;
					    u_xlat1.xyz = u_xlat0.xyz * vs_COLOR0.xyz;
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat2 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat2.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlatb0 = u_xlat0.w>=u_xlat0.x;
					    u_xlat1.w = u_xlatb0 ? 1.0 : float(0.0);
					    u_xlat0 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat0.xyz = u_xlat0.xyz * u_xlat1.www;
					    SV_Target0.w = u_xlat1.w * u_xlat0.w + 1.0;
					    u_xlat9 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat9 = (-u_xlat9) + 1.0;
					    u_xlat9 = u_xlat9 * _ProjectionParams.z;
					    u_xlat9 = max(u_xlat9, 0.0);
					    u_xlat9 = u_xlat9 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat9 = clamp(u_xlat9, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat9) * u_xlat0.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					float u_xlat9;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlat0.xyz = u_xlat0.xyz + u_xlat0.xyz;
					    u_xlat0.xyz = u_xlat0.xyz * _TintColor.xyz;
					    u_xlat1.xyz = u_xlat0.xyz * vs_COLOR0.xyz;
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat2 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat2.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlatb0 = u_xlat0.w>=u_xlat0.x;
					    u_xlat1.w = u_xlatb0 ? 1.0 : float(0.0);
					    u_xlat0 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat0.xyz = u_xlat0.xyz * u_xlat1.www;
					    SV_Target0.w = u_xlat1.w * u_xlat0.w + 1.0;
					    u_xlat9 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat9 = (-u_xlat9) + 1.0;
					    u_xlat9 = u_xlat9 * _ProjectionParams.z;
					    u_xlat9 = max(u_xlat9, 0.0);
					    u_xlat9 = u_xlat9 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat9 = clamp(u_xlat9, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat9) * u_xlat0.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendMul" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec3 u_xlat4;
					bool u_xlatb4;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat4.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat4.xyz = u_xlat4.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat4.xyz * vs_COLOR0.xyz;
					    u_xlat4.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat3 = texture(_CameraDepthTexture, u_xlat4.xy);
					    u_xlat4.x = _ZBufferParams.z * u_xlat3.x + _ZBufferParams.w;
					    u_xlat4.x = float(1.0) / u_xlat4.x;
					    u_xlat4.x = u_xlat4.x + (-vs_TEXCOORD3.z);
					    u_xlat4.x = u_xlat4.x * _InvFade;
					    u_xlat4.x = clamp(u_xlat4.x, 0.0, 1.0);
					    u_xlat4.x = (-vs_COLOR0.w) * u_xlat4.x + 1.0;
					    u_xlat4.x = u_xlat4.x + _Cutout;
					    u_xlatb4 = u_xlat1.w>=u_xlat4.x;
					    u_xlat2.w = u_xlatb4 ? 1.0 : float(0.0);
					    u_xlat1 = u_xlat2 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat4.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat4.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec3 u_xlat4;
					bool u_xlatb4;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat4.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat4.xyz = u_xlat4.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat4.xyz * vs_COLOR0.xyz;
					    u_xlat4.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat3 = texture(_CameraDepthTexture, u_xlat4.xy);
					    u_xlat4.x = _ZBufferParams.z * u_xlat3.x + _ZBufferParams.w;
					    u_xlat4.x = float(1.0) / u_xlat4.x;
					    u_xlat4.x = u_xlat4.x + (-vs_TEXCOORD3.z);
					    u_xlat4.x = u_xlat4.x * _InvFade;
					    u_xlat4.x = clamp(u_xlat4.x, 0.0, 1.0);
					    u_xlat4.x = (-vs_COLOR0.w) * u_xlat4.x + 1.0;
					    u_xlat4.x = u_xlat4.x + _Cutout;
					    u_xlatb4 = u_xlat1.w>=u_xlat4.x;
					    u_xlat2.w = u_xlatb4 ? 1.0 : float(0.0);
					    u_xlat1 = u_xlat2 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat4.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat4.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendMul" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec3 u_xlat4;
					bool u_xlatb4;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat4.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat4.xyz = u_xlat4.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat4.xyz * vs_COLOR0.xyz;
					    u_xlat4.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat3 = texture(_CameraDepthTexture, u_xlat4.xy);
					    u_xlat4.x = _ZBufferParams.z * u_xlat3.x + _ZBufferParams.w;
					    u_xlat4.x = float(1.0) / u_xlat4.x;
					    u_xlat4.x = u_xlat4.x + (-vs_TEXCOORD3.z);
					    u_xlat4.x = u_xlat4.x * _InvFade;
					    u_xlat4.x = clamp(u_xlat4.x, 0.0, 1.0);
					    u_xlat4.x = (-vs_COLOR0.w) * u_xlat4.x + 1.0;
					    u_xlat4.x = u_xlat4.x + _Cutout;
					    u_xlatb4 = u_xlat1.w>=u_xlat4.x;
					    u_xlat2.w = u_xlatb4 ? 1.0 : float(0.0);
					    u_xlat1 = u_xlat2 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat4.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat4.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec3 u_xlat4;
					bool u_xlatb4;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat4.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat4.xyz = u_xlat4.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat4.xyz * vs_COLOR0.xyz;
					    u_xlat4.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat3 = texture(_CameraDepthTexture, u_xlat4.xy);
					    u_xlat4.x = _ZBufferParams.z * u_xlat3.x + _ZBufferParams.w;
					    u_xlat4.x = float(1.0) / u_xlat4.x;
					    u_xlat4.x = u_xlat4.x + (-vs_TEXCOORD3.z);
					    u_xlat4.x = u_xlat4.x * _InvFade;
					    u_xlat4.x = clamp(u_xlat4.x, 0.0, 1.0);
					    u_xlat4.x = (-vs_COLOR0.w) * u_xlat4.x + 1.0;
					    u_xlat4.x = u_xlat4.x + _Cutout;
					    u_xlatb4 = u_xlat1.w>=u_xlat4.x;
					    u_xlat2.w = u_xlatb4 ? 1.0 : float(0.0);
					    u_xlat1 = u_xlat2 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat4.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat4.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendMul" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec3 u_xlat4;
					bool u_xlatb4;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat4.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat4.xyz = u_xlat4.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat4.xyz * vs_COLOR0.xyz;
					    u_xlat4.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat3 = texture(_CameraDepthTexture, u_xlat4.xy);
					    u_xlat4.x = _ZBufferParams.z * u_xlat3.x + _ZBufferParams.w;
					    u_xlat4.x = float(1.0) / u_xlat4.x;
					    u_xlat4.x = u_xlat4.x + (-vs_TEXCOORD3.z);
					    u_xlat4.x = u_xlat4.x * _InvFade;
					    u_xlat4.x = clamp(u_xlat4.x, 0.0, 1.0);
					    u_xlat4.x = (-vs_COLOR0.w) * u_xlat4.x + 1.0;
					    u_xlat4.x = u_xlat4.x + _Cutout;
					    u_xlatb4 = u_xlat1.w>=u_xlat4.x;
					    u_xlat2.w = u_xlatb4 ? 1.0 : float(0.0);
					    u_xlat1 = u_xlat2 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat4.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat4.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec3 u_xlat4;
					bool u_xlatb4;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat4.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat4.xyz = u_xlat4.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat4.xyz * vs_COLOR0.xyz;
					    u_xlat4.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat3 = texture(_CameraDepthTexture, u_xlat4.xy);
					    u_xlat4.x = _ZBufferParams.z * u_xlat3.x + _ZBufferParams.w;
					    u_xlat4.x = float(1.0) / u_xlat4.x;
					    u_xlat4.x = u_xlat4.x + (-vs_TEXCOORD3.z);
					    u_xlat4.x = u_xlat4.x * _InvFade;
					    u_xlat4.x = clamp(u_xlat4.x, 0.0, 1.0);
					    u_xlat4.x = (-vs_COLOR0.w) * u_xlat4.x + 1.0;
					    u_xlat4.x = u_xlat4.x + _Cutout;
					    u_xlatb4 = u_xlat1.w>=u_xlat4.x;
					    u_xlat2.w = u_xlatb4 ? 1.0 : float(0.0);
					    u_xlat1 = u_xlat2 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat4.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat4.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendMul" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec3 u_xlat4;
					bool u_xlatb4;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat4.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat4.xyz = u_xlat4.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat4.xyz * vs_COLOR0.xyz;
					    u_xlat4.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat3 = texture(_CameraDepthTexture, u_xlat4.xy);
					    u_xlat4.x = _ZBufferParams.z * u_xlat3.x + _ZBufferParams.w;
					    u_xlat4.x = float(1.0) / u_xlat4.x;
					    u_xlat4.x = u_xlat4.x + (-vs_TEXCOORD3.z);
					    u_xlat4.x = u_xlat4.x * _InvFade;
					    u_xlat4.x = clamp(u_xlat4.x, 0.0, 1.0);
					    u_xlat4.x = (-vs_COLOR0.w) * u_xlat4.x + 1.0;
					    u_xlat4.x = u_xlat4.x + _Cutout;
					    u_xlatb4 = u_xlat1.w>=u_xlat4.x;
					    u_xlat2.w = u_xlatb4 ? 1.0 : float(0.0);
					    u_xlat1 = u_xlat2 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat4.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat4.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec3 u_xlat4;
					bool u_xlatb4;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat4.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat4.xyz = u_xlat4.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat4.xyz * vs_COLOR0.xyz;
					    u_xlat4.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat3 = texture(_CameraDepthTexture, u_xlat4.xy);
					    u_xlat4.x = _ZBufferParams.z * u_xlat3.x + _ZBufferParams.w;
					    u_xlat4.x = float(1.0) / u_xlat4.x;
					    u_xlat4.x = u_xlat4.x + (-vs_TEXCOORD3.z);
					    u_xlat4.x = u_xlat4.x * _InvFade;
					    u_xlat4.x = clamp(u_xlat4.x, 0.0, 1.0);
					    u_xlat4.x = (-vs_COLOR0.w) * u_xlat4.x + 1.0;
					    u_xlat4.x = u_xlat4.x + _Cutout;
					    u_xlatb4 = u_xlat1.w>=u_xlat4.x;
					    u_xlat2.w = u_xlatb4 ? 1.0 : float(0.0);
					    u_xlat1 = u_xlat2 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat4.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat4.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendMul" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlat0.xyz = u_xlat0.xyz + u_xlat0.xyz;
					    u_xlat0.xyz = u_xlat0.xyz * _TintColor.xyz;
					    u_xlat1.xyz = u_xlat0.xyz * vs_COLOR0.xyz;
					    u_xlat0.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlatb0 = u_xlat0.w>=u_xlat0.x;
					    u_xlat0.x = u_xlatb0 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat0.x * vs_TEXCOORD4;
					    u_xlat0 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    SV_Target0 = u_xlat1.wwww * u_xlat0 + vec4(1.0, 1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlat0.xyz = u_xlat0.xyz + u_xlat0.xyz;
					    u_xlat0.xyz = u_xlat0.xyz * _TintColor.xyz;
					    u_xlat1.xyz = u_xlat0.xyz * vs_COLOR0.xyz;
					    u_xlat0.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlatb0 = u_xlat0.w>=u_xlat0.x;
					    u_xlat0.x = u_xlatb0 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat0.x * vs_TEXCOORD4;
					    u_xlat0 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    SV_Target0 = u_xlat1.wwww * u_xlat0 + vec4(1.0, 1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendMul" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[7];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb0 = u_xlat1.w>=u_xlat0.x;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat1.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat0.x = u_xlatb0 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat0.x * vs_TEXCOORD4;
					    u_xlat0 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    SV_Target0 = u_xlat1.wwww * u_xlat0 + vec4(1.0, 1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[6];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb0 = u_xlat1.w>=u_xlat0.x;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat1.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat0.x = u_xlatb0 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat0.x * vs_TEXCOORD4;
					    u_xlat0 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    SV_Target0 = u_xlat1.wwww * u_xlat0 + vec4(1.0, 1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendMul" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat2.w = u_xlat3.x * vs_TEXCOORD4;
					    u_xlat1 = u_xlat2 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat2.w = u_xlat3.x * vs_TEXCOORD4;
					    u_xlat1 = u_xlat2 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendMul" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					float u_xlat9;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlat0.xyz = u_xlat0.xyz + u_xlat0.xyz;
					    u_xlat0.xyz = u_xlat0.xyz * _TintColor.xyz;
					    u_xlat1.xyz = u_xlat0.xyz * vs_COLOR0.xyz;
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat2 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat2.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlatb0 = u_xlat0.w>=u_xlat0.x;
					    u_xlat0.x = u_xlatb0 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat0.x * vs_TEXCOORD4;
					    u_xlat0 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat0.xyz = u_xlat0.xyz * u_xlat1.www;
					    SV_Target0.w = u_xlat1.w * u_xlat0.w + 1.0;
					    u_xlat9 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat9 = (-u_xlat9) + 1.0;
					    u_xlat9 = u_xlat9 * _ProjectionParams.z;
					    u_xlat9 = max(u_xlat9, 0.0);
					    u_xlat9 = u_xlat9 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat9 = clamp(u_xlat9, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat9) * u_xlat0.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					float u_xlat9;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlat0.xyz = u_xlat0.xyz + u_xlat0.xyz;
					    u_xlat0.xyz = u_xlat0.xyz * _TintColor.xyz;
					    u_xlat1.xyz = u_xlat0.xyz * vs_COLOR0.xyz;
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat2 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat2.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlatb0 = u_xlat0.w>=u_xlat0.x;
					    u_xlat0.x = u_xlatb0 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat0.x * vs_TEXCOORD4;
					    u_xlat0 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat0.xyz = u_xlat0.xyz * u_xlat1.www;
					    SV_Target0.w = u_xlat1.w * u_xlat0.w + 1.0;
					    u_xlat9 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat9 = (-u_xlat9) + 1.0;
					    u_xlat9 = u_xlat9 * _ProjectionParams.z;
					    u_xlat9 = max(u_xlat9, 0.0);
					    u_xlat9 = u_xlat9 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat9 = clamp(u_xlat9, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat9) * u_xlat0.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendMul" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat2.w = u_xlat3.x * vs_TEXCOORD4;
					    u_xlat1 = u_xlat2 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat2.w = u_xlat3.x * vs_TEXCOORD4;
					    u_xlat1 = u_xlat2 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendMul" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec3 u_xlat4;
					bool u_xlatb4;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat4.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat4.xyz = u_xlat4.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat4.xyz * vs_COLOR0.xyz;
					    u_xlat4.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat3 = texture(_CameraDepthTexture, u_xlat4.xy);
					    u_xlat4.x = _ZBufferParams.z * u_xlat3.x + _ZBufferParams.w;
					    u_xlat4.x = float(1.0) / u_xlat4.x;
					    u_xlat4.x = u_xlat4.x + (-vs_TEXCOORD3.z);
					    u_xlat4.x = u_xlat4.x * _InvFade;
					    u_xlat4.x = clamp(u_xlat4.x, 0.0, 1.0);
					    u_xlat4.x = (-vs_COLOR0.w) * u_xlat4.x + 1.0;
					    u_xlat4.x = u_xlat4.x + _Cutout;
					    u_xlatb4 = u_xlat1.w>=u_xlat4.x;
					    u_xlat4.x = u_xlatb4 ? 1.0 : float(0.0);
					    u_xlat2.w = u_xlat4.x * vs_TEXCOORD4;
					    u_xlat1 = u_xlat2 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat4.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat4.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec3 u_xlat4;
					bool u_xlatb4;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat4.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat4.xyz = u_xlat4.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat4.xyz * vs_COLOR0.xyz;
					    u_xlat4.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat3 = texture(_CameraDepthTexture, u_xlat4.xy);
					    u_xlat4.x = _ZBufferParams.z * u_xlat3.x + _ZBufferParams.w;
					    u_xlat4.x = float(1.0) / u_xlat4.x;
					    u_xlat4.x = u_xlat4.x + (-vs_TEXCOORD3.z);
					    u_xlat4.x = u_xlat4.x * _InvFade;
					    u_xlat4.x = clamp(u_xlat4.x, 0.0, 1.0);
					    u_xlat4.x = (-vs_COLOR0.w) * u_xlat4.x + 1.0;
					    u_xlat4.x = u_xlat4.x + _Cutout;
					    u_xlatb4 = u_xlat1.w>=u_xlat4.x;
					    u_xlat4.x = u_xlatb4 ? 1.0 : float(0.0);
					    u_xlat2.w = u_xlat4.x * vs_TEXCOORD4;
					    u_xlat1 = u_xlat2 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat4.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat4.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendMul" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat2.w = u_xlat3.x * vs_TEXCOORD4;
					    u_xlat1 = u_xlat2 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat2.w = u_xlat3.x * vs_TEXCOORD4;
					    u_xlat1 = u_xlat2 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat3.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendMul" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec3 u_xlat4;
					bool u_xlatb4;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat4.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat4.xyz = u_xlat4.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat4.xyz * vs_COLOR0.xyz;
					    u_xlat4.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat3 = texture(_CameraDepthTexture, u_xlat4.xy);
					    u_xlat4.x = _ZBufferParams.z * u_xlat3.x + _ZBufferParams.w;
					    u_xlat4.x = float(1.0) / u_xlat4.x;
					    u_xlat4.x = u_xlat4.x + (-vs_TEXCOORD3.z);
					    u_xlat4.x = u_xlat4.x * _InvFade;
					    u_xlat4.x = clamp(u_xlat4.x, 0.0, 1.0);
					    u_xlat4.x = (-vs_COLOR0.w) * u_xlat4.x + 1.0;
					    u_xlat4.x = u_xlat4.x + _Cutout;
					    u_xlatb4 = u_xlat1.w>=u_xlat4.x;
					    u_xlat4.x = u_xlatb4 ? 1.0 : float(0.0);
					    u_xlat2.w = u_xlat4.x * vs_TEXCOORD4;
					    u_xlat1 = u_xlat2 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat4.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat4.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec3 u_xlat4;
					bool u_xlatb4;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat4.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat4.xyz = u_xlat4.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat4.xyz * vs_COLOR0.xyz;
					    u_xlat4.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat3 = texture(_CameraDepthTexture, u_xlat4.xy);
					    u_xlat4.x = _ZBufferParams.z * u_xlat3.x + _ZBufferParams.w;
					    u_xlat4.x = float(1.0) / u_xlat4.x;
					    u_xlat4.x = u_xlat4.x + (-vs_TEXCOORD3.z);
					    u_xlat4.x = u_xlat4.x * _InvFade;
					    u_xlat4.x = clamp(u_xlat4.x, 0.0, 1.0);
					    u_xlat4.x = (-vs_COLOR0.w) * u_xlat4.x + 1.0;
					    u_xlat4.x = u_xlat4.x + _Cutout;
					    u_xlatb4 = u_xlat1.w>=u_xlat4.x;
					    u_xlat4.x = u_xlatb4 ? 1.0 : float(0.0);
					    u_xlat2.w = u_xlat4.x * vs_TEXCOORD4;
					    u_xlat1 = u_xlat2 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat4.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat4.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendMul" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[7];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb0 = u_xlat1.w>=u_xlat0.x;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat1.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat0.x = u_xlatb0 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat0.x * vs_TEXCOORD4;
					    u_xlat0 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    SV_Target0 = u_xlat1.wwww * u_xlat0 + vec4(1.0, 1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[6];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb0 = u_xlat1.w>=u_xlat0.x;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat1.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat0.x = u_xlatb0 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat0.x * vs_TEXCOORD4;
					    u_xlat0 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    SV_Target0 = u_xlat1.wwww * u_xlat0 + vec4(1.0, 1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendMul" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[7];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb0 = u_xlat1.w>=u_xlat0.x;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat1.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat0.x = u_xlatb0 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat0.x * vs_TEXCOORD4;
					    u_xlat0 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    SV_Target0 = u_xlat1.wwww * u_xlat0 + vec4(1.0, 1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[6];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb0 = u_xlat1.w>=u_xlat0.x;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat1.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat0.x = u_xlatb0 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat0.x * vs_TEXCOORD4;
					    u_xlat0 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    SV_Target0 = u_xlat1.wwww * u_xlat0 + vec4(1.0, 1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendMul" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					float u_xlat9;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlat0.xyz = u_xlat0.xyz + u_xlat0.xyz;
					    u_xlat0.xyz = u_xlat0.xyz * _TintColor.xyz;
					    u_xlat1.xyz = u_xlat0.xyz * vs_COLOR0.xyz;
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat2 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat2.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlatb0 = u_xlat0.w>=u_xlat0.x;
					    u_xlat0.x = u_xlatb0 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat0.x * vs_TEXCOORD4;
					    u_xlat0 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat0.xyz = u_xlat0.xyz * u_xlat1.www;
					    SV_Target0.w = u_xlat1.w * u_xlat0.w + 1.0;
					    u_xlat9 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat9 = (-u_xlat9) + 1.0;
					    u_xlat9 = u_xlat9 * _ProjectionParams.z;
					    u_xlat9 = max(u_xlat9, 0.0);
					    u_xlat9 = u_xlat9 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat9 = clamp(u_xlat9, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat9) * u_xlat0.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					float u_xlat9;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlat0.xyz = u_xlat0.xyz + u_xlat0.xyz;
					    u_xlat0.xyz = u_xlat0.xyz * _TintColor.xyz;
					    u_xlat1.xyz = u_xlat0.xyz * vs_COLOR0.xyz;
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat2 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat2.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlatb0 = u_xlat0.w>=u_xlat0.x;
					    u_xlat0.x = u_xlatb0 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat0.x * vs_TEXCOORD4;
					    u_xlat0 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat0.xyz = u_xlat0.xyz * u_xlat1.www;
					    SV_Target0.w = u_xlat1.w * u_xlat0.w + 1.0;
					    u_xlat9 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat9 = (-u_xlat9) + 1.0;
					    u_xlat9 = u_xlat9 * _ProjectionParams.z;
					    u_xlat9 = max(u_xlat9, 0.0);
					    u_xlat9 = u_xlat9 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat9 = clamp(u_xlat9, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat9) * u_xlat0.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendMul" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					float u_xlat9;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlat0.xyz = u_xlat0.xyz + u_xlat0.xyz;
					    u_xlat0.xyz = u_xlat0.xyz * _TintColor.xyz;
					    u_xlat1.xyz = u_xlat0.xyz * vs_COLOR0.xyz;
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat2 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat2.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlatb0 = u_xlat0.w>=u_xlat0.x;
					    u_xlat0.x = u_xlatb0 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat0.x * vs_TEXCOORD4;
					    u_xlat0 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat0.xyz = u_xlat0.xyz * u_xlat1.www;
					    SV_Target0.w = u_xlat1.w * u_xlat0.w + 1.0;
					    u_xlat9 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat9 = (-u_xlat9) + 1.0;
					    u_xlat9 = u_xlat9 * _ProjectionParams.z;
					    u_xlat9 = max(u_xlat9, 0.0);
					    u_xlat9 = u_xlat9 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat9 = clamp(u_xlat9, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat9) * u_xlat0.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					float u_xlat9;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlat0.xyz = u_xlat0.xyz + u_xlat0.xyz;
					    u_xlat0.xyz = u_xlat0.xyz * _TintColor.xyz;
					    u_xlat1.xyz = u_xlat0.xyz * vs_COLOR0.xyz;
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat2 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat2.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlatb0 = u_xlat0.w>=u_xlat0.x;
					    u_xlat0.x = u_xlatb0 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat0.x * vs_TEXCOORD4;
					    u_xlat0 = u_xlat1 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat0.xyz = u_xlat0.xyz * u_xlat1.www;
					    SV_Target0.w = u_xlat1.w * u_xlat0.w + 1.0;
					    u_xlat9 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat9 = (-u_xlat9) + 1.0;
					    u_xlat9 = u_xlat9 * _ProjectionParams.z;
					    u_xlat9 = max(u_xlat9, 0.0);
					    u_xlat9 = u_xlat9 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat9 = clamp(u_xlat9, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat9) * u_xlat0.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendMul" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec3 u_xlat4;
					bool u_xlatb4;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat4.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat4.xyz = u_xlat4.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat4.xyz * vs_COLOR0.xyz;
					    u_xlat4.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat3 = texture(_CameraDepthTexture, u_xlat4.xy);
					    u_xlat4.x = _ZBufferParams.z * u_xlat3.x + _ZBufferParams.w;
					    u_xlat4.x = float(1.0) / u_xlat4.x;
					    u_xlat4.x = u_xlat4.x + (-vs_TEXCOORD3.z);
					    u_xlat4.x = u_xlat4.x * _InvFade;
					    u_xlat4.x = clamp(u_xlat4.x, 0.0, 1.0);
					    u_xlat4.x = (-vs_COLOR0.w) * u_xlat4.x + 1.0;
					    u_xlat4.x = u_xlat4.x + _Cutout;
					    u_xlatb4 = u_xlat1.w>=u_xlat4.x;
					    u_xlat4.x = u_xlatb4 ? 1.0 : float(0.0);
					    u_xlat2.w = u_xlat4.x * vs_TEXCOORD4;
					    u_xlat1 = u_xlat2 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat4.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat4.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec3 u_xlat4;
					bool u_xlatb4;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat4.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat4.xyz = u_xlat4.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat4.xyz * vs_COLOR0.xyz;
					    u_xlat4.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat3 = texture(_CameraDepthTexture, u_xlat4.xy);
					    u_xlat4.x = _ZBufferParams.z * u_xlat3.x + _ZBufferParams.w;
					    u_xlat4.x = float(1.0) / u_xlat4.x;
					    u_xlat4.x = u_xlat4.x + (-vs_TEXCOORD3.z);
					    u_xlat4.x = u_xlat4.x * _InvFade;
					    u_xlat4.x = clamp(u_xlat4.x, 0.0, 1.0);
					    u_xlat4.x = (-vs_COLOR0.w) * u_xlat4.x + 1.0;
					    u_xlat4.x = u_xlat4.x + _Cutout;
					    u_xlatb4 = u_xlat1.w>=u_xlat4.x;
					    u_xlat4.x = u_xlatb4 ? 1.0 : float(0.0);
					    u_xlat2.w = u_xlat4.x * vs_TEXCOORD4;
					    u_xlat1 = u_xlat2 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat4.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat4.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendMul" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec3 u_xlat4;
					bool u_xlatb4;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat4.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat4.xyz = u_xlat4.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat4.xyz * vs_COLOR0.xyz;
					    u_xlat4.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat3 = texture(_CameraDepthTexture, u_xlat4.xy);
					    u_xlat4.x = _ZBufferParams.z * u_xlat3.x + _ZBufferParams.w;
					    u_xlat4.x = float(1.0) / u_xlat4.x;
					    u_xlat4.x = u_xlat4.x + (-vs_TEXCOORD3.z);
					    u_xlat4.x = u_xlat4.x * _InvFade;
					    u_xlat4.x = clamp(u_xlat4.x, 0.0, 1.0);
					    u_xlat4.x = (-vs_COLOR0.w) * u_xlat4.x + 1.0;
					    u_xlat4.x = u_xlat4.x + _Cutout;
					    u_xlatb4 = u_xlat1.w>=u_xlat4.x;
					    u_xlat4.x = u_xlatb4 ? 1.0 : float(0.0);
					    u_xlat2.w = u_xlat4.x * vs_TEXCOORD4;
					    u_xlat1 = u_xlat2 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat4.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat4.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec3 u_xlat4;
					bool u_xlatb4;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat4.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat4.xyz = u_xlat4.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat4.xyz * vs_COLOR0.xyz;
					    u_xlat4.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat3 = texture(_CameraDepthTexture, u_xlat4.xy);
					    u_xlat4.x = _ZBufferParams.z * u_xlat3.x + _ZBufferParams.w;
					    u_xlat4.x = float(1.0) / u_xlat4.x;
					    u_xlat4.x = u_xlat4.x + (-vs_TEXCOORD3.z);
					    u_xlat4.x = u_xlat4.x * _InvFade;
					    u_xlat4.x = clamp(u_xlat4.x, 0.0, 1.0);
					    u_xlat4.x = (-vs_COLOR0.w) * u_xlat4.x + 1.0;
					    u_xlat4.x = u_xlat4.x + _Cutout;
					    u_xlatb4 = u_xlat1.w>=u_xlat4.x;
					    u_xlat4.x = u_xlatb4 ? 1.0 : float(0.0);
					    u_xlat2.w = u_xlat4.x * vs_TEXCOORD4;
					    u_xlat1 = u_xlat2 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat4.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat4.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendMul" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec3 u_xlat4;
					bool u_xlatb4;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat4.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat4.xyz = u_xlat4.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat4.xyz * vs_COLOR0.xyz;
					    u_xlat4.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat3 = texture(_CameraDepthTexture, u_xlat4.xy);
					    u_xlat4.x = _ZBufferParams.z * u_xlat3.x + _ZBufferParams.w;
					    u_xlat4.x = float(1.0) / u_xlat4.x;
					    u_xlat4.x = u_xlat4.x + (-vs_TEXCOORD3.z);
					    u_xlat4.x = u_xlat4.x * _InvFade;
					    u_xlat4.x = clamp(u_xlat4.x, 0.0, 1.0);
					    u_xlat4.x = (-vs_COLOR0.w) * u_xlat4.x + 1.0;
					    u_xlat4.x = u_xlat4.x + _Cutout;
					    u_xlatb4 = u_xlat1.w>=u_xlat4.x;
					    u_xlat4.x = u_xlatb4 ? 1.0 : float(0.0);
					    u_xlat2.w = u_xlat4.x * vs_TEXCOORD4;
					    u_xlat1 = u_xlat2 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat4.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat4.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec3 u_xlat4;
					bool u_xlatb4;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat4.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat4.xyz = u_xlat4.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat4.xyz * vs_COLOR0.xyz;
					    u_xlat4.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat3 = texture(_CameraDepthTexture, u_xlat4.xy);
					    u_xlat4.x = _ZBufferParams.z * u_xlat3.x + _ZBufferParams.w;
					    u_xlat4.x = float(1.0) / u_xlat4.x;
					    u_xlat4.x = u_xlat4.x + (-vs_TEXCOORD3.z);
					    u_xlat4.x = u_xlat4.x * _InvFade;
					    u_xlat4.x = clamp(u_xlat4.x, 0.0, 1.0);
					    u_xlat4.x = (-vs_COLOR0.w) * u_xlat4.x + 1.0;
					    u_xlat4.x = u_xlat4.x + _Cutout;
					    u_xlatb4 = u_xlat1.w>=u_xlat4.x;
					    u_xlat4.x = u_xlatb4 ? 1.0 : float(0.0);
					    u_xlat2.w = u_xlat4.x * vs_TEXCOORD4;
					    u_xlat1 = u_xlat2 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat4.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat4.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendMul" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec3 u_xlat4;
					bool u_xlatb4;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat4.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat4.xyz = u_xlat4.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat4.xyz * vs_COLOR0.xyz;
					    u_xlat4.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat3 = texture(_CameraDepthTexture, u_xlat4.xy);
					    u_xlat4.x = _ZBufferParams.z * u_xlat3.x + _ZBufferParams.w;
					    u_xlat4.x = float(1.0) / u_xlat4.x;
					    u_xlat4.x = u_xlat4.x + (-vs_TEXCOORD3.z);
					    u_xlat4.x = u_xlat4.x * _InvFade;
					    u_xlat4.x = clamp(u_xlat4.x, 0.0, 1.0);
					    u_xlat4.x = (-vs_COLOR0.w) * u_xlat4.x + 1.0;
					    u_xlat4.x = u_xlat4.x + _Cutout;
					    u_xlatb4 = u_xlat1.w>=u_xlat4.x;
					    u_xlat4.x = u_xlatb4 ? 1.0 : float(0.0);
					    u_xlat2.w = u_xlat4.x * vs_TEXCOORD4;
					    u_xlat1 = u_xlat2 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat4.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat4.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec3 u_xlat4;
					bool u_xlatb4;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat4.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat4.xyz = u_xlat4.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat4.xyz * vs_COLOR0.xyz;
					    u_xlat4.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat3 = texture(_CameraDepthTexture, u_xlat4.xy);
					    u_xlat4.x = _ZBufferParams.z * u_xlat3.x + _ZBufferParams.w;
					    u_xlat4.x = float(1.0) / u_xlat4.x;
					    u_xlat4.x = u_xlat4.x + (-vs_TEXCOORD3.z);
					    u_xlat4.x = u_xlat4.x * _InvFade;
					    u_xlat4.x = clamp(u_xlat4.x, 0.0, 1.0);
					    u_xlat4.x = (-vs_COLOR0.w) * u_xlat4.x + 1.0;
					    u_xlat4.x = u_xlat4.x + _Cutout;
					    u_xlatb4 = u_xlat1.w>=u_xlat4.x;
					    u_xlat4.x = u_xlatb4 ? 1.0 : float(0.0);
					    u_xlat2.w = u_xlat4.x * vs_TEXCOORD4;
					    u_xlat1 = u_xlat2 + vec4(-1.0, -1.0, -1.0, -1.0);
					    u_xlat4.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 1.0;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat4.xyz + vec3(1.0, 1.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendMul2" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat0 = u_xlat0 * vs_COLOR0;
					    u_xlat0.w = u_xlat0.w;
					    u_xlat0.w = clamp(u_xlat0.w, 0.0, 1.0);
					    u_xlat1 = u_xlat0 + vec4(-0.5, -0.5, -0.5, -0.5);
					    SV_Target0 = u_xlat0.wwww * u_xlat1 + vec4(0.5, 0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat0 = u_xlat0 * vs_COLOR0;
					    u_xlat0.w = u_xlat0.w;
					    u_xlat0.w = clamp(u_xlat0.w, 0.0, 1.0);
					    u_xlat1 = u_xlat0 + vec4(-0.5, -0.5, -0.5, -0.5);
					    SV_Target0 = u_xlat0.wwww * u_xlat1 + vec4(0.5, 0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendMul2" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat0 = u_xlat0 * vs_COLOR0;
					    u_xlat0.w = u_xlat0.w;
					    u_xlat0.w = clamp(u_xlat0.w, 0.0, 1.0);
					    u_xlat1 = u_xlat0 + vec4(-0.5, -0.5, -0.5, -0.5);
					    SV_Target0 = u_xlat0.wwww * u_xlat1 + vec4(0.5, 0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat0 = u_xlat0 * vs_COLOR0;
					    u_xlat0.w = u_xlat0.w;
					    u_xlat0.w = clamp(u_xlat0.w, 0.0, 1.0);
					    u_xlat1 = u_xlat0 + vec4(-0.5, -0.5, -0.5, -0.5);
					    SV_Target0 = u_xlat0.wwww * u_xlat1 + vec4(0.5, 0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendMul2" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendMul2" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendMul2" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendMul2" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendMul2" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendMul2" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendMul2" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat0 = u_xlat0 * vs_COLOR0;
					    u_xlat0.w = u_xlat0.w;
					    u_xlat0.w = clamp(u_xlat0.w, 0.0, 1.0);
					    u_xlat1 = u_xlat0 + vec4(-0.5, -0.5, -0.5, -0.5);
					    SV_Target0 = u_xlat0.wwww * u_xlat1 + vec4(0.5, 0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat0 = u_xlat0 * vs_COLOR0;
					    u_xlat0.w = u_xlat0.w;
					    u_xlat0.w = clamp(u_xlat0.w, 0.0, 1.0);
					    u_xlat1 = u_xlat0 + vec4(-0.5, -0.5, -0.5, -0.5);
					    SV_Target0 = u_xlat0.wwww * u_xlat1 + vec4(0.5, 0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendMul2" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat0 = u_xlat0 * vs_COLOR0;
					    u_xlat0.w = u_xlat0.w;
					    u_xlat0.w = clamp(u_xlat0.w, 0.0, 1.0);
					    u_xlat1 = u_xlat0 + vec4(-0.5, -0.5, -0.5, -0.5);
					    SV_Target0 = u_xlat0.wwww * u_xlat1 + vec4(0.5, 0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat0 = u_xlat0 * vs_COLOR0;
					    u_xlat0.w = u_xlat0.w;
					    u_xlat0.w = clamp(u_xlat0.w, 0.0, 1.0);
					    u_xlat1 = u_xlat0 + vec4(-0.5, -0.5, -0.5, -0.5);
					    SV_Target0 = u_xlat0.wwww * u_xlat1 + vec4(0.5, 0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendMul2" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendMul2" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendMul2" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendMul2" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendMul2" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendMul2" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendMul2" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat6;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat0 = u_xlat0 * vs_COLOR0;
					    u_xlat6 = u_xlat0.w;
					    u_xlat6 = clamp(u_xlat6, 0.0, 1.0);
					    u_xlat0.w = u_xlat6 * vs_TEXCOORD4;
					    u_xlat1 = u_xlat0 + vec4(-0.5, -0.5, -0.5, -0.5);
					    SV_Target0 = u_xlat0.wwww * u_xlat1 + vec4(0.5, 0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat6;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat0 = u_xlat0 * vs_COLOR0;
					    u_xlat6 = u_xlat0.w;
					    u_xlat6 = clamp(u_xlat6, 0.0, 1.0);
					    u_xlat0.w = u_xlat6 * vs_TEXCOORD4;
					    u_xlat1 = u_xlat0 + vec4(-0.5, -0.5, -0.5, -0.5);
					    SV_Target0 = u_xlat0.wwww * u_xlat1 + vec4(0.5, 0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendMul2" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat6;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat0 = u_xlat0 * vs_COLOR0;
					    u_xlat6 = u_xlat0.w;
					    u_xlat6 = clamp(u_xlat6, 0.0, 1.0);
					    u_xlat0.w = u_xlat6 * vs_TEXCOORD4;
					    u_xlat1 = u_xlat0 + vec4(-0.5, -0.5, -0.5, -0.5);
					    SV_Target0 = u_xlat0.wwww * u_xlat1 + vec4(0.5, 0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat6;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat0 = u_xlat0 * vs_COLOR0;
					    u_xlat6 = u_xlat0.w;
					    u_xlat6 = clamp(u_xlat6, 0.0, 1.0);
					    u_xlat0.w = u_xlat6 * vs_TEXCOORD4;
					    u_xlat1 = u_xlat0 + vec4(-0.5, -0.5, -0.5, -0.5);
					    SV_Target0 = u_xlat0.wwww * u_xlat1 + vec4(0.5, 0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendMul2" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendMul2" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendMul2" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendMul2" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendMul2" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendMul2" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendMul2" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat6;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat0 = u_xlat0 * vs_COLOR0;
					    u_xlat6 = u_xlat0.w;
					    u_xlat6 = clamp(u_xlat6, 0.0, 1.0);
					    u_xlat0.w = u_xlat6 * vs_TEXCOORD4;
					    u_xlat1 = u_xlat0 + vec4(-0.5, -0.5, -0.5, -0.5);
					    SV_Target0 = u_xlat0.wwww * u_xlat1 + vec4(0.5, 0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat6;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat0 = u_xlat0 * vs_COLOR0;
					    u_xlat6 = u_xlat0.w;
					    u_xlat6 = clamp(u_xlat6, 0.0, 1.0);
					    u_xlat0.w = u_xlat6 * vs_TEXCOORD4;
					    u_xlat1 = u_xlat0 + vec4(-0.5, -0.5, -0.5, -0.5);
					    SV_Target0 = u_xlat0.wwww * u_xlat1 + vec4(0.5, 0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendMul2" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat6;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat0 = u_xlat0 * vs_COLOR0;
					    u_xlat6 = u_xlat0.w;
					    u_xlat6 = clamp(u_xlat6, 0.0, 1.0);
					    u_xlat0.w = u_xlat6 * vs_TEXCOORD4;
					    u_xlat1 = u_xlat0 + vec4(-0.5, -0.5, -0.5, -0.5);
					    SV_Target0 = u_xlat0.wwww * u_xlat1 + vec4(0.5, 0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat6;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat0 = u_xlat0 * vs_COLOR0;
					    u_xlat6 = u_xlat0.w;
					    u_xlat6 = clamp(u_xlat6, 0.0, 1.0);
					    u_xlat0.w = u_xlat6 * vs_TEXCOORD4;
					    u_xlat1 = u_xlat0 + vec4(-0.5, -0.5, -0.5, -0.5);
					    SV_Target0 = u_xlat0.wwww * u_xlat1 + vec4(0.5, 0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendMul2" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendMul2" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendMul2" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendMul2" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendMul2" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendMul2" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendMul2" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					bool u_xlatb1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1.x = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat0.w = u_xlat0.w * u_xlat1.x;
					    u_xlat0 = u_xlat0 * vs_COLOR0;
					    u_xlat0.w = u_xlat0.w;
					    u_xlat0.w = clamp(u_xlat0.w, 0.0, 1.0);
					    u_xlat1 = u_xlat0 + vec4(-0.5, -0.5, -0.5, -0.5);
					    SV_Target0 = u_xlat0.wwww * u_xlat1 + vec4(0.5, 0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					bool u_xlatb1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1.x = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat0.w = u_xlat0.w * u_xlat1.x;
					    u_xlat0 = u_xlat0 * vs_COLOR0;
					    u_xlat0.w = u_xlat0.w;
					    u_xlat0.w = clamp(u_xlat0.w, 0.0, 1.0);
					    u_xlat1 = u_xlat0 + vec4(-0.5, -0.5, -0.5, -0.5);
					    SV_Target0 = u_xlat0.wwww * u_xlat1 + vec4(0.5, 0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendMul2" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					bool u_xlatb1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1.x = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat0.w = u_xlat0.w * u_xlat1.x;
					    u_xlat0 = u_xlat0 * vs_COLOR0;
					    u_xlat0.w = u_xlat0.w;
					    u_xlat0.w = clamp(u_xlat0.w, 0.0, 1.0);
					    u_xlat1 = u_xlat0 + vec4(-0.5, -0.5, -0.5, -0.5);
					    SV_Target0 = u_xlat0.wwww * u_xlat1 + vec4(0.5, 0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					bool u_xlatb1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1.x = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat0.w = u_xlat0.w * u_xlat1.x;
					    u_xlat0 = u_xlat0 * vs_COLOR0;
					    u_xlat0.w = u_xlat0.w;
					    u_xlat0.w = clamp(u_xlat0.w, 0.0, 1.0);
					    u_xlat1 = u_xlat0 + vec4(-0.5, -0.5, -0.5, -0.5);
					    SV_Target0 = u_xlat0.wwww * u_xlat1 + vec4(0.5, 0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendMul2" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3.x;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3.x;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendMul2" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3.x;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3.x;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendMul2" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3.x;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3.x;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendMul2" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3.x;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3.x;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendMul2" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3.x;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3.x;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendMul2" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3.x;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3.x;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendMul2" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					bool u_xlatb1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1.x = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat0.w = u_xlat0.w * u_xlat1.x;
					    u_xlat0 = u_xlat0 * vs_COLOR0;
					    u_xlat0.w = u_xlat0.w;
					    u_xlat0.w = clamp(u_xlat0.w, 0.0, 1.0);
					    u_xlat1 = u_xlat0 + vec4(-0.5, -0.5, -0.5, -0.5);
					    SV_Target0 = u_xlat0.wwww * u_xlat1 + vec4(0.5, 0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					bool u_xlatb1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1.x = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat0.w = u_xlat0.w * u_xlat1.x;
					    u_xlat0 = u_xlat0 * vs_COLOR0;
					    u_xlat0.w = u_xlat0.w;
					    u_xlat0.w = clamp(u_xlat0.w, 0.0, 1.0);
					    u_xlat1 = u_xlat0 + vec4(-0.5, -0.5, -0.5, -0.5);
					    SV_Target0 = u_xlat0.wwww * u_xlat1 + vec4(0.5, 0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendMul2" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					bool u_xlatb1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1.x = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat0.w = u_xlat0.w * u_xlat1.x;
					    u_xlat0 = u_xlat0 * vs_COLOR0;
					    u_xlat0.w = u_xlat0.w;
					    u_xlat0.w = clamp(u_xlat0.w, 0.0, 1.0);
					    u_xlat1 = u_xlat0 + vec4(-0.5, -0.5, -0.5, -0.5);
					    SV_Target0 = u_xlat0.wwww * u_xlat1 + vec4(0.5, 0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					bool u_xlatb1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1.x = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat0.w = u_xlat0.w * u_xlat1.x;
					    u_xlat0 = u_xlat0 * vs_COLOR0;
					    u_xlat0.w = u_xlat0.w;
					    u_xlat0.w = clamp(u_xlat0.w, 0.0, 1.0);
					    u_xlat1 = u_xlat0 + vec4(-0.5, -0.5, -0.5, -0.5);
					    SV_Target0 = u_xlat0.wwww * u_xlat1 + vec4(0.5, 0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendMul2" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3.x;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3.x;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendMul2" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3.x;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3.x;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendMul2" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3.x;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3.x;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendMul2" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3.x;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3.x;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendMul2" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3.x;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3.x;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendMul2" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3.x;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3.x;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendMul2" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					bool u_xlatb1;
					float u_xlat6;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1.x = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat0.w = u_xlat0.w * u_xlat1.x;
					    u_xlat0 = u_xlat0 * vs_COLOR0;
					    u_xlat6 = u_xlat0.w;
					    u_xlat6 = clamp(u_xlat6, 0.0, 1.0);
					    u_xlat0.w = u_xlat6 * vs_TEXCOORD4;
					    u_xlat1 = u_xlat0 + vec4(-0.5, -0.5, -0.5, -0.5);
					    SV_Target0 = u_xlat0.wwww * u_xlat1 + vec4(0.5, 0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					bool u_xlatb1;
					float u_xlat6;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1.x = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat0.w = u_xlat0.w * u_xlat1.x;
					    u_xlat0 = u_xlat0 * vs_COLOR0;
					    u_xlat6 = u_xlat0.w;
					    u_xlat6 = clamp(u_xlat6, 0.0, 1.0);
					    u_xlat0.w = u_xlat6 * vs_TEXCOORD4;
					    u_xlat1 = u_xlat0 + vec4(-0.5, -0.5, -0.5, -0.5);
					    SV_Target0 = u_xlat0.wwww * u_xlat1 + vec4(0.5, 0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendMul2" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					bool u_xlatb1;
					float u_xlat6;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1.x = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat0.w = u_xlat0.w * u_xlat1.x;
					    u_xlat0 = u_xlat0 * vs_COLOR0;
					    u_xlat6 = u_xlat0.w;
					    u_xlat6 = clamp(u_xlat6, 0.0, 1.0);
					    u_xlat0.w = u_xlat6 * vs_TEXCOORD4;
					    u_xlat1 = u_xlat0 + vec4(-0.5, -0.5, -0.5, -0.5);
					    SV_Target0 = u_xlat0.wwww * u_xlat1 + vec4(0.5, 0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					bool u_xlatb1;
					float u_xlat6;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1.x = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat0.w = u_xlat0.w * u_xlat1.x;
					    u_xlat0 = u_xlat0 * vs_COLOR0;
					    u_xlat6 = u_xlat0.w;
					    u_xlat6 = clamp(u_xlat6, 0.0, 1.0);
					    u_xlat0.w = u_xlat6 * vs_TEXCOORD4;
					    u_xlat1 = u_xlat0 + vec4(-0.5, -0.5, -0.5, -0.5);
					    SV_Target0 = u_xlat0.wwww * u_xlat1 + vec4(0.5, 0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendMul2" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3.x;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3.x;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendMul2" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3.x;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3.x;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendMul2" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3.x;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3.x;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendMul2" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3.x;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3.x;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendMul2" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3.x;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3.x;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendMul2" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3.x;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3.x;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendMul2" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					bool u_xlatb1;
					float u_xlat6;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1.x = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat0.w = u_xlat0.w * u_xlat1.x;
					    u_xlat0 = u_xlat0 * vs_COLOR0;
					    u_xlat6 = u_xlat0.w;
					    u_xlat6 = clamp(u_xlat6, 0.0, 1.0);
					    u_xlat0.w = u_xlat6 * vs_TEXCOORD4;
					    u_xlat1 = u_xlat0 + vec4(-0.5, -0.5, -0.5, -0.5);
					    SV_Target0 = u_xlat0.wwww * u_xlat1 + vec4(0.5, 0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					bool u_xlatb1;
					float u_xlat6;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1.x = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat0.w = u_xlat0.w * u_xlat1.x;
					    u_xlat0 = u_xlat0 * vs_COLOR0;
					    u_xlat6 = u_xlat0.w;
					    u_xlat6 = clamp(u_xlat6, 0.0, 1.0);
					    u_xlat0.w = u_xlat6 * vs_TEXCOORD4;
					    u_xlat1 = u_xlat0 + vec4(-0.5, -0.5, -0.5, -0.5);
					    SV_Target0 = u_xlat0.wwww * u_xlat1 + vec4(0.5, 0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendMul2" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					bool u_xlatb1;
					float u_xlat6;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1.x = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat0.w = u_xlat0.w * u_xlat1.x;
					    u_xlat0 = u_xlat0 * vs_COLOR0;
					    u_xlat6 = u_xlat0.w;
					    u_xlat6 = clamp(u_xlat6, 0.0, 1.0);
					    u_xlat0.w = u_xlat6 * vs_TEXCOORD4;
					    u_xlat1 = u_xlat0 + vec4(-0.5, -0.5, -0.5, -0.5);
					    SV_Target0 = u_xlat0.wwww * u_xlat1 + vec4(0.5, 0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					bool u_xlatb1;
					float u_xlat6;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1.x = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat0.w = u_xlat0.w * u_xlat1.x;
					    u_xlat0 = u_xlat0 * vs_COLOR0;
					    u_xlat6 = u_xlat0.w;
					    u_xlat6 = clamp(u_xlat6, 0.0, 1.0);
					    u_xlat0.w = u_xlat6 * vs_TEXCOORD4;
					    u_xlat1 = u_xlat0 + vec4(-0.5, -0.5, -0.5, -0.5);
					    SV_Target0 = u_xlat0.wwww * u_xlat1 + vec4(0.5, 0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendMul2" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3.x;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3.x;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendMul2" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3.x;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3.x;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendMul2" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3.x;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3.x;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendMul2" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3.x;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3.x;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendMul2" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3.x;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3.x;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendMul2" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3.x;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3.x;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendMul2" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0.xyz = u_xlat0.xyz + u_xlat0.xyz;
					    u_xlat0.xyz = u_xlat0.xyz * _TintColor.xyz;
					    u_xlat1.xyz = u_xlat0.xyz * vs_COLOR0.xyz;
					    u_xlat0.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlatb0 = u_xlat0.w>=u_xlat0.x;
					    u_xlat1.w = u_xlatb0 ? 1.0 : float(0.0);
					    u_xlat0 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    SV_Target0 = u_xlat1.wwww * u_xlat0 + vec4(0.5, 0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0.xyz = u_xlat0.xyz + u_xlat0.xyz;
					    u_xlat0.xyz = u_xlat0.xyz * _TintColor.xyz;
					    u_xlat1.xyz = u_xlat0.xyz * vs_COLOR0.xyz;
					    u_xlat0.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlatb0 = u_xlat0.w>=u_xlat0.x;
					    u_xlat1.w = u_xlatb0 ? 1.0 : float(0.0);
					    u_xlat0 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    SV_Target0 = u_xlat1.wwww * u_xlat0 + vec4(0.5, 0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendMul2" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0.xyz = u_xlat0.xyz + u_xlat0.xyz;
					    u_xlat0.xyz = u_xlat0.xyz * _TintColor.xyz;
					    u_xlat1.xyz = u_xlat0.xyz * vs_COLOR0.xyz;
					    u_xlat0.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlatb0 = u_xlat0.w>=u_xlat0.x;
					    u_xlat1.w = u_xlatb0 ? 1.0 : float(0.0);
					    u_xlat0 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    SV_Target0 = u_xlat1.wwww * u_xlat0 + vec4(0.5, 0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0.xyz = u_xlat0.xyz + u_xlat0.xyz;
					    u_xlat0.xyz = u_xlat0.xyz * _TintColor.xyz;
					    u_xlat1.xyz = u_xlat0.xyz * vs_COLOR0.xyz;
					    u_xlat0.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlatb0 = u_xlat0.w>=u_xlat0.x;
					    u_xlat1.w = u_xlatb0 ? 1.0 : float(0.0);
					    u_xlat0 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    SV_Target0 = u_xlat1.wwww * u_xlat0 + vec4(0.5, 0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendMul2" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat2.w = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1 = u_xlat2 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat2.w = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1 = u_xlat2 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendMul2" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat2.w = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1 = u_xlat2 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat2.w = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1 = u_xlat2 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendMul2" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat2.w = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1 = u_xlat2 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat2.w = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1 = u_xlat2 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendMul2" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat2.w = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1 = u_xlat2 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat2.w = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1 = u_xlat2 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendMul2" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat2.w = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1 = u_xlat2 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat2.w = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1 = u_xlat2 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendMul2" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat2.w = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1 = u_xlat2 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat2.w = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1 = u_xlat2 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendMul2" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0.xyz = u_xlat0.xyz + u_xlat0.xyz;
					    u_xlat0.xyz = u_xlat0.xyz * _TintColor.xyz;
					    u_xlat1.xyz = u_xlat0.xyz * vs_COLOR0.xyz;
					    u_xlat0.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlatb0 = u_xlat0.w>=u_xlat0.x;
					    u_xlat1.w = u_xlatb0 ? 1.0 : float(0.0);
					    u_xlat0 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    SV_Target0 = u_xlat1.wwww * u_xlat0 + vec4(0.5, 0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0.xyz = u_xlat0.xyz + u_xlat0.xyz;
					    u_xlat0.xyz = u_xlat0.xyz * _TintColor.xyz;
					    u_xlat1.xyz = u_xlat0.xyz * vs_COLOR0.xyz;
					    u_xlat0.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlatb0 = u_xlat0.w>=u_xlat0.x;
					    u_xlat1.w = u_xlatb0 ? 1.0 : float(0.0);
					    u_xlat0 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    SV_Target0 = u_xlat1.wwww * u_xlat0 + vec4(0.5, 0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendMul2" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0.xyz = u_xlat0.xyz + u_xlat0.xyz;
					    u_xlat0.xyz = u_xlat0.xyz * _TintColor.xyz;
					    u_xlat1.xyz = u_xlat0.xyz * vs_COLOR0.xyz;
					    u_xlat0.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlatb0 = u_xlat0.w>=u_xlat0.x;
					    u_xlat1.w = u_xlatb0 ? 1.0 : float(0.0);
					    u_xlat0 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    SV_Target0 = u_xlat1.wwww * u_xlat0 + vec4(0.5, 0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0.xyz = u_xlat0.xyz + u_xlat0.xyz;
					    u_xlat0.xyz = u_xlat0.xyz * _TintColor.xyz;
					    u_xlat1.xyz = u_xlat0.xyz * vs_COLOR0.xyz;
					    u_xlat0.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlatb0 = u_xlat0.w>=u_xlat0.x;
					    u_xlat1.w = u_xlatb0 ? 1.0 : float(0.0);
					    u_xlat0 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    SV_Target0 = u_xlat1.wwww * u_xlat0 + vec4(0.5, 0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendMul2" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat2.w = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1 = u_xlat2 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat2.w = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1 = u_xlat2 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendMul2" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat2.w = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1 = u_xlat2 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat2.w = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1 = u_xlat2 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendMul2" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat2.w = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1 = u_xlat2 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat2.w = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1 = u_xlat2 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendMul2" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat2.w = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1 = u_xlat2 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat2.w = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1 = u_xlat2 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendMul2" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat2.w = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1 = u_xlat2 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat2.w = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1 = u_xlat2 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendMul2" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat2.w = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1 = u_xlat2 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat2.w = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1 = u_xlat2 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendMul2" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0.xyz = u_xlat0.xyz + u_xlat0.xyz;
					    u_xlat0.xyz = u_xlat0.xyz * _TintColor.xyz;
					    u_xlat1.xyz = u_xlat0.xyz * vs_COLOR0.xyz;
					    u_xlat0.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlatb0 = u_xlat0.w>=u_xlat0.x;
					    u_xlat0.x = u_xlatb0 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat0.x * vs_TEXCOORD4;
					    u_xlat0 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    SV_Target0 = u_xlat1.wwww * u_xlat0 + vec4(0.5, 0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0.xyz = u_xlat0.xyz + u_xlat0.xyz;
					    u_xlat0.xyz = u_xlat0.xyz * _TintColor.xyz;
					    u_xlat1.xyz = u_xlat0.xyz * vs_COLOR0.xyz;
					    u_xlat0.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlatb0 = u_xlat0.w>=u_xlat0.x;
					    u_xlat0.x = u_xlatb0 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat0.x * vs_TEXCOORD4;
					    u_xlat0 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    SV_Target0 = u_xlat1.wwww * u_xlat0 + vec4(0.5, 0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendMul2" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0.xyz = u_xlat0.xyz + u_xlat0.xyz;
					    u_xlat0.xyz = u_xlat0.xyz * _TintColor.xyz;
					    u_xlat1.xyz = u_xlat0.xyz * vs_COLOR0.xyz;
					    u_xlat0.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlatb0 = u_xlat0.w>=u_xlat0.x;
					    u_xlat0.x = u_xlatb0 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat0.x * vs_TEXCOORD4;
					    u_xlat0 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    SV_Target0 = u_xlat1.wwww * u_xlat0 + vec4(0.5, 0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0.xyz = u_xlat0.xyz + u_xlat0.xyz;
					    u_xlat0.xyz = u_xlat0.xyz * _TintColor.xyz;
					    u_xlat1.xyz = u_xlat0.xyz * vs_COLOR0.xyz;
					    u_xlat0.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlatb0 = u_xlat0.w>=u_xlat0.x;
					    u_xlat0.x = u_xlatb0 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat0.x * vs_TEXCOORD4;
					    u_xlat0 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    SV_Target0 = u_xlat1.wwww * u_xlat0 + vec4(0.5, 0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendMul2" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat2.w = u_xlat3.x * vs_TEXCOORD4;
					    u_xlat1 = u_xlat2 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat2.w = u_xlat3.x * vs_TEXCOORD4;
					    u_xlat1 = u_xlat2 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendMul2" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat2.w = u_xlat3.x * vs_TEXCOORD4;
					    u_xlat1 = u_xlat2 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat2.w = u_xlat3.x * vs_TEXCOORD4;
					    u_xlat1 = u_xlat2 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendMul2" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat2.w = u_xlat3.x * vs_TEXCOORD4;
					    u_xlat1 = u_xlat2 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat2.w = u_xlat3.x * vs_TEXCOORD4;
					    u_xlat1 = u_xlat2 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendMul2" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat2.w = u_xlat3.x * vs_TEXCOORD4;
					    u_xlat1 = u_xlat2 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat2.w = u_xlat3.x * vs_TEXCOORD4;
					    u_xlat1 = u_xlat2 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendMul2" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat2.w = u_xlat3.x * vs_TEXCOORD4;
					    u_xlat1 = u_xlat2 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat2.w = u_xlat3.x * vs_TEXCOORD4;
					    u_xlat1 = u_xlat2 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendMul2" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat2.w = u_xlat3.x * vs_TEXCOORD4;
					    u_xlat1 = u_xlat2 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat2.w = u_xlat3.x * vs_TEXCOORD4;
					    u_xlat1 = u_xlat2 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendMul2" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0.xyz = u_xlat0.xyz + u_xlat0.xyz;
					    u_xlat0.xyz = u_xlat0.xyz * _TintColor.xyz;
					    u_xlat1.xyz = u_xlat0.xyz * vs_COLOR0.xyz;
					    u_xlat0.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlatb0 = u_xlat0.w>=u_xlat0.x;
					    u_xlat0.x = u_xlatb0 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat0.x * vs_TEXCOORD4;
					    u_xlat0 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    SV_Target0 = u_xlat1.wwww * u_xlat0 + vec4(0.5, 0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0.xyz = u_xlat0.xyz + u_xlat0.xyz;
					    u_xlat0.xyz = u_xlat0.xyz * _TintColor.xyz;
					    u_xlat1.xyz = u_xlat0.xyz * vs_COLOR0.xyz;
					    u_xlat0.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlatb0 = u_xlat0.w>=u_xlat0.x;
					    u_xlat0.x = u_xlatb0 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat0.x * vs_TEXCOORD4;
					    u_xlat0 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    SV_Target0 = u_xlat1.wwww * u_xlat0 + vec4(0.5, 0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendMul2" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0.xyz = u_xlat0.xyz + u_xlat0.xyz;
					    u_xlat0.xyz = u_xlat0.xyz * _TintColor.xyz;
					    u_xlat1.xyz = u_xlat0.xyz * vs_COLOR0.xyz;
					    u_xlat0.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlatb0 = u_xlat0.w>=u_xlat0.x;
					    u_xlat0.x = u_xlatb0 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat0.x * vs_TEXCOORD4;
					    u_xlat0 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    SV_Target0 = u_xlat1.wwww * u_xlat0 + vec4(0.5, 0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0.xyz = u_xlat0.xyz + u_xlat0.xyz;
					    u_xlat0.xyz = u_xlat0.xyz * _TintColor.xyz;
					    u_xlat1.xyz = u_xlat0.xyz * vs_COLOR0.xyz;
					    u_xlat0.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlatb0 = u_xlat0.w>=u_xlat0.x;
					    u_xlat0.x = u_xlatb0 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat0.x * vs_TEXCOORD4;
					    u_xlat0 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    SV_Target0 = u_xlat1.wwww * u_xlat0 + vec4(0.5, 0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendMul2" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat2.w = u_xlat3.x * vs_TEXCOORD4;
					    u_xlat1 = u_xlat2 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat2.w = u_xlat3.x * vs_TEXCOORD4;
					    u_xlat1 = u_xlat2 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendMul2" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat2.w = u_xlat3.x * vs_TEXCOORD4;
					    u_xlat1 = u_xlat2 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat2.w = u_xlat3.x * vs_TEXCOORD4;
					    u_xlat1 = u_xlat2 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendMul2" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat2.w = u_xlat3.x * vs_TEXCOORD4;
					    u_xlat1 = u_xlat2 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat2.w = u_xlat3.x * vs_TEXCOORD4;
					    u_xlat1 = u_xlat2 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendMul2" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat2.w = u_xlat3.x * vs_TEXCOORD4;
					    u_xlat1 = u_xlat2 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat2.w = u_xlat3.x * vs_TEXCOORD4;
					    u_xlat1 = u_xlat2 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendMul2" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat2.w = u_xlat3.x * vs_TEXCOORD4;
					    u_xlat1 = u_xlat2 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat2.w = u_xlat3.x * vs_TEXCOORD4;
					    u_xlat1 = u_xlat2 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendMul2" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat2.w = u_xlat3.x * vs_TEXCOORD4;
					    u_xlat1 = u_xlat2 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat2.w = u_xlat3.x * vs_TEXCOORD4;
					    u_xlat1 = u_xlat2 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendMul2" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat0 = u_xlat0 * vs_COLOR0;
					    u_xlat0.w = u_xlat0.w;
					    u_xlat0.w = clamp(u_xlat0.w, 0.0, 1.0);
					    u_xlat1 = u_xlat0 + vec4(-0.5, -0.5, -0.5, -0.5);
					    SV_Target0 = u_xlat0.wwww * u_xlat1 + vec4(0.5, 0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat0 = u_xlat0 * vs_COLOR0;
					    u_xlat0.w = u_xlat0.w;
					    u_xlat0.w = clamp(u_xlat0.w, 0.0, 1.0);
					    u_xlat1 = u_xlat0 + vec4(-0.5, -0.5, -0.5, -0.5);
					    SV_Target0 = u_xlat0.wwww * u_xlat1 + vec4(0.5, 0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendMul2" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[7];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat0.w = u_xlat0.w;
					    u_xlat0.w = clamp(u_xlat0.w, 0.0, 1.0);
					    u_xlat1 = u_xlat0 + vec4(-0.5, -0.5, -0.5, -0.5);
					    SV_Target0 = u_xlat0.wwww * u_xlat1 + vec4(0.5, 0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[6];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat0.w = u_xlat0.w;
					    u_xlat0.w = clamp(u_xlat0.w, 0.0, 1.0);
					    u_xlat1 = u_xlat0 + vec4(-0.5, -0.5, -0.5, -0.5);
					    SV_Target0 = u_xlat0.wwww * u_xlat1 + vec4(0.5, 0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendMul2" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendMul2" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat3.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat1 = texture(_CameraDepthTexture, u_xlat3.xy);
					    u_xlat3.x = _ZBufferParams.z * u_xlat1.x + _ZBufferParams.w;
					    u_xlat3.x = float(1.0) / u_xlat3.x;
					    u_xlat3.x = u_xlat3.x + (-vs_TEXCOORD3.z);
					    u_xlat3.x = u_xlat3.x * _InvFade;
					    u_xlat3.x = clamp(u_xlat3.x, 0.0, 1.0);
					    u_xlat1.w = u_xlat3.x * vs_COLOR0.w;
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2 = u_xlat2 + u_xlat2;
					    u_xlat2 = u_xlat2 * _TintColor;
					    u_xlat1.xyz = vs_COLOR0.xyz;
					    u_xlat1 = u_xlat1 * u_xlat2;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat3.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat1 = texture(_CameraDepthTexture, u_xlat3.xy);
					    u_xlat3.x = _ZBufferParams.z * u_xlat1.x + _ZBufferParams.w;
					    u_xlat3.x = float(1.0) / u_xlat3.x;
					    u_xlat3.x = u_xlat3.x + (-vs_TEXCOORD3.z);
					    u_xlat3.x = u_xlat3.x * _InvFade;
					    u_xlat3.x = clamp(u_xlat3.x, 0.0, 1.0);
					    u_xlat1.w = u_xlat3.x * vs_COLOR0.w;
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2 = u_xlat2 + u_xlat2;
					    u_xlat2 = u_xlat2 * _TintColor;
					    u_xlat1.xyz = vs_COLOR0.xyz;
					    u_xlat1 = u_xlat1 * u_xlat2;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendMul2" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendMul2" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat3.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat1 = texture(_CameraDepthTexture, u_xlat3.xy);
					    u_xlat3.x = _ZBufferParams.z * u_xlat1.x + _ZBufferParams.w;
					    u_xlat3.x = float(1.0) / u_xlat3.x;
					    u_xlat3.x = u_xlat3.x + (-vs_TEXCOORD3.z);
					    u_xlat3.x = u_xlat3.x * _InvFade;
					    u_xlat3.x = clamp(u_xlat3.x, 0.0, 1.0);
					    u_xlat1.w = u_xlat3.x * vs_COLOR0.w;
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2 = u_xlat2 + u_xlat2;
					    u_xlat2 = u_xlat2 * _TintColor;
					    u_xlat1.xyz = vs_COLOR0.xyz;
					    u_xlat1 = u_xlat1 * u_xlat2;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat3.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat1 = texture(_CameraDepthTexture, u_xlat3.xy);
					    u_xlat3.x = _ZBufferParams.z * u_xlat1.x + _ZBufferParams.w;
					    u_xlat3.x = float(1.0) / u_xlat3.x;
					    u_xlat3.x = u_xlat3.x + (-vs_TEXCOORD3.z);
					    u_xlat3.x = u_xlat3.x * _InvFade;
					    u_xlat3.x = clamp(u_xlat3.x, 0.0, 1.0);
					    u_xlat1.w = u_xlat3.x * vs_COLOR0.w;
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2 = u_xlat2 + u_xlat2;
					    u_xlat2 = u_xlat2 * _TintColor;
					    u_xlat1.xyz = vs_COLOR0.xyz;
					    u_xlat1 = u_xlat1 * u_xlat2;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendMul2" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendMul2" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat3.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat1 = texture(_CameraDepthTexture, u_xlat3.xy);
					    u_xlat3.x = _ZBufferParams.z * u_xlat1.x + _ZBufferParams.w;
					    u_xlat3.x = float(1.0) / u_xlat3.x;
					    u_xlat3.x = u_xlat3.x + (-vs_TEXCOORD3.z);
					    u_xlat3.x = u_xlat3.x * _InvFade;
					    u_xlat3.x = clamp(u_xlat3.x, 0.0, 1.0);
					    u_xlat1.w = u_xlat3.x * vs_COLOR0.w;
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2 = u_xlat2 + u_xlat2;
					    u_xlat2 = u_xlat2 * _TintColor;
					    u_xlat1.xyz = vs_COLOR0.xyz;
					    u_xlat1 = u_xlat1 * u_xlat2;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat3.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat1 = texture(_CameraDepthTexture, u_xlat3.xy);
					    u_xlat3.x = _ZBufferParams.z * u_xlat1.x + _ZBufferParams.w;
					    u_xlat3.x = float(1.0) / u_xlat3.x;
					    u_xlat3.x = u_xlat3.x + (-vs_TEXCOORD3.z);
					    u_xlat3.x = u_xlat3.x * _InvFade;
					    u_xlat3.x = clamp(u_xlat3.x, 0.0, 1.0);
					    u_xlat1.w = u_xlat3.x * vs_COLOR0.w;
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2 = u_xlat2 + u_xlat2;
					    u_xlat2 = u_xlat2 * _TintColor;
					    u_xlat1.xyz = vs_COLOR0.xyz;
					    u_xlat1 = u_xlat1 * u_xlat2;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendMul2" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[7];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat0.w = u_xlat0.w;
					    u_xlat0.w = clamp(u_xlat0.w, 0.0, 1.0);
					    u_xlat1 = u_xlat0 + vec4(-0.5, -0.5, -0.5, -0.5);
					    SV_Target0 = u_xlat0.wwww * u_xlat1 + vec4(0.5, 0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[6];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat0.w = u_xlat0.w;
					    u_xlat0.w = clamp(u_xlat0.w, 0.0, 1.0);
					    u_xlat1 = u_xlat0 + vec4(-0.5, -0.5, -0.5, -0.5);
					    SV_Target0 = u_xlat0.wwww * u_xlat1 + vec4(0.5, 0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendMul2" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[7];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat0.w = u_xlat0.w;
					    u_xlat0.w = clamp(u_xlat0.w, 0.0, 1.0);
					    u_xlat1 = u_xlat0 + vec4(-0.5, -0.5, -0.5, -0.5);
					    SV_Target0 = u_xlat0.wwww * u_xlat1 + vec4(0.5, 0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[6];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat0.w = u_xlat0.w;
					    u_xlat0.w = clamp(u_xlat0.w, 0.0, 1.0);
					    u_xlat1 = u_xlat0 + vec4(-0.5, -0.5, -0.5, -0.5);
					    SV_Target0 = u_xlat0.wwww * u_xlat1 + vec4(0.5, 0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendMul2" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat3.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat1 = texture(_CameraDepthTexture, u_xlat3.xy);
					    u_xlat3.x = _ZBufferParams.z * u_xlat1.x + _ZBufferParams.w;
					    u_xlat3.x = float(1.0) / u_xlat3.x;
					    u_xlat3.x = u_xlat3.x + (-vs_TEXCOORD3.z);
					    u_xlat3.x = u_xlat3.x * _InvFade;
					    u_xlat3.x = clamp(u_xlat3.x, 0.0, 1.0);
					    u_xlat1.w = u_xlat3.x * vs_COLOR0.w;
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2 = u_xlat2 + u_xlat2;
					    u_xlat2 = u_xlat2 * _TintColor;
					    u_xlat1.xyz = vs_COLOR0.xyz;
					    u_xlat1 = u_xlat1 * u_xlat2;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat3.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat1 = texture(_CameraDepthTexture, u_xlat3.xy);
					    u_xlat3.x = _ZBufferParams.z * u_xlat1.x + _ZBufferParams.w;
					    u_xlat3.x = float(1.0) / u_xlat3.x;
					    u_xlat3.x = u_xlat3.x + (-vs_TEXCOORD3.z);
					    u_xlat3.x = u_xlat3.x * _InvFade;
					    u_xlat3.x = clamp(u_xlat3.x, 0.0, 1.0);
					    u_xlat1.w = u_xlat3.x * vs_COLOR0.w;
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2 = u_xlat2 + u_xlat2;
					    u_xlat2 = u_xlat2 * _TintColor;
					    u_xlat1.xyz = vs_COLOR0.xyz;
					    u_xlat1 = u_xlat1 * u_xlat2;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendMul2" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat3.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat1 = texture(_CameraDepthTexture, u_xlat3.xy);
					    u_xlat3.x = _ZBufferParams.z * u_xlat1.x + _ZBufferParams.w;
					    u_xlat3.x = float(1.0) / u_xlat3.x;
					    u_xlat3.x = u_xlat3.x + (-vs_TEXCOORD3.z);
					    u_xlat3.x = u_xlat3.x * _InvFade;
					    u_xlat3.x = clamp(u_xlat3.x, 0.0, 1.0);
					    u_xlat1.w = u_xlat3.x * vs_COLOR0.w;
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2 = u_xlat2 + u_xlat2;
					    u_xlat2 = u_xlat2 * _TintColor;
					    u_xlat1.xyz = vs_COLOR0.xyz;
					    u_xlat1 = u_xlat1 * u_xlat2;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat3.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat1 = texture(_CameraDepthTexture, u_xlat3.xy);
					    u_xlat3.x = _ZBufferParams.z * u_xlat1.x + _ZBufferParams.w;
					    u_xlat3.x = float(1.0) / u_xlat3.x;
					    u_xlat3.x = u_xlat3.x + (-vs_TEXCOORD3.z);
					    u_xlat3.x = u_xlat3.x * _InvFade;
					    u_xlat3.x = clamp(u_xlat3.x, 0.0, 1.0);
					    u_xlat1.w = u_xlat3.x * vs_COLOR0.w;
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2 = u_xlat2 + u_xlat2;
					    u_xlat2 = u_xlat2 * _TintColor;
					    u_xlat1.xyz = vs_COLOR0.xyz;
					    u_xlat1 = u_xlat1 * u_xlat2;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendMul2" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat3.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat1 = texture(_CameraDepthTexture, u_xlat3.xy);
					    u_xlat3.x = _ZBufferParams.z * u_xlat1.x + _ZBufferParams.w;
					    u_xlat3.x = float(1.0) / u_xlat3.x;
					    u_xlat3.x = u_xlat3.x + (-vs_TEXCOORD3.z);
					    u_xlat3.x = u_xlat3.x * _InvFade;
					    u_xlat3.x = clamp(u_xlat3.x, 0.0, 1.0);
					    u_xlat1.w = u_xlat3.x * vs_COLOR0.w;
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2 = u_xlat2 + u_xlat2;
					    u_xlat2 = u_xlat2 * _TintColor;
					    u_xlat1.xyz = vs_COLOR0.xyz;
					    u_xlat1 = u_xlat1 * u_xlat2;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat3.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat1 = texture(_CameraDepthTexture, u_xlat3.xy);
					    u_xlat3.x = _ZBufferParams.z * u_xlat1.x + _ZBufferParams.w;
					    u_xlat3.x = float(1.0) / u_xlat3.x;
					    u_xlat3.x = u_xlat3.x + (-vs_TEXCOORD3.z);
					    u_xlat3.x = u_xlat3.x * _InvFade;
					    u_xlat3.x = clamp(u_xlat3.x, 0.0, 1.0);
					    u_xlat1.w = u_xlat3.x * vs_COLOR0.w;
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2 = u_xlat2 + u_xlat2;
					    u_xlat2 = u_xlat2 * _TintColor;
					    u_xlat1.xyz = vs_COLOR0.xyz;
					    u_xlat1 = u_xlat1 * u_xlat2;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendMul2" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat3.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat1 = texture(_CameraDepthTexture, u_xlat3.xy);
					    u_xlat3.x = _ZBufferParams.z * u_xlat1.x + _ZBufferParams.w;
					    u_xlat3.x = float(1.0) / u_xlat3.x;
					    u_xlat3.x = u_xlat3.x + (-vs_TEXCOORD3.z);
					    u_xlat3.x = u_xlat3.x * _InvFade;
					    u_xlat3.x = clamp(u_xlat3.x, 0.0, 1.0);
					    u_xlat1.w = u_xlat3.x * vs_COLOR0.w;
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2 = u_xlat2 + u_xlat2;
					    u_xlat2 = u_xlat2 * _TintColor;
					    u_xlat1.xyz = vs_COLOR0.xyz;
					    u_xlat1 = u_xlat1 * u_xlat2;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat3.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat1 = texture(_CameraDepthTexture, u_xlat3.xy);
					    u_xlat3.x = _ZBufferParams.z * u_xlat1.x + _ZBufferParams.w;
					    u_xlat3.x = float(1.0) / u_xlat3.x;
					    u_xlat3.x = u_xlat3.x + (-vs_TEXCOORD3.z);
					    u_xlat3.x = u_xlat3.x * _InvFade;
					    u_xlat3.x = clamp(u_xlat3.x, 0.0, 1.0);
					    u_xlat1.w = u_xlat3.x * vs_COLOR0.w;
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2 = u_xlat2 + u_xlat2;
					    u_xlat2 = u_xlat2 * _TintColor;
					    u_xlat1.xyz = vs_COLOR0.xyz;
					    u_xlat1 = u_xlat1 * u_xlat2;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendMul2" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat3.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat1 = texture(_CameraDepthTexture, u_xlat3.xy);
					    u_xlat3.x = _ZBufferParams.z * u_xlat1.x + _ZBufferParams.w;
					    u_xlat3.x = float(1.0) / u_xlat3.x;
					    u_xlat3.x = u_xlat3.x + (-vs_TEXCOORD3.z);
					    u_xlat3.x = u_xlat3.x * _InvFade;
					    u_xlat3.x = clamp(u_xlat3.x, 0.0, 1.0);
					    u_xlat1.w = u_xlat3.x * vs_COLOR0.w;
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2 = u_xlat2 + u_xlat2;
					    u_xlat2 = u_xlat2 * _TintColor;
					    u_xlat1.xyz = vs_COLOR0.xyz;
					    u_xlat1 = u_xlat1 * u_xlat2;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat3.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat1 = texture(_CameraDepthTexture, u_xlat3.xy);
					    u_xlat3.x = _ZBufferParams.z * u_xlat1.x + _ZBufferParams.w;
					    u_xlat3.x = float(1.0) / u_xlat3.x;
					    u_xlat3.x = u_xlat3.x + (-vs_TEXCOORD3.z);
					    u_xlat3.x = u_xlat3.x * _InvFade;
					    u_xlat3.x = clamp(u_xlat3.x, 0.0, 1.0);
					    u_xlat1.w = u_xlat3.x * vs_COLOR0.w;
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2 = u_xlat2 + u_xlat2;
					    u_xlat2 = u_xlat2 * _TintColor;
					    u_xlat1.xyz = vs_COLOR0.xyz;
					    u_xlat1 = u_xlat1 * u_xlat2;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendMul2" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat3.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat1 = texture(_CameraDepthTexture, u_xlat3.xy);
					    u_xlat3.x = _ZBufferParams.z * u_xlat1.x + _ZBufferParams.w;
					    u_xlat3.x = float(1.0) / u_xlat3.x;
					    u_xlat3.x = u_xlat3.x + (-vs_TEXCOORD3.z);
					    u_xlat3.x = u_xlat3.x * _InvFade;
					    u_xlat3.x = clamp(u_xlat3.x, 0.0, 1.0);
					    u_xlat1.w = u_xlat3.x * vs_COLOR0.w;
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2 = u_xlat2 + u_xlat2;
					    u_xlat2 = u_xlat2 * _TintColor;
					    u_xlat1.xyz = vs_COLOR0.xyz;
					    u_xlat1 = u_xlat1 * u_xlat2;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat3.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat1 = texture(_CameraDepthTexture, u_xlat3.xy);
					    u_xlat3.x = _ZBufferParams.z * u_xlat1.x + _ZBufferParams.w;
					    u_xlat3.x = float(1.0) / u_xlat3.x;
					    u_xlat3.x = u_xlat3.x + (-vs_TEXCOORD3.z);
					    u_xlat3.x = u_xlat3.x * _InvFade;
					    u_xlat3.x = clamp(u_xlat3.x, 0.0, 1.0);
					    u_xlat1.w = u_xlat3.x * vs_COLOR0.w;
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2 = u_xlat2 + u_xlat2;
					    u_xlat2 = u_xlat2 * _TintColor;
					    u_xlat1.xyz = vs_COLOR0.xyz;
					    u_xlat1 = u_xlat1 * u_xlat2;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendMul2" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat6;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat0 = u_xlat0 * vs_COLOR0;
					    u_xlat6 = u_xlat0.w;
					    u_xlat6 = clamp(u_xlat6, 0.0, 1.0);
					    u_xlat0.w = u_xlat6 * vs_TEXCOORD4;
					    u_xlat1 = u_xlat0 + vec4(-0.5, -0.5, -0.5, -0.5);
					    SV_Target0 = u_xlat0.wwww * u_xlat1 + vec4(0.5, 0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat6;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat0 = u_xlat0 * vs_COLOR0;
					    u_xlat6 = u_xlat0.w;
					    u_xlat6 = clamp(u_xlat6, 0.0, 1.0);
					    u_xlat0.w = u_xlat6 * vs_TEXCOORD4;
					    u_xlat1 = u_xlat0 + vec4(-0.5, -0.5, -0.5, -0.5);
					    SV_Target0 = u_xlat0.wwww * u_xlat1 + vec4(0.5, 0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendMul2" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[7];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat6;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat6 = u_xlat0.w;
					    u_xlat6 = clamp(u_xlat6, 0.0, 1.0);
					    u_xlat0.w = u_xlat6 * vs_TEXCOORD4;
					    u_xlat1 = u_xlat0 + vec4(-0.5, -0.5, -0.5, -0.5);
					    SV_Target0 = u_xlat0.wwww * u_xlat1 + vec4(0.5, 0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[6];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat6;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat6 = u_xlat0.w;
					    u_xlat6 = clamp(u_xlat6, 0.0, 1.0);
					    u_xlat0.w = u_xlat6 * vs_TEXCOORD4;
					    u_xlat1 = u_xlat0 + vec4(-0.5, -0.5, -0.5, -0.5);
					    SV_Target0 = u_xlat0.wwww * u_xlat1 + vec4(0.5, 0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendMul2" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendMul2" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat6;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat6 = u_xlat0.w;
					    u_xlat6 = clamp(u_xlat6, 0.0, 1.0);
					    u_xlat0.w = u_xlat6 * vs_TEXCOORD4;
					    u_xlat1 = u_xlat0 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat0.xyz = u_xlat0.www * u_xlat1.xyz;
					    SV_Target0.w = u_xlat0.w * u_xlat1.w + 0.5;
					    u_xlat6 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat6 = (-u_xlat6) + 1.0;
					    u_xlat6 = u_xlat6 * _ProjectionParams.z;
					    u_xlat6 = max(u_xlat6, 0.0);
					    u_xlat6 = u_xlat6 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat6 = clamp(u_xlat6, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat6) * u_xlat0.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat6;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat6 = u_xlat0.w;
					    u_xlat6 = clamp(u_xlat6, 0.0, 1.0);
					    u_xlat0.w = u_xlat6 * vs_TEXCOORD4;
					    u_xlat1 = u_xlat0 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat0.xyz = u_xlat0.www * u_xlat1.xyz;
					    SV_Target0.w = u_xlat0.w * u_xlat1.w + 0.5;
					    u_xlat6 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat6 = (-u_xlat6) + 1.0;
					    u_xlat6 = u_xlat6 * _ProjectionParams.z;
					    u_xlat6 = max(u_xlat6, 0.0);
					    u_xlat6 = u_xlat6 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat6 = clamp(u_xlat6, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat6) * u_xlat0.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendMul2" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendMul2" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat3.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat1 = texture(_CameraDepthTexture, u_xlat3.xy);
					    u_xlat3.x = _ZBufferParams.z * u_xlat1.x + _ZBufferParams.w;
					    u_xlat3.x = float(1.0) / u_xlat3.x;
					    u_xlat3.x = u_xlat3.x + (-vs_TEXCOORD3.z);
					    u_xlat3.x = u_xlat3.x * _InvFade;
					    u_xlat3.x = clamp(u_xlat3.x, 0.0, 1.0);
					    u_xlat1.w = u_xlat3.x * vs_COLOR0.w;
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2 = u_xlat2 + u_xlat2;
					    u_xlat2 = u_xlat2 * _TintColor;
					    u_xlat1.xyz = vs_COLOR0.xyz;
					    u_xlat1 = u_xlat1 * u_xlat2;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat3.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat1 = texture(_CameraDepthTexture, u_xlat3.xy);
					    u_xlat3.x = _ZBufferParams.z * u_xlat1.x + _ZBufferParams.w;
					    u_xlat3.x = float(1.0) / u_xlat3.x;
					    u_xlat3.x = u_xlat3.x + (-vs_TEXCOORD3.z);
					    u_xlat3.x = u_xlat3.x * _InvFade;
					    u_xlat3.x = clamp(u_xlat3.x, 0.0, 1.0);
					    u_xlat1.w = u_xlat3.x * vs_COLOR0.w;
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2 = u_xlat2 + u_xlat2;
					    u_xlat2 = u_xlat2 * _TintColor;
					    u_xlat1.xyz = vs_COLOR0.xyz;
					    u_xlat1 = u_xlat1 * u_xlat2;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendMul2" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendMul2" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat3.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat1 = texture(_CameraDepthTexture, u_xlat3.xy);
					    u_xlat3.x = _ZBufferParams.z * u_xlat1.x + _ZBufferParams.w;
					    u_xlat3.x = float(1.0) / u_xlat3.x;
					    u_xlat3.x = u_xlat3.x + (-vs_TEXCOORD3.z);
					    u_xlat3.x = u_xlat3.x * _InvFade;
					    u_xlat3.x = clamp(u_xlat3.x, 0.0, 1.0);
					    u_xlat1.w = u_xlat3.x * vs_COLOR0.w;
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2 = u_xlat2 + u_xlat2;
					    u_xlat2 = u_xlat2 * _TintColor;
					    u_xlat1.xyz = vs_COLOR0.xyz;
					    u_xlat1 = u_xlat1 * u_xlat2;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat3.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat1 = texture(_CameraDepthTexture, u_xlat3.xy);
					    u_xlat3.x = _ZBufferParams.z * u_xlat1.x + _ZBufferParams.w;
					    u_xlat3.x = float(1.0) / u_xlat3.x;
					    u_xlat3.x = u_xlat3.x + (-vs_TEXCOORD3.z);
					    u_xlat3.x = u_xlat3.x * _InvFade;
					    u_xlat3.x = clamp(u_xlat3.x, 0.0, 1.0);
					    u_xlat1.w = u_xlat3.x * vs_COLOR0.w;
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2 = u_xlat2 + u_xlat2;
					    u_xlat2 = u_xlat2 * _TintColor;
					    u_xlat1.xyz = vs_COLOR0.xyz;
					    u_xlat1 = u_xlat1 * u_xlat2;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendMul2" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[7];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat6;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat6 = u_xlat0.w;
					    u_xlat6 = clamp(u_xlat6, 0.0, 1.0);
					    u_xlat0.w = u_xlat6 * vs_TEXCOORD4;
					    u_xlat1 = u_xlat0 + vec4(-0.5, -0.5, -0.5, -0.5);
					    SV_Target0 = u_xlat0.wwww * u_xlat1 + vec4(0.5, 0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[6];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat6;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat6 = u_xlat0.w;
					    u_xlat6 = clamp(u_xlat6, 0.0, 1.0);
					    u_xlat0.w = u_xlat6 * vs_TEXCOORD4;
					    u_xlat1 = u_xlat0 + vec4(-0.5, -0.5, -0.5, -0.5);
					    SV_Target0 = u_xlat0.wwww * u_xlat1 + vec4(0.5, 0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendMul2" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[7];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat6;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat6 = u_xlat0.w;
					    u_xlat6 = clamp(u_xlat6, 0.0, 1.0);
					    u_xlat0.w = u_xlat6 * vs_TEXCOORD4;
					    u_xlat1 = u_xlat0 + vec4(-0.5, -0.5, -0.5, -0.5);
					    SV_Target0 = u_xlat0.wwww * u_xlat1 + vec4(0.5, 0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[6];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat6;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat6 = u_xlat0.w;
					    u_xlat6 = clamp(u_xlat6, 0.0, 1.0);
					    u_xlat0.w = u_xlat6 * vs_TEXCOORD4;
					    u_xlat1 = u_xlat0 + vec4(-0.5, -0.5, -0.5, -0.5);
					    SV_Target0 = u_xlat0.wwww * u_xlat1 + vec4(0.5, 0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendMul2" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat6;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat6 = u_xlat0.w;
					    u_xlat6 = clamp(u_xlat6, 0.0, 1.0);
					    u_xlat0.w = u_xlat6 * vs_TEXCOORD4;
					    u_xlat1 = u_xlat0 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat0.xyz = u_xlat0.www * u_xlat1.xyz;
					    SV_Target0.w = u_xlat0.w * u_xlat1.w + 0.5;
					    u_xlat6 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat6 = (-u_xlat6) + 1.0;
					    u_xlat6 = u_xlat6 * _ProjectionParams.z;
					    u_xlat6 = max(u_xlat6, 0.0);
					    u_xlat6 = u_xlat6 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat6 = clamp(u_xlat6, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat6) * u_xlat0.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat6;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat6 = u_xlat0.w;
					    u_xlat6 = clamp(u_xlat6, 0.0, 1.0);
					    u_xlat0.w = u_xlat6 * vs_TEXCOORD4;
					    u_xlat1 = u_xlat0 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat0.xyz = u_xlat0.www * u_xlat1.xyz;
					    SV_Target0.w = u_xlat0.w * u_xlat1.w + 0.5;
					    u_xlat6 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat6 = (-u_xlat6) + 1.0;
					    u_xlat6 = u_xlat6 * _ProjectionParams.z;
					    u_xlat6 = max(u_xlat6, 0.0);
					    u_xlat6 = u_xlat6 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat6 = clamp(u_xlat6, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat6) * u_xlat0.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendMul2" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat6;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat6 = u_xlat0.w;
					    u_xlat6 = clamp(u_xlat6, 0.0, 1.0);
					    u_xlat0.w = u_xlat6 * vs_TEXCOORD4;
					    u_xlat1 = u_xlat0 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat0.xyz = u_xlat0.www * u_xlat1.xyz;
					    SV_Target0.w = u_xlat0.w * u_xlat1.w + 0.5;
					    u_xlat6 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat6 = (-u_xlat6) + 1.0;
					    u_xlat6 = u_xlat6 * _ProjectionParams.z;
					    u_xlat6 = max(u_xlat6, 0.0);
					    u_xlat6 = u_xlat6 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat6 = clamp(u_xlat6, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat6) * u_xlat0.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat6;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat6 = u_xlat0.w;
					    u_xlat6 = clamp(u_xlat6, 0.0, 1.0);
					    u_xlat0.w = u_xlat6 * vs_TEXCOORD4;
					    u_xlat1 = u_xlat0 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat0.xyz = u_xlat0.www * u_xlat1.xyz;
					    SV_Target0.w = u_xlat0.w * u_xlat1.w + 0.5;
					    u_xlat6 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat6 = (-u_xlat6) + 1.0;
					    u_xlat6 = u_xlat6 * _ProjectionParams.z;
					    u_xlat6 = max(u_xlat6, 0.0);
					    u_xlat6 = u_xlat6 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat6 = clamp(u_xlat6, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat6) * u_xlat0.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendMul2" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat3.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat1 = texture(_CameraDepthTexture, u_xlat3.xy);
					    u_xlat3.x = _ZBufferParams.z * u_xlat1.x + _ZBufferParams.w;
					    u_xlat3.x = float(1.0) / u_xlat3.x;
					    u_xlat3.x = u_xlat3.x + (-vs_TEXCOORD3.z);
					    u_xlat3.x = u_xlat3.x * _InvFade;
					    u_xlat3.x = clamp(u_xlat3.x, 0.0, 1.0);
					    u_xlat1.w = u_xlat3.x * vs_COLOR0.w;
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2 = u_xlat2 + u_xlat2;
					    u_xlat2 = u_xlat2 * _TintColor;
					    u_xlat1.xyz = vs_COLOR0.xyz;
					    u_xlat1 = u_xlat1 * u_xlat2;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat3.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat1 = texture(_CameraDepthTexture, u_xlat3.xy);
					    u_xlat3.x = _ZBufferParams.z * u_xlat1.x + _ZBufferParams.w;
					    u_xlat3.x = float(1.0) / u_xlat3.x;
					    u_xlat3.x = u_xlat3.x + (-vs_TEXCOORD3.z);
					    u_xlat3.x = u_xlat3.x * _InvFade;
					    u_xlat3.x = clamp(u_xlat3.x, 0.0, 1.0);
					    u_xlat1.w = u_xlat3.x * vs_COLOR0.w;
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2 = u_xlat2 + u_xlat2;
					    u_xlat2 = u_xlat2 * _TintColor;
					    u_xlat1.xyz = vs_COLOR0.xyz;
					    u_xlat1 = u_xlat1 * u_xlat2;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendMul2" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat3.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat1 = texture(_CameraDepthTexture, u_xlat3.xy);
					    u_xlat3.x = _ZBufferParams.z * u_xlat1.x + _ZBufferParams.w;
					    u_xlat3.x = float(1.0) / u_xlat3.x;
					    u_xlat3.x = u_xlat3.x + (-vs_TEXCOORD3.z);
					    u_xlat3.x = u_xlat3.x * _InvFade;
					    u_xlat3.x = clamp(u_xlat3.x, 0.0, 1.0);
					    u_xlat1.w = u_xlat3.x * vs_COLOR0.w;
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2 = u_xlat2 + u_xlat2;
					    u_xlat2 = u_xlat2 * _TintColor;
					    u_xlat1.xyz = vs_COLOR0.xyz;
					    u_xlat1 = u_xlat1 * u_xlat2;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat3.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat1 = texture(_CameraDepthTexture, u_xlat3.xy);
					    u_xlat3.x = _ZBufferParams.z * u_xlat1.x + _ZBufferParams.w;
					    u_xlat3.x = float(1.0) / u_xlat3.x;
					    u_xlat3.x = u_xlat3.x + (-vs_TEXCOORD3.z);
					    u_xlat3.x = u_xlat3.x * _InvFade;
					    u_xlat3.x = clamp(u_xlat3.x, 0.0, 1.0);
					    u_xlat1.w = u_xlat3.x * vs_COLOR0.w;
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2 = u_xlat2 + u_xlat2;
					    u_xlat2 = u_xlat2 * _TintColor;
					    u_xlat1.xyz = vs_COLOR0.xyz;
					    u_xlat1 = u_xlat1 * u_xlat2;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendMul2" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat3.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat1 = texture(_CameraDepthTexture, u_xlat3.xy);
					    u_xlat3.x = _ZBufferParams.z * u_xlat1.x + _ZBufferParams.w;
					    u_xlat3.x = float(1.0) / u_xlat3.x;
					    u_xlat3.x = u_xlat3.x + (-vs_TEXCOORD3.z);
					    u_xlat3.x = u_xlat3.x * _InvFade;
					    u_xlat3.x = clamp(u_xlat3.x, 0.0, 1.0);
					    u_xlat1.w = u_xlat3.x * vs_COLOR0.w;
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2 = u_xlat2 + u_xlat2;
					    u_xlat2 = u_xlat2 * _TintColor;
					    u_xlat1.xyz = vs_COLOR0.xyz;
					    u_xlat1 = u_xlat1 * u_xlat2;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat3.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat1 = texture(_CameraDepthTexture, u_xlat3.xy);
					    u_xlat3.x = _ZBufferParams.z * u_xlat1.x + _ZBufferParams.w;
					    u_xlat3.x = float(1.0) / u_xlat3.x;
					    u_xlat3.x = u_xlat3.x + (-vs_TEXCOORD3.z);
					    u_xlat3.x = u_xlat3.x * _InvFade;
					    u_xlat3.x = clamp(u_xlat3.x, 0.0, 1.0);
					    u_xlat1.w = u_xlat3.x * vs_COLOR0.w;
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2 = u_xlat2 + u_xlat2;
					    u_xlat2 = u_xlat2 * _TintColor;
					    u_xlat1.xyz = vs_COLOR0.xyz;
					    u_xlat1 = u_xlat1 * u_xlat2;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendMul2" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat3.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat1 = texture(_CameraDepthTexture, u_xlat3.xy);
					    u_xlat3.x = _ZBufferParams.z * u_xlat1.x + _ZBufferParams.w;
					    u_xlat3.x = float(1.0) / u_xlat3.x;
					    u_xlat3.x = u_xlat3.x + (-vs_TEXCOORD3.z);
					    u_xlat3.x = u_xlat3.x * _InvFade;
					    u_xlat3.x = clamp(u_xlat3.x, 0.0, 1.0);
					    u_xlat1.w = u_xlat3.x * vs_COLOR0.w;
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2 = u_xlat2 + u_xlat2;
					    u_xlat2 = u_xlat2 * _TintColor;
					    u_xlat1.xyz = vs_COLOR0.xyz;
					    u_xlat1 = u_xlat1 * u_xlat2;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat3.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat1 = texture(_CameraDepthTexture, u_xlat3.xy);
					    u_xlat3.x = _ZBufferParams.z * u_xlat1.x + _ZBufferParams.w;
					    u_xlat3.x = float(1.0) / u_xlat3.x;
					    u_xlat3.x = u_xlat3.x + (-vs_TEXCOORD3.z);
					    u_xlat3.x = u_xlat3.x * _InvFade;
					    u_xlat3.x = clamp(u_xlat3.x, 0.0, 1.0);
					    u_xlat1.w = u_xlat3.x * vs_COLOR0.w;
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2 = u_xlat2 + u_xlat2;
					    u_xlat2 = u_xlat2 * _TintColor;
					    u_xlat1.xyz = vs_COLOR0.xyz;
					    u_xlat1 = u_xlat1 * u_xlat2;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendMul2" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					bool u_xlatb1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1.x = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat0.w = u_xlat0.w * u_xlat1.x;
					    u_xlat0 = u_xlat0 * vs_COLOR0;
					    u_xlat0.w = u_xlat0.w;
					    u_xlat0.w = clamp(u_xlat0.w, 0.0, 1.0);
					    u_xlat1 = u_xlat0 + vec4(-0.5, -0.5, -0.5, -0.5);
					    SV_Target0 = u_xlat0.wwww * u_xlat1 + vec4(0.5, 0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					bool u_xlatb1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1.x = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat0.w = u_xlat0.w * u_xlat1.x;
					    u_xlat0 = u_xlat0 * vs_COLOR0;
					    u_xlat0.w = u_xlat0.w;
					    u_xlat0.w = clamp(u_xlat0.w, 0.0, 1.0);
					    u_xlat1 = u_xlat0 + vec4(-0.5, -0.5, -0.5, -0.5);
					    SV_Target0 = u_xlat0.wwww * u_xlat1 + vec4(0.5, 0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendMul2" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[7];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					bool u_xlatb2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2 = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat0.w = u_xlat0.w;
					    u_xlat0.w = clamp(u_xlat0.w, 0.0, 1.0);
					    u_xlat1 = u_xlat0 + vec4(-0.5, -0.5, -0.5, -0.5);
					    SV_Target0 = u_xlat0.wwww * u_xlat1 + vec4(0.5, 0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[6];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					bool u_xlatb2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2 = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat0.w = u_xlat0.w;
					    u_xlat0.w = clamp(u_xlat0.w, 0.0, 1.0);
					    u_xlat1 = u_xlat0 + vec4(-0.5, -0.5, -0.5, -0.5);
					    SV_Target0 = u_xlat0.wwww * u_xlat1 + vec4(0.5, 0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendMul2" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3.x;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3.x;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendMul2" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					bool u_xlatb2;
					float u_xlat9;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2 = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat0.w = u_xlat0.w;
					    u_xlat0.w = clamp(u_xlat0.w, 0.0, 1.0);
					    u_xlat1 = u_xlat0 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat0.xyz = u_xlat0.www * u_xlat1.xyz;
					    SV_Target0.w = u_xlat0.w * u_xlat1.w + 0.5;
					    u_xlat9 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat9 = (-u_xlat9) + 1.0;
					    u_xlat9 = u_xlat9 * _ProjectionParams.z;
					    u_xlat9 = max(u_xlat9, 0.0);
					    u_xlat9 = u_xlat9 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat9 = clamp(u_xlat9, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat9) * u_xlat0.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					bool u_xlatb2;
					float u_xlat9;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2 = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat0.w = u_xlat0.w;
					    u_xlat0.w = clamp(u_xlat0.w, 0.0, 1.0);
					    u_xlat1 = u_xlat0 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat0.xyz = u_xlat0.www * u_xlat1.xyz;
					    SV_Target0.w = u_xlat0.w * u_xlat1.w + 0.5;
					    u_xlat9 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat9 = (-u_xlat9) + 1.0;
					    u_xlat9 = u_xlat9 * _ProjectionParams.z;
					    u_xlat9 = max(u_xlat9, 0.0);
					    u_xlat9 = u_xlat9 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat9 = clamp(u_xlat9, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat9) * u_xlat0.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendMul2" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3.x;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3.x;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendMul2" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat3.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat1 = texture(_CameraDepthTexture, u_xlat3.xy);
					    u_xlat3.x = _ZBufferParams.z * u_xlat1.x + _ZBufferParams.w;
					    u_xlat3.x = float(1.0) / u_xlat3.x;
					    u_xlat3.x = u_xlat3.x + (-vs_TEXCOORD3.z);
					    u_xlat3.x = u_xlat3.x * _InvFade;
					    u_xlat3.x = clamp(u_xlat3.x, 0.0, 1.0);
					    u_xlat1.w = u_xlat3.x * vs_COLOR0.w;
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb3 = u_xlat2.w>=_Cutout;
					    u_xlat2 = u_xlat2 + u_xlat2;
					    u_xlat2 = u_xlat2 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat2.w = u_xlat2.w * u_xlat3.x;
					    u_xlat1.xyz = vs_COLOR0.xyz;
					    u_xlat1 = u_xlat1 * u_xlat2;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat3.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat1 = texture(_CameraDepthTexture, u_xlat3.xy);
					    u_xlat3.x = _ZBufferParams.z * u_xlat1.x + _ZBufferParams.w;
					    u_xlat3.x = float(1.0) / u_xlat3.x;
					    u_xlat3.x = u_xlat3.x + (-vs_TEXCOORD3.z);
					    u_xlat3.x = u_xlat3.x * _InvFade;
					    u_xlat3.x = clamp(u_xlat3.x, 0.0, 1.0);
					    u_xlat1.w = u_xlat3.x * vs_COLOR0.w;
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb3 = u_xlat2.w>=_Cutout;
					    u_xlat2 = u_xlat2 + u_xlat2;
					    u_xlat2 = u_xlat2 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat2.w = u_xlat2.w * u_xlat3.x;
					    u_xlat1.xyz = vs_COLOR0.xyz;
					    u_xlat1 = u_xlat1 * u_xlat2;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendMul2" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3.x;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3.x;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendMul2" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat3.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat1 = texture(_CameraDepthTexture, u_xlat3.xy);
					    u_xlat3.x = _ZBufferParams.z * u_xlat1.x + _ZBufferParams.w;
					    u_xlat3.x = float(1.0) / u_xlat3.x;
					    u_xlat3.x = u_xlat3.x + (-vs_TEXCOORD3.z);
					    u_xlat3.x = u_xlat3.x * _InvFade;
					    u_xlat3.x = clamp(u_xlat3.x, 0.0, 1.0);
					    u_xlat1.w = u_xlat3.x * vs_COLOR0.w;
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb3 = u_xlat2.w>=_Cutout;
					    u_xlat2 = u_xlat2 + u_xlat2;
					    u_xlat2 = u_xlat2 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat2.w = u_xlat2.w * u_xlat3.x;
					    u_xlat1.xyz = vs_COLOR0.xyz;
					    u_xlat1 = u_xlat1 * u_xlat2;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat3.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat1 = texture(_CameraDepthTexture, u_xlat3.xy);
					    u_xlat3.x = _ZBufferParams.z * u_xlat1.x + _ZBufferParams.w;
					    u_xlat3.x = float(1.0) / u_xlat3.x;
					    u_xlat3.x = u_xlat3.x + (-vs_TEXCOORD3.z);
					    u_xlat3.x = u_xlat3.x * _InvFade;
					    u_xlat3.x = clamp(u_xlat3.x, 0.0, 1.0);
					    u_xlat1.w = u_xlat3.x * vs_COLOR0.w;
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb3 = u_xlat2.w>=_Cutout;
					    u_xlat2 = u_xlat2 + u_xlat2;
					    u_xlat2 = u_xlat2 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat2.w = u_xlat2.w * u_xlat3.x;
					    u_xlat1.xyz = vs_COLOR0.xyz;
					    u_xlat1 = u_xlat1 * u_xlat2;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendMul2" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[7];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					bool u_xlatb2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2 = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat0.w = u_xlat0.w;
					    u_xlat0.w = clamp(u_xlat0.w, 0.0, 1.0);
					    u_xlat1 = u_xlat0 + vec4(-0.5, -0.5, -0.5, -0.5);
					    SV_Target0 = u_xlat0.wwww * u_xlat1 + vec4(0.5, 0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[6];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					bool u_xlatb2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2 = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat0.w = u_xlat0.w;
					    u_xlat0.w = clamp(u_xlat0.w, 0.0, 1.0);
					    u_xlat1 = u_xlat0 + vec4(-0.5, -0.5, -0.5, -0.5);
					    SV_Target0 = u_xlat0.wwww * u_xlat1 + vec4(0.5, 0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendMul2" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[7];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					bool u_xlatb2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2 = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat0.w = u_xlat0.w;
					    u_xlat0.w = clamp(u_xlat0.w, 0.0, 1.0);
					    u_xlat1 = u_xlat0 + vec4(-0.5, -0.5, -0.5, -0.5);
					    SV_Target0 = u_xlat0.wwww * u_xlat1 + vec4(0.5, 0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[6];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					bool u_xlatb2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2 = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat0.w = u_xlat0.w;
					    u_xlat0.w = clamp(u_xlat0.w, 0.0, 1.0);
					    u_xlat1 = u_xlat0 + vec4(-0.5, -0.5, -0.5, -0.5);
					    SV_Target0 = u_xlat0.wwww * u_xlat1 + vec4(0.5, 0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendMul2" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					bool u_xlatb2;
					float u_xlat9;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2 = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat0.w = u_xlat0.w;
					    u_xlat0.w = clamp(u_xlat0.w, 0.0, 1.0);
					    u_xlat1 = u_xlat0 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat0.xyz = u_xlat0.www * u_xlat1.xyz;
					    SV_Target0.w = u_xlat0.w * u_xlat1.w + 0.5;
					    u_xlat9 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat9 = (-u_xlat9) + 1.0;
					    u_xlat9 = u_xlat9 * _ProjectionParams.z;
					    u_xlat9 = max(u_xlat9, 0.0);
					    u_xlat9 = u_xlat9 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat9 = clamp(u_xlat9, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat9) * u_xlat0.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					bool u_xlatb2;
					float u_xlat9;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2 = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat0.w = u_xlat0.w;
					    u_xlat0.w = clamp(u_xlat0.w, 0.0, 1.0);
					    u_xlat1 = u_xlat0 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat0.xyz = u_xlat0.www * u_xlat1.xyz;
					    SV_Target0.w = u_xlat0.w * u_xlat1.w + 0.5;
					    u_xlat9 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat9 = (-u_xlat9) + 1.0;
					    u_xlat9 = u_xlat9 * _ProjectionParams.z;
					    u_xlat9 = max(u_xlat9, 0.0);
					    u_xlat9 = u_xlat9 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat9 = clamp(u_xlat9, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat9) * u_xlat0.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendMul2" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					bool u_xlatb2;
					float u_xlat9;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2 = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat0.w = u_xlat0.w;
					    u_xlat0.w = clamp(u_xlat0.w, 0.0, 1.0);
					    u_xlat1 = u_xlat0 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat0.xyz = u_xlat0.www * u_xlat1.xyz;
					    SV_Target0.w = u_xlat0.w * u_xlat1.w + 0.5;
					    u_xlat9 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat9 = (-u_xlat9) + 1.0;
					    u_xlat9 = u_xlat9 * _ProjectionParams.z;
					    u_xlat9 = max(u_xlat9, 0.0);
					    u_xlat9 = u_xlat9 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat9 = clamp(u_xlat9, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat9) * u_xlat0.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					bool u_xlatb2;
					float u_xlat9;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2 = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat0.w = u_xlat0.w;
					    u_xlat0.w = clamp(u_xlat0.w, 0.0, 1.0);
					    u_xlat1 = u_xlat0 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat0.xyz = u_xlat0.www * u_xlat1.xyz;
					    SV_Target0.w = u_xlat0.w * u_xlat1.w + 0.5;
					    u_xlat9 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat9 = (-u_xlat9) + 1.0;
					    u_xlat9 = u_xlat9 * _ProjectionParams.z;
					    u_xlat9 = max(u_xlat9, 0.0);
					    u_xlat9 = u_xlat9 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat9 = clamp(u_xlat9, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat9) * u_xlat0.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendMul2" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat3.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat1 = texture(_CameraDepthTexture, u_xlat3.xy);
					    u_xlat3.x = _ZBufferParams.z * u_xlat1.x + _ZBufferParams.w;
					    u_xlat3.x = float(1.0) / u_xlat3.x;
					    u_xlat3.x = u_xlat3.x + (-vs_TEXCOORD3.z);
					    u_xlat3.x = u_xlat3.x * _InvFade;
					    u_xlat3.x = clamp(u_xlat3.x, 0.0, 1.0);
					    u_xlat1.w = u_xlat3.x * vs_COLOR0.w;
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb3 = u_xlat2.w>=_Cutout;
					    u_xlat2 = u_xlat2 + u_xlat2;
					    u_xlat2 = u_xlat2 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat2.w = u_xlat2.w * u_xlat3.x;
					    u_xlat1.xyz = vs_COLOR0.xyz;
					    u_xlat1 = u_xlat1 * u_xlat2;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat3.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat1 = texture(_CameraDepthTexture, u_xlat3.xy);
					    u_xlat3.x = _ZBufferParams.z * u_xlat1.x + _ZBufferParams.w;
					    u_xlat3.x = float(1.0) / u_xlat3.x;
					    u_xlat3.x = u_xlat3.x + (-vs_TEXCOORD3.z);
					    u_xlat3.x = u_xlat3.x * _InvFade;
					    u_xlat3.x = clamp(u_xlat3.x, 0.0, 1.0);
					    u_xlat1.w = u_xlat3.x * vs_COLOR0.w;
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb3 = u_xlat2.w>=_Cutout;
					    u_xlat2 = u_xlat2 + u_xlat2;
					    u_xlat2 = u_xlat2 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat2.w = u_xlat2.w * u_xlat3.x;
					    u_xlat1.xyz = vs_COLOR0.xyz;
					    u_xlat1 = u_xlat1 * u_xlat2;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendMul2" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat3.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat1 = texture(_CameraDepthTexture, u_xlat3.xy);
					    u_xlat3.x = _ZBufferParams.z * u_xlat1.x + _ZBufferParams.w;
					    u_xlat3.x = float(1.0) / u_xlat3.x;
					    u_xlat3.x = u_xlat3.x + (-vs_TEXCOORD3.z);
					    u_xlat3.x = u_xlat3.x * _InvFade;
					    u_xlat3.x = clamp(u_xlat3.x, 0.0, 1.0);
					    u_xlat1.w = u_xlat3.x * vs_COLOR0.w;
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb3 = u_xlat2.w>=_Cutout;
					    u_xlat2 = u_xlat2 + u_xlat2;
					    u_xlat2 = u_xlat2 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat2.w = u_xlat2.w * u_xlat3.x;
					    u_xlat1.xyz = vs_COLOR0.xyz;
					    u_xlat1 = u_xlat1 * u_xlat2;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat3.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat1 = texture(_CameraDepthTexture, u_xlat3.xy);
					    u_xlat3.x = _ZBufferParams.z * u_xlat1.x + _ZBufferParams.w;
					    u_xlat3.x = float(1.0) / u_xlat3.x;
					    u_xlat3.x = u_xlat3.x + (-vs_TEXCOORD3.z);
					    u_xlat3.x = u_xlat3.x * _InvFade;
					    u_xlat3.x = clamp(u_xlat3.x, 0.0, 1.0);
					    u_xlat1.w = u_xlat3.x * vs_COLOR0.w;
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb3 = u_xlat2.w>=_Cutout;
					    u_xlat2 = u_xlat2 + u_xlat2;
					    u_xlat2 = u_xlat2 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat2.w = u_xlat2.w * u_xlat3.x;
					    u_xlat1.xyz = vs_COLOR0.xyz;
					    u_xlat1 = u_xlat1 * u_xlat2;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendMul2" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat3.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat1 = texture(_CameraDepthTexture, u_xlat3.xy);
					    u_xlat3.x = _ZBufferParams.z * u_xlat1.x + _ZBufferParams.w;
					    u_xlat3.x = float(1.0) / u_xlat3.x;
					    u_xlat3.x = u_xlat3.x + (-vs_TEXCOORD3.z);
					    u_xlat3.x = u_xlat3.x * _InvFade;
					    u_xlat3.x = clamp(u_xlat3.x, 0.0, 1.0);
					    u_xlat1.w = u_xlat3.x * vs_COLOR0.w;
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb3 = u_xlat2.w>=_Cutout;
					    u_xlat2 = u_xlat2 + u_xlat2;
					    u_xlat2 = u_xlat2 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat2.w = u_xlat2.w * u_xlat3.x;
					    u_xlat1.xyz = vs_COLOR0.xyz;
					    u_xlat1 = u_xlat1 * u_xlat2;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat3.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat1 = texture(_CameraDepthTexture, u_xlat3.xy);
					    u_xlat3.x = _ZBufferParams.z * u_xlat1.x + _ZBufferParams.w;
					    u_xlat3.x = float(1.0) / u_xlat3.x;
					    u_xlat3.x = u_xlat3.x + (-vs_TEXCOORD3.z);
					    u_xlat3.x = u_xlat3.x * _InvFade;
					    u_xlat3.x = clamp(u_xlat3.x, 0.0, 1.0);
					    u_xlat1.w = u_xlat3.x * vs_COLOR0.w;
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb3 = u_xlat2.w>=_Cutout;
					    u_xlat2 = u_xlat2 + u_xlat2;
					    u_xlat2 = u_xlat2 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat2.w = u_xlat2.w * u_xlat3.x;
					    u_xlat1.xyz = vs_COLOR0.xyz;
					    u_xlat1 = u_xlat1 * u_xlat2;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendMul2" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat3.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat1 = texture(_CameraDepthTexture, u_xlat3.xy);
					    u_xlat3.x = _ZBufferParams.z * u_xlat1.x + _ZBufferParams.w;
					    u_xlat3.x = float(1.0) / u_xlat3.x;
					    u_xlat3.x = u_xlat3.x + (-vs_TEXCOORD3.z);
					    u_xlat3.x = u_xlat3.x * _InvFade;
					    u_xlat3.x = clamp(u_xlat3.x, 0.0, 1.0);
					    u_xlat1.w = u_xlat3.x * vs_COLOR0.w;
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb3 = u_xlat2.w>=_Cutout;
					    u_xlat2 = u_xlat2 + u_xlat2;
					    u_xlat2 = u_xlat2 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat2.w = u_xlat2.w * u_xlat3.x;
					    u_xlat1.xyz = vs_COLOR0.xyz;
					    u_xlat1 = u_xlat1 * u_xlat2;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat3.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat1 = texture(_CameraDepthTexture, u_xlat3.xy);
					    u_xlat3.x = _ZBufferParams.z * u_xlat1.x + _ZBufferParams.w;
					    u_xlat3.x = float(1.0) / u_xlat3.x;
					    u_xlat3.x = u_xlat3.x + (-vs_TEXCOORD3.z);
					    u_xlat3.x = u_xlat3.x * _InvFade;
					    u_xlat3.x = clamp(u_xlat3.x, 0.0, 1.0);
					    u_xlat1.w = u_xlat3.x * vs_COLOR0.w;
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb3 = u_xlat2.w>=_Cutout;
					    u_xlat2 = u_xlat2 + u_xlat2;
					    u_xlat2 = u_xlat2 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat2.w = u_xlat2.w * u_xlat3.x;
					    u_xlat1.xyz = vs_COLOR0.xyz;
					    u_xlat1 = u_xlat1 * u_xlat2;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendMul2" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					bool u_xlatb1;
					float u_xlat6;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1.x = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat0.w = u_xlat0.w * u_xlat1.x;
					    u_xlat0 = u_xlat0 * vs_COLOR0;
					    u_xlat6 = u_xlat0.w;
					    u_xlat6 = clamp(u_xlat6, 0.0, 1.0);
					    u_xlat0.w = u_xlat6 * vs_TEXCOORD4;
					    u_xlat1 = u_xlat0 + vec4(-0.5, -0.5, -0.5, -0.5);
					    SV_Target0 = u_xlat0.wwww * u_xlat1 + vec4(0.5, 0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					bool u_xlatb1;
					float u_xlat6;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1.x = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat0.w = u_xlat0.w * u_xlat1.x;
					    u_xlat0 = u_xlat0 * vs_COLOR0;
					    u_xlat6 = u_xlat0.w;
					    u_xlat6 = clamp(u_xlat6, 0.0, 1.0);
					    u_xlat0.w = u_xlat6 * vs_TEXCOORD4;
					    u_xlat1 = u_xlat0 + vec4(-0.5, -0.5, -0.5, -0.5);
					    SV_Target0 = u_xlat0.wwww * u_xlat1 + vec4(0.5, 0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendMul2" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[7];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					bool u_xlatb2;
					float u_xlat9;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2 = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat9 = u_xlat0.w;
					    u_xlat9 = clamp(u_xlat9, 0.0, 1.0);
					    u_xlat0.w = u_xlat9 * vs_TEXCOORD4;
					    u_xlat1 = u_xlat0 + vec4(-0.5, -0.5, -0.5, -0.5);
					    SV_Target0 = u_xlat0.wwww * u_xlat1 + vec4(0.5, 0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[6];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					bool u_xlatb2;
					float u_xlat9;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2 = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat9 = u_xlat0.w;
					    u_xlat9 = clamp(u_xlat9, 0.0, 1.0);
					    u_xlat0.w = u_xlat9 * vs_TEXCOORD4;
					    u_xlat1 = u_xlat0 + vec4(-0.5, -0.5, -0.5, -0.5);
					    SV_Target0 = u_xlat0.wwww * u_xlat1 + vec4(0.5, 0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendMul2" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3.x;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3.x;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendMul2" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					bool u_xlatb2;
					float u_xlat9;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2 = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat9 = u_xlat0.w;
					    u_xlat9 = clamp(u_xlat9, 0.0, 1.0);
					    u_xlat0.w = u_xlat9 * vs_TEXCOORD4;
					    u_xlat1 = u_xlat0 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat0.xyz = u_xlat0.www * u_xlat1.xyz;
					    SV_Target0.w = u_xlat0.w * u_xlat1.w + 0.5;
					    u_xlat9 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat9 = (-u_xlat9) + 1.0;
					    u_xlat9 = u_xlat9 * _ProjectionParams.z;
					    u_xlat9 = max(u_xlat9, 0.0);
					    u_xlat9 = u_xlat9 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat9 = clamp(u_xlat9, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat9) * u_xlat0.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					bool u_xlatb2;
					float u_xlat9;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2 = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat9 = u_xlat0.w;
					    u_xlat9 = clamp(u_xlat9, 0.0, 1.0);
					    u_xlat0.w = u_xlat9 * vs_TEXCOORD4;
					    u_xlat1 = u_xlat0 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat0.xyz = u_xlat0.www * u_xlat1.xyz;
					    SV_Target0.w = u_xlat0.w * u_xlat1.w + 0.5;
					    u_xlat9 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat9 = (-u_xlat9) + 1.0;
					    u_xlat9 = u_xlat9 * _ProjectionParams.z;
					    u_xlat9 = max(u_xlat9, 0.0);
					    u_xlat9 = u_xlat9 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat9 = clamp(u_xlat9, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat9) * u_xlat0.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendMul2" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3.x;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3.x;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendMul2" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat3.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat1 = texture(_CameraDepthTexture, u_xlat3.xy);
					    u_xlat3.x = _ZBufferParams.z * u_xlat1.x + _ZBufferParams.w;
					    u_xlat3.x = float(1.0) / u_xlat3.x;
					    u_xlat3.x = u_xlat3.x + (-vs_TEXCOORD3.z);
					    u_xlat3.x = u_xlat3.x * _InvFade;
					    u_xlat3.x = clamp(u_xlat3.x, 0.0, 1.0);
					    u_xlat1.w = u_xlat3.x * vs_COLOR0.w;
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb3 = u_xlat2.w>=_Cutout;
					    u_xlat2 = u_xlat2 + u_xlat2;
					    u_xlat2 = u_xlat2 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat2.w = u_xlat2.w * u_xlat3.x;
					    u_xlat1.xyz = vs_COLOR0.xyz;
					    u_xlat1 = u_xlat1 * u_xlat2;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat3.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat1 = texture(_CameraDepthTexture, u_xlat3.xy);
					    u_xlat3.x = _ZBufferParams.z * u_xlat1.x + _ZBufferParams.w;
					    u_xlat3.x = float(1.0) / u_xlat3.x;
					    u_xlat3.x = u_xlat3.x + (-vs_TEXCOORD3.z);
					    u_xlat3.x = u_xlat3.x * _InvFade;
					    u_xlat3.x = clamp(u_xlat3.x, 0.0, 1.0);
					    u_xlat1.w = u_xlat3.x * vs_COLOR0.w;
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb3 = u_xlat2.w>=_Cutout;
					    u_xlat2 = u_xlat2 + u_xlat2;
					    u_xlat2 = u_xlat2 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat2.w = u_xlat2.w * u_xlat3.x;
					    u_xlat1.xyz = vs_COLOR0.xyz;
					    u_xlat1 = u_xlat1 * u_xlat2;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendMul2" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3.x;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3.x;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendMul2" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat3.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat1 = texture(_CameraDepthTexture, u_xlat3.xy);
					    u_xlat3.x = _ZBufferParams.z * u_xlat1.x + _ZBufferParams.w;
					    u_xlat3.x = float(1.0) / u_xlat3.x;
					    u_xlat3.x = u_xlat3.x + (-vs_TEXCOORD3.z);
					    u_xlat3.x = u_xlat3.x * _InvFade;
					    u_xlat3.x = clamp(u_xlat3.x, 0.0, 1.0);
					    u_xlat1.w = u_xlat3.x * vs_COLOR0.w;
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb3 = u_xlat2.w>=_Cutout;
					    u_xlat2 = u_xlat2 + u_xlat2;
					    u_xlat2 = u_xlat2 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat2.w = u_xlat2.w * u_xlat3.x;
					    u_xlat1.xyz = vs_COLOR0.xyz;
					    u_xlat1 = u_xlat1 * u_xlat2;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat3.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat1 = texture(_CameraDepthTexture, u_xlat3.xy);
					    u_xlat3.x = _ZBufferParams.z * u_xlat1.x + _ZBufferParams.w;
					    u_xlat3.x = float(1.0) / u_xlat3.x;
					    u_xlat3.x = u_xlat3.x + (-vs_TEXCOORD3.z);
					    u_xlat3.x = u_xlat3.x * _InvFade;
					    u_xlat3.x = clamp(u_xlat3.x, 0.0, 1.0);
					    u_xlat1.w = u_xlat3.x * vs_COLOR0.w;
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb3 = u_xlat2.w>=_Cutout;
					    u_xlat2 = u_xlat2 + u_xlat2;
					    u_xlat2 = u_xlat2 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat2.w = u_xlat2.w * u_xlat3.x;
					    u_xlat1.xyz = vs_COLOR0.xyz;
					    u_xlat1 = u_xlat1 * u_xlat2;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendMul2" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[7];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					bool u_xlatb2;
					float u_xlat9;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2 = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat9 = u_xlat0.w;
					    u_xlat9 = clamp(u_xlat9, 0.0, 1.0);
					    u_xlat0.w = u_xlat9 * vs_TEXCOORD4;
					    u_xlat1 = u_xlat0 + vec4(-0.5, -0.5, -0.5, -0.5);
					    SV_Target0 = u_xlat0.wwww * u_xlat1 + vec4(0.5, 0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[6];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					bool u_xlatb2;
					float u_xlat9;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2 = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat9 = u_xlat0.w;
					    u_xlat9 = clamp(u_xlat9, 0.0, 1.0);
					    u_xlat0.w = u_xlat9 * vs_TEXCOORD4;
					    u_xlat1 = u_xlat0 + vec4(-0.5, -0.5, -0.5, -0.5);
					    SV_Target0 = u_xlat0.wwww * u_xlat1 + vec4(0.5, 0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendMul2" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[7];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					bool u_xlatb2;
					float u_xlat9;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2 = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat9 = u_xlat0.w;
					    u_xlat9 = clamp(u_xlat9, 0.0, 1.0);
					    u_xlat0.w = u_xlat9 * vs_TEXCOORD4;
					    u_xlat1 = u_xlat0 + vec4(-0.5, -0.5, -0.5, -0.5);
					    SV_Target0 = u_xlat0.wwww * u_xlat1 + vec4(0.5, 0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[6];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					bool u_xlatb2;
					float u_xlat9;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2 = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat9 = u_xlat0.w;
					    u_xlat9 = clamp(u_xlat9, 0.0, 1.0);
					    u_xlat0.w = u_xlat9 * vs_TEXCOORD4;
					    u_xlat1 = u_xlat0 + vec4(-0.5, -0.5, -0.5, -0.5);
					    SV_Target0 = u_xlat0.wwww * u_xlat1 + vec4(0.5, 0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendMul2" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					bool u_xlatb2;
					float u_xlat9;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2 = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat9 = u_xlat0.w;
					    u_xlat9 = clamp(u_xlat9, 0.0, 1.0);
					    u_xlat0.w = u_xlat9 * vs_TEXCOORD4;
					    u_xlat1 = u_xlat0 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat0.xyz = u_xlat0.www * u_xlat1.xyz;
					    SV_Target0.w = u_xlat0.w * u_xlat1.w + 0.5;
					    u_xlat9 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat9 = (-u_xlat9) + 1.0;
					    u_xlat9 = u_xlat9 * _ProjectionParams.z;
					    u_xlat9 = max(u_xlat9, 0.0);
					    u_xlat9 = u_xlat9 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat9 = clamp(u_xlat9, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat9) * u_xlat0.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					bool u_xlatb2;
					float u_xlat9;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2 = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat9 = u_xlat0.w;
					    u_xlat9 = clamp(u_xlat9, 0.0, 1.0);
					    u_xlat0.w = u_xlat9 * vs_TEXCOORD4;
					    u_xlat1 = u_xlat0 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat0.xyz = u_xlat0.www * u_xlat1.xyz;
					    SV_Target0.w = u_xlat0.w * u_xlat1.w + 0.5;
					    u_xlat9 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat9 = (-u_xlat9) + 1.0;
					    u_xlat9 = u_xlat9 * _ProjectionParams.z;
					    u_xlat9 = max(u_xlat9, 0.0);
					    u_xlat9 = u_xlat9 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat9 = clamp(u_xlat9, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat9) * u_xlat0.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendMul2" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					bool u_xlatb2;
					float u_xlat9;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2 = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat9 = u_xlat0.w;
					    u_xlat9 = clamp(u_xlat9, 0.0, 1.0);
					    u_xlat0.w = u_xlat9 * vs_TEXCOORD4;
					    u_xlat1 = u_xlat0 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat0.xyz = u_xlat0.www * u_xlat1.xyz;
					    SV_Target0.w = u_xlat0.w * u_xlat1.w + 0.5;
					    u_xlat9 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat9 = (-u_xlat9) + 1.0;
					    u_xlat9 = u_xlat9 * _ProjectionParams.z;
					    u_xlat9 = max(u_xlat9, 0.0);
					    u_xlat9 = u_xlat9 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat9 = clamp(u_xlat9, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat9) * u_xlat0.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					bool u_xlatb2;
					float u_xlat9;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2 = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat9 = u_xlat0.w;
					    u_xlat9 = clamp(u_xlat9, 0.0, 1.0);
					    u_xlat0.w = u_xlat9 * vs_TEXCOORD4;
					    u_xlat1 = u_xlat0 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat0.xyz = u_xlat0.www * u_xlat1.xyz;
					    SV_Target0.w = u_xlat0.w * u_xlat1.w + 0.5;
					    u_xlat9 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat9 = (-u_xlat9) + 1.0;
					    u_xlat9 = u_xlat9 * _ProjectionParams.z;
					    u_xlat9 = max(u_xlat9, 0.0);
					    u_xlat9 = u_xlat9 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat9 = clamp(u_xlat9, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat9) * u_xlat0.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendMul2" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat3.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat1 = texture(_CameraDepthTexture, u_xlat3.xy);
					    u_xlat3.x = _ZBufferParams.z * u_xlat1.x + _ZBufferParams.w;
					    u_xlat3.x = float(1.0) / u_xlat3.x;
					    u_xlat3.x = u_xlat3.x + (-vs_TEXCOORD3.z);
					    u_xlat3.x = u_xlat3.x * _InvFade;
					    u_xlat3.x = clamp(u_xlat3.x, 0.0, 1.0);
					    u_xlat1.w = u_xlat3.x * vs_COLOR0.w;
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb3 = u_xlat2.w>=_Cutout;
					    u_xlat2 = u_xlat2 + u_xlat2;
					    u_xlat2 = u_xlat2 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat2.w = u_xlat2.w * u_xlat3.x;
					    u_xlat1.xyz = vs_COLOR0.xyz;
					    u_xlat1 = u_xlat1 * u_xlat2;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat3.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat1 = texture(_CameraDepthTexture, u_xlat3.xy);
					    u_xlat3.x = _ZBufferParams.z * u_xlat1.x + _ZBufferParams.w;
					    u_xlat3.x = float(1.0) / u_xlat3.x;
					    u_xlat3.x = u_xlat3.x + (-vs_TEXCOORD3.z);
					    u_xlat3.x = u_xlat3.x * _InvFade;
					    u_xlat3.x = clamp(u_xlat3.x, 0.0, 1.0);
					    u_xlat1.w = u_xlat3.x * vs_COLOR0.w;
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb3 = u_xlat2.w>=_Cutout;
					    u_xlat2 = u_xlat2 + u_xlat2;
					    u_xlat2 = u_xlat2 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat2.w = u_xlat2.w * u_xlat3.x;
					    u_xlat1.xyz = vs_COLOR0.xyz;
					    u_xlat1 = u_xlat1 * u_xlat2;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendMul2" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat3.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat1 = texture(_CameraDepthTexture, u_xlat3.xy);
					    u_xlat3.x = _ZBufferParams.z * u_xlat1.x + _ZBufferParams.w;
					    u_xlat3.x = float(1.0) / u_xlat3.x;
					    u_xlat3.x = u_xlat3.x + (-vs_TEXCOORD3.z);
					    u_xlat3.x = u_xlat3.x * _InvFade;
					    u_xlat3.x = clamp(u_xlat3.x, 0.0, 1.0);
					    u_xlat1.w = u_xlat3.x * vs_COLOR0.w;
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb3 = u_xlat2.w>=_Cutout;
					    u_xlat2 = u_xlat2 + u_xlat2;
					    u_xlat2 = u_xlat2 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat2.w = u_xlat2.w * u_xlat3.x;
					    u_xlat1.xyz = vs_COLOR0.xyz;
					    u_xlat1 = u_xlat1 * u_xlat2;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat3.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat1 = texture(_CameraDepthTexture, u_xlat3.xy);
					    u_xlat3.x = _ZBufferParams.z * u_xlat1.x + _ZBufferParams.w;
					    u_xlat3.x = float(1.0) / u_xlat3.x;
					    u_xlat3.x = u_xlat3.x + (-vs_TEXCOORD3.z);
					    u_xlat3.x = u_xlat3.x * _InvFade;
					    u_xlat3.x = clamp(u_xlat3.x, 0.0, 1.0);
					    u_xlat1.w = u_xlat3.x * vs_COLOR0.w;
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb3 = u_xlat2.w>=_Cutout;
					    u_xlat2 = u_xlat2 + u_xlat2;
					    u_xlat2 = u_xlat2 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat2.w = u_xlat2.w * u_xlat3.x;
					    u_xlat1.xyz = vs_COLOR0.xyz;
					    u_xlat1 = u_xlat1 * u_xlat2;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendMul2" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat3.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat1 = texture(_CameraDepthTexture, u_xlat3.xy);
					    u_xlat3.x = _ZBufferParams.z * u_xlat1.x + _ZBufferParams.w;
					    u_xlat3.x = float(1.0) / u_xlat3.x;
					    u_xlat3.x = u_xlat3.x + (-vs_TEXCOORD3.z);
					    u_xlat3.x = u_xlat3.x * _InvFade;
					    u_xlat3.x = clamp(u_xlat3.x, 0.0, 1.0);
					    u_xlat1.w = u_xlat3.x * vs_COLOR0.w;
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb3 = u_xlat2.w>=_Cutout;
					    u_xlat2 = u_xlat2 + u_xlat2;
					    u_xlat2 = u_xlat2 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat2.w = u_xlat2.w * u_xlat3.x;
					    u_xlat1.xyz = vs_COLOR0.xyz;
					    u_xlat1 = u_xlat1 * u_xlat2;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat3.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat1 = texture(_CameraDepthTexture, u_xlat3.xy);
					    u_xlat3.x = _ZBufferParams.z * u_xlat1.x + _ZBufferParams.w;
					    u_xlat3.x = float(1.0) / u_xlat3.x;
					    u_xlat3.x = u_xlat3.x + (-vs_TEXCOORD3.z);
					    u_xlat3.x = u_xlat3.x * _InvFade;
					    u_xlat3.x = clamp(u_xlat3.x, 0.0, 1.0);
					    u_xlat1.w = u_xlat3.x * vs_COLOR0.w;
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb3 = u_xlat2.w>=_Cutout;
					    u_xlat2 = u_xlat2 + u_xlat2;
					    u_xlat2 = u_xlat2 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat2.w = u_xlat2.w * u_xlat3.x;
					    u_xlat1.xyz = vs_COLOR0.xyz;
					    u_xlat1 = u_xlat1 * u_xlat2;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendMul2" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat3.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat1 = texture(_CameraDepthTexture, u_xlat3.xy);
					    u_xlat3.x = _ZBufferParams.z * u_xlat1.x + _ZBufferParams.w;
					    u_xlat3.x = float(1.0) / u_xlat3.x;
					    u_xlat3.x = u_xlat3.x + (-vs_TEXCOORD3.z);
					    u_xlat3.x = u_xlat3.x * _InvFade;
					    u_xlat3.x = clamp(u_xlat3.x, 0.0, 1.0);
					    u_xlat1.w = u_xlat3.x * vs_COLOR0.w;
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb3 = u_xlat2.w>=_Cutout;
					    u_xlat2 = u_xlat2 + u_xlat2;
					    u_xlat2 = u_xlat2 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat2.w = u_xlat2.w * u_xlat3.x;
					    u_xlat1.xyz = vs_COLOR0.xyz;
					    u_xlat1 = u_xlat1 * u_xlat2;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat3.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat1 = texture(_CameraDepthTexture, u_xlat3.xy);
					    u_xlat3.x = _ZBufferParams.z * u_xlat1.x + _ZBufferParams.w;
					    u_xlat3.x = float(1.0) / u_xlat3.x;
					    u_xlat3.x = u_xlat3.x + (-vs_TEXCOORD3.z);
					    u_xlat3.x = u_xlat3.x * _InvFade;
					    u_xlat3.x = clamp(u_xlat3.x, 0.0, 1.0);
					    u_xlat1.w = u_xlat3.x * vs_COLOR0.w;
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb3 = u_xlat2.w>=_Cutout;
					    u_xlat2 = u_xlat2 + u_xlat2;
					    u_xlat2 = u_xlat2 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat2.w = u_xlat2.w * u_xlat3.x;
					    u_xlat1.xyz = vs_COLOR0.xyz;
					    u_xlat1 = u_xlat1 * u_xlat2;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendMul2" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0.xyz = u_xlat0.xyz + u_xlat0.xyz;
					    u_xlat0.xyz = u_xlat0.xyz * _TintColor.xyz;
					    u_xlat1.xyz = u_xlat0.xyz * vs_COLOR0.xyz;
					    u_xlat0.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlatb0 = u_xlat0.w>=u_xlat0.x;
					    u_xlat1.w = u_xlatb0 ? 1.0 : float(0.0);
					    u_xlat0 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    SV_Target0 = u_xlat1.wwww * u_xlat0 + vec4(0.5, 0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0.xyz = u_xlat0.xyz + u_xlat0.xyz;
					    u_xlat0.xyz = u_xlat0.xyz * _TintColor.xyz;
					    u_xlat1.xyz = u_xlat0.xyz * vs_COLOR0.xyz;
					    u_xlat0.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlatb0 = u_xlat0.w>=u_xlat0.x;
					    u_xlat1.w = u_xlatb0 ? 1.0 : float(0.0);
					    u_xlat0 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    SV_Target0 = u_xlat1.wwww * u_xlat0 + vec4(0.5, 0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendMul2" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[7];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb0 = u_xlat1.w>=u_xlat0.x;
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    u_xlat1.xyz = u_xlat2.xyz * vs_COLOR0.xyz;
					    u_xlat1.w = u_xlatb0 ? 1.0 : float(0.0);
					    u_xlat0 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    SV_Target0 = u_xlat1.wwww * u_xlat0 + vec4(0.5, 0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[6];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb0 = u_xlat1.w>=u_xlat0.x;
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    u_xlat1.xyz = u_xlat2.xyz * vs_COLOR0.xyz;
					    u_xlat1.w = u_xlatb0 ? 1.0 : float(0.0);
					    u_xlat0 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    SV_Target0 = u_xlat1.wwww * u_xlat0 + vec4(0.5, 0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendMul2" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat2.w = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1 = u_xlat2 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat2.w = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1 = u_xlat2 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendMul2" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat3.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat1 = texture(_CameraDepthTexture, u_xlat3.xy);
					    u_xlat3.x = _ZBufferParams.z * u_xlat1.x + _ZBufferParams.w;
					    u_xlat3.x = float(1.0) / u_xlat3.x;
					    u_xlat3.x = u_xlat3.x + (-vs_TEXCOORD3.z);
					    u_xlat3.x = u_xlat3.x * _InvFade;
					    u_xlat3.x = clamp(u_xlat3.x, 0.0, 1.0);
					    u_xlat3.x = (-vs_COLOR0.w) * u_xlat3.x + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat1.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz * _TintColor.xyz;
					    u_xlat1.xyz = u_xlat1.xyz * vs_COLOR0.xyz;
					    u_xlat1.w = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat3.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat1 = texture(_CameraDepthTexture, u_xlat3.xy);
					    u_xlat3.x = _ZBufferParams.z * u_xlat1.x + _ZBufferParams.w;
					    u_xlat3.x = float(1.0) / u_xlat3.x;
					    u_xlat3.x = u_xlat3.x + (-vs_TEXCOORD3.z);
					    u_xlat3.x = u_xlat3.x * _InvFade;
					    u_xlat3.x = clamp(u_xlat3.x, 0.0, 1.0);
					    u_xlat3.x = (-vs_COLOR0.w) * u_xlat3.x + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat1.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz * _TintColor.xyz;
					    u_xlat1.xyz = u_xlat1.xyz * vs_COLOR0.xyz;
					    u_xlat1.w = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendMul2" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat2.w = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1 = u_xlat2 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat2.w = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1 = u_xlat2 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendMul2" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat3.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat1 = texture(_CameraDepthTexture, u_xlat3.xy);
					    u_xlat3.x = _ZBufferParams.z * u_xlat1.x + _ZBufferParams.w;
					    u_xlat3.x = float(1.0) / u_xlat3.x;
					    u_xlat3.x = u_xlat3.x + (-vs_TEXCOORD3.z);
					    u_xlat3.x = u_xlat3.x * _InvFade;
					    u_xlat3.x = clamp(u_xlat3.x, 0.0, 1.0);
					    u_xlat3.x = (-vs_COLOR0.w) * u_xlat3.x + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat1.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz * _TintColor.xyz;
					    u_xlat1.xyz = u_xlat1.xyz * vs_COLOR0.xyz;
					    u_xlat1.w = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat3.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat1 = texture(_CameraDepthTexture, u_xlat3.xy);
					    u_xlat3.x = _ZBufferParams.z * u_xlat1.x + _ZBufferParams.w;
					    u_xlat3.x = float(1.0) / u_xlat3.x;
					    u_xlat3.x = u_xlat3.x + (-vs_TEXCOORD3.z);
					    u_xlat3.x = u_xlat3.x * _InvFade;
					    u_xlat3.x = clamp(u_xlat3.x, 0.0, 1.0);
					    u_xlat3.x = (-vs_COLOR0.w) * u_xlat3.x + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat1.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz * _TintColor.xyz;
					    u_xlat1.xyz = u_xlat1.xyz * vs_COLOR0.xyz;
					    u_xlat1.w = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendMul2" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat2.w = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1 = u_xlat2 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat2.w = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1 = u_xlat2 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendMul2" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat3.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat1 = texture(_CameraDepthTexture, u_xlat3.xy);
					    u_xlat3.x = _ZBufferParams.z * u_xlat1.x + _ZBufferParams.w;
					    u_xlat3.x = float(1.0) / u_xlat3.x;
					    u_xlat3.x = u_xlat3.x + (-vs_TEXCOORD3.z);
					    u_xlat3.x = u_xlat3.x * _InvFade;
					    u_xlat3.x = clamp(u_xlat3.x, 0.0, 1.0);
					    u_xlat3.x = (-vs_COLOR0.w) * u_xlat3.x + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat1.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz * _TintColor.xyz;
					    u_xlat1.xyz = u_xlat1.xyz * vs_COLOR0.xyz;
					    u_xlat1.w = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat3.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat1 = texture(_CameraDepthTexture, u_xlat3.xy);
					    u_xlat3.x = _ZBufferParams.z * u_xlat1.x + _ZBufferParams.w;
					    u_xlat3.x = float(1.0) / u_xlat3.x;
					    u_xlat3.x = u_xlat3.x + (-vs_TEXCOORD3.z);
					    u_xlat3.x = u_xlat3.x * _InvFade;
					    u_xlat3.x = clamp(u_xlat3.x, 0.0, 1.0);
					    u_xlat3.x = (-vs_COLOR0.w) * u_xlat3.x + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat1.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz * _TintColor.xyz;
					    u_xlat1.xyz = u_xlat1.xyz * vs_COLOR0.xyz;
					    u_xlat1.w = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendMul2" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[7];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb0 = u_xlat1.w>=u_xlat0.x;
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    u_xlat1.xyz = u_xlat2.xyz * vs_COLOR0.xyz;
					    u_xlat1.w = u_xlatb0 ? 1.0 : float(0.0);
					    u_xlat0 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    SV_Target0 = u_xlat1.wwww * u_xlat0 + vec4(0.5, 0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[6];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb0 = u_xlat1.w>=u_xlat0.x;
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    u_xlat1.xyz = u_xlat2.xyz * vs_COLOR0.xyz;
					    u_xlat1.w = u_xlatb0 ? 1.0 : float(0.0);
					    u_xlat0 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    SV_Target0 = u_xlat1.wwww * u_xlat0 + vec4(0.5, 0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendMul2" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[7];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb0 = u_xlat1.w>=u_xlat0.x;
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    u_xlat1.xyz = u_xlat2.xyz * vs_COLOR0.xyz;
					    u_xlat1.w = u_xlatb0 ? 1.0 : float(0.0);
					    u_xlat0 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    SV_Target0 = u_xlat1.wwww * u_xlat0 + vec4(0.5, 0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[6];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb0 = u_xlat1.w>=u_xlat0.x;
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    u_xlat1.xyz = u_xlat2.xyz * vs_COLOR0.xyz;
					    u_xlat1.w = u_xlatb0 ? 1.0 : float(0.0);
					    u_xlat0 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    SV_Target0 = u_xlat1.wwww * u_xlat0 + vec4(0.5, 0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendMul2" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat3.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat1 = texture(_CameraDepthTexture, u_xlat3.xy);
					    u_xlat3.x = _ZBufferParams.z * u_xlat1.x + _ZBufferParams.w;
					    u_xlat3.x = float(1.0) / u_xlat3.x;
					    u_xlat3.x = u_xlat3.x + (-vs_TEXCOORD3.z);
					    u_xlat3.x = u_xlat3.x * _InvFade;
					    u_xlat3.x = clamp(u_xlat3.x, 0.0, 1.0);
					    u_xlat3.x = (-vs_COLOR0.w) * u_xlat3.x + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat1.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz * _TintColor.xyz;
					    u_xlat1.xyz = u_xlat1.xyz * vs_COLOR0.xyz;
					    u_xlat1.w = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat3.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat1 = texture(_CameraDepthTexture, u_xlat3.xy);
					    u_xlat3.x = _ZBufferParams.z * u_xlat1.x + _ZBufferParams.w;
					    u_xlat3.x = float(1.0) / u_xlat3.x;
					    u_xlat3.x = u_xlat3.x + (-vs_TEXCOORD3.z);
					    u_xlat3.x = u_xlat3.x * _InvFade;
					    u_xlat3.x = clamp(u_xlat3.x, 0.0, 1.0);
					    u_xlat3.x = (-vs_COLOR0.w) * u_xlat3.x + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat1.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz * _TintColor.xyz;
					    u_xlat1.xyz = u_xlat1.xyz * vs_COLOR0.xyz;
					    u_xlat1.w = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendMul2" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat3.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat1 = texture(_CameraDepthTexture, u_xlat3.xy);
					    u_xlat3.x = _ZBufferParams.z * u_xlat1.x + _ZBufferParams.w;
					    u_xlat3.x = float(1.0) / u_xlat3.x;
					    u_xlat3.x = u_xlat3.x + (-vs_TEXCOORD3.z);
					    u_xlat3.x = u_xlat3.x * _InvFade;
					    u_xlat3.x = clamp(u_xlat3.x, 0.0, 1.0);
					    u_xlat3.x = (-vs_COLOR0.w) * u_xlat3.x + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat1.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz * _TintColor.xyz;
					    u_xlat1.xyz = u_xlat1.xyz * vs_COLOR0.xyz;
					    u_xlat1.w = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat3.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat1 = texture(_CameraDepthTexture, u_xlat3.xy);
					    u_xlat3.x = _ZBufferParams.z * u_xlat1.x + _ZBufferParams.w;
					    u_xlat3.x = float(1.0) / u_xlat3.x;
					    u_xlat3.x = u_xlat3.x + (-vs_TEXCOORD3.z);
					    u_xlat3.x = u_xlat3.x * _InvFade;
					    u_xlat3.x = clamp(u_xlat3.x, 0.0, 1.0);
					    u_xlat3.x = (-vs_COLOR0.w) * u_xlat3.x + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat1.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz * _TintColor.xyz;
					    u_xlat1.xyz = u_xlat1.xyz * vs_COLOR0.xyz;
					    u_xlat1.w = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendMul2" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat3.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat1 = texture(_CameraDepthTexture, u_xlat3.xy);
					    u_xlat3.x = _ZBufferParams.z * u_xlat1.x + _ZBufferParams.w;
					    u_xlat3.x = float(1.0) / u_xlat3.x;
					    u_xlat3.x = u_xlat3.x + (-vs_TEXCOORD3.z);
					    u_xlat3.x = u_xlat3.x * _InvFade;
					    u_xlat3.x = clamp(u_xlat3.x, 0.0, 1.0);
					    u_xlat3.x = (-vs_COLOR0.w) * u_xlat3.x + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat1.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz * _TintColor.xyz;
					    u_xlat1.xyz = u_xlat1.xyz * vs_COLOR0.xyz;
					    u_xlat1.w = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat3.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat1 = texture(_CameraDepthTexture, u_xlat3.xy);
					    u_xlat3.x = _ZBufferParams.z * u_xlat1.x + _ZBufferParams.w;
					    u_xlat3.x = float(1.0) / u_xlat3.x;
					    u_xlat3.x = u_xlat3.x + (-vs_TEXCOORD3.z);
					    u_xlat3.x = u_xlat3.x * _InvFade;
					    u_xlat3.x = clamp(u_xlat3.x, 0.0, 1.0);
					    u_xlat3.x = (-vs_COLOR0.w) * u_xlat3.x + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat1.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz * _TintColor.xyz;
					    u_xlat1.xyz = u_xlat1.xyz * vs_COLOR0.xyz;
					    u_xlat1.w = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendMul2" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat3.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat1 = texture(_CameraDepthTexture, u_xlat3.xy);
					    u_xlat3.x = _ZBufferParams.z * u_xlat1.x + _ZBufferParams.w;
					    u_xlat3.x = float(1.0) / u_xlat3.x;
					    u_xlat3.x = u_xlat3.x + (-vs_TEXCOORD3.z);
					    u_xlat3.x = u_xlat3.x * _InvFade;
					    u_xlat3.x = clamp(u_xlat3.x, 0.0, 1.0);
					    u_xlat3.x = (-vs_COLOR0.w) * u_xlat3.x + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat1.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz * _TintColor.xyz;
					    u_xlat1.xyz = u_xlat1.xyz * vs_COLOR0.xyz;
					    u_xlat1.w = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat3.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat1 = texture(_CameraDepthTexture, u_xlat3.xy);
					    u_xlat3.x = _ZBufferParams.z * u_xlat1.x + _ZBufferParams.w;
					    u_xlat3.x = float(1.0) / u_xlat3.x;
					    u_xlat3.x = u_xlat3.x + (-vs_TEXCOORD3.z);
					    u_xlat3.x = u_xlat3.x * _InvFade;
					    u_xlat3.x = clamp(u_xlat3.x, 0.0, 1.0);
					    u_xlat3.x = (-vs_COLOR0.w) * u_xlat3.x + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat1.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz * _TintColor.xyz;
					    u_xlat1.xyz = u_xlat1.xyz * vs_COLOR0.xyz;
					    u_xlat1.w = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendMul2" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat3.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat1 = texture(_CameraDepthTexture, u_xlat3.xy);
					    u_xlat3.x = _ZBufferParams.z * u_xlat1.x + _ZBufferParams.w;
					    u_xlat3.x = float(1.0) / u_xlat3.x;
					    u_xlat3.x = u_xlat3.x + (-vs_TEXCOORD3.z);
					    u_xlat3.x = u_xlat3.x * _InvFade;
					    u_xlat3.x = clamp(u_xlat3.x, 0.0, 1.0);
					    u_xlat3.x = (-vs_COLOR0.w) * u_xlat3.x + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat1.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz * _TintColor.xyz;
					    u_xlat1.xyz = u_xlat1.xyz * vs_COLOR0.xyz;
					    u_xlat1.w = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat3.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat1 = texture(_CameraDepthTexture, u_xlat3.xy);
					    u_xlat3.x = _ZBufferParams.z * u_xlat1.x + _ZBufferParams.w;
					    u_xlat3.x = float(1.0) / u_xlat3.x;
					    u_xlat3.x = u_xlat3.x + (-vs_TEXCOORD3.z);
					    u_xlat3.x = u_xlat3.x * _InvFade;
					    u_xlat3.x = clamp(u_xlat3.x, 0.0, 1.0);
					    u_xlat3.x = (-vs_COLOR0.w) * u_xlat3.x + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat1.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz * _TintColor.xyz;
					    u_xlat1.xyz = u_xlat1.xyz * vs_COLOR0.xyz;
					    u_xlat1.w = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendMul2" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat3.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat1 = texture(_CameraDepthTexture, u_xlat3.xy);
					    u_xlat3.x = _ZBufferParams.z * u_xlat1.x + _ZBufferParams.w;
					    u_xlat3.x = float(1.0) / u_xlat3.x;
					    u_xlat3.x = u_xlat3.x + (-vs_TEXCOORD3.z);
					    u_xlat3.x = u_xlat3.x * _InvFade;
					    u_xlat3.x = clamp(u_xlat3.x, 0.0, 1.0);
					    u_xlat3.x = (-vs_COLOR0.w) * u_xlat3.x + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat1.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz * _TintColor.xyz;
					    u_xlat1.xyz = u_xlat1.xyz * vs_COLOR0.xyz;
					    u_xlat1.w = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat3.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat1 = texture(_CameraDepthTexture, u_xlat3.xy);
					    u_xlat3.x = _ZBufferParams.z * u_xlat1.x + _ZBufferParams.w;
					    u_xlat3.x = float(1.0) / u_xlat3.x;
					    u_xlat3.x = u_xlat3.x + (-vs_TEXCOORD3.z);
					    u_xlat3.x = u_xlat3.x * _InvFade;
					    u_xlat3.x = clamp(u_xlat3.x, 0.0, 1.0);
					    u_xlat3.x = (-vs_COLOR0.w) * u_xlat3.x + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat1.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz * _TintColor.xyz;
					    u_xlat1.xyz = u_xlat1.xyz * vs_COLOR0.xyz;
					    u_xlat1.w = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendMul2" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0.xyz = u_xlat0.xyz + u_xlat0.xyz;
					    u_xlat0.xyz = u_xlat0.xyz * _TintColor.xyz;
					    u_xlat1.xyz = u_xlat0.xyz * vs_COLOR0.xyz;
					    u_xlat0.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlatb0 = u_xlat0.w>=u_xlat0.x;
					    u_xlat0.x = u_xlatb0 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat0.x * vs_TEXCOORD4;
					    u_xlat0 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    SV_Target0 = u_xlat1.wwww * u_xlat0 + vec4(0.5, 0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0.xyz = u_xlat0.xyz + u_xlat0.xyz;
					    u_xlat0.xyz = u_xlat0.xyz * _TintColor.xyz;
					    u_xlat1.xyz = u_xlat0.xyz * vs_COLOR0.xyz;
					    u_xlat0.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlatb0 = u_xlat0.w>=u_xlat0.x;
					    u_xlat0.x = u_xlatb0 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat0.x * vs_TEXCOORD4;
					    u_xlat0 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    SV_Target0 = u_xlat1.wwww * u_xlat0 + vec4(0.5, 0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendMul2" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[7];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb0 = u_xlat1.w>=u_xlat0.x;
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    u_xlat1.xyz = u_xlat2.xyz * vs_COLOR0.xyz;
					    u_xlat0.x = u_xlatb0 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat0.x * vs_TEXCOORD4;
					    u_xlat0 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    SV_Target0 = u_xlat1.wwww * u_xlat0 + vec4(0.5, 0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[6];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb0 = u_xlat1.w>=u_xlat0.x;
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    u_xlat1.xyz = u_xlat2.xyz * vs_COLOR0.xyz;
					    u_xlat0.x = u_xlatb0 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat0.x * vs_TEXCOORD4;
					    u_xlat0 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    SV_Target0 = u_xlat1.wwww * u_xlat0 + vec4(0.5, 0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendMul2" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat2.w = u_xlat3.x * vs_TEXCOORD4;
					    u_xlat1 = u_xlat2 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat2.w = u_xlat3.x * vs_TEXCOORD4;
					    u_xlat1 = u_xlat2 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendMul2" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					float u_xlat6;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb0 = u_xlat1.w>=u_xlat0.x;
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    u_xlat1.xyz = u_xlat2.xyz * vs_COLOR0.xyz;
					    u_xlat0.x = u_xlatb0 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat0.x * vs_TEXCOORD4;
					    u_xlat0 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat0.xyz = u_xlat0.xyz * u_xlat1.www;
					    SV_Target0.w = u_xlat1.w * u_xlat0.w + 0.5;
					    u_xlat6 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat6 = (-u_xlat6) + 1.0;
					    u_xlat6 = u_xlat6 * _ProjectionParams.z;
					    u_xlat6 = max(u_xlat6, 0.0);
					    u_xlat6 = u_xlat6 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat6 = clamp(u_xlat6, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat6) * u_xlat0.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					float u_xlat6;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb0 = u_xlat1.w>=u_xlat0.x;
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    u_xlat1.xyz = u_xlat2.xyz * vs_COLOR0.xyz;
					    u_xlat0.x = u_xlatb0 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat0.x * vs_TEXCOORD4;
					    u_xlat0 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat0.xyz = u_xlat0.xyz * u_xlat1.www;
					    SV_Target0.w = u_xlat1.w * u_xlat0.w + 0.5;
					    u_xlat6 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat6 = (-u_xlat6) + 1.0;
					    u_xlat6 = u_xlat6 * _ProjectionParams.z;
					    u_xlat6 = max(u_xlat6, 0.0);
					    u_xlat6 = u_xlat6 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat6 = clamp(u_xlat6, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat6) * u_xlat0.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendMul2" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat2.w = u_xlat3.x * vs_TEXCOORD4;
					    u_xlat1 = u_xlat2 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat2.w = u_xlat3.x * vs_TEXCOORD4;
					    u_xlat1 = u_xlat2 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendMul2" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat3.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat1 = texture(_CameraDepthTexture, u_xlat3.xy);
					    u_xlat3.x = _ZBufferParams.z * u_xlat1.x + _ZBufferParams.w;
					    u_xlat3.x = float(1.0) / u_xlat3.x;
					    u_xlat3.x = u_xlat3.x + (-vs_TEXCOORD3.z);
					    u_xlat3.x = u_xlat3.x * _InvFade;
					    u_xlat3.x = clamp(u_xlat3.x, 0.0, 1.0);
					    u_xlat3.x = (-vs_COLOR0.w) * u_xlat3.x + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat1.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz * _TintColor.xyz;
					    u_xlat1.xyz = u_xlat1.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat3.x * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat3.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat1 = texture(_CameraDepthTexture, u_xlat3.xy);
					    u_xlat3.x = _ZBufferParams.z * u_xlat1.x + _ZBufferParams.w;
					    u_xlat3.x = float(1.0) / u_xlat3.x;
					    u_xlat3.x = u_xlat3.x + (-vs_TEXCOORD3.z);
					    u_xlat3.x = u_xlat3.x * _InvFade;
					    u_xlat3.x = clamp(u_xlat3.x, 0.0, 1.0);
					    u_xlat3.x = (-vs_COLOR0.w) * u_xlat3.x + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat1.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz * _TintColor.xyz;
					    u_xlat1.xyz = u_xlat1.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat3.x * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendMul2" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat2.w = u_xlat3.x * vs_TEXCOORD4;
					    u_xlat1 = u_xlat2 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat2.w = u_xlat3.x * vs_TEXCOORD4;
					    u_xlat1 = u_xlat2 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendMul2" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat3.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat1 = texture(_CameraDepthTexture, u_xlat3.xy);
					    u_xlat3.x = _ZBufferParams.z * u_xlat1.x + _ZBufferParams.w;
					    u_xlat3.x = float(1.0) / u_xlat3.x;
					    u_xlat3.x = u_xlat3.x + (-vs_TEXCOORD3.z);
					    u_xlat3.x = u_xlat3.x * _InvFade;
					    u_xlat3.x = clamp(u_xlat3.x, 0.0, 1.0);
					    u_xlat3.x = (-vs_COLOR0.w) * u_xlat3.x + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat1.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz * _TintColor.xyz;
					    u_xlat1.xyz = u_xlat1.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat3.x * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat3.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat1 = texture(_CameraDepthTexture, u_xlat3.xy);
					    u_xlat3.x = _ZBufferParams.z * u_xlat1.x + _ZBufferParams.w;
					    u_xlat3.x = float(1.0) / u_xlat3.x;
					    u_xlat3.x = u_xlat3.x + (-vs_TEXCOORD3.z);
					    u_xlat3.x = u_xlat3.x * _InvFade;
					    u_xlat3.x = clamp(u_xlat3.x, 0.0, 1.0);
					    u_xlat3.x = (-vs_COLOR0.w) * u_xlat3.x + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat1.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz * _TintColor.xyz;
					    u_xlat1.xyz = u_xlat1.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat3.x * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendMul2" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[7];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb0 = u_xlat1.w>=u_xlat0.x;
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    u_xlat1.xyz = u_xlat2.xyz * vs_COLOR0.xyz;
					    u_xlat0.x = u_xlatb0 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat0.x * vs_TEXCOORD4;
					    u_xlat0 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    SV_Target0 = u_xlat1.wwww * u_xlat0 + vec4(0.5, 0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[6];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb0 = u_xlat1.w>=u_xlat0.x;
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    u_xlat1.xyz = u_xlat2.xyz * vs_COLOR0.xyz;
					    u_xlat0.x = u_xlatb0 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat0.x * vs_TEXCOORD4;
					    u_xlat0 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    SV_Target0 = u_xlat1.wwww * u_xlat0 + vec4(0.5, 0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendMul2" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[7];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb0 = u_xlat1.w>=u_xlat0.x;
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    u_xlat1.xyz = u_xlat2.xyz * vs_COLOR0.xyz;
					    u_xlat0.x = u_xlatb0 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat0.x * vs_TEXCOORD4;
					    u_xlat0 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    SV_Target0 = u_xlat1.wwww * u_xlat0 + vec4(0.5, 0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[6];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb0 = u_xlat1.w>=u_xlat0.x;
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    u_xlat1.xyz = u_xlat2.xyz * vs_COLOR0.xyz;
					    u_xlat0.x = u_xlatb0 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat0.x * vs_TEXCOORD4;
					    u_xlat0 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    SV_Target0 = u_xlat1.wwww * u_xlat0 + vec4(0.5, 0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendMul2" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					float u_xlat6;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb0 = u_xlat1.w>=u_xlat0.x;
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    u_xlat1.xyz = u_xlat2.xyz * vs_COLOR0.xyz;
					    u_xlat0.x = u_xlatb0 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat0.x * vs_TEXCOORD4;
					    u_xlat0 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat0.xyz = u_xlat0.xyz * u_xlat1.www;
					    SV_Target0.w = u_xlat1.w * u_xlat0.w + 0.5;
					    u_xlat6 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat6 = (-u_xlat6) + 1.0;
					    u_xlat6 = u_xlat6 * _ProjectionParams.z;
					    u_xlat6 = max(u_xlat6, 0.0);
					    u_xlat6 = u_xlat6 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat6 = clamp(u_xlat6, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat6) * u_xlat0.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					float u_xlat6;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb0 = u_xlat1.w>=u_xlat0.x;
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    u_xlat1.xyz = u_xlat2.xyz * vs_COLOR0.xyz;
					    u_xlat0.x = u_xlatb0 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat0.x * vs_TEXCOORD4;
					    u_xlat0 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat0.xyz = u_xlat0.xyz * u_xlat1.www;
					    SV_Target0.w = u_xlat1.w * u_xlat0.w + 0.5;
					    u_xlat6 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat6 = (-u_xlat6) + 1.0;
					    u_xlat6 = u_xlat6 * _ProjectionParams.z;
					    u_xlat6 = max(u_xlat6, 0.0);
					    u_xlat6 = u_xlat6 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat6 = clamp(u_xlat6, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat6) * u_xlat0.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendMul2" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					float u_xlat6;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb0 = u_xlat1.w>=u_xlat0.x;
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    u_xlat1.xyz = u_xlat2.xyz * vs_COLOR0.xyz;
					    u_xlat0.x = u_xlatb0 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat0.x * vs_TEXCOORD4;
					    u_xlat0 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat0.xyz = u_xlat0.xyz * u_xlat1.www;
					    SV_Target0.w = u_xlat1.w * u_xlat0.w + 0.5;
					    u_xlat6 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat6 = (-u_xlat6) + 1.0;
					    u_xlat6 = u_xlat6 * _ProjectionParams.z;
					    u_xlat6 = max(u_xlat6, 0.0);
					    u_xlat6 = u_xlat6 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat6 = clamp(u_xlat6, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat6) * u_xlat0.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					float u_xlat6;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb0 = u_xlat1.w>=u_xlat0.x;
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    u_xlat1.xyz = u_xlat2.xyz * vs_COLOR0.xyz;
					    u_xlat0.x = u_xlatb0 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat0.x * vs_TEXCOORD4;
					    u_xlat0 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat0.xyz = u_xlat0.xyz * u_xlat1.www;
					    SV_Target0.w = u_xlat1.w * u_xlat0.w + 0.5;
					    u_xlat6 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat6 = (-u_xlat6) + 1.0;
					    u_xlat6 = u_xlat6 * _ProjectionParams.z;
					    u_xlat6 = max(u_xlat6, 0.0);
					    u_xlat6 = u_xlat6 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat6 = clamp(u_xlat6, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat6) * u_xlat0.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendMul2" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat3.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat1 = texture(_CameraDepthTexture, u_xlat3.xy);
					    u_xlat3.x = _ZBufferParams.z * u_xlat1.x + _ZBufferParams.w;
					    u_xlat3.x = float(1.0) / u_xlat3.x;
					    u_xlat3.x = u_xlat3.x + (-vs_TEXCOORD3.z);
					    u_xlat3.x = u_xlat3.x * _InvFade;
					    u_xlat3.x = clamp(u_xlat3.x, 0.0, 1.0);
					    u_xlat3.x = (-vs_COLOR0.w) * u_xlat3.x + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat1.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz * _TintColor.xyz;
					    u_xlat1.xyz = u_xlat1.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat3.x * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat3.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat1 = texture(_CameraDepthTexture, u_xlat3.xy);
					    u_xlat3.x = _ZBufferParams.z * u_xlat1.x + _ZBufferParams.w;
					    u_xlat3.x = float(1.0) / u_xlat3.x;
					    u_xlat3.x = u_xlat3.x + (-vs_TEXCOORD3.z);
					    u_xlat3.x = u_xlat3.x * _InvFade;
					    u_xlat3.x = clamp(u_xlat3.x, 0.0, 1.0);
					    u_xlat3.x = (-vs_COLOR0.w) * u_xlat3.x + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat1.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz * _TintColor.xyz;
					    u_xlat1.xyz = u_xlat1.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat3.x * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendMul2" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat3.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat1 = texture(_CameraDepthTexture, u_xlat3.xy);
					    u_xlat3.x = _ZBufferParams.z * u_xlat1.x + _ZBufferParams.w;
					    u_xlat3.x = float(1.0) / u_xlat3.x;
					    u_xlat3.x = u_xlat3.x + (-vs_TEXCOORD3.z);
					    u_xlat3.x = u_xlat3.x * _InvFade;
					    u_xlat3.x = clamp(u_xlat3.x, 0.0, 1.0);
					    u_xlat3.x = (-vs_COLOR0.w) * u_xlat3.x + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat1.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz * _TintColor.xyz;
					    u_xlat1.xyz = u_xlat1.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat3.x * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat3.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat1 = texture(_CameraDepthTexture, u_xlat3.xy);
					    u_xlat3.x = _ZBufferParams.z * u_xlat1.x + _ZBufferParams.w;
					    u_xlat3.x = float(1.0) / u_xlat3.x;
					    u_xlat3.x = u_xlat3.x + (-vs_TEXCOORD3.z);
					    u_xlat3.x = u_xlat3.x * _InvFade;
					    u_xlat3.x = clamp(u_xlat3.x, 0.0, 1.0);
					    u_xlat3.x = (-vs_COLOR0.w) * u_xlat3.x + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat1.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz * _TintColor.xyz;
					    u_xlat1.xyz = u_xlat1.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat3.x * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendMul2" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat3.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat1 = texture(_CameraDepthTexture, u_xlat3.xy);
					    u_xlat3.x = _ZBufferParams.z * u_xlat1.x + _ZBufferParams.w;
					    u_xlat3.x = float(1.0) / u_xlat3.x;
					    u_xlat3.x = u_xlat3.x + (-vs_TEXCOORD3.z);
					    u_xlat3.x = u_xlat3.x * _InvFade;
					    u_xlat3.x = clamp(u_xlat3.x, 0.0, 1.0);
					    u_xlat3.x = (-vs_COLOR0.w) * u_xlat3.x + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat1.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz * _TintColor.xyz;
					    u_xlat1.xyz = u_xlat1.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat3.x * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat3.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat1 = texture(_CameraDepthTexture, u_xlat3.xy);
					    u_xlat3.x = _ZBufferParams.z * u_xlat1.x + _ZBufferParams.w;
					    u_xlat3.x = float(1.0) / u_xlat3.x;
					    u_xlat3.x = u_xlat3.x + (-vs_TEXCOORD3.z);
					    u_xlat3.x = u_xlat3.x * _InvFade;
					    u_xlat3.x = clamp(u_xlat3.x, 0.0, 1.0);
					    u_xlat3.x = (-vs_COLOR0.w) * u_xlat3.x + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat1.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz * _TintColor.xyz;
					    u_xlat1.xyz = u_xlat1.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat3.x * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendMul2" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat3.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat1 = texture(_CameraDepthTexture, u_xlat3.xy);
					    u_xlat3.x = _ZBufferParams.z * u_xlat1.x + _ZBufferParams.w;
					    u_xlat3.x = float(1.0) / u_xlat3.x;
					    u_xlat3.x = u_xlat3.x + (-vs_TEXCOORD3.z);
					    u_xlat3.x = u_xlat3.x * _InvFade;
					    u_xlat3.x = clamp(u_xlat3.x, 0.0, 1.0);
					    u_xlat3.x = (-vs_COLOR0.w) * u_xlat3.x + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat1.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz * _TintColor.xyz;
					    u_xlat1.xyz = u_xlat1.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat3.x * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight_OFF" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat3.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat1 = texture(_CameraDepthTexture, u_xlat3.xy);
					    u_xlat3.x = _ZBufferParams.z * u_xlat1.x + _ZBufferParams.w;
					    u_xlat3.x = float(1.0) / u_xlat3.x;
					    u_xlat3.x = u_xlat3.x + (-vs_TEXCOORD3.z);
					    u_xlat3.x = u_xlat3.x * _InvFade;
					    u_xlat3.x = clamp(u_xlat3.x, 0.0, 1.0);
					    u_xlat3.x = (-vs_COLOR0.w) * u_xlat3.x + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat1.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz * _TintColor.xyz;
					    u_xlat1.xyz = u_xlat1.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat3.x * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendMul2" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat0 = u_xlat0 * vs_COLOR0;
					    u_xlat0.w = u_xlat0.w;
					    u_xlat0.w = clamp(u_xlat0.w, 0.0, 1.0);
					    u_xlat1 = u_xlat0 + vec4(-0.5, -0.5, -0.5, -0.5);
					    SV_Target0 = u_xlat0.wwww * u_xlat1 + vec4(0.5, 0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat0 = u_xlat0 * vs_COLOR0;
					    u_xlat0.w = u_xlat0.w;
					    u_xlat0.w = clamp(u_xlat0.w, 0.0, 1.0);
					    u_xlat1 = u_xlat0 + vec4(-0.5, -0.5, -0.5, -0.5);
					    SV_Target0 = u_xlat0.wwww * u_xlat1 + vec4(0.5, 0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendMul2" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat0 = u_xlat0 * vs_COLOR0;
					    u_xlat0.w = u_xlat0.w;
					    u_xlat0.w = clamp(u_xlat0.w, 0.0, 1.0);
					    u_xlat1 = u_xlat0 + vec4(-0.5, -0.5, -0.5, -0.5);
					    SV_Target0 = u_xlat0.wwww * u_xlat1 + vec4(0.5, 0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat0 = u_xlat0 * vs_COLOR0;
					    u_xlat0.w = u_xlat0.w;
					    u_xlat0.w = clamp(u_xlat0.w, 0.0, 1.0);
					    u_xlat1 = u_xlat0 + vec4(-0.5, -0.5, -0.5, -0.5);
					    SV_Target0 = u_xlat0.wwww * u_xlat1 + vec4(0.5, 0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendMul2" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendMul2" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendMul2" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendMul2" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendMul2" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendMul2" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendMul2" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat0 = u_xlat0 * vs_COLOR0;
					    u_xlat0.w = u_xlat0.w;
					    u_xlat0.w = clamp(u_xlat0.w, 0.0, 1.0);
					    u_xlat1 = u_xlat0 + vec4(-0.5, -0.5, -0.5, -0.5);
					    SV_Target0 = u_xlat0.wwww * u_xlat1 + vec4(0.5, 0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat0 = u_xlat0 * vs_COLOR0;
					    u_xlat0.w = u_xlat0.w;
					    u_xlat0.w = clamp(u_xlat0.w, 0.0, 1.0);
					    u_xlat1 = u_xlat0 + vec4(-0.5, -0.5, -0.5, -0.5);
					    SV_Target0 = u_xlat0.wwww * u_xlat1 + vec4(0.5, 0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendMul2" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat0 = u_xlat0 * vs_COLOR0;
					    u_xlat0.w = u_xlat0.w;
					    u_xlat0.w = clamp(u_xlat0.w, 0.0, 1.0);
					    u_xlat1 = u_xlat0 + vec4(-0.5, -0.5, -0.5, -0.5);
					    SV_Target0 = u_xlat0.wwww * u_xlat1 + vec4(0.5, 0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat0 = u_xlat0 * vs_COLOR0;
					    u_xlat0.w = u_xlat0.w;
					    u_xlat0.w = clamp(u_xlat0.w, 0.0, 1.0);
					    u_xlat1 = u_xlat0 + vec4(-0.5, -0.5, -0.5, -0.5);
					    SV_Target0 = u_xlat0.wwww * u_xlat1 + vec4(0.5, 0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendMul2" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendMul2" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendMul2" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendMul2" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendMul2" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendMul2" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendMul2" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat6;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat0 = u_xlat0 * vs_COLOR0;
					    u_xlat6 = u_xlat0.w;
					    u_xlat6 = clamp(u_xlat6, 0.0, 1.0);
					    u_xlat0.w = u_xlat6 * vs_TEXCOORD4;
					    u_xlat1 = u_xlat0 + vec4(-0.5, -0.5, -0.5, -0.5);
					    SV_Target0 = u_xlat0.wwww * u_xlat1 + vec4(0.5, 0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat6;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat0 = u_xlat0 * vs_COLOR0;
					    u_xlat6 = u_xlat0.w;
					    u_xlat6 = clamp(u_xlat6, 0.0, 1.0);
					    u_xlat0.w = u_xlat6 * vs_TEXCOORD4;
					    u_xlat1 = u_xlat0 + vec4(-0.5, -0.5, -0.5, -0.5);
					    SV_Target0 = u_xlat0.wwww * u_xlat1 + vec4(0.5, 0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendMul2" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat6;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat0 = u_xlat0 * vs_COLOR0;
					    u_xlat6 = u_xlat0.w;
					    u_xlat6 = clamp(u_xlat6, 0.0, 1.0);
					    u_xlat0.w = u_xlat6 * vs_TEXCOORD4;
					    u_xlat1 = u_xlat0 + vec4(-0.5, -0.5, -0.5, -0.5);
					    SV_Target0 = u_xlat0.wwww * u_xlat1 + vec4(0.5, 0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat6;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat0 = u_xlat0 * vs_COLOR0;
					    u_xlat6 = u_xlat0.w;
					    u_xlat6 = clamp(u_xlat6, 0.0, 1.0);
					    u_xlat0.w = u_xlat6 * vs_TEXCOORD4;
					    u_xlat1 = u_xlat0 + vec4(-0.5, -0.5, -0.5, -0.5);
					    SV_Target0 = u_xlat0.wwww * u_xlat1 + vec4(0.5, 0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendMul2" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendMul2" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendMul2" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendMul2" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendMul2" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendMul2" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendMul2" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat6;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat0 = u_xlat0 * vs_COLOR0;
					    u_xlat6 = u_xlat0.w;
					    u_xlat6 = clamp(u_xlat6, 0.0, 1.0);
					    u_xlat0.w = u_xlat6 * vs_TEXCOORD4;
					    u_xlat1 = u_xlat0 + vec4(-0.5, -0.5, -0.5, -0.5);
					    SV_Target0 = u_xlat0.wwww * u_xlat1 + vec4(0.5, 0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat6;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat0 = u_xlat0 * vs_COLOR0;
					    u_xlat6 = u_xlat0.w;
					    u_xlat6 = clamp(u_xlat6, 0.0, 1.0);
					    u_xlat0.w = u_xlat6 * vs_TEXCOORD4;
					    u_xlat1 = u_xlat0 + vec4(-0.5, -0.5, -0.5, -0.5);
					    SV_Target0 = u_xlat0.wwww * u_xlat1 + vec4(0.5, 0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendMul2" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat6;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat0 = u_xlat0 * vs_COLOR0;
					    u_xlat6 = u_xlat0.w;
					    u_xlat6 = clamp(u_xlat6, 0.0, 1.0);
					    u_xlat0.w = u_xlat6 * vs_TEXCOORD4;
					    u_xlat1 = u_xlat0 + vec4(-0.5, -0.5, -0.5, -0.5);
					    SV_Target0 = u_xlat0.wwww * u_xlat1 + vec4(0.5, 0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat6;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat0 = u_xlat0 * vs_COLOR0;
					    u_xlat6 = u_xlat0.w;
					    u_xlat6 = clamp(u_xlat6, 0.0, 1.0);
					    u_xlat0.w = u_xlat6 * vs_TEXCOORD4;
					    u_xlat1 = u_xlat0 + vec4(-0.5, -0.5, -0.5, -0.5);
					    SV_Target0 = u_xlat0.wwww * u_xlat1 + vec4(0.5, 0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendMul2" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendMul2" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendMul2" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendMul2" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendMul2" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendMul2" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendMul2" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					bool u_xlatb1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1.x = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat0.w = u_xlat0.w * u_xlat1.x;
					    u_xlat0 = u_xlat0 * vs_COLOR0;
					    u_xlat0.w = u_xlat0.w;
					    u_xlat0.w = clamp(u_xlat0.w, 0.0, 1.0);
					    u_xlat1 = u_xlat0 + vec4(-0.5, -0.5, -0.5, -0.5);
					    SV_Target0 = u_xlat0.wwww * u_xlat1 + vec4(0.5, 0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					bool u_xlatb1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1.x = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat0.w = u_xlat0.w * u_xlat1.x;
					    u_xlat0 = u_xlat0 * vs_COLOR0;
					    u_xlat0.w = u_xlat0.w;
					    u_xlat0.w = clamp(u_xlat0.w, 0.0, 1.0);
					    u_xlat1 = u_xlat0 + vec4(-0.5, -0.5, -0.5, -0.5);
					    SV_Target0 = u_xlat0.wwww * u_xlat1 + vec4(0.5, 0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendMul2" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					bool u_xlatb1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1.x = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat0.w = u_xlat0.w * u_xlat1.x;
					    u_xlat0 = u_xlat0 * vs_COLOR0;
					    u_xlat0.w = u_xlat0.w;
					    u_xlat0.w = clamp(u_xlat0.w, 0.0, 1.0);
					    u_xlat1 = u_xlat0 + vec4(-0.5, -0.5, -0.5, -0.5);
					    SV_Target0 = u_xlat0.wwww * u_xlat1 + vec4(0.5, 0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					bool u_xlatb1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1.x = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat0.w = u_xlat0.w * u_xlat1.x;
					    u_xlat0 = u_xlat0 * vs_COLOR0;
					    u_xlat0.w = u_xlat0.w;
					    u_xlat0.w = clamp(u_xlat0.w, 0.0, 1.0);
					    u_xlat1 = u_xlat0 + vec4(-0.5, -0.5, -0.5, -0.5);
					    SV_Target0 = u_xlat0.wwww * u_xlat1 + vec4(0.5, 0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendMul2" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3.x;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3.x;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendMul2" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3.x;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3.x;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendMul2" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3.x;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3.x;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendMul2" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3.x;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3.x;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendMul2" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3.x;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3.x;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendMul2" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3.x;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3.x;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendMul2" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					bool u_xlatb1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1.x = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat0.w = u_xlat0.w * u_xlat1.x;
					    u_xlat0 = u_xlat0 * vs_COLOR0;
					    u_xlat0.w = u_xlat0.w;
					    u_xlat0.w = clamp(u_xlat0.w, 0.0, 1.0);
					    u_xlat1 = u_xlat0 + vec4(-0.5, -0.5, -0.5, -0.5);
					    SV_Target0 = u_xlat0.wwww * u_xlat1 + vec4(0.5, 0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					bool u_xlatb1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1.x = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat0.w = u_xlat0.w * u_xlat1.x;
					    u_xlat0 = u_xlat0 * vs_COLOR0;
					    u_xlat0.w = u_xlat0.w;
					    u_xlat0.w = clamp(u_xlat0.w, 0.0, 1.0);
					    u_xlat1 = u_xlat0 + vec4(-0.5, -0.5, -0.5, -0.5);
					    SV_Target0 = u_xlat0.wwww * u_xlat1 + vec4(0.5, 0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendMul2" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					bool u_xlatb1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1.x = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat0.w = u_xlat0.w * u_xlat1.x;
					    u_xlat0 = u_xlat0 * vs_COLOR0;
					    u_xlat0.w = u_xlat0.w;
					    u_xlat0.w = clamp(u_xlat0.w, 0.0, 1.0);
					    u_xlat1 = u_xlat0 + vec4(-0.5, -0.5, -0.5, -0.5);
					    SV_Target0 = u_xlat0.wwww * u_xlat1 + vec4(0.5, 0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					bool u_xlatb1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1.x = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat0.w = u_xlat0.w * u_xlat1.x;
					    u_xlat0 = u_xlat0 * vs_COLOR0;
					    u_xlat0.w = u_xlat0.w;
					    u_xlat0.w = clamp(u_xlat0.w, 0.0, 1.0);
					    u_xlat1 = u_xlat0 + vec4(-0.5, -0.5, -0.5, -0.5);
					    SV_Target0 = u_xlat0.wwww * u_xlat1 + vec4(0.5, 0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendMul2" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3.x;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3.x;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendMul2" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3.x;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3.x;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendMul2" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3.x;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3.x;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendMul2" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3.x;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3.x;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendMul2" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3.x;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3.x;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendMul2" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3.x;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3.x;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendMul2" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					bool u_xlatb1;
					float u_xlat6;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1.x = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat0.w = u_xlat0.w * u_xlat1.x;
					    u_xlat0 = u_xlat0 * vs_COLOR0;
					    u_xlat6 = u_xlat0.w;
					    u_xlat6 = clamp(u_xlat6, 0.0, 1.0);
					    u_xlat0.w = u_xlat6 * vs_TEXCOORD4;
					    u_xlat1 = u_xlat0 + vec4(-0.5, -0.5, -0.5, -0.5);
					    SV_Target0 = u_xlat0.wwww * u_xlat1 + vec4(0.5, 0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					bool u_xlatb1;
					float u_xlat6;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1.x = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat0.w = u_xlat0.w * u_xlat1.x;
					    u_xlat0 = u_xlat0 * vs_COLOR0;
					    u_xlat6 = u_xlat0.w;
					    u_xlat6 = clamp(u_xlat6, 0.0, 1.0);
					    u_xlat0.w = u_xlat6 * vs_TEXCOORD4;
					    u_xlat1 = u_xlat0 + vec4(-0.5, -0.5, -0.5, -0.5);
					    SV_Target0 = u_xlat0.wwww * u_xlat1 + vec4(0.5, 0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendMul2" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					bool u_xlatb1;
					float u_xlat6;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1.x = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat0.w = u_xlat0.w * u_xlat1.x;
					    u_xlat0 = u_xlat0 * vs_COLOR0;
					    u_xlat6 = u_xlat0.w;
					    u_xlat6 = clamp(u_xlat6, 0.0, 1.0);
					    u_xlat0.w = u_xlat6 * vs_TEXCOORD4;
					    u_xlat1 = u_xlat0 + vec4(-0.5, -0.5, -0.5, -0.5);
					    SV_Target0 = u_xlat0.wwww * u_xlat1 + vec4(0.5, 0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					bool u_xlatb1;
					float u_xlat6;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1.x = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat0.w = u_xlat0.w * u_xlat1.x;
					    u_xlat0 = u_xlat0 * vs_COLOR0;
					    u_xlat6 = u_xlat0.w;
					    u_xlat6 = clamp(u_xlat6, 0.0, 1.0);
					    u_xlat0.w = u_xlat6 * vs_TEXCOORD4;
					    u_xlat1 = u_xlat0 + vec4(-0.5, -0.5, -0.5, -0.5);
					    SV_Target0 = u_xlat0.wwww * u_xlat1 + vec4(0.5, 0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendMul2" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3.x;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3.x;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendMul2" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3.x;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3.x;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendMul2" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3.x;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3.x;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendMul2" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3.x;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3.x;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendMul2" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3.x;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3.x;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendMul2" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3.x;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3.x;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendMul2" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					bool u_xlatb1;
					float u_xlat6;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1.x = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat0.w = u_xlat0.w * u_xlat1.x;
					    u_xlat0 = u_xlat0 * vs_COLOR0;
					    u_xlat6 = u_xlat0.w;
					    u_xlat6 = clamp(u_xlat6, 0.0, 1.0);
					    u_xlat0.w = u_xlat6 * vs_TEXCOORD4;
					    u_xlat1 = u_xlat0 + vec4(-0.5, -0.5, -0.5, -0.5);
					    SV_Target0 = u_xlat0.wwww * u_xlat1 + vec4(0.5, 0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					bool u_xlatb1;
					float u_xlat6;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1.x = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat0.w = u_xlat0.w * u_xlat1.x;
					    u_xlat0 = u_xlat0 * vs_COLOR0;
					    u_xlat6 = u_xlat0.w;
					    u_xlat6 = clamp(u_xlat6, 0.0, 1.0);
					    u_xlat0.w = u_xlat6 * vs_TEXCOORD4;
					    u_xlat1 = u_xlat0 + vec4(-0.5, -0.5, -0.5, -0.5);
					    SV_Target0 = u_xlat0.wwww * u_xlat1 + vec4(0.5, 0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendMul2" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					bool u_xlatb1;
					float u_xlat6;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1.x = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat0.w = u_xlat0.w * u_xlat1.x;
					    u_xlat0 = u_xlat0 * vs_COLOR0;
					    u_xlat6 = u_xlat0.w;
					    u_xlat6 = clamp(u_xlat6, 0.0, 1.0);
					    u_xlat0.w = u_xlat6 * vs_TEXCOORD4;
					    u_xlat1 = u_xlat0 + vec4(-0.5, -0.5, -0.5, -0.5);
					    SV_Target0 = u_xlat0.wwww * u_xlat1 + vec4(0.5, 0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					bool u_xlatb1;
					float u_xlat6;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1.x = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat0.w = u_xlat0.w * u_xlat1.x;
					    u_xlat0 = u_xlat0 * vs_COLOR0;
					    u_xlat6 = u_xlat0.w;
					    u_xlat6 = clamp(u_xlat6, 0.0, 1.0);
					    u_xlat0.w = u_xlat6 * vs_TEXCOORD4;
					    u_xlat1 = u_xlat0 + vec4(-0.5, -0.5, -0.5, -0.5);
					    SV_Target0 = u_xlat0.wwww * u_xlat1 + vec4(0.5, 0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendMul2" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3.x;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3.x;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendMul2" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3.x;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3.x;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendMul2" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3.x;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3.x;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendMul2" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3.x;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3.x;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendMul2" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3.x;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3.x;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendMul2" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3.x;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3.x;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendMul2" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlat0.xyz = u_xlat0.xyz + u_xlat0.xyz;
					    u_xlat0.xyz = u_xlat0.xyz * _TintColor.xyz;
					    u_xlat1.xyz = u_xlat0.xyz * vs_COLOR0.xyz;
					    u_xlat0.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlatb0 = u_xlat0.w>=u_xlat0.x;
					    u_xlat1.w = u_xlatb0 ? 1.0 : float(0.0);
					    u_xlat0 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    SV_Target0 = u_xlat1.wwww * u_xlat0 + vec4(0.5, 0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlat0.xyz = u_xlat0.xyz + u_xlat0.xyz;
					    u_xlat0.xyz = u_xlat0.xyz * _TintColor.xyz;
					    u_xlat1.xyz = u_xlat0.xyz * vs_COLOR0.xyz;
					    u_xlat0.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlatb0 = u_xlat0.w>=u_xlat0.x;
					    u_xlat1.w = u_xlatb0 ? 1.0 : float(0.0);
					    u_xlat0 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    SV_Target0 = u_xlat1.wwww * u_xlat0 + vec4(0.5, 0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendMul2" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlat0.xyz = u_xlat0.xyz + u_xlat0.xyz;
					    u_xlat0.xyz = u_xlat0.xyz * _TintColor.xyz;
					    u_xlat1.xyz = u_xlat0.xyz * vs_COLOR0.xyz;
					    u_xlat0.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlatb0 = u_xlat0.w>=u_xlat0.x;
					    u_xlat1.w = u_xlatb0 ? 1.0 : float(0.0);
					    u_xlat0 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    SV_Target0 = u_xlat1.wwww * u_xlat0 + vec4(0.5, 0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlat0.xyz = u_xlat0.xyz + u_xlat0.xyz;
					    u_xlat0.xyz = u_xlat0.xyz * _TintColor.xyz;
					    u_xlat1.xyz = u_xlat0.xyz * vs_COLOR0.xyz;
					    u_xlat0.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlatb0 = u_xlat0.w>=u_xlat0.x;
					    u_xlat1.w = u_xlatb0 ? 1.0 : float(0.0);
					    u_xlat0 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    SV_Target0 = u_xlat1.wwww * u_xlat0 + vec4(0.5, 0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendMul2" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat2.w = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1 = u_xlat2 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat2.w = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1 = u_xlat2 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendMul2" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat2.w = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1 = u_xlat2 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat2.w = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1 = u_xlat2 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendMul2" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat2.w = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1 = u_xlat2 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat2.w = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1 = u_xlat2 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendMul2" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat2.w = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1 = u_xlat2 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat2.w = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1 = u_xlat2 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendMul2" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat2.w = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1 = u_xlat2 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat2.w = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1 = u_xlat2 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendMul2" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat2.w = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1 = u_xlat2 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat2.w = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1 = u_xlat2 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendMul2" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlat0.xyz = u_xlat0.xyz + u_xlat0.xyz;
					    u_xlat0.xyz = u_xlat0.xyz * _TintColor.xyz;
					    u_xlat1.xyz = u_xlat0.xyz * vs_COLOR0.xyz;
					    u_xlat0.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlatb0 = u_xlat0.w>=u_xlat0.x;
					    u_xlat1.w = u_xlatb0 ? 1.0 : float(0.0);
					    u_xlat0 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    SV_Target0 = u_xlat1.wwww * u_xlat0 + vec4(0.5, 0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlat0.xyz = u_xlat0.xyz + u_xlat0.xyz;
					    u_xlat0.xyz = u_xlat0.xyz * _TintColor.xyz;
					    u_xlat1.xyz = u_xlat0.xyz * vs_COLOR0.xyz;
					    u_xlat0.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlatb0 = u_xlat0.w>=u_xlat0.x;
					    u_xlat1.w = u_xlatb0 ? 1.0 : float(0.0);
					    u_xlat0 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    SV_Target0 = u_xlat1.wwww * u_xlat0 + vec4(0.5, 0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendMul2" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlat0.xyz = u_xlat0.xyz + u_xlat0.xyz;
					    u_xlat0.xyz = u_xlat0.xyz * _TintColor.xyz;
					    u_xlat1.xyz = u_xlat0.xyz * vs_COLOR0.xyz;
					    u_xlat0.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlatb0 = u_xlat0.w>=u_xlat0.x;
					    u_xlat1.w = u_xlatb0 ? 1.0 : float(0.0);
					    u_xlat0 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    SV_Target0 = u_xlat1.wwww * u_xlat0 + vec4(0.5, 0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlat0.xyz = u_xlat0.xyz + u_xlat0.xyz;
					    u_xlat0.xyz = u_xlat0.xyz * _TintColor.xyz;
					    u_xlat1.xyz = u_xlat0.xyz * vs_COLOR0.xyz;
					    u_xlat0.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlatb0 = u_xlat0.w>=u_xlat0.x;
					    u_xlat1.w = u_xlatb0 ? 1.0 : float(0.0);
					    u_xlat0 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    SV_Target0 = u_xlat1.wwww * u_xlat0 + vec4(0.5, 0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendMul2" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat2.w = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1 = u_xlat2 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat2.w = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1 = u_xlat2 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendMul2" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat2.w = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1 = u_xlat2 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat2.w = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1 = u_xlat2 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendMul2" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat2.w = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1 = u_xlat2 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat2.w = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1 = u_xlat2 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendMul2" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat2.w = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1 = u_xlat2 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat2.w = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1 = u_xlat2 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendMul2" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat2.w = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1 = u_xlat2 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat2.w = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1 = u_xlat2 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendMul2" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat2.w = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1 = u_xlat2 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat2.w = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1 = u_xlat2 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendMul2" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlat0.xyz = u_xlat0.xyz + u_xlat0.xyz;
					    u_xlat0.xyz = u_xlat0.xyz * _TintColor.xyz;
					    u_xlat1.xyz = u_xlat0.xyz * vs_COLOR0.xyz;
					    u_xlat0.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlatb0 = u_xlat0.w>=u_xlat0.x;
					    u_xlat0.x = u_xlatb0 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat0.x * vs_TEXCOORD4;
					    u_xlat0 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    SV_Target0 = u_xlat1.wwww * u_xlat0 + vec4(0.5, 0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlat0.xyz = u_xlat0.xyz + u_xlat0.xyz;
					    u_xlat0.xyz = u_xlat0.xyz * _TintColor.xyz;
					    u_xlat1.xyz = u_xlat0.xyz * vs_COLOR0.xyz;
					    u_xlat0.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlatb0 = u_xlat0.w>=u_xlat0.x;
					    u_xlat0.x = u_xlatb0 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat0.x * vs_TEXCOORD4;
					    u_xlat0 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    SV_Target0 = u_xlat1.wwww * u_xlat0 + vec4(0.5, 0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendMul2" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlat0.xyz = u_xlat0.xyz + u_xlat0.xyz;
					    u_xlat0.xyz = u_xlat0.xyz * _TintColor.xyz;
					    u_xlat1.xyz = u_xlat0.xyz * vs_COLOR0.xyz;
					    u_xlat0.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlatb0 = u_xlat0.w>=u_xlat0.x;
					    u_xlat0.x = u_xlatb0 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat0.x * vs_TEXCOORD4;
					    u_xlat0 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    SV_Target0 = u_xlat1.wwww * u_xlat0 + vec4(0.5, 0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlat0.xyz = u_xlat0.xyz + u_xlat0.xyz;
					    u_xlat0.xyz = u_xlat0.xyz * _TintColor.xyz;
					    u_xlat1.xyz = u_xlat0.xyz * vs_COLOR0.xyz;
					    u_xlat0.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlatb0 = u_xlat0.w>=u_xlat0.x;
					    u_xlat0.x = u_xlatb0 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat0.x * vs_TEXCOORD4;
					    u_xlat0 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    SV_Target0 = u_xlat1.wwww * u_xlat0 + vec4(0.5, 0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendMul2" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat2.w = u_xlat3.x * vs_TEXCOORD4;
					    u_xlat1 = u_xlat2 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat2.w = u_xlat3.x * vs_TEXCOORD4;
					    u_xlat1 = u_xlat2 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendMul2" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat2.w = u_xlat3.x * vs_TEXCOORD4;
					    u_xlat1 = u_xlat2 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat2.w = u_xlat3.x * vs_TEXCOORD4;
					    u_xlat1 = u_xlat2 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendMul2" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat2.w = u_xlat3.x * vs_TEXCOORD4;
					    u_xlat1 = u_xlat2 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat2.w = u_xlat3.x * vs_TEXCOORD4;
					    u_xlat1 = u_xlat2 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendMul2" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat2.w = u_xlat3.x * vs_TEXCOORD4;
					    u_xlat1 = u_xlat2 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat2.w = u_xlat3.x * vs_TEXCOORD4;
					    u_xlat1 = u_xlat2 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendMul2" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat2.w = u_xlat3.x * vs_TEXCOORD4;
					    u_xlat1 = u_xlat2 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat2.w = u_xlat3.x * vs_TEXCOORD4;
					    u_xlat1 = u_xlat2 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendMul2" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat2.w = u_xlat3.x * vs_TEXCOORD4;
					    u_xlat1 = u_xlat2 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat2.w = u_xlat3.x * vs_TEXCOORD4;
					    u_xlat1 = u_xlat2 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendMul2" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlat0.xyz = u_xlat0.xyz + u_xlat0.xyz;
					    u_xlat0.xyz = u_xlat0.xyz * _TintColor.xyz;
					    u_xlat1.xyz = u_xlat0.xyz * vs_COLOR0.xyz;
					    u_xlat0.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlatb0 = u_xlat0.w>=u_xlat0.x;
					    u_xlat0.x = u_xlatb0 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat0.x * vs_TEXCOORD4;
					    u_xlat0 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    SV_Target0 = u_xlat1.wwww * u_xlat0 + vec4(0.5, 0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlat0.xyz = u_xlat0.xyz + u_xlat0.xyz;
					    u_xlat0.xyz = u_xlat0.xyz * _TintColor.xyz;
					    u_xlat1.xyz = u_xlat0.xyz * vs_COLOR0.xyz;
					    u_xlat0.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlatb0 = u_xlat0.w>=u_xlat0.x;
					    u_xlat0.x = u_xlatb0 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat0.x * vs_TEXCOORD4;
					    u_xlat0 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    SV_Target0 = u_xlat1.wwww * u_xlat0 + vec4(0.5, 0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendMul2" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlat0.xyz = u_xlat0.xyz + u_xlat0.xyz;
					    u_xlat0.xyz = u_xlat0.xyz * _TintColor.xyz;
					    u_xlat1.xyz = u_xlat0.xyz * vs_COLOR0.xyz;
					    u_xlat0.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlatb0 = u_xlat0.w>=u_xlat0.x;
					    u_xlat0.x = u_xlatb0 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat0.x * vs_TEXCOORD4;
					    u_xlat0 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    SV_Target0 = u_xlat1.wwww * u_xlat0 + vec4(0.5, 0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlat0.xyz = u_xlat0.xyz + u_xlat0.xyz;
					    u_xlat0.xyz = u_xlat0.xyz * _TintColor.xyz;
					    u_xlat1.xyz = u_xlat0.xyz * vs_COLOR0.xyz;
					    u_xlat0.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlatb0 = u_xlat0.w>=u_xlat0.x;
					    u_xlat0.x = u_xlatb0 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat0.x * vs_TEXCOORD4;
					    u_xlat0 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    SV_Target0 = u_xlat1.wwww * u_xlat0 + vec4(0.5, 0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendMul2" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat2.w = u_xlat3.x * vs_TEXCOORD4;
					    u_xlat1 = u_xlat2 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat2.w = u_xlat3.x * vs_TEXCOORD4;
					    u_xlat1 = u_xlat2 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendMul2" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat2.w = u_xlat3.x * vs_TEXCOORD4;
					    u_xlat1 = u_xlat2 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat2.w = u_xlat3.x * vs_TEXCOORD4;
					    u_xlat1 = u_xlat2 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendMul2" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat2.w = u_xlat3.x * vs_TEXCOORD4;
					    u_xlat1 = u_xlat2 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat2.w = u_xlat3.x * vs_TEXCOORD4;
					    u_xlat1 = u_xlat2 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendMul2" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat2.w = u_xlat3.x * vs_TEXCOORD4;
					    u_xlat1 = u_xlat2 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat2.w = u_xlat3.x * vs_TEXCOORD4;
					    u_xlat1 = u_xlat2 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendMul2" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat2.w = u_xlat3.x * vs_TEXCOORD4;
					    u_xlat1 = u_xlat2 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat2.w = u_xlat3.x * vs_TEXCOORD4;
					    u_xlat1 = u_xlat2 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendMul2" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat2.w = u_xlat3.x * vs_TEXCOORD4;
					    u_xlat1 = u_xlat2 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat2.w = u_xlat3.x * vs_TEXCOORD4;
					    u_xlat1 = u_xlat2 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendMul2" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat0 = u_xlat0 * vs_COLOR0;
					    u_xlat0.w = u_xlat0.w;
					    u_xlat0.w = clamp(u_xlat0.w, 0.0, 1.0);
					    u_xlat1 = u_xlat0 + vec4(-0.5, -0.5, -0.5, -0.5);
					    SV_Target0 = u_xlat0.wwww * u_xlat1 + vec4(0.5, 0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat0 = u_xlat0 * vs_COLOR0;
					    u_xlat0.w = u_xlat0.w;
					    u_xlat0.w = clamp(u_xlat0.w, 0.0, 1.0);
					    u_xlat1 = u_xlat0 + vec4(-0.5, -0.5, -0.5, -0.5);
					    SV_Target0 = u_xlat0.wwww * u_xlat1 + vec4(0.5, 0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendMul2" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[7];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat0.w = u_xlat0.w;
					    u_xlat0.w = clamp(u_xlat0.w, 0.0, 1.0);
					    u_xlat1 = u_xlat0 + vec4(-0.5, -0.5, -0.5, -0.5);
					    SV_Target0 = u_xlat0.wwww * u_xlat1 + vec4(0.5, 0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[6];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat0.w = u_xlat0.w;
					    u_xlat0.w = clamp(u_xlat0.w, 0.0, 1.0);
					    u_xlat1 = u_xlat0 + vec4(-0.5, -0.5, -0.5, -0.5);
					    SV_Target0 = u_xlat0.wwww * u_xlat1 + vec4(0.5, 0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendMul2" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendMul2" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					float u_xlat9;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat0.w = u_xlat0.w;
					    u_xlat0.w = clamp(u_xlat0.w, 0.0, 1.0);
					    u_xlat1 = u_xlat0 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat0.xyz = u_xlat0.www * u_xlat1.xyz;
					    SV_Target0.w = u_xlat0.w * u_xlat1.w + 0.5;
					    u_xlat9 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat9 = (-u_xlat9) + 1.0;
					    u_xlat9 = u_xlat9 * _ProjectionParams.z;
					    u_xlat9 = max(u_xlat9, 0.0);
					    u_xlat9 = u_xlat9 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat9 = clamp(u_xlat9, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat9) * u_xlat0.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					float u_xlat9;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat0.w = u_xlat0.w;
					    u_xlat0.w = clamp(u_xlat0.w, 0.0, 1.0);
					    u_xlat1 = u_xlat0 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat0.xyz = u_xlat0.www * u_xlat1.xyz;
					    SV_Target0.w = u_xlat0.w * u_xlat1.w + 0.5;
					    u_xlat9 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat9 = (-u_xlat9) + 1.0;
					    u_xlat9 = u_xlat9 * _ProjectionParams.z;
					    u_xlat9 = max(u_xlat9, 0.0);
					    u_xlat9 = u_xlat9 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat9 = clamp(u_xlat9, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat9) * u_xlat0.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendMul2" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendMul2" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec3 u_xlat4;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat4.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat1 = texture(_CameraDepthTexture, u_xlat4.xy);
					    u_xlat4.x = _ZBufferParams.z * u_xlat1.x + _ZBufferParams.w;
					    u_xlat4.x = float(1.0) / u_xlat4.x;
					    u_xlat4.x = u_xlat4.x + (-vs_TEXCOORD3.z);
					    u_xlat4.x = u_xlat4.x * _InvFade;
					    u_xlat4.x = clamp(u_xlat4.x, 0.0, 1.0);
					    u_xlat1.w = u_xlat4.x * vs_COLOR0.w;
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat3 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2 = u_xlat2 + (-u_xlat3);
					    u_xlat2 = vec4(vs_TEXCOORD1) * u_xlat2 + u_xlat3;
					    u_xlat2 = u_xlat2 + u_xlat2;
					    u_xlat2 = u_xlat2 * _TintColor;
					    u_xlat1.xyz = vs_COLOR0.xyz;
					    u_xlat1 = u_xlat1 * u_xlat2;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat4.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat4.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec3 u_xlat4;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat4.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat1 = texture(_CameraDepthTexture, u_xlat4.xy);
					    u_xlat4.x = _ZBufferParams.z * u_xlat1.x + _ZBufferParams.w;
					    u_xlat4.x = float(1.0) / u_xlat4.x;
					    u_xlat4.x = u_xlat4.x + (-vs_TEXCOORD3.z);
					    u_xlat4.x = u_xlat4.x * _InvFade;
					    u_xlat4.x = clamp(u_xlat4.x, 0.0, 1.0);
					    u_xlat1.w = u_xlat4.x * vs_COLOR0.w;
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat3 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2 = u_xlat2 + (-u_xlat3);
					    u_xlat2 = vec4(vs_TEXCOORD1) * u_xlat2 + u_xlat3;
					    u_xlat2 = u_xlat2 + u_xlat2;
					    u_xlat2 = u_xlat2 * _TintColor;
					    u_xlat1.xyz = vs_COLOR0.xyz;
					    u_xlat1 = u_xlat1 * u_xlat2;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat4.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat4.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendMul2" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendMul2" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec3 u_xlat4;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat4.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat1 = texture(_CameraDepthTexture, u_xlat4.xy);
					    u_xlat4.x = _ZBufferParams.z * u_xlat1.x + _ZBufferParams.w;
					    u_xlat4.x = float(1.0) / u_xlat4.x;
					    u_xlat4.x = u_xlat4.x + (-vs_TEXCOORD3.z);
					    u_xlat4.x = u_xlat4.x * _InvFade;
					    u_xlat4.x = clamp(u_xlat4.x, 0.0, 1.0);
					    u_xlat1.w = u_xlat4.x * vs_COLOR0.w;
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat3 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2 = u_xlat2 + (-u_xlat3);
					    u_xlat2 = vec4(vs_TEXCOORD1) * u_xlat2 + u_xlat3;
					    u_xlat2 = u_xlat2 + u_xlat2;
					    u_xlat2 = u_xlat2 * _TintColor;
					    u_xlat1.xyz = vs_COLOR0.xyz;
					    u_xlat1 = u_xlat1 * u_xlat2;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat4.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat4.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec3 u_xlat4;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat4.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat1 = texture(_CameraDepthTexture, u_xlat4.xy);
					    u_xlat4.x = _ZBufferParams.z * u_xlat1.x + _ZBufferParams.w;
					    u_xlat4.x = float(1.0) / u_xlat4.x;
					    u_xlat4.x = u_xlat4.x + (-vs_TEXCOORD3.z);
					    u_xlat4.x = u_xlat4.x * _InvFade;
					    u_xlat4.x = clamp(u_xlat4.x, 0.0, 1.0);
					    u_xlat1.w = u_xlat4.x * vs_COLOR0.w;
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat3 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2 = u_xlat2 + (-u_xlat3);
					    u_xlat2 = vec4(vs_TEXCOORD1) * u_xlat2 + u_xlat3;
					    u_xlat2 = u_xlat2 + u_xlat2;
					    u_xlat2 = u_xlat2 * _TintColor;
					    u_xlat1.xyz = vs_COLOR0.xyz;
					    u_xlat1 = u_xlat1 * u_xlat2;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat4.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat4.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendMul2" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[7];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat0.w = u_xlat0.w;
					    u_xlat0.w = clamp(u_xlat0.w, 0.0, 1.0);
					    u_xlat1 = u_xlat0 + vec4(-0.5, -0.5, -0.5, -0.5);
					    SV_Target0 = u_xlat0.wwww * u_xlat1 + vec4(0.5, 0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[6];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat0.w = u_xlat0.w;
					    u_xlat0.w = clamp(u_xlat0.w, 0.0, 1.0);
					    u_xlat1 = u_xlat0 + vec4(-0.5, -0.5, -0.5, -0.5);
					    SV_Target0 = u_xlat0.wwww * u_xlat1 + vec4(0.5, 0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendMul2" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[7];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat0.w = u_xlat0.w;
					    u_xlat0.w = clamp(u_xlat0.w, 0.0, 1.0);
					    u_xlat1 = u_xlat0 + vec4(-0.5, -0.5, -0.5, -0.5);
					    SV_Target0 = u_xlat0.wwww * u_xlat1 + vec4(0.5, 0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[6];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat0.w = u_xlat0.w;
					    u_xlat0.w = clamp(u_xlat0.w, 0.0, 1.0);
					    u_xlat1 = u_xlat0 + vec4(-0.5, -0.5, -0.5, -0.5);
					    SV_Target0 = u_xlat0.wwww * u_xlat1 + vec4(0.5, 0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendMul2" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					float u_xlat9;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat0.w = u_xlat0.w;
					    u_xlat0.w = clamp(u_xlat0.w, 0.0, 1.0);
					    u_xlat1 = u_xlat0 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat0.xyz = u_xlat0.www * u_xlat1.xyz;
					    SV_Target0.w = u_xlat0.w * u_xlat1.w + 0.5;
					    u_xlat9 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat9 = (-u_xlat9) + 1.0;
					    u_xlat9 = u_xlat9 * _ProjectionParams.z;
					    u_xlat9 = max(u_xlat9, 0.0);
					    u_xlat9 = u_xlat9 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat9 = clamp(u_xlat9, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat9) * u_xlat0.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					float u_xlat9;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat0.w = u_xlat0.w;
					    u_xlat0.w = clamp(u_xlat0.w, 0.0, 1.0);
					    u_xlat1 = u_xlat0 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat0.xyz = u_xlat0.www * u_xlat1.xyz;
					    SV_Target0.w = u_xlat0.w * u_xlat1.w + 0.5;
					    u_xlat9 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat9 = (-u_xlat9) + 1.0;
					    u_xlat9 = u_xlat9 * _ProjectionParams.z;
					    u_xlat9 = max(u_xlat9, 0.0);
					    u_xlat9 = u_xlat9 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat9 = clamp(u_xlat9, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat9) * u_xlat0.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendMul2" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					float u_xlat9;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat0.w = u_xlat0.w;
					    u_xlat0.w = clamp(u_xlat0.w, 0.0, 1.0);
					    u_xlat1 = u_xlat0 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat0.xyz = u_xlat0.www * u_xlat1.xyz;
					    SV_Target0.w = u_xlat0.w * u_xlat1.w + 0.5;
					    u_xlat9 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat9 = (-u_xlat9) + 1.0;
					    u_xlat9 = u_xlat9 * _ProjectionParams.z;
					    u_xlat9 = max(u_xlat9, 0.0);
					    u_xlat9 = u_xlat9 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat9 = clamp(u_xlat9, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat9) * u_xlat0.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					float u_xlat9;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat0.w = u_xlat0.w;
					    u_xlat0.w = clamp(u_xlat0.w, 0.0, 1.0);
					    u_xlat1 = u_xlat0 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat0.xyz = u_xlat0.www * u_xlat1.xyz;
					    SV_Target0.w = u_xlat0.w * u_xlat1.w + 0.5;
					    u_xlat9 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat9 = (-u_xlat9) + 1.0;
					    u_xlat9 = u_xlat9 * _ProjectionParams.z;
					    u_xlat9 = max(u_xlat9, 0.0);
					    u_xlat9 = u_xlat9 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat9 = clamp(u_xlat9, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat9) * u_xlat0.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendMul2" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec3 u_xlat4;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat4.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat1 = texture(_CameraDepthTexture, u_xlat4.xy);
					    u_xlat4.x = _ZBufferParams.z * u_xlat1.x + _ZBufferParams.w;
					    u_xlat4.x = float(1.0) / u_xlat4.x;
					    u_xlat4.x = u_xlat4.x + (-vs_TEXCOORD3.z);
					    u_xlat4.x = u_xlat4.x * _InvFade;
					    u_xlat4.x = clamp(u_xlat4.x, 0.0, 1.0);
					    u_xlat1.w = u_xlat4.x * vs_COLOR0.w;
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat3 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2 = u_xlat2 + (-u_xlat3);
					    u_xlat2 = vec4(vs_TEXCOORD1) * u_xlat2 + u_xlat3;
					    u_xlat2 = u_xlat2 + u_xlat2;
					    u_xlat2 = u_xlat2 * _TintColor;
					    u_xlat1.xyz = vs_COLOR0.xyz;
					    u_xlat1 = u_xlat1 * u_xlat2;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat4.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat4.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec3 u_xlat4;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat4.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat1 = texture(_CameraDepthTexture, u_xlat4.xy);
					    u_xlat4.x = _ZBufferParams.z * u_xlat1.x + _ZBufferParams.w;
					    u_xlat4.x = float(1.0) / u_xlat4.x;
					    u_xlat4.x = u_xlat4.x + (-vs_TEXCOORD3.z);
					    u_xlat4.x = u_xlat4.x * _InvFade;
					    u_xlat4.x = clamp(u_xlat4.x, 0.0, 1.0);
					    u_xlat1.w = u_xlat4.x * vs_COLOR0.w;
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat3 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2 = u_xlat2 + (-u_xlat3);
					    u_xlat2 = vec4(vs_TEXCOORD1) * u_xlat2 + u_xlat3;
					    u_xlat2 = u_xlat2 + u_xlat2;
					    u_xlat2 = u_xlat2 * _TintColor;
					    u_xlat1.xyz = vs_COLOR0.xyz;
					    u_xlat1 = u_xlat1 * u_xlat2;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat4.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat4.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendMul2" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec3 u_xlat4;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat4.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat1 = texture(_CameraDepthTexture, u_xlat4.xy);
					    u_xlat4.x = _ZBufferParams.z * u_xlat1.x + _ZBufferParams.w;
					    u_xlat4.x = float(1.0) / u_xlat4.x;
					    u_xlat4.x = u_xlat4.x + (-vs_TEXCOORD3.z);
					    u_xlat4.x = u_xlat4.x * _InvFade;
					    u_xlat4.x = clamp(u_xlat4.x, 0.0, 1.0);
					    u_xlat1.w = u_xlat4.x * vs_COLOR0.w;
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat3 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2 = u_xlat2 + (-u_xlat3);
					    u_xlat2 = vec4(vs_TEXCOORD1) * u_xlat2 + u_xlat3;
					    u_xlat2 = u_xlat2 + u_xlat2;
					    u_xlat2 = u_xlat2 * _TintColor;
					    u_xlat1.xyz = vs_COLOR0.xyz;
					    u_xlat1 = u_xlat1 * u_xlat2;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat4.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat4.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec3 u_xlat4;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat4.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat1 = texture(_CameraDepthTexture, u_xlat4.xy);
					    u_xlat4.x = _ZBufferParams.z * u_xlat1.x + _ZBufferParams.w;
					    u_xlat4.x = float(1.0) / u_xlat4.x;
					    u_xlat4.x = u_xlat4.x + (-vs_TEXCOORD3.z);
					    u_xlat4.x = u_xlat4.x * _InvFade;
					    u_xlat4.x = clamp(u_xlat4.x, 0.0, 1.0);
					    u_xlat1.w = u_xlat4.x * vs_COLOR0.w;
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat3 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2 = u_xlat2 + (-u_xlat3);
					    u_xlat2 = vec4(vs_TEXCOORD1) * u_xlat2 + u_xlat3;
					    u_xlat2 = u_xlat2 + u_xlat2;
					    u_xlat2 = u_xlat2 * _TintColor;
					    u_xlat1.xyz = vs_COLOR0.xyz;
					    u_xlat1 = u_xlat1 * u_xlat2;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat4.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat4.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendMul2" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec3 u_xlat4;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat4.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat1 = texture(_CameraDepthTexture, u_xlat4.xy);
					    u_xlat4.x = _ZBufferParams.z * u_xlat1.x + _ZBufferParams.w;
					    u_xlat4.x = float(1.0) / u_xlat4.x;
					    u_xlat4.x = u_xlat4.x + (-vs_TEXCOORD3.z);
					    u_xlat4.x = u_xlat4.x * _InvFade;
					    u_xlat4.x = clamp(u_xlat4.x, 0.0, 1.0);
					    u_xlat1.w = u_xlat4.x * vs_COLOR0.w;
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat3 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2 = u_xlat2 + (-u_xlat3);
					    u_xlat2 = vec4(vs_TEXCOORD1) * u_xlat2 + u_xlat3;
					    u_xlat2 = u_xlat2 + u_xlat2;
					    u_xlat2 = u_xlat2 * _TintColor;
					    u_xlat1.xyz = vs_COLOR0.xyz;
					    u_xlat1 = u_xlat1 * u_xlat2;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat4.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat4.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec3 u_xlat4;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat4.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat1 = texture(_CameraDepthTexture, u_xlat4.xy);
					    u_xlat4.x = _ZBufferParams.z * u_xlat1.x + _ZBufferParams.w;
					    u_xlat4.x = float(1.0) / u_xlat4.x;
					    u_xlat4.x = u_xlat4.x + (-vs_TEXCOORD3.z);
					    u_xlat4.x = u_xlat4.x * _InvFade;
					    u_xlat4.x = clamp(u_xlat4.x, 0.0, 1.0);
					    u_xlat1.w = u_xlat4.x * vs_COLOR0.w;
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat3 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2 = u_xlat2 + (-u_xlat3);
					    u_xlat2 = vec4(vs_TEXCOORD1) * u_xlat2 + u_xlat3;
					    u_xlat2 = u_xlat2 + u_xlat2;
					    u_xlat2 = u_xlat2 * _TintColor;
					    u_xlat1.xyz = vs_COLOR0.xyz;
					    u_xlat1 = u_xlat1 * u_xlat2;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat4.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat4.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendMul2" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec3 u_xlat4;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat4.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat1 = texture(_CameraDepthTexture, u_xlat4.xy);
					    u_xlat4.x = _ZBufferParams.z * u_xlat1.x + _ZBufferParams.w;
					    u_xlat4.x = float(1.0) / u_xlat4.x;
					    u_xlat4.x = u_xlat4.x + (-vs_TEXCOORD3.z);
					    u_xlat4.x = u_xlat4.x * _InvFade;
					    u_xlat4.x = clamp(u_xlat4.x, 0.0, 1.0);
					    u_xlat1.w = u_xlat4.x * vs_COLOR0.w;
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat3 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2 = u_xlat2 + (-u_xlat3);
					    u_xlat2 = vec4(vs_TEXCOORD1) * u_xlat2 + u_xlat3;
					    u_xlat2 = u_xlat2 + u_xlat2;
					    u_xlat2 = u_xlat2 * _TintColor;
					    u_xlat1.xyz = vs_COLOR0.xyz;
					    u_xlat1 = u_xlat1 * u_xlat2;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat4.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat4.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec3 u_xlat4;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat4.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat1 = texture(_CameraDepthTexture, u_xlat4.xy);
					    u_xlat4.x = _ZBufferParams.z * u_xlat1.x + _ZBufferParams.w;
					    u_xlat4.x = float(1.0) / u_xlat4.x;
					    u_xlat4.x = u_xlat4.x + (-vs_TEXCOORD3.z);
					    u_xlat4.x = u_xlat4.x * _InvFade;
					    u_xlat4.x = clamp(u_xlat4.x, 0.0, 1.0);
					    u_xlat1.w = u_xlat4.x * vs_COLOR0.w;
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat3 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2 = u_xlat2 + (-u_xlat3);
					    u_xlat2 = vec4(vs_TEXCOORD1) * u_xlat2 + u_xlat3;
					    u_xlat2 = u_xlat2 + u_xlat2;
					    u_xlat2 = u_xlat2 * _TintColor;
					    u_xlat1.xyz = vs_COLOR0.xyz;
					    u_xlat1 = u_xlat1 * u_xlat2;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat4.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat4.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendMul2" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat6;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat0 = u_xlat0 * vs_COLOR0;
					    u_xlat6 = u_xlat0.w;
					    u_xlat6 = clamp(u_xlat6, 0.0, 1.0);
					    u_xlat0.w = u_xlat6 * vs_TEXCOORD4;
					    u_xlat1 = u_xlat0 + vec4(-0.5, -0.5, -0.5, -0.5);
					    SV_Target0 = u_xlat0.wwww * u_xlat1 + vec4(0.5, 0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat6;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat0 = u_xlat0 * vs_COLOR0;
					    u_xlat6 = u_xlat0.w;
					    u_xlat6 = clamp(u_xlat6, 0.0, 1.0);
					    u_xlat0.w = u_xlat6 * vs_TEXCOORD4;
					    u_xlat1 = u_xlat0 + vec4(-0.5, -0.5, -0.5, -0.5);
					    SV_Target0 = u_xlat0.wwww * u_xlat1 + vec4(0.5, 0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendMul2" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[7];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					float u_xlat9;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat9 = u_xlat0.w;
					    u_xlat9 = clamp(u_xlat9, 0.0, 1.0);
					    u_xlat0.w = u_xlat9 * vs_TEXCOORD4;
					    u_xlat1 = u_xlat0 + vec4(-0.5, -0.5, -0.5, -0.5);
					    SV_Target0 = u_xlat0.wwww * u_xlat1 + vec4(0.5, 0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[6];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					float u_xlat9;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat9 = u_xlat0.w;
					    u_xlat9 = clamp(u_xlat9, 0.0, 1.0);
					    u_xlat0.w = u_xlat9 * vs_TEXCOORD4;
					    u_xlat1 = u_xlat0 + vec4(-0.5, -0.5, -0.5, -0.5);
					    SV_Target0 = u_xlat0.wwww * u_xlat1 + vec4(0.5, 0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendMul2" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendMul2" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					float u_xlat9;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat9 = u_xlat0.w;
					    u_xlat9 = clamp(u_xlat9, 0.0, 1.0);
					    u_xlat0.w = u_xlat9 * vs_TEXCOORD4;
					    u_xlat1 = u_xlat0 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat0.xyz = u_xlat0.www * u_xlat1.xyz;
					    SV_Target0.w = u_xlat0.w * u_xlat1.w + 0.5;
					    u_xlat9 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat9 = (-u_xlat9) + 1.0;
					    u_xlat9 = u_xlat9 * _ProjectionParams.z;
					    u_xlat9 = max(u_xlat9, 0.0);
					    u_xlat9 = u_xlat9 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat9 = clamp(u_xlat9, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat9) * u_xlat0.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					float u_xlat9;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat9 = u_xlat0.w;
					    u_xlat9 = clamp(u_xlat9, 0.0, 1.0);
					    u_xlat0.w = u_xlat9 * vs_TEXCOORD4;
					    u_xlat1 = u_xlat0 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat0.xyz = u_xlat0.www * u_xlat1.xyz;
					    SV_Target0.w = u_xlat0.w * u_xlat1.w + 0.5;
					    u_xlat9 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat9 = (-u_xlat9) + 1.0;
					    u_xlat9 = u_xlat9 * _ProjectionParams.z;
					    u_xlat9 = max(u_xlat9, 0.0);
					    u_xlat9 = u_xlat9 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat9 = clamp(u_xlat9, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat9) * u_xlat0.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendMul2" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendMul2" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec3 u_xlat4;
					float u_xlat13;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat4.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat1 = texture(_CameraDepthTexture, u_xlat4.xy);
					    u_xlat4.x = _ZBufferParams.z * u_xlat1.x + _ZBufferParams.w;
					    u_xlat4.x = float(1.0) / u_xlat4.x;
					    u_xlat4.x = u_xlat4.x + (-vs_TEXCOORD3.z);
					    u_xlat4.x = u_xlat4.x * _InvFade;
					    u_xlat4.x = clamp(u_xlat4.x, 0.0, 1.0);
					    u_xlat1.w = u_xlat4.x * vs_COLOR0.w;
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat3 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2 = u_xlat2 + (-u_xlat3);
					    u_xlat2 = vec4(vs_TEXCOORD1) * u_xlat2 + u_xlat3;
					    u_xlat2 = u_xlat2 + u_xlat2;
					    u_xlat2 = u_xlat2 * _TintColor;
					    u_xlat1.xyz = vs_COLOR0.xyz;
					    u_xlat1 = u_xlat1 * u_xlat2;
					    u_xlat13 = u_xlat1.w;
					    u_xlat13 = clamp(u_xlat13, 0.0, 1.0);
					    u_xlat1.w = u_xlat13 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat4.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat4.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec3 u_xlat4;
					float u_xlat13;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat4.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat1 = texture(_CameraDepthTexture, u_xlat4.xy);
					    u_xlat4.x = _ZBufferParams.z * u_xlat1.x + _ZBufferParams.w;
					    u_xlat4.x = float(1.0) / u_xlat4.x;
					    u_xlat4.x = u_xlat4.x + (-vs_TEXCOORD3.z);
					    u_xlat4.x = u_xlat4.x * _InvFade;
					    u_xlat4.x = clamp(u_xlat4.x, 0.0, 1.0);
					    u_xlat1.w = u_xlat4.x * vs_COLOR0.w;
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat3 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2 = u_xlat2 + (-u_xlat3);
					    u_xlat2 = vec4(vs_TEXCOORD1) * u_xlat2 + u_xlat3;
					    u_xlat2 = u_xlat2 + u_xlat2;
					    u_xlat2 = u_xlat2 * _TintColor;
					    u_xlat1.xyz = vs_COLOR0.xyz;
					    u_xlat1 = u_xlat1 * u_xlat2;
					    u_xlat13 = u_xlat1.w;
					    u_xlat13 = clamp(u_xlat13, 0.0, 1.0);
					    u_xlat1.w = u_xlat13 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat4.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat4.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendMul2" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendMul2" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec3 u_xlat4;
					float u_xlat13;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat4.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat1 = texture(_CameraDepthTexture, u_xlat4.xy);
					    u_xlat4.x = _ZBufferParams.z * u_xlat1.x + _ZBufferParams.w;
					    u_xlat4.x = float(1.0) / u_xlat4.x;
					    u_xlat4.x = u_xlat4.x + (-vs_TEXCOORD3.z);
					    u_xlat4.x = u_xlat4.x * _InvFade;
					    u_xlat4.x = clamp(u_xlat4.x, 0.0, 1.0);
					    u_xlat1.w = u_xlat4.x * vs_COLOR0.w;
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat3 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2 = u_xlat2 + (-u_xlat3);
					    u_xlat2 = vec4(vs_TEXCOORD1) * u_xlat2 + u_xlat3;
					    u_xlat2 = u_xlat2 + u_xlat2;
					    u_xlat2 = u_xlat2 * _TintColor;
					    u_xlat1.xyz = vs_COLOR0.xyz;
					    u_xlat1 = u_xlat1 * u_xlat2;
					    u_xlat13 = u_xlat1.w;
					    u_xlat13 = clamp(u_xlat13, 0.0, 1.0);
					    u_xlat1.w = u_xlat13 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat4.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat4.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec3 u_xlat4;
					float u_xlat13;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat4.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat1 = texture(_CameraDepthTexture, u_xlat4.xy);
					    u_xlat4.x = _ZBufferParams.z * u_xlat1.x + _ZBufferParams.w;
					    u_xlat4.x = float(1.0) / u_xlat4.x;
					    u_xlat4.x = u_xlat4.x + (-vs_TEXCOORD3.z);
					    u_xlat4.x = u_xlat4.x * _InvFade;
					    u_xlat4.x = clamp(u_xlat4.x, 0.0, 1.0);
					    u_xlat1.w = u_xlat4.x * vs_COLOR0.w;
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat3 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2 = u_xlat2 + (-u_xlat3);
					    u_xlat2 = vec4(vs_TEXCOORD1) * u_xlat2 + u_xlat3;
					    u_xlat2 = u_xlat2 + u_xlat2;
					    u_xlat2 = u_xlat2 * _TintColor;
					    u_xlat1.xyz = vs_COLOR0.xyz;
					    u_xlat1 = u_xlat1 * u_xlat2;
					    u_xlat13 = u_xlat1.w;
					    u_xlat13 = clamp(u_xlat13, 0.0, 1.0);
					    u_xlat1.w = u_xlat13 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat4.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat4.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendMul2" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[7];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					float u_xlat9;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat9 = u_xlat0.w;
					    u_xlat9 = clamp(u_xlat9, 0.0, 1.0);
					    u_xlat0.w = u_xlat9 * vs_TEXCOORD4;
					    u_xlat1 = u_xlat0 + vec4(-0.5, -0.5, -0.5, -0.5);
					    SV_Target0 = u_xlat0.wwww * u_xlat1 + vec4(0.5, 0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[6];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					float u_xlat9;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat9 = u_xlat0.w;
					    u_xlat9 = clamp(u_xlat9, 0.0, 1.0);
					    u_xlat0.w = u_xlat9 * vs_TEXCOORD4;
					    u_xlat1 = u_xlat0 + vec4(-0.5, -0.5, -0.5, -0.5);
					    SV_Target0 = u_xlat0.wwww * u_xlat1 + vec4(0.5, 0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendMul2" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[7];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					float u_xlat9;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat9 = u_xlat0.w;
					    u_xlat9 = clamp(u_xlat9, 0.0, 1.0);
					    u_xlat0.w = u_xlat9 * vs_TEXCOORD4;
					    u_xlat1 = u_xlat0 + vec4(-0.5, -0.5, -0.5, -0.5);
					    SV_Target0 = u_xlat0.wwww * u_xlat1 + vec4(0.5, 0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[6];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					float u_xlat9;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat9 = u_xlat0.w;
					    u_xlat9 = clamp(u_xlat9, 0.0, 1.0);
					    u_xlat0.w = u_xlat9 * vs_TEXCOORD4;
					    u_xlat1 = u_xlat0 + vec4(-0.5, -0.5, -0.5, -0.5);
					    SV_Target0 = u_xlat0.wwww * u_xlat1 + vec4(0.5, 0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendMul2" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					float u_xlat9;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat9 = u_xlat0.w;
					    u_xlat9 = clamp(u_xlat9, 0.0, 1.0);
					    u_xlat0.w = u_xlat9 * vs_TEXCOORD4;
					    u_xlat1 = u_xlat0 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat0.xyz = u_xlat0.www * u_xlat1.xyz;
					    SV_Target0.w = u_xlat0.w * u_xlat1.w + 0.5;
					    u_xlat9 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat9 = (-u_xlat9) + 1.0;
					    u_xlat9 = u_xlat9 * _ProjectionParams.z;
					    u_xlat9 = max(u_xlat9, 0.0);
					    u_xlat9 = u_xlat9 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat9 = clamp(u_xlat9, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat9) * u_xlat0.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					float u_xlat9;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat9 = u_xlat0.w;
					    u_xlat9 = clamp(u_xlat9, 0.0, 1.0);
					    u_xlat0.w = u_xlat9 * vs_TEXCOORD4;
					    u_xlat1 = u_xlat0 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat0.xyz = u_xlat0.www * u_xlat1.xyz;
					    SV_Target0.w = u_xlat0.w * u_xlat1.w + 0.5;
					    u_xlat9 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat9 = (-u_xlat9) + 1.0;
					    u_xlat9 = u_xlat9 * _ProjectionParams.z;
					    u_xlat9 = max(u_xlat9, 0.0);
					    u_xlat9 = u_xlat9 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat9 = clamp(u_xlat9, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat9) * u_xlat0.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendMul2" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					float u_xlat9;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat9 = u_xlat0.w;
					    u_xlat9 = clamp(u_xlat9, 0.0, 1.0);
					    u_xlat0.w = u_xlat9 * vs_TEXCOORD4;
					    u_xlat1 = u_xlat0 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat0.xyz = u_xlat0.www * u_xlat1.xyz;
					    SV_Target0.w = u_xlat0.w * u_xlat1.w + 0.5;
					    u_xlat9 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat9 = (-u_xlat9) + 1.0;
					    u_xlat9 = u_xlat9 * _ProjectionParams.z;
					    u_xlat9 = max(u_xlat9, 0.0);
					    u_xlat9 = u_xlat9 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat9 = clamp(u_xlat9, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat9) * u_xlat0.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					float u_xlat9;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat9 = u_xlat0.w;
					    u_xlat9 = clamp(u_xlat9, 0.0, 1.0);
					    u_xlat0.w = u_xlat9 * vs_TEXCOORD4;
					    u_xlat1 = u_xlat0 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat0.xyz = u_xlat0.www * u_xlat1.xyz;
					    SV_Target0.w = u_xlat0.w * u_xlat1.w + 0.5;
					    u_xlat9 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat9 = (-u_xlat9) + 1.0;
					    u_xlat9 = u_xlat9 * _ProjectionParams.z;
					    u_xlat9 = max(u_xlat9, 0.0);
					    u_xlat9 = u_xlat9 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat9 = clamp(u_xlat9, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat9) * u_xlat0.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendMul2" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec3 u_xlat4;
					float u_xlat13;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat4.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat1 = texture(_CameraDepthTexture, u_xlat4.xy);
					    u_xlat4.x = _ZBufferParams.z * u_xlat1.x + _ZBufferParams.w;
					    u_xlat4.x = float(1.0) / u_xlat4.x;
					    u_xlat4.x = u_xlat4.x + (-vs_TEXCOORD3.z);
					    u_xlat4.x = u_xlat4.x * _InvFade;
					    u_xlat4.x = clamp(u_xlat4.x, 0.0, 1.0);
					    u_xlat1.w = u_xlat4.x * vs_COLOR0.w;
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat3 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2 = u_xlat2 + (-u_xlat3);
					    u_xlat2 = vec4(vs_TEXCOORD1) * u_xlat2 + u_xlat3;
					    u_xlat2 = u_xlat2 + u_xlat2;
					    u_xlat2 = u_xlat2 * _TintColor;
					    u_xlat1.xyz = vs_COLOR0.xyz;
					    u_xlat1 = u_xlat1 * u_xlat2;
					    u_xlat13 = u_xlat1.w;
					    u_xlat13 = clamp(u_xlat13, 0.0, 1.0);
					    u_xlat1.w = u_xlat13 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat4.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat4.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec3 u_xlat4;
					float u_xlat13;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat4.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat1 = texture(_CameraDepthTexture, u_xlat4.xy);
					    u_xlat4.x = _ZBufferParams.z * u_xlat1.x + _ZBufferParams.w;
					    u_xlat4.x = float(1.0) / u_xlat4.x;
					    u_xlat4.x = u_xlat4.x + (-vs_TEXCOORD3.z);
					    u_xlat4.x = u_xlat4.x * _InvFade;
					    u_xlat4.x = clamp(u_xlat4.x, 0.0, 1.0);
					    u_xlat1.w = u_xlat4.x * vs_COLOR0.w;
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat3 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2 = u_xlat2 + (-u_xlat3);
					    u_xlat2 = vec4(vs_TEXCOORD1) * u_xlat2 + u_xlat3;
					    u_xlat2 = u_xlat2 + u_xlat2;
					    u_xlat2 = u_xlat2 * _TintColor;
					    u_xlat1.xyz = vs_COLOR0.xyz;
					    u_xlat1 = u_xlat1 * u_xlat2;
					    u_xlat13 = u_xlat1.w;
					    u_xlat13 = clamp(u_xlat13, 0.0, 1.0);
					    u_xlat1.w = u_xlat13 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat4.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat4.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendMul2" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec3 u_xlat4;
					float u_xlat13;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat4.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat1 = texture(_CameraDepthTexture, u_xlat4.xy);
					    u_xlat4.x = _ZBufferParams.z * u_xlat1.x + _ZBufferParams.w;
					    u_xlat4.x = float(1.0) / u_xlat4.x;
					    u_xlat4.x = u_xlat4.x + (-vs_TEXCOORD3.z);
					    u_xlat4.x = u_xlat4.x * _InvFade;
					    u_xlat4.x = clamp(u_xlat4.x, 0.0, 1.0);
					    u_xlat1.w = u_xlat4.x * vs_COLOR0.w;
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat3 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2 = u_xlat2 + (-u_xlat3);
					    u_xlat2 = vec4(vs_TEXCOORD1) * u_xlat2 + u_xlat3;
					    u_xlat2 = u_xlat2 + u_xlat2;
					    u_xlat2 = u_xlat2 * _TintColor;
					    u_xlat1.xyz = vs_COLOR0.xyz;
					    u_xlat1 = u_xlat1 * u_xlat2;
					    u_xlat13 = u_xlat1.w;
					    u_xlat13 = clamp(u_xlat13, 0.0, 1.0);
					    u_xlat1.w = u_xlat13 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat4.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat4.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec3 u_xlat4;
					float u_xlat13;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat4.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat1 = texture(_CameraDepthTexture, u_xlat4.xy);
					    u_xlat4.x = _ZBufferParams.z * u_xlat1.x + _ZBufferParams.w;
					    u_xlat4.x = float(1.0) / u_xlat4.x;
					    u_xlat4.x = u_xlat4.x + (-vs_TEXCOORD3.z);
					    u_xlat4.x = u_xlat4.x * _InvFade;
					    u_xlat4.x = clamp(u_xlat4.x, 0.0, 1.0);
					    u_xlat1.w = u_xlat4.x * vs_COLOR0.w;
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat3 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2 = u_xlat2 + (-u_xlat3);
					    u_xlat2 = vec4(vs_TEXCOORD1) * u_xlat2 + u_xlat3;
					    u_xlat2 = u_xlat2 + u_xlat2;
					    u_xlat2 = u_xlat2 * _TintColor;
					    u_xlat1.xyz = vs_COLOR0.xyz;
					    u_xlat1 = u_xlat1 * u_xlat2;
					    u_xlat13 = u_xlat1.w;
					    u_xlat13 = clamp(u_xlat13, 0.0, 1.0);
					    u_xlat1.w = u_xlat13 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat4.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat4.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendMul2" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec3 u_xlat4;
					float u_xlat13;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat4.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat1 = texture(_CameraDepthTexture, u_xlat4.xy);
					    u_xlat4.x = _ZBufferParams.z * u_xlat1.x + _ZBufferParams.w;
					    u_xlat4.x = float(1.0) / u_xlat4.x;
					    u_xlat4.x = u_xlat4.x + (-vs_TEXCOORD3.z);
					    u_xlat4.x = u_xlat4.x * _InvFade;
					    u_xlat4.x = clamp(u_xlat4.x, 0.0, 1.0);
					    u_xlat1.w = u_xlat4.x * vs_COLOR0.w;
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat3 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2 = u_xlat2 + (-u_xlat3);
					    u_xlat2 = vec4(vs_TEXCOORD1) * u_xlat2 + u_xlat3;
					    u_xlat2 = u_xlat2 + u_xlat2;
					    u_xlat2 = u_xlat2 * _TintColor;
					    u_xlat1.xyz = vs_COLOR0.xyz;
					    u_xlat1 = u_xlat1 * u_xlat2;
					    u_xlat13 = u_xlat1.w;
					    u_xlat13 = clamp(u_xlat13, 0.0, 1.0);
					    u_xlat1.w = u_xlat13 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat4.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat4.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec3 u_xlat4;
					float u_xlat13;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat4.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat1 = texture(_CameraDepthTexture, u_xlat4.xy);
					    u_xlat4.x = _ZBufferParams.z * u_xlat1.x + _ZBufferParams.w;
					    u_xlat4.x = float(1.0) / u_xlat4.x;
					    u_xlat4.x = u_xlat4.x + (-vs_TEXCOORD3.z);
					    u_xlat4.x = u_xlat4.x * _InvFade;
					    u_xlat4.x = clamp(u_xlat4.x, 0.0, 1.0);
					    u_xlat1.w = u_xlat4.x * vs_COLOR0.w;
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat3 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2 = u_xlat2 + (-u_xlat3);
					    u_xlat2 = vec4(vs_TEXCOORD1) * u_xlat2 + u_xlat3;
					    u_xlat2 = u_xlat2 + u_xlat2;
					    u_xlat2 = u_xlat2 * _TintColor;
					    u_xlat1.xyz = vs_COLOR0.xyz;
					    u_xlat1 = u_xlat1 * u_xlat2;
					    u_xlat13 = u_xlat1.w;
					    u_xlat13 = clamp(u_xlat13, 0.0, 1.0);
					    u_xlat1.w = u_xlat13 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat4.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat4.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendMul2" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec3 u_xlat4;
					float u_xlat13;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat4.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat1 = texture(_CameraDepthTexture, u_xlat4.xy);
					    u_xlat4.x = _ZBufferParams.z * u_xlat1.x + _ZBufferParams.w;
					    u_xlat4.x = float(1.0) / u_xlat4.x;
					    u_xlat4.x = u_xlat4.x + (-vs_TEXCOORD3.z);
					    u_xlat4.x = u_xlat4.x * _InvFade;
					    u_xlat4.x = clamp(u_xlat4.x, 0.0, 1.0);
					    u_xlat1.w = u_xlat4.x * vs_COLOR0.w;
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat3 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2 = u_xlat2 + (-u_xlat3);
					    u_xlat2 = vec4(vs_TEXCOORD1) * u_xlat2 + u_xlat3;
					    u_xlat2 = u_xlat2 + u_xlat2;
					    u_xlat2 = u_xlat2 * _TintColor;
					    u_xlat1.xyz = vs_COLOR0.xyz;
					    u_xlat1 = u_xlat1 * u_xlat2;
					    u_xlat13 = u_xlat1.w;
					    u_xlat13 = clamp(u_xlat13, 0.0, 1.0);
					    u_xlat1.w = u_xlat13 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat4.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat4.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec3 u_xlat4;
					float u_xlat13;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat4.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat1 = texture(_CameraDepthTexture, u_xlat4.xy);
					    u_xlat4.x = _ZBufferParams.z * u_xlat1.x + _ZBufferParams.w;
					    u_xlat4.x = float(1.0) / u_xlat4.x;
					    u_xlat4.x = u_xlat4.x + (-vs_TEXCOORD3.z);
					    u_xlat4.x = u_xlat4.x * _InvFade;
					    u_xlat4.x = clamp(u_xlat4.x, 0.0, 1.0);
					    u_xlat1.w = u_xlat4.x * vs_COLOR0.w;
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat3 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2 = u_xlat2 + (-u_xlat3);
					    u_xlat2 = vec4(vs_TEXCOORD1) * u_xlat2 + u_xlat3;
					    u_xlat2 = u_xlat2 + u_xlat2;
					    u_xlat2 = u_xlat2 * _TintColor;
					    u_xlat1.xyz = vs_COLOR0.xyz;
					    u_xlat1 = u_xlat1 * u_xlat2;
					    u_xlat13 = u_xlat1.w;
					    u_xlat13 = clamp(u_xlat13, 0.0, 1.0);
					    u_xlat1.w = u_xlat13 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat4.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat4.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendMul2" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					bool u_xlatb1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1.x = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat0.w = u_xlat0.w * u_xlat1.x;
					    u_xlat0 = u_xlat0 * vs_COLOR0;
					    u_xlat0.w = u_xlat0.w;
					    u_xlat0.w = clamp(u_xlat0.w, 0.0, 1.0);
					    u_xlat1 = u_xlat0 + vec4(-0.5, -0.5, -0.5, -0.5);
					    SV_Target0 = u_xlat0.wwww * u_xlat1 + vec4(0.5, 0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					bool u_xlatb1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1.x = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat0.w = u_xlat0.w * u_xlat1.x;
					    u_xlat0 = u_xlat0 * vs_COLOR0;
					    u_xlat0.w = u_xlat0.w;
					    u_xlat0.w = clamp(u_xlat0.w, 0.0, 1.0);
					    u_xlat1 = u_xlat0 + vec4(-0.5, -0.5, -0.5, -0.5);
					    SV_Target0 = u_xlat0.wwww * u_xlat1 + vec4(0.5, 0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendMul2" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[7];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					bool u_xlatb2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2.x = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2.x;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat0.w = u_xlat0.w;
					    u_xlat0.w = clamp(u_xlat0.w, 0.0, 1.0);
					    u_xlat1 = u_xlat0 + vec4(-0.5, -0.5, -0.5, -0.5);
					    SV_Target0 = u_xlat0.wwww * u_xlat1 + vec4(0.5, 0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[6];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					bool u_xlatb2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2.x = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2.x;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat0.w = u_xlat0.w;
					    u_xlat0.w = clamp(u_xlat0.w, 0.0, 1.0);
					    u_xlat1 = u_xlat0 + vec4(-0.5, -0.5, -0.5, -0.5);
					    SV_Target0 = u_xlat0.wwww * u_xlat1 + vec4(0.5, 0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendMul2" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3.x;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3.x;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendMul2" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					bool u_xlatb2;
					float u_xlat9;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2.x = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2.x;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat0.w = u_xlat0.w;
					    u_xlat0.w = clamp(u_xlat0.w, 0.0, 1.0);
					    u_xlat1 = u_xlat0 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat0.xyz = u_xlat0.www * u_xlat1.xyz;
					    SV_Target0.w = u_xlat0.w * u_xlat1.w + 0.5;
					    u_xlat9 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat9 = (-u_xlat9) + 1.0;
					    u_xlat9 = u_xlat9 * _ProjectionParams.z;
					    u_xlat9 = max(u_xlat9, 0.0);
					    u_xlat9 = u_xlat9 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat9 = clamp(u_xlat9, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat9) * u_xlat0.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					bool u_xlatb2;
					float u_xlat9;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2.x = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2.x;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat0.w = u_xlat0.w;
					    u_xlat0.w = clamp(u_xlat0.w, 0.0, 1.0);
					    u_xlat1 = u_xlat0 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat0.xyz = u_xlat0.www * u_xlat1.xyz;
					    SV_Target0.w = u_xlat0.w * u_xlat1.w + 0.5;
					    u_xlat9 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat9 = (-u_xlat9) + 1.0;
					    u_xlat9 = u_xlat9 * _ProjectionParams.z;
					    u_xlat9 = max(u_xlat9, 0.0);
					    u_xlat9 = u_xlat9 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat9 = clamp(u_xlat9, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat9) * u_xlat0.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendMul2" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3.x;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3.x;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendMul2" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					bool u_xlatb2;
					float u_xlat9;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2.x = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2.x;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat0.w = u_xlat0.w;
					    u_xlat0.w = clamp(u_xlat0.w, 0.0, 1.0);
					    u_xlat1 = u_xlat0 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat0.xyz = u_xlat0.www * u_xlat1.xyz;
					    SV_Target0.w = u_xlat0.w * u_xlat1.w + 0.5;
					    u_xlat9 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat9 = (-u_xlat9) + 1.0;
					    u_xlat9 = u_xlat9 * _ProjectionParams.z;
					    u_xlat9 = max(u_xlat9, 0.0);
					    u_xlat9 = u_xlat9 * unity_FogParams.y;
					    u_xlat9 = exp2((-u_xlat9));
					    u_xlat9 = min(u_xlat9, 1.0);
					    SV_Target0.xyz = vec3(u_xlat9) * u_xlat0.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					bool u_xlatb2;
					float u_xlat9;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2.x = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2.x;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat0.w = u_xlat0.w;
					    u_xlat0.w = clamp(u_xlat0.w, 0.0, 1.0);
					    u_xlat1 = u_xlat0 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat0.xyz = u_xlat0.www * u_xlat1.xyz;
					    SV_Target0.w = u_xlat0.w * u_xlat1.w + 0.5;
					    u_xlat9 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat9 = (-u_xlat9) + 1.0;
					    u_xlat9 = u_xlat9 * _ProjectionParams.z;
					    u_xlat9 = max(u_xlat9, 0.0);
					    u_xlat9 = u_xlat9 * unity_FogParams.y;
					    u_xlat9 = exp2((-u_xlat9));
					    u_xlat9 = min(u_xlat9, 1.0);
					    SV_Target0.xyz = vec3(u_xlat9) * u_xlat0.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendMul2" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3.x;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3.x;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendMul2" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					bool u_xlatb2;
					float u_xlat9;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2.x = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2.x;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat0.w = u_xlat0.w;
					    u_xlat0.w = clamp(u_xlat0.w, 0.0, 1.0);
					    u_xlat1 = u_xlat0 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat0.xyz = u_xlat0.www * u_xlat1.xyz;
					    SV_Target0.w = u_xlat0.w * u_xlat1.w + 0.5;
					    u_xlat9 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat9 = (-u_xlat9) + 1.0;
					    u_xlat9 = u_xlat9 * _ProjectionParams.z;
					    u_xlat9 = max(u_xlat9, 0.0);
					    u_xlat9 = u_xlat9 * unity_FogParams.x;
					    u_xlat9 = u_xlat9 * (-u_xlat9);
					    u_xlat9 = exp2(u_xlat9);
					    SV_Target0.xyz = vec3(u_xlat9) * u_xlat0.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					bool u_xlatb2;
					float u_xlat9;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2.x = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2.x;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat0.w = u_xlat0.w;
					    u_xlat0.w = clamp(u_xlat0.w, 0.0, 1.0);
					    u_xlat1 = u_xlat0 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat0.xyz = u_xlat0.www * u_xlat1.xyz;
					    SV_Target0.w = u_xlat0.w * u_xlat1.w + 0.5;
					    u_xlat9 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat9 = (-u_xlat9) + 1.0;
					    u_xlat9 = u_xlat9 * _ProjectionParams.z;
					    u_xlat9 = max(u_xlat9, 0.0);
					    u_xlat9 = u_xlat9 * unity_FogParams.x;
					    u_xlat9 = u_xlat9 * (-u_xlat9);
					    u_xlat9 = exp2(u_xlat9);
					    SV_Target0.xyz = vec3(u_xlat9) * u_xlat0.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendMul2" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[7];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					bool u_xlatb2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2.x = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2.x;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat0.w = u_xlat0.w;
					    u_xlat0.w = clamp(u_xlat0.w, 0.0, 1.0);
					    u_xlat1 = u_xlat0 + vec4(-0.5, -0.5, -0.5, -0.5);
					    SV_Target0 = u_xlat0.wwww * u_xlat1 + vec4(0.5, 0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[6];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					bool u_xlatb2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2.x = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2.x;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat0.w = u_xlat0.w;
					    u_xlat0.w = clamp(u_xlat0.w, 0.0, 1.0);
					    u_xlat1 = u_xlat0 + vec4(-0.5, -0.5, -0.5, -0.5);
					    SV_Target0 = u_xlat0.wwww * u_xlat1 + vec4(0.5, 0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendMul2" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[7];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					bool u_xlatb2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2.x = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2.x;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat0.w = u_xlat0.w;
					    u_xlat0.w = clamp(u_xlat0.w, 0.0, 1.0);
					    u_xlat1 = u_xlat0 + vec4(-0.5, -0.5, -0.5, -0.5);
					    SV_Target0 = u_xlat0.wwww * u_xlat1 + vec4(0.5, 0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[6];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					bool u_xlatb2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2.x = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2.x;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat0.w = u_xlat0.w;
					    u_xlat0.w = clamp(u_xlat0.w, 0.0, 1.0);
					    u_xlat1 = u_xlat0 + vec4(-0.5, -0.5, -0.5, -0.5);
					    SV_Target0 = u_xlat0.wwww * u_xlat1 + vec4(0.5, 0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendMul2" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					bool u_xlatb2;
					float u_xlat9;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2.x = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2.x;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat0.w = u_xlat0.w;
					    u_xlat0.w = clamp(u_xlat0.w, 0.0, 1.0);
					    u_xlat1 = u_xlat0 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat0.xyz = u_xlat0.www * u_xlat1.xyz;
					    SV_Target0.w = u_xlat0.w * u_xlat1.w + 0.5;
					    u_xlat9 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat9 = (-u_xlat9) + 1.0;
					    u_xlat9 = u_xlat9 * _ProjectionParams.z;
					    u_xlat9 = max(u_xlat9, 0.0);
					    u_xlat9 = u_xlat9 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat9 = clamp(u_xlat9, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat9) * u_xlat0.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					bool u_xlatb2;
					float u_xlat9;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2.x = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2.x;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat0.w = u_xlat0.w;
					    u_xlat0.w = clamp(u_xlat0.w, 0.0, 1.0);
					    u_xlat1 = u_xlat0 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat0.xyz = u_xlat0.www * u_xlat1.xyz;
					    SV_Target0.w = u_xlat0.w * u_xlat1.w + 0.5;
					    u_xlat9 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat9 = (-u_xlat9) + 1.0;
					    u_xlat9 = u_xlat9 * _ProjectionParams.z;
					    u_xlat9 = max(u_xlat9, 0.0);
					    u_xlat9 = u_xlat9 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat9 = clamp(u_xlat9, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat9) * u_xlat0.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendMul2" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					bool u_xlatb2;
					float u_xlat9;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2.x = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2.x;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat0.w = u_xlat0.w;
					    u_xlat0.w = clamp(u_xlat0.w, 0.0, 1.0);
					    u_xlat1 = u_xlat0 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat0.xyz = u_xlat0.www * u_xlat1.xyz;
					    SV_Target0.w = u_xlat0.w * u_xlat1.w + 0.5;
					    u_xlat9 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat9 = (-u_xlat9) + 1.0;
					    u_xlat9 = u_xlat9 * _ProjectionParams.z;
					    u_xlat9 = max(u_xlat9, 0.0);
					    u_xlat9 = u_xlat9 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat9 = clamp(u_xlat9, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat9) * u_xlat0.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					bool u_xlatb2;
					float u_xlat9;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2.x = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2.x;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat0.w = u_xlat0.w;
					    u_xlat0.w = clamp(u_xlat0.w, 0.0, 1.0);
					    u_xlat1 = u_xlat0 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat0.xyz = u_xlat0.www * u_xlat1.xyz;
					    SV_Target0.w = u_xlat0.w * u_xlat1.w + 0.5;
					    u_xlat9 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat9 = (-u_xlat9) + 1.0;
					    u_xlat9 = u_xlat9 * _ProjectionParams.z;
					    u_xlat9 = max(u_xlat9, 0.0);
					    u_xlat9 = u_xlat9 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat9 = clamp(u_xlat9, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat9) * u_xlat0.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendMul2" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					bool u_xlatb2;
					float u_xlat9;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2.x = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2.x;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat0.w = u_xlat0.w;
					    u_xlat0.w = clamp(u_xlat0.w, 0.0, 1.0);
					    u_xlat1 = u_xlat0 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat0.xyz = u_xlat0.www * u_xlat1.xyz;
					    SV_Target0.w = u_xlat0.w * u_xlat1.w + 0.5;
					    u_xlat9 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat9 = (-u_xlat9) + 1.0;
					    u_xlat9 = u_xlat9 * _ProjectionParams.z;
					    u_xlat9 = max(u_xlat9, 0.0);
					    u_xlat9 = u_xlat9 * unity_FogParams.y;
					    u_xlat9 = exp2((-u_xlat9));
					    u_xlat9 = min(u_xlat9, 1.0);
					    SV_Target0.xyz = vec3(u_xlat9) * u_xlat0.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					bool u_xlatb2;
					float u_xlat9;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2.x = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2.x;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat0.w = u_xlat0.w;
					    u_xlat0.w = clamp(u_xlat0.w, 0.0, 1.0);
					    u_xlat1 = u_xlat0 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat0.xyz = u_xlat0.www * u_xlat1.xyz;
					    SV_Target0.w = u_xlat0.w * u_xlat1.w + 0.5;
					    u_xlat9 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat9 = (-u_xlat9) + 1.0;
					    u_xlat9 = u_xlat9 * _ProjectionParams.z;
					    u_xlat9 = max(u_xlat9, 0.0);
					    u_xlat9 = u_xlat9 * unity_FogParams.y;
					    u_xlat9 = exp2((-u_xlat9));
					    u_xlat9 = min(u_xlat9, 1.0);
					    SV_Target0.xyz = vec3(u_xlat9) * u_xlat0.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendMul2" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					bool u_xlatb2;
					float u_xlat9;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2.x = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2.x;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat0.w = u_xlat0.w;
					    u_xlat0.w = clamp(u_xlat0.w, 0.0, 1.0);
					    u_xlat1 = u_xlat0 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat0.xyz = u_xlat0.www * u_xlat1.xyz;
					    SV_Target0.w = u_xlat0.w * u_xlat1.w + 0.5;
					    u_xlat9 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat9 = (-u_xlat9) + 1.0;
					    u_xlat9 = u_xlat9 * _ProjectionParams.z;
					    u_xlat9 = max(u_xlat9, 0.0);
					    u_xlat9 = u_xlat9 * unity_FogParams.y;
					    u_xlat9 = exp2((-u_xlat9));
					    u_xlat9 = min(u_xlat9, 1.0);
					    SV_Target0.xyz = vec3(u_xlat9) * u_xlat0.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					bool u_xlatb2;
					float u_xlat9;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2.x = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2.x;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat0.w = u_xlat0.w;
					    u_xlat0.w = clamp(u_xlat0.w, 0.0, 1.0);
					    u_xlat1 = u_xlat0 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat0.xyz = u_xlat0.www * u_xlat1.xyz;
					    SV_Target0.w = u_xlat0.w * u_xlat1.w + 0.5;
					    u_xlat9 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat9 = (-u_xlat9) + 1.0;
					    u_xlat9 = u_xlat9 * _ProjectionParams.z;
					    u_xlat9 = max(u_xlat9, 0.0);
					    u_xlat9 = u_xlat9 * unity_FogParams.y;
					    u_xlat9 = exp2((-u_xlat9));
					    u_xlat9 = min(u_xlat9, 1.0);
					    SV_Target0.xyz = vec3(u_xlat9) * u_xlat0.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendMul2" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					bool u_xlatb2;
					float u_xlat9;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2.x = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2.x;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat0.w = u_xlat0.w;
					    u_xlat0.w = clamp(u_xlat0.w, 0.0, 1.0);
					    u_xlat1 = u_xlat0 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat0.xyz = u_xlat0.www * u_xlat1.xyz;
					    SV_Target0.w = u_xlat0.w * u_xlat1.w + 0.5;
					    u_xlat9 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat9 = (-u_xlat9) + 1.0;
					    u_xlat9 = u_xlat9 * _ProjectionParams.z;
					    u_xlat9 = max(u_xlat9, 0.0);
					    u_xlat9 = u_xlat9 * unity_FogParams.x;
					    u_xlat9 = u_xlat9 * (-u_xlat9);
					    u_xlat9 = exp2(u_xlat9);
					    SV_Target0.xyz = vec3(u_xlat9) * u_xlat0.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					bool u_xlatb2;
					float u_xlat9;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2.x = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2.x;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat0.w = u_xlat0.w;
					    u_xlat0.w = clamp(u_xlat0.w, 0.0, 1.0);
					    u_xlat1 = u_xlat0 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat0.xyz = u_xlat0.www * u_xlat1.xyz;
					    SV_Target0.w = u_xlat0.w * u_xlat1.w + 0.5;
					    u_xlat9 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat9 = (-u_xlat9) + 1.0;
					    u_xlat9 = u_xlat9 * _ProjectionParams.z;
					    u_xlat9 = max(u_xlat9, 0.0);
					    u_xlat9 = u_xlat9 * unity_FogParams.x;
					    u_xlat9 = u_xlat9 * (-u_xlat9);
					    u_xlat9 = exp2(u_xlat9);
					    SV_Target0.xyz = vec3(u_xlat9) * u_xlat0.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendMul2" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					bool u_xlatb2;
					float u_xlat9;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2.x = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2.x;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat0.w = u_xlat0.w;
					    u_xlat0.w = clamp(u_xlat0.w, 0.0, 1.0);
					    u_xlat1 = u_xlat0 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat0.xyz = u_xlat0.www * u_xlat1.xyz;
					    SV_Target0.w = u_xlat0.w * u_xlat1.w + 0.5;
					    u_xlat9 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat9 = (-u_xlat9) + 1.0;
					    u_xlat9 = u_xlat9 * _ProjectionParams.z;
					    u_xlat9 = max(u_xlat9, 0.0);
					    u_xlat9 = u_xlat9 * unity_FogParams.x;
					    u_xlat9 = u_xlat9 * (-u_xlat9);
					    u_xlat9 = exp2(u_xlat9);
					    SV_Target0.xyz = vec3(u_xlat9) * u_xlat0.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					bool u_xlatb2;
					float u_xlat9;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2.x = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2.x;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat0.w = u_xlat0.w;
					    u_xlat0.w = clamp(u_xlat0.w, 0.0, 1.0);
					    u_xlat1 = u_xlat0 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat0.xyz = u_xlat0.www * u_xlat1.xyz;
					    SV_Target0.w = u_xlat0.w * u_xlat1.w + 0.5;
					    u_xlat9 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat9 = (-u_xlat9) + 1.0;
					    u_xlat9 = u_xlat9 * _ProjectionParams.z;
					    u_xlat9 = max(u_xlat9, 0.0);
					    u_xlat9 = u_xlat9 * unity_FogParams.x;
					    u_xlat9 = u_xlat9 * (-u_xlat9);
					    u_xlat9 = exp2(u_xlat9);
					    SV_Target0.xyz = vec3(u_xlat9) * u_xlat0.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendMul2" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					bool u_xlatb1;
					float u_xlat6;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1.x = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat0.w = u_xlat0.w * u_xlat1.x;
					    u_xlat0 = u_xlat0 * vs_COLOR0;
					    u_xlat6 = u_xlat0.w;
					    u_xlat6 = clamp(u_xlat6, 0.0, 1.0);
					    u_xlat0.w = u_xlat6 * vs_TEXCOORD4;
					    u_xlat1 = u_xlat0 + vec4(-0.5, -0.5, -0.5, -0.5);
					    SV_Target0 = u_xlat0.wwww * u_xlat1 + vec4(0.5, 0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					bool u_xlatb1;
					float u_xlat6;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1.x = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat0.w = u_xlat0.w * u_xlat1.x;
					    u_xlat0 = u_xlat0 * vs_COLOR0;
					    u_xlat6 = u_xlat0.w;
					    u_xlat6 = clamp(u_xlat6, 0.0, 1.0);
					    u_xlat0.w = u_xlat6 * vs_TEXCOORD4;
					    u_xlat1 = u_xlat0 + vec4(-0.5, -0.5, -0.5, -0.5);
					    SV_Target0 = u_xlat0.wwww * u_xlat1 + vec4(0.5, 0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendMul2" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[7];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					bool u_xlatb2;
					float u_xlat9;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2.x = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2.x;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat9 = u_xlat0.w;
					    u_xlat9 = clamp(u_xlat9, 0.0, 1.0);
					    u_xlat0.w = u_xlat9 * vs_TEXCOORD4;
					    u_xlat1 = u_xlat0 + vec4(-0.5, -0.5, -0.5, -0.5);
					    SV_Target0 = u_xlat0.wwww * u_xlat1 + vec4(0.5, 0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[6];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					bool u_xlatb2;
					float u_xlat9;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2.x = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2.x;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat9 = u_xlat0.w;
					    u_xlat9 = clamp(u_xlat9, 0.0, 1.0);
					    u_xlat0.w = u_xlat9 * vs_TEXCOORD4;
					    u_xlat1 = u_xlat0 + vec4(-0.5, -0.5, -0.5, -0.5);
					    SV_Target0 = u_xlat0.wwww * u_xlat1 + vec4(0.5, 0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendMul2" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3.x;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3.x;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendMul2" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					bool u_xlatb2;
					float u_xlat9;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2.x = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2.x;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat9 = u_xlat0.w;
					    u_xlat9 = clamp(u_xlat9, 0.0, 1.0);
					    u_xlat0.w = u_xlat9 * vs_TEXCOORD4;
					    u_xlat1 = u_xlat0 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat0.xyz = u_xlat0.www * u_xlat1.xyz;
					    SV_Target0.w = u_xlat0.w * u_xlat1.w + 0.5;
					    u_xlat9 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat9 = (-u_xlat9) + 1.0;
					    u_xlat9 = u_xlat9 * _ProjectionParams.z;
					    u_xlat9 = max(u_xlat9, 0.0);
					    u_xlat9 = u_xlat9 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat9 = clamp(u_xlat9, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat9) * u_xlat0.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					bool u_xlatb2;
					float u_xlat9;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2.x = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2.x;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat9 = u_xlat0.w;
					    u_xlat9 = clamp(u_xlat9, 0.0, 1.0);
					    u_xlat0.w = u_xlat9 * vs_TEXCOORD4;
					    u_xlat1 = u_xlat0 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat0.xyz = u_xlat0.www * u_xlat1.xyz;
					    SV_Target0.w = u_xlat0.w * u_xlat1.w + 0.5;
					    u_xlat9 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat9 = (-u_xlat9) + 1.0;
					    u_xlat9 = u_xlat9 * _ProjectionParams.z;
					    u_xlat9 = max(u_xlat9, 0.0);
					    u_xlat9 = u_xlat9 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat9 = clamp(u_xlat9, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat9) * u_xlat0.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendMul2" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3.x;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3.x;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendMul2" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					bool u_xlatb2;
					float u_xlat9;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2.x = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2.x;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat9 = u_xlat0.w;
					    u_xlat9 = clamp(u_xlat9, 0.0, 1.0);
					    u_xlat0.w = u_xlat9 * vs_TEXCOORD4;
					    u_xlat1 = u_xlat0 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat0.xyz = u_xlat0.www * u_xlat1.xyz;
					    SV_Target0.w = u_xlat0.w * u_xlat1.w + 0.5;
					    u_xlat9 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat9 = (-u_xlat9) + 1.0;
					    u_xlat9 = u_xlat9 * _ProjectionParams.z;
					    u_xlat9 = max(u_xlat9, 0.0);
					    u_xlat9 = u_xlat9 * unity_FogParams.y;
					    u_xlat9 = exp2((-u_xlat9));
					    u_xlat9 = min(u_xlat9, 1.0);
					    SV_Target0.xyz = vec3(u_xlat9) * u_xlat0.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					bool u_xlatb2;
					float u_xlat9;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2.x = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2.x;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat9 = u_xlat0.w;
					    u_xlat9 = clamp(u_xlat9, 0.0, 1.0);
					    u_xlat0.w = u_xlat9 * vs_TEXCOORD4;
					    u_xlat1 = u_xlat0 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat0.xyz = u_xlat0.www * u_xlat1.xyz;
					    SV_Target0.w = u_xlat0.w * u_xlat1.w + 0.5;
					    u_xlat9 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat9 = (-u_xlat9) + 1.0;
					    u_xlat9 = u_xlat9 * _ProjectionParams.z;
					    u_xlat9 = max(u_xlat9, 0.0);
					    u_xlat9 = u_xlat9 * unity_FogParams.y;
					    u_xlat9 = exp2((-u_xlat9));
					    u_xlat9 = min(u_xlat9, 1.0);
					    SV_Target0.xyz = vec3(u_xlat9) * u_xlat0.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendMul2" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3.x;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3.x;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendMul2" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					bool u_xlatb2;
					float u_xlat9;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2.x = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2.x;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat9 = u_xlat0.w;
					    u_xlat9 = clamp(u_xlat9, 0.0, 1.0);
					    u_xlat0.w = u_xlat9 * vs_TEXCOORD4;
					    u_xlat1 = u_xlat0 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat0.xyz = u_xlat0.www * u_xlat1.xyz;
					    SV_Target0.w = u_xlat0.w * u_xlat1.w + 0.5;
					    u_xlat9 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat9 = (-u_xlat9) + 1.0;
					    u_xlat9 = u_xlat9 * _ProjectionParams.z;
					    u_xlat9 = max(u_xlat9, 0.0);
					    u_xlat9 = u_xlat9 * unity_FogParams.x;
					    u_xlat9 = u_xlat9 * (-u_xlat9);
					    u_xlat9 = exp2(u_xlat9);
					    SV_Target0.xyz = vec3(u_xlat9) * u_xlat0.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					bool u_xlatb2;
					float u_xlat9;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2.x = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2.x;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat9 = u_xlat0.w;
					    u_xlat9 = clamp(u_xlat9, 0.0, 1.0);
					    u_xlat0.w = u_xlat9 * vs_TEXCOORD4;
					    u_xlat1 = u_xlat0 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat0.xyz = u_xlat0.www * u_xlat1.xyz;
					    SV_Target0.w = u_xlat0.w * u_xlat1.w + 0.5;
					    u_xlat9 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat9 = (-u_xlat9) + 1.0;
					    u_xlat9 = u_xlat9 * _ProjectionParams.z;
					    u_xlat9 = max(u_xlat9, 0.0);
					    u_xlat9 = u_xlat9 * unity_FogParams.x;
					    u_xlat9 = u_xlat9 * (-u_xlat9);
					    u_xlat9 = exp2(u_xlat9);
					    SV_Target0.xyz = vec3(u_xlat9) * u_xlat0.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendMul2" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[7];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					bool u_xlatb2;
					float u_xlat9;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2.x = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2.x;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat9 = u_xlat0.w;
					    u_xlat9 = clamp(u_xlat9, 0.0, 1.0);
					    u_xlat0.w = u_xlat9 * vs_TEXCOORD4;
					    u_xlat1 = u_xlat0 + vec4(-0.5, -0.5, -0.5, -0.5);
					    SV_Target0 = u_xlat0.wwww * u_xlat1 + vec4(0.5, 0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[6];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					bool u_xlatb2;
					float u_xlat9;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2.x = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2.x;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat9 = u_xlat0.w;
					    u_xlat9 = clamp(u_xlat9, 0.0, 1.0);
					    u_xlat0.w = u_xlat9 * vs_TEXCOORD4;
					    u_xlat1 = u_xlat0 + vec4(-0.5, -0.5, -0.5, -0.5);
					    SV_Target0 = u_xlat0.wwww * u_xlat1 + vec4(0.5, 0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendMul2" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[7];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					bool u_xlatb2;
					float u_xlat9;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2.x = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2.x;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat9 = u_xlat0.w;
					    u_xlat9 = clamp(u_xlat9, 0.0, 1.0);
					    u_xlat0.w = u_xlat9 * vs_TEXCOORD4;
					    u_xlat1 = u_xlat0 + vec4(-0.5, -0.5, -0.5, -0.5);
					    SV_Target0 = u_xlat0.wwww * u_xlat1 + vec4(0.5, 0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[6];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					bool u_xlatb2;
					float u_xlat9;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2.x = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2.x;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat9 = u_xlat0.w;
					    u_xlat9 = clamp(u_xlat9, 0.0, 1.0);
					    u_xlat0.w = u_xlat9 * vs_TEXCOORD4;
					    u_xlat1 = u_xlat0 + vec4(-0.5, -0.5, -0.5, -0.5);
					    SV_Target0 = u_xlat0.wwww * u_xlat1 + vec4(0.5, 0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendMul2" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					bool u_xlatb2;
					float u_xlat9;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2.x = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2.x;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat9 = u_xlat0.w;
					    u_xlat9 = clamp(u_xlat9, 0.0, 1.0);
					    u_xlat0.w = u_xlat9 * vs_TEXCOORD4;
					    u_xlat1 = u_xlat0 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat0.xyz = u_xlat0.www * u_xlat1.xyz;
					    SV_Target0.w = u_xlat0.w * u_xlat1.w + 0.5;
					    u_xlat9 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat9 = (-u_xlat9) + 1.0;
					    u_xlat9 = u_xlat9 * _ProjectionParams.z;
					    u_xlat9 = max(u_xlat9, 0.0);
					    u_xlat9 = u_xlat9 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat9 = clamp(u_xlat9, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat9) * u_xlat0.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					bool u_xlatb2;
					float u_xlat9;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2.x = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2.x;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat9 = u_xlat0.w;
					    u_xlat9 = clamp(u_xlat9, 0.0, 1.0);
					    u_xlat0.w = u_xlat9 * vs_TEXCOORD4;
					    u_xlat1 = u_xlat0 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat0.xyz = u_xlat0.www * u_xlat1.xyz;
					    SV_Target0.w = u_xlat0.w * u_xlat1.w + 0.5;
					    u_xlat9 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat9 = (-u_xlat9) + 1.0;
					    u_xlat9 = u_xlat9 * _ProjectionParams.z;
					    u_xlat9 = max(u_xlat9, 0.0);
					    u_xlat9 = u_xlat9 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat9 = clamp(u_xlat9, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat9) * u_xlat0.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendMul2" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					bool u_xlatb2;
					float u_xlat9;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2.x = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2.x;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat9 = u_xlat0.w;
					    u_xlat9 = clamp(u_xlat9, 0.0, 1.0);
					    u_xlat0.w = u_xlat9 * vs_TEXCOORD4;
					    u_xlat1 = u_xlat0 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat0.xyz = u_xlat0.www * u_xlat1.xyz;
					    SV_Target0.w = u_xlat0.w * u_xlat1.w + 0.5;
					    u_xlat9 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat9 = (-u_xlat9) + 1.0;
					    u_xlat9 = u_xlat9 * _ProjectionParams.z;
					    u_xlat9 = max(u_xlat9, 0.0);
					    u_xlat9 = u_xlat9 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat9 = clamp(u_xlat9, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat9) * u_xlat0.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					bool u_xlatb2;
					float u_xlat9;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2.x = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2.x;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat9 = u_xlat0.w;
					    u_xlat9 = clamp(u_xlat9, 0.0, 1.0);
					    u_xlat0.w = u_xlat9 * vs_TEXCOORD4;
					    u_xlat1 = u_xlat0 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat0.xyz = u_xlat0.www * u_xlat1.xyz;
					    SV_Target0.w = u_xlat0.w * u_xlat1.w + 0.5;
					    u_xlat9 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat9 = (-u_xlat9) + 1.0;
					    u_xlat9 = u_xlat9 * _ProjectionParams.z;
					    u_xlat9 = max(u_xlat9, 0.0);
					    u_xlat9 = u_xlat9 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat9 = clamp(u_xlat9, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat9) * u_xlat0.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendMul2" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					bool u_xlatb2;
					float u_xlat9;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2.x = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2.x;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat9 = u_xlat0.w;
					    u_xlat9 = clamp(u_xlat9, 0.0, 1.0);
					    u_xlat0.w = u_xlat9 * vs_TEXCOORD4;
					    u_xlat1 = u_xlat0 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat0.xyz = u_xlat0.www * u_xlat1.xyz;
					    SV_Target0.w = u_xlat0.w * u_xlat1.w + 0.5;
					    u_xlat9 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat9 = (-u_xlat9) + 1.0;
					    u_xlat9 = u_xlat9 * _ProjectionParams.z;
					    u_xlat9 = max(u_xlat9, 0.0);
					    u_xlat9 = u_xlat9 * unity_FogParams.y;
					    u_xlat9 = exp2((-u_xlat9));
					    u_xlat9 = min(u_xlat9, 1.0);
					    SV_Target0.xyz = vec3(u_xlat9) * u_xlat0.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					bool u_xlatb2;
					float u_xlat9;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2.x = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2.x;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat9 = u_xlat0.w;
					    u_xlat9 = clamp(u_xlat9, 0.0, 1.0);
					    u_xlat0.w = u_xlat9 * vs_TEXCOORD4;
					    u_xlat1 = u_xlat0 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat0.xyz = u_xlat0.www * u_xlat1.xyz;
					    SV_Target0.w = u_xlat0.w * u_xlat1.w + 0.5;
					    u_xlat9 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat9 = (-u_xlat9) + 1.0;
					    u_xlat9 = u_xlat9 * _ProjectionParams.z;
					    u_xlat9 = max(u_xlat9, 0.0);
					    u_xlat9 = u_xlat9 * unity_FogParams.y;
					    u_xlat9 = exp2((-u_xlat9));
					    u_xlat9 = min(u_xlat9, 1.0);
					    SV_Target0.xyz = vec3(u_xlat9) * u_xlat0.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendMul2" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					bool u_xlatb2;
					float u_xlat9;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2.x = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2.x;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat9 = u_xlat0.w;
					    u_xlat9 = clamp(u_xlat9, 0.0, 1.0);
					    u_xlat0.w = u_xlat9 * vs_TEXCOORD4;
					    u_xlat1 = u_xlat0 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat0.xyz = u_xlat0.www * u_xlat1.xyz;
					    SV_Target0.w = u_xlat0.w * u_xlat1.w + 0.5;
					    u_xlat9 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat9 = (-u_xlat9) + 1.0;
					    u_xlat9 = u_xlat9 * _ProjectionParams.z;
					    u_xlat9 = max(u_xlat9, 0.0);
					    u_xlat9 = u_xlat9 * unity_FogParams.y;
					    u_xlat9 = exp2((-u_xlat9));
					    u_xlat9 = min(u_xlat9, 1.0);
					    SV_Target0.xyz = vec3(u_xlat9) * u_xlat0.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					bool u_xlatb2;
					float u_xlat9;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2.x = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2.x;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat9 = u_xlat0.w;
					    u_xlat9 = clamp(u_xlat9, 0.0, 1.0);
					    u_xlat0.w = u_xlat9 * vs_TEXCOORD4;
					    u_xlat1 = u_xlat0 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat0.xyz = u_xlat0.www * u_xlat1.xyz;
					    SV_Target0.w = u_xlat0.w * u_xlat1.w + 0.5;
					    u_xlat9 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat9 = (-u_xlat9) + 1.0;
					    u_xlat9 = u_xlat9 * _ProjectionParams.z;
					    u_xlat9 = max(u_xlat9, 0.0);
					    u_xlat9 = u_xlat9 * unity_FogParams.y;
					    u_xlat9 = exp2((-u_xlat9));
					    u_xlat9 = min(u_xlat9, 1.0);
					    SV_Target0.xyz = vec3(u_xlat9) * u_xlat0.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendMul2" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					bool u_xlatb2;
					float u_xlat9;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2.x = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2.x;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat9 = u_xlat0.w;
					    u_xlat9 = clamp(u_xlat9, 0.0, 1.0);
					    u_xlat0.w = u_xlat9 * vs_TEXCOORD4;
					    u_xlat1 = u_xlat0 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat0.xyz = u_xlat0.www * u_xlat1.xyz;
					    SV_Target0.w = u_xlat0.w * u_xlat1.w + 0.5;
					    u_xlat9 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat9 = (-u_xlat9) + 1.0;
					    u_xlat9 = u_xlat9 * _ProjectionParams.z;
					    u_xlat9 = max(u_xlat9, 0.0);
					    u_xlat9 = u_xlat9 * unity_FogParams.x;
					    u_xlat9 = u_xlat9 * (-u_xlat9);
					    u_xlat9 = exp2(u_xlat9);
					    SV_Target0.xyz = vec3(u_xlat9) * u_xlat0.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					bool u_xlatb2;
					float u_xlat9;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2.x = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2.x;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat9 = u_xlat0.w;
					    u_xlat9 = clamp(u_xlat9, 0.0, 1.0);
					    u_xlat0.w = u_xlat9 * vs_TEXCOORD4;
					    u_xlat1 = u_xlat0 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat0.xyz = u_xlat0.www * u_xlat1.xyz;
					    SV_Target0.w = u_xlat0.w * u_xlat1.w + 0.5;
					    u_xlat9 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat9 = (-u_xlat9) + 1.0;
					    u_xlat9 = u_xlat9 * _ProjectionParams.z;
					    u_xlat9 = max(u_xlat9, 0.0);
					    u_xlat9 = u_xlat9 * unity_FogParams.x;
					    u_xlat9 = u_xlat9 * (-u_xlat9);
					    u_xlat9 = exp2(u_xlat9);
					    SV_Target0.xyz = vec3(u_xlat9) * u_xlat0.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendMul2" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					bool u_xlatb2;
					float u_xlat9;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2.x = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2.x;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat9 = u_xlat0.w;
					    u_xlat9 = clamp(u_xlat9, 0.0, 1.0);
					    u_xlat0.w = u_xlat9 * vs_TEXCOORD4;
					    u_xlat1 = u_xlat0 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat0.xyz = u_xlat0.www * u_xlat1.xyz;
					    SV_Target0.w = u_xlat0.w * u_xlat1.w + 0.5;
					    u_xlat9 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat9 = (-u_xlat9) + 1.0;
					    u_xlat9 = u_xlat9 * _ProjectionParams.z;
					    u_xlat9 = max(u_xlat9, 0.0);
					    u_xlat9 = u_xlat9 * unity_FogParams.x;
					    u_xlat9 = u_xlat9 * (-u_xlat9);
					    u_xlat9 = exp2(u_xlat9);
					    SV_Target0.xyz = vec3(u_xlat9) * u_xlat0.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					bool u_xlatb2;
					float u_xlat9;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2.x = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2.x;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat9 = u_xlat0.w;
					    u_xlat9 = clamp(u_xlat9, 0.0, 1.0);
					    u_xlat0.w = u_xlat9 * vs_TEXCOORD4;
					    u_xlat1 = u_xlat0 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat0.xyz = u_xlat0.www * u_xlat1.xyz;
					    SV_Target0.w = u_xlat0.w * u_xlat1.w + 0.5;
					    u_xlat9 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat9 = (-u_xlat9) + 1.0;
					    u_xlat9 = u_xlat9 * _ProjectionParams.z;
					    u_xlat9 = max(u_xlat9, 0.0);
					    u_xlat9 = u_xlat9 * unity_FogParams.x;
					    u_xlat9 = u_xlat9 * (-u_xlat9);
					    u_xlat9 = exp2(u_xlat9);
					    SV_Target0.xyz = vec3(u_xlat9) * u_xlat0.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendMul2" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlat0.xyz = u_xlat0.xyz + u_xlat0.xyz;
					    u_xlat0.xyz = u_xlat0.xyz * _TintColor.xyz;
					    u_xlat1.xyz = u_xlat0.xyz * vs_COLOR0.xyz;
					    u_xlat0.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlatb0 = u_xlat0.w>=u_xlat0.x;
					    u_xlat1.w = u_xlatb0 ? 1.0 : float(0.0);
					    u_xlat0 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    SV_Target0 = u_xlat1.wwww * u_xlat0 + vec4(0.5, 0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlat0.xyz = u_xlat0.xyz + u_xlat0.xyz;
					    u_xlat0.xyz = u_xlat0.xyz * _TintColor.xyz;
					    u_xlat1.xyz = u_xlat0.xyz * vs_COLOR0.xyz;
					    u_xlat0.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlatb0 = u_xlat0.w>=u_xlat0.x;
					    u_xlat1.w = u_xlatb0 ? 1.0 : float(0.0);
					    u_xlat0 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    SV_Target0 = u_xlat1.wwww * u_xlat0 + vec4(0.5, 0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendMul2" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[7];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb0 = u_xlat1.w>=u_xlat0.x;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat1.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat1.w = u_xlatb0 ? 1.0 : float(0.0);
					    u_xlat0 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    SV_Target0 = u_xlat1.wwww * u_xlat0 + vec4(0.5, 0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[6];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb0 = u_xlat1.w>=u_xlat0.x;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat1.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat1.w = u_xlatb0 ? 1.0 : float(0.0);
					    u_xlat0 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    SV_Target0 = u_xlat1.wwww * u_xlat0 + vec4(0.5, 0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendMul2" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat2.w = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1 = u_xlat2 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat2.w = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1 = u_xlat2 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendMul2" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					float u_xlat9;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlat0.xyz = u_xlat0.xyz + u_xlat0.xyz;
					    u_xlat0.xyz = u_xlat0.xyz * _TintColor.xyz;
					    u_xlat1.xyz = u_xlat0.xyz * vs_COLOR0.xyz;
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat2 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat2.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlatb0 = u_xlat0.w>=u_xlat0.x;
					    u_xlat1.w = u_xlatb0 ? 1.0 : float(0.0);
					    u_xlat0 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat0.xyz = u_xlat0.xyz * u_xlat1.www;
					    SV_Target0.w = u_xlat1.w * u_xlat0.w + 0.5;
					    u_xlat9 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat9 = (-u_xlat9) + 1.0;
					    u_xlat9 = u_xlat9 * _ProjectionParams.z;
					    u_xlat9 = max(u_xlat9, 0.0);
					    u_xlat9 = u_xlat9 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat9 = clamp(u_xlat9, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat9) * u_xlat0.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					float u_xlat9;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlat0.xyz = u_xlat0.xyz + u_xlat0.xyz;
					    u_xlat0.xyz = u_xlat0.xyz * _TintColor.xyz;
					    u_xlat1.xyz = u_xlat0.xyz * vs_COLOR0.xyz;
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat2 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat2.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlatb0 = u_xlat0.w>=u_xlat0.x;
					    u_xlat1.w = u_xlatb0 ? 1.0 : float(0.0);
					    u_xlat0 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat0.xyz = u_xlat0.xyz * u_xlat1.www;
					    SV_Target0.w = u_xlat1.w * u_xlat0.w + 0.5;
					    u_xlat9 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat9 = (-u_xlat9) + 1.0;
					    u_xlat9 = u_xlat9 * _ProjectionParams.z;
					    u_xlat9 = max(u_xlat9, 0.0);
					    u_xlat9 = u_xlat9 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat9 = clamp(u_xlat9, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat9) * u_xlat0.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendMul2" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat2.w = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1 = u_xlat2 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat2.w = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1 = u_xlat2 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendMul2" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec3 u_xlat4;
					bool u_xlatb4;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat4.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat4.xyz = u_xlat4.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat4.xyz * vs_COLOR0.xyz;
					    u_xlat4.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat3 = texture(_CameraDepthTexture, u_xlat4.xy);
					    u_xlat4.x = _ZBufferParams.z * u_xlat3.x + _ZBufferParams.w;
					    u_xlat4.x = float(1.0) / u_xlat4.x;
					    u_xlat4.x = u_xlat4.x + (-vs_TEXCOORD3.z);
					    u_xlat4.x = u_xlat4.x * _InvFade;
					    u_xlat4.x = clamp(u_xlat4.x, 0.0, 1.0);
					    u_xlat4.x = (-vs_COLOR0.w) * u_xlat4.x + 1.0;
					    u_xlat4.x = u_xlat4.x + _Cutout;
					    u_xlatb4 = u_xlat1.w>=u_xlat4.x;
					    u_xlat2.w = u_xlatb4 ? 1.0 : float(0.0);
					    u_xlat1 = u_xlat2 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat4.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat4.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec3 u_xlat4;
					bool u_xlatb4;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat4.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat4.xyz = u_xlat4.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat4.xyz * vs_COLOR0.xyz;
					    u_xlat4.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat3 = texture(_CameraDepthTexture, u_xlat4.xy);
					    u_xlat4.x = _ZBufferParams.z * u_xlat3.x + _ZBufferParams.w;
					    u_xlat4.x = float(1.0) / u_xlat4.x;
					    u_xlat4.x = u_xlat4.x + (-vs_TEXCOORD3.z);
					    u_xlat4.x = u_xlat4.x * _InvFade;
					    u_xlat4.x = clamp(u_xlat4.x, 0.0, 1.0);
					    u_xlat4.x = (-vs_COLOR0.w) * u_xlat4.x + 1.0;
					    u_xlat4.x = u_xlat4.x + _Cutout;
					    u_xlatb4 = u_xlat1.w>=u_xlat4.x;
					    u_xlat2.w = u_xlatb4 ? 1.0 : float(0.0);
					    u_xlat1 = u_xlat2 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat4.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat4.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendMul2" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat2.w = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1 = u_xlat2 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat2.w = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1 = u_xlat2 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendMul2" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec3 u_xlat4;
					bool u_xlatb4;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat4.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat4.xyz = u_xlat4.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat4.xyz * vs_COLOR0.xyz;
					    u_xlat4.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat3 = texture(_CameraDepthTexture, u_xlat4.xy);
					    u_xlat4.x = _ZBufferParams.z * u_xlat3.x + _ZBufferParams.w;
					    u_xlat4.x = float(1.0) / u_xlat4.x;
					    u_xlat4.x = u_xlat4.x + (-vs_TEXCOORD3.z);
					    u_xlat4.x = u_xlat4.x * _InvFade;
					    u_xlat4.x = clamp(u_xlat4.x, 0.0, 1.0);
					    u_xlat4.x = (-vs_COLOR0.w) * u_xlat4.x + 1.0;
					    u_xlat4.x = u_xlat4.x + _Cutout;
					    u_xlatb4 = u_xlat1.w>=u_xlat4.x;
					    u_xlat2.w = u_xlatb4 ? 1.0 : float(0.0);
					    u_xlat1 = u_xlat2 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat4.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat4.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec3 u_xlat4;
					bool u_xlatb4;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat4.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat4.xyz = u_xlat4.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat4.xyz * vs_COLOR0.xyz;
					    u_xlat4.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat3 = texture(_CameraDepthTexture, u_xlat4.xy);
					    u_xlat4.x = _ZBufferParams.z * u_xlat3.x + _ZBufferParams.w;
					    u_xlat4.x = float(1.0) / u_xlat4.x;
					    u_xlat4.x = u_xlat4.x + (-vs_TEXCOORD3.z);
					    u_xlat4.x = u_xlat4.x * _InvFade;
					    u_xlat4.x = clamp(u_xlat4.x, 0.0, 1.0);
					    u_xlat4.x = (-vs_COLOR0.w) * u_xlat4.x + 1.0;
					    u_xlat4.x = u_xlat4.x + _Cutout;
					    u_xlatb4 = u_xlat1.w>=u_xlat4.x;
					    u_xlat2.w = u_xlatb4 ? 1.0 : float(0.0);
					    u_xlat1 = u_xlat2 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat4.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat4.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendMul2" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[7];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb0 = u_xlat1.w>=u_xlat0.x;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat1.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat1.w = u_xlatb0 ? 1.0 : float(0.0);
					    u_xlat0 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    SV_Target0 = u_xlat1.wwww * u_xlat0 + vec4(0.5, 0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[6];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb0 = u_xlat1.w>=u_xlat0.x;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat1.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat1.w = u_xlatb0 ? 1.0 : float(0.0);
					    u_xlat0 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    SV_Target0 = u_xlat1.wwww * u_xlat0 + vec4(0.5, 0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendMul2" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[7];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb0 = u_xlat1.w>=u_xlat0.x;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat1.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat1.w = u_xlatb0 ? 1.0 : float(0.0);
					    u_xlat0 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    SV_Target0 = u_xlat1.wwww * u_xlat0 + vec4(0.5, 0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[6];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb0 = u_xlat1.w>=u_xlat0.x;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat1.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat1.w = u_xlatb0 ? 1.0 : float(0.0);
					    u_xlat0 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    SV_Target0 = u_xlat1.wwww * u_xlat0 + vec4(0.5, 0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendMul2" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					float u_xlat9;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlat0.xyz = u_xlat0.xyz + u_xlat0.xyz;
					    u_xlat0.xyz = u_xlat0.xyz * _TintColor.xyz;
					    u_xlat1.xyz = u_xlat0.xyz * vs_COLOR0.xyz;
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat2 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat2.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlatb0 = u_xlat0.w>=u_xlat0.x;
					    u_xlat1.w = u_xlatb0 ? 1.0 : float(0.0);
					    u_xlat0 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat0.xyz = u_xlat0.xyz * u_xlat1.www;
					    SV_Target0.w = u_xlat1.w * u_xlat0.w + 0.5;
					    u_xlat9 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat9 = (-u_xlat9) + 1.0;
					    u_xlat9 = u_xlat9 * _ProjectionParams.z;
					    u_xlat9 = max(u_xlat9, 0.0);
					    u_xlat9 = u_xlat9 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat9 = clamp(u_xlat9, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat9) * u_xlat0.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					float u_xlat9;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlat0.xyz = u_xlat0.xyz + u_xlat0.xyz;
					    u_xlat0.xyz = u_xlat0.xyz * _TintColor.xyz;
					    u_xlat1.xyz = u_xlat0.xyz * vs_COLOR0.xyz;
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat2 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat2.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlatb0 = u_xlat0.w>=u_xlat0.x;
					    u_xlat1.w = u_xlatb0 ? 1.0 : float(0.0);
					    u_xlat0 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat0.xyz = u_xlat0.xyz * u_xlat1.www;
					    SV_Target0.w = u_xlat1.w * u_xlat0.w + 0.5;
					    u_xlat9 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat9 = (-u_xlat9) + 1.0;
					    u_xlat9 = u_xlat9 * _ProjectionParams.z;
					    u_xlat9 = max(u_xlat9, 0.0);
					    u_xlat9 = u_xlat9 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat9 = clamp(u_xlat9, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat9) * u_xlat0.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendMul2" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					float u_xlat9;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlat0.xyz = u_xlat0.xyz + u_xlat0.xyz;
					    u_xlat0.xyz = u_xlat0.xyz * _TintColor.xyz;
					    u_xlat1.xyz = u_xlat0.xyz * vs_COLOR0.xyz;
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat2 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat2.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlatb0 = u_xlat0.w>=u_xlat0.x;
					    u_xlat1.w = u_xlatb0 ? 1.0 : float(0.0);
					    u_xlat0 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat0.xyz = u_xlat0.xyz * u_xlat1.www;
					    SV_Target0.w = u_xlat1.w * u_xlat0.w + 0.5;
					    u_xlat9 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat9 = (-u_xlat9) + 1.0;
					    u_xlat9 = u_xlat9 * _ProjectionParams.z;
					    u_xlat9 = max(u_xlat9, 0.0);
					    u_xlat9 = u_xlat9 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat9 = clamp(u_xlat9, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat9) * u_xlat0.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					float u_xlat9;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlat0.xyz = u_xlat0.xyz + u_xlat0.xyz;
					    u_xlat0.xyz = u_xlat0.xyz * _TintColor.xyz;
					    u_xlat1.xyz = u_xlat0.xyz * vs_COLOR0.xyz;
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat2 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat2.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlatb0 = u_xlat0.w>=u_xlat0.x;
					    u_xlat1.w = u_xlatb0 ? 1.0 : float(0.0);
					    u_xlat0 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat0.xyz = u_xlat0.xyz * u_xlat1.www;
					    SV_Target0.w = u_xlat1.w * u_xlat0.w + 0.5;
					    u_xlat9 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat9 = (-u_xlat9) + 1.0;
					    u_xlat9 = u_xlat9 * _ProjectionParams.z;
					    u_xlat9 = max(u_xlat9, 0.0);
					    u_xlat9 = u_xlat9 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat9 = clamp(u_xlat9, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat9) * u_xlat0.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendMul2" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec3 u_xlat4;
					bool u_xlatb4;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat4.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat4.xyz = u_xlat4.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat4.xyz * vs_COLOR0.xyz;
					    u_xlat4.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat3 = texture(_CameraDepthTexture, u_xlat4.xy);
					    u_xlat4.x = _ZBufferParams.z * u_xlat3.x + _ZBufferParams.w;
					    u_xlat4.x = float(1.0) / u_xlat4.x;
					    u_xlat4.x = u_xlat4.x + (-vs_TEXCOORD3.z);
					    u_xlat4.x = u_xlat4.x * _InvFade;
					    u_xlat4.x = clamp(u_xlat4.x, 0.0, 1.0);
					    u_xlat4.x = (-vs_COLOR0.w) * u_xlat4.x + 1.0;
					    u_xlat4.x = u_xlat4.x + _Cutout;
					    u_xlatb4 = u_xlat1.w>=u_xlat4.x;
					    u_xlat2.w = u_xlatb4 ? 1.0 : float(0.0);
					    u_xlat1 = u_xlat2 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat4.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat4.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec3 u_xlat4;
					bool u_xlatb4;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat4.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat4.xyz = u_xlat4.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat4.xyz * vs_COLOR0.xyz;
					    u_xlat4.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat3 = texture(_CameraDepthTexture, u_xlat4.xy);
					    u_xlat4.x = _ZBufferParams.z * u_xlat3.x + _ZBufferParams.w;
					    u_xlat4.x = float(1.0) / u_xlat4.x;
					    u_xlat4.x = u_xlat4.x + (-vs_TEXCOORD3.z);
					    u_xlat4.x = u_xlat4.x * _InvFade;
					    u_xlat4.x = clamp(u_xlat4.x, 0.0, 1.0);
					    u_xlat4.x = (-vs_COLOR0.w) * u_xlat4.x + 1.0;
					    u_xlat4.x = u_xlat4.x + _Cutout;
					    u_xlatb4 = u_xlat1.w>=u_xlat4.x;
					    u_xlat2.w = u_xlatb4 ? 1.0 : float(0.0);
					    u_xlat1 = u_xlat2 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat4.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat4.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendMul2" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec3 u_xlat4;
					bool u_xlatb4;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat4.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat4.xyz = u_xlat4.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat4.xyz * vs_COLOR0.xyz;
					    u_xlat4.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat3 = texture(_CameraDepthTexture, u_xlat4.xy);
					    u_xlat4.x = _ZBufferParams.z * u_xlat3.x + _ZBufferParams.w;
					    u_xlat4.x = float(1.0) / u_xlat4.x;
					    u_xlat4.x = u_xlat4.x + (-vs_TEXCOORD3.z);
					    u_xlat4.x = u_xlat4.x * _InvFade;
					    u_xlat4.x = clamp(u_xlat4.x, 0.0, 1.0);
					    u_xlat4.x = (-vs_COLOR0.w) * u_xlat4.x + 1.0;
					    u_xlat4.x = u_xlat4.x + _Cutout;
					    u_xlatb4 = u_xlat1.w>=u_xlat4.x;
					    u_xlat2.w = u_xlatb4 ? 1.0 : float(0.0);
					    u_xlat1 = u_xlat2 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat4.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat4.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec3 u_xlat4;
					bool u_xlatb4;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat4.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat4.xyz = u_xlat4.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat4.xyz * vs_COLOR0.xyz;
					    u_xlat4.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat3 = texture(_CameraDepthTexture, u_xlat4.xy);
					    u_xlat4.x = _ZBufferParams.z * u_xlat3.x + _ZBufferParams.w;
					    u_xlat4.x = float(1.0) / u_xlat4.x;
					    u_xlat4.x = u_xlat4.x + (-vs_TEXCOORD3.z);
					    u_xlat4.x = u_xlat4.x * _InvFade;
					    u_xlat4.x = clamp(u_xlat4.x, 0.0, 1.0);
					    u_xlat4.x = (-vs_COLOR0.w) * u_xlat4.x + 1.0;
					    u_xlat4.x = u_xlat4.x + _Cutout;
					    u_xlatb4 = u_xlat1.w>=u_xlat4.x;
					    u_xlat2.w = u_xlatb4 ? 1.0 : float(0.0);
					    u_xlat1 = u_xlat2 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat4.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat4.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendMul2" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec3 u_xlat4;
					bool u_xlatb4;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat4.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat4.xyz = u_xlat4.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat4.xyz * vs_COLOR0.xyz;
					    u_xlat4.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat3 = texture(_CameraDepthTexture, u_xlat4.xy);
					    u_xlat4.x = _ZBufferParams.z * u_xlat3.x + _ZBufferParams.w;
					    u_xlat4.x = float(1.0) / u_xlat4.x;
					    u_xlat4.x = u_xlat4.x + (-vs_TEXCOORD3.z);
					    u_xlat4.x = u_xlat4.x * _InvFade;
					    u_xlat4.x = clamp(u_xlat4.x, 0.0, 1.0);
					    u_xlat4.x = (-vs_COLOR0.w) * u_xlat4.x + 1.0;
					    u_xlat4.x = u_xlat4.x + _Cutout;
					    u_xlatb4 = u_xlat1.w>=u_xlat4.x;
					    u_xlat2.w = u_xlatb4 ? 1.0 : float(0.0);
					    u_xlat1 = u_xlat2 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat4.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat4.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec3 u_xlat4;
					bool u_xlatb4;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat4.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat4.xyz = u_xlat4.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat4.xyz * vs_COLOR0.xyz;
					    u_xlat4.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat3 = texture(_CameraDepthTexture, u_xlat4.xy);
					    u_xlat4.x = _ZBufferParams.z * u_xlat3.x + _ZBufferParams.w;
					    u_xlat4.x = float(1.0) / u_xlat4.x;
					    u_xlat4.x = u_xlat4.x + (-vs_TEXCOORD3.z);
					    u_xlat4.x = u_xlat4.x * _InvFade;
					    u_xlat4.x = clamp(u_xlat4.x, 0.0, 1.0);
					    u_xlat4.x = (-vs_COLOR0.w) * u_xlat4.x + 1.0;
					    u_xlat4.x = u_xlat4.x + _Cutout;
					    u_xlatb4 = u_xlat1.w>=u_xlat4.x;
					    u_xlat2.w = u_xlatb4 ? 1.0 : float(0.0);
					    u_xlat1 = u_xlat2 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat4.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat4.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendMul2" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec3 u_xlat4;
					bool u_xlatb4;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat4.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat4.xyz = u_xlat4.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat4.xyz * vs_COLOR0.xyz;
					    u_xlat4.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat3 = texture(_CameraDepthTexture, u_xlat4.xy);
					    u_xlat4.x = _ZBufferParams.z * u_xlat3.x + _ZBufferParams.w;
					    u_xlat4.x = float(1.0) / u_xlat4.x;
					    u_xlat4.x = u_xlat4.x + (-vs_TEXCOORD3.z);
					    u_xlat4.x = u_xlat4.x * _InvFade;
					    u_xlat4.x = clamp(u_xlat4.x, 0.0, 1.0);
					    u_xlat4.x = (-vs_COLOR0.w) * u_xlat4.x + 1.0;
					    u_xlat4.x = u_xlat4.x + _Cutout;
					    u_xlatb4 = u_xlat1.w>=u_xlat4.x;
					    u_xlat2.w = u_xlatb4 ? 1.0 : float(0.0);
					    u_xlat1 = u_xlat2 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat4.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat4.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec3 u_xlat4;
					bool u_xlatb4;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat4.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat4.xyz = u_xlat4.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat4.xyz * vs_COLOR0.xyz;
					    u_xlat4.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat3 = texture(_CameraDepthTexture, u_xlat4.xy);
					    u_xlat4.x = _ZBufferParams.z * u_xlat3.x + _ZBufferParams.w;
					    u_xlat4.x = float(1.0) / u_xlat4.x;
					    u_xlat4.x = u_xlat4.x + (-vs_TEXCOORD3.z);
					    u_xlat4.x = u_xlat4.x * _InvFade;
					    u_xlat4.x = clamp(u_xlat4.x, 0.0, 1.0);
					    u_xlat4.x = (-vs_COLOR0.w) * u_xlat4.x + 1.0;
					    u_xlat4.x = u_xlat4.x + _Cutout;
					    u_xlatb4 = u_xlat1.w>=u_xlat4.x;
					    u_xlat2.w = u_xlatb4 ? 1.0 : float(0.0);
					    u_xlat1 = u_xlat2 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat4.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat4.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendMul2" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlat0.xyz = u_xlat0.xyz + u_xlat0.xyz;
					    u_xlat0.xyz = u_xlat0.xyz * _TintColor.xyz;
					    u_xlat1.xyz = u_xlat0.xyz * vs_COLOR0.xyz;
					    u_xlat0.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlatb0 = u_xlat0.w>=u_xlat0.x;
					    u_xlat0.x = u_xlatb0 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat0.x * vs_TEXCOORD4;
					    u_xlat0 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    SV_Target0 = u_xlat1.wwww * u_xlat0 + vec4(0.5, 0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlat0.xyz = u_xlat0.xyz + u_xlat0.xyz;
					    u_xlat0.xyz = u_xlat0.xyz * _TintColor.xyz;
					    u_xlat1.xyz = u_xlat0.xyz * vs_COLOR0.xyz;
					    u_xlat0.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlatb0 = u_xlat0.w>=u_xlat0.x;
					    u_xlat0.x = u_xlatb0 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat0.x * vs_TEXCOORD4;
					    u_xlat0 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    SV_Target0 = u_xlat1.wwww * u_xlat0 + vec4(0.5, 0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendMul2" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[7];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb0 = u_xlat1.w>=u_xlat0.x;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat1.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat0.x = u_xlatb0 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat0.x * vs_TEXCOORD4;
					    u_xlat0 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    SV_Target0 = u_xlat1.wwww * u_xlat0 + vec4(0.5, 0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[6];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb0 = u_xlat1.w>=u_xlat0.x;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat1.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat0.x = u_xlatb0 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat0.x * vs_TEXCOORD4;
					    u_xlat0 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    SV_Target0 = u_xlat1.wwww * u_xlat0 + vec4(0.5, 0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendMul2" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat2.w = u_xlat3.x * vs_TEXCOORD4;
					    u_xlat1 = u_xlat2 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat2.w = u_xlat3.x * vs_TEXCOORD4;
					    u_xlat1 = u_xlat2 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendMul2" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					float u_xlat9;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlat0.xyz = u_xlat0.xyz + u_xlat0.xyz;
					    u_xlat0.xyz = u_xlat0.xyz * _TintColor.xyz;
					    u_xlat1.xyz = u_xlat0.xyz * vs_COLOR0.xyz;
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat2 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat2.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlatb0 = u_xlat0.w>=u_xlat0.x;
					    u_xlat0.x = u_xlatb0 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat0.x * vs_TEXCOORD4;
					    u_xlat0 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat0.xyz = u_xlat0.xyz * u_xlat1.www;
					    SV_Target0.w = u_xlat1.w * u_xlat0.w + 0.5;
					    u_xlat9 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat9 = (-u_xlat9) + 1.0;
					    u_xlat9 = u_xlat9 * _ProjectionParams.z;
					    u_xlat9 = max(u_xlat9, 0.0);
					    u_xlat9 = u_xlat9 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat9 = clamp(u_xlat9, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat9) * u_xlat0.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					float u_xlat9;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlat0.xyz = u_xlat0.xyz + u_xlat0.xyz;
					    u_xlat0.xyz = u_xlat0.xyz * _TintColor.xyz;
					    u_xlat1.xyz = u_xlat0.xyz * vs_COLOR0.xyz;
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat2 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat2.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlatb0 = u_xlat0.w>=u_xlat0.x;
					    u_xlat0.x = u_xlatb0 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat0.x * vs_TEXCOORD4;
					    u_xlat0 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat0.xyz = u_xlat0.xyz * u_xlat1.www;
					    SV_Target0.w = u_xlat1.w * u_xlat0.w + 0.5;
					    u_xlat9 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat9 = (-u_xlat9) + 1.0;
					    u_xlat9 = u_xlat9 * _ProjectionParams.z;
					    u_xlat9 = max(u_xlat9, 0.0);
					    u_xlat9 = u_xlat9 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat9 = clamp(u_xlat9, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat9) * u_xlat0.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendMul2" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat2.w = u_xlat3.x * vs_TEXCOORD4;
					    u_xlat1 = u_xlat2 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat2.w = u_xlat3.x * vs_TEXCOORD4;
					    u_xlat1 = u_xlat2 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendMul2" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec3 u_xlat4;
					bool u_xlatb4;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat4.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat4.xyz = u_xlat4.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat4.xyz * vs_COLOR0.xyz;
					    u_xlat4.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat3 = texture(_CameraDepthTexture, u_xlat4.xy);
					    u_xlat4.x = _ZBufferParams.z * u_xlat3.x + _ZBufferParams.w;
					    u_xlat4.x = float(1.0) / u_xlat4.x;
					    u_xlat4.x = u_xlat4.x + (-vs_TEXCOORD3.z);
					    u_xlat4.x = u_xlat4.x * _InvFade;
					    u_xlat4.x = clamp(u_xlat4.x, 0.0, 1.0);
					    u_xlat4.x = (-vs_COLOR0.w) * u_xlat4.x + 1.0;
					    u_xlat4.x = u_xlat4.x + _Cutout;
					    u_xlatb4 = u_xlat1.w>=u_xlat4.x;
					    u_xlat4.x = u_xlatb4 ? 1.0 : float(0.0);
					    u_xlat2.w = u_xlat4.x * vs_TEXCOORD4;
					    u_xlat1 = u_xlat2 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat4.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat4.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec3 u_xlat4;
					bool u_xlatb4;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat4.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat4.xyz = u_xlat4.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat4.xyz * vs_COLOR0.xyz;
					    u_xlat4.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat3 = texture(_CameraDepthTexture, u_xlat4.xy);
					    u_xlat4.x = _ZBufferParams.z * u_xlat3.x + _ZBufferParams.w;
					    u_xlat4.x = float(1.0) / u_xlat4.x;
					    u_xlat4.x = u_xlat4.x + (-vs_TEXCOORD3.z);
					    u_xlat4.x = u_xlat4.x * _InvFade;
					    u_xlat4.x = clamp(u_xlat4.x, 0.0, 1.0);
					    u_xlat4.x = (-vs_COLOR0.w) * u_xlat4.x + 1.0;
					    u_xlat4.x = u_xlat4.x + _Cutout;
					    u_xlatb4 = u_xlat1.w>=u_xlat4.x;
					    u_xlat4.x = u_xlatb4 ? 1.0 : float(0.0);
					    u_xlat2.w = u_xlat4.x * vs_TEXCOORD4;
					    u_xlat1 = u_xlat2 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat4.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat4.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendMul2" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat2.w = u_xlat3.x * vs_TEXCOORD4;
					    u_xlat1 = u_xlat2 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat2.w = u_xlat3.x * vs_TEXCOORD4;
					    u_xlat1 = u_xlat2 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendMul2" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec3 u_xlat4;
					bool u_xlatb4;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat4.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat4.xyz = u_xlat4.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat4.xyz * vs_COLOR0.xyz;
					    u_xlat4.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat3 = texture(_CameraDepthTexture, u_xlat4.xy);
					    u_xlat4.x = _ZBufferParams.z * u_xlat3.x + _ZBufferParams.w;
					    u_xlat4.x = float(1.0) / u_xlat4.x;
					    u_xlat4.x = u_xlat4.x + (-vs_TEXCOORD3.z);
					    u_xlat4.x = u_xlat4.x * _InvFade;
					    u_xlat4.x = clamp(u_xlat4.x, 0.0, 1.0);
					    u_xlat4.x = (-vs_COLOR0.w) * u_xlat4.x + 1.0;
					    u_xlat4.x = u_xlat4.x + _Cutout;
					    u_xlatb4 = u_xlat1.w>=u_xlat4.x;
					    u_xlat4.x = u_xlatb4 ? 1.0 : float(0.0);
					    u_xlat2.w = u_xlat4.x * vs_TEXCOORD4;
					    u_xlat1 = u_xlat2 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat4.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat4.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec3 u_xlat4;
					bool u_xlatb4;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat4.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat4.xyz = u_xlat4.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat4.xyz * vs_COLOR0.xyz;
					    u_xlat4.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat3 = texture(_CameraDepthTexture, u_xlat4.xy);
					    u_xlat4.x = _ZBufferParams.z * u_xlat3.x + _ZBufferParams.w;
					    u_xlat4.x = float(1.0) / u_xlat4.x;
					    u_xlat4.x = u_xlat4.x + (-vs_TEXCOORD3.z);
					    u_xlat4.x = u_xlat4.x * _InvFade;
					    u_xlat4.x = clamp(u_xlat4.x, 0.0, 1.0);
					    u_xlat4.x = (-vs_COLOR0.w) * u_xlat4.x + 1.0;
					    u_xlat4.x = u_xlat4.x + _Cutout;
					    u_xlatb4 = u_xlat1.w>=u_xlat4.x;
					    u_xlat4.x = u_xlatb4 ? 1.0 : float(0.0);
					    u_xlat2.w = u_xlat4.x * vs_TEXCOORD4;
					    u_xlat1 = u_xlat2 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat4.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat4.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendMul2" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[7];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb0 = u_xlat1.w>=u_xlat0.x;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat1.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat0.x = u_xlatb0 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat0.x * vs_TEXCOORD4;
					    u_xlat0 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    SV_Target0 = u_xlat1.wwww * u_xlat0 + vec4(0.5, 0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[6];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb0 = u_xlat1.w>=u_xlat0.x;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat1.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat0.x = u_xlatb0 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat0.x * vs_TEXCOORD4;
					    u_xlat0 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    SV_Target0 = u_xlat1.wwww * u_xlat0 + vec4(0.5, 0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendMul2" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[7];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb0 = u_xlat1.w>=u_xlat0.x;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat1.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat0.x = u_xlatb0 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat0.x * vs_TEXCOORD4;
					    u_xlat0 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    SV_Target0 = u_xlat1.wwww * u_xlat0 + vec4(0.5, 0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[6];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb0 = u_xlat1.w>=u_xlat0.x;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat1.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat0.x = u_xlatb0 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat0.x * vs_TEXCOORD4;
					    u_xlat0 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    SV_Target0 = u_xlat1.wwww * u_xlat0 + vec4(0.5, 0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendMul2" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					float u_xlat9;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlat0.xyz = u_xlat0.xyz + u_xlat0.xyz;
					    u_xlat0.xyz = u_xlat0.xyz * _TintColor.xyz;
					    u_xlat1.xyz = u_xlat0.xyz * vs_COLOR0.xyz;
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat2 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat2.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlatb0 = u_xlat0.w>=u_xlat0.x;
					    u_xlat0.x = u_xlatb0 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat0.x * vs_TEXCOORD4;
					    u_xlat0 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat0.xyz = u_xlat0.xyz * u_xlat1.www;
					    SV_Target0.w = u_xlat1.w * u_xlat0.w + 0.5;
					    u_xlat9 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat9 = (-u_xlat9) + 1.0;
					    u_xlat9 = u_xlat9 * _ProjectionParams.z;
					    u_xlat9 = max(u_xlat9, 0.0);
					    u_xlat9 = u_xlat9 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat9 = clamp(u_xlat9, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat9) * u_xlat0.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					float u_xlat9;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlat0.xyz = u_xlat0.xyz + u_xlat0.xyz;
					    u_xlat0.xyz = u_xlat0.xyz * _TintColor.xyz;
					    u_xlat1.xyz = u_xlat0.xyz * vs_COLOR0.xyz;
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat2 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat2.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlatb0 = u_xlat0.w>=u_xlat0.x;
					    u_xlat0.x = u_xlatb0 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat0.x * vs_TEXCOORD4;
					    u_xlat0 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat0.xyz = u_xlat0.xyz * u_xlat1.www;
					    SV_Target0.w = u_xlat1.w * u_xlat0.w + 0.5;
					    u_xlat9 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat9 = (-u_xlat9) + 1.0;
					    u_xlat9 = u_xlat9 * _ProjectionParams.z;
					    u_xlat9 = max(u_xlat9, 0.0);
					    u_xlat9 = u_xlat9 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat9 = clamp(u_xlat9, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat9) * u_xlat0.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendMul2" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					float u_xlat9;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlat0.xyz = u_xlat0.xyz + u_xlat0.xyz;
					    u_xlat0.xyz = u_xlat0.xyz * _TintColor.xyz;
					    u_xlat1.xyz = u_xlat0.xyz * vs_COLOR0.xyz;
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat2 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat2.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlatb0 = u_xlat0.w>=u_xlat0.x;
					    u_xlat0.x = u_xlatb0 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat0.x * vs_TEXCOORD4;
					    u_xlat0 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat0.xyz = u_xlat0.xyz * u_xlat1.www;
					    SV_Target0.w = u_xlat1.w * u_xlat0.w + 0.5;
					    u_xlat9 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat9 = (-u_xlat9) + 1.0;
					    u_xlat9 = u_xlat9 * _ProjectionParams.z;
					    u_xlat9 = max(u_xlat9, 0.0);
					    u_xlat9 = u_xlat9 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat9 = clamp(u_xlat9, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat9) * u_xlat0.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					float u_xlat9;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlat0.xyz = u_xlat0.xyz + u_xlat0.xyz;
					    u_xlat0.xyz = u_xlat0.xyz * _TintColor.xyz;
					    u_xlat1.xyz = u_xlat0.xyz * vs_COLOR0.xyz;
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat2 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat2.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlatb0 = u_xlat0.w>=u_xlat0.x;
					    u_xlat0.x = u_xlatb0 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat0.x * vs_TEXCOORD4;
					    u_xlat0 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat0.xyz = u_xlat0.xyz * u_xlat1.www;
					    SV_Target0.w = u_xlat1.w * u_xlat0.w + 0.5;
					    u_xlat9 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat9 = (-u_xlat9) + 1.0;
					    u_xlat9 = u_xlat9 * _ProjectionParams.z;
					    u_xlat9 = max(u_xlat9, 0.0);
					    u_xlat9 = u_xlat9 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat9 = clamp(u_xlat9, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat9) * u_xlat0.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendMul2" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec3 u_xlat4;
					bool u_xlatb4;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat4.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat4.xyz = u_xlat4.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat4.xyz * vs_COLOR0.xyz;
					    u_xlat4.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat3 = texture(_CameraDepthTexture, u_xlat4.xy);
					    u_xlat4.x = _ZBufferParams.z * u_xlat3.x + _ZBufferParams.w;
					    u_xlat4.x = float(1.0) / u_xlat4.x;
					    u_xlat4.x = u_xlat4.x + (-vs_TEXCOORD3.z);
					    u_xlat4.x = u_xlat4.x * _InvFade;
					    u_xlat4.x = clamp(u_xlat4.x, 0.0, 1.0);
					    u_xlat4.x = (-vs_COLOR0.w) * u_xlat4.x + 1.0;
					    u_xlat4.x = u_xlat4.x + _Cutout;
					    u_xlatb4 = u_xlat1.w>=u_xlat4.x;
					    u_xlat4.x = u_xlatb4 ? 1.0 : float(0.0);
					    u_xlat2.w = u_xlat4.x * vs_TEXCOORD4;
					    u_xlat1 = u_xlat2 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat4.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat4.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec3 u_xlat4;
					bool u_xlatb4;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat4.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat4.xyz = u_xlat4.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat4.xyz * vs_COLOR0.xyz;
					    u_xlat4.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat3 = texture(_CameraDepthTexture, u_xlat4.xy);
					    u_xlat4.x = _ZBufferParams.z * u_xlat3.x + _ZBufferParams.w;
					    u_xlat4.x = float(1.0) / u_xlat4.x;
					    u_xlat4.x = u_xlat4.x + (-vs_TEXCOORD3.z);
					    u_xlat4.x = u_xlat4.x * _InvFade;
					    u_xlat4.x = clamp(u_xlat4.x, 0.0, 1.0);
					    u_xlat4.x = (-vs_COLOR0.w) * u_xlat4.x + 1.0;
					    u_xlat4.x = u_xlat4.x + _Cutout;
					    u_xlatb4 = u_xlat1.w>=u_xlat4.x;
					    u_xlat4.x = u_xlatb4 ? 1.0 : float(0.0);
					    u_xlat2.w = u_xlat4.x * vs_TEXCOORD4;
					    u_xlat1 = u_xlat2 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat4.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat4.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendMul2" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec3 u_xlat4;
					bool u_xlatb4;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat4.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat4.xyz = u_xlat4.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat4.xyz * vs_COLOR0.xyz;
					    u_xlat4.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat3 = texture(_CameraDepthTexture, u_xlat4.xy);
					    u_xlat4.x = _ZBufferParams.z * u_xlat3.x + _ZBufferParams.w;
					    u_xlat4.x = float(1.0) / u_xlat4.x;
					    u_xlat4.x = u_xlat4.x + (-vs_TEXCOORD3.z);
					    u_xlat4.x = u_xlat4.x * _InvFade;
					    u_xlat4.x = clamp(u_xlat4.x, 0.0, 1.0);
					    u_xlat4.x = (-vs_COLOR0.w) * u_xlat4.x + 1.0;
					    u_xlat4.x = u_xlat4.x + _Cutout;
					    u_xlatb4 = u_xlat1.w>=u_xlat4.x;
					    u_xlat4.x = u_xlatb4 ? 1.0 : float(0.0);
					    u_xlat2.w = u_xlat4.x * vs_TEXCOORD4;
					    u_xlat1 = u_xlat2 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat4.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat4.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec3 u_xlat4;
					bool u_xlatb4;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat4.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat4.xyz = u_xlat4.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat4.xyz * vs_COLOR0.xyz;
					    u_xlat4.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat3 = texture(_CameraDepthTexture, u_xlat4.xy);
					    u_xlat4.x = _ZBufferParams.z * u_xlat3.x + _ZBufferParams.w;
					    u_xlat4.x = float(1.0) / u_xlat4.x;
					    u_xlat4.x = u_xlat4.x + (-vs_TEXCOORD3.z);
					    u_xlat4.x = u_xlat4.x * _InvFade;
					    u_xlat4.x = clamp(u_xlat4.x, 0.0, 1.0);
					    u_xlat4.x = (-vs_COLOR0.w) * u_xlat4.x + 1.0;
					    u_xlat4.x = u_xlat4.x + _Cutout;
					    u_xlatb4 = u_xlat1.w>=u_xlat4.x;
					    u_xlat4.x = u_xlatb4 ? 1.0 : float(0.0);
					    u_xlat2.w = u_xlat4.x * vs_TEXCOORD4;
					    u_xlat1 = u_xlat2 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat4.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat4.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendMul2" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec3 u_xlat4;
					bool u_xlatb4;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat4.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat4.xyz = u_xlat4.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat4.xyz * vs_COLOR0.xyz;
					    u_xlat4.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat3 = texture(_CameraDepthTexture, u_xlat4.xy);
					    u_xlat4.x = _ZBufferParams.z * u_xlat3.x + _ZBufferParams.w;
					    u_xlat4.x = float(1.0) / u_xlat4.x;
					    u_xlat4.x = u_xlat4.x + (-vs_TEXCOORD3.z);
					    u_xlat4.x = u_xlat4.x * _InvFade;
					    u_xlat4.x = clamp(u_xlat4.x, 0.0, 1.0);
					    u_xlat4.x = (-vs_COLOR0.w) * u_xlat4.x + 1.0;
					    u_xlat4.x = u_xlat4.x + _Cutout;
					    u_xlatb4 = u_xlat1.w>=u_xlat4.x;
					    u_xlat4.x = u_xlatb4 ? 1.0 : float(0.0);
					    u_xlat2.w = u_xlat4.x * vs_TEXCOORD4;
					    u_xlat1 = u_xlat2 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat4.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat4.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec3 u_xlat4;
					bool u_xlatb4;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat4.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat4.xyz = u_xlat4.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat4.xyz * vs_COLOR0.xyz;
					    u_xlat4.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat3 = texture(_CameraDepthTexture, u_xlat4.xy);
					    u_xlat4.x = _ZBufferParams.z * u_xlat3.x + _ZBufferParams.w;
					    u_xlat4.x = float(1.0) / u_xlat4.x;
					    u_xlat4.x = u_xlat4.x + (-vs_TEXCOORD3.z);
					    u_xlat4.x = u_xlat4.x * _InvFade;
					    u_xlat4.x = clamp(u_xlat4.x, 0.0, 1.0);
					    u_xlat4.x = (-vs_COLOR0.w) * u_xlat4.x + 1.0;
					    u_xlat4.x = u_xlat4.x + _Cutout;
					    u_xlatb4 = u_xlat1.w>=u_xlat4.x;
					    u_xlat4.x = u_xlatb4 ? 1.0 : float(0.0);
					    u_xlat2.w = u_xlat4.x * vs_TEXCOORD4;
					    u_xlat1 = u_xlat2 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat4.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat4.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendMul2" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec3 u_xlat4;
					bool u_xlatb4;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat4.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat4.xyz = u_xlat4.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat4.xyz * vs_COLOR0.xyz;
					    u_xlat4.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat3 = texture(_CameraDepthTexture, u_xlat4.xy);
					    u_xlat4.x = _ZBufferParams.z * u_xlat3.x + _ZBufferParams.w;
					    u_xlat4.x = float(1.0) / u_xlat4.x;
					    u_xlat4.x = u_xlat4.x + (-vs_TEXCOORD3.z);
					    u_xlat4.x = u_xlat4.x * _InvFade;
					    u_xlat4.x = clamp(u_xlat4.x, 0.0, 1.0);
					    u_xlat4.x = (-vs_COLOR0.w) * u_xlat4.x + 1.0;
					    u_xlat4.x = u_xlat4.x + _Cutout;
					    u_xlatb4 = u_xlat1.w>=u_xlat4.x;
					    u_xlat4.x = u_xlatb4 ? 1.0 : float(0.0);
					    u_xlat2.w = u_xlat4.x * vs_TEXCOORD4;
					    u_xlat1 = u_xlat2 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat4.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat4.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight_OFF" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec3 u_xlat4;
					bool u_xlatb4;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat4.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat4.xyz = u_xlat4.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat4.xyz * vs_COLOR0.xyz;
					    u_xlat4.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat3 = texture(_CameraDepthTexture, u_xlat4.xy);
					    u_xlat4.x = _ZBufferParams.z * u_xlat3.x + _ZBufferParams.w;
					    u_xlat4.x = float(1.0) / u_xlat4.x;
					    u_xlat4.x = u_xlat4.x + (-vs_TEXCOORD3.z);
					    u_xlat4.x = u_xlat4.x * _InvFade;
					    u_xlat4.x = clamp(u_xlat4.x, 0.0, 1.0);
					    u_xlat4.x = (-vs_COLOR0.w) * u_xlat4.x + 1.0;
					    u_xlat4.x = u_xlat4.x + _Cutout;
					    u_xlatb4 = u_xlat1.w>=u_xlat4.x;
					    u_xlat4.x = u_xlatb4 ? 1.0 : float(0.0);
					    u_xlat2.w = u_xlat4.x * vs_TEXCOORD4;
					    u_xlat1 = u_xlat2 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat4.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat4.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendMul2" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat0 = u_xlat0 * vs_COLOR0;
					    u_xlat0.w = u_xlat0.w;
					    u_xlat0.w = clamp(u_xlat0.w, 0.0, 1.0);
					    u_xlat1 = u_xlat0 + vec4(-0.5, -0.5, -0.5, -0.5);
					    SV_Target0 = u_xlat0.wwww * u_xlat1 + vec4(0.5, 0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat0 = u_xlat0 * vs_COLOR0;
					    u_xlat0.w = u_xlat0.w;
					    u_xlat0.w = clamp(u_xlat0.w, 0.0, 1.0);
					    u_xlat1 = u_xlat0 + vec4(-0.5, -0.5, -0.5, -0.5);
					    SV_Target0 = u_xlat0.wwww * u_xlat1 + vec4(0.5, 0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendMul2" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat0 = u_xlat0 * vs_COLOR0;
					    u_xlat0.w = u_xlat0.w;
					    u_xlat0.w = clamp(u_xlat0.w, 0.0, 1.0);
					    u_xlat1 = u_xlat0 + vec4(-0.5, -0.5, -0.5, -0.5);
					    SV_Target0 = u_xlat0.wwww * u_xlat1 + vec4(0.5, 0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat0 = u_xlat0 * vs_COLOR0;
					    u_xlat0.w = u_xlat0.w;
					    u_xlat0.w = clamp(u_xlat0.w, 0.0, 1.0);
					    u_xlat1 = u_xlat0 + vec4(-0.5, -0.5, -0.5, -0.5);
					    SV_Target0 = u_xlat0.wwww * u_xlat1 + vec4(0.5, 0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendMul2" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendMul2" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendMul2" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendMul2" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendMul2" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendMul2" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendMul2" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat0 = u_xlat0 * vs_COLOR0;
					    u_xlat0.w = u_xlat0.w;
					    u_xlat0.w = clamp(u_xlat0.w, 0.0, 1.0);
					    u_xlat1 = u_xlat0 + vec4(-0.5, -0.5, -0.5, -0.5);
					    SV_Target0 = u_xlat0.wwww * u_xlat1 + vec4(0.5, 0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat0 = u_xlat0 * vs_COLOR0;
					    u_xlat0.w = u_xlat0.w;
					    u_xlat0.w = clamp(u_xlat0.w, 0.0, 1.0);
					    u_xlat1 = u_xlat0 + vec4(-0.5, -0.5, -0.5, -0.5);
					    SV_Target0 = u_xlat0.wwww * u_xlat1 + vec4(0.5, 0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendMul2" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat0 = u_xlat0 * vs_COLOR0;
					    u_xlat0.w = u_xlat0.w;
					    u_xlat0.w = clamp(u_xlat0.w, 0.0, 1.0);
					    u_xlat1 = u_xlat0 + vec4(-0.5, -0.5, -0.5, -0.5);
					    SV_Target0 = u_xlat0.wwww * u_xlat1 + vec4(0.5, 0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat0 = u_xlat0 * vs_COLOR0;
					    u_xlat0.w = u_xlat0.w;
					    u_xlat0.w = clamp(u_xlat0.w, 0.0, 1.0);
					    u_xlat1 = u_xlat0 + vec4(-0.5, -0.5, -0.5, -0.5);
					    SV_Target0 = u_xlat0.wwww * u_xlat1 + vec4(0.5, 0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendMul2" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendMul2" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendMul2" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendMul2" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendMul2" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendMul2" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendMul2" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat6;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat0 = u_xlat0 * vs_COLOR0;
					    u_xlat6 = u_xlat0.w;
					    u_xlat6 = clamp(u_xlat6, 0.0, 1.0);
					    u_xlat0.w = u_xlat6 * vs_TEXCOORD4;
					    u_xlat1 = u_xlat0 + vec4(-0.5, -0.5, -0.5, -0.5);
					    SV_Target0 = u_xlat0.wwww * u_xlat1 + vec4(0.5, 0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat6;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat0 = u_xlat0 * vs_COLOR0;
					    u_xlat6 = u_xlat0.w;
					    u_xlat6 = clamp(u_xlat6, 0.0, 1.0);
					    u_xlat0.w = u_xlat6 * vs_TEXCOORD4;
					    u_xlat1 = u_xlat0 + vec4(-0.5, -0.5, -0.5, -0.5);
					    SV_Target0 = u_xlat0.wwww * u_xlat1 + vec4(0.5, 0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendMul2" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat6;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat0 = u_xlat0 * vs_COLOR0;
					    u_xlat6 = u_xlat0.w;
					    u_xlat6 = clamp(u_xlat6, 0.0, 1.0);
					    u_xlat0.w = u_xlat6 * vs_TEXCOORD4;
					    u_xlat1 = u_xlat0 + vec4(-0.5, -0.5, -0.5, -0.5);
					    SV_Target0 = u_xlat0.wwww * u_xlat1 + vec4(0.5, 0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat6;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat0 = u_xlat0 * vs_COLOR0;
					    u_xlat6 = u_xlat0.w;
					    u_xlat6 = clamp(u_xlat6, 0.0, 1.0);
					    u_xlat0.w = u_xlat6 * vs_TEXCOORD4;
					    u_xlat1 = u_xlat0 + vec4(-0.5, -0.5, -0.5, -0.5);
					    SV_Target0 = u_xlat0.wwww * u_xlat1 + vec4(0.5, 0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendMul2" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendMul2" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendMul2" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendMul2" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendMul2" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendMul2" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendMul2" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat6;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat0 = u_xlat0 * vs_COLOR0;
					    u_xlat6 = u_xlat0.w;
					    u_xlat6 = clamp(u_xlat6, 0.0, 1.0);
					    u_xlat0.w = u_xlat6 * vs_TEXCOORD4;
					    u_xlat1 = u_xlat0 + vec4(-0.5, -0.5, -0.5, -0.5);
					    SV_Target0 = u_xlat0.wwww * u_xlat1 + vec4(0.5, 0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat6;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat0 = u_xlat0 * vs_COLOR0;
					    u_xlat6 = u_xlat0.w;
					    u_xlat6 = clamp(u_xlat6, 0.0, 1.0);
					    u_xlat0.w = u_xlat6 * vs_TEXCOORD4;
					    u_xlat1 = u_xlat0 + vec4(-0.5, -0.5, -0.5, -0.5);
					    SV_Target0 = u_xlat0.wwww * u_xlat1 + vec4(0.5, 0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendMul2" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat6;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat0 = u_xlat0 * vs_COLOR0;
					    u_xlat6 = u_xlat0.w;
					    u_xlat6 = clamp(u_xlat6, 0.0, 1.0);
					    u_xlat0.w = u_xlat6 * vs_TEXCOORD4;
					    u_xlat1 = u_xlat0 + vec4(-0.5, -0.5, -0.5, -0.5);
					    SV_Target0 = u_xlat0.wwww * u_xlat1 + vec4(0.5, 0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat6;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat0 = u_xlat0 * vs_COLOR0;
					    u_xlat6 = u_xlat0.w;
					    u_xlat6 = clamp(u_xlat6, 0.0, 1.0);
					    u_xlat0.w = u_xlat6 * vs_TEXCOORD4;
					    u_xlat1 = u_xlat0 + vec4(-0.5, -0.5, -0.5, -0.5);
					    SV_Target0 = u_xlat0.wwww * u_xlat1 + vec4(0.5, 0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendMul2" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendMul2" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendMul2" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendMul2" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendMul2" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendMul2" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendMul2" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					bool u_xlatb1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1.x = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat0.w = u_xlat0.w * u_xlat1.x;
					    u_xlat0 = u_xlat0 * vs_COLOR0;
					    u_xlat0.w = u_xlat0.w;
					    u_xlat0.w = clamp(u_xlat0.w, 0.0, 1.0);
					    u_xlat1 = u_xlat0 + vec4(-0.5, -0.5, -0.5, -0.5);
					    SV_Target0 = u_xlat0.wwww * u_xlat1 + vec4(0.5, 0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					bool u_xlatb1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1.x = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat0.w = u_xlat0.w * u_xlat1.x;
					    u_xlat0 = u_xlat0 * vs_COLOR0;
					    u_xlat0.w = u_xlat0.w;
					    u_xlat0.w = clamp(u_xlat0.w, 0.0, 1.0);
					    u_xlat1 = u_xlat0 + vec4(-0.5, -0.5, -0.5, -0.5);
					    SV_Target0 = u_xlat0.wwww * u_xlat1 + vec4(0.5, 0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendMul2" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					bool u_xlatb1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1.x = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat0.w = u_xlat0.w * u_xlat1.x;
					    u_xlat0 = u_xlat0 * vs_COLOR0;
					    u_xlat0.w = u_xlat0.w;
					    u_xlat0.w = clamp(u_xlat0.w, 0.0, 1.0);
					    u_xlat1 = u_xlat0 + vec4(-0.5, -0.5, -0.5, -0.5);
					    SV_Target0 = u_xlat0.wwww * u_xlat1 + vec4(0.5, 0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					bool u_xlatb1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1.x = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat0.w = u_xlat0.w * u_xlat1.x;
					    u_xlat0 = u_xlat0 * vs_COLOR0;
					    u_xlat0.w = u_xlat0.w;
					    u_xlat0.w = clamp(u_xlat0.w, 0.0, 1.0);
					    u_xlat1 = u_xlat0 + vec4(-0.5, -0.5, -0.5, -0.5);
					    SV_Target0 = u_xlat0.wwww * u_xlat1 + vec4(0.5, 0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendMul2" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3.x;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3.x;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendMul2" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3.x;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3.x;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendMul2" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3.x;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3.x;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendMul2" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3.x;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3.x;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendMul2" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3.x;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3.x;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendMul2" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3.x;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3.x;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendMul2" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					bool u_xlatb1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1.x = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat0.w = u_xlat0.w * u_xlat1.x;
					    u_xlat0 = u_xlat0 * vs_COLOR0;
					    u_xlat0.w = u_xlat0.w;
					    u_xlat0.w = clamp(u_xlat0.w, 0.0, 1.0);
					    u_xlat1 = u_xlat0 + vec4(-0.5, -0.5, -0.5, -0.5);
					    SV_Target0 = u_xlat0.wwww * u_xlat1 + vec4(0.5, 0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					bool u_xlatb1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1.x = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat0.w = u_xlat0.w * u_xlat1.x;
					    u_xlat0 = u_xlat0 * vs_COLOR0;
					    u_xlat0.w = u_xlat0.w;
					    u_xlat0.w = clamp(u_xlat0.w, 0.0, 1.0);
					    u_xlat1 = u_xlat0 + vec4(-0.5, -0.5, -0.5, -0.5);
					    SV_Target0 = u_xlat0.wwww * u_xlat1 + vec4(0.5, 0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendMul2" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					bool u_xlatb1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1.x = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat0.w = u_xlat0.w * u_xlat1.x;
					    u_xlat0 = u_xlat0 * vs_COLOR0;
					    u_xlat0.w = u_xlat0.w;
					    u_xlat0.w = clamp(u_xlat0.w, 0.0, 1.0);
					    u_xlat1 = u_xlat0 + vec4(-0.5, -0.5, -0.5, -0.5);
					    SV_Target0 = u_xlat0.wwww * u_xlat1 + vec4(0.5, 0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					bool u_xlatb1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1.x = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat0.w = u_xlat0.w * u_xlat1.x;
					    u_xlat0 = u_xlat0 * vs_COLOR0;
					    u_xlat0.w = u_xlat0.w;
					    u_xlat0.w = clamp(u_xlat0.w, 0.0, 1.0);
					    u_xlat1 = u_xlat0 + vec4(-0.5, -0.5, -0.5, -0.5);
					    SV_Target0 = u_xlat0.wwww * u_xlat1 + vec4(0.5, 0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendMul2" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3.x;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3.x;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendMul2" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3.x;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3.x;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendMul2" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3.x;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3.x;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendMul2" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3.x;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3.x;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendMul2" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3.x;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3.x;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendMul2" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3.x;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3.x;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendMul2" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					bool u_xlatb1;
					float u_xlat6;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1.x = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat0.w = u_xlat0.w * u_xlat1.x;
					    u_xlat0 = u_xlat0 * vs_COLOR0;
					    u_xlat6 = u_xlat0.w;
					    u_xlat6 = clamp(u_xlat6, 0.0, 1.0);
					    u_xlat0.w = u_xlat6 * vs_TEXCOORD4;
					    u_xlat1 = u_xlat0 + vec4(-0.5, -0.5, -0.5, -0.5);
					    SV_Target0 = u_xlat0.wwww * u_xlat1 + vec4(0.5, 0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					bool u_xlatb1;
					float u_xlat6;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1.x = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat0.w = u_xlat0.w * u_xlat1.x;
					    u_xlat0 = u_xlat0 * vs_COLOR0;
					    u_xlat6 = u_xlat0.w;
					    u_xlat6 = clamp(u_xlat6, 0.0, 1.0);
					    u_xlat0.w = u_xlat6 * vs_TEXCOORD4;
					    u_xlat1 = u_xlat0 + vec4(-0.5, -0.5, -0.5, -0.5);
					    SV_Target0 = u_xlat0.wwww * u_xlat1 + vec4(0.5, 0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendMul2" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					bool u_xlatb1;
					float u_xlat6;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1.x = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat0.w = u_xlat0.w * u_xlat1.x;
					    u_xlat0 = u_xlat0 * vs_COLOR0;
					    u_xlat6 = u_xlat0.w;
					    u_xlat6 = clamp(u_xlat6, 0.0, 1.0);
					    u_xlat0.w = u_xlat6 * vs_TEXCOORD4;
					    u_xlat1 = u_xlat0 + vec4(-0.5, -0.5, -0.5, -0.5);
					    SV_Target0 = u_xlat0.wwww * u_xlat1 + vec4(0.5, 0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					bool u_xlatb1;
					float u_xlat6;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1.x = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat0.w = u_xlat0.w * u_xlat1.x;
					    u_xlat0 = u_xlat0 * vs_COLOR0;
					    u_xlat6 = u_xlat0.w;
					    u_xlat6 = clamp(u_xlat6, 0.0, 1.0);
					    u_xlat0.w = u_xlat6 * vs_TEXCOORD4;
					    u_xlat1 = u_xlat0 + vec4(-0.5, -0.5, -0.5, -0.5);
					    SV_Target0 = u_xlat0.wwww * u_xlat1 + vec4(0.5, 0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendMul2" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3.x;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3.x;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendMul2" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3.x;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3.x;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendMul2" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3.x;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3.x;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendMul2" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3.x;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3.x;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendMul2" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3.x;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3.x;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendMul2" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3.x;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3.x;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendMul2" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					bool u_xlatb1;
					float u_xlat6;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1.x = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat0.w = u_xlat0.w * u_xlat1.x;
					    u_xlat0 = u_xlat0 * vs_COLOR0;
					    u_xlat6 = u_xlat0.w;
					    u_xlat6 = clamp(u_xlat6, 0.0, 1.0);
					    u_xlat0.w = u_xlat6 * vs_TEXCOORD4;
					    u_xlat1 = u_xlat0 + vec4(-0.5, -0.5, -0.5, -0.5);
					    SV_Target0 = u_xlat0.wwww * u_xlat1 + vec4(0.5, 0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					bool u_xlatb1;
					float u_xlat6;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1.x = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat0.w = u_xlat0.w * u_xlat1.x;
					    u_xlat0 = u_xlat0 * vs_COLOR0;
					    u_xlat6 = u_xlat0.w;
					    u_xlat6 = clamp(u_xlat6, 0.0, 1.0);
					    u_xlat0.w = u_xlat6 * vs_TEXCOORD4;
					    u_xlat1 = u_xlat0 + vec4(-0.5, -0.5, -0.5, -0.5);
					    SV_Target0 = u_xlat0.wwww * u_xlat1 + vec4(0.5, 0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendMul2" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					bool u_xlatb1;
					float u_xlat6;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1.x = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat0.w = u_xlat0.w * u_xlat1.x;
					    u_xlat0 = u_xlat0 * vs_COLOR0;
					    u_xlat6 = u_xlat0.w;
					    u_xlat6 = clamp(u_xlat6, 0.0, 1.0);
					    u_xlat0.w = u_xlat6 * vs_TEXCOORD4;
					    u_xlat1 = u_xlat0 + vec4(-0.5, -0.5, -0.5, -0.5);
					    SV_Target0 = u_xlat0.wwww * u_xlat1 + vec4(0.5, 0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					bool u_xlatb1;
					float u_xlat6;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1.x = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat0.w = u_xlat0.w * u_xlat1.x;
					    u_xlat0 = u_xlat0 * vs_COLOR0;
					    u_xlat6 = u_xlat0.w;
					    u_xlat6 = clamp(u_xlat6, 0.0, 1.0);
					    u_xlat0.w = u_xlat6 * vs_TEXCOORD4;
					    u_xlat1 = u_xlat0 + vec4(-0.5, -0.5, -0.5, -0.5);
					    SV_Target0 = u_xlat0.wwww * u_xlat1 + vec4(0.5, 0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendMul2" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3.x;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3.x;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendMul2" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3.x;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3.x;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendMul2" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3.x;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3.x;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendMul2" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3.x;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3.x;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendMul2" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3.x;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3.x;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendMul2" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3.x;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3.x;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendMul2" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0.xyz = u_xlat0.xyz + u_xlat0.xyz;
					    u_xlat0.xyz = u_xlat0.xyz * _TintColor.xyz;
					    u_xlat1.xyz = u_xlat0.xyz * vs_COLOR0.xyz;
					    u_xlat0.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlatb0 = u_xlat0.w>=u_xlat0.x;
					    u_xlat1.w = u_xlatb0 ? 1.0 : float(0.0);
					    u_xlat0 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    SV_Target0 = u_xlat1.wwww * u_xlat0 + vec4(0.5, 0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0.xyz = u_xlat0.xyz + u_xlat0.xyz;
					    u_xlat0.xyz = u_xlat0.xyz * _TintColor.xyz;
					    u_xlat1.xyz = u_xlat0.xyz * vs_COLOR0.xyz;
					    u_xlat0.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlatb0 = u_xlat0.w>=u_xlat0.x;
					    u_xlat1.w = u_xlatb0 ? 1.0 : float(0.0);
					    u_xlat0 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    SV_Target0 = u_xlat1.wwww * u_xlat0 + vec4(0.5, 0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendMul2" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0.xyz = u_xlat0.xyz + u_xlat0.xyz;
					    u_xlat0.xyz = u_xlat0.xyz * _TintColor.xyz;
					    u_xlat1.xyz = u_xlat0.xyz * vs_COLOR0.xyz;
					    u_xlat0.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlatb0 = u_xlat0.w>=u_xlat0.x;
					    u_xlat1.w = u_xlatb0 ? 1.0 : float(0.0);
					    u_xlat0 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    SV_Target0 = u_xlat1.wwww * u_xlat0 + vec4(0.5, 0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0.xyz = u_xlat0.xyz + u_xlat0.xyz;
					    u_xlat0.xyz = u_xlat0.xyz * _TintColor.xyz;
					    u_xlat1.xyz = u_xlat0.xyz * vs_COLOR0.xyz;
					    u_xlat0.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlatb0 = u_xlat0.w>=u_xlat0.x;
					    u_xlat1.w = u_xlatb0 ? 1.0 : float(0.0);
					    u_xlat0 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    SV_Target0 = u_xlat1.wwww * u_xlat0 + vec4(0.5, 0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendMul2" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat2.w = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1 = u_xlat2 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat2.w = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1 = u_xlat2 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendMul2" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat2.w = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1 = u_xlat2 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat2.w = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1 = u_xlat2 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendMul2" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat2.w = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1 = u_xlat2 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat2.w = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1 = u_xlat2 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendMul2" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat2.w = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1 = u_xlat2 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat2.w = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1 = u_xlat2 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendMul2" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat2.w = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1 = u_xlat2 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat2.w = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1 = u_xlat2 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendMul2" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat2.w = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1 = u_xlat2 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat2.w = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1 = u_xlat2 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendMul2" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0.xyz = u_xlat0.xyz + u_xlat0.xyz;
					    u_xlat0.xyz = u_xlat0.xyz * _TintColor.xyz;
					    u_xlat1.xyz = u_xlat0.xyz * vs_COLOR0.xyz;
					    u_xlat0.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlatb0 = u_xlat0.w>=u_xlat0.x;
					    u_xlat1.w = u_xlatb0 ? 1.0 : float(0.0);
					    u_xlat0 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    SV_Target0 = u_xlat1.wwww * u_xlat0 + vec4(0.5, 0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0.xyz = u_xlat0.xyz + u_xlat0.xyz;
					    u_xlat0.xyz = u_xlat0.xyz * _TintColor.xyz;
					    u_xlat1.xyz = u_xlat0.xyz * vs_COLOR0.xyz;
					    u_xlat0.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlatb0 = u_xlat0.w>=u_xlat0.x;
					    u_xlat1.w = u_xlatb0 ? 1.0 : float(0.0);
					    u_xlat0 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    SV_Target0 = u_xlat1.wwww * u_xlat0 + vec4(0.5, 0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendMul2" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0.xyz = u_xlat0.xyz + u_xlat0.xyz;
					    u_xlat0.xyz = u_xlat0.xyz * _TintColor.xyz;
					    u_xlat1.xyz = u_xlat0.xyz * vs_COLOR0.xyz;
					    u_xlat0.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlatb0 = u_xlat0.w>=u_xlat0.x;
					    u_xlat1.w = u_xlatb0 ? 1.0 : float(0.0);
					    u_xlat0 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    SV_Target0 = u_xlat1.wwww * u_xlat0 + vec4(0.5, 0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0.xyz = u_xlat0.xyz + u_xlat0.xyz;
					    u_xlat0.xyz = u_xlat0.xyz * _TintColor.xyz;
					    u_xlat1.xyz = u_xlat0.xyz * vs_COLOR0.xyz;
					    u_xlat0.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlatb0 = u_xlat0.w>=u_xlat0.x;
					    u_xlat1.w = u_xlatb0 ? 1.0 : float(0.0);
					    u_xlat0 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    SV_Target0 = u_xlat1.wwww * u_xlat0 + vec4(0.5, 0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendMul2" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat2.w = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1 = u_xlat2 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat2.w = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1 = u_xlat2 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendMul2" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat2.w = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1 = u_xlat2 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat2.w = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1 = u_xlat2 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendMul2" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat2.w = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1 = u_xlat2 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat2.w = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1 = u_xlat2 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendMul2" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat2.w = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1 = u_xlat2 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat2.w = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1 = u_xlat2 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendMul2" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat2.w = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1 = u_xlat2 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat2.w = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1 = u_xlat2 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendMul2" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat2.w = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1 = u_xlat2 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat2.w = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1 = u_xlat2 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendMul2" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0.xyz = u_xlat0.xyz + u_xlat0.xyz;
					    u_xlat0.xyz = u_xlat0.xyz * _TintColor.xyz;
					    u_xlat1.xyz = u_xlat0.xyz * vs_COLOR0.xyz;
					    u_xlat0.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlatb0 = u_xlat0.w>=u_xlat0.x;
					    u_xlat0.x = u_xlatb0 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat0.x * vs_TEXCOORD4;
					    u_xlat0 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    SV_Target0 = u_xlat1.wwww * u_xlat0 + vec4(0.5, 0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0.xyz = u_xlat0.xyz + u_xlat0.xyz;
					    u_xlat0.xyz = u_xlat0.xyz * _TintColor.xyz;
					    u_xlat1.xyz = u_xlat0.xyz * vs_COLOR0.xyz;
					    u_xlat0.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlatb0 = u_xlat0.w>=u_xlat0.x;
					    u_xlat0.x = u_xlatb0 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat0.x * vs_TEXCOORD4;
					    u_xlat0 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    SV_Target0 = u_xlat1.wwww * u_xlat0 + vec4(0.5, 0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendMul2" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0.xyz = u_xlat0.xyz + u_xlat0.xyz;
					    u_xlat0.xyz = u_xlat0.xyz * _TintColor.xyz;
					    u_xlat1.xyz = u_xlat0.xyz * vs_COLOR0.xyz;
					    u_xlat0.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlatb0 = u_xlat0.w>=u_xlat0.x;
					    u_xlat0.x = u_xlatb0 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat0.x * vs_TEXCOORD4;
					    u_xlat0 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    SV_Target0 = u_xlat1.wwww * u_xlat0 + vec4(0.5, 0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0.xyz = u_xlat0.xyz + u_xlat0.xyz;
					    u_xlat0.xyz = u_xlat0.xyz * _TintColor.xyz;
					    u_xlat1.xyz = u_xlat0.xyz * vs_COLOR0.xyz;
					    u_xlat0.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlatb0 = u_xlat0.w>=u_xlat0.x;
					    u_xlat0.x = u_xlatb0 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat0.x * vs_TEXCOORD4;
					    u_xlat0 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    SV_Target0 = u_xlat1.wwww * u_xlat0 + vec4(0.5, 0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendMul2" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat2.w = u_xlat3.x * vs_TEXCOORD4;
					    u_xlat1 = u_xlat2 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat2.w = u_xlat3.x * vs_TEXCOORD4;
					    u_xlat1 = u_xlat2 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendMul2" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat2.w = u_xlat3.x * vs_TEXCOORD4;
					    u_xlat1 = u_xlat2 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat2.w = u_xlat3.x * vs_TEXCOORD4;
					    u_xlat1 = u_xlat2 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendMul2" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat2.w = u_xlat3.x * vs_TEXCOORD4;
					    u_xlat1 = u_xlat2 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat2.w = u_xlat3.x * vs_TEXCOORD4;
					    u_xlat1 = u_xlat2 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendMul2" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat2.w = u_xlat3.x * vs_TEXCOORD4;
					    u_xlat1 = u_xlat2 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat2.w = u_xlat3.x * vs_TEXCOORD4;
					    u_xlat1 = u_xlat2 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendMul2" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat2.w = u_xlat3.x * vs_TEXCOORD4;
					    u_xlat1 = u_xlat2 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat2.w = u_xlat3.x * vs_TEXCOORD4;
					    u_xlat1 = u_xlat2 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendMul2" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat2.w = u_xlat3.x * vs_TEXCOORD4;
					    u_xlat1 = u_xlat2 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat2.w = u_xlat3.x * vs_TEXCOORD4;
					    u_xlat1 = u_xlat2 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendMul2" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0.xyz = u_xlat0.xyz + u_xlat0.xyz;
					    u_xlat0.xyz = u_xlat0.xyz * _TintColor.xyz;
					    u_xlat1.xyz = u_xlat0.xyz * vs_COLOR0.xyz;
					    u_xlat0.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlatb0 = u_xlat0.w>=u_xlat0.x;
					    u_xlat0.x = u_xlatb0 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat0.x * vs_TEXCOORD4;
					    u_xlat0 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    SV_Target0 = u_xlat1.wwww * u_xlat0 + vec4(0.5, 0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0.xyz = u_xlat0.xyz + u_xlat0.xyz;
					    u_xlat0.xyz = u_xlat0.xyz * _TintColor.xyz;
					    u_xlat1.xyz = u_xlat0.xyz * vs_COLOR0.xyz;
					    u_xlat0.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlatb0 = u_xlat0.w>=u_xlat0.x;
					    u_xlat0.x = u_xlatb0 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat0.x * vs_TEXCOORD4;
					    u_xlat0 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    SV_Target0 = u_xlat1.wwww * u_xlat0 + vec4(0.5, 0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendMul2" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0.xyz = u_xlat0.xyz + u_xlat0.xyz;
					    u_xlat0.xyz = u_xlat0.xyz * _TintColor.xyz;
					    u_xlat1.xyz = u_xlat0.xyz * vs_COLOR0.xyz;
					    u_xlat0.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlatb0 = u_xlat0.w>=u_xlat0.x;
					    u_xlat0.x = u_xlatb0 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat0.x * vs_TEXCOORD4;
					    u_xlat0 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    SV_Target0 = u_xlat1.wwww * u_xlat0 + vec4(0.5, 0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0.xyz = u_xlat0.xyz + u_xlat0.xyz;
					    u_xlat0.xyz = u_xlat0.xyz * _TintColor.xyz;
					    u_xlat1.xyz = u_xlat0.xyz * vs_COLOR0.xyz;
					    u_xlat0.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlatb0 = u_xlat0.w>=u_xlat0.x;
					    u_xlat0.x = u_xlatb0 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat0.x * vs_TEXCOORD4;
					    u_xlat0 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    SV_Target0 = u_xlat1.wwww * u_xlat0 + vec4(0.5, 0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendMul2" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat2.w = u_xlat3.x * vs_TEXCOORD4;
					    u_xlat1 = u_xlat2 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat2.w = u_xlat3.x * vs_TEXCOORD4;
					    u_xlat1 = u_xlat2 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendMul2" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat2.w = u_xlat3.x * vs_TEXCOORD4;
					    u_xlat1 = u_xlat2 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat2.w = u_xlat3.x * vs_TEXCOORD4;
					    u_xlat1 = u_xlat2 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendMul2" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat2.w = u_xlat3.x * vs_TEXCOORD4;
					    u_xlat1 = u_xlat2 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat2.w = u_xlat3.x * vs_TEXCOORD4;
					    u_xlat1 = u_xlat2 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendMul2" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat2.w = u_xlat3.x * vs_TEXCOORD4;
					    u_xlat1 = u_xlat2 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat2.w = u_xlat3.x * vs_TEXCOORD4;
					    u_xlat1 = u_xlat2 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendMul2" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat2.w = u_xlat3.x * vs_TEXCOORD4;
					    u_xlat1 = u_xlat2 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat2.w = u_xlat3.x * vs_TEXCOORD4;
					    u_xlat1 = u_xlat2 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendMul2" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat2.w = u_xlat3.x * vs_TEXCOORD4;
					    u_xlat1 = u_xlat2 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat2.w = u_xlat3.x * vs_TEXCOORD4;
					    u_xlat1 = u_xlat2 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendMul2" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat0 = u_xlat0 * vs_COLOR0;
					    u_xlat0.w = u_xlat0.w;
					    u_xlat0.w = clamp(u_xlat0.w, 0.0, 1.0);
					    u_xlat1 = u_xlat0 + vec4(-0.5, -0.5, -0.5, -0.5);
					    SV_Target0 = u_xlat0.wwww * u_xlat1 + vec4(0.5, 0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat0 = u_xlat0 * vs_COLOR0;
					    u_xlat0.w = u_xlat0.w;
					    u_xlat0.w = clamp(u_xlat0.w, 0.0, 1.0);
					    u_xlat1 = u_xlat0 + vec4(-0.5, -0.5, -0.5, -0.5);
					    SV_Target0 = u_xlat0.wwww * u_xlat1 + vec4(0.5, 0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendMul2" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[7];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat0.w = u_xlat0.w;
					    u_xlat0.w = clamp(u_xlat0.w, 0.0, 1.0);
					    u_xlat1 = u_xlat0 + vec4(-0.5, -0.5, -0.5, -0.5);
					    SV_Target0 = u_xlat0.wwww * u_xlat1 + vec4(0.5, 0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[6];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat0.w = u_xlat0.w;
					    u_xlat0.w = clamp(u_xlat0.w, 0.0, 1.0);
					    u_xlat1 = u_xlat0 + vec4(-0.5, -0.5, -0.5, -0.5);
					    SV_Target0 = u_xlat0.wwww * u_xlat1 + vec4(0.5, 0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendMul2" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendMul2" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat3.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat1 = texture(_CameraDepthTexture, u_xlat3.xy);
					    u_xlat3.x = _ZBufferParams.z * u_xlat1.x + _ZBufferParams.w;
					    u_xlat3.x = float(1.0) / u_xlat3.x;
					    u_xlat3.x = u_xlat3.x + (-vs_TEXCOORD3.z);
					    u_xlat3.x = u_xlat3.x * _InvFade;
					    u_xlat3.x = clamp(u_xlat3.x, 0.0, 1.0);
					    u_xlat1.w = u_xlat3.x * vs_COLOR0.w;
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2 = u_xlat2 + u_xlat2;
					    u_xlat2 = u_xlat2 * _TintColor;
					    u_xlat1.xyz = vs_COLOR0.xyz;
					    u_xlat1 = u_xlat1 * u_xlat2;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat3.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat1 = texture(_CameraDepthTexture, u_xlat3.xy);
					    u_xlat3.x = _ZBufferParams.z * u_xlat1.x + _ZBufferParams.w;
					    u_xlat3.x = float(1.0) / u_xlat3.x;
					    u_xlat3.x = u_xlat3.x + (-vs_TEXCOORD3.z);
					    u_xlat3.x = u_xlat3.x * _InvFade;
					    u_xlat3.x = clamp(u_xlat3.x, 0.0, 1.0);
					    u_xlat1.w = u_xlat3.x * vs_COLOR0.w;
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2 = u_xlat2 + u_xlat2;
					    u_xlat2 = u_xlat2 * _TintColor;
					    u_xlat1.xyz = vs_COLOR0.xyz;
					    u_xlat1 = u_xlat1 * u_xlat2;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendMul2" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendMul2" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat3.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat1 = texture(_CameraDepthTexture, u_xlat3.xy);
					    u_xlat3.x = _ZBufferParams.z * u_xlat1.x + _ZBufferParams.w;
					    u_xlat3.x = float(1.0) / u_xlat3.x;
					    u_xlat3.x = u_xlat3.x + (-vs_TEXCOORD3.z);
					    u_xlat3.x = u_xlat3.x * _InvFade;
					    u_xlat3.x = clamp(u_xlat3.x, 0.0, 1.0);
					    u_xlat1.w = u_xlat3.x * vs_COLOR0.w;
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2 = u_xlat2 + u_xlat2;
					    u_xlat2 = u_xlat2 * _TintColor;
					    u_xlat1.xyz = vs_COLOR0.xyz;
					    u_xlat1 = u_xlat1 * u_xlat2;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat3.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat1 = texture(_CameraDepthTexture, u_xlat3.xy);
					    u_xlat3.x = _ZBufferParams.z * u_xlat1.x + _ZBufferParams.w;
					    u_xlat3.x = float(1.0) / u_xlat3.x;
					    u_xlat3.x = u_xlat3.x + (-vs_TEXCOORD3.z);
					    u_xlat3.x = u_xlat3.x * _InvFade;
					    u_xlat3.x = clamp(u_xlat3.x, 0.0, 1.0);
					    u_xlat1.w = u_xlat3.x * vs_COLOR0.w;
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2 = u_xlat2 + u_xlat2;
					    u_xlat2 = u_xlat2 * _TintColor;
					    u_xlat1.xyz = vs_COLOR0.xyz;
					    u_xlat1 = u_xlat1 * u_xlat2;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendMul2" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendMul2" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat3.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat1 = texture(_CameraDepthTexture, u_xlat3.xy);
					    u_xlat3.x = _ZBufferParams.z * u_xlat1.x + _ZBufferParams.w;
					    u_xlat3.x = float(1.0) / u_xlat3.x;
					    u_xlat3.x = u_xlat3.x + (-vs_TEXCOORD3.z);
					    u_xlat3.x = u_xlat3.x * _InvFade;
					    u_xlat3.x = clamp(u_xlat3.x, 0.0, 1.0);
					    u_xlat1.w = u_xlat3.x * vs_COLOR0.w;
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2 = u_xlat2 + u_xlat2;
					    u_xlat2 = u_xlat2 * _TintColor;
					    u_xlat1.xyz = vs_COLOR0.xyz;
					    u_xlat1 = u_xlat1 * u_xlat2;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat3.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat1 = texture(_CameraDepthTexture, u_xlat3.xy);
					    u_xlat3.x = _ZBufferParams.z * u_xlat1.x + _ZBufferParams.w;
					    u_xlat3.x = float(1.0) / u_xlat3.x;
					    u_xlat3.x = u_xlat3.x + (-vs_TEXCOORD3.z);
					    u_xlat3.x = u_xlat3.x * _InvFade;
					    u_xlat3.x = clamp(u_xlat3.x, 0.0, 1.0);
					    u_xlat1.w = u_xlat3.x * vs_COLOR0.w;
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2 = u_xlat2 + u_xlat2;
					    u_xlat2 = u_xlat2 * _TintColor;
					    u_xlat1.xyz = vs_COLOR0.xyz;
					    u_xlat1 = u_xlat1 * u_xlat2;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendMul2" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[7];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat0.w = u_xlat0.w;
					    u_xlat0.w = clamp(u_xlat0.w, 0.0, 1.0);
					    u_xlat1 = u_xlat0 + vec4(-0.5, -0.5, -0.5, -0.5);
					    SV_Target0 = u_xlat0.wwww * u_xlat1 + vec4(0.5, 0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[6];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat0.w = u_xlat0.w;
					    u_xlat0.w = clamp(u_xlat0.w, 0.0, 1.0);
					    u_xlat1 = u_xlat0 + vec4(-0.5, -0.5, -0.5, -0.5);
					    SV_Target0 = u_xlat0.wwww * u_xlat1 + vec4(0.5, 0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendMul2" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[7];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat0.w = u_xlat0.w;
					    u_xlat0.w = clamp(u_xlat0.w, 0.0, 1.0);
					    u_xlat1 = u_xlat0 + vec4(-0.5, -0.5, -0.5, -0.5);
					    SV_Target0 = u_xlat0.wwww * u_xlat1 + vec4(0.5, 0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[6];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat0.w = u_xlat0.w;
					    u_xlat0.w = clamp(u_xlat0.w, 0.0, 1.0);
					    u_xlat1 = u_xlat0 + vec4(-0.5, -0.5, -0.5, -0.5);
					    SV_Target0 = u_xlat0.wwww * u_xlat1 + vec4(0.5, 0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendMul2" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat3.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat1 = texture(_CameraDepthTexture, u_xlat3.xy);
					    u_xlat3.x = _ZBufferParams.z * u_xlat1.x + _ZBufferParams.w;
					    u_xlat3.x = float(1.0) / u_xlat3.x;
					    u_xlat3.x = u_xlat3.x + (-vs_TEXCOORD3.z);
					    u_xlat3.x = u_xlat3.x * _InvFade;
					    u_xlat3.x = clamp(u_xlat3.x, 0.0, 1.0);
					    u_xlat1.w = u_xlat3.x * vs_COLOR0.w;
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2 = u_xlat2 + u_xlat2;
					    u_xlat2 = u_xlat2 * _TintColor;
					    u_xlat1.xyz = vs_COLOR0.xyz;
					    u_xlat1 = u_xlat1 * u_xlat2;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat3.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat1 = texture(_CameraDepthTexture, u_xlat3.xy);
					    u_xlat3.x = _ZBufferParams.z * u_xlat1.x + _ZBufferParams.w;
					    u_xlat3.x = float(1.0) / u_xlat3.x;
					    u_xlat3.x = u_xlat3.x + (-vs_TEXCOORD3.z);
					    u_xlat3.x = u_xlat3.x * _InvFade;
					    u_xlat3.x = clamp(u_xlat3.x, 0.0, 1.0);
					    u_xlat1.w = u_xlat3.x * vs_COLOR0.w;
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2 = u_xlat2 + u_xlat2;
					    u_xlat2 = u_xlat2 * _TintColor;
					    u_xlat1.xyz = vs_COLOR0.xyz;
					    u_xlat1 = u_xlat1 * u_xlat2;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendMul2" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat3.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat1 = texture(_CameraDepthTexture, u_xlat3.xy);
					    u_xlat3.x = _ZBufferParams.z * u_xlat1.x + _ZBufferParams.w;
					    u_xlat3.x = float(1.0) / u_xlat3.x;
					    u_xlat3.x = u_xlat3.x + (-vs_TEXCOORD3.z);
					    u_xlat3.x = u_xlat3.x * _InvFade;
					    u_xlat3.x = clamp(u_xlat3.x, 0.0, 1.0);
					    u_xlat1.w = u_xlat3.x * vs_COLOR0.w;
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2 = u_xlat2 + u_xlat2;
					    u_xlat2 = u_xlat2 * _TintColor;
					    u_xlat1.xyz = vs_COLOR0.xyz;
					    u_xlat1 = u_xlat1 * u_xlat2;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat3.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat1 = texture(_CameraDepthTexture, u_xlat3.xy);
					    u_xlat3.x = _ZBufferParams.z * u_xlat1.x + _ZBufferParams.w;
					    u_xlat3.x = float(1.0) / u_xlat3.x;
					    u_xlat3.x = u_xlat3.x + (-vs_TEXCOORD3.z);
					    u_xlat3.x = u_xlat3.x * _InvFade;
					    u_xlat3.x = clamp(u_xlat3.x, 0.0, 1.0);
					    u_xlat1.w = u_xlat3.x * vs_COLOR0.w;
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2 = u_xlat2 + u_xlat2;
					    u_xlat2 = u_xlat2 * _TintColor;
					    u_xlat1.xyz = vs_COLOR0.xyz;
					    u_xlat1 = u_xlat1 * u_xlat2;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendMul2" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat3.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat1 = texture(_CameraDepthTexture, u_xlat3.xy);
					    u_xlat3.x = _ZBufferParams.z * u_xlat1.x + _ZBufferParams.w;
					    u_xlat3.x = float(1.0) / u_xlat3.x;
					    u_xlat3.x = u_xlat3.x + (-vs_TEXCOORD3.z);
					    u_xlat3.x = u_xlat3.x * _InvFade;
					    u_xlat3.x = clamp(u_xlat3.x, 0.0, 1.0);
					    u_xlat1.w = u_xlat3.x * vs_COLOR0.w;
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2 = u_xlat2 + u_xlat2;
					    u_xlat2 = u_xlat2 * _TintColor;
					    u_xlat1.xyz = vs_COLOR0.xyz;
					    u_xlat1 = u_xlat1 * u_xlat2;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat3.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat1 = texture(_CameraDepthTexture, u_xlat3.xy);
					    u_xlat3.x = _ZBufferParams.z * u_xlat1.x + _ZBufferParams.w;
					    u_xlat3.x = float(1.0) / u_xlat3.x;
					    u_xlat3.x = u_xlat3.x + (-vs_TEXCOORD3.z);
					    u_xlat3.x = u_xlat3.x * _InvFade;
					    u_xlat3.x = clamp(u_xlat3.x, 0.0, 1.0);
					    u_xlat1.w = u_xlat3.x * vs_COLOR0.w;
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2 = u_xlat2 + u_xlat2;
					    u_xlat2 = u_xlat2 * _TintColor;
					    u_xlat1.xyz = vs_COLOR0.xyz;
					    u_xlat1 = u_xlat1 * u_xlat2;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendMul2" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat3.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat1 = texture(_CameraDepthTexture, u_xlat3.xy);
					    u_xlat3.x = _ZBufferParams.z * u_xlat1.x + _ZBufferParams.w;
					    u_xlat3.x = float(1.0) / u_xlat3.x;
					    u_xlat3.x = u_xlat3.x + (-vs_TEXCOORD3.z);
					    u_xlat3.x = u_xlat3.x * _InvFade;
					    u_xlat3.x = clamp(u_xlat3.x, 0.0, 1.0);
					    u_xlat1.w = u_xlat3.x * vs_COLOR0.w;
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2 = u_xlat2 + u_xlat2;
					    u_xlat2 = u_xlat2 * _TintColor;
					    u_xlat1.xyz = vs_COLOR0.xyz;
					    u_xlat1 = u_xlat1 * u_xlat2;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat3.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat1 = texture(_CameraDepthTexture, u_xlat3.xy);
					    u_xlat3.x = _ZBufferParams.z * u_xlat1.x + _ZBufferParams.w;
					    u_xlat3.x = float(1.0) / u_xlat3.x;
					    u_xlat3.x = u_xlat3.x + (-vs_TEXCOORD3.z);
					    u_xlat3.x = u_xlat3.x * _InvFade;
					    u_xlat3.x = clamp(u_xlat3.x, 0.0, 1.0);
					    u_xlat1.w = u_xlat3.x * vs_COLOR0.w;
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2 = u_xlat2 + u_xlat2;
					    u_xlat2 = u_xlat2 * _TintColor;
					    u_xlat1.xyz = vs_COLOR0.xyz;
					    u_xlat1 = u_xlat1 * u_xlat2;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendMul2" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat3.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat1 = texture(_CameraDepthTexture, u_xlat3.xy);
					    u_xlat3.x = _ZBufferParams.z * u_xlat1.x + _ZBufferParams.w;
					    u_xlat3.x = float(1.0) / u_xlat3.x;
					    u_xlat3.x = u_xlat3.x + (-vs_TEXCOORD3.z);
					    u_xlat3.x = u_xlat3.x * _InvFade;
					    u_xlat3.x = clamp(u_xlat3.x, 0.0, 1.0);
					    u_xlat1.w = u_xlat3.x * vs_COLOR0.w;
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2 = u_xlat2 + u_xlat2;
					    u_xlat2 = u_xlat2 * _TintColor;
					    u_xlat1.xyz = vs_COLOR0.xyz;
					    u_xlat1 = u_xlat1 * u_xlat2;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat3.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat1 = texture(_CameraDepthTexture, u_xlat3.xy);
					    u_xlat3.x = _ZBufferParams.z * u_xlat1.x + _ZBufferParams.w;
					    u_xlat3.x = float(1.0) / u_xlat3.x;
					    u_xlat3.x = u_xlat3.x + (-vs_TEXCOORD3.z);
					    u_xlat3.x = u_xlat3.x * _InvFade;
					    u_xlat3.x = clamp(u_xlat3.x, 0.0, 1.0);
					    u_xlat1.w = u_xlat3.x * vs_COLOR0.w;
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2 = u_xlat2 + u_xlat2;
					    u_xlat2 = u_xlat2 * _TintColor;
					    u_xlat1.xyz = vs_COLOR0.xyz;
					    u_xlat1 = u_xlat1 * u_xlat2;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendMul2" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat3.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat1 = texture(_CameraDepthTexture, u_xlat3.xy);
					    u_xlat3.x = _ZBufferParams.z * u_xlat1.x + _ZBufferParams.w;
					    u_xlat3.x = float(1.0) / u_xlat3.x;
					    u_xlat3.x = u_xlat3.x + (-vs_TEXCOORD3.z);
					    u_xlat3.x = u_xlat3.x * _InvFade;
					    u_xlat3.x = clamp(u_xlat3.x, 0.0, 1.0);
					    u_xlat1.w = u_xlat3.x * vs_COLOR0.w;
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2 = u_xlat2 + u_xlat2;
					    u_xlat2 = u_xlat2 * _TintColor;
					    u_xlat1.xyz = vs_COLOR0.xyz;
					    u_xlat1 = u_xlat1 * u_xlat2;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat3.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat1 = texture(_CameraDepthTexture, u_xlat3.xy);
					    u_xlat3.x = _ZBufferParams.z * u_xlat1.x + _ZBufferParams.w;
					    u_xlat3.x = float(1.0) / u_xlat3.x;
					    u_xlat3.x = u_xlat3.x + (-vs_TEXCOORD3.z);
					    u_xlat3.x = u_xlat3.x * _InvFade;
					    u_xlat3.x = clamp(u_xlat3.x, 0.0, 1.0);
					    u_xlat1.w = u_xlat3.x * vs_COLOR0.w;
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2 = u_xlat2 + u_xlat2;
					    u_xlat2 = u_xlat2 * _TintColor;
					    u_xlat1.xyz = vs_COLOR0.xyz;
					    u_xlat1 = u_xlat1 * u_xlat2;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendMul2" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat6;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat0 = u_xlat0 * vs_COLOR0;
					    u_xlat6 = u_xlat0.w;
					    u_xlat6 = clamp(u_xlat6, 0.0, 1.0);
					    u_xlat0.w = u_xlat6 * vs_TEXCOORD4;
					    u_xlat1 = u_xlat0 + vec4(-0.5, -0.5, -0.5, -0.5);
					    SV_Target0 = u_xlat0.wwww * u_xlat1 + vec4(0.5, 0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat6;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat0 = u_xlat0 * vs_COLOR0;
					    u_xlat6 = u_xlat0.w;
					    u_xlat6 = clamp(u_xlat6, 0.0, 1.0);
					    u_xlat0.w = u_xlat6 * vs_TEXCOORD4;
					    u_xlat1 = u_xlat0 + vec4(-0.5, -0.5, -0.5, -0.5);
					    SV_Target0 = u_xlat0.wwww * u_xlat1 + vec4(0.5, 0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendMul2" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[7];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat6;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat6 = u_xlat0.w;
					    u_xlat6 = clamp(u_xlat6, 0.0, 1.0);
					    u_xlat0.w = u_xlat6 * vs_TEXCOORD4;
					    u_xlat1 = u_xlat0 + vec4(-0.5, -0.5, -0.5, -0.5);
					    SV_Target0 = u_xlat0.wwww * u_xlat1 + vec4(0.5, 0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[6];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat6;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat6 = u_xlat0.w;
					    u_xlat6 = clamp(u_xlat6, 0.0, 1.0);
					    u_xlat0.w = u_xlat6 * vs_TEXCOORD4;
					    u_xlat1 = u_xlat0 + vec4(-0.5, -0.5, -0.5, -0.5);
					    SV_Target0 = u_xlat0.wwww * u_xlat1 + vec4(0.5, 0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendMul2" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendMul2" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat6;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat6 = u_xlat0.w;
					    u_xlat6 = clamp(u_xlat6, 0.0, 1.0);
					    u_xlat0.w = u_xlat6 * vs_TEXCOORD4;
					    u_xlat1 = u_xlat0 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat0.xyz = u_xlat0.www * u_xlat1.xyz;
					    SV_Target0.w = u_xlat0.w * u_xlat1.w + 0.5;
					    u_xlat6 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat6 = (-u_xlat6) + 1.0;
					    u_xlat6 = u_xlat6 * _ProjectionParams.z;
					    u_xlat6 = max(u_xlat6, 0.0);
					    u_xlat6 = u_xlat6 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat6 = clamp(u_xlat6, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat6) * u_xlat0.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat6;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat6 = u_xlat0.w;
					    u_xlat6 = clamp(u_xlat6, 0.0, 1.0);
					    u_xlat0.w = u_xlat6 * vs_TEXCOORD4;
					    u_xlat1 = u_xlat0 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat0.xyz = u_xlat0.www * u_xlat1.xyz;
					    SV_Target0.w = u_xlat0.w * u_xlat1.w + 0.5;
					    u_xlat6 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat6 = (-u_xlat6) + 1.0;
					    u_xlat6 = u_xlat6 * _ProjectionParams.z;
					    u_xlat6 = max(u_xlat6, 0.0);
					    u_xlat6 = u_xlat6 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat6 = clamp(u_xlat6, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat6) * u_xlat0.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendMul2" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendMul2" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat3.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat1 = texture(_CameraDepthTexture, u_xlat3.xy);
					    u_xlat3.x = _ZBufferParams.z * u_xlat1.x + _ZBufferParams.w;
					    u_xlat3.x = float(1.0) / u_xlat3.x;
					    u_xlat3.x = u_xlat3.x + (-vs_TEXCOORD3.z);
					    u_xlat3.x = u_xlat3.x * _InvFade;
					    u_xlat3.x = clamp(u_xlat3.x, 0.0, 1.0);
					    u_xlat1.w = u_xlat3.x * vs_COLOR0.w;
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2 = u_xlat2 + u_xlat2;
					    u_xlat2 = u_xlat2 * _TintColor;
					    u_xlat1.xyz = vs_COLOR0.xyz;
					    u_xlat1 = u_xlat1 * u_xlat2;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat3.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat1 = texture(_CameraDepthTexture, u_xlat3.xy);
					    u_xlat3.x = _ZBufferParams.z * u_xlat1.x + _ZBufferParams.w;
					    u_xlat3.x = float(1.0) / u_xlat3.x;
					    u_xlat3.x = u_xlat3.x + (-vs_TEXCOORD3.z);
					    u_xlat3.x = u_xlat3.x * _InvFade;
					    u_xlat3.x = clamp(u_xlat3.x, 0.0, 1.0);
					    u_xlat1.w = u_xlat3.x * vs_COLOR0.w;
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2 = u_xlat2 + u_xlat2;
					    u_xlat2 = u_xlat2 * _TintColor;
					    u_xlat1.xyz = vs_COLOR0.xyz;
					    u_xlat1 = u_xlat1 * u_xlat2;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendMul2" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendMul2" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat3.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat1 = texture(_CameraDepthTexture, u_xlat3.xy);
					    u_xlat3.x = _ZBufferParams.z * u_xlat1.x + _ZBufferParams.w;
					    u_xlat3.x = float(1.0) / u_xlat3.x;
					    u_xlat3.x = u_xlat3.x + (-vs_TEXCOORD3.z);
					    u_xlat3.x = u_xlat3.x * _InvFade;
					    u_xlat3.x = clamp(u_xlat3.x, 0.0, 1.0);
					    u_xlat1.w = u_xlat3.x * vs_COLOR0.w;
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2 = u_xlat2 + u_xlat2;
					    u_xlat2 = u_xlat2 * _TintColor;
					    u_xlat1.xyz = vs_COLOR0.xyz;
					    u_xlat1 = u_xlat1 * u_xlat2;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat3.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat1 = texture(_CameraDepthTexture, u_xlat3.xy);
					    u_xlat3.x = _ZBufferParams.z * u_xlat1.x + _ZBufferParams.w;
					    u_xlat3.x = float(1.0) / u_xlat3.x;
					    u_xlat3.x = u_xlat3.x + (-vs_TEXCOORD3.z);
					    u_xlat3.x = u_xlat3.x * _InvFade;
					    u_xlat3.x = clamp(u_xlat3.x, 0.0, 1.0);
					    u_xlat1.w = u_xlat3.x * vs_COLOR0.w;
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2 = u_xlat2 + u_xlat2;
					    u_xlat2 = u_xlat2 * _TintColor;
					    u_xlat1.xyz = vs_COLOR0.xyz;
					    u_xlat1 = u_xlat1 * u_xlat2;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendMul2" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[7];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat6;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat6 = u_xlat0.w;
					    u_xlat6 = clamp(u_xlat6, 0.0, 1.0);
					    u_xlat0.w = u_xlat6 * vs_TEXCOORD4;
					    u_xlat1 = u_xlat0 + vec4(-0.5, -0.5, -0.5, -0.5);
					    SV_Target0 = u_xlat0.wwww * u_xlat1 + vec4(0.5, 0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[6];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat6;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat6 = u_xlat0.w;
					    u_xlat6 = clamp(u_xlat6, 0.0, 1.0);
					    u_xlat0.w = u_xlat6 * vs_TEXCOORD4;
					    u_xlat1 = u_xlat0 + vec4(-0.5, -0.5, -0.5, -0.5);
					    SV_Target0 = u_xlat0.wwww * u_xlat1 + vec4(0.5, 0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendMul2" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[7];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat6;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat6 = u_xlat0.w;
					    u_xlat6 = clamp(u_xlat6, 0.0, 1.0);
					    u_xlat0.w = u_xlat6 * vs_TEXCOORD4;
					    u_xlat1 = u_xlat0 + vec4(-0.5, -0.5, -0.5, -0.5);
					    SV_Target0 = u_xlat0.wwww * u_xlat1 + vec4(0.5, 0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[6];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat6;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat6 = u_xlat0.w;
					    u_xlat6 = clamp(u_xlat6, 0.0, 1.0);
					    u_xlat0.w = u_xlat6 * vs_TEXCOORD4;
					    u_xlat1 = u_xlat0 + vec4(-0.5, -0.5, -0.5, -0.5);
					    SV_Target0 = u_xlat0.wwww * u_xlat1 + vec4(0.5, 0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendMul2" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat6;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat6 = u_xlat0.w;
					    u_xlat6 = clamp(u_xlat6, 0.0, 1.0);
					    u_xlat0.w = u_xlat6 * vs_TEXCOORD4;
					    u_xlat1 = u_xlat0 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat0.xyz = u_xlat0.www * u_xlat1.xyz;
					    SV_Target0.w = u_xlat0.w * u_xlat1.w + 0.5;
					    u_xlat6 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat6 = (-u_xlat6) + 1.0;
					    u_xlat6 = u_xlat6 * _ProjectionParams.z;
					    u_xlat6 = max(u_xlat6, 0.0);
					    u_xlat6 = u_xlat6 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat6 = clamp(u_xlat6, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat6) * u_xlat0.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat6;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat6 = u_xlat0.w;
					    u_xlat6 = clamp(u_xlat6, 0.0, 1.0);
					    u_xlat0.w = u_xlat6 * vs_TEXCOORD4;
					    u_xlat1 = u_xlat0 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat0.xyz = u_xlat0.www * u_xlat1.xyz;
					    SV_Target0.w = u_xlat0.w * u_xlat1.w + 0.5;
					    u_xlat6 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat6 = (-u_xlat6) + 1.0;
					    u_xlat6 = u_xlat6 * _ProjectionParams.z;
					    u_xlat6 = max(u_xlat6, 0.0);
					    u_xlat6 = u_xlat6 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat6 = clamp(u_xlat6, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat6) * u_xlat0.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendMul2" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat6;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat6 = u_xlat0.w;
					    u_xlat6 = clamp(u_xlat6, 0.0, 1.0);
					    u_xlat0.w = u_xlat6 * vs_TEXCOORD4;
					    u_xlat1 = u_xlat0 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat0.xyz = u_xlat0.www * u_xlat1.xyz;
					    SV_Target0.w = u_xlat0.w * u_xlat1.w + 0.5;
					    u_xlat6 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat6 = (-u_xlat6) + 1.0;
					    u_xlat6 = u_xlat6 * _ProjectionParams.z;
					    u_xlat6 = max(u_xlat6, 0.0);
					    u_xlat6 = u_xlat6 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat6 = clamp(u_xlat6, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat6) * u_xlat0.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat6;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat6 = u_xlat0.w;
					    u_xlat6 = clamp(u_xlat6, 0.0, 1.0);
					    u_xlat0.w = u_xlat6 * vs_TEXCOORD4;
					    u_xlat1 = u_xlat0 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat0.xyz = u_xlat0.www * u_xlat1.xyz;
					    SV_Target0.w = u_xlat0.w * u_xlat1.w + 0.5;
					    u_xlat6 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat6 = (-u_xlat6) + 1.0;
					    u_xlat6 = u_xlat6 * _ProjectionParams.z;
					    u_xlat6 = max(u_xlat6, 0.0);
					    u_xlat6 = u_xlat6 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat6 = clamp(u_xlat6, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat6) * u_xlat0.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendMul2" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat3.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat1 = texture(_CameraDepthTexture, u_xlat3.xy);
					    u_xlat3.x = _ZBufferParams.z * u_xlat1.x + _ZBufferParams.w;
					    u_xlat3.x = float(1.0) / u_xlat3.x;
					    u_xlat3.x = u_xlat3.x + (-vs_TEXCOORD3.z);
					    u_xlat3.x = u_xlat3.x * _InvFade;
					    u_xlat3.x = clamp(u_xlat3.x, 0.0, 1.0);
					    u_xlat1.w = u_xlat3.x * vs_COLOR0.w;
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2 = u_xlat2 + u_xlat2;
					    u_xlat2 = u_xlat2 * _TintColor;
					    u_xlat1.xyz = vs_COLOR0.xyz;
					    u_xlat1 = u_xlat1 * u_xlat2;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat3.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat1 = texture(_CameraDepthTexture, u_xlat3.xy);
					    u_xlat3.x = _ZBufferParams.z * u_xlat1.x + _ZBufferParams.w;
					    u_xlat3.x = float(1.0) / u_xlat3.x;
					    u_xlat3.x = u_xlat3.x + (-vs_TEXCOORD3.z);
					    u_xlat3.x = u_xlat3.x * _InvFade;
					    u_xlat3.x = clamp(u_xlat3.x, 0.0, 1.0);
					    u_xlat1.w = u_xlat3.x * vs_COLOR0.w;
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2 = u_xlat2 + u_xlat2;
					    u_xlat2 = u_xlat2 * _TintColor;
					    u_xlat1.xyz = vs_COLOR0.xyz;
					    u_xlat1 = u_xlat1 * u_xlat2;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendMul2" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat3.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat1 = texture(_CameraDepthTexture, u_xlat3.xy);
					    u_xlat3.x = _ZBufferParams.z * u_xlat1.x + _ZBufferParams.w;
					    u_xlat3.x = float(1.0) / u_xlat3.x;
					    u_xlat3.x = u_xlat3.x + (-vs_TEXCOORD3.z);
					    u_xlat3.x = u_xlat3.x * _InvFade;
					    u_xlat3.x = clamp(u_xlat3.x, 0.0, 1.0);
					    u_xlat1.w = u_xlat3.x * vs_COLOR0.w;
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2 = u_xlat2 + u_xlat2;
					    u_xlat2 = u_xlat2 * _TintColor;
					    u_xlat1.xyz = vs_COLOR0.xyz;
					    u_xlat1 = u_xlat1 * u_xlat2;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat3.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat1 = texture(_CameraDepthTexture, u_xlat3.xy);
					    u_xlat3.x = _ZBufferParams.z * u_xlat1.x + _ZBufferParams.w;
					    u_xlat3.x = float(1.0) / u_xlat3.x;
					    u_xlat3.x = u_xlat3.x + (-vs_TEXCOORD3.z);
					    u_xlat3.x = u_xlat3.x * _InvFade;
					    u_xlat3.x = clamp(u_xlat3.x, 0.0, 1.0);
					    u_xlat1.w = u_xlat3.x * vs_COLOR0.w;
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2 = u_xlat2 + u_xlat2;
					    u_xlat2 = u_xlat2 * _TintColor;
					    u_xlat1.xyz = vs_COLOR0.xyz;
					    u_xlat1 = u_xlat1 * u_xlat2;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendMul2" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat3.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat1 = texture(_CameraDepthTexture, u_xlat3.xy);
					    u_xlat3.x = _ZBufferParams.z * u_xlat1.x + _ZBufferParams.w;
					    u_xlat3.x = float(1.0) / u_xlat3.x;
					    u_xlat3.x = u_xlat3.x + (-vs_TEXCOORD3.z);
					    u_xlat3.x = u_xlat3.x * _InvFade;
					    u_xlat3.x = clamp(u_xlat3.x, 0.0, 1.0);
					    u_xlat1.w = u_xlat3.x * vs_COLOR0.w;
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2 = u_xlat2 + u_xlat2;
					    u_xlat2 = u_xlat2 * _TintColor;
					    u_xlat1.xyz = vs_COLOR0.xyz;
					    u_xlat1 = u_xlat1 * u_xlat2;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat3.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat1 = texture(_CameraDepthTexture, u_xlat3.xy);
					    u_xlat3.x = _ZBufferParams.z * u_xlat1.x + _ZBufferParams.w;
					    u_xlat3.x = float(1.0) / u_xlat3.x;
					    u_xlat3.x = u_xlat3.x + (-vs_TEXCOORD3.z);
					    u_xlat3.x = u_xlat3.x * _InvFade;
					    u_xlat3.x = clamp(u_xlat3.x, 0.0, 1.0);
					    u_xlat1.w = u_xlat3.x * vs_COLOR0.w;
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2 = u_xlat2 + u_xlat2;
					    u_xlat2 = u_xlat2 * _TintColor;
					    u_xlat1.xyz = vs_COLOR0.xyz;
					    u_xlat1 = u_xlat1 * u_xlat2;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendMul2" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat3.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat1 = texture(_CameraDepthTexture, u_xlat3.xy);
					    u_xlat3.x = _ZBufferParams.z * u_xlat1.x + _ZBufferParams.w;
					    u_xlat3.x = float(1.0) / u_xlat3.x;
					    u_xlat3.x = u_xlat3.x + (-vs_TEXCOORD3.z);
					    u_xlat3.x = u_xlat3.x * _InvFade;
					    u_xlat3.x = clamp(u_xlat3.x, 0.0, 1.0);
					    u_xlat1.w = u_xlat3.x * vs_COLOR0.w;
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2 = u_xlat2 + u_xlat2;
					    u_xlat2 = u_xlat2 * _TintColor;
					    u_xlat1.xyz = vs_COLOR0.xyz;
					    u_xlat1 = u_xlat1 * u_xlat2;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat3.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat1 = texture(_CameraDepthTexture, u_xlat3.xy);
					    u_xlat3.x = _ZBufferParams.z * u_xlat1.x + _ZBufferParams.w;
					    u_xlat3.x = float(1.0) / u_xlat3.x;
					    u_xlat3.x = u_xlat3.x + (-vs_TEXCOORD3.z);
					    u_xlat3.x = u_xlat3.x * _InvFade;
					    u_xlat3.x = clamp(u_xlat3.x, 0.0, 1.0);
					    u_xlat1.w = u_xlat3.x * vs_COLOR0.w;
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2 = u_xlat2 + u_xlat2;
					    u_xlat2 = u_xlat2 * _TintColor;
					    u_xlat1.xyz = vs_COLOR0.xyz;
					    u_xlat1 = u_xlat1 * u_xlat2;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendMul2" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					bool u_xlatb1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1.x = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat0.w = u_xlat0.w * u_xlat1.x;
					    u_xlat0 = u_xlat0 * vs_COLOR0;
					    u_xlat0.w = u_xlat0.w;
					    u_xlat0.w = clamp(u_xlat0.w, 0.0, 1.0);
					    u_xlat1 = u_xlat0 + vec4(-0.5, -0.5, -0.5, -0.5);
					    SV_Target0 = u_xlat0.wwww * u_xlat1 + vec4(0.5, 0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					bool u_xlatb1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1.x = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat0.w = u_xlat0.w * u_xlat1.x;
					    u_xlat0 = u_xlat0 * vs_COLOR0;
					    u_xlat0.w = u_xlat0.w;
					    u_xlat0.w = clamp(u_xlat0.w, 0.0, 1.0);
					    u_xlat1 = u_xlat0 + vec4(-0.5, -0.5, -0.5, -0.5);
					    SV_Target0 = u_xlat0.wwww * u_xlat1 + vec4(0.5, 0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendMul2" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[7];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					bool u_xlatb2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2 = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat0.w = u_xlat0.w;
					    u_xlat0.w = clamp(u_xlat0.w, 0.0, 1.0);
					    u_xlat1 = u_xlat0 + vec4(-0.5, -0.5, -0.5, -0.5);
					    SV_Target0 = u_xlat0.wwww * u_xlat1 + vec4(0.5, 0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[6];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					bool u_xlatb2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2 = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat0.w = u_xlat0.w;
					    u_xlat0.w = clamp(u_xlat0.w, 0.0, 1.0);
					    u_xlat1 = u_xlat0 + vec4(-0.5, -0.5, -0.5, -0.5);
					    SV_Target0 = u_xlat0.wwww * u_xlat1 + vec4(0.5, 0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendMul2" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3.x;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3.x;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendMul2" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					bool u_xlatb2;
					float u_xlat9;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2 = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat0.w = u_xlat0.w;
					    u_xlat0.w = clamp(u_xlat0.w, 0.0, 1.0);
					    u_xlat1 = u_xlat0 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat0.xyz = u_xlat0.www * u_xlat1.xyz;
					    SV_Target0.w = u_xlat0.w * u_xlat1.w + 0.5;
					    u_xlat9 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat9 = (-u_xlat9) + 1.0;
					    u_xlat9 = u_xlat9 * _ProjectionParams.z;
					    u_xlat9 = max(u_xlat9, 0.0);
					    u_xlat9 = u_xlat9 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat9 = clamp(u_xlat9, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat9) * u_xlat0.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					bool u_xlatb2;
					float u_xlat9;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2 = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat0.w = u_xlat0.w;
					    u_xlat0.w = clamp(u_xlat0.w, 0.0, 1.0);
					    u_xlat1 = u_xlat0 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat0.xyz = u_xlat0.www * u_xlat1.xyz;
					    SV_Target0.w = u_xlat0.w * u_xlat1.w + 0.5;
					    u_xlat9 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat9 = (-u_xlat9) + 1.0;
					    u_xlat9 = u_xlat9 * _ProjectionParams.z;
					    u_xlat9 = max(u_xlat9, 0.0);
					    u_xlat9 = u_xlat9 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat9 = clamp(u_xlat9, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat9) * u_xlat0.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendMul2" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3.x;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3.x;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendMul2" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat3.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat1 = texture(_CameraDepthTexture, u_xlat3.xy);
					    u_xlat3.x = _ZBufferParams.z * u_xlat1.x + _ZBufferParams.w;
					    u_xlat3.x = float(1.0) / u_xlat3.x;
					    u_xlat3.x = u_xlat3.x + (-vs_TEXCOORD3.z);
					    u_xlat3.x = u_xlat3.x * _InvFade;
					    u_xlat3.x = clamp(u_xlat3.x, 0.0, 1.0);
					    u_xlat1.w = u_xlat3.x * vs_COLOR0.w;
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb3 = u_xlat2.w>=_Cutout;
					    u_xlat2 = u_xlat2 + u_xlat2;
					    u_xlat2 = u_xlat2 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat2.w = u_xlat2.w * u_xlat3.x;
					    u_xlat1.xyz = vs_COLOR0.xyz;
					    u_xlat1 = u_xlat1 * u_xlat2;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat3.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat1 = texture(_CameraDepthTexture, u_xlat3.xy);
					    u_xlat3.x = _ZBufferParams.z * u_xlat1.x + _ZBufferParams.w;
					    u_xlat3.x = float(1.0) / u_xlat3.x;
					    u_xlat3.x = u_xlat3.x + (-vs_TEXCOORD3.z);
					    u_xlat3.x = u_xlat3.x * _InvFade;
					    u_xlat3.x = clamp(u_xlat3.x, 0.0, 1.0);
					    u_xlat1.w = u_xlat3.x * vs_COLOR0.w;
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb3 = u_xlat2.w>=_Cutout;
					    u_xlat2 = u_xlat2 + u_xlat2;
					    u_xlat2 = u_xlat2 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat2.w = u_xlat2.w * u_xlat3.x;
					    u_xlat1.xyz = vs_COLOR0.xyz;
					    u_xlat1 = u_xlat1 * u_xlat2;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendMul2" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3.x;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3.x;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendMul2" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat3.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat1 = texture(_CameraDepthTexture, u_xlat3.xy);
					    u_xlat3.x = _ZBufferParams.z * u_xlat1.x + _ZBufferParams.w;
					    u_xlat3.x = float(1.0) / u_xlat3.x;
					    u_xlat3.x = u_xlat3.x + (-vs_TEXCOORD3.z);
					    u_xlat3.x = u_xlat3.x * _InvFade;
					    u_xlat3.x = clamp(u_xlat3.x, 0.0, 1.0);
					    u_xlat1.w = u_xlat3.x * vs_COLOR0.w;
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb3 = u_xlat2.w>=_Cutout;
					    u_xlat2 = u_xlat2 + u_xlat2;
					    u_xlat2 = u_xlat2 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat2.w = u_xlat2.w * u_xlat3.x;
					    u_xlat1.xyz = vs_COLOR0.xyz;
					    u_xlat1 = u_xlat1 * u_xlat2;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat3.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat1 = texture(_CameraDepthTexture, u_xlat3.xy);
					    u_xlat3.x = _ZBufferParams.z * u_xlat1.x + _ZBufferParams.w;
					    u_xlat3.x = float(1.0) / u_xlat3.x;
					    u_xlat3.x = u_xlat3.x + (-vs_TEXCOORD3.z);
					    u_xlat3.x = u_xlat3.x * _InvFade;
					    u_xlat3.x = clamp(u_xlat3.x, 0.0, 1.0);
					    u_xlat1.w = u_xlat3.x * vs_COLOR0.w;
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb3 = u_xlat2.w>=_Cutout;
					    u_xlat2 = u_xlat2 + u_xlat2;
					    u_xlat2 = u_xlat2 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat2.w = u_xlat2.w * u_xlat3.x;
					    u_xlat1.xyz = vs_COLOR0.xyz;
					    u_xlat1 = u_xlat1 * u_xlat2;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendMul2" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[7];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					bool u_xlatb2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2 = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat0.w = u_xlat0.w;
					    u_xlat0.w = clamp(u_xlat0.w, 0.0, 1.0);
					    u_xlat1 = u_xlat0 + vec4(-0.5, -0.5, -0.5, -0.5);
					    SV_Target0 = u_xlat0.wwww * u_xlat1 + vec4(0.5, 0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[6];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					bool u_xlatb2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2 = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat0.w = u_xlat0.w;
					    u_xlat0.w = clamp(u_xlat0.w, 0.0, 1.0);
					    u_xlat1 = u_xlat0 + vec4(-0.5, -0.5, -0.5, -0.5);
					    SV_Target0 = u_xlat0.wwww * u_xlat1 + vec4(0.5, 0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendMul2" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[7];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					bool u_xlatb2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2 = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat0.w = u_xlat0.w;
					    u_xlat0.w = clamp(u_xlat0.w, 0.0, 1.0);
					    u_xlat1 = u_xlat0 + vec4(-0.5, -0.5, -0.5, -0.5);
					    SV_Target0 = u_xlat0.wwww * u_xlat1 + vec4(0.5, 0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[6];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					bool u_xlatb2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2 = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat0.w = u_xlat0.w;
					    u_xlat0.w = clamp(u_xlat0.w, 0.0, 1.0);
					    u_xlat1 = u_xlat0 + vec4(-0.5, -0.5, -0.5, -0.5);
					    SV_Target0 = u_xlat0.wwww * u_xlat1 + vec4(0.5, 0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendMul2" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					bool u_xlatb2;
					float u_xlat9;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2 = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat0.w = u_xlat0.w;
					    u_xlat0.w = clamp(u_xlat0.w, 0.0, 1.0);
					    u_xlat1 = u_xlat0 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat0.xyz = u_xlat0.www * u_xlat1.xyz;
					    SV_Target0.w = u_xlat0.w * u_xlat1.w + 0.5;
					    u_xlat9 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat9 = (-u_xlat9) + 1.0;
					    u_xlat9 = u_xlat9 * _ProjectionParams.z;
					    u_xlat9 = max(u_xlat9, 0.0);
					    u_xlat9 = u_xlat9 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat9 = clamp(u_xlat9, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat9) * u_xlat0.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					bool u_xlatb2;
					float u_xlat9;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2 = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat0.w = u_xlat0.w;
					    u_xlat0.w = clamp(u_xlat0.w, 0.0, 1.0);
					    u_xlat1 = u_xlat0 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat0.xyz = u_xlat0.www * u_xlat1.xyz;
					    SV_Target0.w = u_xlat0.w * u_xlat1.w + 0.5;
					    u_xlat9 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat9 = (-u_xlat9) + 1.0;
					    u_xlat9 = u_xlat9 * _ProjectionParams.z;
					    u_xlat9 = max(u_xlat9, 0.0);
					    u_xlat9 = u_xlat9 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat9 = clamp(u_xlat9, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat9) * u_xlat0.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendMul2" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					bool u_xlatb2;
					float u_xlat9;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2 = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat0.w = u_xlat0.w;
					    u_xlat0.w = clamp(u_xlat0.w, 0.0, 1.0);
					    u_xlat1 = u_xlat0 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat0.xyz = u_xlat0.www * u_xlat1.xyz;
					    SV_Target0.w = u_xlat0.w * u_xlat1.w + 0.5;
					    u_xlat9 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat9 = (-u_xlat9) + 1.0;
					    u_xlat9 = u_xlat9 * _ProjectionParams.z;
					    u_xlat9 = max(u_xlat9, 0.0);
					    u_xlat9 = u_xlat9 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat9 = clamp(u_xlat9, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat9) * u_xlat0.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					bool u_xlatb2;
					float u_xlat9;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2 = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat0.w = u_xlat0.w;
					    u_xlat0.w = clamp(u_xlat0.w, 0.0, 1.0);
					    u_xlat1 = u_xlat0 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat0.xyz = u_xlat0.www * u_xlat1.xyz;
					    SV_Target0.w = u_xlat0.w * u_xlat1.w + 0.5;
					    u_xlat9 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat9 = (-u_xlat9) + 1.0;
					    u_xlat9 = u_xlat9 * _ProjectionParams.z;
					    u_xlat9 = max(u_xlat9, 0.0);
					    u_xlat9 = u_xlat9 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat9 = clamp(u_xlat9, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat9) * u_xlat0.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendMul2" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat3.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat1 = texture(_CameraDepthTexture, u_xlat3.xy);
					    u_xlat3.x = _ZBufferParams.z * u_xlat1.x + _ZBufferParams.w;
					    u_xlat3.x = float(1.0) / u_xlat3.x;
					    u_xlat3.x = u_xlat3.x + (-vs_TEXCOORD3.z);
					    u_xlat3.x = u_xlat3.x * _InvFade;
					    u_xlat3.x = clamp(u_xlat3.x, 0.0, 1.0);
					    u_xlat1.w = u_xlat3.x * vs_COLOR0.w;
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb3 = u_xlat2.w>=_Cutout;
					    u_xlat2 = u_xlat2 + u_xlat2;
					    u_xlat2 = u_xlat2 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat2.w = u_xlat2.w * u_xlat3.x;
					    u_xlat1.xyz = vs_COLOR0.xyz;
					    u_xlat1 = u_xlat1 * u_xlat2;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat3.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat1 = texture(_CameraDepthTexture, u_xlat3.xy);
					    u_xlat3.x = _ZBufferParams.z * u_xlat1.x + _ZBufferParams.w;
					    u_xlat3.x = float(1.0) / u_xlat3.x;
					    u_xlat3.x = u_xlat3.x + (-vs_TEXCOORD3.z);
					    u_xlat3.x = u_xlat3.x * _InvFade;
					    u_xlat3.x = clamp(u_xlat3.x, 0.0, 1.0);
					    u_xlat1.w = u_xlat3.x * vs_COLOR0.w;
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb3 = u_xlat2.w>=_Cutout;
					    u_xlat2 = u_xlat2 + u_xlat2;
					    u_xlat2 = u_xlat2 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat2.w = u_xlat2.w * u_xlat3.x;
					    u_xlat1.xyz = vs_COLOR0.xyz;
					    u_xlat1 = u_xlat1 * u_xlat2;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendMul2" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat3.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat1 = texture(_CameraDepthTexture, u_xlat3.xy);
					    u_xlat3.x = _ZBufferParams.z * u_xlat1.x + _ZBufferParams.w;
					    u_xlat3.x = float(1.0) / u_xlat3.x;
					    u_xlat3.x = u_xlat3.x + (-vs_TEXCOORD3.z);
					    u_xlat3.x = u_xlat3.x * _InvFade;
					    u_xlat3.x = clamp(u_xlat3.x, 0.0, 1.0);
					    u_xlat1.w = u_xlat3.x * vs_COLOR0.w;
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb3 = u_xlat2.w>=_Cutout;
					    u_xlat2 = u_xlat2 + u_xlat2;
					    u_xlat2 = u_xlat2 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat2.w = u_xlat2.w * u_xlat3.x;
					    u_xlat1.xyz = vs_COLOR0.xyz;
					    u_xlat1 = u_xlat1 * u_xlat2;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat3.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat1 = texture(_CameraDepthTexture, u_xlat3.xy);
					    u_xlat3.x = _ZBufferParams.z * u_xlat1.x + _ZBufferParams.w;
					    u_xlat3.x = float(1.0) / u_xlat3.x;
					    u_xlat3.x = u_xlat3.x + (-vs_TEXCOORD3.z);
					    u_xlat3.x = u_xlat3.x * _InvFade;
					    u_xlat3.x = clamp(u_xlat3.x, 0.0, 1.0);
					    u_xlat1.w = u_xlat3.x * vs_COLOR0.w;
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb3 = u_xlat2.w>=_Cutout;
					    u_xlat2 = u_xlat2 + u_xlat2;
					    u_xlat2 = u_xlat2 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat2.w = u_xlat2.w * u_xlat3.x;
					    u_xlat1.xyz = vs_COLOR0.xyz;
					    u_xlat1 = u_xlat1 * u_xlat2;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendMul2" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat3.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat1 = texture(_CameraDepthTexture, u_xlat3.xy);
					    u_xlat3.x = _ZBufferParams.z * u_xlat1.x + _ZBufferParams.w;
					    u_xlat3.x = float(1.0) / u_xlat3.x;
					    u_xlat3.x = u_xlat3.x + (-vs_TEXCOORD3.z);
					    u_xlat3.x = u_xlat3.x * _InvFade;
					    u_xlat3.x = clamp(u_xlat3.x, 0.0, 1.0);
					    u_xlat1.w = u_xlat3.x * vs_COLOR0.w;
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb3 = u_xlat2.w>=_Cutout;
					    u_xlat2 = u_xlat2 + u_xlat2;
					    u_xlat2 = u_xlat2 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat2.w = u_xlat2.w * u_xlat3.x;
					    u_xlat1.xyz = vs_COLOR0.xyz;
					    u_xlat1 = u_xlat1 * u_xlat2;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat3.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat1 = texture(_CameraDepthTexture, u_xlat3.xy);
					    u_xlat3.x = _ZBufferParams.z * u_xlat1.x + _ZBufferParams.w;
					    u_xlat3.x = float(1.0) / u_xlat3.x;
					    u_xlat3.x = u_xlat3.x + (-vs_TEXCOORD3.z);
					    u_xlat3.x = u_xlat3.x * _InvFade;
					    u_xlat3.x = clamp(u_xlat3.x, 0.0, 1.0);
					    u_xlat1.w = u_xlat3.x * vs_COLOR0.w;
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb3 = u_xlat2.w>=_Cutout;
					    u_xlat2 = u_xlat2 + u_xlat2;
					    u_xlat2 = u_xlat2 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat2.w = u_xlat2.w * u_xlat3.x;
					    u_xlat1.xyz = vs_COLOR0.xyz;
					    u_xlat1 = u_xlat1 * u_xlat2;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendMul2" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat3.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat1 = texture(_CameraDepthTexture, u_xlat3.xy);
					    u_xlat3.x = _ZBufferParams.z * u_xlat1.x + _ZBufferParams.w;
					    u_xlat3.x = float(1.0) / u_xlat3.x;
					    u_xlat3.x = u_xlat3.x + (-vs_TEXCOORD3.z);
					    u_xlat3.x = u_xlat3.x * _InvFade;
					    u_xlat3.x = clamp(u_xlat3.x, 0.0, 1.0);
					    u_xlat1.w = u_xlat3.x * vs_COLOR0.w;
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb3 = u_xlat2.w>=_Cutout;
					    u_xlat2 = u_xlat2 + u_xlat2;
					    u_xlat2 = u_xlat2 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat2.w = u_xlat2.w * u_xlat3.x;
					    u_xlat1.xyz = vs_COLOR0.xyz;
					    u_xlat1 = u_xlat1 * u_xlat2;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat3.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat1 = texture(_CameraDepthTexture, u_xlat3.xy);
					    u_xlat3.x = _ZBufferParams.z * u_xlat1.x + _ZBufferParams.w;
					    u_xlat3.x = float(1.0) / u_xlat3.x;
					    u_xlat3.x = u_xlat3.x + (-vs_TEXCOORD3.z);
					    u_xlat3.x = u_xlat3.x * _InvFade;
					    u_xlat3.x = clamp(u_xlat3.x, 0.0, 1.0);
					    u_xlat1.w = u_xlat3.x * vs_COLOR0.w;
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb3 = u_xlat2.w>=_Cutout;
					    u_xlat2 = u_xlat2 + u_xlat2;
					    u_xlat2 = u_xlat2 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat2.w = u_xlat2.w * u_xlat3.x;
					    u_xlat1.xyz = vs_COLOR0.xyz;
					    u_xlat1 = u_xlat1 * u_xlat2;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendMul2" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					bool u_xlatb1;
					float u_xlat6;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1.x = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat0.w = u_xlat0.w * u_xlat1.x;
					    u_xlat0 = u_xlat0 * vs_COLOR0;
					    u_xlat6 = u_xlat0.w;
					    u_xlat6 = clamp(u_xlat6, 0.0, 1.0);
					    u_xlat0.w = u_xlat6 * vs_TEXCOORD4;
					    u_xlat1 = u_xlat0 + vec4(-0.5, -0.5, -0.5, -0.5);
					    SV_Target0 = u_xlat0.wwww * u_xlat1 + vec4(0.5, 0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					bool u_xlatb1;
					float u_xlat6;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1.x = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat0.w = u_xlat0.w * u_xlat1.x;
					    u_xlat0 = u_xlat0 * vs_COLOR0;
					    u_xlat6 = u_xlat0.w;
					    u_xlat6 = clamp(u_xlat6, 0.0, 1.0);
					    u_xlat0.w = u_xlat6 * vs_TEXCOORD4;
					    u_xlat1 = u_xlat0 + vec4(-0.5, -0.5, -0.5, -0.5);
					    SV_Target0 = u_xlat0.wwww * u_xlat1 + vec4(0.5, 0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendMul2" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[7];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					bool u_xlatb2;
					float u_xlat9;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2 = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat9 = u_xlat0.w;
					    u_xlat9 = clamp(u_xlat9, 0.0, 1.0);
					    u_xlat0.w = u_xlat9 * vs_TEXCOORD4;
					    u_xlat1 = u_xlat0 + vec4(-0.5, -0.5, -0.5, -0.5);
					    SV_Target0 = u_xlat0.wwww * u_xlat1 + vec4(0.5, 0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[6];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					bool u_xlatb2;
					float u_xlat9;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2 = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat9 = u_xlat0.w;
					    u_xlat9 = clamp(u_xlat9, 0.0, 1.0);
					    u_xlat0.w = u_xlat9 * vs_TEXCOORD4;
					    u_xlat1 = u_xlat0 + vec4(-0.5, -0.5, -0.5, -0.5);
					    SV_Target0 = u_xlat0.wwww * u_xlat1 + vec4(0.5, 0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendMul2" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3.x;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3.x;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendMul2" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					bool u_xlatb2;
					float u_xlat9;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2 = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat9 = u_xlat0.w;
					    u_xlat9 = clamp(u_xlat9, 0.0, 1.0);
					    u_xlat0.w = u_xlat9 * vs_TEXCOORD4;
					    u_xlat1 = u_xlat0 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat0.xyz = u_xlat0.www * u_xlat1.xyz;
					    SV_Target0.w = u_xlat0.w * u_xlat1.w + 0.5;
					    u_xlat9 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat9 = (-u_xlat9) + 1.0;
					    u_xlat9 = u_xlat9 * _ProjectionParams.z;
					    u_xlat9 = max(u_xlat9, 0.0);
					    u_xlat9 = u_xlat9 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat9 = clamp(u_xlat9, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat9) * u_xlat0.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					bool u_xlatb2;
					float u_xlat9;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2 = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat9 = u_xlat0.w;
					    u_xlat9 = clamp(u_xlat9, 0.0, 1.0);
					    u_xlat0.w = u_xlat9 * vs_TEXCOORD4;
					    u_xlat1 = u_xlat0 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat0.xyz = u_xlat0.www * u_xlat1.xyz;
					    SV_Target0.w = u_xlat0.w * u_xlat1.w + 0.5;
					    u_xlat9 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat9 = (-u_xlat9) + 1.0;
					    u_xlat9 = u_xlat9 * _ProjectionParams.z;
					    u_xlat9 = max(u_xlat9, 0.0);
					    u_xlat9 = u_xlat9 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat9 = clamp(u_xlat9, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat9) * u_xlat0.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendMul2" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3.x;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3.x;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendMul2" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat3.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat1 = texture(_CameraDepthTexture, u_xlat3.xy);
					    u_xlat3.x = _ZBufferParams.z * u_xlat1.x + _ZBufferParams.w;
					    u_xlat3.x = float(1.0) / u_xlat3.x;
					    u_xlat3.x = u_xlat3.x + (-vs_TEXCOORD3.z);
					    u_xlat3.x = u_xlat3.x * _InvFade;
					    u_xlat3.x = clamp(u_xlat3.x, 0.0, 1.0);
					    u_xlat1.w = u_xlat3.x * vs_COLOR0.w;
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb3 = u_xlat2.w>=_Cutout;
					    u_xlat2 = u_xlat2 + u_xlat2;
					    u_xlat2 = u_xlat2 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat2.w = u_xlat2.w * u_xlat3.x;
					    u_xlat1.xyz = vs_COLOR0.xyz;
					    u_xlat1 = u_xlat1 * u_xlat2;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat3.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat1 = texture(_CameraDepthTexture, u_xlat3.xy);
					    u_xlat3.x = _ZBufferParams.z * u_xlat1.x + _ZBufferParams.w;
					    u_xlat3.x = float(1.0) / u_xlat3.x;
					    u_xlat3.x = u_xlat3.x + (-vs_TEXCOORD3.z);
					    u_xlat3.x = u_xlat3.x * _InvFade;
					    u_xlat3.x = clamp(u_xlat3.x, 0.0, 1.0);
					    u_xlat1.w = u_xlat3.x * vs_COLOR0.w;
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb3 = u_xlat2.w>=_Cutout;
					    u_xlat2 = u_xlat2 + u_xlat2;
					    u_xlat2 = u_xlat2 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat2.w = u_xlat2.w * u_xlat3.x;
					    u_xlat1.xyz = vs_COLOR0.xyz;
					    u_xlat1 = u_xlat1 * u_xlat2;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendMul2" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3.x;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3.x;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendMul2" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat3.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat1 = texture(_CameraDepthTexture, u_xlat3.xy);
					    u_xlat3.x = _ZBufferParams.z * u_xlat1.x + _ZBufferParams.w;
					    u_xlat3.x = float(1.0) / u_xlat3.x;
					    u_xlat3.x = u_xlat3.x + (-vs_TEXCOORD3.z);
					    u_xlat3.x = u_xlat3.x * _InvFade;
					    u_xlat3.x = clamp(u_xlat3.x, 0.0, 1.0);
					    u_xlat1.w = u_xlat3.x * vs_COLOR0.w;
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb3 = u_xlat2.w>=_Cutout;
					    u_xlat2 = u_xlat2 + u_xlat2;
					    u_xlat2 = u_xlat2 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat2.w = u_xlat2.w * u_xlat3.x;
					    u_xlat1.xyz = vs_COLOR0.xyz;
					    u_xlat1 = u_xlat1 * u_xlat2;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat3.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat1 = texture(_CameraDepthTexture, u_xlat3.xy);
					    u_xlat3.x = _ZBufferParams.z * u_xlat1.x + _ZBufferParams.w;
					    u_xlat3.x = float(1.0) / u_xlat3.x;
					    u_xlat3.x = u_xlat3.x + (-vs_TEXCOORD3.z);
					    u_xlat3.x = u_xlat3.x * _InvFade;
					    u_xlat3.x = clamp(u_xlat3.x, 0.0, 1.0);
					    u_xlat1.w = u_xlat3.x * vs_COLOR0.w;
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb3 = u_xlat2.w>=_Cutout;
					    u_xlat2 = u_xlat2 + u_xlat2;
					    u_xlat2 = u_xlat2 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat2.w = u_xlat2.w * u_xlat3.x;
					    u_xlat1.xyz = vs_COLOR0.xyz;
					    u_xlat1 = u_xlat1 * u_xlat2;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendMul2" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[7];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					bool u_xlatb2;
					float u_xlat9;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2 = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat9 = u_xlat0.w;
					    u_xlat9 = clamp(u_xlat9, 0.0, 1.0);
					    u_xlat0.w = u_xlat9 * vs_TEXCOORD4;
					    u_xlat1 = u_xlat0 + vec4(-0.5, -0.5, -0.5, -0.5);
					    SV_Target0 = u_xlat0.wwww * u_xlat1 + vec4(0.5, 0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[6];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					bool u_xlatb2;
					float u_xlat9;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2 = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat9 = u_xlat0.w;
					    u_xlat9 = clamp(u_xlat9, 0.0, 1.0);
					    u_xlat0.w = u_xlat9 * vs_TEXCOORD4;
					    u_xlat1 = u_xlat0 + vec4(-0.5, -0.5, -0.5, -0.5);
					    SV_Target0 = u_xlat0.wwww * u_xlat1 + vec4(0.5, 0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendMul2" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[7];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					bool u_xlatb2;
					float u_xlat9;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2 = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat9 = u_xlat0.w;
					    u_xlat9 = clamp(u_xlat9, 0.0, 1.0);
					    u_xlat0.w = u_xlat9 * vs_TEXCOORD4;
					    u_xlat1 = u_xlat0 + vec4(-0.5, -0.5, -0.5, -0.5);
					    SV_Target0 = u_xlat0.wwww * u_xlat1 + vec4(0.5, 0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[6];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					bool u_xlatb2;
					float u_xlat9;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2 = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat9 = u_xlat0.w;
					    u_xlat9 = clamp(u_xlat9, 0.0, 1.0);
					    u_xlat0.w = u_xlat9 * vs_TEXCOORD4;
					    u_xlat1 = u_xlat0 + vec4(-0.5, -0.5, -0.5, -0.5);
					    SV_Target0 = u_xlat0.wwww * u_xlat1 + vec4(0.5, 0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendMul2" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					bool u_xlatb2;
					float u_xlat9;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2 = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat9 = u_xlat0.w;
					    u_xlat9 = clamp(u_xlat9, 0.0, 1.0);
					    u_xlat0.w = u_xlat9 * vs_TEXCOORD4;
					    u_xlat1 = u_xlat0 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat0.xyz = u_xlat0.www * u_xlat1.xyz;
					    SV_Target0.w = u_xlat0.w * u_xlat1.w + 0.5;
					    u_xlat9 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat9 = (-u_xlat9) + 1.0;
					    u_xlat9 = u_xlat9 * _ProjectionParams.z;
					    u_xlat9 = max(u_xlat9, 0.0);
					    u_xlat9 = u_xlat9 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat9 = clamp(u_xlat9, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat9) * u_xlat0.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					bool u_xlatb2;
					float u_xlat9;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2 = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat9 = u_xlat0.w;
					    u_xlat9 = clamp(u_xlat9, 0.0, 1.0);
					    u_xlat0.w = u_xlat9 * vs_TEXCOORD4;
					    u_xlat1 = u_xlat0 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat0.xyz = u_xlat0.www * u_xlat1.xyz;
					    SV_Target0.w = u_xlat0.w * u_xlat1.w + 0.5;
					    u_xlat9 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat9 = (-u_xlat9) + 1.0;
					    u_xlat9 = u_xlat9 * _ProjectionParams.z;
					    u_xlat9 = max(u_xlat9, 0.0);
					    u_xlat9 = u_xlat9 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat9 = clamp(u_xlat9, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat9) * u_xlat0.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendMul2" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					bool u_xlatb2;
					float u_xlat9;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2 = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat9 = u_xlat0.w;
					    u_xlat9 = clamp(u_xlat9, 0.0, 1.0);
					    u_xlat0.w = u_xlat9 * vs_TEXCOORD4;
					    u_xlat1 = u_xlat0 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat0.xyz = u_xlat0.www * u_xlat1.xyz;
					    SV_Target0.w = u_xlat0.w * u_xlat1.w + 0.5;
					    u_xlat9 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat9 = (-u_xlat9) + 1.0;
					    u_xlat9 = u_xlat9 * _ProjectionParams.z;
					    u_xlat9 = max(u_xlat9, 0.0);
					    u_xlat9 = u_xlat9 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat9 = clamp(u_xlat9, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat9) * u_xlat0.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					bool u_xlatb2;
					float u_xlat9;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2 = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat9 = u_xlat0.w;
					    u_xlat9 = clamp(u_xlat9, 0.0, 1.0);
					    u_xlat0.w = u_xlat9 * vs_TEXCOORD4;
					    u_xlat1 = u_xlat0 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat0.xyz = u_xlat0.www * u_xlat1.xyz;
					    SV_Target0.w = u_xlat0.w * u_xlat1.w + 0.5;
					    u_xlat9 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat9 = (-u_xlat9) + 1.0;
					    u_xlat9 = u_xlat9 * _ProjectionParams.z;
					    u_xlat9 = max(u_xlat9, 0.0);
					    u_xlat9 = u_xlat9 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat9 = clamp(u_xlat9, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat9) * u_xlat0.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendMul2" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat3.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat1 = texture(_CameraDepthTexture, u_xlat3.xy);
					    u_xlat3.x = _ZBufferParams.z * u_xlat1.x + _ZBufferParams.w;
					    u_xlat3.x = float(1.0) / u_xlat3.x;
					    u_xlat3.x = u_xlat3.x + (-vs_TEXCOORD3.z);
					    u_xlat3.x = u_xlat3.x * _InvFade;
					    u_xlat3.x = clamp(u_xlat3.x, 0.0, 1.0);
					    u_xlat1.w = u_xlat3.x * vs_COLOR0.w;
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb3 = u_xlat2.w>=_Cutout;
					    u_xlat2 = u_xlat2 + u_xlat2;
					    u_xlat2 = u_xlat2 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat2.w = u_xlat2.w * u_xlat3.x;
					    u_xlat1.xyz = vs_COLOR0.xyz;
					    u_xlat1 = u_xlat1 * u_xlat2;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat3.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat1 = texture(_CameraDepthTexture, u_xlat3.xy);
					    u_xlat3.x = _ZBufferParams.z * u_xlat1.x + _ZBufferParams.w;
					    u_xlat3.x = float(1.0) / u_xlat3.x;
					    u_xlat3.x = u_xlat3.x + (-vs_TEXCOORD3.z);
					    u_xlat3.x = u_xlat3.x * _InvFade;
					    u_xlat3.x = clamp(u_xlat3.x, 0.0, 1.0);
					    u_xlat1.w = u_xlat3.x * vs_COLOR0.w;
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb3 = u_xlat2.w>=_Cutout;
					    u_xlat2 = u_xlat2 + u_xlat2;
					    u_xlat2 = u_xlat2 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat2.w = u_xlat2.w * u_xlat3.x;
					    u_xlat1.xyz = vs_COLOR0.xyz;
					    u_xlat1 = u_xlat1 * u_xlat2;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendMul2" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat3.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat1 = texture(_CameraDepthTexture, u_xlat3.xy);
					    u_xlat3.x = _ZBufferParams.z * u_xlat1.x + _ZBufferParams.w;
					    u_xlat3.x = float(1.0) / u_xlat3.x;
					    u_xlat3.x = u_xlat3.x + (-vs_TEXCOORD3.z);
					    u_xlat3.x = u_xlat3.x * _InvFade;
					    u_xlat3.x = clamp(u_xlat3.x, 0.0, 1.0);
					    u_xlat1.w = u_xlat3.x * vs_COLOR0.w;
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb3 = u_xlat2.w>=_Cutout;
					    u_xlat2 = u_xlat2 + u_xlat2;
					    u_xlat2 = u_xlat2 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat2.w = u_xlat2.w * u_xlat3.x;
					    u_xlat1.xyz = vs_COLOR0.xyz;
					    u_xlat1 = u_xlat1 * u_xlat2;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat3.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat1 = texture(_CameraDepthTexture, u_xlat3.xy);
					    u_xlat3.x = _ZBufferParams.z * u_xlat1.x + _ZBufferParams.w;
					    u_xlat3.x = float(1.0) / u_xlat3.x;
					    u_xlat3.x = u_xlat3.x + (-vs_TEXCOORD3.z);
					    u_xlat3.x = u_xlat3.x * _InvFade;
					    u_xlat3.x = clamp(u_xlat3.x, 0.0, 1.0);
					    u_xlat1.w = u_xlat3.x * vs_COLOR0.w;
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb3 = u_xlat2.w>=_Cutout;
					    u_xlat2 = u_xlat2 + u_xlat2;
					    u_xlat2 = u_xlat2 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat2.w = u_xlat2.w * u_xlat3.x;
					    u_xlat1.xyz = vs_COLOR0.xyz;
					    u_xlat1 = u_xlat1 * u_xlat2;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendMul2" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat3.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat1 = texture(_CameraDepthTexture, u_xlat3.xy);
					    u_xlat3.x = _ZBufferParams.z * u_xlat1.x + _ZBufferParams.w;
					    u_xlat3.x = float(1.0) / u_xlat3.x;
					    u_xlat3.x = u_xlat3.x + (-vs_TEXCOORD3.z);
					    u_xlat3.x = u_xlat3.x * _InvFade;
					    u_xlat3.x = clamp(u_xlat3.x, 0.0, 1.0);
					    u_xlat1.w = u_xlat3.x * vs_COLOR0.w;
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb3 = u_xlat2.w>=_Cutout;
					    u_xlat2 = u_xlat2 + u_xlat2;
					    u_xlat2 = u_xlat2 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat2.w = u_xlat2.w * u_xlat3.x;
					    u_xlat1.xyz = vs_COLOR0.xyz;
					    u_xlat1 = u_xlat1 * u_xlat2;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat3.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat1 = texture(_CameraDepthTexture, u_xlat3.xy);
					    u_xlat3.x = _ZBufferParams.z * u_xlat1.x + _ZBufferParams.w;
					    u_xlat3.x = float(1.0) / u_xlat3.x;
					    u_xlat3.x = u_xlat3.x + (-vs_TEXCOORD3.z);
					    u_xlat3.x = u_xlat3.x * _InvFade;
					    u_xlat3.x = clamp(u_xlat3.x, 0.0, 1.0);
					    u_xlat1.w = u_xlat3.x * vs_COLOR0.w;
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb3 = u_xlat2.w>=_Cutout;
					    u_xlat2 = u_xlat2 + u_xlat2;
					    u_xlat2 = u_xlat2 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat2.w = u_xlat2.w * u_xlat3.x;
					    u_xlat1.xyz = vs_COLOR0.xyz;
					    u_xlat1 = u_xlat1 * u_xlat2;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendMul2" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat3.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat1 = texture(_CameraDepthTexture, u_xlat3.xy);
					    u_xlat3.x = _ZBufferParams.z * u_xlat1.x + _ZBufferParams.w;
					    u_xlat3.x = float(1.0) / u_xlat3.x;
					    u_xlat3.x = u_xlat3.x + (-vs_TEXCOORD3.z);
					    u_xlat3.x = u_xlat3.x * _InvFade;
					    u_xlat3.x = clamp(u_xlat3.x, 0.0, 1.0);
					    u_xlat1.w = u_xlat3.x * vs_COLOR0.w;
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb3 = u_xlat2.w>=_Cutout;
					    u_xlat2 = u_xlat2 + u_xlat2;
					    u_xlat2 = u_xlat2 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat2.w = u_xlat2.w * u_xlat3.x;
					    u_xlat1.xyz = vs_COLOR0.xyz;
					    u_xlat1 = u_xlat1 * u_xlat2;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat3.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat1 = texture(_CameraDepthTexture, u_xlat3.xy);
					    u_xlat3.x = _ZBufferParams.z * u_xlat1.x + _ZBufferParams.w;
					    u_xlat3.x = float(1.0) / u_xlat3.x;
					    u_xlat3.x = u_xlat3.x + (-vs_TEXCOORD3.z);
					    u_xlat3.x = u_xlat3.x * _InvFade;
					    u_xlat3.x = clamp(u_xlat3.x, 0.0, 1.0);
					    u_xlat1.w = u_xlat3.x * vs_COLOR0.w;
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb3 = u_xlat2.w>=_Cutout;
					    u_xlat2 = u_xlat2 + u_xlat2;
					    u_xlat2 = u_xlat2 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat2.w = u_xlat2.w * u_xlat3.x;
					    u_xlat1.xyz = vs_COLOR0.xyz;
					    u_xlat1 = u_xlat1 * u_xlat2;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendMul2" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0.xyz = u_xlat0.xyz + u_xlat0.xyz;
					    u_xlat0.xyz = u_xlat0.xyz * _TintColor.xyz;
					    u_xlat1.xyz = u_xlat0.xyz * vs_COLOR0.xyz;
					    u_xlat0.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlatb0 = u_xlat0.w>=u_xlat0.x;
					    u_xlat1.w = u_xlatb0 ? 1.0 : float(0.0);
					    u_xlat0 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    SV_Target0 = u_xlat1.wwww * u_xlat0 + vec4(0.5, 0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0.xyz = u_xlat0.xyz + u_xlat0.xyz;
					    u_xlat0.xyz = u_xlat0.xyz * _TintColor.xyz;
					    u_xlat1.xyz = u_xlat0.xyz * vs_COLOR0.xyz;
					    u_xlat0.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlatb0 = u_xlat0.w>=u_xlat0.x;
					    u_xlat1.w = u_xlatb0 ? 1.0 : float(0.0);
					    u_xlat0 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    SV_Target0 = u_xlat1.wwww * u_xlat0 + vec4(0.5, 0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendMul2" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[7];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb0 = u_xlat1.w>=u_xlat0.x;
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    u_xlat1.xyz = u_xlat2.xyz * vs_COLOR0.xyz;
					    u_xlat1.w = u_xlatb0 ? 1.0 : float(0.0);
					    u_xlat0 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    SV_Target0 = u_xlat1.wwww * u_xlat0 + vec4(0.5, 0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[6];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb0 = u_xlat1.w>=u_xlat0.x;
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    u_xlat1.xyz = u_xlat2.xyz * vs_COLOR0.xyz;
					    u_xlat1.w = u_xlatb0 ? 1.0 : float(0.0);
					    u_xlat0 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    SV_Target0 = u_xlat1.wwww * u_xlat0 + vec4(0.5, 0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendMul2" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat2.w = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1 = u_xlat2 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat2.w = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1 = u_xlat2 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendMul2" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat3.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat1 = texture(_CameraDepthTexture, u_xlat3.xy);
					    u_xlat3.x = _ZBufferParams.z * u_xlat1.x + _ZBufferParams.w;
					    u_xlat3.x = float(1.0) / u_xlat3.x;
					    u_xlat3.x = u_xlat3.x + (-vs_TEXCOORD3.z);
					    u_xlat3.x = u_xlat3.x * _InvFade;
					    u_xlat3.x = clamp(u_xlat3.x, 0.0, 1.0);
					    u_xlat3.x = (-vs_COLOR0.w) * u_xlat3.x + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat1.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz * _TintColor.xyz;
					    u_xlat1.xyz = u_xlat1.xyz * vs_COLOR0.xyz;
					    u_xlat1.w = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat3.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat1 = texture(_CameraDepthTexture, u_xlat3.xy);
					    u_xlat3.x = _ZBufferParams.z * u_xlat1.x + _ZBufferParams.w;
					    u_xlat3.x = float(1.0) / u_xlat3.x;
					    u_xlat3.x = u_xlat3.x + (-vs_TEXCOORD3.z);
					    u_xlat3.x = u_xlat3.x * _InvFade;
					    u_xlat3.x = clamp(u_xlat3.x, 0.0, 1.0);
					    u_xlat3.x = (-vs_COLOR0.w) * u_xlat3.x + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat1.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz * _TintColor.xyz;
					    u_xlat1.xyz = u_xlat1.xyz * vs_COLOR0.xyz;
					    u_xlat1.w = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendMul2" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat2.w = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1 = u_xlat2 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat2.w = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1 = u_xlat2 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendMul2" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat3.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat1 = texture(_CameraDepthTexture, u_xlat3.xy);
					    u_xlat3.x = _ZBufferParams.z * u_xlat1.x + _ZBufferParams.w;
					    u_xlat3.x = float(1.0) / u_xlat3.x;
					    u_xlat3.x = u_xlat3.x + (-vs_TEXCOORD3.z);
					    u_xlat3.x = u_xlat3.x * _InvFade;
					    u_xlat3.x = clamp(u_xlat3.x, 0.0, 1.0);
					    u_xlat3.x = (-vs_COLOR0.w) * u_xlat3.x + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat1.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz * _TintColor.xyz;
					    u_xlat1.xyz = u_xlat1.xyz * vs_COLOR0.xyz;
					    u_xlat1.w = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat3.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat1 = texture(_CameraDepthTexture, u_xlat3.xy);
					    u_xlat3.x = _ZBufferParams.z * u_xlat1.x + _ZBufferParams.w;
					    u_xlat3.x = float(1.0) / u_xlat3.x;
					    u_xlat3.x = u_xlat3.x + (-vs_TEXCOORD3.z);
					    u_xlat3.x = u_xlat3.x * _InvFade;
					    u_xlat3.x = clamp(u_xlat3.x, 0.0, 1.0);
					    u_xlat3.x = (-vs_COLOR0.w) * u_xlat3.x + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat1.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz * _TintColor.xyz;
					    u_xlat1.xyz = u_xlat1.xyz * vs_COLOR0.xyz;
					    u_xlat1.w = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendMul2" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat2.w = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1 = u_xlat2 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat2.w = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1 = u_xlat2 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendMul2" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat3.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat1 = texture(_CameraDepthTexture, u_xlat3.xy);
					    u_xlat3.x = _ZBufferParams.z * u_xlat1.x + _ZBufferParams.w;
					    u_xlat3.x = float(1.0) / u_xlat3.x;
					    u_xlat3.x = u_xlat3.x + (-vs_TEXCOORD3.z);
					    u_xlat3.x = u_xlat3.x * _InvFade;
					    u_xlat3.x = clamp(u_xlat3.x, 0.0, 1.0);
					    u_xlat3.x = (-vs_COLOR0.w) * u_xlat3.x + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat1.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz * _TintColor.xyz;
					    u_xlat1.xyz = u_xlat1.xyz * vs_COLOR0.xyz;
					    u_xlat1.w = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat3.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat1 = texture(_CameraDepthTexture, u_xlat3.xy);
					    u_xlat3.x = _ZBufferParams.z * u_xlat1.x + _ZBufferParams.w;
					    u_xlat3.x = float(1.0) / u_xlat3.x;
					    u_xlat3.x = u_xlat3.x + (-vs_TEXCOORD3.z);
					    u_xlat3.x = u_xlat3.x * _InvFade;
					    u_xlat3.x = clamp(u_xlat3.x, 0.0, 1.0);
					    u_xlat3.x = (-vs_COLOR0.w) * u_xlat3.x + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat1.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz * _TintColor.xyz;
					    u_xlat1.xyz = u_xlat1.xyz * vs_COLOR0.xyz;
					    u_xlat1.w = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendMul2" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[7];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb0 = u_xlat1.w>=u_xlat0.x;
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    u_xlat1.xyz = u_xlat2.xyz * vs_COLOR0.xyz;
					    u_xlat1.w = u_xlatb0 ? 1.0 : float(0.0);
					    u_xlat0 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    SV_Target0 = u_xlat1.wwww * u_xlat0 + vec4(0.5, 0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[6];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb0 = u_xlat1.w>=u_xlat0.x;
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    u_xlat1.xyz = u_xlat2.xyz * vs_COLOR0.xyz;
					    u_xlat1.w = u_xlatb0 ? 1.0 : float(0.0);
					    u_xlat0 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    SV_Target0 = u_xlat1.wwww * u_xlat0 + vec4(0.5, 0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendMul2" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[7];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb0 = u_xlat1.w>=u_xlat0.x;
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    u_xlat1.xyz = u_xlat2.xyz * vs_COLOR0.xyz;
					    u_xlat1.w = u_xlatb0 ? 1.0 : float(0.0);
					    u_xlat0 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    SV_Target0 = u_xlat1.wwww * u_xlat0 + vec4(0.5, 0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[6];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb0 = u_xlat1.w>=u_xlat0.x;
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    u_xlat1.xyz = u_xlat2.xyz * vs_COLOR0.xyz;
					    u_xlat1.w = u_xlatb0 ? 1.0 : float(0.0);
					    u_xlat0 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    SV_Target0 = u_xlat1.wwww * u_xlat0 + vec4(0.5, 0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendMul2" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat3.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat1 = texture(_CameraDepthTexture, u_xlat3.xy);
					    u_xlat3.x = _ZBufferParams.z * u_xlat1.x + _ZBufferParams.w;
					    u_xlat3.x = float(1.0) / u_xlat3.x;
					    u_xlat3.x = u_xlat3.x + (-vs_TEXCOORD3.z);
					    u_xlat3.x = u_xlat3.x * _InvFade;
					    u_xlat3.x = clamp(u_xlat3.x, 0.0, 1.0);
					    u_xlat3.x = (-vs_COLOR0.w) * u_xlat3.x + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat1.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz * _TintColor.xyz;
					    u_xlat1.xyz = u_xlat1.xyz * vs_COLOR0.xyz;
					    u_xlat1.w = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat3.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat1 = texture(_CameraDepthTexture, u_xlat3.xy);
					    u_xlat3.x = _ZBufferParams.z * u_xlat1.x + _ZBufferParams.w;
					    u_xlat3.x = float(1.0) / u_xlat3.x;
					    u_xlat3.x = u_xlat3.x + (-vs_TEXCOORD3.z);
					    u_xlat3.x = u_xlat3.x * _InvFade;
					    u_xlat3.x = clamp(u_xlat3.x, 0.0, 1.0);
					    u_xlat3.x = (-vs_COLOR0.w) * u_xlat3.x + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat1.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz * _TintColor.xyz;
					    u_xlat1.xyz = u_xlat1.xyz * vs_COLOR0.xyz;
					    u_xlat1.w = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendMul2" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat3.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat1 = texture(_CameraDepthTexture, u_xlat3.xy);
					    u_xlat3.x = _ZBufferParams.z * u_xlat1.x + _ZBufferParams.w;
					    u_xlat3.x = float(1.0) / u_xlat3.x;
					    u_xlat3.x = u_xlat3.x + (-vs_TEXCOORD3.z);
					    u_xlat3.x = u_xlat3.x * _InvFade;
					    u_xlat3.x = clamp(u_xlat3.x, 0.0, 1.0);
					    u_xlat3.x = (-vs_COLOR0.w) * u_xlat3.x + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat1.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz * _TintColor.xyz;
					    u_xlat1.xyz = u_xlat1.xyz * vs_COLOR0.xyz;
					    u_xlat1.w = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat3.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat1 = texture(_CameraDepthTexture, u_xlat3.xy);
					    u_xlat3.x = _ZBufferParams.z * u_xlat1.x + _ZBufferParams.w;
					    u_xlat3.x = float(1.0) / u_xlat3.x;
					    u_xlat3.x = u_xlat3.x + (-vs_TEXCOORD3.z);
					    u_xlat3.x = u_xlat3.x * _InvFade;
					    u_xlat3.x = clamp(u_xlat3.x, 0.0, 1.0);
					    u_xlat3.x = (-vs_COLOR0.w) * u_xlat3.x + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat1.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz * _TintColor.xyz;
					    u_xlat1.xyz = u_xlat1.xyz * vs_COLOR0.xyz;
					    u_xlat1.w = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendMul2" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat3.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat1 = texture(_CameraDepthTexture, u_xlat3.xy);
					    u_xlat3.x = _ZBufferParams.z * u_xlat1.x + _ZBufferParams.w;
					    u_xlat3.x = float(1.0) / u_xlat3.x;
					    u_xlat3.x = u_xlat3.x + (-vs_TEXCOORD3.z);
					    u_xlat3.x = u_xlat3.x * _InvFade;
					    u_xlat3.x = clamp(u_xlat3.x, 0.0, 1.0);
					    u_xlat3.x = (-vs_COLOR0.w) * u_xlat3.x + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat1.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz * _TintColor.xyz;
					    u_xlat1.xyz = u_xlat1.xyz * vs_COLOR0.xyz;
					    u_xlat1.w = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat3.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat1 = texture(_CameraDepthTexture, u_xlat3.xy);
					    u_xlat3.x = _ZBufferParams.z * u_xlat1.x + _ZBufferParams.w;
					    u_xlat3.x = float(1.0) / u_xlat3.x;
					    u_xlat3.x = u_xlat3.x + (-vs_TEXCOORD3.z);
					    u_xlat3.x = u_xlat3.x * _InvFade;
					    u_xlat3.x = clamp(u_xlat3.x, 0.0, 1.0);
					    u_xlat3.x = (-vs_COLOR0.w) * u_xlat3.x + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat1.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz * _TintColor.xyz;
					    u_xlat1.xyz = u_xlat1.xyz * vs_COLOR0.xyz;
					    u_xlat1.w = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendMul2" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat3.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat1 = texture(_CameraDepthTexture, u_xlat3.xy);
					    u_xlat3.x = _ZBufferParams.z * u_xlat1.x + _ZBufferParams.w;
					    u_xlat3.x = float(1.0) / u_xlat3.x;
					    u_xlat3.x = u_xlat3.x + (-vs_TEXCOORD3.z);
					    u_xlat3.x = u_xlat3.x * _InvFade;
					    u_xlat3.x = clamp(u_xlat3.x, 0.0, 1.0);
					    u_xlat3.x = (-vs_COLOR0.w) * u_xlat3.x + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat1.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz * _TintColor.xyz;
					    u_xlat1.xyz = u_xlat1.xyz * vs_COLOR0.xyz;
					    u_xlat1.w = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat3.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat1 = texture(_CameraDepthTexture, u_xlat3.xy);
					    u_xlat3.x = _ZBufferParams.z * u_xlat1.x + _ZBufferParams.w;
					    u_xlat3.x = float(1.0) / u_xlat3.x;
					    u_xlat3.x = u_xlat3.x + (-vs_TEXCOORD3.z);
					    u_xlat3.x = u_xlat3.x * _InvFade;
					    u_xlat3.x = clamp(u_xlat3.x, 0.0, 1.0);
					    u_xlat3.x = (-vs_COLOR0.w) * u_xlat3.x + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat1.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz * _TintColor.xyz;
					    u_xlat1.xyz = u_xlat1.xyz * vs_COLOR0.xyz;
					    u_xlat1.w = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendMul2" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat3.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat1 = texture(_CameraDepthTexture, u_xlat3.xy);
					    u_xlat3.x = _ZBufferParams.z * u_xlat1.x + _ZBufferParams.w;
					    u_xlat3.x = float(1.0) / u_xlat3.x;
					    u_xlat3.x = u_xlat3.x + (-vs_TEXCOORD3.z);
					    u_xlat3.x = u_xlat3.x * _InvFade;
					    u_xlat3.x = clamp(u_xlat3.x, 0.0, 1.0);
					    u_xlat3.x = (-vs_COLOR0.w) * u_xlat3.x + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat1.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz * _TintColor.xyz;
					    u_xlat1.xyz = u_xlat1.xyz * vs_COLOR0.xyz;
					    u_xlat1.w = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat3.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat1 = texture(_CameraDepthTexture, u_xlat3.xy);
					    u_xlat3.x = _ZBufferParams.z * u_xlat1.x + _ZBufferParams.w;
					    u_xlat3.x = float(1.0) / u_xlat3.x;
					    u_xlat3.x = u_xlat3.x + (-vs_TEXCOORD3.z);
					    u_xlat3.x = u_xlat3.x * _InvFade;
					    u_xlat3.x = clamp(u_xlat3.x, 0.0, 1.0);
					    u_xlat3.x = (-vs_COLOR0.w) * u_xlat3.x + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat1.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz * _TintColor.xyz;
					    u_xlat1.xyz = u_xlat1.xyz * vs_COLOR0.xyz;
					    u_xlat1.w = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendMul2" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat3.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat1 = texture(_CameraDepthTexture, u_xlat3.xy);
					    u_xlat3.x = _ZBufferParams.z * u_xlat1.x + _ZBufferParams.w;
					    u_xlat3.x = float(1.0) / u_xlat3.x;
					    u_xlat3.x = u_xlat3.x + (-vs_TEXCOORD3.z);
					    u_xlat3.x = u_xlat3.x * _InvFade;
					    u_xlat3.x = clamp(u_xlat3.x, 0.0, 1.0);
					    u_xlat3.x = (-vs_COLOR0.w) * u_xlat3.x + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat1.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz * _TintColor.xyz;
					    u_xlat1.xyz = u_xlat1.xyz * vs_COLOR0.xyz;
					    u_xlat1.w = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat3.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat1 = texture(_CameraDepthTexture, u_xlat3.xy);
					    u_xlat3.x = _ZBufferParams.z * u_xlat1.x + _ZBufferParams.w;
					    u_xlat3.x = float(1.0) / u_xlat3.x;
					    u_xlat3.x = u_xlat3.x + (-vs_TEXCOORD3.z);
					    u_xlat3.x = u_xlat3.x * _InvFade;
					    u_xlat3.x = clamp(u_xlat3.x, 0.0, 1.0);
					    u_xlat3.x = (-vs_COLOR0.w) * u_xlat3.x + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat1.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz * _TintColor.xyz;
					    u_xlat1.xyz = u_xlat1.xyz * vs_COLOR0.xyz;
					    u_xlat1.w = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendMul2" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0.xyz = u_xlat0.xyz + u_xlat0.xyz;
					    u_xlat0.xyz = u_xlat0.xyz * _TintColor.xyz;
					    u_xlat1.xyz = u_xlat0.xyz * vs_COLOR0.xyz;
					    u_xlat0.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlatb0 = u_xlat0.w>=u_xlat0.x;
					    u_xlat0.x = u_xlatb0 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat0.x * vs_TEXCOORD4;
					    u_xlat0 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    SV_Target0 = u_xlat1.wwww * u_xlat0 + vec4(0.5, 0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0.xyz = u_xlat0.xyz + u_xlat0.xyz;
					    u_xlat0.xyz = u_xlat0.xyz * _TintColor.xyz;
					    u_xlat1.xyz = u_xlat0.xyz * vs_COLOR0.xyz;
					    u_xlat0.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlatb0 = u_xlat0.w>=u_xlat0.x;
					    u_xlat0.x = u_xlatb0 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat0.x * vs_TEXCOORD4;
					    u_xlat0 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    SV_Target0 = u_xlat1.wwww * u_xlat0 + vec4(0.5, 0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendMul2" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[7];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb0 = u_xlat1.w>=u_xlat0.x;
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    u_xlat1.xyz = u_xlat2.xyz * vs_COLOR0.xyz;
					    u_xlat0.x = u_xlatb0 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat0.x * vs_TEXCOORD4;
					    u_xlat0 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    SV_Target0 = u_xlat1.wwww * u_xlat0 + vec4(0.5, 0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[6];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb0 = u_xlat1.w>=u_xlat0.x;
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    u_xlat1.xyz = u_xlat2.xyz * vs_COLOR0.xyz;
					    u_xlat0.x = u_xlatb0 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat0.x * vs_TEXCOORD4;
					    u_xlat0 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    SV_Target0 = u_xlat1.wwww * u_xlat0 + vec4(0.5, 0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendMul2" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat2.w = u_xlat3.x * vs_TEXCOORD4;
					    u_xlat1 = u_xlat2 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat2.w = u_xlat3.x * vs_TEXCOORD4;
					    u_xlat1 = u_xlat2 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendMul2" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					float u_xlat6;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb0 = u_xlat1.w>=u_xlat0.x;
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    u_xlat1.xyz = u_xlat2.xyz * vs_COLOR0.xyz;
					    u_xlat0.x = u_xlatb0 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat0.x * vs_TEXCOORD4;
					    u_xlat0 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat0.xyz = u_xlat0.xyz * u_xlat1.www;
					    SV_Target0.w = u_xlat1.w * u_xlat0.w + 0.5;
					    u_xlat6 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat6 = (-u_xlat6) + 1.0;
					    u_xlat6 = u_xlat6 * _ProjectionParams.z;
					    u_xlat6 = max(u_xlat6, 0.0);
					    u_xlat6 = u_xlat6 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat6 = clamp(u_xlat6, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat6) * u_xlat0.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					float u_xlat6;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb0 = u_xlat1.w>=u_xlat0.x;
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    u_xlat1.xyz = u_xlat2.xyz * vs_COLOR0.xyz;
					    u_xlat0.x = u_xlatb0 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat0.x * vs_TEXCOORD4;
					    u_xlat0 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat0.xyz = u_xlat0.xyz * u_xlat1.www;
					    SV_Target0.w = u_xlat1.w * u_xlat0.w + 0.5;
					    u_xlat6 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat6 = (-u_xlat6) + 1.0;
					    u_xlat6 = u_xlat6 * _ProjectionParams.z;
					    u_xlat6 = max(u_xlat6, 0.0);
					    u_xlat6 = u_xlat6 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat6 = clamp(u_xlat6, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat6) * u_xlat0.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendMul2" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat2.w = u_xlat3.x * vs_TEXCOORD4;
					    u_xlat1 = u_xlat2 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat2.w = u_xlat3.x * vs_TEXCOORD4;
					    u_xlat1 = u_xlat2 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendMul2" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat3.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat1 = texture(_CameraDepthTexture, u_xlat3.xy);
					    u_xlat3.x = _ZBufferParams.z * u_xlat1.x + _ZBufferParams.w;
					    u_xlat3.x = float(1.0) / u_xlat3.x;
					    u_xlat3.x = u_xlat3.x + (-vs_TEXCOORD3.z);
					    u_xlat3.x = u_xlat3.x * _InvFade;
					    u_xlat3.x = clamp(u_xlat3.x, 0.0, 1.0);
					    u_xlat3.x = (-vs_COLOR0.w) * u_xlat3.x + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat1.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz * _TintColor.xyz;
					    u_xlat1.xyz = u_xlat1.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat3.x * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat3.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat1 = texture(_CameraDepthTexture, u_xlat3.xy);
					    u_xlat3.x = _ZBufferParams.z * u_xlat1.x + _ZBufferParams.w;
					    u_xlat3.x = float(1.0) / u_xlat3.x;
					    u_xlat3.x = u_xlat3.x + (-vs_TEXCOORD3.z);
					    u_xlat3.x = u_xlat3.x * _InvFade;
					    u_xlat3.x = clamp(u_xlat3.x, 0.0, 1.0);
					    u_xlat3.x = (-vs_COLOR0.w) * u_xlat3.x + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat1.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz * _TintColor.xyz;
					    u_xlat1.xyz = u_xlat1.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat3.x * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendMul2" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat2.w = u_xlat3.x * vs_TEXCOORD4;
					    u_xlat1 = u_xlat2 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat2.w = u_xlat3.x * vs_TEXCOORD4;
					    u_xlat1 = u_xlat2 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendMul2" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat3.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat1 = texture(_CameraDepthTexture, u_xlat3.xy);
					    u_xlat3.x = _ZBufferParams.z * u_xlat1.x + _ZBufferParams.w;
					    u_xlat3.x = float(1.0) / u_xlat3.x;
					    u_xlat3.x = u_xlat3.x + (-vs_TEXCOORD3.z);
					    u_xlat3.x = u_xlat3.x * _InvFade;
					    u_xlat3.x = clamp(u_xlat3.x, 0.0, 1.0);
					    u_xlat3.x = (-vs_COLOR0.w) * u_xlat3.x + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat1.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz * _TintColor.xyz;
					    u_xlat1.xyz = u_xlat1.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat3.x * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat3.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat1 = texture(_CameraDepthTexture, u_xlat3.xy);
					    u_xlat3.x = _ZBufferParams.z * u_xlat1.x + _ZBufferParams.w;
					    u_xlat3.x = float(1.0) / u_xlat3.x;
					    u_xlat3.x = u_xlat3.x + (-vs_TEXCOORD3.z);
					    u_xlat3.x = u_xlat3.x * _InvFade;
					    u_xlat3.x = clamp(u_xlat3.x, 0.0, 1.0);
					    u_xlat3.x = (-vs_COLOR0.w) * u_xlat3.x + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat1.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz * _TintColor.xyz;
					    u_xlat1.xyz = u_xlat1.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat3.x * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendMul2" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[7];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb0 = u_xlat1.w>=u_xlat0.x;
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    u_xlat1.xyz = u_xlat2.xyz * vs_COLOR0.xyz;
					    u_xlat0.x = u_xlatb0 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat0.x * vs_TEXCOORD4;
					    u_xlat0 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    SV_Target0 = u_xlat1.wwww * u_xlat0 + vec4(0.5, 0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[6];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb0 = u_xlat1.w>=u_xlat0.x;
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    u_xlat1.xyz = u_xlat2.xyz * vs_COLOR0.xyz;
					    u_xlat0.x = u_xlatb0 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat0.x * vs_TEXCOORD4;
					    u_xlat0 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    SV_Target0 = u_xlat1.wwww * u_xlat0 + vec4(0.5, 0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendMul2" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[7];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb0 = u_xlat1.w>=u_xlat0.x;
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    u_xlat1.xyz = u_xlat2.xyz * vs_COLOR0.xyz;
					    u_xlat0.x = u_xlatb0 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat0.x * vs_TEXCOORD4;
					    u_xlat0 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    SV_Target0 = u_xlat1.wwww * u_xlat0 + vec4(0.5, 0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[6];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb0 = u_xlat1.w>=u_xlat0.x;
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    u_xlat1.xyz = u_xlat2.xyz * vs_COLOR0.xyz;
					    u_xlat0.x = u_xlatb0 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat0.x * vs_TEXCOORD4;
					    u_xlat0 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    SV_Target0 = u_xlat1.wwww * u_xlat0 + vec4(0.5, 0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendMul2" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					float u_xlat6;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb0 = u_xlat1.w>=u_xlat0.x;
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    u_xlat1.xyz = u_xlat2.xyz * vs_COLOR0.xyz;
					    u_xlat0.x = u_xlatb0 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat0.x * vs_TEXCOORD4;
					    u_xlat0 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat0.xyz = u_xlat0.xyz * u_xlat1.www;
					    SV_Target0.w = u_xlat1.w * u_xlat0.w + 0.5;
					    u_xlat6 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat6 = (-u_xlat6) + 1.0;
					    u_xlat6 = u_xlat6 * _ProjectionParams.z;
					    u_xlat6 = max(u_xlat6, 0.0);
					    u_xlat6 = u_xlat6 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat6 = clamp(u_xlat6, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat6) * u_xlat0.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					float u_xlat6;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb0 = u_xlat1.w>=u_xlat0.x;
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    u_xlat1.xyz = u_xlat2.xyz * vs_COLOR0.xyz;
					    u_xlat0.x = u_xlatb0 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat0.x * vs_TEXCOORD4;
					    u_xlat0 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat0.xyz = u_xlat0.xyz * u_xlat1.www;
					    SV_Target0.w = u_xlat1.w * u_xlat0.w + 0.5;
					    u_xlat6 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat6 = (-u_xlat6) + 1.0;
					    u_xlat6 = u_xlat6 * _ProjectionParams.z;
					    u_xlat6 = max(u_xlat6, 0.0);
					    u_xlat6 = u_xlat6 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat6 = clamp(u_xlat6, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat6) * u_xlat0.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendMul2" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					float u_xlat6;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb0 = u_xlat1.w>=u_xlat0.x;
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    u_xlat1.xyz = u_xlat2.xyz * vs_COLOR0.xyz;
					    u_xlat0.x = u_xlatb0 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat0.x * vs_TEXCOORD4;
					    u_xlat0 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat0.xyz = u_xlat0.xyz * u_xlat1.www;
					    SV_Target0.w = u_xlat1.w * u_xlat0.w + 0.5;
					    u_xlat6 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat6 = (-u_xlat6) + 1.0;
					    u_xlat6 = u_xlat6 * _ProjectionParams.z;
					    u_xlat6 = max(u_xlat6, 0.0);
					    u_xlat6 = u_xlat6 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat6 = clamp(u_xlat6, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat6) * u_xlat0.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					float u_xlat6;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb0 = u_xlat1.w>=u_xlat0.x;
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    u_xlat1.xyz = u_xlat2.xyz * vs_COLOR0.xyz;
					    u_xlat0.x = u_xlatb0 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat0.x * vs_TEXCOORD4;
					    u_xlat0 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat0.xyz = u_xlat0.xyz * u_xlat1.www;
					    SV_Target0.w = u_xlat1.w * u_xlat0.w + 0.5;
					    u_xlat6 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat6 = (-u_xlat6) + 1.0;
					    u_xlat6 = u_xlat6 * _ProjectionParams.z;
					    u_xlat6 = max(u_xlat6, 0.0);
					    u_xlat6 = u_xlat6 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat6 = clamp(u_xlat6, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat6) * u_xlat0.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendMul2" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat3.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat1 = texture(_CameraDepthTexture, u_xlat3.xy);
					    u_xlat3.x = _ZBufferParams.z * u_xlat1.x + _ZBufferParams.w;
					    u_xlat3.x = float(1.0) / u_xlat3.x;
					    u_xlat3.x = u_xlat3.x + (-vs_TEXCOORD3.z);
					    u_xlat3.x = u_xlat3.x * _InvFade;
					    u_xlat3.x = clamp(u_xlat3.x, 0.0, 1.0);
					    u_xlat3.x = (-vs_COLOR0.w) * u_xlat3.x + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat1.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz * _TintColor.xyz;
					    u_xlat1.xyz = u_xlat1.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat3.x * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat3.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat1 = texture(_CameraDepthTexture, u_xlat3.xy);
					    u_xlat3.x = _ZBufferParams.z * u_xlat1.x + _ZBufferParams.w;
					    u_xlat3.x = float(1.0) / u_xlat3.x;
					    u_xlat3.x = u_xlat3.x + (-vs_TEXCOORD3.z);
					    u_xlat3.x = u_xlat3.x * _InvFade;
					    u_xlat3.x = clamp(u_xlat3.x, 0.0, 1.0);
					    u_xlat3.x = (-vs_COLOR0.w) * u_xlat3.x + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat1.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz * _TintColor.xyz;
					    u_xlat1.xyz = u_xlat1.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat3.x * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendMul2" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat3.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat1 = texture(_CameraDepthTexture, u_xlat3.xy);
					    u_xlat3.x = _ZBufferParams.z * u_xlat1.x + _ZBufferParams.w;
					    u_xlat3.x = float(1.0) / u_xlat3.x;
					    u_xlat3.x = u_xlat3.x + (-vs_TEXCOORD3.z);
					    u_xlat3.x = u_xlat3.x * _InvFade;
					    u_xlat3.x = clamp(u_xlat3.x, 0.0, 1.0);
					    u_xlat3.x = (-vs_COLOR0.w) * u_xlat3.x + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat1.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz * _TintColor.xyz;
					    u_xlat1.xyz = u_xlat1.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat3.x * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat3.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat1 = texture(_CameraDepthTexture, u_xlat3.xy);
					    u_xlat3.x = _ZBufferParams.z * u_xlat1.x + _ZBufferParams.w;
					    u_xlat3.x = float(1.0) / u_xlat3.x;
					    u_xlat3.x = u_xlat3.x + (-vs_TEXCOORD3.z);
					    u_xlat3.x = u_xlat3.x * _InvFade;
					    u_xlat3.x = clamp(u_xlat3.x, 0.0, 1.0);
					    u_xlat3.x = (-vs_COLOR0.w) * u_xlat3.x + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat1.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz * _TintColor.xyz;
					    u_xlat1.xyz = u_xlat1.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat3.x * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendMul2" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat3.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat1 = texture(_CameraDepthTexture, u_xlat3.xy);
					    u_xlat3.x = _ZBufferParams.z * u_xlat1.x + _ZBufferParams.w;
					    u_xlat3.x = float(1.0) / u_xlat3.x;
					    u_xlat3.x = u_xlat3.x + (-vs_TEXCOORD3.z);
					    u_xlat3.x = u_xlat3.x * _InvFade;
					    u_xlat3.x = clamp(u_xlat3.x, 0.0, 1.0);
					    u_xlat3.x = (-vs_COLOR0.w) * u_xlat3.x + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat1.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz * _TintColor.xyz;
					    u_xlat1.xyz = u_xlat1.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat3.x * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat3.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat1 = texture(_CameraDepthTexture, u_xlat3.xy);
					    u_xlat3.x = _ZBufferParams.z * u_xlat1.x + _ZBufferParams.w;
					    u_xlat3.x = float(1.0) / u_xlat3.x;
					    u_xlat3.x = u_xlat3.x + (-vs_TEXCOORD3.z);
					    u_xlat3.x = u_xlat3.x * _InvFade;
					    u_xlat3.x = clamp(u_xlat3.x, 0.0, 1.0);
					    u_xlat3.x = (-vs_COLOR0.w) * u_xlat3.x + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat1.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz * _TintColor.xyz;
					    u_xlat1.xyz = u_xlat1.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat3.x * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendMul2" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat3.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat1 = texture(_CameraDepthTexture, u_xlat3.xy);
					    u_xlat3.x = _ZBufferParams.z * u_xlat1.x + _ZBufferParams.w;
					    u_xlat3.x = float(1.0) / u_xlat3.x;
					    u_xlat3.x = u_xlat3.x + (-vs_TEXCOORD3.z);
					    u_xlat3.x = u_xlat3.x * _InvFade;
					    u_xlat3.x = clamp(u_xlat3.x, 0.0, 1.0);
					    u_xlat3.x = (-vs_COLOR0.w) * u_xlat3.x + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat1.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz * _TintColor.xyz;
					    u_xlat1.xyz = u_xlat1.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat3.x * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat3.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat1 = texture(_CameraDepthTexture, u_xlat3.xy);
					    u_xlat3.x = _ZBufferParams.z * u_xlat1.x + _ZBufferParams.w;
					    u_xlat3.x = float(1.0) / u_xlat3.x;
					    u_xlat3.x = u_xlat3.x + (-vs_TEXCOORD3.z);
					    u_xlat3.x = u_xlat3.x * _InvFade;
					    u_xlat3.x = clamp(u_xlat3.x, 0.0, 1.0);
					    u_xlat3.x = (-vs_COLOR0.w) * u_xlat3.x + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat1.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz * _TintColor.xyz;
					    u_xlat1.xyz = u_xlat1.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat3.x * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendMul2" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat0 = u_xlat0 * vs_COLOR0;
					    u_xlat0.w = u_xlat0.w;
					    u_xlat0.w = clamp(u_xlat0.w, 0.0, 1.0);
					    u_xlat1 = u_xlat0 + vec4(-0.5, -0.5, -0.5, -0.5);
					    SV_Target0 = u_xlat0.wwww * u_xlat1 + vec4(0.5, 0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat0 = u_xlat0 * vs_COLOR0;
					    u_xlat0.w = u_xlat0.w;
					    u_xlat0.w = clamp(u_xlat0.w, 0.0, 1.0);
					    u_xlat1 = u_xlat0 + vec4(-0.5, -0.5, -0.5, -0.5);
					    SV_Target0 = u_xlat0.wwww * u_xlat1 + vec4(0.5, 0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendMul2" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat0 = u_xlat0 * vs_COLOR0;
					    u_xlat0.w = u_xlat0.w;
					    u_xlat0.w = clamp(u_xlat0.w, 0.0, 1.0);
					    u_xlat1 = u_xlat0 + vec4(-0.5, -0.5, -0.5, -0.5);
					    SV_Target0 = u_xlat0.wwww * u_xlat1 + vec4(0.5, 0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat0 = u_xlat0 * vs_COLOR0;
					    u_xlat0.w = u_xlat0.w;
					    u_xlat0.w = clamp(u_xlat0.w, 0.0, 1.0);
					    u_xlat1 = u_xlat0 + vec4(-0.5, -0.5, -0.5, -0.5);
					    SV_Target0 = u_xlat0.wwww * u_xlat1 + vec4(0.5, 0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendMul2" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendMul2" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendMul2" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendMul2" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendMul2" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendMul2" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendMul2" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat0 = u_xlat0 * vs_COLOR0;
					    u_xlat0.w = u_xlat0.w;
					    u_xlat0.w = clamp(u_xlat0.w, 0.0, 1.0);
					    u_xlat1 = u_xlat0 + vec4(-0.5, -0.5, -0.5, -0.5);
					    SV_Target0 = u_xlat0.wwww * u_xlat1 + vec4(0.5, 0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat0 = u_xlat0 * vs_COLOR0;
					    u_xlat0.w = u_xlat0.w;
					    u_xlat0.w = clamp(u_xlat0.w, 0.0, 1.0);
					    u_xlat1 = u_xlat0 + vec4(-0.5, -0.5, -0.5, -0.5);
					    SV_Target0 = u_xlat0.wwww * u_xlat1 + vec4(0.5, 0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendMul2" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat0 = u_xlat0 * vs_COLOR0;
					    u_xlat0.w = u_xlat0.w;
					    u_xlat0.w = clamp(u_xlat0.w, 0.0, 1.0);
					    u_xlat1 = u_xlat0 + vec4(-0.5, -0.5, -0.5, -0.5);
					    SV_Target0 = u_xlat0.wwww * u_xlat1 + vec4(0.5, 0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat0 = u_xlat0 * vs_COLOR0;
					    u_xlat0.w = u_xlat0.w;
					    u_xlat0.w = clamp(u_xlat0.w, 0.0, 1.0);
					    u_xlat1 = u_xlat0 + vec4(-0.5, -0.5, -0.5, -0.5);
					    SV_Target0 = u_xlat0.wwww * u_xlat1 + vec4(0.5, 0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendMul2" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendMul2" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendMul2" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendMul2" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendMul2" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendMul2" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendMul2" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat6;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat0 = u_xlat0 * vs_COLOR0;
					    u_xlat6 = u_xlat0.w;
					    u_xlat6 = clamp(u_xlat6, 0.0, 1.0);
					    u_xlat0.w = u_xlat6 * vs_TEXCOORD4;
					    u_xlat1 = u_xlat0 + vec4(-0.5, -0.5, -0.5, -0.5);
					    SV_Target0 = u_xlat0.wwww * u_xlat1 + vec4(0.5, 0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat6;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat0 = u_xlat0 * vs_COLOR0;
					    u_xlat6 = u_xlat0.w;
					    u_xlat6 = clamp(u_xlat6, 0.0, 1.0);
					    u_xlat0.w = u_xlat6 * vs_TEXCOORD4;
					    u_xlat1 = u_xlat0 + vec4(-0.5, -0.5, -0.5, -0.5);
					    SV_Target0 = u_xlat0.wwww * u_xlat1 + vec4(0.5, 0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendMul2" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat6;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat0 = u_xlat0 * vs_COLOR0;
					    u_xlat6 = u_xlat0.w;
					    u_xlat6 = clamp(u_xlat6, 0.0, 1.0);
					    u_xlat0.w = u_xlat6 * vs_TEXCOORD4;
					    u_xlat1 = u_xlat0 + vec4(-0.5, -0.5, -0.5, -0.5);
					    SV_Target0 = u_xlat0.wwww * u_xlat1 + vec4(0.5, 0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat6;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat0 = u_xlat0 * vs_COLOR0;
					    u_xlat6 = u_xlat0.w;
					    u_xlat6 = clamp(u_xlat6, 0.0, 1.0);
					    u_xlat0.w = u_xlat6 * vs_TEXCOORD4;
					    u_xlat1 = u_xlat0 + vec4(-0.5, -0.5, -0.5, -0.5);
					    SV_Target0 = u_xlat0.wwww * u_xlat1 + vec4(0.5, 0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendMul2" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendMul2" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendMul2" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendMul2" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendMul2" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendMul2" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendMul2" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat6;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat0 = u_xlat0 * vs_COLOR0;
					    u_xlat6 = u_xlat0.w;
					    u_xlat6 = clamp(u_xlat6, 0.0, 1.0);
					    u_xlat0.w = u_xlat6 * vs_TEXCOORD4;
					    u_xlat1 = u_xlat0 + vec4(-0.5, -0.5, -0.5, -0.5);
					    SV_Target0 = u_xlat0.wwww * u_xlat1 + vec4(0.5, 0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat6;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat0 = u_xlat0 * vs_COLOR0;
					    u_xlat6 = u_xlat0.w;
					    u_xlat6 = clamp(u_xlat6, 0.0, 1.0);
					    u_xlat0.w = u_xlat6 * vs_TEXCOORD4;
					    u_xlat1 = u_xlat0 + vec4(-0.5, -0.5, -0.5, -0.5);
					    SV_Target0 = u_xlat0.wwww * u_xlat1 + vec4(0.5, 0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendMul2" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat6;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat0 = u_xlat0 * vs_COLOR0;
					    u_xlat6 = u_xlat0.w;
					    u_xlat6 = clamp(u_xlat6, 0.0, 1.0);
					    u_xlat0.w = u_xlat6 * vs_TEXCOORD4;
					    u_xlat1 = u_xlat0 + vec4(-0.5, -0.5, -0.5, -0.5);
					    SV_Target0 = u_xlat0.wwww * u_xlat1 + vec4(0.5, 0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat6;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat0 = u_xlat0 * vs_COLOR0;
					    u_xlat6 = u_xlat0.w;
					    u_xlat6 = clamp(u_xlat6, 0.0, 1.0);
					    u_xlat0.w = u_xlat6 * vs_TEXCOORD4;
					    u_xlat1 = u_xlat0 + vec4(-0.5, -0.5, -0.5, -0.5);
					    SV_Target0 = u_xlat0.wwww * u_xlat1 + vec4(0.5, 0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendMul2" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendMul2" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendMul2" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendMul2" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendMul2" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendMul2" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendMul2" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					bool u_xlatb1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1.x = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat0.w = u_xlat0.w * u_xlat1.x;
					    u_xlat0 = u_xlat0 * vs_COLOR0;
					    u_xlat0.w = u_xlat0.w;
					    u_xlat0.w = clamp(u_xlat0.w, 0.0, 1.0);
					    u_xlat1 = u_xlat0 + vec4(-0.5, -0.5, -0.5, -0.5);
					    SV_Target0 = u_xlat0.wwww * u_xlat1 + vec4(0.5, 0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					bool u_xlatb1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1.x = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat0.w = u_xlat0.w * u_xlat1.x;
					    u_xlat0 = u_xlat0 * vs_COLOR0;
					    u_xlat0.w = u_xlat0.w;
					    u_xlat0.w = clamp(u_xlat0.w, 0.0, 1.0);
					    u_xlat1 = u_xlat0 + vec4(-0.5, -0.5, -0.5, -0.5);
					    SV_Target0 = u_xlat0.wwww * u_xlat1 + vec4(0.5, 0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendMul2" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					bool u_xlatb1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1.x = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat0.w = u_xlat0.w * u_xlat1.x;
					    u_xlat0 = u_xlat0 * vs_COLOR0;
					    u_xlat0.w = u_xlat0.w;
					    u_xlat0.w = clamp(u_xlat0.w, 0.0, 1.0);
					    u_xlat1 = u_xlat0 + vec4(-0.5, -0.5, -0.5, -0.5);
					    SV_Target0 = u_xlat0.wwww * u_xlat1 + vec4(0.5, 0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					bool u_xlatb1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1.x = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat0.w = u_xlat0.w * u_xlat1.x;
					    u_xlat0 = u_xlat0 * vs_COLOR0;
					    u_xlat0.w = u_xlat0.w;
					    u_xlat0.w = clamp(u_xlat0.w, 0.0, 1.0);
					    u_xlat1 = u_xlat0 + vec4(-0.5, -0.5, -0.5, -0.5);
					    SV_Target0 = u_xlat0.wwww * u_xlat1 + vec4(0.5, 0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendMul2" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3.x;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3.x;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendMul2" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3.x;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3.x;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendMul2" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3.x;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3.x;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendMul2" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3.x;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3.x;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendMul2" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3.x;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3.x;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendMul2" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3.x;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3.x;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendMul2" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					bool u_xlatb1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1.x = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat0.w = u_xlat0.w * u_xlat1.x;
					    u_xlat0 = u_xlat0 * vs_COLOR0;
					    u_xlat0.w = u_xlat0.w;
					    u_xlat0.w = clamp(u_xlat0.w, 0.0, 1.0);
					    u_xlat1 = u_xlat0 + vec4(-0.5, -0.5, -0.5, -0.5);
					    SV_Target0 = u_xlat0.wwww * u_xlat1 + vec4(0.5, 0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					bool u_xlatb1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1.x = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat0.w = u_xlat0.w * u_xlat1.x;
					    u_xlat0 = u_xlat0 * vs_COLOR0;
					    u_xlat0.w = u_xlat0.w;
					    u_xlat0.w = clamp(u_xlat0.w, 0.0, 1.0);
					    u_xlat1 = u_xlat0 + vec4(-0.5, -0.5, -0.5, -0.5);
					    SV_Target0 = u_xlat0.wwww * u_xlat1 + vec4(0.5, 0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendMul2" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					bool u_xlatb1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1.x = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat0.w = u_xlat0.w * u_xlat1.x;
					    u_xlat0 = u_xlat0 * vs_COLOR0;
					    u_xlat0.w = u_xlat0.w;
					    u_xlat0.w = clamp(u_xlat0.w, 0.0, 1.0);
					    u_xlat1 = u_xlat0 + vec4(-0.5, -0.5, -0.5, -0.5);
					    SV_Target0 = u_xlat0.wwww * u_xlat1 + vec4(0.5, 0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					bool u_xlatb1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1.x = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat0.w = u_xlat0.w * u_xlat1.x;
					    u_xlat0 = u_xlat0 * vs_COLOR0;
					    u_xlat0.w = u_xlat0.w;
					    u_xlat0.w = clamp(u_xlat0.w, 0.0, 1.0);
					    u_xlat1 = u_xlat0 + vec4(-0.5, -0.5, -0.5, -0.5);
					    SV_Target0 = u_xlat0.wwww * u_xlat1 + vec4(0.5, 0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendMul2" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3.x;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3.x;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendMul2" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3.x;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3.x;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendMul2" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3.x;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3.x;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendMul2" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3.x;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3.x;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendMul2" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3.x;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3.x;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendMul2" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3.x;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3.x;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendMul2" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					bool u_xlatb1;
					float u_xlat6;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1.x = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat0.w = u_xlat0.w * u_xlat1.x;
					    u_xlat0 = u_xlat0 * vs_COLOR0;
					    u_xlat6 = u_xlat0.w;
					    u_xlat6 = clamp(u_xlat6, 0.0, 1.0);
					    u_xlat0.w = u_xlat6 * vs_TEXCOORD4;
					    u_xlat1 = u_xlat0 + vec4(-0.5, -0.5, -0.5, -0.5);
					    SV_Target0 = u_xlat0.wwww * u_xlat1 + vec4(0.5, 0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					bool u_xlatb1;
					float u_xlat6;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1.x = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat0.w = u_xlat0.w * u_xlat1.x;
					    u_xlat0 = u_xlat0 * vs_COLOR0;
					    u_xlat6 = u_xlat0.w;
					    u_xlat6 = clamp(u_xlat6, 0.0, 1.0);
					    u_xlat0.w = u_xlat6 * vs_TEXCOORD4;
					    u_xlat1 = u_xlat0 + vec4(-0.5, -0.5, -0.5, -0.5);
					    SV_Target0 = u_xlat0.wwww * u_xlat1 + vec4(0.5, 0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendMul2" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					bool u_xlatb1;
					float u_xlat6;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1.x = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat0.w = u_xlat0.w * u_xlat1.x;
					    u_xlat0 = u_xlat0 * vs_COLOR0;
					    u_xlat6 = u_xlat0.w;
					    u_xlat6 = clamp(u_xlat6, 0.0, 1.0);
					    u_xlat0.w = u_xlat6 * vs_TEXCOORD4;
					    u_xlat1 = u_xlat0 + vec4(-0.5, -0.5, -0.5, -0.5);
					    SV_Target0 = u_xlat0.wwww * u_xlat1 + vec4(0.5, 0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					bool u_xlatb1;
					float u_xlat6;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1.x = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat0.w = u_xlat0.w * u_xlat1.x;
					    u_xlat0 = u_xlat0 * vs_COLOR0;
					    u_xlat6 = u_xlat0.w;
					    u_xlat6 = clamp(u_xlat6, 0.0, 1.0);
					    u_xlat0.w = u_xlat6 * vs_TEXCOORD4;
					    u_xlat1 = u_xlat0 + vec4(-0.5, -0.5, -0.5, -0.5);
					    SV_Target0 = u_xlat0.wwww * u_xlat1 + vec4(0.5, 0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendMul2" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3.x;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3.x;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendMul2" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3.x;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3.x;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendMul2" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3.x;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3.x;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendMul2" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3.x;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3.x;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendMul2" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3.x;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3.x;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendMul2" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3.x;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3.x;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendMul2" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					bool u_xlatb1;
					float u_xlat6;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1.x = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat0.w = u_xlat0.w * u_xlat1.x;
					    u_xlat0 = u_xlat0 * vs_COLOR0;
					    u_xlat6 = u_xlat0.w;
					    u_xlat6 = clamp(u_xlat6, 0.0, 1.0);
					    u_xlat0.w = u_xlat6 * vs_TEXCOORD4;
					    u_xlat1 = u_xlat0 + vec4(-0.5, -0.5, -0.5, -0.5);
					    SV_Target0 = u_xlat0.wwww * u_xlat1 + vec4(0.5, 0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					bool u_xlatb1;
					float u_xlat6;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1.x = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat0.w = u_xlat0.w * u_xlat1.x;
					    u_xlat0 = u_xlat0 * vs_COLOR0;
					    u_xlat6 = u_xlat0.w;
					    u_xlat6 = clamp(u_xlat6, 0.0, 1.0);
					    u_xlat0.w = u_xlat6 * vs_TEXCOORD4;
					    u_xlat1 = u_xlat0 + vec4(-0.5, -0.5, -0.5, -0.5);
					    SV_Target0 = u_xlat0.wwww * u_xlat1 + vec4(0.5, 0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendMul2" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					bool u_xlatb1;
					float u_xlat6;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1.x = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat0.w = u_xlat0.w * u_xlat1.x;
					    u_xlat0 = u_xlat0 * vs_COLOR0;
					    u_xlat6 = u_xlat0.w;
					    u_xlat6 = clamp(u_xlat6, 0.0, 1.0);
					    u_xlat0.w = u_xlat6 * vs_TEXCOORD4;
					    u_xlat1 = u_xlat0 + vec4(-0.5, -0.5, -0.5, -0.5);
					    SV_Target0 = u_xlat0.wwww * u_xlat1 + vec4(0.5, 0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					bool u_xlatb1;
					float u_xlat6;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1.x = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat0.w = u_xlat0.w * u_xlat1.x;
					    u_xlat0 = u_xlat0 * vs_COLOR0;
					    u_xlat6 = u_xlat0.w;
					    u_xlat6 = clamp(u_xlat6, 0.0, 1.0);
					    u_xlat0.w = u_xlat6 * vs_TEXCOORD4;
					    u_xlat1 = u_xlat0 + vec4(-0.5, -0.5, -0.5, -0.5);
					    SV_Target0 = u_xlat0.wwww * u_xlat1 + vec4(0.5, 0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendMul2" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3.x;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3.x;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendMul2" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3.x;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3.x;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendMul2" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3.x;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3.x;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendMul2" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3.x;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3.x;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendMul2" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3.x;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3.x;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendMul2" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3.x;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3.x;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendMul2" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlat0.xyz = u_xlat0.xyz + u_xlat0.xyz;
					    u_xlat0.xyz = u_xlat0.xyz * _TintColor.xyz;
					    u_xlat1.xyz = u_xlat0.xyz * vs_COLOR0.xyz;
					    u_xlat0.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlatb0 = u_xlat0.w>=u_xlat0.x;
					    u_xlat1.w = u_xlatb0 ? 1.0 : float(0.0);
					    u_xlat0 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    SV_Target0 = u_xlat1.wwww * u_xlat0 + vec4(0.5, 0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlat0.xyz = u_xlat0.xyz + u_xlat0.xyz;
					    u_xlat0.xyz = u_xlat0.xyz * _TintColor.xyz;
					    u_xlat1.xyz = u_xlat0.xyz * vs_COLOR0.xyz;
					    u_xlat0.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlatb0 = u_xlat0.w>=u_xlat0.x;
					    u_xlat1.w = u_xlatb0 ? 1.0 : float(0.0);
					    u_xlat0 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    SV_Target0 = u_xlat1.wwww * u_xlat0 + vec4(0.5, 0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendMul2" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlat0.xyz = u_xlat0.xyz + u_xlat0.xyz;
					    u_xlat0.xyz = u_xlat0.xyz * _TintColor.xyz;
					    u_xlat1.xyz = u_xlat0.xyz * vs_COLOR0.xyz;
					    u_xlat0.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlatb0 = u_xlat0.w>=u_xlat0.x;
					    u_xlat1.w = u_xlatb0 ? 1.0 : float(0.0);
					    u_xlat0 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    SV_Target0 = u_xlat1.wwww * u_xlat0 + vec4(0.5, 0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlat0.xyz = u_xlat0.xyz + u_xlat0.xyz;
					    u_xlat0.xyz = u_xlat0.xyz * _TintColor.xyz;
					    u_xlat1.xyz = u_xlat0.xyz * vs_COLOR0.xyz;
					    u_xlat0.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlatb0 = u_xlat0.w>=u_xlat0.x;
					    u_xlat1.w = u_xlatb0 ? 1.0 : float(0.0);
					    u_xlat0 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    SV_Target0 = u_xlat1.wwww * u_xlat0 + vec4(0.5, 0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendMul2" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat2.w = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1 = u_xlat2 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat2.w = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1 = u_xlat2 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendMul2" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat2.w = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1 = u_xlat2 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat2.w = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1 = u_xlat2 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendMul2" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat2.w = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1 = u_xlat2 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat2.w = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1 = u_xlat2 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendMul2" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat2.w = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1 = u_xlat2 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat2.w = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1 = u_xlat2 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendMul2" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat2.w = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1 = u_xlat2 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat2.w = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1 = u_xlat2 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendMul2" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat2.w = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1 = u_xlat2 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat2.w = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1 = u_xlat2 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendMul2" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlat0.xyz = u_xlat0.xyz + u_xlat0.xyz;
					    u_xlat0.xyz = u_xlat0.xyz * _TintColor.xyz;
					    u_xlat1.xyz = u_xlat0.xyz * vs_COLOR0.xyz;
					    u_xlat0.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlatb0 = u_xlat0.w>=u_xlat0.x;
					    u_xlat1.w = u_xlatb0 ? 1.0 : float(0.0);
					    u_xlat0 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    SV_Target0 = u_xlat1.wwww * u_xlat0 + vec4(0.5, 0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlat0.xyz = u_xlat0.xyz + u_xlat0.xyz;
					    u_xlat0.xyz = u_xlat0.xyz * _TintColor.xyz;
					    u_xlat1.xyz = u_xlat0.xyz * vs_COLOR0.xyz;
					    u_xlat0.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlatb0 = u_xlat0.w>=u_xlat0.x;
					    u_xlat1.w = u_xlatb0 ? 1.0 : float(0.0);
					    u_xlat0 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    SV_Target0 = u_xlat1.wwww * u_xlat0 + vec4(0.5, 0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendMul2" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlat0.xyz = u_xlat0.xyz + u_xlat0.xyz;
					    u_xlat0.xyz = u_xlat0.xyz * _TintColor.xyz;
					    u_xlat1.xyz = u_xlat0.xyz * vs_COLOR0.xyz;
					    u_xlat0.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlatb0 = u_xlat0.w>=u_xlat0.x;
					    u_xlat1.w = u_xlatb0 ? 1.0 : float(0.0);
					    u_xlat0 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    SV_Target0 = u_xlat1.wwww * u_xlat0 + vec4(0.5, 0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlat0.xyz = u_xlat0.xyz + u_xlat0.xyz;
					    u_xlat0.xyz = u_xlat0.xyz * _TintColor.xyz;
					    u_xlat1.xyz = u_xlat0.xyz * vs_COLOR0.xyz;
					    u_xlat0.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlatb0 = u_xlat0.w>=u_xlat0.x;
					    u_xlat1.w = u_xlatb0 ? 1.0 : float(0.0);
					    u_xlat0 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    SV_Target0 = u_xlat1.wwww * u_xlat0 + vec4(0.5, 0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendMul2" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat2.w = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1 = u_xlat2 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat2.w = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1 = u_xlat2 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendMul2" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat2.w = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1 = u_xlat2 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat2.w = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1 = u_xlat2 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendMul2" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat2.w = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1 = u_xlat2 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat2.w = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1 = u_xlat2 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendMul2" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat2.w = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1 = u_xlat2 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat2.w = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1 = u_xlat2 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendMul2" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat2.w = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1 = u_xlat2 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat2.w = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1 = u_xlat2 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendMul2" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat2.w = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1 = u_xlat2 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat2.w = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1 = u_xlat2 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendMul2" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlat0.xyz = u_xlat0.xyz + u_xlat0.xyz;
					    u_xlat0.xyz = u_xlat0.xyz * _TintColor.xyz;
					    u_xlat1.xyz = u_xlat0.xyz * vs_COLOR0.xyz;
					    u_xlat0.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlatb0 = u_xlat0.w>=u_xlat0.x;
					    u_xlat0.x = u_xlatb0 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat0.x * vs_TEXCOORD4;
					    u_xlat0 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    SV_Target0 = u_xlat1.wwww * u_xlat0 + vec4(0.5, 0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlat0.xyz = u_xlat0.xyz + u_xlat0.xyz;
					    u_xlat0.xyz = u_xlat0.xyz * _TintColor.xyz;
					    u_xlat1.xyz = u_xlat0.xyz * vs_COLOR0.xyz;
					    u_xlat0.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlatb0 = u_xlat0.w>=u_xlat0.x;
					    u_xlat0.x = u_xlatb0 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat0.x * vs_TEXCOORD4;
					    u_xlat0 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    SV_Target0 = u_xlat1.wwww * u_xlat0 + vec4(0.5, 0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendMul2" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlat0.xyz = u_xlat0.xyz + u_xlat0.xyz;
					    u_xlat0.xyz = u_xlat0.xyz * _TintColor.xyz;
					    u_xlat1.xyz = u_xlat0.xyz * vs_COLOR0.xyz;
					    u_xlat0.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlatb0 = u_xlat0.w>=u_xlat0.x;
					    u_xlat0.x = u_xlatb0 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat0.x * vs_TEXCOORD4;
					    u_xlat0 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    SV_Target0 = u_xlat1.wwww * u_xlat0 + vec4(0.5, 0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlat0.xyz = u_xlat0.xyz + u_xlat0.xyz;
					    u_xlat0.xyz = u_xlat0.xyz * _TintColor.xyz;
					    u_xlat1.xyz = u_xlat0.xyz * vs_COLOR0.xyz;
					    u_xlat0.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlatb0 = u_xlat0.w>=u_xlat0.x;
					    u_xlat0.x = u_xlatb0 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat0.x * vs_TEXCOORD4;
					    u_xlat0 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    SV_Target0 = u_xlat1.wwww * u_xlat0 + vec4(0.5, 0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendMul2" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat2.w = u_xlat3.x * vs_TEXCOORD4;
					    u_xlat1 = u_xlat2 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat2.w = u_xlat3.x * vs_TEXCOORD4;
					    u_xlat1 = u_xlat2 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendMul2" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat2.w = u_xlat3.x * vs_TEXCOORD4;
					    u_xlat1 = u_xlat2 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat2.w = u_xlat3.x * vs_TEXCOORD4;
					    u_xlat1 = u_xlat2 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendMul2" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat2.w = u_xlat3.x * vs_TEXCOORD4;
					    u_xlat1 = u_xlat2 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat2.w = u_xlat3.x * vs_TEXCOORD4;
					    u_xlat1 = u_xlat2 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendMul2" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat2.w = u_xlat3.x * vs_TEXCOORD4;
					    u_xlat1 = u_xlat2 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat2.w = u_xlat3.x * vs_TEXCOORD4;
					    u_xlat1 = u_xlat2 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendMul2" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat2.w = u_xlat3.x * vs_TEXCOORD4;
					    u_xlat1 = u_xlat2 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat2.w = u_xlat3.x * vs_TEXCOORD4;
					    u_xlat1 = u_xlat2 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendMul2" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat2.w = u_xlat3.x * vs_TEXCOORD4;
					    u_xlat1 = u_xlat2 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat2.w = u_xlat3.x * vs_TEXCOORD4;
					    u_xlat1 = u_xlat2 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendMul2" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlat0.xyz = u_xlat0.xyz + u_xlat0.xyz;
					    u_xlat0.xyz = u_xlat0.xyz * _TintColor.xyz;
					    u_xlat1.xyz = u_xlat0.xyz * vs_COLOR0.xyz;
					    u_xlat0.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlatb0 = u_xlat0.w>=u_xlat0.x;
					    u_xlat0.x = u_xlatb0 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat0.x * vs_TEXCOORD4;
					    u_xlat0 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    SV_Target0 = u_xlat1.wwww * u_xlat0 + vec4(0.5, 0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlat0.xyz = u_xlat0.xyz + u_xlat0.xyz;
					    u_xlat0.xyz = u_xlat0.xyz * _TintColor.xyz;
					    u_xlat1.xyz = u_xlat0.xyz * vs_COLOR0.xyz;
					    u_xlat0.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlatb0 = u_xlat0.w>=u_xlat0.x;
					    u_xlat0.x = u_xlatb0 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat0.x * vs_TEXCOORD4;
					    u_xlat0 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    SV_Target0 = u_xlat1.wwww * u_xlat0 + vec4(0.5, 0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendMul2" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlat0.xyz = u_xlat0.xyz + u_xlat0.xyz;
					    u_xlat0.xyz = u_xlat0.xyz * _TintColor.xyz;
					    u_xlat1.xyz = u_xlat0.xyz * vs_COLOR0.xyz;
					    u_xlat0.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlatb0 = u_xlat0.w>=u_xlat0.x;
					    u_xlat0.x = u_xlatb0 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat0.x * vs_TEXCOORD4;
					    u_xlat0 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    SV_Target0 = u_xlat1.wwww * u_xlat0 + vec4(0.5, 0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlat0.xyz = u_xlat0.xyz + u_xlat0.xyz;
					    u_xlat0.xyz = u_xlat0.xyz * _TintColor.xyz;
					    u_xlat1.xyz = u_xlat0.xyz * vs_COLOR0.xyz;
					    u_xlat0.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlatb0 = u_xlat0.w>=u_xlat0.x;
					    u_xlat0.x = u_xlatb0 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat0.x * vs_TEXCOORD4;
					    u_xlat0 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    SV_Target0 = u_xlat1.wwww * u_xlat0 + vec4(0.5, 0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendMul2" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat2.w = u_xlat3.x * vs_TEXCOORD4;
					    u_xlat1 = u_xlat2 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat2.w = u_xlat3.x * vs_TEXCOORD4;
					    u_xlat1 = u_xlat2 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendMul2" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat2.w = u_xlat3.x * vs_TEXCOORD4;
					    u_xlat1 = u_xlat2 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat2.w = u_xlat3.x * vs_TEXCOORD4;
					    u_xlat1 = u_xlat2 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendMul2" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat2.w = u_xlat3.x * vs_TEXCOORD4;
					    u_xlat1 = u_xlat2 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat2.w = u_xlat3.x * vs_TEXCOORD4;
					    u_xlat1 = u_xlat2 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendMul2" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat2.w = u_xlat3.x * vs_TEXCOORD4;
					    u_xlat1 = u_xlat2 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat2.w = u_xlat3.x * vs_TEXCOORD4;
					    u_xlat1 = u_xlat2 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendMul2" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat2.w = u_xlat3.x * vs_TEXCOORD4;
					    u_xlat1 = u_xlat2 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat2.w = u_xlat3.x * vs_TEXCOORD4;
					    u_xlat1 = u_xlat2 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendMul2" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat2.w = u_xlat3.x * vs_TEXCOORD4;
					    u_xlat1 = u_xlat2 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat2.w = u_xlat3.x * vs_TEXCOORD4;
					    u_xlat1 = u_xlat2 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendMul2" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat0 = u_xlat0 * vs_COLOR0;
					    u_xlat0.w = u_xlat0.w;
					    u_xlat0.w = clamp(u_xlat0.w, 0.0, 1.0);
					    u_xlat1 = u_xlat0 + vec4(-0.5, -0.5, -0.5, -0.5);
					    SV_Target0 = u_xlat0.wwww * u_xlat1 + vec4(0.5, 0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat0 = u_xlat0 * vs_COLOR0;
					    u_xlat0.w = u_xlat0.w;
					    u_xlat0.w = clamp(u_xlat0.w, 0.0, 1.0);
					    u_xlat1 = u_xlat0 + vec4(-0.5, -0.5, -0.5, -0.5);
					    SV_Target0 = u_xlat0.wwww * u_xlat1 + vec4(0.5, 0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendMul2" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[7];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat0.w = u_xlat0.w;
					    u_xlat0.w = clamp(u_xlat0.w, 0.0, 1.0);
					    u_xlat1 = u_xlat0 + vec4(-0.5, -0.5, -0.5, -0.5);
					    SV_Target0 = u_xlat0.wwww * u_xlat1 + vec4(0.5, 0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[6];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat0.w = u_xlat0.w;
					    u_xlat0.w = clamp(u_xlat0.w, 0.0, 1.0);
					    u_xlat1 = u_xlat0 + vec4(-0.5, -0.5, -0.5, -0.5);
					    SV_Target0 = u_xlat0.wwww * u_xlat1 + vec4(0.5, 0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendMul2" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendMul2" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					float u_xlat9;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat0.w = u_xlat0.w;
					    u_xlat0.w = clamp(u_xlat0.w, 0.0, 1.0);
					    u_xlat1 = u_xlat0 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat0.xyz = u_xlat0.www * u_xlat1.xyz;
					    SV_Target0.w = u_xlat0.w * u_xlat1.w + 0.5;
					    u_xlat9 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat9 = (-u_xlat9) + 1.0;
					    u_xlat9 = u_xlat9 * _ProjectionParams.z;
					    u_xlat9 = max(u_xlat9, 0.0);
					    u_xlat9 = u_xlat9 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat9 = clamp(u_xlat9, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat9) * u_xlat0.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					float u_xlat9;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat0.w = u_xlat0.w;
					    u_xlat0.w = clamp(u_xlat0.w, 0.0, 1.0);
					    u_xlat1 = u_xlat0 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat0.xyz = u_xlat0.www * u_xlat1.xyz;
					    SV_Target0.w = u_xlat0.w * u_xlat1.w + 0.5;
					    u_xlat9 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat9 = (-u_xlat9) + 1.0;
					    u_xlat9 = u_xlat9 * _ProjectionParams.z;
					    u_xlat9 = max(u_xlat9, 0.0);
					    u_xlat9 = u_xlat9 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat9 = clamp(u_xlat9, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat9) * u_xlat0.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendMul2" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendMul2" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec3 u_xlat4;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat4.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat1 = texture(_CameraDepthTexture, u_xlat4.xy);
					    u_xlat4.x = _ZBufferParams.z * u_xlat1.x + _ZBufferParams.w;
					    u_xlat4.x = float(1.0) / u_xlat4.x;
					    u_xlat4.x = u_xlat4.x + (-vs_TEXCOORD3.z);
					    u_xlat4.x = u_xlat4.x * _InvFade;
					    u_xlat4.x = clamp(u_xlat4.x, 0.0, 1.0);
					    u_xlat1.w = u_xlat4.x * vs_COLOR0.w;
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat3 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2 = u_xlat2 + (-u_xlat3);
					    u_xlat2 = vec4(vs_TEXCOORD1) * u_xlat2 + u_xlat3;
					    u_xlat2 = u_xlat2 + u_xlat2;
					    u_xlat2 = u_xlat2 * _TintColor;
					    u_xlat1.xyz = vs_COLOR0.xyz;
					    u_xlat1 = u_xlat1 * u_xlat2;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat4.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat4.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec3 u_xlat4;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat4.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat1 = texture(_CameraDepthTexture, u_xlat4.xy);
					    u_xlat4.x = _ZBufferParams.z * u_xlat1.x + _ZBufferParams.w;
					    u_xlat4.x = float(1.0) / u_xlat4.x;
					    u_xlat4.x = u_xlat4.x + (-vs_TEXCOORD3.z);
					    u_xlat4.x = u_xlat4.x * _InvFade;
					    u_xlat4.x = clamp(u_xlat4.x, 0.0, 1.0);
					    u_xlat1.w = u_xlat4.x * vs_COLOR0.w;
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat3 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2 = u_xlat2 + (-u_xlat3);
					    u_xlat2 = vec4(vs_TEXCOORD1) * u_xlat2 + u_xlat3;
					    u_xlat2 = u_xlat2 + u_xlat2;
					    u_xlat2 = u_xlat2 * _TintColor;
					    u_xlat1.xyz = vs_COLOR0.xyz;
					    u_xlat1 = u_xlat1 * u_xlat2;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat4.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat4.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendMul2" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendMul2" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec3 u_xlat4;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat4.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat1 = texture(_CameraDepthTexture, u_xlat4.xy);
					    u_xlat4.x = _ZBufferParams.z * u_xlat1.x + _ZBufferParams.w;
					    u_xlat4.x = float(1.0) / u_xlat4.x;
					    u_xlat4.x = u_xlat4.x + (-vs_TEXCOORD3.z);
					    u_xlat4.x = u_xlat4.x * _InvFade;
					    u_xlat4.x = clamp(u_xlat4.x, 0.0, 1.0);
					    u_xlat1.w = u_xlat4.x * vs_COLOR0.w;
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat3 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2 = u_xlat2 + (-u_xlat3);
					    u_xlat2 = vec4(vs_TEXCOORD1) * u_xlat2 + u_xlat3;
					    u_xlat2 = u_xlat2 + u_xlat2;
					    u_xlat2 = u_xlat2 * _TintColor;
					    u_xlat1.xyz = vs_COLOR0.xyz;
					    u_xlat1 = u_xlat1 * u_xlat2;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat4.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat4.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec3 u_xlat4;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat4.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat1 = texture(_CameraDepthTexture, u_xlat4.xy);
					    u_xlat4.x = _ZBufferParams.z * u_xlat1.x + _ZBufferParams.w;
					    u_xlat4.x = float(1.0) / u_xlat4.x;
					    u_xlat4.x = u_xlat4.x + (-vs_TEXCOORD3.z);
					    u_xlat4.x = u_xlat4.x * _InvFade;
					    u_xlat4.x = clamp(u_xlat4.x, 0.0, 1.0);
					    u_xlat1.w = u_xlat4.x * vs_COLOR0.w;
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat3 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2 = u_xlat2 + (-u_xlat3);
					    u_xlat2 = vec4(vs_TEXCOORD1) * u_xlat2 + u_xlat3;
					    u_xlat2 = u_xlat2 + u_xlat2;
					    u_xlat2 = u_xlat2 * _TintColor;
					    u_xlat1.xyz = vs_COLOR0.xyz;
					    u_xlat1 = u_xlat1 * u_xlat2;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat4.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat4.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendMul2" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[7];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat0.w = u_xlat0.w;
					    u_xlat0.w = clamp(u_xlat0.w, 0.0, 1.0);
					    u_xlat1 = u_xlat0 + vec4(-0.5, -0.5, -0.5, -0.5);
					    SV_Target0 = u_xlat0.wwww * u_xlat1 + vec4(0.5, 0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[6];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat0.w = u_xlat0.w;
					    u_xlat0.w = clamp(u_xlat0.w, 0.0, 1.0);
					    u_xlat1 = u_xlat0 + vec4(-0.5, -0.5, -0.5, -0.5);
					    SV_Target0 = u_xlat0.wwww * u_xlat1 + vec4(0.5, 0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendMul2" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[7];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat0.w = u_xlat0.w;
					    u_xlat0.w = clamp(u_xlat0.w, 0.0, 1.0);
					    u_xlat1 = u_xlat0 + vec4(-0.5, -0.5, -0.5, -0.5);
					    SV_Target0 = u_xlat0.wwww * u_xlat1 + vec4(0.5, 0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[6];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat0.w = u_xlat0.w;
					    u_xlat0.w = clamp(u_xlat0.w, 0.0, 1.0);
					    u_xlat1 = u_xlat0 + vec4(-0.5, -0.5, -0.5, -0.5);
					    SV_Target0 = u_xlat0.wwww * u_xlat1 + vec4(0.5, 0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendMul2" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					float u_xlat9;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat0.w = u_xlat0.w;
					    u_xlat0.w = clamp(u_xlat0.w, 0.0, 1.0);
					    u_xlat1 = u_xlat0 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat0.xyz = u_xlat0.www * u_xlat1.xyz;
					    SV_Target0.w = u_xlat0.w * u_xlat1.w + 0.5;
					    u_xlat9 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat9 = (-u_xlat9) + 1.0;
					    u_xlat9 = u_xlat9 * _ProjectionParams.z;
					    u_xlat9 = max(u_xlat9, 0.0);
					    u_xlat9 = u_xlat9 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat9 = clamp(u_xlat9, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat9) * u_xlat0.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					float u_xlat9;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat0.w = u_xlat0.w;
					    u_xlat0.w = clamp(u_xlat0.w, 0.0, 1.0);
					    u_xlat1 = u_xlat0 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat0.xyz = u_xlat0.www * u_xlat1.xyz;
					    SV_Target0.w = u_xlat0.w * u_xlat1.w + 0.5;
					    u_xlat9 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat9 = (-u_xlat9) + 1.0;
					    u_xlat9 = u_xlat9 * _ProjectionParams.z;
					    u_xlat9 = max(u_xlat9, 0.0);
					    u_xlat9 = u_xlat9 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat9 = clamp(u_xlat9, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat9) * u_xlat0.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendMul2" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					float u_xlat9;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat0.w = u_xlat0.w;
					    u_xlat0.w = clamp(u_xlat0.w, 0.0, 1.0);
					    u_xlat1 = u_xlat0 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat0.xyz = u_xlat0.www * u_xlat1.xyz;
					    SV_Target0.w = u_xlat0.w * u_xlat1.w + 0.5;
					    u_xlat9 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat9 = (-u_xlat9) + 1.0;
					    u_xlat9 = u_xlat9 * _ProjectionParams.z;
					    u_xlat9 = max(u_xlat9, 0.0);
					    u_xlat9 = u_xlat9 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat9 = clamp(u_xlat9, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat9) * u_xlat0.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					float u_xlat9;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat0.w = u_xlat0.w;
					    u_xlat0.w = clamp(u_xlat0.w, 0.0, 1.0);
					    u_xlat1 = u_xlat0 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat0.xyz = u_xlat0.www * u_xlat1.xyz;
					    SV_Target0.w = u_xlat0.w * u_xlat1.w + 0.5;
					    u_xlat9 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat9 = (-u_xlat9) + 1.0;
					    u_xlat9 = u_xlat9 * _ProjectionParams.z;
					    u_xlat9 = max(u_xlat9, 0.0);
					    u_xlat9 = u_xlat9 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat9 = clamp(u_xlat9, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat9) * u_xlat0.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendMul2" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec3 u_xlat4;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat4.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat1 = texture(_CameraDepthTexture, u_xlat4.xy);
					    u_xlat4.x = _ZBufferParams.z * u_xlat1.x + _ZBufferParams.w;
					    u_xlat4.x = float(1.0) / u_xlat4.x;
					    u_xlat4.x = u_xlat4.x + (-vs_TEXCOORD3.z);
					    u_xlat4.x = u_xlat4.x * _InvFade;
					    u_xlat4.x = clamp(u_xlat4.x, 0.0, 1.0);
					    u_xlat1.w = u_xlat4.x * vs_COLOR0.w;
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat3 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2 = u_xlat2 + (-u_xlat3);
					    u_xlat2 = vec4(vs_TEXCOORD1) * u_xlat2 + u_xlat3;
					    u_xlat2 = u_xlat2 + u_xlat2;
					    u_xlat2 = u_xlat2 * _TintColor;
					    u_xlat1.xyz = vs_COLOR0.xyz;
					    u_xlat1 = u_xlat1 * u_xlat2;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat4.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat4.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec3 u_xlat4;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat4.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat1 = texture(_CameraDepthTexture, u_xlat4.xy);
					    u_xlat4.x = _ZBufferParams.z * u_xlat1.x + _ZBufferParams.w;
					    u_xlat4.x = float(1.0) / u_xlat4.x;
					    u_xlat4.x = u_xlat4.x + (-vs_TEXCOORD3.z);
					    u_xlat4.x = u_xlat4.x * _InvFade;
					    u_xlat4.x = clamp(u_xlat4.x, 0.0, 1.0);
					    u_xlat1.w = u_xlat4.x * vs_COLOR0.w;
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat3 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2 = u_xlat2 + (-u_xlat3);
					    u_xlat2 = vec4(vs_TEXCOORD1) * u_xlat2 + u_xlat3;
					    u_xlat2 = u_xlat2 + u_xlat2;
					    u_xlat2 = u_xlat2 * _TintColor;
					    u_xlat1.xyz = vs_COLOR0.xyz;
					    u_xlat1 = u_xlat1 * u_xlat2;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat4.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat4.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendMul2" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec3 u_xlat4;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat4.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat1 = texture(_CameraDepthTexture, u_xlat4.xy);
					    u_xlat4.x = _ZBufferParams.z * u_xlat1.x + _ZBufferParams.w;
					    u_xlat4.x = float(1.0) / u_xlat4.x;
					    u_xlat4.x = u_xlat4.x + (-vs_TEXCOORD3.z);
					    u_xlat4.x = u_xlat4.x * _InvFade;
					    u_xlat4.x = clamp(u_xlat4.x, 0.0, 1.0);
					    u_xlat1.w = u_xlat4.x * vs_COLOR0.w;
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat3 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2 = u_xlat2 + (-u_xlat3);
					    u_xlat2 = vec4(vs_TEXCOORD1) * u_xlat2 + u_xlat3;
					    u_xlat2 = u_xlat2 + u_xlat2;
					    u_xlat2 = u_xlat2 * _TintColor;
					    u_xlat1.xyz = vs_COLOR0.xyz;
					    u_xlat1 = u_xlat1 * u_xlat2;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat4.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat4.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec3 u_xlat4;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat4.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat1 = texture(_CameraDepthTexture, u_xlat4.xy);
					    u_xlat4.x = _ZBufferParams.z * u_xlat1.x + _ZBufferParams.w;
					    u_xlat4.x = float(1.0) / u_xlat4.x;
					    u_xlat4.x = u_xlat4.x + (-vs_TEXCOORD3.z);
					    u_xlat4.x = u_xlat4.x * _InvFade;
					    u_xlat4.x = clamp(u_xlat4.x, 0.0, 1.0);
					    u_xlat1.w = u_xlat4.x * vs_COLOR0.w;
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat3 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2 = u_xlat2 + (-u_xlat3);
					    u_xlat2 = vec4(vs_TEXCOORD1) * u_xlat2 + u_xlat3;
					    u_xlat2 = u_xlat2 + u_xlat2;
					    u_xlat2 = u_xlat2 * _TintColor;
					    u_xlat1.xyz = vs_COLOR0.xyz;
					    u_xlat1 = u_xlat1 * u_xlat2;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat4.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat4.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendMul2" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec3 u_xlat4;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat4.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat1 = texture(_CameraDepthTexture, u_xlat4.xy);
					    u_xlat4.x = _ZBufferParams.z * u_xlat1.x + _ZBufferParams.w;
					    u_xlat4.x = float(1.0) / u_xlat4.x;
					    u_xlat4.x = u_xlat4.x + (-vs_TEXCOORD3.z);
					    u_xlat4.x = u_xlat4.x * _InvFade;
					    u_xlat4.x = clamp(u_xlat4.x, 0.0, 1.0);
					    u_xlat1.w = u_xlat4.x * vs_COLOR0.w;
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat3 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2 = u_xlat2 + (-u_xlat3);
					    u_xlat2 = vec4(vs_TEXCOORD1) * u_xlat2 + u_xlat3;
					    u_xlat2 = u_xlat2 + u_xlat2;
					    u_xlat2 = u_xlat2 * _TintColor;
					    u_xlat1.xyz = vs_COLOR0.xyz;
					    u_xlat1 = u_xlat1 * u_xlat2;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat4.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat4.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec3 u_xlat4;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat4.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat1 = texture(_CameraDepthTexture, u_xlat4.xy);
					    u_xlat4.x = _ZBufferParams.z * u_xlat1.x + _ZBufferParams.w;
					    u_xlat4.x = float(1.0) / u_xlat4.x;
					    u_xlat4.x = u_xlat4.x + (-vs_TEXCOORD3.z);
					    u_xlat4.x = u_xlat4.x * _InvFade;
					    u_xlat4.x = clamp(u_xlat4.x, 0.0, 1.0);
					    u_xlat1.w = u_xlat4.x * vs_COLOR0.w;
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat3 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2 = u_xlat2 + (-u_xlat3);
					    u_xlat2 = vec4(vs_TEXCOORD1) * u_xlat2 + u_xlat3;
					    u_xlat2 = u_xlat2 + u_xlat2;
					    u_xlat2 = u_xlat2 * _TintColor;
					    u_xlat1.xyz = vs_COLOR0.xyz;
					    u_xlat1 = u_xlat1 * u_xlat2;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat4.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat4.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendMul2" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec3 u_xlat4;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat4.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat1 = texture(_CameraDepthTexture, u_xlat4.xy);
					    u_xlat4.x = _ZBufferParams.z * u_xlat1.x + _ZBufferParams.w;
					    u_xlat4.x = float(1.0) / u_xlat4.x;
					    u_xlat4.x = u_xlat4.x + (-vs_TEXCOORD3.z);
					    u_xlat4.x = u_xlat4.x * _InvFade;
					    u_xlat4.x = clamp(u_xlat4.x, 0.0, 1.0);
					    u_xlat1.w = u_xlat4.x * vs_COLOR0.w;
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat3 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2 = u_xlat2 + (-u_xlat3);
					    u_xlat2 = vec4(vs_TEXCOORD1) * u_xlat2 + u_xlat3;
					    u_xlat2 = u_xlat2 + u_xlat2;
					    u_xlat2 = u_xlat2 * _TintColor;
					    u_xlat1.xyz = vs_COLOR0.xyz;
					    u_xlat1 = u_xlat1 * u_xlat2;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat4.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat4.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec3 u_xlat4;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat4.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat1 = texture(_CameraDepthTexture, u_xlat4.xy);
					    u_xlat4.x = _ZBufferParams.z * u_xlat1.x + _ZBufferParams.w;
					    u_xlat4.x = float(1.0) / u_xlat4.x;
					    u_xlat4.x = u_xlat4.x + (-vs_TEXCOORD3.z);
					    u_xlat4.x = u_xlat4.x * _InvFade;
					    u_xlat4.x = clamp(u_xlat4.x, 0.0, 1.0);
					    u_xlat1.w = u_xlat4.x * vs_COLOR0.w;
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat3 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2 = u_xlat2 + (-u_xlat3);
					    u_xlat2 = vec4(vs_TEXCOORD1) * u_xlat2 + u_xlat3;
					    u_xlat2 = u_xlat2 + u_xlat2;
					    u_xlat2 = u_xlat2 * _TintColor;
					    u_xlat1.xyz = vs_COLOR0.xyz;
					    u_xlat1 = u_xlat1 * u_xlat2;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat4.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat4.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendMul2" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat6;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat0 = u_xlat0 * vs_COLOR0;
					    u_xlat6 = u_xlat0.w;
					    u_xlat6 = clamp(u_xlat6, 0.0, 1.0);
					    u_xlat0.w = u_xlat6 * vs_TEXCOORD4;
					    u_xlat1 = u_xlat0 + vec4(-0.5, -0.5, -0.5, -0.5);
					    SV_Target0 = u_xlat0.wwww * u_xlat1 + vec4(0.5, 0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat6;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat0 = u_xlat0 * vs_COLOR0;
					    u_xlat6 = u_xlat0.w;
					    u_xlat6 = clamp(u_xlat6, 0.0, 1.0);
					    u_xlat0.w = u_xlat6 * vs_TEXCOORD4;
					    u_xlat1 = u_xlat0 + vec4(-0.5, -0.5, -0.5, -0.5);
					    SV_Target0 = u_xlat0.wwww * u_xlat1 + vec4(0.5, 0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendMul2" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[7];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					float u_xlat9;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat9 = u_xlat0.w;
					    u_xlat9 = clamp(u_xlat9, 0.0, 1.0);
					    u_xlat0.w = u_xlat9 * vs_TEXCOORD4;
					    u_xlat1 = u_xlat0 + vec4(-0.5, -0.5, -0.5, -0.5);
					    SV_Target0 = u_xlat0.wwww * u_xlat1 + vec4(0.5, 0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[6];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					float u_xlat9;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat9 = u_xlat0.w;
					    u_xlat9 = clamp(u_xlat9, 0.0, 1.0);
					    u_xlat0.w = u_xlat9 * vs_TEXCOORD4;
					    u_xlat1 = u_xlat0 + vec4(-0.5, -0.5, -0.5, -0.5);
					    SV_Target0 = u_xlat0.wwww * u_xlat1 + vec4(0.5, 0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendMul2" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendMul2" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					float u_xlat9;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat9 = u_xlat0.w;
					    u_xlat9 = clamp(u_xlat9, 0.0, 1.0);
					    u_xlat0.w = u_xlat9 * vs_TEXCOORD4;
					    u_xlat1 = u_xlat0 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat0.xyz = u_xlat0.www * u_xlat1.xyz;
					    SV_Target0.w = u_xlat0.w * u_xlat1.w + 0.5;
					    u_xlat9 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat9 = (-u_xlat9) + 1.0;
					    u_xlat9 = u_xlat9 * _ProjectionParams.z;
					    u_xlat9 = max(u_xlat9, 0.0);
					    u_xlat9 = u_xlat9 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat9 = clamp(u_xlat9, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat9) * u_xlat0.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					float u_xlat9;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat9 = u_xlat0.w;
					    u_xlat9 = clamp(u_xlat9, 0.0, 1.0);
					    u_xlat0.w = u_xlat9 * vs_TEXCOORD4;
					    u_xlat1 = u_xlat0 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat0.xyz = u_xlat0.www * u_xlat1.xyz;
					    SV_Target0.w = u_xlat0.w * u_xlat1.w + 0.5;
					    u_xlat9 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat9 = (-u_xlat9) + 1.0;
					    u_xlat9 = u_xlat9 * _ProjectionParams.z;
					    u_xlat9 = max(u_xlat9, 0.0);
					    u_xlat9 = u_xlat9 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat9 = clamp(u_xlat9, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat9) * u_xlat0.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendMul2" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendMul2" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec3 u_xlat4;
					float u_xlat13;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat4.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat1 = texture(_CameraDepthTexture, u_xlat4.xy);
					    u_xlat4.x = _ZBufferParams.z * u_xlat1.x + _ZBufferParams.w;
					    u_xlat4.x = float(1.0) / u_xlat4.x;
					    u_xlat4.x = u_xlat4.x + (-vs_TEXCOORD3.z);
					    u_xlat4.x = u_xlat4.x * _InvFade;
					    u_xlat4.x = clamp(u_xlat4.x, 0.0, 1.0);
					    u_xlat1.w = u_xlat4.x * vs_COLOR0.w;
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat3 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2 = u_xlat2 + (-u_xlat3);
					    u_xlat2 = vec4(vs_TEXCOORD1) * u_xlat2 + u_xlat3;
					    u_xlat2 = u_xlat2 + u_xlat2;
					    u_xlat2 = u_xlat2 * _TintColor;
					    u_xlat1.xyz = vs_COLOR0.xyz;
					    u_xlat1 = u_xlat1 * u_xlat2;
					    u_xlat13 = u_xlat1.w;
					    u_xlat13 = clamp(u_xlat13, 0.0, 1.0);
					    u_xlat1.w = u_xlat13 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat4.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat4.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec3 u_xlat4;
					float u_xlat13;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat4.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat1 = texture(_CameraDepthTexture, u_xlat4.xy);
					    u_xlat4.x = _ZBufferParams.z * u_xlat1.x + _ZBufferParams.w;
					    u_xlat4.x = float(1.0) / u_xlat4.x;
					    u_xlat4.x = u_xlat4.x + (-vs_TEXCOORD3.z);
					    u_xlat4.x = u_xlat4.x * _InvFade;
					    u_xlat4.x = clamp(u_xlat4.x, 0.0, 1.0);
					    u_xlat1.w = u_xlat4.x * vs_COLOR0.w;
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat3 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2 = u_xlat2 + (-u_xlat3);
					    u_xlat2 = vec4(vs_TEXCOORD1) * u_xlat2 + u_xlat3;
					    u_xlat2 = u_xlat2 + u_xlat2;
					    u_xlat2 = u_xlat2 * _TintColor;
					    u_xlat1.xyz = vs_COLOR0.xyz;
					    u_xlat1 = u_xlat1 * u_xlat2;
					    u_xlat13 = u_xlat1.w;
					    u_xlat13 = clamp(u_xlat13, 0.0, 1.0);
					    u_xlat1.w = u_xlat13 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat4.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat4.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendMul2" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendMul2" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec3 u_xlat4;
					float u_xlat13;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat4.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat1 = texture(_CameraDepthTexture, u_xlat4.xy);
					    u_xlat4.x = _ZBufferParams.z * u_xlat1.x + _ZBufferParams.w;
					    u_xlat4.x = float(1.0) / u_xlat4.x;
					    u_xlat4.x = u_xlat4.x + (-vs_TEXCOORD3.z);
					    u_xlat4.x = u_xlat4.x * _InvFade;
					    u_xlat4.x = clamp(u_xlat4.x, 0.0, 1.0);
					    u_xlat1.w = u_xlat4.x * vs_COLOR0.w;
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat3 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2 = u_xlat2 + (-u_xlat3);
					    u_xlat2 = vec4(vs_TEXCOORD1) * u_xlat2 + u_xlat3;
					    u_xlat2 = u_xlat2 + u_xlat2;
					    u_xlat2 = u_xlat2 * _TintColor;
					    u_xlat1.xyz = vs_COLOR0.xyz;
					    u_xlat1 = u_xlat1 * u_xlat2;
					    u_xlat13 = u_xlat1.w;
					    u_xlat13 = clamp(u_xlat13, 0.0, 1.0);
					    u_xlat1.w = u_xlat13 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat4.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat4.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec3 u_xlat4;
					float u_xlat13;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat4.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat1 = texture(_CameraDepthTexture, u_xlat4.xy);
					    u_xlat4.x = _ZBufferParams.z * u_xlat1.x + _ZBufferParams.w;
					    u_xlat4.x = float(1.0) / u_xlat4.x;
					    u_xlat4.x = u_xlat4.x + (-vs_TEXCOORD3.z);
					    u_xlat4.x = u_xlat4.x * _InvFade;
					    u_xlat4.x = clamp(u_xlat4.x, 0.0, 1.0);
					    u_xlat1.w = u_xlat4.x * vs_COLOR0.w;
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat3 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2 = u_xlat2 + (-u_xlat3);
					    u_xlat2 = vec4(vs_TEXCOORD1) * u_xlat2 + u_xlat3;
					    u_xlat2 = u_xlat2 + u_xlat2;
					    u_xlat2 = u_xlat2 * _TintColor;
					    u_xlat1.xyz = vs_COLOR0.xyz;
					    u_xlat1 = u_xlat1 * u_xlat2;
					    u_xlat13 = u_xlat1.w;
					    u_xlat13 = clamp(u_xlat13, 0.0, 1.0);
					    u_xlat1.w = u_xlat13 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat4.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat4.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendMul2" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[7];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					float u_xlat9;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat9 = u_xlat0.w;
					    u_xlat9 = clamp(u_xlat9, 0.0, 1.0);
					    u_xlat0.w = u_xlat9 * vs_TEXCOORD4;
					    u_xlat1 = u_xlat0 + vec4(-0.5, -0.5, -0.5, -0.5);
					    SV_Target0 = u_xlat0.wwww * u_xlat1 + vec4(0.5, 0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[6];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					float u_xlat9;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat9 = u_xlat0.w;
					    u_xlat9 = clamp(u_xlat9, 0.0, 1.0);
					    u_xlat0.w = u_xlat9 * vs_TEXCOORD4;
					    u_xlat1 = u_xlat0 + vec4(-0.5, -0.5, -0.5, -0.5);
					    SV_Target0 = u_xlat0.wwww * u_xlat1 + vec4(0.5, 0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendMul2" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[7];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					float u_xlat9;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat9 = u_xlat0.w;
					    u_xlat9 = clamp(u_xlat9, 0.0, 1.0);
					    u_xlat0.w = u_xlat9 * vs_TEXCOORD4;
					    u_xlat1 = u_xlat0 + vec4(-0.5, -0.5, -0.5, -0.5);
					    SV_Target0 = u_xlat0.wwww * u_xlat1 + vec4(0.5, 0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[6];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					float u_xlat9;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat9 = u_xlat0.w;
					    u_xlat9 = clamp(u_xlat9, 0.0, 1.0);
					    u_xlat0.w = u_xlat9 * vs_TEXCOORD4;
					    u_xlat1 = u_xlat0 + vec4(-0.5, -0.5, -0.5, -0.5);
					    SV_Target0 = u_xlat0.wwww * u_xlat1 + vec4(0.5, 0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendMul2" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					float u_xlat9;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat9 = u_xlat0.w;
					    u_xlat9 = clamp(u_xlat9, 0.0, 1.0);
					    u_xlat0.w = u_xlat9 * vs_TEXCOORD4;
					    u_xlat1 = u_xlat0 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat0.xyz = u_xlat0.www * u_xlat1.xyz;
					    SV_Target0.w = u_xlat0.w * u_xlat1.w + 0.5;
					    u_xlat9 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat9 = (-u_xlat9) + 1.0;
					    u_xlat9 = u_xlat9 * _ProjectionParams.z;
					    u_xlat9 = max(u_xlat9, 0.0);
					    u_xlat9 = u_xlat9 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat9 = clamp(u_xlat9, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat9) * u_xlat0.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					float u_xlat9;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat9 = u_xlat0.w;
					    u_xlat9 = clamp(u_xlat9, 0.0, 1.0);
					    u_xlat0.w = u_xlat9 * vs_TEXCOORD4;
					    u_xlat1 = u_xlat0 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat0.xyz = u_xlat0.www * u_xlat1.xyz;
					    SV_Target0.w = u_xlat0.w * u_xlat1.w + 0.5;
					    u_xlat9 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat9 = (-u_xlat9) + 1.0;
					    u_xlat9 = u_xlat9 * _ProjectionParams.z;
					    u_xlat9 = max(u_xlat9, 0.0);
					    u_xlat9 = u_xlat9 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat9 = clamp(u_xlat9, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat9) * u_xlat0.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendMul2" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					float u_xlat9;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat9 = u_xlat0.w;
					    u_xlat9 = clamp(u_xlat9, 0.0, 1.0);
					    u_xlat0.w = u_xlat9 * vs_TEXCOORD4;
					    u_xlat1 = u_xlat0 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat0.xyz = u_xlat0.www * u_xlat1.xyz;
					    SV_Target0.w = u_xlat0.w * u_xlat1.w + 0.5;
					    u_xlat9 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat9 = (-u_xlat9) + 1.0;
					    u_xlat9 = u_xlat9 * _ProjectionParams.z;
					    u_xlat9 = max(u_xlat9, 0.0);
					    u_xlat9 = u_xlat9 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat9 = clamp(u_xlat9, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat9) * u_xlat0.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					float u_xlat9;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat9 = u_xlat0.w;
					    u_xlat9 = clamp(u_xlat9, 0.0, 1.0);
					    u_xlat0.w = u_xlat9 * vs_TEXCOORD4;
					    u_xlat1 = u_xlat0 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat0.xyz = u_xlat0.www * u_xlat1.xyz;
					    SV_Target0.w = u_xlat0.w * u_xlat1.w + 0.5;
					    u_xlat9 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat9 = (-u_xlat9) + 1.0;
					    u_xlat9 = u_xlat9 * _ProjectionParams.z;
					    u_xlat9 = max(u_xlat9, 0.0);
					    u_xlat9 = u_xlat9 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat9 = clamp(u_xlat9, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat9) * u_xlat0.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendMul2" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec3 u_xlat4;
					float u_xlat13;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat4.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat1 = texture(_CameraDepthTexture, u_xlat4.xy);
					    u_xlat4.x = _ZBufferParams.z * u_xlat1.x + _ZBufferParams.w;
					    u_xlat4.x = float(1.0) / u_xlat4.x;
					    u_xlat4.x = u_xlat4.x + (-vs_TEXCOORD3.z);
					    u_xlat4.x = u_xlat4.x * _InvFade;
					    u_xlat4.x = clamp(u_xlat4.x, 0.0, 1.0);
					    u_xlat1.w = u_xlat4.x * vs_COLOR0.w;
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat3 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2 = u_xlat2 + (-u_xlat3);
					    u_xlat2 = vec4(vs_TEXCOORD1) * u_xlat2 + u_xlat3;
					    u_xlat2 = u_xlat2 + u_xlat2;
					    u_xlat2 = u_xlat2 * _TintColor;
					    u_xlat1.xyz = vs_COLOR0.xyz;
					    u_xlat1 = u_xlat1 * u_xlat2;
					    u_xlat13 = u_xlat1.w;
					    u_xlat13 = clamp(u_xlat13, 0.0, 1.0);
					    u_xlat1.w = u_xlat13 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat4.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat4.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec3 u_xlat4;
					float u_xlat13;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat4.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat1 = texture(_CameraDepthTexture, u_xlat4.xy);
					    u_xlat4.x = _ZBufferParams.z * u_xlat1.x + _ZBufferParams.w;
					    u_xlat4.x = float(1.0) / u_xlat4.x;
					    u_xlat4.x = u_xlat4.x + (-vs_TEXCOORD3.z);
					    u_xlat4.x = u_xlat4.x * _InvFade;
					    u_xlat4.x = clamp(u_xlat4.x, 0.0, 1.0);
					    u_xlat1.w = u_xlat4.x * vs_COLOR0.w;
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat3 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2 = u_xlat2 + (-u_xlat3);
					    u_xlat2 = vec4(vs_TEXCOORD1) * u_xlat2 + u_xlat3;
					    u_xlat2 = u_xlat2 + u_xlat2;
					    u_xlat2 = u_xlat2 * _TintColor;
					    u_xlat1.xyz = vs_COLOR0.xyz;
					    u_xlat1 = u_xlat1 * u_xlat2;
					    u_xlat13 = u_xlat1.w;
					    u_xlat13 = clamp(u_xlat13, 0.0, 1.0);
					    u_xlat1.w = u_xlat13 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat4.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat4.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendMul2" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec3 u_xlat4;
					float u_xlat13;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat4.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat1 = texture(_CameraDepthTexture, u_xlat4.xy);
					    u_xlat4.x = _ZBufferParams.z * u_xlat1.x + _ZBufferParams.w;
					    u_xlat4.x = float(1.0) / u_xlat4.x;
					    u_xlat4.x = u_xlat4.x + (-vs_TEXCOORD3.z);
					    u_xlat4.x = u_xlat4.x * _InvFade;
					    u_xlat4.x = clamp(u_xlat4.x, 0.0, 1.0);
					    u_xlat1.w = u_xlat4.x * vs_COLOR0.w;
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat3 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2 = u_xlat2 + (-u_xlat3);
					    u_xlat2 = vec4(vs_TEXCOORD1) * u_xlat2 + u_xlat3;
					    u_xlat2 = u_xlat2 + u_xlat2;
					    u_xlat2 = u_xlat2 * _TintColor;
					    u_xlat1.xyz = vs_COLOR0.xyz;
					    u_xlat1 = u_xlat1 * u_xlat2;
					    u_xlat13 = u_xlat1.w;
					    u_xlat13 = clamp(u_xlat13, 0.0, 1.0);
					    u_xlat1.w = u_xlat13 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat4.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat4.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec3 u_xlat4;
					float u_xlat13;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat4.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat1 = texture(_CameraDepthTexture, u_xlat4.xy);
					    u_xlat4.x = _ZBufferParams.z * u_xlat1.x + _ZBufferParams.w;
					    u_xlat4.x = float(1.0) / u_xlat4.x;
					    u_xlat4.x = u_xlat4.x + (-vs_TEXCOORD3.z);
					    u_xlat4.x = u_xlat4.x * _InvFade;
					    u_xlat4.x = clamp(u_xlat4.x, 0.0, 1.0);
					    u_xlat1.w = u_xlat4.x * vs_COLOR0.w;
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat3 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2 = u_xlat2 + (-u_xlat3);
					    u_xlat2 = vec4(vs_TEXCOORD1) * u_xlat2 + u_xlat3;
					    u_xlat2 = u_xlat2 + u_xlat2;
					    u_xlat2 = u_xlat2 * _TintColor;
					    u_xlat1.xyz = vs_COLOR0.xyz;
					    u_xlat1 = u_xlat1 * u_xlat2;
					    u_xlat13 = u_xlat1.w;
					    u_xlat13 = clamp(u_xlat13, 0.0, 1.0);
					    u_xlat1.w = u_xlat13 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat4.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat4.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendMul2" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec3 u_xlat4;
					float u_xlat13;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat4.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat1 = texture(_CameraDepthTexture, u_xlat4.xy);
					    u_xlat4.x = _ZBufferParams.z * u_xlat1.x + _ZBufferParams.w;
					    u_xlat4.x = float(1.0) / u_xlat4.x;
					    u_xlat4.x = u_xlat4.x + (-vs_TEXCOORD3.z);
					    u_xlat4.x = u_xlat4.x * _InvFade;
					    u_xlat4.x = clamp(u_xlat4.x, 0.0, 1.0);
					    u_xlat1.w = u_xlat4.x * vs_COLOR0.w;
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat3 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2 = u_xlat2 + (-u_xlat3);
					    u_xlat2 = vec4(vs_TEXCOORD1) * u_xlat2 + u_xlat3;
					    u_xlat2 = u_xlat2 + u_xlat2;
					    u_xlat2 = u_xlat2 * _TintColor;
					    u_xlat1.xyz = vs_COLOR0.xyz;
					    u_xlat1 = u_xlat1 * u_xlat2;
					    u_xlat13 = u_xlat1.w;
					    u_xlat13 = clamp(u_xlat13, 0.0, 1.0);
					    u_xlat1.w = u_xlat13 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat4.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat4.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec3 u_xlat4;
					float u_xlat13;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat4.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat1 = texture(_CameraDepthTexture, u_xlat4.xy);
					    u_xlat4.x = _ZBufferParams.z * u_xlat1.x + _ZBufferParams.w;
					    u_xlat4.x = float(1.0) / u_xlat4.x;
					    u_xlat4.x = u_xlat4.x + (-vs_TEXCOORD3.z);
					    u_xlat4.x = u_xlat4.x * _InvFade;
					    u_xlat4.x = clamp(u_xlat4.x, 0.0, 1.0);
					    u_xlat1.w = u_xlat4.x * vs_COLOR0.w;
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat3 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2 = u_xlat2 + (-u_xlat3);
					    u_xlat2 = vec4(vs_TEXCOORD1) * u_xlat2 + u_xlat3;
					    u_xlat2 = u_xlat2 + u_xlat2;
					    u_xlat2 = u_xlat2 * _TintColor;
					    u_xlat1.xyz = vs_COLOR0.xyz;
					    u_xlat1 = u_xlat1 * u_xlat2;
					    u_xlat13 = u_xlat1.w;
					    u_xlat13 = clamp(u_xlat13, 0.0, 1.0);
					    u_xlat1.w = u_xlat13 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat4.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat4.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendMul2" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec3 u_xlat4;
					float u_xlat13;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat4.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat1 = texture(_CameraDepthTexture, u_xlat4.xy);
					    u_xlat4.x = _ZBufferParams.z * u_xlat1.x + _ZBufferParams.w;
					    u_xlat4.x = float(1.0) / u_xlat4.x;
					    u_xlat4.x = u_xlat4.x + (-vs_TEXCOORD3.z);
					    u_xlat4.x = u_xlat4.x * _InvFade;
					    u_xlat4.x = clamp(u_xlat4.x, 0.0, 1.0);
					    u_xlat1.w = u_xlat4.x * vs_COLOR0.w;
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat3 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2 = u_xlat2 + (-u_xlat3);
					    u_xlat2 = vec4(vs_TEXCOORD1) * u_xlat2 + u_xlat3;
					    u_xlat2 = u_xlat2 + u_xlat2;
					    u_xlat2 = u_xlat2 * _TintColor;
					    u_xlat1.xyz = vs_COLOR0.xyz;
					    u_xlat1 = u_xlat1 * u_xlat2;
					    u_xlat13 = u_xlat1.w;
					    u_xlat13 = clamp(u_xlat13, 0.0, 1.0);
					    u_xlat1.w = u_xlat13 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat4.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat4.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec3 u_xlat4;
					float u_xlat13;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat4.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat1 = texture(_CameraDepthTexture, u_xlat4.xy);
					    u_xlat4.x = _ZBufferParams.z * u_xlat1.x + _ZBufferParams.w;
					    u_xlat4.x = float(1.0) / u_xlat4.x;
					    u_xlat4.x = u_xlat4.x + (-vs_TEXCOORD3.z);
					    u_xlat4.x = u_xlat4.x * _InvFade;
					    u_xlat4.x = clamp(u_xlat4.x, 0.0, 1.0);
					    u_xlat1.w = u_xlat4.x * vs_COLOR0.w;
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat3 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2 = u_xlat2 + (-u_xlat3);
					    u_xlat2 = vec4(vs_TEXCOORD1) * u_xlat2 + u_xlat3;
					    u_xlat2 = u_xlat2 + u_xlat2;
					    u_xlat2 = u_xlat2 * _TintColor;
					    u_xlat1.xyz = vs_COLOR0.xyz;
					    u_xlat1 = u_xlat1 * u_xlat2;
					    u_xlat13 = u_xlat1.w;
					    u_xlat13 = clamp(u_xlat13, 0.0, 1.0);
					    u_xlat1.w = u_xlat13 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat4.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat4.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendMul2" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					bool u_xlatb1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1.x = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat0.w = u_xlat0.w * u_xlat1.x;
					    u_xlat0 = u_xlat0 * vs_COLOR0;
					    u_xlat0.w = u_xlat0.w;
					    u_xlat0.w = clamp(u_xlat0.w, 0.0, 1.0);
					    u_xlat1 = u_xlat0 + vec4(-0.5, -0.5, -0.5, -0.5);
					    SV_Target0 = u_xlat0.wwww * u_xlat1 + vec4(0.5, 0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					bool u_xlatb1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1.x = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat0.w = u_xlat0.w * u_xlat1.x;
					    u_xlat0 = u_xlat0 * vs_COLOR0;
					    u_xlat0.w = u_xlat0.w;
					    u_xlat0.w = clamp(u_xlat0.w, 0.0, 1.0);
					    u_xlat1 = u_xlat0 + vec4(-0.5, -0.5, -0.5, -0.5);
					    SV_Target0 = u_xlat0.wwww * u_xlat1 + vec4(0.5, 0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendMul2" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[7];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					bool u_xlatb2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2.x = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2.x;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat0.w = u_xlat0.w;
					    u_xlat0.w = clamp(u_xlat0.w, 0.0, 1.0);
					    u_xlat1 = u_xlat0 + vec4(-0.5, -0.5, -0.5, -0.5);
					    SV_Target0 = u_xlat0.wwww * u_xlat1 + vec4(0.5, 0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[6];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					bool u_xlatb2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2.x = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2.x;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat0.w = u_xlat0.w;
					    u_xlat0.w = clamp(u_xlat0.w, 0.0, 1.0);
					    u_xlat1 = u_xlat0 + vec4(-0.5, -0.5, -0.5, -0.5);
					    SV_Target0 = u_xlat0.wwww * u_xlat1 + vec4(0.5, 0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendMul2" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3.x;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3.x;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendMul2" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					bool u_xlatb2;
					float u_xlat9;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2.x = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2.x;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat0.w = u_xlat0.w;
					    u_xlat0.w = clamp(u_xlat0.w, 0.0, 1.0);
					    u_xlat1 = u_xlat0 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat0.xyz = u_xlat0.www * u_xlat1.xyz;
					    SV_Target0.w = u_xlat0.w * u_xlat1.w + 0.5;
					    u_xlat9 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat9 = (-u_xlat9) + 1.0;
					    u_xlat9 = u_xlat9 * _ProjectionParams.z;
					    u_xlat9 = max(u_xlat9, 0.0);
					    u_xlat9 = u_xlat9 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat9 = clamp(u_xlat9, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat9) * u_xlat0.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					bool u_xlatb2;
					float u_xlat9;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2.x = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2.x;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat0.w = u_xlat0.w;
					    u_xlat0.w = clamp(u_xlat0.w, 0.0, 1.0);
					    u_xlat1 = u_xlat0 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat0.xyz = u_xlat0.www * u_xlat1.xyz;
					    SV_Target0.w = u_xlat0.w * u_xlat1.w + 0.5;
					    u_xlat9 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat9 = (-u_xlat9) + 1.0;
					    u_xlat9 = u_xlat9 * _ProjectionParams.z;
					    u_xlat9 = max(u_xlat9, 0.0);
					    u_xlat9 = u_xlat9 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat9 = clamp(u_xlat9, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat9) * u_xlat0.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendMul2" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3.x;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3.x;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendMul2" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					bool u_xlatb2;
					float u_xlat9;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2.x = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2.x;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat0.w = u_xlat0.w;
					    u_xlat0.w = clamp(u_xlat0.w, 0.0, 1.0);
					    u_xlat1 = u_xlat0 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat0.xyz = u_xlat0.www * u_xlat1.xyz;
					    SV_Target0.w = u_xlat0.w * u_xlat1.w + 0.5;
					    u_xlat9 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat9 = (-u_xlat9) + 1.0;
					    u_xlat9 = u_xlat9 * _ProjectionParams.z;
					    u_xlat9 = max(u_xlat9, 0.0);
					    u_xlat9 = u_xlat9 * unity_FogParams.y;
					    u_xlat9 = exp2((-u_xlat9));
					    u_xlat9 = min(u_xlat9, 1.0);
					    SV_Target0.xyz = vec3(u_xlat9) * u_xlat0.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					bool u_xlatb2;
					float u_xlat9;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2.x = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2.x;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat0.w = u_xlat0.w;
					    u_xlat0.w = clamp(u_xlat0.w, 0.0, 1.0);
					    u_xlat1 = u_xlat0 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat0.xyz = u_xlat0.www * u_xlat1.xyz;
					    SV_Target0.w = u_xlat0.w * u_xlat1.w + 0.5;
					    u_xlat9 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat9 = (-u_xlat9) + 1.0;
					    u_xlat9 = u_xlat9 * _ProjectionParams.z;
					    u_xlat9 = max(u_xlat9, 0.0);
					    u_xlat9 = u_xlat9 * unity_FogParams.y;
					    u_xlat9 = exp2((-u_xlat9));
					    u_xlat9 = min(u_xlat9, 1.0);
					    SV_Target0.xyz = vec3(u_xlat9) * u_xlat0.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendMul2" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3.x;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3.x;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendMul2" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					bool u_xlatb2;
					float u_xlat9;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2.x = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2.x;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat0.w = u_xlat0.w;
					    u_xlat0.w = clamp(u_xlat0.w, 0.0, 1.0);
					    u_xlat1 = u_xlat0 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat0.xyz = u_xlat0.www * u_xlat1.xyz;
					    SV_Target0.w = u_xlat0.w * u_xlat1.w + 0.5;
					    u_xlat9 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat9 = (-u_xlat9) + 1.0;
					    u_xlat9 = u_xlat9 * _ProjectionParams.z;
					    u_xlat9 = max(u_xlat9, 0.0);
					    u_xlat9 = u_xlat9 * unity_FogParams.x;
					    u_xlat9 = u_xlat9 * (-u_xlat9);
					    u_xlat9 = exp2(u_xlat9);
					    SV_Target0.xyz = vec3(u_xlat9) * u_xlat0.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					bool u_xlatb2;
					float u_xlat9;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2.x = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2.x;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat0.w = u_xlat0.w;
					    u_xlat0.w = clamp(u_xlat0.w, 0.0, 1.0);
					    u_xlat1 = u_xlat0 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat0.xyz = u_xlat0.www * u_xlat1.xyz;
					    SV_Target0.w = u_xlat0.w * u_xlat1.w + 0.5;
					    u_xlat9 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat9 = (-u_xlat9) + 1.0;
					    u_xlat9 = u_xlat9 * _ProjectionParams.z;
					    u_xlat9 = max(u_xlat9, 0.0);
					    u_xlat9 = u_xlat9 * unity_FogParams.x;
					    u_xlat9 = u_xlat9 * (-u_xlat9);
					    u_xlat9 = exp2(u_xlat9);
					    SV_Target0.xyz = vec3(u_xlat9) * u_xlat0.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendMul2" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[7];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					bool u_xlatb2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2.x = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2.x;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat0.w = u_xlat0.w;
					    u_xlat0.w = clamp(u_xlat0.w, 0.0, 1.0);
					    u_xlat1 = u_xlat0 + vec4(-0.5, -0.5, -0.5, -0.5);
					    SV_Target0 = u_xlat0.wwww * u_xlat1 + vec4(0.5, 0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[6];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					bool u_xlatb2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2.x = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2.x;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat0.w = u_xlat0.w;
					    u_xlat0.w = clamp(u_xlat0.w, 0.0, 1.0);
					    u_xlat1 = u_xlat0 + vec4(-0.5, -0.5, -0.5, -0.5);
					    SV_Target0 = u_xlat0.wwww * u_xlat1 + vec4(0.5, 0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendMul2" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[7];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					bool u_xlatb2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2.x = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2.x;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat0.w = u_xlat0.w;
					    u_xlat0.w = clamp(u_xlat0.w, 0.0, 1.0);
					    u_xlat1 = u_xlat0 + vec4(-0.5, -0.5, -0.5, -0.5);
					    SV_Target0 = u_xlat0.wwww * u_xlat1 + vec4(0.5, 0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[6];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					bool u_xlatb2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2.x = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2.x;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat0.w = u_xlat0.w;
					    u_xlat0.w = clamp(u_xlat0.w, 0.0, 1.0);
					    u_xlat1 = u_xlat0 + vec4(-0.5, -0.5, -0.5, -0.5);
					    SV_Target0 = u_xlat0.wwww * u_xlat1 + vec4(0.5, 0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendMul2" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					bool u_xlatb2;
					float u_xlat9;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2.x = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2.x;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat0.w = u_xlat0.w;
					    u_xlat0.w = clamp(u_xlat0.w, 0.0, 1.0);
					    u_xlat1 = u_xlat0 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat0.xyz = u_xlat0.www * u_xlat1.xyz;
					    SV_Target0.w = u_xlat0.w * u_xlat1.w + 0.5;
					    u_xlat9 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat9 = (-u_xlat9) + 1.0;
					    u_xlat9 = u_xlat9 * _ProjectionParams.z;
					    u_xlat9 = max(u_xlat9, 0.0);
					    u_xlat9 = u_xlat9 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat9 = clamp(u_xlat9, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat9) * u_xlat0.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					bool u_xlatb2;
					float u_xlat9;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2.x = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2.x;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat0.w = u_xlat0.w;
					    u_xlat0.w = clamp(u_xlat0.w, 0.0, 1.0);
					    u_xlat1 = u_xlat0 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat0.xyz = u_xlat0.www * u_xlat1.xyz;
					    SV_Target0.w = u_xlat0.w * u_xlat1.w + 0.5;
					    u_xlat9 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat9 = (-u_xlat9) + 1.0;
					    u_xlat9 = u_xlat9 * _ProjectionParams.z;
					    u_xlat9 = max(u_xlat9, 0.0);
					    u_xlat9 = u_xlat9 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat9 = clamp(u_xlat9, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat9) * u_xlat0.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendMul2" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					bool u_xlatb2;
					float u_xlat9;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2.x = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2.x;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat0.w = u_xlat0.w;
					    u_xlat0.w = clamp(u_xlat0.w, 0.0, 1.0);
					    u_xlat1 = u_xlat0 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat0.xyz = u_xlat0.www * u_xlat1.xyz;
					    SV_Target0.w = u_xlat0.w * u_xlat1.w + 0.5;
					    u_xlat9 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat9 = (-u_xlat9) + 1.0;
					    u_xlat9 = u_xlat9 * _ProjectionParams.z;
					    u_xlat9 = max(u_xlat9, 0.0);
					    u_xlat9 = u_xlat9 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat9 = clamp(u_xlat9, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat9) * u_xlat0.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					bool u_xlatb2;
					float u_xlat9;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2.x = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2.x;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat0.w = u_xlat0.w;
					    u_xlat0.w = clamp(u_xlat0.w, 0.0, 1.0);
					    u_xlat1 = u_xlat0 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat0.xyz = u_xlat0.www * u_xlat1.xyz;
					    SV_Target0.w = u_xlat0.w * u_xlat1.w + 0.5;
					    u_xlat9 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat9 = (-u_xlat9) + 1.0;
					    u_xlat9 = u_xlat9 * _ProjectionParams.z;
					    u_xlat9 = max(u_xlat9, 0.0);
					    u_xlat9 = u_xlat9 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat9 = clamp(u_xlat9, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat9) * u_xlat0.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendMul2" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					bool u_xlatb2;
					float u_xlat9;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2.x = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2.x;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat0.w = u_xlat0.w;
					    u_xlat0.w = clamp(u_xlat0.w, 0.0, 1.0);
					    u_xlat1 = u_xlat0 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat0.xyz = u_xlat0.www * u_xlat1.xyz;
					    SV_Target0.w = u_xlat0.w * u_xlat1.w + 0.5;
					    u_xlat9 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat9 = (-u_xlat9) + 1.0;
					    u_xlat9 = u_xlat9 * _ProjectionParams.z;
					    u_xlat9 = max(u_xlat9, 0.0);
					    u_xlat9 = u_xlat9 * unity_FogParams.y;
					    u_xlat9 = exp2((-u_xlat9));
					    u_xlat9 = min(u_xlat9, 1.0);
					    SV_Target0.xyz = vec3(u_xlat9) * u_xlat0.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					bool u_xlatb2;
					float u_xlat9;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2.x = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2.x;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat0.w = u_xlat0.w;
					    u_xlat0.w = clamp(u_xlat0.w, 0.0, 1.0);
					    u_xlat1 = u_xlat0 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat0.xyz = u_xlat0.www * u_xlat1.xyz;
					    SV_Target0.w = u_xlat0.w * u_xlat1.w + 0.5;
					    u_xlat9 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat9 = (-u_xlat9) + 1.0;
					    u_xlat9 = u_xlat9 * _ProjectionParams.z;
					    u_xlat9 = max(u_xlat9, 0.0);
					    u_xlat9 = u_xlat9 * unity_FogParams.y;
					    u_xlat9 = exp2((-u_xlat9));
					    u_xlat9 = min(u_xlat9, 1.0);
					    SV_Target0.xyz = vec3(u_xlat9) * u_xlat0.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendMul2" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					bool u_xlatb2;
					float u_xlat9;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2.x = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2.x;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat0.w = u_xlat0.w;
					    u_xlat0.w = clamp(u_xlat0.w, 0.0, 1.0);
					    u_xlat1 = u_xlat0 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat0.xyz = u_xlat0.www * u_xlat1.xyz;
					    SV_Target0.w = u_xlat0.w * u_xlat1.w + 0.5;
					    u_xlat9 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat9 = (-u_xlat9) + 1.0;
					    u_xlat9 = u_xlat9 * _ProjectionParams.z;
					    u_xlat9 = max(u_xlat9, 0.0);
					    u_xlat9 = u_xlat9 * unity_FogParams.y;
					    u_xlat9 = exp2((-u_xlat9));
					    u_xlat9 = min(u_xlat9, 1.0);
					    SV_Target0.xyz = vec3(u_xlat9) * u_xlat0.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					bool u_xlatb2;
					float u_xlat9;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2.x = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2.x;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat0.w = u_xlat0.w;
					    u_xlat0.w = clamp(u_xlat0.w, 0.0, 1.0);
					    u_xlat1 = u_xlat0 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat0.xyz = u_xlat0.www * u_xlat1.xyz;
					    SV_Target0.w = u_xlat0.w * u_xlat1.w + 0.5;
					    u_xlat9 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat9 = (-u_xlat9) + 1.0;
					    u_xlat9 = u_xlat9 * _ProjectionParams.z;
					    u_xlat9 = max(u_xlat9, 0.0);
					    u_xlat9 = u_xlat9 * unity_FogParams.y;
					    u_xlat9 = exp2((-u_xlat9));
					    u_xlat9 = min(u_xlat9, 1.0);
					    SV_Target0.xyz = vec3(u_xlat9) * u_xlat0.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendMul2" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					bool u_xlatb2;
					float u_xlat9;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2.x = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2.x;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat0.w = u_xlat0.w;
					    u_xlat0.w = clamp(u_xlat0.w, 0.0, 1.0);
					    u_xlat1 = u_xlat0 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat0.xyz = u_xlat0.www * u_xlat1.xyz;
					    SV_Target0.w = u_xlat0.w * u_xlat1.w + 0.5;
					    u_xlat9 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat9 = (-u_xlat9) + 1.0;
					    u_xlat9 = u_xlat9 * _ProjectionParams.z;
					    u_xlat9 = max(u_xlat9, 0.0);
					    u_xlat9 = u_xlat9 * unity_FogParams.x;
					    u_xlat9 = u_xlat9 * (-u_xlat9);
					    u_xlat9 = exp2(u_xlat9);
					    SV_Target0.xyz = vec3(u_xlat9) * u_xlat0.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					bool u_xlatb2;
					float u_xlat9;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2.x = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2.x;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat0.w = u_xlat0.w;
					    u_xlat0.w = clamp(u_xlat0.w, 0.0, 1.0);
					    u_xlat1 = u_xlat0 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat0.xyz = u_xlat0.www * u_xlat1.xyz;
					    SV_Target0.w = u_xlat0.w * u_xlat1.w + 0.5;
					    u_xlat9 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat9 = (-u_xlat9) + 1.0;
					    u_xlat9 = u_xlat9 * _ProjectionParams.z;
					    u_xlat9 = max(u_xlat9, 0.0);
					    u_xlat9 = u_xlat9 * unity_FogParams.x;
					    u_xlat9 = u_xlat9 * (-u_xlat9);
					    u_xlat9 = exp2(u_xlat9);
					    SV_Target0.xyz = vec3(u_xlat9) * u_xlat0.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendMul2" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					bool u_xlatb2;
					float u_xlat9;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2.x = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2.x;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat0.w = u_xlat0.w;
					    u_xlat0.w = clamp(u_xlat0.w, 0.0, 1.0);
					    u_xlat1 = u_xlat0 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat0.xyz = u_xlat0.www * u_xlat1.xyz;
					    SV_Target0.w = u_xlat0.w * u_xlat1.w + 0.5;
					    u_xlat9 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat9 = (-u_xlat9) + 1.0;
					    u_xlat9 = u_xlat9 * _ProjectionParams.z;
					    u_xlat9 = max(u_xlat9, 0.0);
					    u_xlat9 = u_xlat9 * unity_FogParams.x;
					    u_xlat9 = u_xlat9 * (-u_xlat9);
					    u_xlat9 = exp2(u_xlat9);
					    SV_Target0.xyz = vec3(u_xlat9) * u_xlat0.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					bool u_xlatb2;
					float u_xlat9;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2.x = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2.x;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat0.w = u_xlat0.w;
					    u_xlat0.w = clamp(u_xlat0.w, 0.0, 1.0);
					    u_xlat1 = u_xlat0 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat0.xyz = u_xlat0.www * u_xlat1.xyz;
					    SV_Target0.w = u_xlat0.w * u_xlat1.w + 0.5;
					    u_xlat9 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat9 = (-u_xlat9) + 1.0;
					    u_xlat9 = u_xlat9 * _ProjectionParams.z;
					    u_xlat9 = max(u_xlat9, 0.0);
					    u_xlat9 = u_xlat9 * unity_FogParams.x;
					    u_xlat9 = u_xlat9 * (-u_xlat9);
					    u_xlat9 = exp2(u_xlat9);
					    SV_Target0.xyz = vec3(u_xlat9) * u_xlat0.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendMul2" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					bool u_xlatb1;
					float u_xlat6;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1.x = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat0.w = u_xlat0.w * u_xlat1.x;
					    u_xlat0 = u_xlat0 * vs_COLOR0;
					    u_xlat6 = u_xlat0.w;
					    u_xlat6 = clamp(u_xlat6, 0.0, 1.0);
					    u_xlat0.w = u_xlat6 * vs_TEXCOORD4;
					    u_xlat1 = u_xlat0 + vec4(-0.5, -0.5, -0.5, -0.5);
					    SV_Target0 = u_xlat0.wwww * u_xlat1 + vec4(0.5, 0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					bool u_xlatb1;
					float u_xlat6;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1.x = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat0.w = u_xlat0.w * u_xlat1.x;
					    u_xlat0 = u_xlat0 * vs_COLOR0;
					    u_xlat6 = u_xlat0.w;
					    u_xlat6 = clamp(u_xlat6, 0.0, 1.0);
					    u_xlat0.w = u_xlat6 * vs_TEXCOORD4;
					    u_xlat1 = u_xlat0 + vec4(-0.5, -0.5, -0.5, -0.5);
					    SV_Target0 = u_xlat0.wwww * u_xlat1 + vec4(0.5, 0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendMul2" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[7];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					bool u_xlatb2;
					float u_xlat9;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2.x = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2.x;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat9 = u_xlat0.w;
					    u_xlat9 = clamp(u_xlat9, 0.0, 1.0);
					    u_xlat0.w = u_xlat9 * vs_TEXCOORD4;
					    u_xlat1 = u_xlat0 + vec4(-0.5, -0.5, -0.5, -0.5);
					    SV_Target0 = u_xlat0.wwww * u_xlat1 + vec4(0.5, 0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[6];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					bool u_xlatb2;
					float u_xlat9;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2.x = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2.x;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat9 = u_xlat0.w;
					    u_xlat9 = clamp(u_xlat9, 0.0, 1.0);
					    u_xlat0.w = u_xlat9 * vs_TEXCOORD4;
					    u_xlat1 = u_xlat0 + vec4(-0.5, -0.5, -0.5, -0.5);
					    SV_Target0 = u_xlat0.wwww * u_xlat1 + vec4(0.5, 0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendMul2" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3.x;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3.x;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendMul2" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					bool u_xlatb2;
					float u_xlat9;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2.x = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2.x;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat9 = u_xlat0.w;
					    u_xlat9 = clamp(u_xlat9, 0.0, 1.0);
					    u_xlat0.w = u_xlat9 * vs_TEXCOORD4;
					    u_xlat1 = u_xlat0 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat0.xyz = u_xlat0.www * u_xlat1.xyz;
					    SV_Target0.w = u_xlat0.w * u_xlat1.w + 0.5;
					    u_xlat9 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat9 = (-u_xlat9) + 1.0;
					    u_xlat9 = u_xlat9 * _ProjectionParams.z;
					    u_xlat9 = max(u_xlat9, 0.0);
					    u_xlat9 = u_xlat9 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat9 = clamp(u_xlat9, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat9) * u_xlat0.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					bool u_xlatb2;
					float u_xlat9;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2.x = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2.x;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat9 = u_xlat0.w;
					    u_xlat9 = clamp(u_xlat9, 0.0, 1.0);
					    u_xlat0.w = u_xlat9 * vs_TEXCOORD4;
					    u_xlat1 = u_xlat0 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat0.xyz = u_xlat0.www * u_xlat1.xyz;
					    SV_Target0.w = u_xlat0.w * u_xlat1.w + 0.5;
					    u_xlat9 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat9 = (-u_xlat9) + 1.0;
					    u_xlat9 = u_xlat9 * _ProjectionParams.z;
					    u_xlat9 = max(u_xlat9, 0.0);
					    u_xlat9 = u_xlat9 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat9 = clamp(u_xlat9, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat9) * u_xlat0.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendMul2" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3.x;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3.x;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendMul2" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					bool u_xlatb2;
					float u_xlat9;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2.x = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2.x;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat9 = u_xlat0.w;
					    u_xlat9 = clamp(u_xlat9, 0.0, 1.0);
					    u_xlat0.w = u_xlat9 * vs_TEXCOORD4;
					    u_xlat1 = u_xlat0 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat0.xyz = u_xlat0.www * u_xlat1.xyz;
					    SV_Target0.w = u_xlat0.w * u_xlat1.w + 0.5;
					    u_xlat9 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat9 = (-u_xlat9) + 1.0;
					    u_xlat9 = u_xlat9 * _ProjectionParams.z;
					    u_xlat9 = max(u_xlat9, 0.0);
					    u_xlat9 = u_xlat9 * unity_FogParams.y;
					    u_xlat9 = exp2((-u_xlat9));
					    u_xlat9 = min(u_xlat9, 1.0);
					    SV_Target0.xyz = vec3(u_xlat9) * u_xlat0.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					bool u_xlatb2;
					float u_xlat9;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2.x = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2.x;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat9 = u_xlat0.w;
					    u_xlat9 = clamp(u_xlat9, 0.0, 1.0);
					    u_xlat0.w = u_xlat9 * vs_TEXCOORD4;
					    u_xlat1 = u_xlat0 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat0.xyz = u_xlat0.www * u_xlat1.xyz;
					    SV_Target0.w = u_xlat0.w * u_xlat1.w + 0.5;
					    u_xlat9 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat9 = (-u_xlat9) + 1.0;
					    u_xlat9 = u_xlat9 * _ProjectionParams.z;
					    u_xlat9 = max(u_xlat9, 0.0);
					    u_xlat9 = u_xlat9 * unity_FogParams.y;
					    u_xlat9 = exp2((-u_xlat9));
					    u_xlat9 = min(u_xlat9, 1.0);
					    SV_Target0.xyz = vec3(u_xlat9) * u_xlat0.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendMul2" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3.x;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3.x;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendMul2" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					bool u_xlatb2;
					float u_xlat9;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2.x = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2.x;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat9 = u_xlat0.w;
					    u_xlat9 = clamp(u_xlat9, 0.0, 1.0);
					    u_xlat0.w = u_xlat9 * vs_TEXCOORD4;
					    u_xlat1 = u_xlat0 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat0.xyz = u_xlat0.www * u_xlat1.xyz;
					    SV_Target0.w = u_xlat0.w * u_xlat1.w + 0.5;
					    u_xlat9 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat9 = (-u_xlat9) + 1.0;
					    u_xlat9 = u_xlat9 * _ProjectionParams.z;
					    u_xlat9 = max(u_xlat9, 0.0);
					    u_xlat9 = u_xlat9 * unity_FogParams.x;
					    u_xlat9 = u_xlat9 * (-u_xlat9);
					    u_xlat9 = exp2(u_xlat9);
					    SV_Target0.xyz = vec3(u_xlat9) * u_xlat0.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					bool u_xlatb2;
					float u_xlat9;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2.x = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2.x;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat9 = u_xlat0.w;
					    u_xlat9 = clamp(u_xlat9, 0.0, 1.0);
					    u_xlat0.w = u_xlat9 * vs_TEXCOORD4;
					    u_xlat1 = u_xlat0 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat0.xyz = u_xlat0.www * u_xlat1.xyz;
					    SV_Target0.w = u_xlat0.w * u_xlat1.w + 0.5;
					    u_xlat9 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat9 = (-u_xlat9) + 1.0;
					    u_xlat9 = u_xlat9 * _ProjectionParams.z;
					    u_xlat9 = max(u_xlat9, 0.0);
					    u_xlat9 = u_xlat9 * unity_FogParams.x;
					    u_xlat9 = u_xlat9 * (-u_xlat9);
					    u_xlat9 = exp2(u_xlat9);
					    SV_Target0.xyz = vec3(u_xlat9) * u_xlat0.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendMul2" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[7];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					bool u_xlatb2;
					float u_xlat9;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2.x = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2.x;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat9 = u_xlat0.w;
					    u_xlat9 = clamp(u_xlat9, 0.0, 1.0);
					    u_xlat0.w = u_xlat9 * vs_TEXCOORD4;
					    u_xlat1 = u_xlat0 + vec4(-0.5, -0.5, -0.5, -0.5);
					    SV_Target0 = u_xlat0.wwww * u_xlat1 + vec4(0.5, 0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[6];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					bool u_xlatb2;
					float u_xlat9;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2.x = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2.x;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat9 = u_xlat0.w;
					    u_xlat9 = clamp(u_xlat9, 0.0, 1.0);
					    u_xlat0.w = u_xlat9 * vs_TEXCOORD4;
					    u_xlat1 = u_xlat0 + vec4(-0.5, -0.5, -0.5, -0.5);
					    SV_Target0 = u_xlat0.wwww * u_xlat1 + vec4(0.5, 0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendMul2" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[7];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					bool u_xlatb2;
					float u_xlat9;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2.x = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2.x;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat9 = u_xlat0.w;
					    u_xlat9 = clamp(u_xlat9, 0.0, 1.0);
					    u_xlat0.w = u_xlat9 * vs_TEXCOORD4;
					    u_xlat1 = u_xlat0 + vec4(-0.5, -0.5, -0.5, -0.5);
					    SV_Target0 = u_xlat0.wwww * u_xlat1 + vec4(0.5, 0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[6];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					bool u_xlatb2;
					float u_xlat9;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2.x = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2.x;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat9 = u_xlat0.w;
					    u_xlat9 = clamp(u_xlat9, 0.0, 1.0);
					    u_xlat0.w = u_xlat9 * vs_TEXCOORD4;
					    u_xlat1 = u_xlat0 + vec4(-0.5, -0.5, -0.5, -0.5);
					    SV_Target0 = u_xlat0.wwww * u_xlat1 + vec4(0.5, 0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendMul2" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					bool u_xlatb2;
					float u_xlat9;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2.x = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2.x;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat9 = u_xlat0.w;
					    u_xlat9 = clamp(u_xlat9, 0.0, 1.0);
					    u_xlat0.w = u_xlat9 * vs_TEXCOORD4;
					    u_xlat1 = u_xlat0 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat0.xyz = u_xlat0.www * u_xlat1.xyz;
					    SV_Target0.w = u_xlat0.w * u_xlat1.w + 0.5;
					    u_xlat9 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat9 = (-u_xlat9) + 1.0;
					    u_xlat9 = u_xlat9 * _ProjectionParams.z;
					    u_xlat9 = max(u_xlat9, 0.0);
					    u_xlat9 = u_xlat9 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat9 = clamp(u_xlat9, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat9) * u_xlat0.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					bool u_xlatb2;
					float u_xlat9;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2.x = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2.x;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat9 = u_xlat0.w;
					    u_xlat9 = clamp(u_xlat9, 0.0, 1.0);
					    u_xlat0.w = u_xlat9 * vs_TEXCOORD4;
					    u_xlat1 = u_xlat0 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat0.xyz = u_xlat0.www * u_xlat1.xyz;
					    SV_Target0.w = u_xlat0.w * u_xlat1.w + 0.5;
					    u_xlat9 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat9 = (-u_xlat9) + 1.0;
					    u_xlat9 = u_xlat9 * _ProjectionParams.z;
					    u_xlat9 = max(u_xlat9, 0.0);
					    u_xlat9 = u_xlat9 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat9 = clamp(u_xlat9, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat9) * u_xlat0.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendMul2" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					bool u_xlatb2;
					float u_xlat9;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2.x = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2.x;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat9 = u_xlat0.w;
					    u_xlat9 = clamp(u_xlat9, 0.0, 1.0);
					    u_xlat0.w = u_xlat9 * vs_TEXCOORD4;
					    u_xlat1 = u_xlat0 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat0.xyz = u_xlat0.www * u_xlat1.xyz;
					    SV_Target0.w = u_xlat0.w * u_xlat1.w + 0.5;
					    u_xlat9 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat9 = (-u_xlat9) + 1.0;
					    u_xlat9 = u_xlat9 * _ProjectionParams.z;
					    u_xlat9 = max(u_xlat9, 0.0);
					    u_xlat9 = u_xlat9 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat9 = clamp(u_xlat9, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat9) * u_xlat0.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					bool u_xlatb2;
					float u_xlat9;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2.x = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2.x;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat9 = u_xlat0.w;
					    u_xlat9 = clamp(u_xlat9, 0.0, 1.0);
					    u_xlat0.w = u_xlat9 * vs_TEXCOORD4;
					    u_xlat1 = u_xlat0 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat0.xyz = u_xlat0.www * u_xlat1.xyz;
					    SV_Target0.w = u_xlat0.w * u_xlat1.w + 0.5;
					    u_xlat9 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat9 = (-u_xlat9) + 1.0;
					    u_xlat9 = u_xlat9 * _ProjectionParams.z;
					    u_xlat9 = max(u_xlat9, 0.0);
					    u_xlat9 = u_xlat9 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat9 = clamp(u_xlat9, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat9) * u_xlat0.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendMul2" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					bool u_xlatb2;
					float u_xlat9;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2.x = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2.x;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat9 = u_xlat0.w;
					    u_xlat9 = clamp(u_xlat9, 0.0, 1.0);
					    u_xlat0.w = u_xlat9 * vs_TEXCOORD4;
					    u_xlat1 = u_xlat0 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat0.xyz = u_xlat0.www * u_xlat1.xyz;
					    SV_Target0.w = u_xlat0.w * u_xlat1.w + 0.5;
					    u_xlat9 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat9 = (-u_xlat9) + 1.0;
					    u_xlat9 = u_xlat9 * _ProjectionParams.z;
					    u_xlat9 = max(u_xlat9, 0.0);
					    u_xlat9 = u_xlat9 * unity_FogParams.y;
					    u_xlat9 = exp2((-u_xlat9));
					    u_xlat9 = min(u_xlat9, 1.0);
					    SV_Target0.xyz = vec3(u_xlat9) * u_xlat0.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					bool u_xlatb2;
					float u_xlat9;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2.x = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2.x;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat9 = u_xlat0.w;
					    u_xlat9 = clamp(u_xlat9, 0.0, 1.0);
					    u_xlat0.w = u_xlat9 * vs_TEXCOORD4;
					    u_xlat1 = u_xlat0 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat0.xyz = u_xlat0.www * u_xlat1.xyz;
					    SV_Target0.w = u_xlat0.w * u_xlat1.w + 0.5;
					    u_xlat9 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat9 = (-u_xlat9) + 1.0;
					    u_xlat9 = u_xlat9 * _ProjectionParams.z;
					    u_xlat9 = max(u_xlat9, 0.0);
					    u_xlat9 = u_xlat9 * unity_FogParams.y;
					    u_xlat9 = exp2((-u_xlat9));
					    u_xlat9 = min(u_xlat9, 1.0);
					    SV_Target0.xyz = vec3(u_xlat9) * u_xlat0.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendMul2" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					bool u_xlatb2;
					float u_xlat9;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2.x = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2.x;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat9 = u_xlat0.w;
					    u_xlat9 = clamp(u_xlat9, 0.0, 1.0);
					    u_xlat0.w = u_xlat9 * vs_TEXCOORD4;
					    u_xlat1 = u_xlat0 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat0.xyz = u_xlat0.www * u_xlat1.xyz;
					    SV_Target0.w = u_xlat0.w * u_xlat1.w + 0.5;
					    u_xlat9 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat9 = (-u_xlat9) + 1.0;
					    u_xlat9 = u_xlat9 * _ProjectionParams.z;
					    u_xlat9 = max(u_xlat9, 0.0);
					    u_xlat9 = u_xlat9 * unity_FogParams.y;
					    u_xlat9 = exp2((-u_xlat9));
					    u_xlat9 = min(u_xlat9, 1.0);
					    SV_Target0.xyz = vec3(u_xlat9) * u_xlat0.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					bool u_xlatb2;
					float u_xlat9;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2.x = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2.x;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat9 = u_xlat0.w;
					    u_xlat9 = clamp(u_xlat9, 0.0, 1.0);
					    u_xlat0.w = u_xlat9 * vs_TEXCOORD4;
					    u_xlat1 = u_xlat0 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat0.xyz = u_xlat0.www * u_xlat1.xyz;
					    SV_Target0.w = u_xlat0.w * u_xlat1.w + 0.5;
					    u_xlat9 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat9 = (-u_xlat9) + 1.0;
					    u_xlat9 = u_xlat9 * _ProjectionParams.z;
					    u_xlat9 = max(u_xlat9, 0.0);
					    u_xlat9 = u_xlat9 * unity_FogParams.y;
					    u_xlat9 = exp2((-u_xlat9));
					    u_xlat9 = min(u_xlat9, 1.0);
					    SV_Target0.xyz = vec3(u_xlat9) * u_xlat0.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendMul2" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					bool u_xlatb2;
					float u_xlat9;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2.x = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2.x;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat9 = u_xlat0.w;
					    u_xlat9 = clamp(u_xlat9, 0.0, 1.0);
					    u_xlat0.w = u_xlat9 * vs_TEXCOORD4;
					    u_xlat1 = u_xlat0 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat0.xyz = u_xlat0.www * u_xlat1.xyz;
					    SV_Target0.w = u_xlat0.w * u_xlat1.w + 0.5;
					    u_xlat9 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat9 = (-u_xlat9) + 1.0;
					    u_xlat9 = u_xlat9 * _ProjectionParams.z;
					    u_xlat9 = max(u_xlat9, 0.0);
					    u_xlat9 = u_xlat9 * unity_FogParams.x;
					    u_xlat9 = u_xlat9 * (-u_xlat9);
					    u_xlat9 = exp2(u_xlat9);
					    SV_Target0.xyz = vec3(u_xlat9) * u_xlat0.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					bool u_xlatb2;
					float u_xlat9;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2.x = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2.x;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat9 = u_xlat0.w;
					    u_xlat9 = clamp(u_xlat9, 0.0, 1.0);
					    u_xlat0.w = u_xlat9 * vs_TEXCOORD4;
					    u_xlat1 = u_xlat0 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat0.xyz = u_xlat0.www * u_xlat1.xyz;
					    SV_Target0.w = u_xlat0.w * u_xlat1.w + 0.5;
					    u_xlat9 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat9 = (-u_xlat9) + 1.0;
					    u_xlat9 = u_xlat9 * _ProjectionParams.z;
					    u_xlat9 = max(u_xlat9, 0.0);
					    u_xlat9 = u_xlat9 * unity_FogParams.x;
					    u_xlat9 = u_xlat9 * (-u_xlat9);
					    u_xlat9 = exp2(u_xlat9);
					    SV_Target0.xyz = vec3(u_xlat9) * u_xlat0.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendMul2" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					bool u_xlatb2;
					float u_xlat9;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2.x = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2.x;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat9 = u_xlat0.w;
					    u_xlat9 = clamp(u_xlat9, 0.0, 1.0);
					    u_xlat0.w = u_xlat9 * vs_TEXCOORD4;
					    u_xlat1 = u_xlat0 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat0.xyz = u_xlat0.www * u_xlat1.xyz;
					    SV_Target0.w = u_xlat0.w * u_xlat1.w + 0.5;
					    u_xlat9 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat9 = (-u_xlat9) + 1.0;
					    u_xlat9 = u_xlat9 * _ProjectionParams.z;
					    u_xlat9 = max(u_xlat9, 0.0);
					    u_xlat9 = u_xlat9 * unity_FogParams.x;
					    u_xlat9 = u_xlat9 * (-u_xlat9);
					    u_xlat9 = exp2(u_xlat9);
					    SV_Target0.xyz = vec3(u_xlat9) * u_xlat0.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					bool u_xlatb2;
					float u_xlat9;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2.x = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2.x;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat9 = u_xlat0.w;
					    u_xlat9 = clamp(u_xlat9, 0.0, 1.0);
					    u_xlat0.w = u_xlat9 * vs_TEXCOORD4;
					    u_xlat1 = u_xlat0 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat0.xyz = u_xlat0.www * u_xlat1.xyz;
					    SV_Target0.w = u_xlat0.w * u_xlat1.w + 0.5;
					    u_xlat9 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat9 = (-u_xlat9) + 1.0;
					    u_xlat9 = u_xlat9 * _ProjectionParams.z;
					    u_xlat9 = max(u_xlat9, 0.0);
					    u_xlat9 = u_xlat9 * unity_FogParams.x;
					    u_xlat9 = u_xlat9 * (-u_xlat9);
					    u_xlat9 = exp2(u_xlat9);
					    SV_Target0.xyz = vec3(u_xlat9) * u_xlat0.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendMul2" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlat0.xyz = u_xlat0.xyz + u_xlat0.xyz;
					    u_xlat0.xyz = u_xlat0.xyz * _TintColor.xyz;
					    u_xlat1.xyz = u_xlat0.xyz * vs_COLOR0.xyz;
					    u_xlat0.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlatb0 = u_xlat0.w>=u_xlat0.x;
					    u_xlat1.w = u_xlatb0 ? 1.0 : float(0.0);
					    u_xlat0 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    SV_Target0 = u_xlat1.wwww * u_xlat0 + vec4(0.5, 0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlat0.xyz = u_xlat0.xyz + u_xlat0.xyz;
					    u_xlat0.xyz = u_xlat0.xyz * _TintColor.xyz;
					    u_xlat1.xyz = u_xlat0.xyz * vs_COLOR0.xyz;
					    u_xlat0.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlatb0 = u_xlat0.w>=u_xlat0.x;
					    u_xlat1.w = u_xlatb0 ? 1.0 : float(0.0);
					    u_xlat0 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    SV_Target0 = u_xlat1.wwww * u_xlat0 + vec4(0.5, 0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendMul2" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[7];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb0 = u_xlat1.w>=u_xlat0.x;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat1.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat1.w = u_xlatb0 ? 1.0 : float(0.0);
					    u_xlat0 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    SV_Target0 = u_xlat1.wwww * u_xlat0 + vec4(0.5, 0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[6];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb0 = u_xlat1.w>=u_xlat0.x;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat1.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat1.w = u_xlatb0 ? 1.0 : float(0.0);
					    u_xlat0 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    SV_Target0 = u_xlat1.wwww * u_xlat0 + vec4(0.5, 0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendMul2" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat2.w = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1 = u_xlat2 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat2.w = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1 = u_xlat2 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendMul2" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					float u_xlat9;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlat0.xyz = u_xlat0.xyz + u_xlat0.xyz;
					    u_xlat0.xyz = u_xlat0.xyz * _TintColor.xyz;
					    u_xlat1.xyz = u_xlat0.xyz * vs_COLOR0.xyz;
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat2 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat2.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlatb0 = u_xlat0.w>=u_xlat0.x;
					    u_xlat1.w = u_xlatb0 ? 1.0 : float(0.0);
					    u_xlat0 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat0.xyz = u_xlat0.xyz * u_xlat1.www;
					    SV_Target0.w = u_xlat1.w * u_xlat0.w + 0.5;
					    u_xlat9 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat9 = (-u_xlat9) + 1.0;
					    u_xlat9 = u_xlat9 * _ProjectionParams.z;
					    u_xlat9 = max(u_xlat9, 0.0);
					    u_xlat9 = u_xlat9 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat9 = clamp(u_xlat9, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat9) * u_xlat0.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					float u_xlat9;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlat0.xyz = u_xlat0.xyz + u_xlat0.xyz;
					    u_xlat0.xyz = u_xlat0.xyz * _TintColor.xyz;
					    u_xlat1.xyz = u_xlat0.xyz * vs_COLOR0.xyz;
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat2 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat2.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlatb0 = u_xlat0.w>=u_xlat0.x;
					    u_xlat1.w = u_xlatb0 ? 1.0 : float(0.0);
					    u_xlat0 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat0.xyz = u_xlat0.xyz * u_xlat1.www;
					    SV_Target0.w = u_xlat1.w * u_xlat0.w + 0.5;
					    u_xlat9 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat9 = (-u_xlat9) + 1.0;
					    u_xlat9 = u_xlat9 * _ProjectionParams.z;
					    u_xlat9 = max(u_xlat9, 0.0);
					    u_xlat9 = u_xlat9 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat9 = clamp(u_xlat9, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat9) * u_xlat0.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendMul2" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat2.w = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1 = u_xlat2 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat2.w = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1 = u_xlat2 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendMul2" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec3 u_xlat4;
					bool u_xlatb4;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat4.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat4.xyz = u_xlat4.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat4.xyz * vs_COLOR0.xyz;
					    u_xlat4.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat3 = texture(_CameraDepthTexture, u_xlat4.xy);
					    u_xlat4.x = _ZBufferParams.z * u_xlat3.x + _ZBufferParams.w;
					    u_xlat4.x = float(1.0) / u_xlat4.x;
					    u_xlat4.x = u_xlat4.x + (-vs_TEXCOORD3.z);
					    u_xlat4.x = u_xlat4.x * _InvFade;
					    u_xlat4.x = clamp(u_xlat4.x, 0.0, 1.0);
					    u_xlat4.x = (-vs_COLOR0.w) * u_xlat4.x + 1.0;
					    u_xlat4.x = u_xlat4.x + _Cutout;
					    u_xlatb4 = u_xlat1.w>=u_xlat4.x;
					    u_xlat2.w = u_xlatb4 ? 1.0 : float(0.0);
					    u_xlat1 = u_xlat2 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat4.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat4.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec3 u_xlat4;
					bool u_xlatb4;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat4.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat4.xyz = u_xlat4.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat4.xyz * vs_COLOR0.xyz;
					    u_xlat4.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat3 = texture(_CameraDepthTexture, u_xlat4.xy);
					    u_xlat4.x = _ZBufferParams.z * u_xlat3.x + _ZBufferParams.w;
					    u_xlat4.x = float(1.0) / u_xlat4.x;
					    u_xlat4.x = u_xlat4.x + (-vs_TEXCOORD3.z);
					    u_xlat4.x = u_xlat4.x * _InvFade;
					    u_xlat4.x = clamp(u_xlat4.x, 0.0, 1.0);
					    u_xlat4.x = (-vs_COLOR0.w) * u_xlat4.x + 1.0;
					    u_xlat4.x = u_xlat4.x + _Cutout;
					    u_xlatb4 = u_xlat1.w>=u_xlat4.x;
					    u_xlat2.w = u_xlatb4 ? 1.0 : float(0.0);
					    u_xlat1 = u_xlat2 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat4.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat4.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendMul2" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat2.w = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1 = u_xlat2 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat2.w = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1 = u_xlat2 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendMul2" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec3 u_xlat4;
					bool u_xlatb4;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat4.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat4.xyz = u_xlat4.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat4.xyz * vs_COLOR0.xyz;
					    u_xlat4.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat3 = texture(_CameraDepthTexture, u_xlat4.xy);
					    u_xlat4.x = _ZBufferParams.z * u_xlat3.x + _ZBufferParams.w;
					    u_xlat4.x = float(1.0) / u_xlat4.x;
					    u_xlat4.x = u_xlat4.x + (-vs_TEXCOORD3.z);
					    u_xlat4.x = u_xlat4.x * _InvFade;
					    u_xlat4.x = clamp(u_xlat4.x, 0.0, 1.0);
					    u_xlat4.x = (-vs_COLOR0.w) * u_xlat4.x + 1.0;
					    u_xlat4.x = u_xlat4.x + _Cutout;
					    u_xlatb4 = u_xlat1.w>=u_xlat4.x;
					    u_xlat2.w = u_xlatb4 ? 1.0 : float(0.0);
					    u_xlat1 = u_xlat2 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat4.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat4.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec3 u_xlat4;
					bool u_xlatb4;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat4.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat4.xyz = u_xlat4.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat4.xyz * vs_COLOR0.xyz;
					    u_xlat4.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat3 = texture(_CameraDepthTexture, u_xlat4.xy);
					    u_xlat4.x = _ZBufferParams.z * u_xlat3.x + _ZBufferParams.w;
					    u_xlat4.x = float(1.0) / u_xlat4.x;
					    u_xlat4.x = u_xlat4.x + (-vs_TEXCOORD3.z);
					    u_xlat4.x = u_xlat4.x * _InvFade;
					    u_xlat4.x = clamp(u_xlat4.x, 0.0, 1.0);
					    u_xlat4.x = (-vs_COLOR0.w) * u_xlat4.x + 1.0;
					    u_xlat4.x = u_xlat4.x + _Cutout;
					    u_xlatb4 = u_xlat1.w>=u_xlat4.x;
					    u_xlat2.w = u_xlatb4 ? 1.0 : float(0.0);
					    u_xlat1 = u_xlat2 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat4.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat4.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendMul2" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[7];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb0 = u_xlat1.w>=u_xlat0.x;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat1.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat1.w = u_xlatb0 ? 1.0 : float(0.0);
					    u_xlat0 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    SV_Target0 = u_xlat1.wwww * u_xlat0 + vec4(0.5, 0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[6];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb0 = u_xlat1.w>=u_xlat0.x;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat1.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat1.w = u_xlatb0 ? 1.0 : float(0.0);
					    u_xlat0 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    SV_Target0 = u_xlat1.wwww * u_xlat0 + vec4(0.5, 0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendMul2" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[7];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb0 = u_xlat1.w>=u_xlat0.x;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat1.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat1.w = u_xlatb0 ? 1.0 : float(0.0);
					    u_xlat0 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    SV_Target0 = u_xlat1.wwww * u_xlat0 + vec4(0.5, 0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[6];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb0 = u_xlat1.w>=u_xlat0.x;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat1.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat1.w = u_xlatb0 ? 1.0 : float(0.0);
					    u_xlat0 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    SV_Target0 = u_xlat1.wwww * u_xlat0 + vec4(0.5, 0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendMul2" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					float u_xlat9;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlat0.xyz = u_xlat0.xyz + u_xlat0.xyz;
					    u_xlat0.xyz = u_xlat0.xyz * _TintColor.xyz;
					    u_xlat1.xyz = u_xlat0.xyz * vs_COLOR0.xyz;
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat2 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat2.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlatb0 = u_xlat0.w>=u_xlat0.x;
					    u_xlat1.w = u_xlatb0 ? 1.0 : float(0.0);
					    u_xlat0 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat0.xyz = u_xlat0.xyz * u_xlat1.www;
					    SV_Target0.w = u_xlat1.w * u_xlat0.w + 0.5;
					    u_xlat9 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat9 = (-u_xlat9) + 1.0;
					    u_xlat9 = u_xlat9 * _ProjectionParams.z;
					    u_xlat9 = max(u_xlat9, 0.0);
					    u_xlat9 = u_xlat9 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat9 = clamp(u_xlat9, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat9) * u_xlat0.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					float u_xlat9;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlat0.xyz = u_xlat0.xyz + u_xlat0.xyz;
					    u_xlat0.xyz = u_xlat0.xyz * _TintColor.xyz;
					    u_xlat1.xyz = u_xlat0.xyz * vs_COLOR0.xyz;
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat2 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat2.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlatb0 = u_xlat0.w>=u_xlat0.x;
					    u_xlat1.w = u_xlatb0 ? 1.0 : float(0.0);
					    u_xlat0 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat0.xyz = u_xlat0.xyz * u_xlat1.www;
					    SV_Target0.w = u_xlat1.w * u_xlat0.w + 0.5;
					    u_xlat9 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat9 = (-u_xlat9) + 1.0;
					    u_xlat9 = u_xlat9 * _ProjectionParams.z;
					    u_xlat9 = max(u_xlat9, 0.0);
					    u_xlat9 = u_xlat9 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat9 = clamp(u_xlat9, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat9) * u_xlat0.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendMul2" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					float u_xlat9;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlat0.xyz = u_xlat0.xyz + u_xlat0.xyz;
					    u_xlat0.xyz = u_xlat0.xyz * _TintColor.xyz;
					    u_xlat1.xyz = u_xlat0.xyz * vs_COLOR0.xyz;
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat2 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat2.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlatb0 = u_xlat0.w>=u_xlat0.x;
					    u_xlat1.w = u_xlatb0 ? 1.0 : float(0.0);
					    u_xlat0 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat0.xyz = u_xlat0.xyz * u_xlat1.www;
					    SV_Target0.w = u_xlat1.w * u_xlat0.w + 0.5;
					    u_xlat9 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat9 = (-u_xlat9) + 1.0;
					    u_xlat9 = u_xlat9 * _ProjectionParams.z;
					    u_xlat9 = max(u_xlat9, 0.0);
					    u_xlat9 = u_xlat9 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat9 = clamp(u_xlat9, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat9) * u_xlat0.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					float u_xlat9;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlat0.xyz = u_xlat0.xyz + u_xlat0.xyz;
					    u_xlat0.xyz = u_xlat0.xyz * _TintColor.xyz;
					    u_xlat1.xyz = u_xlat0.xyz * vs_COLOR0.xyz;
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat2 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat2.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlatb0 = u_xlat0.w>=u_xlat0.x;
					    u_xlat1.w = u_xlatb0 ? 1.0 : float(0.0);
					    u_xlat0 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat0.xyz = u_xlat0.xyz * u_xlat1.www;
					    SV_Target0.w = u_xlat1.w * u_xlat0.w + 0.5;
					    u_xlat9 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat9 = (-u_xlat9) + 1.0;
					    u_xlat9 = u_xlat9 * _ProjectionParams.z;
					    u_xlat9 = max(u_xlat9, 0.0);
					    u_xlat9 = u_xlat9 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat9 = clamp(u_xlat9, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat9) * u_xlat0.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendMul2" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec3 u_xlat4;
					bool u_xlatb4;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat4.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat4.xyz = u_xlat4.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat4.xyz * vs_COLOR0.xyz;
					    u_xlat4.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat3 = texture(_CameraDepthTexture, u_xlat4.xy);
					    u_xlat4.x = _ZBufferParams.z * u_xlat3.x + _ZBufferParams.w;
					    u_xlat4.x = float(1.0) / u_xlat4.x;
					    u_xlat4.x = u_xlat4.x + (-vs_TEXCOORD3.z);
					    u_xlat4.x = u_xlat4.x * _InvFade;
					    u_xlat4.x = clamp(u_xlat4.x, 0.0, 1.0);
					    u_xlat4.x = (-vs_COLOR0.w) * u_xlat4.x + 1.0;
					    u_xlat4.x = u_xlat4.x + _Cutout;
					    u_xlatb4 = u_xlat1.w>=u_xlat4.x;
					    u_xlat2.w = u_xlatb4 ? 1.0 : float(0.0);
					    u_xlat1 = u_xlat2 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat4.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat4.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec3 u_xlat4;
					bool u_xlatb4;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat4.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat4.xyz = u_xlat4.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat4.xyz * vs_COLOR0.xyz;
					    u_xlat4.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat3 = texture(_CameraDepthTexture, u_xlat4.xy);
					    u_xlat4.x = _ZBufferParams.z * u_xlat3.x + _ZBufferParams.w;
					    u_xlat4.x = float(1.0) / u_xlat4.x;
					    u_xlat4.x = u_xlat4.x + (-vs_TEXCOORD3.z);
					    u_xlat4.x = u_xlat4.x * _InvFade;
					    u_xlat4.x = clamp(u_xlat4.x, 0.0, 1.0);
					    u_xlat4.x = (-vs_COLOR0.w) * u_xlat4.x + 1.0;
					    u_xlat4.x = u_xlat4.x + _Cutout;
					    u_xlatb4 = u_xlat1.w>=u_xlat4.x;
					    u_xlat2.w = u_xlatb4 ? 1.0 : float(0.0);
					    u_xlat1 = u_xlat2 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat4.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat4.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendMul2" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec3 u_xlat4;
					bool u_xlatb4;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat4.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat4.xyz = u_xlat4.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat4.xyz * vs_COLOR0.xyz;
					    u_xlat4.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat3 = texture(_CameraDepthTexture, u_xlat4.xy);
					    u_xlat4.x = _ZBufferParams.z * u_xlat3.x + _ZBufferParams.w;
					    u_xlat4.x = float(1.0) / u_xlat4.x;
					    u_xlat4.x = u_xlat4.x + (-vs_TEXCOORD3.z);
					    u_xlat4.x = u_xlat4.x * _InvFade;
					    u_xlat4.x = clamp(u_xlat4.x, 0.0, 1.0);
					    u_xlat4.x = (-vs_COLOR0.w) * u_xlat4.x + 1.0;
					    u_xlat4.x = u_xlat4.x + _Cutout;
					    u_xlatb4 = u_xlat1.w>=u_xlat4.x;
					    u_xlat2.w = u_xlatb4 ? 1.0 : float(0.0);
					    u_xlat1 = u_xlat2 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat4.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat4.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec3 u_xlat4;
					bool u_xlatb4;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat4.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat4.xyz = u_xlat4.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat4.xyz * vs_COLOR0.xyz;
					    u_xlat4.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat3 = texture(_CameraDepthTexture, u_xlat4.xy);
					    u_xlat4.x = _ZBufferParams.z * u_xlat3.x + _ZBufferParams.w;
					    u_xlat4.x = float(1.0) / u_xlat4.x;
					    u_xlat4.x = u_xlat4.x + (-vs_TEXCOORD3.z);
					    u_xlat4.x = u_xlat4.x * _InvFade;
					    u_xlat4.x = clamp(u_xlat4.x, 0.0, 1.0);
					    u_xlat4.x = (-vs_COLOR0.w) * u_xlat4.x + 1.0;
					    u_xlat4.x = u_xlat4.x + _Cutout;
					    u_xlatb4 = u_xlat1.w>=u_xlat4.x;
					    u_xlat2.w = u_xlatb4 ? 1.0 : float(0.0);
					    u_xlat1 = u_xlat2 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat4.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat4.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendMul2" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec3 u_xlat4;
					bool u_xlatb4;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat4.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat4.xyz = u_xlat4.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat4.xyz * vs_COLOR0.xyz;
					    u_xlat4.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat3 = texture(_CameraDepthTexture, u_xlat4.xy);
					    u_xlat4.x = _ZBufferParams.z * u_xlat3.x + _ZBufferParams.w;
					    u_xlat4.x = float(1.0) / u_xlat4.x;
					    u_xlat4.x = u_xlat4.x + (-vs_TEXCOORD3.z);
					    u_xlat4.x = u_xlat4.x * _InvFade;
					    u_xlat4.x = clamp(u_xlat4.x, 0.0, 1.0);
					    u_xlat4.x = (-vs_COLOR0.w) * u_xlat4.x + 1.0;
					    u_xlat4.x = u_xlat4.x + _Cutout;
					    u_xlatb4 = u_xlat1.w>=u_xlat4.x;
					    u_xlat2.w = u_xlatb4 ? 1.0 : float(0.0);
					    u_xlat1 = u_xlat2 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat4.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat4.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec3 u_xlat4;
					bool u_xlatb4;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat4.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat4.xyz = u_xlat4.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat4.xyz * vs_COLOR0.xyz;
					    u_xlat4.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat3 = texture(_CameraDepthTexture, u_xlat4.xy);
					    u_xlat4.x = _ZBufferParams.z * u_xlat3.x + _ZBufferParams.w;
					    u_xlat4.x = float(1.0) / u_xlat4.x;
					    u_xlat4.x = u_xlat4.x + (-vs_TEXCOORD3.z);
					    u_xlat4.x = u_xlat4.x * _InvFade;
					    u_xlat4.x = clamp(u_xlat4.x, 0.0, 1.0);
					    u_xlat4.x = (-vs_COLOR0.w) * u_xlat4.x + 1.0;
					    u_xlat4.x = u_xlat4.x + _Cutout;
					    u_xlatb4 = u_xlat1.w>=u_xlat4.x;
					    u_xlat2.w = u_xlatb4 ? 1.0 : float(0.0);
					    u_xlat1 = u_xlat2 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat4.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat4.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendMul2" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec3 u_xlat4;
					bool u_xlatb4;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat4.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat4.xyz = u_xlat4.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat4.xyz * vs_COLOR0.xyz;
					    u_xlat4.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat3 = texture(_CameraDepthTexture, u_xlat4.xy);
					    u_xlat4.x = _ZBufferParams.z * u_xlat3.x + _ZBufferParams.w;
					    u_xlat4.x = float(1.0) / u_xlat4.x;
					    u_xlat4.x = u_xlat4.x + (-vs_TEXCOORD3.z);
					    u_xlat4.x = u_xlat4.x * _InvFade;
					    u_xlat4.x = clamp(u_xlat4.x, 0.0, 1.0);
					    u_xlat4.x = (-vs_COLOR0.w) * u_xlat4.x + 1.0;
					    u_xlat4.x = u_xlat4.x + _Cutout;
					    u_xlatb4 = u_xlat1.w>=u_xlat4.x;
					    u_xlat2.w = u_xlatb4 ? 1.0 : float(0.0);
					    u_xlat1 = u_xlat2 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat4.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat4.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec3 u_xlat4;
					bool u_xlatb4;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat4.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat4.xyz = u_xlat4.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat4.xyz * vs_COLOR0.xyz;
					    u_xlat4.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat3 = texture(_CameraDepthTexture, u_xlat4.xy);
					    u_xlat4.x = _ZBufferParams.z * u_xlat3.x + _ZBufferParams.w;
					    u_xlat4.x = float(1.0) / u_xlat4.x;
					    u_xlat4.x = u_xlat4.x + (-vs_TEXCOORD3.z);
					    u_xlat4.x = u_xlat4.x * _InvFade;
					    u_xlat4.x = clamp(u_xlat4.x, 0.0, 1.0);
					    u_xlat4.x = (-vs_COLOR0.w) * u_xlat4.x + 1.0;
					    u_xlat4.x = u_xlat4.x + _Cutout;
					    u_xlatb4 = u_xlat1.w>=u_xlat4.x;
					    u_xlat2.w = u_xlatb4 ? 1.0 : float(0.0);
					    u_xlat1 = u_xlat2 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat4.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat4.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendMul2" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlat0.xyz = u_xlat0.xyz + u_xlat0.xyz;
					    u_xlat0.xyz = u_xlat0.xyz * _TintColor.xyz;
					    u_xlat1.xyz = u_xlat0.xyz * vs_COLOR0.xyz;
					    u_xlat0.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlatb0 = u_xlat0.w>=u_xlat0.x;
					    u_xlat0.x = u_xlatb0 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat0.x * vs_TEXCOORD4;
					    u_xlat0 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    SV_Target0 = u_xlat1.wwww * u_xlat0 + vec4(0.5, 0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlat0.xyz = u_xlat0.xyz + u_xlat0.xyz;
					    u_xlat0.xyz = u_xlat0.xyz * _TintColor.xyz;
					    u_xlat1.xyz = u_xlat0.xyz * vs_COLOR0.xyz;
					    u_xlat0.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlatb0 = u_xlat0.w>=u_xlat0.x;
					    u_xlat0.x = u_xlatb0 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat0.x * vs_TEXCOORD4;
					    u_xlat0 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    SV_Target0 = u_xlat1.wwww * u_xlat0 + vec4(0.5, 0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendMul2" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[7];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb0 = u_xlat1.w>=u_xlat0.x;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat1.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat0.x = u_xlatb0 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat0.x * vs_TEXCOORD4;
					    u_xlat0 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    SV_Target0 = u_xlat1.wwww * u_xlat0 + vec4(0.5, 0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[6];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb0 = u_xlat1.w>=u_xlat0.x;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat1.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat0.x = u_xlatb0 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat0.x * vs_TEXCOORD4;
					    u_xlat0 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    SV_Target0 = u_xlat1.wwww * u_xlat0 + vec4(0.5, 0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendMul2" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat2.w = u_xlat3.x * vs_TEXCOORD4;
					    u_xlat1 = u_xlat2 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat2.w = u_xlat3.x * vs_TEXCOORD4;
					    u_xlat1 = u_xlat2 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendMul2" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					float u_xlat9;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlat0.xyz = u_xlat0.xyz + u_xlat0.xyz;
					    u_xlat0.xyz = u_xlat0.xyz * _TintColor.xyz;
					    u_xlat1.xyz = u_xlat0.xyz * vs_COLOR0.xyz;
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat2 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat2.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlatb0 = u_xlat0.w>=u_xlat0.x;
					    u_xlat0.x = u_xlatb0 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat0.x * vs_TEXCOORD4;
					    u_xlat0 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat0.xyz = u_xlat0.xyz * u_xlat1.www;
					    SV_Target0.w = u_xlat1.w * u_xlat0.w + 0.5;
					    u_xlat9 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat9 = (-u_xlat9) + 1.0;
					    u_xlat9 = u_xlat9 * _ProjectionParams.z;
					    u_xlat9 = max(u_xlat9, 0.0);
					    u_xlat9 = u_xlat9 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat9 = clamp(u_xlat9, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat9) * u_xlat0.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					float u_xlat9;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlat0.xyz = u_xlat0.xyz + u_xlat0.xyz;
					    u_xlat0.xyz = u_xlat0.xyz * _TintColor.xyz;
					    u_xlat1.xyz = u_xlat0.xyz * vs_COLOR0.xyz;
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat2 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat2.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlatb0 = u_xlat0.w>=u_xlat0.x;
					    u_xlat0.x = u_xlatb0 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat0.x * vs_TEXCOORD4;
					    u_xlat0 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat0.xyz = u_xlat0.xyz * u_xlat1.www;
					    SV_Target0.w = u_xlat1.w * u_xlat0.w + 0.5;
					    u_xlat9 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat9 = (-u_xlat9) + 1.0;
					    u_xlat9 = u_xlat9 * _ProjectionParams.z;
					    u_xlat9 = max(u_xlat9, 0.0);
					    u_xlat9 = u_xlat9 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat9 = clamp(u_xlat9, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat9) * u_xlat0.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendMul2" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat2.w = u_xlat3.x * vs_TEXCOORD4;
					    u_xlat1 = u_xlat2 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat2.w = u_xlat3.x * vs_TEXCOORD4;
					    u_xlat1 = u_xlat2 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendMul2" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec3 u_xlat4;
					bool u_xlatb4;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat4.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat4.xyz = u_xlat4.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat4.xyz * vs_COLOR0.xyz;
					    u_xlat4.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat3 = texture(_CameraDepthTexture, u_xlat4.xy);
					    u_xlat4.x = _ZBufferParams.z * u_xlat3.x + _ZBufferParams.w;
					    u_xlat4.x = float(1.0) / u_xlat4.x;
					    u_xlat4.x = u_xlat4.x + (-vs_TEXCOORD3.z);
					    u_xlat4.x = u_xlat4.x * _InvFade;
					    u_xlat4.x = clamp(u_xlat4.x, 0.0, 1.0);
					    u_xlat4.x = (-vs_COLOR0.w) * u_xlat4.x + 1.0;
					    u_xlat4.x = u_xlat4.x + _Cutout;
					    u_xlatb4 = u_xlat1.w>=u_xlat4.x;
					    u_xlat4.x = u_xlatb4 ? 1.0 : float(0.0);
					    u_xlat2.w = u_xlat4.x * vs_TEXCOORD4;
					    u_xlat1 = u_xlat2 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat4.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat4.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec3 u_xlat4;
					bool u_xlatb4;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat4.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat4.xyz = u_xlat4.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat4.xyz * vs_COLOR0.xyz;
					    u_xlat4.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat3 = texture(_CameraDepthTexture, u_xlat4.xy);
					    u_xlat4.x = _ZBufferParams.z * u_xlat3.x + _ZBufferParams.w;
					    u_xlat4.x = float(1.0) / u_xlat4.x;
					    u_xlat4.x = u_xlat4.x + (-vs_TEXCOORD3.z);
					    u_xlat4.x = u_xlat4.x * _InvFade;
					    u_xlat4.x = clamp(u_xlat4.x, 0.0, 1.0);
					    u_xlat4.x = (-vs_COLOR0.w) * u_xlat4.x + 1.0;
					    u_xlat4.x = u_xlat4.x + _Cutout;
					    u_xlatb4 = u_xlat1.w>=u_xlat4.x;
					    u_xlat4.x = u_xlatb4 ? 1.0 : float(0.0);
					    u_xlat2.w = u_xlat4.x * vs_TEXCOORD4;
					    u_xlat1 = u_xlat2 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat4.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat4.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendMul2" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat2.w = u_xlat3.x * vs_TEXCOORD4;
					    u_xlat1 = u_xlat2 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat2.w = u_xlat3.x * vs_TEXCOORD4;
					    u_xlat1 = u_xlat2 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendMul2" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec3 u_xlat4;
					bool u_xlatb4;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat4.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat4.xyz = u_xlat4.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat4.xyz * vs_COLOR0.xyz;
					    u_xlat4.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat3 = texture(_CameraDepthTexture, u_xlat4.xy);
					    u_xlat4.x = _ZBufferParams.z * u_xlat3.x + _ZBufferParams.w;
					    u_xlat4.x = float(1.0) / u_xlat4.x;
					    u_xlat4.x = u_xlat4.x + (-vs_TEXCOORD3.z);
					    u_xlat4.x = u_xlat4.x * _InvFade;
					    u_xlat4.x = clamp(u_xlat4.x, 0.0, 1.0);
					    u_xlat4.x = (-vs_COLOR0.w) * u_xlat4.x + 1.0;
					    u_xlat4.x = u_xlat4.x + _Cutout;
					    u_xlatb4 = u_xlat1.w>=u_xlat4.x;
					    u_xlat4.x = u_xlatb4 ? 1.0 : float(0.0);
					    u_xlat2.w = u_xlat4.x * vs_TEXCOORD4;
					    u_xlat1 = u_xlat2 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat4.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat4.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec3 u_xlat4;
					bool u_xlatb4;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat4.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat4.xyz = u_xlat4.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat4.xyz * vs_COLOR0.xyz;
					    u_xlat4.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat3 = texture(_CameraDepthTexture, u_xlat4.xy);
					    u_xlat4.x = _ZBufferParams.z * u_xlat3.x + _ZBufferParams.w;
					    u_xlat4.x = float(1.0) / u_xlat4.x;
					    u_xlat4.x = u_xlat4.x + (-vs_TEXCOORD3.z);
					    u_xlat4.x = u_xlat4.x * _InvFade;
					    u_xlat4.x = clamp(u_xlat4.x, 0.0, 1.0);
					    u_xlat4.x = (-vs_COLOR0.w) * u_xlat4.x + 1.0;
					    u_xlat4.x = u_xlat4.x + _Cutout;
					    u_xlatb4 = u_xlat1.w>=u_xlat4.x;
					    u_xlat4.x = u_xlatb4 ? 1.0 : float(0.0);
					    u_xlat2.w = u_xlat4.x * vs_TEXCOORD4;
					    u_xlat1 = u_xlat2 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat4.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat4.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendMul2" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[7];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb0 = u_xlat1.w>=u_xlat0.x;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat1.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat0.x = u_xlatb0 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat0.x * vs_TEXCOORD4;
					    u_xlat0 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    SV_Target0 = u_xlat1.wwww * u_xlat0 + vec4(0.5, 0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[6];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb0 = u_xlat1.w>=u_xlat0.x;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat1.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat0.x = u_xlatb0 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat0.x * vs_TEXCOORD4;
					    u_xlat0 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    SV_Target0 = u_xlat1.wwww * u_xlat0 + vec4(0.5, 0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendMul2" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[7];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb0 = u_xlat1.w>=u_xlat0.x;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat1.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat0.x = u_xlatb0 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat0.x * vs_TEXCOORD4;
					    u_xlat0 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    SV_Target0 = u_xlat1.wwww * u_xlat0 + vec4(0.5, 0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[6];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb0 = u_xlat1.w>=u_xlat0.x;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat1.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat0.x = u_xlatb0 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat0.x * vs_TEXCOORD4;
					    u_xlat0 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    SV_Target0 = u_xlat1.wwww * u_xlat0 + vec4(0.5, 0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendMul2" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					float u_xlat9;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlat0.xyz = u_xlat0.xyz + u_xlat0.xyz;
					    u_xlat0.xyz = u_xlat0.xyz * _TintColor.xyz;
					    u_xlat1.xyz = u_xlat0.xyz * vs_COLOR0.xyz;
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat2 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat2.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlatb0 = u_xlat0.w>=u_xlat0.x;
					    u_xlat0.x = u_xlatb0 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat0.x * vs_TEXCOORD4;
					    u_xlat0 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat0.xyz = u_xlat0.xyz * u_xlat1.www;
					    SV_Target0.w = u_xlat1.w * u_xlat0.w + 0.5;
					    u_xlat9 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat9 = (-u_xlat9) + 1.0;
					    u_xlat9 = u_xlat9 * _ProjectionParams.z;
					    u_xlat9 = max(u_xlat9, 0.0);
					    u_xlat9 = u_xlat9 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat9 = clamp(u_xlat9, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat9) * u_xlat0.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					float u_xlat9;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlat0.xyz = u_xlat0.xyz + u_xlat0.xyz;
					    u_xlat0.xyz = u_xlat0.xyz * _TintColor.xyz;
					    u_xlat1.xyz = u_xlat0.xyz * vs_COLOR0.xyz;
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat2 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat2.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlatb0 = u_xlat0.w>=u_xlat0.x;
					    u_xlat0.x = u_xlatb0 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat0.x * vs_TEXCOORD4;
					    u_xlat0 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat0.xyz = u_xlat0.xyz * u_xlat1.www;
					    SV_Target0.w = u_xlat1.w * u_xlat0.w + 0.5;
					    u_xlat9 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat9 = (-u_xlat9) + 1.0;
					    u_xlat9 = u_xlat9 * _ProjectionParams.z;
					    u_xlat9 = max(u_xlat9, 0.0);
					    u_xlat9 = u_xlat9 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat9 = clamp(u_xlat9, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat9) * u_xlat0.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendMul2" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					float u_xlat9;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlat0.xyz = u_xlat0.xyz + u_xlat0.xyz;
					    u_xlat0.xyz = u_xlat0.xyz * _TintColor.xyz;
					    u_xlat1.xyz = u_xlat0.xyz * vs_COLOR0.xyz;
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat2 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat2.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlatb0 = u_xlat0.w>=u_xlat0.x;
					    u_xlat0.x = u_xlatb0 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat0.x * vs_TEXCOORD4;
					    u_xlat0 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat0.xyz = u_xlat0.xyz * u_xlat1.www;
					    SV_Target0.w = u_xlat1.w * u_xlat0.w + 0.5;
					    u_xlat9 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat9 = (-u_xlat9) + 1.0;
					    u_xlat9 = u_xlat9 * _ProjectionParams.z;
					    u_xlat9 = max(u_xlat9, 0.0);
					    u_xlat9 = u_xlat9 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat9 = clamp(u_xlat9, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat9) * u_xlat0.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					float u_xlat9;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlat0.xyz = u_xlat0.xyz + u_xlat0.xyz;
					    u_xlat0.xyz = u_xlat0.xyz * _TintColor.xyz;
					    u_xlat1.xyz = u_xlat0.xyz * vs_COLOR0.xyz;
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat2 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat2.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlatb0 = u_xlat0.w>=u_xlat0.x;
					    u_xlat0.x = u_xlatb0 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat0.x * vs_TEXCOORD4;
					    u_xlat0 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat0.xyz = u_xlat0.xyz * u_xlat1.www;
					    SV_Target0.w = u_xlat1.w * u_xlat0.w + 0.5;
					    u_xlat9 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat9 = (-u_xlat9) + 1.0;
					    u_xlat9 = u_xlat9 * _ProjectionParams.z;
					    u_xlat9 = max(u_xlat9, 0.0);
					    u_xlat9 = u_xlat9 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat9 = clamp(u_xlat9, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat9) * u_xlat0.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendMul2" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec3 u_xlat4;
					bool u_xlatb4;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat4.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat4.xyz = u_xlat4.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat4.xyz * vs_COLOR0.xyz;
					    u_xlat4.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat3 = texture(_CameraDepthTexture, u_xlat4.xy);
					    u_xlat4.x = _ZBufferParams.z * u_xlat3.x + _ZBufferParams.w;
					    u_xlat4.x = float(1.0) / u_xlat4.x;
					    u_xlat4.x = u_xlat4.x + (-vs_TEXCOORD3.z);
					    u_xlat4.x = u_xlat4.x * _InvFade;
					    u_xlat4.x = clamp(u_xlat4.x, 0.0, 1.0);
					    u_xlat4.x = (-vs_COLOR0.w) * u_xlat4.x + 1.0;
					    u_xlat4.x = u_xlat4.x + _Cutout;
					    u_xlatb4 = u_xlat1.w>=u_xlat4.x;
					    u_xlat4.x = u_xlatb4 ? 1.0 : float(0.0);
					    u_xlat2.w = u_xlat4.x * vs_TEXCOORD4;
					    u_xlat1 = u_xlat2 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat4.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat4.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec3 u_xlat4;
					bool u_xlatb4;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat4.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat4.xyz = u_xlat4.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat4.xyz * vs_COLOR0.xyz;
					    u_xlat4.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat3 = texture(_CameraDepthTexture, u_xlat4.xy);
					    u_xlat4.x = _ZBufferParams.z * u_xlat3.x + _ZBufferParams.w;
					    u_xlat4.x = float(1.0) / u_xlat4.x;
					    u_xlat4.x = u_xlat4.x + (-vs_TEXCOORD3.z);
					    u_xlat4.x = u_xlat4.x * _InvFade;
					    u_xlat4.x = clamp(u_xlat4.x, 0.0, 1.0);
					    u_xlat4.x = (-vs_COLOR0.w) * u_xlat4.x + 1.0;
					    u_xlat4.x = u_xlat4.x + _Cutout;
					    u_xlatb4 = u_xlat1.w>=u_xlat4.x;
					    u_xlat4.x = u_xlatb4 ? 1.0 : float(0.0);
					    u_xlat2.w = u_xlat4.x * vs_TEXCOORD4;
					    u_xlat1 = u_xlat2 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat4.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat4.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendMul2" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec3 u_xlat4;
					bool u_xlatb4;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat4.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat4.xyz = u_xlat4.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat4.xyz * vs_COLOR0.xyz;
					    u_xlat4.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat3 = texture(_CameraDepthTexture, u_xlat4.xy);
					    u_xlat4.x = _ZBufferParams.z * u_xlat3.x + _ZBufferParams.w;
					    u_xlat4.x = float(1.0) / u_xlat4.x;
					    u_xlat4.x = u_xlat4.x + (-vs_TEXCOORD3.z);
					    u_xlat4.x = u_xlat4.x * _InvFade;
					    u_xlat4.x = clamp(u_xlat4.x, 0.0, 1.0);
					    u_xlat4.x = (-vs_COLOR0.w) * u_xlat4.x + 1.0;
					    u_xlat4.x = u_xlat4.x + _Cutout;
					    u_xlatb4 = u_xlat1.w>=u_xlat4.x;
					    u_xlat4.x = u_xlatb4 ? 1.0 : float(0.0);
					    u_xlat2.w = u_xlat4.x * vs_TEXCOORD4;
					    u_xlat1 = u_xlat2 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat4.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat4.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec3 u_xlat4;
					bool u_xlatb4;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat4.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat4.xyz = u_xlat4.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat4.xyz * vs_COLOR0.xyz;
					    u_xlat4.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat3 = texture(_CameraDepthTexture, u_xlat4.xy);
					    u_xlat4.x = _ZBufferParams.z * u_xlat3.x + _ZBufferParams.w;
					    u_xlat4.x = float(1.0) / u_xlat4.x;
					    u_xlat4.x = u_xlat4.x + (-vs_TEXCOORD3.z);
					    u_xlat4.x = u_xlat4.x * _InvFade;
					    u_xlat4.x = clamp(u_xlat4.x, 0.0, 1.0);
					    u_xlat4.x = (-vs_COLOR0.w) * u_xlat4.x + 1.0;
					    u_xlat4.x = u_xlat4.x + _Cutout;
					    u_xlatb4 = u_xlat1.w>=u_xlat4.x;
					    u_xlat4.x = u_xlatb4 ? 1.0 : float(0.0);
					    u_xlat2.w = u_xlat4.x * vs_TEXCOORD4;
					    u_xlat1 = u_xlat2 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat4.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat4.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendMul2" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec3 u_xlat4;
					bool u_xlatb4;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat4.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat4.xyz = u_xlat4.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat4.xyz * vs_COLOR0.xyz;
					    u_xlat4.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat3 = texture(_CameraDepthTexture, u_xlat4.xy);
					    u_xlat4.x = _ZBufferParams.z * u_xlat3.x + _ZBufferParams.w;
					    u_xlat4.x = float(1.0) / u_xlat4.x;
					    u_xlat4.x = u_xlat4.x + (-vs_TEXCOORD3.z);
					    u_xlat4.x = u_xlat4.x * _InvFade;
					    u_xlat4.x = clamp(u_xlat4.x, 0.0, 1.0);
					    u_xlat4.x = (-vs_COLOR0.w) * u_xlat4.x + 1.0;
					    u_xlat4.x = u_xlat4.x + _Cutout;
					    u_xlatb4 = u_xlat1.w>=u_xlat4.x;
					    u_xlat4.x = u_xlatb4 ? 1.0 : float(0.0);
					    u_xlat2.w = u_xlat4.x * vs_TEXCOORD4;
					    u_xlat1 = u_xlat2 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat4.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat4.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec3 u_xlat4;
					bool u_xlatb4;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat4.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat4.xyz = u_xlat4.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat4.xyz * vs_COLOR0.xyz;
					    u_xlat4.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat3 = texture(_CameraDepthTexture, u_xlat4.xy);
					    u_xlat4.x = _ZBufferParams.z * u_xlat3.x + _ZBufferParams.w;
					    u_xlat4.x = float(1.0) / u_xlat4.x;
					    u_xlat4.x = u_xlat4.x + (-vs_TEXCOORD3.z);
					    u_xlat4.x = u_xlat4.x * _InvFade;
					    u_xlat4.x = clamp(u_xlat4.x, 0.0, 1.0);
					    u_xlat4.x = (-vs_COLOR0.w) * u_xlat4.x + 1.0;
					    u_xlat4.x = u_xlat4.x + _Cutout;
					    u_xlatb4 = u_xlat1.w>=u_xlat4.x;
					    u_xlat4.x = u_xlatb4 ? 1.0 : float(0.0);
					    u_xlat2.w = u_xlat4.x * vs_TEXCOORD4;
					    u_xlat1 = u_xlat2 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat4.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat4.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendMul2" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec3 u_xlat4;
					bool u_xlatb4;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat4.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat4.xyz = u_xlat4.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat4.xyz * vs_COLOR0.xyz;
					    u_xlat4.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat3 = texture(_CameraDepthTexture, u_xlat4.xy);
					    u_xlat4.x = _ZBufferParams.z * u_xlat3.x + _ZBufferParams.w;
					    u_xlat4.x = float(1.0) / u_xlat4.x;
					    u_xlat4.x = u_xlat4.x + (-vs_TEXCOORD3.z);
					    u_xlat4.x = u_xlat4.x * _InvFade;
					    u_xlat4.x = clamp(u_xlat4.x, 0.0, 1.0);
					    u_xlat4.x = (-vs_COLOR0.w) * u_xlat4.x + 1.0;
					    u_xlat4.x = u_xlat4.x + _Cutout;
					    u_xlatb4 = u_xlat1.w>=u_xlat4.x;
					    u_xlat4.x = u_xlatb4 ? 1.0 : float(0.0);
					    u_xlat2.w = u_xlat4.x * vs_TEXCOORD4;
					    u_xlat1 = u_xlat2 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat4.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat4.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec3 u_xlat4;
					bool u_xlatb4;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat4.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat4.xyz = u_xlat4.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat4.xyz * vs_COLOR0.xyz;
					    u_xlat4.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat3 = texture(_CameraDepthTexture, u_xlat4.xy);
					    u_xlat4.x = _ZBufferParams.z * u_xlat3.x + _ZBufferParams.w;
					    u_xlat4.x = float(1.0) / u_xlat4.x;
					    u_xlat4.x = u_xlat4.x + (-vs_TEXCOORD3.z);
					    u_xlat4.x = u_xlat4.x * _InvFade;
					    u_xlat4.x = clamp(u_xlat4.x, 0.0, 1.0);
					    u_xlat4.x = (-vs_COLOR0.w) * u_xlat4.x + 1.0;
					    u_xlat4.x = u_xlat4.x + _Cutout;
					    u_xlatb4 = u_xlat1.w>=u_xlat4.x;
					    u_xlat4.x = u_xlatb4 ? 1.0 : float(0.0);
					    u_xlat2.w = u_xlat4.x * vs_TEXCOORD4;
					    u_xlat1 = u_xlat2 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat4.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat4.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendMul2" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat0 = u_xlat0 * vs_COLOR0;
					    u_xlat0.w = u_xlat0.w;
					    u_xlat0.w = clamp(u_xlat0.w, 0.0, 1.0);
					    u_xlat1 = u_xlat0 + vec4(-0.5, -0.5, -0.5, -0.5);
					    SV_Target0 = u_xlat0.wwww * u_xlat1 + vec4(0.5, 0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat0 = u_xlat0 * vs_COLOR0;
					    u_xlat0.w = u_xlat0.w;
					    u_xlat0.w = clamp(u_xlat0.w, 0.0, 1.0);
					    u_xlat1 = u_xlat0 + vec4(-0.5, -0.5, -0.5, -0.5);
					    SV_Target0 = u_xlat0.wwww * u_xlat1 + vec4(0.5, 0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat0 = u_xlat0 * vs_COLOR0;
					    u_xlat0.w = u_xlat0.w;
					    u_xlat0.w = clamp(u_xlat0.w, 0.0, 1.0);
					    u_xlat1 = u_xlat0 + vec4(-0.5, -0.5, -0.5, -0.5);
					    SV_Target0 = u_xlat0.wwww * u_xlat1 + vec4(0.5, 0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat0 = u_xlat0 * vs_COLOR0;
					    u_xlat0.w = u_xlat0.w;
					    u_xlat0.w = clamp(u_xlat0.w, 0.0, 1.0);
					    u_xlat1 = u_xlat0 + vec4(-0.5, -0.5, -0.5, -0.5);
					    SV_Target0 = u_xlat0.wwww * u_xlat1 + vec4(0.5, 0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendMul2" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat0 = u_xlat0 * vs_COLOR0;
					    u_xlat0.w = u_xlat0.w;
					    u_xlat0.w = clamp(u_xlat0.w, 0.0, 1.0);
					    u_xlat1 = u_xlat0 + vec4(-0.5, -0.5, -0.5, -0.5);
					    SV_Target0 = u_xlat0.wwww * u_xlat1 + vec4(0.5, 0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat0 = u_xlat0 * vs_COLOR0;
					    u_xlat0.w = u_xlat0.w;
					    u_xlat0.w = clamp(u_xlat0.w, 0.0, 1.0);
					    u_xlat1 = u_xlat0 + vec4(-0.5, -0.5, -0.5, -0.5);
					    SV_Target0 = u_xlat0.wwww * u_xlat1 + vec4(0.5, 0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat0 = u_xlat0 * vs_COLOR0;
					    u_xlat0.w = u_xlat0.w;
					    u_xlat0.w = clamp(u_xlat0.w, 0.0, 1.0);
					    u_xlat1 = u_xlat0 + vec4(-0.5, -0.5, -0.5, -0.5);
					    SV_Target0 = u_xlat0.wwww * u_xlat1 + vec4(0.5, 0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat0 = u_xlat0 * vs_COLOR0;
					    u_xlat0.w = u_xlat0.w;
					    u_xlat0.w = clamp(u_xlat0.w, 0.0, 1.0);
					    u_xlat1 = u_xlat0 + vec4(-0.5, -0.5, -0.5, -0.5);
					    SV_Target0 = u_xlat0.wwww * u_xlat1 + vec4(0.5, 0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendMul2" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat6;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat0 = u_xlat0 * vs_COLOR0;
					    u_xlat6 = u_xlat0.w;
					    u_xlat6 = clamp(u_xlat6, 0.0, 1.0);
					    u_xlat0.w = u_xlat6 * vs_TEXCOORD4;
					    u_xlat1 = u_xlat0 + vec4(-0.5, -0.5, -0.5, -0.5);
					    SV_Target0 = u_xlat0.wwww * u_xlat1 + vec4(0.5, 0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat6;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat0 = u_xlat0 * vs_COLOR0;
					    u_xlat6 = u_xlat0.w;
					    u_xlat6 = clamp(u_xlat6, 0.0, 1.0);
					    u_xlat0.w = u_xlat6 * vs_TEXCOORD4;
					    u_xlat1 = u_xlat0 + vec4(-0.5, -0.5, -0.5, -0.5);
					    SV_Target0 = u_xlat0.wwww * u_xlat1 + vec4(0.5, 0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat6;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat0 = u_xlat0 * vs_COLOR0;
					    u_xlat6 = u_xlat0.w;
					    u_xlat6 = clamp(u_xlat6, 0.0, 1.0);
					    u_xlat0.w = u_xlat6 * vs_TEXCOORD4;
					    u_xlat1 = u_xlat0 + vec4(-0.5, -0.5, -0.5, -0.5);
					    SV_Target0 = u_xlat0.wwww * u_xlat1 + vec4(0.5, 0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat6;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat0 = u_xlat0 * vs_COLOR0;
					    u_xlat6 = u_xlat0.w;
					    u_xlat6 = clamp(u_xlat6, 0.0, 1.0);
					    u_xlat0.w = u_xlat6 * vs_TEXCOORD4;
					    u_xlat1 = u_xlat0 + vec4(-0.5, -0.5, -0.5, -0.5);
					    SV_Target0 = u_xlat0.wwww * u_xlat1 + vec4(0.5, 0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendMul2" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat6;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat0 = u_xlat0 * vs_COLOR0;
					    u_xlat6 = u_xlat0.w;
					    u_xlat6 = clamp(u_xlat6, 0.0, 1.0);
					    u_xlat0.w = u_xlat6 * vs_TEXCOORD4;
					    u_xlat1 = u_xlat0 + vec4(-0.5, -0.5, -0.5, -0.5);
					    SV_Target0 = u_xlat0.wwww * u_xlat1 + vec4(0.5, 0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat6;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat0 = u_xlat0 * vs_COLOR0;
					    u_xlat6 = u_xlat0.w;
					    u_xlat6 = clamp(u_xlat6, 0.0, 1.0);
					    u_xlat0.w = u_xlat6 * vs_TEXCOORD4;
					    u_xlat1 = u_xlat0 + vec4(-0.5, -0.5, -0.5, -0.5);
					    SV_Target0 = u_xlat0.wwww * u_xlat1 + vec4(0.5, 0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat6;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat0 = u_xlat0 * vs_COLOR0;
					    u_xlat6 = u_xlat0.w;
					    u_xlat6 = clamp(u_xlat6, 0.0, 1.0);
					    u_xlat0.w = u_xlat6 * vs_TEXCOORD4;
					    u_xlat1 = u_xlat0 + vec4(-0.5, -0.5, -0.5, -0.5);
					    SV_Target0 = u_xlat0.wwww * u_xlat1 + vec4(0.5, 0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat6;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat0 = u_xlat0 * vs_COLOR0;
					    u_xlat6 = u_xlat0.w;
					    u_xlat6 = clamp(u_xlat6, 0.0, 1.0);
					    u_xlat0.w = u_xlat6 * vs_TEXCOORD4;
					    u_xlat1 = u_xlat0 + vec4(-0.5, -0.5, -0.5, -0.5);
					    SV_Target0 = u_xlat0.wwww * u_xlat1 + vec4(0.5, 0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendMul2" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					bool u_xlatb1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1.x = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat0.w = u_xlat0.w * u_xlat1.x;
					    u_xlat0 = u_xlat0 * vs_COLOR0;
					    u_xlat0.w = u_xlat0.w;
					    u_xlat0.w = clamp(u_xlat0.w, 0.0, 1.0);
					    u_xlat1 = u_xlat0 + vec4(-0.5, -0.5, -0.5, -0.5);
					    SV_Target0 = u_xlat0.wwww * u_xlat1 + vec4(0.5, 0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					bool u_xlatb1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1.x = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat0.w = u_xlat0.w * u_xlat1.x;
					    u_xlat0 = u_xlat0 * vs_COLOR0;
					    u_xlat0.w = u_xlat0.w;
					    u_xlat0.w = clamp(u_xlat0.w, 0.0, 1.0);
					    u_xlat1 = u_xlat0 + vec4(-0.5, -0.5, -0.5, -0.5);
					    SV_Target0 = u_xlat0.wwww * u_xlat1 + vec4(0.5, 0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					bool u_xlatb1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1.x = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat0.w = u_xlat0.w * u_xlat1.x;
					    u_xlat0 = u_xlat0 * vs_COLOR0;
					    u_xlat0.w = u_xlat0.w;
					    u_xlat0.w = clamp(u_xlat0.w, 0.0, 1.0);
					    u_xlat1 = u_xlat0 + vec4(-0.5, -0.5, -0.5, -0.5);
					    SV_Target0 = u_xlat0.wwww * u_xlat1 + vec4(0.5, 0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					bool u_xlatb1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1.x = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat0.w = u_xlat0.w * u_xlat1.x;
					    u_xlat0 = u_xlat0 * vs_COLOR0;
					    u_xlat0.w = u_xlat0.w;
					    u_xlat0.w = clamp(u_xlat0.w, 0.0, 1.0);
					    u_xlat1 = u_xlat0 + vec4(-0.5, -0.5, -0.5, -0.5);
					    SV_Target0 = u_xlat0.wwww * u_xlat1 + vec4(0.5, 0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3.x;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3.x;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3.x;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3.x;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3.x;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3.x;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3.x;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3.x;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3.x;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3.x;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3.x;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3.x;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendMul2" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					bool u_xlatb1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1.x = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat0.w = u_xlat0.w * u_xlat1.x;
					    u_xlat0 = u_xlat0 * vs_COLOR0;
					    u_xlat0.w = u_xlat0.w;
					    u_xlat0.w = clamp(u_xlat0.w, 0.0, 1.0);
					    u_xlat1 = u_xlat0 + vec4(-0.5, -0.5, -0.5, -0.5);
					    SV_Target0 = u_xlat0.wwww * u_xlat1 + vec4(0.5, 0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					bool u_xlatb1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1.x = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat0.w = u_xlat0.w * u_xlat1.x;
					    u_xlat0 = u_xlat0 * vs_COLOR0;
					    u_xlat0.w = u_xlat0.w;
					    u_xlat0.w = clamp(u_xlat0.w, 0.0, 1.0);
					    u_xlat1 = u_xlat0 + vec4(-0.5, -0.5, -0.5, -0.5);
					    SV_Target0 = u_xlat0.wwww * u_xlat1 + vec4(0.5, 0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					bool u_xlatb1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1.x = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat0.w = u_xlat0.w * u_xlat1.x;
					    u_xlat0 = u_xlat0 * vs_COLOR0;
					    u_xlat0.w = u_xlat0.w;
					    u_xlat0.w = clamp(u_xlat0.w, 0.0, 1.0);
					    u_xlat1 = u_xlat0 + vec4(-0.5, -0.5, -0.5, -0.5);
					    SV_Target0 = u_xlat0.wwww * u_xlat1 + vec4(0.5, 0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					bool u_xlatb1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1.x = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat0.w = u_xlat0.w * u_xlat1.x;
					    u_xlat0 = u_xlat0 * vs_COLOR0;
					    u_xlat0.w = u_xlat0.w;
					    u_xlat0.w = clamp(u_xlat0.w, 0.0, 1.0);
					    u_xlat1 = u_xlat0 + vec4(-0.5, -0.5, -0.5, -0.5);
					    SV_Target0 = u_xlat0.wwww * u_xlat1 + vec4(0.5, 0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3.x;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3.x;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3.x;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3.x;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3.x;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3.x;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3.x;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3.x;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3.x;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3.x;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3.x;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3.x;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendMul2" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					bool u_xlatb1;
					float u_xlat6;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1.x = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat0.w = u_xlat0.w * u_xlat1.x;
					    u_xlat0 = u_xlat0 * vs_COLOR0;
					    u_xlat6 = u_xlat0.w;
					    u_xlat6 = clamp(u_xlat6, 0.0, 1.0);
					    u_xlat0.w = u_xlat6 * vs_TEXCOORD4;
					    u_xlat1 = u_xlat0 + vec4(-0.5, -0.5, -0.5, -0.5);
					    SV_Target0 = u_xlat0.wwww * u_xlat1 + vec4(0.5, 0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					bool u_xlatb1;
					float u_xlat6;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1.x = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat0.w = u_xlat0.w * u_xlat1.x;
					    u_xlat0 = u_xlat0 * vs_COLOR0;
					    u_xlat6 = u_xlat0.w;
					    u_xlat6 = clamp(u_xlat6, 0.0, 1.0);
					    u_xlat0.w = u_xlat6 * vs_TEXCOORD4;
					    u_xlat1 = u_xlat0 + vec4(-0.5, -0.5, -0.5, -0.5);
					    SV_Target0 = u_xlat0.wwww * u_xlat1 + vec4(0.5, 0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					bool u_xlatb1;
					float u_xlat6;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1.x = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat0.w = u_xlat0.w * u_xlat1.x;
					    u_xlat0 = u_xlat0 * vs_COLOR0;
					    u_xlat6 = u_xlat0.w;
					    u_xlat6 = clamp(u_xlat6, 0.0, 1.0);
					    u_xlat0.w = u_xlat6 * vs_TEXCOORD4;
					    u_xlat1 = u_xlat0 + vec4(-0.5, -0.5, -0.5, -0.5);
					    SV_Target0 = u_xlat0.wwww * u_xlat1 + vec4(0.5, 0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					bool u_xlatb1;
					float u_xlat6;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1.x = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat0.w = u_xlat0.w * u_xlat1.x;
					    u_xlat0 = u_xlat0 * vs_COLOR0;
					    u_xlat6 = u_xlat0.w;
					    u_xlat6 = clamp(u_xlat6, 0.0, 1.0);
					    u_xlat0.w = u_xlat6 * vs_TEXCOORD4;
					    u_xlat1 = u_xlat0 + vec4(-0.5, -0.5, -0.5, -0.5);
					    SV_Target0 = u_xlat0.wwww * u_xlat1 + vec4(0.5, 0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3.x;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3.x;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3.x;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3.x;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3.x;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3.x;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3.x;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3.x;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3.x;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3.x;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3.x;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3.x;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendMul2" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					bool u_xlatb1;
					float u_xlat6;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1.x = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat0.w = u_xlat0.w * u_xlat1.x;
					    u_xlat0 = u_xlat0 * vs_COLOR0;
					    u_xlat6 = u_xlat0.w;
					    u_xlat6 = clamp(u_xlat6, 0.0, 1.0);
					    u_xlat0.w = u_xlat6 * vs_TEXCOORD4;
					    u_xlat1 = u_xlat0 + vec4(-0.5, -0.5, -0.5, -0.5);
					    SV_Target0 = u_xlat0.wwww * u_xlat1 + vec4(0.5, 0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					bool u_xlatb1;
					float u_xlat6;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1.x = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat0.w = u_xlat0.w * u_xlat1.x;
					    u_xlat0 = u_xlat0 * vs_COLOR0;
					    u_xlat6 = u_xlat0.w;
					    u_xlat6 = clamp(u_xlat6, 0.0, 1.0);
					    u_xlat0.w = u_xlat6 * vs_TEXCOORD4;
					    u_xlat1 = u_xlat0 + vec4(-0.5, -0.5, -0.5, -0.5);
					    SV_Target0 = u_xlat0.wwww * u_xlat1 + vec4(0.5, 0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					bool u_xlatb1;
					float u_xlat6;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1.x = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat0.w = u_xlat0.w * u_xlat1.x;
					    u_xlat0 = u_xlat0 * vs_COLOR0;
					    u_xlat6 = u_xlat0.w;
					    u_xlat6 = clamp(u_xlat6, 0.0, 1.0);
					    u_xlat0.w = u_xlat6 * vs_TEXCOORD4;
					    u_xlat1 = u_xlat0 + vec4(-0.5, -0.5, -0.5, -0.5);
					    SV_Target0 = u_xlat0.wwww * u_xlat1 + vec4(0.5, 0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					bool u_xlatb1;
					float u_xlat6;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1.x = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat0.w = u_xlat0.w * u_xlat1.x;
					    u_xlat0 = u_xlat0 * vs_COLOR0;
					    u_xlat6 = u_xlat0.w;
					    u_xlat6 = clamp(u_xlat6, 0.0, 1.0);
					    u_xlat0.w = u_xlat6 * vs_TEXCOORD4;
					    u_xlat1 = u_xlat0 + vec4(-0.5, -0.5, -0.5, -0.5);
					    SV_Target0 = u_xlat0.wwww * u_xlat1 + vec4(0.5, 0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3.x;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3.x;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3.x;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3.x;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3.x;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3.x;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3.x;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3.x;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3.x;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3.x;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3.x;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3.x;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendMul2" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0.xyz = u_xlat0.xyz + u_xlat0.xyz;
					    u_xlat0.xyz = u_xlat0.xyz * _TintColor.xyz;
					    u_xlat1.xyz = u_xlat0.xyz * vs_COLOR0.xyz;
					    u_xlat0.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlatb0 = u_xlat0.w>=u_xlat0.x;
					    u_xlat1.w = u_xlatb0 ? 1.0 : float(0.0);
					    u_xlat0 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    SV_Target0 = u_xlat1.wwww * u_xlat0 + vec4(0.5, 0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0.xyz = u_xlat0.xyz + u_xlat0.xyz;
					    u_xlat0.xyz = u_xlat0.xyz * _TintColor.xyz;
					    u_xlat1.xyz = u_xlat0.xyz * vs_COLOR0.xyz;
					    u_xlat0.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlatb0 = u_xlat0.w>=u_xlat0.x;
					    u_xlat1.w = u_xlatb0 ? 1.0 : float(0.0);
					    u_xlat0 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    SV_Target0 = u_xlat1.wwww * u_xlat0 + vec4(0.5, 0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0.xyz = u_xlat0.xyz + u_xlat0.xyz;
					    u_xlat0.xyz = u_xlat0.xyz * _TintColor.xyz;
					    u_xlat1.xyz = u_xlat0.xyz * vs_COLOR0.xyz;
					    u_xlat0.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlatb0 = u_xlat0.w>=u_xlat0.x;
					    u_xlat1.w = u_xlatb0 ? 1.0 : float(0.0);
					    u_xlat0 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    SV_Target0 = u_xlat1.wwww * u_xlat0 + vec4(0.5, 0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0.xyz = u_xlat0.xyz + u_xlat0.xyz;
					    u_xlat0.xyz = u_xlat0.xyz * _TintColor.xyz;
					    u_xlat1.xyz = u_xlat0.xyz * vs_COLOR0.xyz;
					    u_xlat0.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlatb0 = u_xlat0.w>=u_xlat0.x;
					    u_xlat1.w = u_xlatb0 ? 1.0 : float(0.0);
					    u_xlat0 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    SV_Target0 = u_xlat1.wwww * u_xlat0 + vec4(0.5, 0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat2.w = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1 = u_xlat2 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat2.w = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1 = u_xlat2 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat2.w = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1 = u_xlat2 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat2.w = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1 = u_xlat2 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat2.w = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1 = u_xlat2 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat2.w = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1 = u_xlat2 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat2.w = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1 = u_xlat2 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat2.w = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1 = u_xlat2 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat2.w = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1 = u_xlat2 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat2.w = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1 = u_xlat2 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat2.w = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1 = u_xlat2 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat2.w = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1 = u_xlat2 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendMul2" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0.xyz = u_xlat0.xyz + u_xlat0.xyz;
					    u_xlat0.xyz = u_xlat0.xyz * _TintColor.xyz;
					    u_xlat1.xyz = u_xlat0.xyz * vs_COLOR0.xyz;
					    u_xlat0.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlatb0 = u_xlat0.w>=u_xlat0.x;
					    u_xlat1.w = u_xlatb0 ? 1.0 : float(0.0);
					    u_xlat0 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    SV_Target0 = u_xlat1.wwww * u_xlat0 + vec4(0.5, 0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0.xyz = u_xlat0.xyz + u_xlat0.xyz;
					    u_xlat0.xyz = u_xlat0.xyz * _TintColor.xyz;
					    u_xlat1.xyz = u_xlat0.xyz * vs_COLOR0.xyz;
					    u_xlat0.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlatb0 = u_xlat0.w>=u_xlat0.x;
					    u_xlat1.w = u_xlatb0 ? 1.0 : float(0.0);
					    u_xlat0 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    SV_Target0 = u_xlat1.wwww * u_xlat0 + vec4(0.5, 0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0.xyz = u_xlat0.xyz + u_xlat0.xyz;
					    u_xlat0.xyz = u_xlat0.xyz * _TintColor.xyz;
					    u_xlat1.xyz = u_xlat0.xyz * vs_COLOR0.xyz;
					    u_xlat0.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlatb0 = u_xlat0.w>=u_xlat0.x;
					    u_xlat1.w = u_xlatb0 ? 1.0 : float(0.0);
					    u_xlat0 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    SV_Target0 = u_xlat1.wwww * u_xlat0 + vec4(0.5, 0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0.xyz = u_xlat0.xyz + u_xlat0.xyz;
					    u_xlat0.xyz = u_xlat0.xyz * _TintColor.xyz;
					    u_xlat1.xyz = u_xlat0.xyz * vs_COLOR0.xyz;
					    u_xlat0.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlatb0 = u_xlat0.w>=u_xlat0.x;
					    u_xlat1.w = u_xlatb0 ? 1.0 : float(0.0);
					    u_xlat0 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    SV_Target0 = u_xlat1.wwww * u_xlat0 + vec4(0.5, 0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat2.w = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1 = u_xlat2 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat2.w = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1 = u_xlat2 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat2.w = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1 = u_xlat2 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat2.w = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1 = u_xlat2 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat2.w = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1 = u_xlat2 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat2.w = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1 = u_xlat2 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat2.w = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1 = u_xlat2 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat2.w = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1 = u_xlat2 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat2.w = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1 = u_xlat2 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat2.w = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1 = u_xlat2 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat2.w = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1 = u_xlat2 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat2.w = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1 = u_xlat2 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendMul2" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0.xyz = u_xlat0.xyz + u_xlat0.xyz;
					    u_xlat0.xyz = u_xlat0.xyz * _TintColor.xyz;
					    u_xlat1.xyz = u_xlat0.xyz * vs_COLOR0.xyz;
					    u_xlat0.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlatb0 = u_xlat0.w>=u_xlat0.x;
					    u_xlat0.x = u_xlatb0 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat0.x * vs_TEXCOORD4;
					    u_xlat0 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    SV_Target0 = u_xlat1.wwww * u_xlat0 + vec4(0.5, 0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0.xyz = u_xlat0.xyz + u_xlat0.xyz;
					    u_xlat0.xyz = u_xlat0.xyz * _TintColor.xyz;
					    u_xlat1.xyz = u_xlat0.xyz * vs_COLOR0.xyz;
					    u_xlat0.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlatb0 = u_xlat0.w>=u_xlat0.x;
					    u_xlat0.x = u_xlatb0 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat0.x * vs_TEXCOORD4;
					    u_xlat0 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    SV_Target0 = u_xlat1.wwww * u_xlat0 + vec4(0.5, 0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0.xyz = u_xlat0.xyz + u_xlat0.xyz;
					    u_xlat0.xyz = u_xlat0.xyz * _TintColor.xyz;
					    u_xlat1.xyz = u_xlat0.xyz * vs_COLOR0.xyz;
					    u_xlat0.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlatb0 = u_xlat0.w>=u_xlat0.x;
					    u_xlat0.x = u_xlatb0 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat0.x * vs_TEXCOORD4;
					    u_xlat0 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    SV_Target0 = u_xlat1.wwww * u_xlat0 + vec4(0.5, 0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0.xyz = u_xlat0.xyz + u_xlat0.xyz;
					    u_xlat0.xyz = u_xlat0.xyz * _TintColor.xyz;
					    u_xlat1.xyz = u_xlat0.xyz * vs_COLOR0.xyz;
					    u_xlat0.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlatb0 = u_xlat0.w>=u_xlat0.x;
					    u_xlat0.x = u_xlatb0 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat0.x * vs_TEXCOORD4;
					    u_xlat0 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    SV_Target0 = u_xlat1.wwww * u_xlat0 + vec4(0.5, 0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat2.w = u_xlat3.x * vs_TEXCOORD4;
					    u_xlat1 = u_xlat2 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat2.w = u_xlat3.x * vs_TEXCOORD4;
					    u_xlat1 = u_xlat2 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat2.w = u_xlat3.x * vs_TEXCOORD4;
					    u_xlat1 = u_xlat2 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat2.w = u_xlat3.x * vs_TEXCOORD4;
					    u_xlat1 = u_xlat2 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat2.w = u_xlat3.x * vs_TEXCOORD4;
					    u_xlat1 = u_xlat2 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat2.w = u_xlat3.x * vs_TEXCOORD4;
					    u_xlat1 = u_xlat2 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat2.w = u_xlat3.x * vs_TEXCOORD4;
					    u_xlat1 = u_xlat2 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat2.w = u_xlat3.x * vs_TEXCOORD4;
					    u_xlat1 = u_xlat2 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat2.w = u_xlat3.x * vs_TEXCOORD4;
					    u_xlat1 = u_xlat2 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat2.w = u_xlat3.x * vs_TEXCOORD4;
					    u_xlat1 = u_xlat2 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat2.w = u_xlat3.x * vs_TEXCOORD4;
					    u_xlat1 = u_xlat2 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat2.w = u_xlat3.x * vs_TEXCOORD4;
					    u_xlat1 = u_xlat2 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendMul2" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0.xyz = u_xlat0.xyz + u_xlat0.xyz;
					    u_xlat0.xyz = u_xlat0.xyz * _TintColor.xyz;
					    u_xlat1.xyz = u_xlat0.xyz * vs_COLOR0.xyz;
					    u_xlat0.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlatb0 = u_xlat0.w>=u_xlat0.x;
					    u_xlat0.x = u_xlatb0 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat0.x * vs_TEXCOORD4;
					    u_xlat0 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    SV_Target0 = u_xlat1.wwww * u_xlat0 + vec4(0.5, 0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0.xyz = u_xlat0.xyz + u_xlat0.xyz;
					    u_xlat0.xyz = u_xlat0.xyz * _TintColor.xyz;
					    u_xlat1.xyz = u_xlat0.xyz * vs_COLOR0.xyz;
					    u_xlat0.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlatb0 = u_xlat0.w>=u_xlat0.x;
					    u_xlat0.x = u_xlatb0 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat0.x * vs_TEXCOORD4;
					    u_xlat0 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    SV_Target0 = u_xlat1.wwww * u_xlat0 + vec4(0.5, 0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0.xyz = u_xlat0.xyz + u_xlat0.xyz;
					    u_xlat0.xyz = u_xlat0.xyz * _TintColor.xyz;
					    u_xlat1.xyz = u_xlat0.xyz * vs_COLOR0.xyz;
					    u_xlat0.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlatb0 = u_xlat0.w>=u_xlat0.x;
					    u_xlat0.x = u_xlatb0 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat0.x * vs_TEXCOORD4;
					    u_xlat0 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    SV_Target0 = u_xlat1.wwww * u_xlat0 + vec4(0.5, 0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0.xyz = u_xlat0.xyz + u_xlat0.xyz;
					    u_xlat0.xyz = u_xlat0.xyz * _TintColor.xyz;
					    u_xlat1.xyz = u_xlat0.xyz * vs_COLOR0.xyz;
					    u_xlat0.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlatb0 = u_xlat0.w>=u_xlat0.x;
					    u_xlat0.x = u_xlatb0 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat0.x * vs_TEXCOORD4;
					    u_xlat0 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    SV_Target0 = u_xlat1.wwww * u_xlat0 + vec4(0.5, 0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat2.w = u_xlat3.x * vs_TEXCOORD4;
					    u_xlat1 = u_xlat2 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat2.w = u_xlat3.x * vs_TEXCOORD4;
					    u_xlat1 = u_xlat2 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat2.w = u_xlat3.x * vs_TEXCOORD4;
					    u_xlat1 = u_xlat2 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat2.w = u_xlat3.x * vs_TEXCOORD4;
					    u_xlat1 = u_xlat2 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat2.w = u_xlat3.x * vs_TEXCOORD4;
					    u_xlat1 = u_xlat2 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat2.w = u_xlat3.x * vs_TEXCOORD4;
					    u_xlat1 = u_xlat2 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat2.w = u_xlat3.x * vs_TEXCOORD4;
					    u_xlat1 = u_xlat2 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat2.w = u_xlat3.x * vs_TEXCOORD4;
					    u_xlat1 = u_xlat2 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat2.w = u_xlat3.x * vs_TEXCOORD4;
					    u_xlat1 = u_xlat2 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat2.w = u_xlat3.x * vs_TEXCOORD4;
					    u_xlat1 = u_xlat2 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat2.w = u_xlat3.x * vs_TEXCOORD4;
					    u_xlat1 = u_xlat2 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat2.w = u_xlat3.x * vs_TEXCOORD4;
					    u_xlat1 = u_xlat2 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendMul2" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat0 = u_xlat0 * vs_COLOR0;
					    u_xlat0.w = u_xlat0.w;
					    u_xlat0.w = clamp(u_xlat0.w, 0.0, 1.0);
					    u_xlat1 = u_xlat0 + vec4(-0.5, -0.5, -0.5, -0.5);
					    SV_Target0 = u_xlat0.wwww * u_xlat1 + vec4(0.5, 0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat0 = u_xlat0 * vs_COLOR0;
					    u_xlat0.w = u_xlat0.w;
					    u_xlat0.w = clamp(u_xlat0.w, 0.0, 1.0);
					    u_xlat1 = u_xlat0 + vec4(-0.5, -0.5, -0.5, -0.5);
					    SV_Target0 = u_xlat0.wwww * u_xlat1 + vec4(0.5, 0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[7];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat0.w = u_xlat0.w;
					    u_xlat0.w = clamp(u_xlat0.w, 0.0, 1.0);
					    u_xlat1 = u_xlat0 + vec4(-0.5, -0.5, -0.5, -0.5);
					    SV_Target0 = u_xlat0.wwww * u_xlat1 + vec4(0.5, 0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[6];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat0.w = u_xlat0.w;
					    u_xlat0.w = clamp(u_xlat0.w, 0.0, 1.0);
					    u_xlat1 = u_xlat0 + vec4(-0.5, -0.5, -0.5, -0.5);
					    SV_Target0 = u_xlat0.wwww * u_xlat1 + vec4(0.5, 0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat3.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat1 = texture(_CameraDepthTexture, u_xlat3.xy);
					    u_xlat3.x = _ZBufferParams.z * u_xlat1.x + _ZBufferParams.w;
					    u_xlat3.x = float(1.0) / u_xlat3.x;
					    u_xlat3.x = u_xlat3.x + (-vs_TEXCOORD3.z);
					    u_xlat3.x = u_xlat3.x * _InvFade;
					    u_xlat3.x = clamp(u_xlat3.x, 0.0, 1.0);
					    u_xlat1.w = u_xlat3.x * vs_COLOR0.w;
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2 = u_xlat2 + u_xlat2;
					    u_xlat2 = u_xlat2 * _TintColor;
					    u_xlat1.xyz = vs_COLOR0.xyz;
					    u_xlat1 = u_xlat1 * u_xlat2;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat3.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat1 = texture(_CameraDepthTexture, u_xlat3.xy);
					    u_xlat3.x = _ZBufferParams.z * u_xlat1.x + _ZBufferParams.w;
					    u_xlat3.x = float(1.0) / u_xlat3.x;
					    u_xlat3.x = u_xlat3.x + (-vs_TEXCOORD3.z);
					    u_xlat3.x = u_xlat3.x * _InvFade;
					    u_xlat3.x = clamp(u_xlat3.x, 0.0, 1.0);
					    u_xlat1.w = u_xlat3.x * vs_COLOR0.w;
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2 = u_xlat2 + u_xlat2;
					    u_xlat2 = u_xlat2 * _TintColor;
					    u_xlat1.xyz = vs_COLOR0.xyz;
					    u_xlat1 = u_xlat1 * u_xlat2;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat3.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat1 = texture(_CameraDepthTexture, u_xlat3.xy);
					    u_xlat3.x = _ZBufferParams.z * u_xlat1.x + _ZBufferParams.w;
					    u_xlat3.x = float(1.0) / u_xlat3.x;
					    u_xlat3.x = u_xlat3.x + (-vs_TEXCOORD3.z);
					    u_xlat3.x = u_xlat3.x * _InvFade;
					    u_xlat3.x = clamp(u_xlat3.x, 0.0, 1.0);
					    u_xlat1.w = u_xlat3.x * vs_COLOR0.w;
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2 = u_xlat2 + u_xlat2;
					    u_xlat2 = u_xlat2 * _TintColor;
					    u_xlat1.xyz = vs_COLOR0.xyz;
					    u_xlat1 = u_xlat1 * u_xlat2;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat3.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat1 = texture(_CameraDepthTexture, u_xlat3.xy);
					    u_xlat3.x = _ZBufferParams.z * u_xlat1.x + _ZBufferParams.w;
					    u_xlat3.x = float(1.0) / u_xlat3.x;
					    u_xlat3.x = u_xlat3.x + (-vs_TEXCOORD3.z);
					    u_xlat3.x = u_xlat3.x * _InvFade;
					    u_xlat3.x = clamp(u_xlat3.x, 0.0, 1.0);
					    u_xlat1.w = u_xlat3.x * vs_COLOR0.w;
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2 = u_xlat2 + u_xlat2;
					    u_xlat2 = u_xlat2 * _TintColor;
					    u_xlat1.xyz = vs_COLOR0.xyz;
					    u_xlat1 = u_xlat1 * u_xlat2;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat3.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat1 = texture(_CameraDepthTexture, u_xlat3.xy);
					    u_xlat3.x = _ZBufferParams.z * u_xlat1.x + _ZBufferParams.w;
					    u_xlat3.x = float(1.0) / u_xlat3.x;
					    u_xlat3.x = u_xlat3.x + (-vs_TEXCOORD3.z);
					    u_xlat3.x = u_xlat3.x * _InvFade;
					    u_xlat3.x = clamp(u_xlat3.x, 0.0, 1.0);
					    u_xlat1.w = u_xlat3.x * vs_COLOR0.w;
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2 = u_xlat2 + u_xlat2;
					    u_xlat2 = u_xlat2 * _TintColor;
					    u_xlat1.xyz = vs_COLOR0.xyz;
					    u_xlat1 = u_xlat1 * u_xlat2;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat3.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat1 = texture(_CameraDepthTexture, u_xlat3.xy);
					    u_xlat3.x = _ZBufferParams.z * u_xlat1.x + _ZBufferParams.w;
					    u_xlat3.x = float(1.0) / u_xlat3.x;
					    u_xlat3.x = u_xlat3.x + (-vs_TEXCOORD3.z);
					    u_xlat3.x = u_xlat3.x * _InvFade;
					    u_xlat3.x = clamp(u_xlat3.x, 0.0, 1.0);
					    u_xlat1.w = u_xlat3.x * vs_COLOR0.w;
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2 = u_xlat2 + u_xlat2;
					    u_xlat2 = u_xlat2 * _TintColor;
					    u_xlat1.xyz = vs_COLOR0.xyz;
					    u_xlat1 = u_xlat1 * u_xlat2;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendMul2" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[7];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat0.w = u_xlat0.w;
					    u_xlat0.w = clamp(u_xlat0.w, 0.0, 1.0);
					    u_xlat1 = u_xlat0 + vec4(-0.5, -0.5, -0.5, -0.5);
					    SV_Target0 = u_xlat0.wwww * u_xlat1 + vec4(0.5, 0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[6];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat0.w = u_xlat0.w;
					    u_xlat0.w = clamp(u_xlat0.w, 0.0, 1.0);
					    u_xlat1 = u_xlat0 + vec4(-0.5, -0.5, -0.5, -0.5);
					    SV_Target0 = u_xlat0.wwww * u_xlat1 + vec4(0.5, 0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[7];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat0.w = u_xlat0.w;
					    u_xlat0.w = clamp(u_xlat0.w, 0.0, 1.0);
					    u_xlat1 = u_xlat0 + vec4(-0.5, -0.5, -0.5, -0.5);
					    SV_Target0 = u_xlat0.wwww * u_xlat1 + vec4(0.5, 0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[6];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat0.w = u_xlat0.w;
					    u_xlat0.w = clamp(u_xlat0.w, 0.0, 1.0);
					    u_xlat1 = u_xlat0 + vec4(-0.5, -0.5, -0.5, -0.5);
					    SV_Target0 = u_xlat0.wwww * u_xlat1 + vec4(0.5, 0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat3.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat1 = texture(_CameraDepthTexture, u_xlat3.xy);
					    u_xlat3.x = _ZBufferParams.z * u_xlat1.x + _ZBufferParams.w;
					    u_xlat3.x = float(1.0) / u_xlat3.x;
					    u_xlat3.x = u_xlat3.x + (-vs_TEXCOORD3.z);
					    u_xlat3.x = u_xlat3.x * _InvFade;
					    u_xlat3.x = clamp(u_xlat3.x, 0.0, 1.0);
					    u_xlat1.w = u_xlat3.x * vs_COLOR0.w;
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2 = u_xlat2 + u_xlat2;
					    u_xlat2 = u_xlat2 * _TintColor;
					    u_xlat1.xyz = vs_COLOR0.xyz;
					    u_xlat1 = u_xlat1 * u_xlat2;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat3.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat1 = texture(_CameraDepthTexture, u_xlat3.xy);
					    u_xlat3.x = _ZBufferParams.z * u_xlat1.x + _ZBufferParams.w;
					    u_xlat3.x = float(1.0) / u_xlat3.x;
					    u_xlat3.x = u_xlat3.x + (-vs_TEXCOORD3.z);
					    u_xlat3.x = u_xlat3.x * _InvFade;
					    u_xlat3.x = clamp(u_xlat3.x, 0.0, 1.0);
					    u_xlat1.w = u_xlat3.x * vs_COLOR0.w;
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2 = u_xlat2 + u_xlat2;
					    u_xlat2 = u_xlat2 * _TintColor;
					    u_xlat1.xyz = vs_COLOR0.xyz;
					    u_xlat1 = u_xlat1 * u_xlat2;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat3.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat1 = texture(_CameraDepthTexture, u_xlat3.xy);
					    u_xlat3.x = _ZBufferParams.z * u_xlat1.x + _ZBufferParams.w;
					    u_xlat3.x = float(1.0) / u_xlat3.x;
					    u_xlat3.x = u_xlat3.x + (-vs_TEXCOORD3.z);
					    u_xlat3.x = u_xlat3.x * _InvFade;
					    u_xlat3.x = clamp(u_xlat3.x, 0.0, 1.0);
					    u_xlat1.w = u_xlat3.x * vs_COLOR0.w;
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2 = u_xlat2 + u_xlat2;
					    u_xlat2 = u_xlat2 * _TintColor;
					    u_xlat1.xyz = vs_COLOR0.xyz;
					    u_xlat1 = u_xlat1 * u_xlat2;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat3.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat1 = texture(_CameraDepthTexture, u_xlat3.xy);
					    u_xlat3.x = _ZBufferParams.z * u_xlat1.x + _ZBufferParams.w;
					    u_xlat3.x = float(1.0) / u_xlat3.x;
					    u_xlat3.x = u_xlat3.x + (-vs_TEXCOORD3.z);
					    u_xlat3.x = u_xlat3.x * _InvFade;
					    u_xlat3.x = clamp(u_xlat3.x, 0.0, 1.0);
					    u_xlat1.w = u_xlat3.x * vs_COLOR0.w;
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2 = u_xlat2 + u_xlat2;
					    u_xlat2 = u_xlat2 * _TintColor;
					    u_xlat1.xyz = vs_COLOR0.xyz;
					    u_xlat1 = u_xlat1 * u_xlat2;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat3.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat1 = texture(_CameraDepthTexture, u_xlat3.xy);
					    u_xlat3.x = _ZBufferParams.z * u_xlat1.x + _ZBufferParams.w;
					    u_xlat3.x = float(1.0) / u_xlat3.x;
					    u_xlat3.x = u_xlat3.x + (-vs_TEXCOORD3.z);
					    u_xlat3.x = u_xlat3.x * _InvFade;
					    u_xlat3.x = clamp(u_xlat3.x, 0.0, 1.0);
					    u_xlat1.w = u_xlat3.x * vs_COLOR0.w;
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2 = u_xlat2 + u_xlat2;
					    u_xlat2 = u_xlat2 * _TintColor;
					    u_xlat1.xyz = vs_COLOR0.xyz;
					    u_xlat1 = u_xlat1 * u_xlat2;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat3.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat1 = texture(_CameraDepthTexture, u_xlat3.xy);
					    u_xlat3.x = _ZBufferParams.z * u_xlat1.x + _ZBufferParams.w;
					    u_xlat3.x = float(1.0) / u_xlat3.x;
					    u_xlat3.x = u_xlat3.x + (-vs_TEXCOORD3.z);
					    u_xlat3.x = u_xlat3.x * _InvFade;
					    u_xlat3.x = clamp(u_xlat3.x, 0.0, 1.0);
					    u_xlat1.w = u_xlat3.x * vs_COLOR0.w;
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2 = u_xlat2 + u_xlat2;
					    u_xlat2 = u_xlat2 * _TintColor;
					    u_xlat1.xyz = vs_COLOR0.xyz;
					    u_xlat1 = u_xlat1 * u_xlat2;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat3.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat1 = texture(_CameraDepthTexture, u_xlat3.xy);
					    u_xlat3.x = _ZBufferParams.z * u_xlat1.x + _ZBufferParams.w;
					    u_xlat3.x = float(1.0) / u_xlat3.x;
					    u_xlat3.x = u_xlat3.x + (-vs_TEXCOORD3.z);
					    u_xlat3.x = u_xlat3.x * _InvFade;
					    u_xlat3.x = clamp(u_xlat3.x, 0.0, 1.0);
					    u_xlat1.w = u_xlat3.x * vs_COLOR0.w;
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2 = u_xlat2 + u_xlat2;
					    u_xlat2 = u_xlat2 * _TintColor;
					    u_xlat1.xyz = vs_COLOR0.xyz;
					    u_xlat1 = u_xlat1 * u_xlat2;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat3.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat1 = texture(_CameraDepthTexture, u_xlat3.xy);
					    u_xlat3.x = _ZBufferParams.z * u_xlat1.x + _ZBufferParams.w;
					    u_xlat3.x = float(1.0) / u_xlat3.x;
					    u_xlat3.x = u_xlat3.x + (-vs_TEXCOORD3.z);
					    u_xlat3.x = u_xlat3.x * _InvFade;
					    u_xlat3.x = clamp(u_xlat3.x, 0.0, 1.0);
					    u_xlat1.w = u_xlat3.x * vs_COLOR0.w;
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2 = u_xlat2 + u_xlat2;
					    u_xlat2 = u_xlat2 * _TintColor;
					    u_xlat1.xyz = vs_COLOR0.xyz;
					    u_xlat1 = u_xlat1 * u_xlat2;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat3.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat1 = texture(_CameraDepthTexture, u_xlat3.xy);
					    u_xlat3.x = _ZBufferParams.z * u_xlat1.x + _ZBufferParams.w;
					    u_xlat3.x = float(1.0) / u_xlat3.x;
					    u_xlat3.x = u_xlat3.x + (-vs_TEXCOORD3.z);
					    u_xlat3.x = u_xlat3.x * _InvFade;
					    u_xlat3.x = clamp(u_xlat3.x, 0.0, 1.0);
					    u_xlat1.w = u_xlat3.x * vs_COLOR0.w;
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2 = u_xlat2 + u_xlat2;
					    u_xlat2 = u_xlat2 * _TintColor;
					    u_xlat1.xyz = vs_COLOR0.xyz;
					    u_xlat1 = u_xlat1 * u_xlat2;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat3.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat1 = texture(_CameraDepthTexture, u_xlat3.xy);
					    u_xlat3.x = _ZBufferParams.z * u_xlat1.x + _ZBufferParams.w;
					    u_xlat3.x = float(1.0) / u_xlat3.x;
					    u_xlat3.x = u_xlat3.x + (-vs_TEXCOORD3.z);
					    u_xlat3.x = u_xlat3.x * _InvFade;
					    u_xlat3.x = clamp(u_xlat3.x, 0.0, 1.0);
					    u_xlat1.w = u_xlat3.x * vs_COLOR0.w;
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2 = u_xlat2 + u_xlat2;
					    u_xlat2 = u_xlat2 * _TintColor;
					    u_xlat1.xyz = vs_COLOR0.xyz;
					    u_xlat1 = u_xlat1 * u_xlat2;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat3.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat1 = texture(_CameraDepthTexture, u_xlat3.xy);
					    u_xlat3.x = _ZBufferParams.z * u_xlat1.x + _ZBufferParams.w;
					    u_xlat3.x = float(1.0) / u_xlat3.x;
					    u_xlat3.x = u_xlat3.x + (-vs_TEXCOORD3.z);
					    u_xlat3.x = u_xlat3.x * _InvFade;
					    u_xlat3.x = clamp(u_xlat3.x, 0.0, 1.0);
					    u_xlat1.w = u_xlat3.x * vs_COLOR0.w;
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2 = u_xlat2 + u_xlat2;
					    u_xlat2 = u_xlat2 * _TintColor;
					    u_xlat1.xyz = vs_COLOR0.xyz;
					    u_xlat1 = u_xlat1 * u_xlat2;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat3.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat1 = texture(_CameraDepthTexture, u_xlat3.xy);
					    u_xlat3.x = _ZBufferParams.z * u_xlat1.x + _ZBufferParams.w;
					    u_xlat3.x = float(1.0) / u_xlat3.x;
					    u_xlat3.x = u_xlat3.x + (-vs_TEXCOORD3.z);
					    u_xlat3.x = u_xlat3.x * _InvFade;
					    u_xlat3.x = clamp(u_xlat3.x, 0.0, 1.0);
					    u_xlat1.w = u_xlat3.x * vs_COLOR0.w;
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2 = u_xlat2 + u_xlat2;
					    u_xlat2 = u_xlat2 * _TintColor;
					    u_xlat1.xyz = vs_COLOR0.xyz;
					    u_xlat1 = u_xlat1 * u_xlat2;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendMul2" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat6;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat0 = u_xlat0 * vs_COLOR0;
					    u_xlat6 = u_xlat0.w;
					    u_xlat6 = clamp(u_xlat6, 0.0, 1.0);
					    u_xlat0.w = u_xlat6 * vs_TEXCOORD4;
					    u_xlat1 = u_xlat0 + vec4(-0.5, -0.5, -0.5, -0.5);
					    SV_Target0 = u_xlat0.wwww * u_xlat1 + vec4(0.5, 0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat6;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat0 = u_xlat0 * vs_COLOR0;
					    u_xlat6 = u_xlat0.w;
					    u_xlat6 = clamp(u_xlat6, 0.0, 1.0);
					    u_xlat0.w = u_xlat6 * vs_TEXCOORD4;
					    u_xlat1 = u_xlat0 + vec4(-0.5, -0.5, -0.5, -0.5);
					    SV_Target0 = u_xlat0.wwww * u_xlat1 + vec4(0.5, 0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[7];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat6;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat6 = u_xlat0.w;
					    u_xlat6 = clamp(u_xlat6, 0.0, 1.0);
					    u_xlat0.w = u_xlat6 * vs_TEXCOORD4;
					    u_xlat1 = u_xlat0 + vec4(-0.5, -0.5, -0.5, -0.5);
					    SV_Target0 = u_xlat0.wwww * u_xlat1 + vec4(0.5, 0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[6];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat6;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat6 = u_xlat0.w;
					    u_xlat6 = clamp(u_xlat6, 0.0, 1.0);
					    u_xlat0.w = u_xlat6 * vs_TEXCOORD4;
					    u_xlat1 = u_xlat0 + vec4(-0.5, -0.5, -0.5, -0.5);
					    SV_Target0 = u_xlat0.wwww * u_xlat1 + vec4(0.5, 0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat6;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat6 = u_xlat0.w;
					    u_xlat6 = clamp(u_xlat6, 0.0, 1.0);
					    u_xlat0.w = u_xlat6 * vs_TEXCOORD4;
					    u_xlat1 = u_xlat0 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat0.xyz = u_xlat0.www * u_xlat1.xyz;
					    SV_Target0.w = u_xlat0.w * u_xlat1.w + 0.5;
					    u_xlat6 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat6 = (-u_xlat6) + 1.0;
					    u_xlat6 = u_xlat6 * _ProjectionParams.z;
					    u_xlat6 = max(u_xlat6, 0.0);
					    u_xlat6 = u_xlat6 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat6 = clamp(u_xlat6, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat6) * u_xlat0.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat6;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat6 = u_xlat0.w;
					    u_xlat6 = clamp(u_xlat6, 0.0, 1.0);
					    u_xlat0.w = u_xlat6 * vs_TEXCOORD4;
					    u_xlat1 = u_xlat0 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat0.xyz = u_xlat0.www * u_xlat1.xyz;
					    SV_Target0.w = u_xlat0.w * u_xlat1.w + 0.5;
					    u_xlat6 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat6 = (-u_xlat6) + 1.0;
					    u_xlat6 = u_xlat6 * _ProjectionParams.z;
					    u_xlat6 = max(u_xlat6, 0.0);
					    u_xlat6 = u_xlat6 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat6 = clamp(u_xlat6, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat6) * u_xlat0.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat3.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat1 = texture(_CameraDepthTexture, u_xlat3.xy);
					    u_xlat3.x = _ZBufferParams.z * u_xlat1.x + _ZBufferParams.w;
					    u_xlat3.x = float(1.0) / u_xlat3.x;
					    u_xlat3.x = u_xlat3.x + (-vs_TEXCOORD3.z);
					    u_xlat3.x = u_xlat3.x * _InvFade;
					    u_xlat3.x = clamp(u_xlat3.x, 0.0, 1.0);
					    u_xlat1.w = u_xlat3.x * vs_COLOR0.w;
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2 = u_xlat2 + u_xlat2;
					    u_xlat2 = u_xlat2 * _TintColor;
					    u_xlat1.xyz = vs_COLOR0.xyz;
					    u_xlat1 = u_xlat1 * u_xlat2;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat3.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat1 = texture(_CameraDepthTexture, u_xlat3.xy);
					    u_xlat3.x = _ZBufferParams.z * u_xlat1.x + _ZBufferParams.w;
					    u_xlat3.x = float(1.0) / u_xlat3.x;
					    u_xlat3.x = u_xlat3.x + (-vs_TEXCOORD3.z);
					    u_xlat3.x = u_xlat3.x * _InvFade;
					    u_xlat3.x = clamp(u_xlat3.x, 0.0, 1.0);
					    u_xlat1.w = u_xlat3.x * vs_COLOR0.w;
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2 = u_xlat2 + u_xlat2;
					    u_xlat2 = u_xlat2 * _TintColor;
					    u_xlat1.xyz = vs_COLOR0.xyz;
					    u_xlat1 = u_xlat1 * u_xlat2;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat3.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat1 = texture(_CameraDepthTexture, u_xlat3.xy);
					    u_xlat3.x = _ZBufferParams.z * u_xlat1.x + _ZBufferParams.w;
					    u_xlat3.x = float(1.0) / u_xlat3.x;
					    u_xlat3.x = u_xlat3.x + (-vs_TEXCOORD3.z);
					    u_xlat3.x = u_xlat3.x * _InvFade;
					    u_xlat3.x = clamp(u_xlat3.x, 0.0, 1.0);
					    u_xlat1.w = u_xlat3.x * vs_COLOR0.w;
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2 = u_xlat2 + u_xlat2;
					    u_xlat2 = u_xlat2 * _TintColor;
					    u_xlat1.xyz = vs_COLOR0.xyz;
					    u_xlat1 = u_xlat1 * u_xlat2;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat3.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat1 = texture(_CameraDepthTexture, u_xlat3.xy);
					    u_xlat3.x = _ZBufferParams.z * u_xlat1.x + _ZBufferParams.w;
					    u_xlat3.x = float(1.0) / u_xlat3.x;
					    u_xlat3.x = u_xlat3.x + (-vs_TEXCOORD3.z);
					    u_xlat3.x = u_xlat3.x * _InvFade;
					    u_xlat3.x = clamp(u_xlat3.x, 0.0, 1.0);
					    u_xlat1.w = u_xlat3.x * vs_COLOR0.w;
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2 = u_xlat2 + u_xlat2;
					    u_xlat2 = u_xlat2 * _TintColor;
					    u_xlat1.xyz = vs_COLOR0.xyz;
					    u_xlat1 = u_xlat1 * u_xlat2;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendMul2" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[7];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat6;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat6 = u_xlat0.w;
					    u_xlat6 = clamp(u_xlat6, 0.0, 1.0);
					    u_xlat0.w = u_xlat6 * vs_TEXCOORD4;
					    u_xlat1 = u_xlat0 + vec4(-0.5, -0.5, -0.5, -0.5);
					    SV_Target0 = u_xlat0.wwww * u_xlat1 + vec4(0.5, 0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[6];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat6;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat6 = u_xlat0.w;
					    u_xlat6 = clamp(u_xlat6, 0.0, 1.0);
					    u_xlat0.w = u_xlat6 * vs_TEXCOORD4;
					    u_xlat1 = u_xlat0 + vec4(-0.5, -0.5, -0.5, -0.5);
					    SV_Target0 = u_xlat0.wwww * u_xlat1 + vec4(0.5, 0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[7];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat6;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat6 = u_xlat0.w;
					    u_xlat6 = clamp(u_xlat6, 0.0, 1.0);
					    u_xlat0.w = u_xlat6 * vs_TEXCOORD4;
					    u_xlat1 = u_xlat0 + vec4(-0.5, -0.5, -0.5, -0.5);
					    SV_Target0 = u_xlat0.wwww * u_xlat1 + vec4(0.5, 0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[6];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat6;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat6 = u_xlat0.w;
					    u_xlat6 = clamp(u_xlat6, 0.0, 1.0);
					    u_xlat0.w = u_xlat6 * vs_TEXCOORD4;
					    u_xlat1 = u_xlat0 + vec4(-0.5, -0.5, -0.5, -0.5);
					    SV_Target0 = u_xlat0.wwww * u_xlat1 + vec4(0.5, 0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat6;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat6 = u_xlat0.w;
					    u_xlat6 = clamp(u_xlat6, 0.0, 1.0);
					    u_xlat0.w = u_xlat6 * vs_TEXCOORD4;
					    u_xlat1 = u_xlat0 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat0.xyz = u_xlat0.www * u_xlat1.xyz;
					    SV_Target0.w = u_xlat0.w * u_xlat1.w + 0.5;
					    u_xlat6 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat6 = (-u_xlat6) + 1.0;
					    u_xlat6 = u_xlat6 * _ProjectionParams.z;
					    u_xlat6 = max(u_xlat6, 0.0);
					    u_xlat6 = u_xlat6 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat6 = clamp(u_xlat6, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat6) * u_xlat0.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat6;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat6 = u_xlat0.w;
					    u_xlat6 = clamp(u_xlat6, 0.0, 1.0);
					    u_xlat0.w = u_xlat6 * vs_TEXCOORD4;
					    u_xlat1 = u_xlat0 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat0.xyz = u_xlat0.www * u_xlat1.xyz;
					    SV_Target0.w = u_xlat0.w * u_xlat1.w + 0.5;
					    u_xlat6 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat6 = (-u_xlat6) + 1.0;
					    u_xlat6 = u_xlat6 * _ProjectionParams.z;
					    u_xlat6 = max(u_xlat6, 0.0);
					    u_xlat6 = u_xlat6 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat6 = clamp(u_xlat6, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat6) * u_xlat0.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat6;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat6 = u_xlat0.w;
					    u_xlat6 = clamp(u_xlat6, 0.0, 1.0);
					    u_xlat0.w = u_xlat6 * vs_TEXCOORD4;
					    u_xlat1 = u_xlat0 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat0.xyz = u_xlat0.www * u_xlat1.xyz;
					    SV_Target0.w = u_xlat0.w * u_xlat1.w + 0.5;
					    u_xlat6 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat6 = (-u_xlat6) + 1.0;
					    u_xlat6 = u_xlat6 * _ProjectionParams.z;
					    u_xlat6 = max(u_xlat6, 0.0);
					    u_xlat6 = u_xlat6 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat6 = clamp(u_xlat6, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat6) * u_xlat0.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat6;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat6 = u_xlat0.w;
					    u_xlat6 = clamp(u_xlat6, 0.0, 1.0);
					    u_xlat0.w = u_xlat6 * vs_TEXCOORD4;
					    u_xlat1 = u_xlat0 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat0.xyz = u_xlat0.www * u_xlat1.xyz;
					    SV_Target0.w = u_xlat0.w * u_xlat1.w + 0.5;
					    u_xlat6 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat6 = (-u_xlat6) + 1.0;
					    u_xlat6 = u_xlat6 * _ProjectionParams.z;
					    u_xlat6 = max(u_xlat6, 0.0);
					    u_xlat6 = u_xlat6 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat6 = clamp(u_xlat6, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat6) * u_xlat0.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat3.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat1 = texture(_CameraDepthTexture, u_xlat3.xy);
					    u_xlat3.x = _ZBufferParams.z * u_xlat1.x + _ZBufferParams.w;
					    u_xlat3.x = float(1.0) / u_xlat3.x;
					    u_xlat3.x = u_xlat3.x + (-vs_TEXCOORD3.z);
					    u_xlat3.x = u_xlat3.x * _InvFade;
					    u_xlat3.x = clamp(u_xlat3.x, 0.0, 1.0);
					    u_xlat1.w = u_xlat3.x * vs_COLOR0.w;
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2 = u_xlat2 + u_xlat2;
					    u_xlat2 = u_xlat2 * _TintColor;
					    u_xlat1.xyz = vs_COLOR0.xyz;
					    u_xlat1 = u_xlat1 * u_xlat2;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat3.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat1 = texture(_CameraDepthTexture, u_xlat3.xy);
					    u_xlat3.x = _ZBufferParams.z * u_xlat1.x + _ZBufferParams.w;
					    u_xlat3.x = float(1.0) / u_xlat3.x;
					    u_xlat3.x = u_xlat3.x + (-vs_TEXCOORD3.z);
					    u_xlat3.x = u_xlat3.x * _InvFade;
					    u_xlat3.x = clamp(u_xlat3.x, 0.0, 1.0);
					    u_xlat1.w = u_xlat3.x * vs_COLOR0.w;
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2 = u_xlat2 + u_xlat2;
					    u_xlat2 = u_xlat2 * _TintColor;
					    u_xlat1.xyz = vs_COLOR0.xyz;
					    u_xlat1 = u_xlat1 * u_xlat2;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat3.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat1 = texture(_CameraDepthTexture, u_xlat3.xy);
					    u_xlat3.x = _ZBufferParams.z * u_xlat1.x + _ZBufferParams.w;
					    u_xlat3.x = float(1.0) / u_xlat3.x;
					    u_xlat3.x = u_xlat3.x + (-vs_TEXCOORD3.z);
					    u_xlat3.x = u_xlat3.x * _InvFade;
					    u_xlat3.x = clamp(u_xlat3.x, 0.0, 1.0);
					    u_xlat1.w = u_xlat3.x * vs_COLOR0.w;
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2 = u_xlat2 + u_xlat2;
					    u_xlat2 = u_xlat2 * _TintColor;
					    u_xlat1.xyz = vs_COLOR0.xyz;
					    u_xlat1 = u_xlat1 * u_xlat2;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat3.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat1 = texture(_CameraDepthTexture, u_xlat3.xy);
					    u_xlat3.x = _ZBufferParams.z * u_xlat1.x + _ZBufferParams.w;
					    u_xlat3.x = float(1.0) / u_xlat3.x;
					    u_xlat3.x = u_xlat3.x + (-vs_TEXCOORD3.z);
					    u_xlat3.x = u_xlat3.x * _InvFade;
					    u_xlat3.x = clamp(u_xlat3.x, 0.0, 1.0);
					    u_xlat1.w = u_xlat3.x * vs_COLOR0.w;
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2 = u_xlat2 + u_xlat2;
					    u_xlat2 = u_xlat2 * _TintColor;
					    u_xlat1.xyz = vs_COLOR0.xyz;
					    u_xlat1 = u_xlat1 * u_xlat2;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat3.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat1 = texture(_CameraDepthTexture, u_xlat3.xy);
					    u_xlat3.x = _ZBufferParams.z * u_xlat1.x + _ZBufferParams.w;
					    u_xlat3.x = float(1.0) / u_xlat3.x;
					    u_xlat3.x = u_xlat3.x + (-vs_TEXCOORD3.z);
					    u_xlat3.x = u_xlat3.x * _InvFade;
					    u_xlat3.x = clamp(u_xlat3.x, 0.0, 1.0);
					    u_xlat1.w = u_xlat3.x * vs_COLOR0.w;
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2 = u_xlat2 + u_xlat2;
					    u_xlat2 = u_xlat2 * _TintColor;
					    u_xlat1.xyz = vs_COLOR0.xyz;
					    u_xlat1 = u_xlat1 * u_xlat2;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat3.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat1 = texture(_CameraDepthTexture, u_xlat3.xy);
					    u_xlat3.x = _ZBufferParams.z * u_xlat1.x + _ZBufferParams.w;
					    u_xlat3.x = float(1.0) / u_xlat3.x;
					    u_xlat3.x = u_xlat3.x + (-vs_TEXCOORD3.z);
					    u_xlat3.x = u_xlat3.x * _InvFade;
					    u_xlat3.x = clamp(u_xlat3.x, 0.0, 1.0);
					    u_xlat1.w = u_xlat3.x * vs_COLOR0.w;
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2 = u_xlat2 + u_xlat2;
					    u_xlat2 = u_xlat2 * _TintColor;
					    u_xlat1.xyz = vs_COLOR0.xyz;
					    u_xlat1 = u_xlat1 * u_xlat2;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat3.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat1 = texture(_CameraDepthTexture, u_xlat3.xy);
					    u_xlat3.x = _ZBufferParams.z * u_xlat1.x + _ZBufferParams.w;
					    u_xlat3.x = float(1.0) / u_xlat3.x;
					    u_xlat3.x = u_xlat3.x + (-vs_TEXCOORD3.z);
					    u_xlat3.x = u_xlat3.x * _InvFade;
					    u_xlat3.x = clamp(u_xlat3.x, 0.0, 1.0);
					    u_xlat1.w = u_xlat3.x * vs_COLOR0.w;
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2 = u_xlat2 + u_xlat2;
					    u_xlat2 = u_xlat2 * _TintColor;
					    u_xlat1.xyz = vs_COLOR0.xyz;
					    u_xlat1 = u_xlat1 * u_xlat2;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat3.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat1 = texture(_CameraDepthTexture, u_xlat3.xy);
					    u_xlat3.x = _ZBufferParams.z * u_xlat1.x + _ZBufferParams.w;
					    u_xlat3.x = float(1.0) / u_xlat3.x;
					    u_xlat3.x = u_xlat3.x + (-vs_TEXCOORD3.z);
					    u_xlat3.x = u_xlat3.x * _InvFade;
					    u_xlat3.x = clamp(u_xlat3.x, 0.0, 1.0);
					    u_xlat1.w = u_xlat3.x * vs_COLOR0.w;
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2 = u_xlat2 + u_xlat2;
					    u_xlat2 = u_xlat2 * _TintColor;
					    u_xlat1.xyz = vs_COLOR0.xyz;
					    u_xlat1 = u_xlat1 * u_xlat2;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendMul2" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					bool u_xlatb1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1.x = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat0.w = u_xlat0.w * u_xlat1.x;
					    u_xlat0 = u_xlat0 * vs_COLOR0;
					    u_xlat0.w = u_xlat0.w;
					    u_xlat0.w = clamp(u_xlat0.w, 0.0, 1.0);
					    u_xlat1 = u_xlat0 + vec4(-0.5, -0.5, -0.5, -0.5);
					    SV_Target0 = u_xlat0.wwww * u_xlat1 + vec4(0.5, 0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					bool u_xlatb1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1.x = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat0.w = u_xlat0.w * u_xlat1.x;
					    u_xlat0 = u_xlat0 * vs_COLOR0;
					    u_xlat0.w = u_xlat0.w;
					    u_xlat0.w = clamp(u_xlat0.w, 0.0, 1.0);
					    u_xlat1 = u_xlat0 + vec4(-0.5, -0.5, -0.5, -0.5);
					    SV_Target0 = u_xlat0.wwww * u_xlat1 + vec4(0.5, 0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[7];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					bool u_xlatb2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2 = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat0.w = u_xlat0.w;
					    u_xlat0.w = clamp(u_xlat0.w, 0.0, 1.0);
					    u_xlat1 = u_xlat0 + vec4(-0.5, -0.5, -0.5, -0.5);
					    SV_Target0 = u_xlat0.wwww * u_xlat1 + vec4(0.5, 0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[6];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					bool u_xlatb2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2 = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat0.w = u_xlat0.w;
					    u_xlat0.w = clamp(u_xlat0.w, 0.0, 1.0);
					    u_xlat1 = u_xlat0 + vec4(-0.5, -0.5, -0.5, -0.5);
					    SV_Target0 = u_xlat0.wwww * u_xlat1 + vec4(0.5, 0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3.x;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3.x;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					bool u_xlatb2;
					float u_xlat9;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2 = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat0.w = u_xlat0.w;
					    u_xlat0.w = clamp(u_xlat0.w, 0.0, 1.0);
					    u_xlat1 = u_xlat0 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat0.xyz = u_xlat0.www * u_xlat1.xyz;
					    SV_Target0.w = u_xlat0.w * u_xlat1.w + 0.5;
					    u_xlat9 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat9 = (-u_xlat9) + 1.0;
					    u_xlat9 = u_xlat9 * _ProjectionParams.z;
					    u_xlat9 = max(u_xlat9, 0.0);
					    u_xlat9 = u_xlat9 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat9 = clamp(u_xlat9, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat9) * u_xlat0.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					bool u_xlatb2;
					float u_xlat9;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2 = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat0.w = u_xlat0.w;
					    u_xlat0.w = clamp(u_xlat0.w, 0.0, 1.0);
					    u_xlat1 = u_xlat0 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat0.xyz = u_xlat0.www * u_xlat1.xyz;
					    SV_Target0.w = u_xlat0.w * u_xlat1.w + 0.5;
					    u_xlat9 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat9 = (-u_xlat9) + 1.0;
					    u_xlat9 = u_xlat9 * _ProjectionParams.z;
					    u_xlat9 = max(u_xlat9, 0.0);
					    u_xlat9 = u_xlat9 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat9 = clamp(u_xlat9, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat9) * u_xlat0.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3.x;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3.x;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat3.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat1 = texture(_CameraDepthTexture, u_xlat3.xy);
					    u_xlat3.x = _ZBufferParams.z * u_xlat1.x + _ZBufferParams.w;
					    u_xlat3.x = float(1.0) / u_xlat3.x;
					    u_xlat3.x = u_xlat3.x + (-vs_TEXCOORD3.z);
					    u_xlat3.x = u_xlat3.x * _InvFade;
					    u_xlat3.x = clamp(u_xlat3.x, 0.0, 1.0);
					    u_xlat1.w = u_xlat3.x * vs_COLOR0.w;
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb3 = u_xlat2.w>=_Cutout;
					    u_xlat2 = u_xlat2 + u_xlat2;
					    u_xlat2 = u_xlat2 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat2.w = u_xlat2.w * u_xlat3.x;
					    u_xlat1.xyz = vs_COLOR0.xyz;
					    u_xlat1 = u_xlat1 * u_xlat2;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat3.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat1 = texture(_CameraDepthTexture, u_xlat3.xy);
					    u_xlat3.x = _ZBufferParams.z * u_xlat1.x + _ZBufferParams.w;
					    u_xlat3.x = float(1.0) / u_xlat3.x;
					    u_xlat3.x = u_xlat3.x + (-vs_TEXCOORD3.z);
					    u_xlat3.x = u_xlat3.x * _InvFade;
					    u_xlat3.x = clamp(u_xlat3.x, 0.0, 1.0);
					    u_xlat1.w = u_xlat3.x * vs_COLOR0.w;
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb3 = u_xlat2.w>=_Cutout;
					    u_xlat2 = u_xlat2 + u_xlat2;
					    u_xlat2 = u_xlat2 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat2.w = u_xlat2.w * u_xlat3.x;
					    u_xlat1.xyz = vs_COLOR0.xyz;
					    u_xlat1 = u_xlat1 * u_xlat2;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3.x;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3.x;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat3.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat1 = texture(_CameraDepthTexture, u_xlat3.xy);
					    u_xlat3.x = _ZBufferParams.z * u_xlat1.x + _ZBufferParams.w;
					    u_xlat3.x = float(1.0) / u_xlat3.x;
					    u_xlat3.x = u_xlat3.x + (-vs_TEXCOORD3.z);
					    u_xlat3.x = u_xlat3.x * _InvFade;
					    u_xlat3.x = clamp(u_xlat3.x, 0.0, 1.0);
					    u_xlat1.w = u_xlat3.x * vs_COLOR0.w;
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb3 = u_xlat2.w>=_Cutout;
					    u_xlat2 = u_xlat2 + u_xlat2;
					    u_xlat2 = u_xlat2 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat2.w = u_xlat2.w * u_xlat3.x;
					    u_xlat1.xyz = vs_COLOR0.xyz;
					    u_xlat1 = u_xlat1 * u_xlat2;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat3.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat1 = texture(_CameraDepthTexture, u_xlat3.xy);
					    u_xlat3.x = _ZBufferParams.z * u_xlat1.x + _ZBufferParams.w;
					    u_xlat3.x = float(1.0) / u_xlat3.x;
					    u_xlat3.x = u_xlat3.x + (-vs_TEXCOORD3.z);
					    u_xlat3.x = u_xlat3.x * _InvFade;
					    u_xlat3.x = clamp(u_xlat3.x, 0.0, 1.0);
					    u_xlat1.w = u_xlat3.x * vs_COLOR0.w;
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb3 = u_xlat2.w>=_Cutout;
					    u_xlat2 = u_xlat2 + u_xlat2;
					    u_xlat2 = u_xlat2 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat2.w = u_xlat2.w * u_xlat3.x;
					    u_xlat1.xyz = vs_COLOR0.xyz;
					    u_xlat1 = u_xlat1 * u_xlat2;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendMul2" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[7];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					bool u_xlatb2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2 = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat0.w = u_xlat0.w;
					    u_xlat0.w = clamp(u_xlat0.w, 0.0, 1.0);
					    u_xlat1 = u_xlat0 + vec4(-0.5, -0.5, -0.5, -0.5);
					    SV_Target0 = u_xlat0.wwww * u_xlat1 + vec4(0.5, 0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[6];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					bool u_xlatb2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2 = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat0.w = u_xlat0.w;
					    u_xlat0.w = clamp(u_xlat0.w, 0.0, 1.0);
					    u_xlat1 = u_xlat0 + vec4(-0.5, -0.5, -0.5, -0.5);
					    SV_Target0 = u_xlat0.wwww * u_xlat1 + vec4(0.5, 0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[7];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					bool u_xlatb2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2 = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat0.w = u_xlat0.w;
					    u_xlat0.w = clamp(u_xlat0.w, 0.0, 1.0);
					    u_xlat1 = u_xlat0 + vec4(-0.5, -0.5, -0.5, -0.5);
					    SV_Target0 = u_xlat0.wwww * u_xlat1 + vec4(0.5, 0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[6];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					bool u_xlatb2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2 = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat0.w = u_xlat0.w;
					    u_xlat0.w = clamp(u_xlat0.w, 0.0, 1.0);
					    u_xlat1 = u_xlat0 + vec4(-0.5, -0.5, -0.5, -0.5);
					    SV_Target0 = u_xlat0.wwww * u_xlat1 + vec4(0.5, 0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					bool u_xlatb2;
					float u_xlat9;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2 = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat0.w = u_xlat0.w;
					    u_xlat0.w = clamp(u_xlat0.w, 0.0, 1.0);
					    u_xlat1 = u_xlat0 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat0.xyz = u_xlat0.www * u_xlat1.xyz;
					    SV_Target0.w = u_xlat0.w * u_xlat1.w + 0.5;
					    u_xlat9 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat9 = (-u_xlat9) + 1.0;
					    u_xlat9 = u_xlat9 * _ProjectionParams.z;
					    u_xlat9 = max(u_xlat9, 0.0);
					    u_xlat9 = u_xlat9 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat9 = clamp(u_xlat9, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat9) * u_xlat0.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					bool u_xlatb2;
					float u_xlat9;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2 = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat0.w = u_xlat0.w;
					    u_xlat0.w = clamp(u_xlat0.w, 0.0, 1.0);
					    u_xlat1 = u_xlat0 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat0.xyz = u_xlat0.www * u_xlat1.xyz;
					    SV_Target0.w = u_xlat0.w * u_xlat1.w + 0.5;
					    u_xlat9 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat9 = (-u_xlat9) + 1.0;
					    u_xlat9 = u_xlat9 * _ProjectionParams.z;
					    u_xlat9 = max(u_xlat9, 0.0);
					    u_xlat9 = u_xlat9 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat9 = clamp(u_xlat9, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat9) * u_xlat0.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					bool u_xlatb2;
					float u_xlat9;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2 = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat0.w = u_xlat0.w;
					    u_xlat0.w = clamp(u_xlat0.w, 0.0, 1.0);
					    u_xlat1 = u_xlat0 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat0.xyz = u_xlat0.www * u_xlat1.xyz;
					    SV_Target0.w = u_xlat0.w * u_xlat1.w + 0.5;
					    u_xlat9 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat9 = (-u_xlat9) + 1.0;
					    u_xlat9 = u_xlat9 * _ProjectionParams.z;
					    u_xlat9 = max(u_xlat9, 0.0);
					    u_xlat9 = u_xlat9 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat9 = clamp(u_xlat9, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat9) * u_xlat0.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					bool u_xlatb2;
					float u_xlat9;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2 = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat0.w = u_xlat0.w;
					    u_xlat0.w = clamp(u_xlat0.w, 0.0, 1.0);
					    u_xlat1 = u_xlat0 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat0.xyz = u_xlat0.www * u_xlat1.xyz;
					    SV_Target0.w = u_xlat0.w * u_xlat1.w + 0.5;
					    u_xlat9 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat9 = (-u_xlat9) + 1.0;
					    u_xlat9 = u_xlat9 * _ProjectionParams.z;
					    u_xlat9 = max(u_xlat9, 0.0);
					    u_xlat9 = u_xlat9 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat9 = clamp(u_xlat9, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat9) * u_xlat0.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat3.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat1 = texture(_CameraDepthTexture, u_xlat3.xy);
					    u_xlat3.x = _ZBufferParams.z * u_xlat1.x + _ZBufferParams.w;
					    u_xlat3.x = float(1.0) / u_xlat3.x;
					    u_xlat3.x = u_xlat3.x + (-vs_TEXCOORD3.z);
					    u_xlat3.x = u_xlat3.x * _InvFade;
					    u_xlat3.x = clamp(u_xlat3.x, 0.0, 1.0);
					    u_xlat1.w = u_xlat3.x * vs_COLOR0.w;
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb3 = u_xlat2.w>=_Cutout;
					    u_xlat2 = u_xlat2 + u_xlat2;
					    u_xlat2 = u_xlat2 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat2.w = u_xlat2.w * u_xlat3.x;
					    u_xlat1.xyz = vs_COLOR0.xyz;
					    u_xlat1 = u_xlat1 * u_xlat2;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat3.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat1 = texture(_CameraDepthTexture, u_xlat3.xy);
					    u_xlat3.x = _ZBufferParams.z * u_xlat1.x + _ZBufferParams.w;
					    u_xlat3.x = float(1.0) / u_xlat3.x;
					    u_xlat3.x = u_xlat3.x + (-vs_TEXCOORD3.z);
					    u_xlat3.x = u_xlat3.x * _InvFade;
					    u_xlat3.x = clamp(u_xlat3.x, 0.0, 1.0);
					    u_xlat1.w = u_xlat3.x * vs_COLOR0.w;
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb3 = u_xlat2.w>=_Cutout;
					    u_xlat2 = u_xlat2 + u_xlat2;
					    u_xlat2 = u_xlat2 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat2.w = u_xlat2.w * u_xlat3.x;
					    u_xlat1.xyz = vs_COLOR0.xyz;
					    u_xlat1 = u_xlat1 * u_xlat2;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat3.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat1 = texture(_CameraDepthTexture, u_xlat3.xy);
					    u_xlat3.x = _ZBufferParams.z * u_xlat1.x + _ZBufferParams.w;
					    u_xlat3.x = float(1.0) / u_xlat3.x;
					    u_xlat3.x = u_xlat3.x + (-vs_TEXCOORD3.z);
					    u_xlat3.x = u_xlat3.x * _InvFade;
					    u_xlat3.x = clamp(u_xlat3.x, 0.0, 1.0);
					    u_xlat1.w = u_xlat3.x * vs_COLOR0.w;
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb3 = u_xlat2.w>=_Cutout;
					    u_xlat2 = u_xlat2 + u_xlat2;
					    u_xlat2 = u_xlat2 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat2.w = u_xlat2.w * u_xlat3.x;
					    u_xlat1.xyz = vs_COLOR0.xyz;
					    u_xlat1 = u_xlat1 * u_xlat2;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat3.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat1 = texture(_CameraDepthTexture, u_xlat3.xy);
					    u_xlat3.x = _ZBufferParams.z * u_xlat1.x + _ZBufferParams.w;
					    u_xlat3.x = float(1.0) / u_xlat3.x;
					    u_xlat3.x = u_xlat3.x + (-vs_TEXCOORD3.z);
					    u_xlat3.x = u_xlat3.x * _InvFade;
					    u_xlat3.x = clamp(u_xlat3.x, 0.0, 1.0);
					    u_xlat1.w = u_xlat3.x * vs_COLOR0.w;
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb3 = u_xlat2.w>=_Cutout;
					    u_xlat2 = u_xlat2 + u_xlat2;
					    u_xlat2 = u_xlat2 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat2.w = u_xlat2.w * u_xlat3.x;
					    u_xlat1.xyz = vs_COLOR0.xyz;
					    u_xlat1 = u_xlat1 * u_xlat2;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat3.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat1 = texture(_CameraDepthTexture, u_xlat3.xy);
					    u_xlat3.x = _ZBufferParams.z * u_xlat1.x + _ZBufferParams.w;
					    u_xlat3.x = float(1.0) / u_xlat3.x;
					    u_xlat3.x = u_xlat3.x + (-vs_TEXCOORD3.z);
					    u_xlat3.x = u_xlat3.x * _InvFade;
					    u_xlat3.x = clamp(u_xlat3.x, 0.0, 1.0);
					    u_xlat1.w = u_xlat3.x * vs_COLOR0.w;
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb3 = u_xlat2.w>=_Cutout;
					    u_xlat2 = u_xlat2 + u_xlat2;
					    u_xlat2 = u_xlat2 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat2.w = u_xlat2.w * u_xlat3.x;
					    u_xlat1.xyz = vs_COLOR0.xyz;
					    u_xlat1 = u_xlat1 * u_xlat2;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat3.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat1 = texture(_CameraDepthTexture, u_xlat3.xy);
					    u_xlat3.x = _ZBufferParams.z * u_xlat1.x + _ZBufferParams.w;
					    u_xlat3.x = float(1.0) / u_xlat3.x;
					    u_xlat3.x = u_xlat3.x + (-vs_TEXCOORD3.z);
					    u_xlat3.x = u_xlat3.x * _InvFade;
					    u_xlat3.x = clamp(u_xlat3.x, 0.0, 1.0);
					    u_xlat1.w = u_xlat3.x * vs_COLOR0.w;
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb3 = u_xlat2.w>=_Cutout;
					    u_xlat2 = u_xlat2 + u_xlat2;
					    u_xlat2 = u_xlat2 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat2.w = u_xlat2.w * u_xlat3.x;
					    u_xlat1.xyz = vs_COLOR0.xyz;
					    u_xlat1 = u_xlat1 * u_xlat2;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat3.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat1 = texture(_CameraDepthTexture, u_xlat3.xy);
					    u_xlat3.x = _ZBufferParams.z * u_xlat1.x + _ZBufferParams.w;
					    u_xlat3.x = float(1.0) / u_xlat3.x;
					    u_xlat3.x = u_xlat3.x + (-vs_TEXCOORD3.z);
					    u_xlat3.x = u_xlat3.x * _InvFade;
					    u_xlat3.x = clamp(u_xlat3.x, 0.0, 1.0);
					    u_xlat1.w = u_xlat3.x * vs_COLOR0.w;
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb3 = u_xlat2.w>=_Cutout;
					    u_xlat2 = u_xlat2 + u_xlat2;
					    u_xlat2 = u_xlat2 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat2.w = u_xlat2.w * u_xlat3.x;
					    u_xlat1.xyz = vs_COLOR0.xyz;
					    u_xlat1 = u_xlat1 * u_xlat2;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat3.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat1 = texture(_CameraDepthTexture, u_xlat3.xy);
					    u_xlat3.x = _ZBufferParams.z * u_xlat1.x + _ZBufferParams.w;
					    u_xlat3.x = float(1.0) / u_xlat3.x;
					    u_xlat3.x = u_xlat3.x + (-vs_TEXCOORD3.z);
					    u_xlat3.x = u_xlat3.x * _InvFade;
					    u_xlat3.x = clamp(u_xlat3.x, 0.0, 1.0);
					    u_xlat1.w = u_xlat3.x * vs_COLOR0.w;
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb3 = u_xlat2.w>=_Cutout;
					    u_xlat2 = u_xlat2 + u_xlat2;
					    u_xlat2 = u_xlat2 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat2.w = u_xlat2.w * u_xlat3.x;
					    u_xlat1.xyz = vs_COLOR0.xyz;
					    u_xlat1 = u_xlat1 * u_xlat2;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendMul2" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					bool u_xlatb1;
					float u_xlat6;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1.x = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat0.w = u_xlat0.w * u_xlat1.x;
					    u_xlat0 = u_xlat0 * vs_COLOR0;
					    u_xlat6 = u_xlat0.w;
					    u_xlat6 = clamp(u_xlat6, 0.0, 1.0);
					    u_xlat0.w = u_xlat6 * vs_TEXCOORD4;
					    u_xlat1 = u_xlat0 + vec4(-0.5, -0.5, -0.5, -0.5);
					    SV_Target0 = u_xlat0.wwww * u_xlat1 + vec4(0.5, 0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					bool u_xlatb1;
					float u_xlat6;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1.x = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat0.w = u_xlat0.w * u_xlat1.x;
					    u_xlat0 = u_xlat0 * vs_COLOR0;
					    u_xlat6 = u_xlat0.w;
					    u_xlat6 = clamp(u_xlat6, 0.0, 1.0);
					    u_xlat0.w = u_xlat6 * vs_TEXCOORD4;
					    u_xlat1 = u_xlat0 + vec4(-0.5, -0.5, -0.5, -0.5);
					    SV_Target0 = u_xlat0.wwww * u_xlat1 + vec4(0.5, 0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[7];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					bool u_xlatb2;
					float u_xlat9;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2 = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat9 = u_xlat0.w;
					    u_xlat9 = clamp(u_xlat9, 0.0, 1.0);
					    u_xlat0.w = u_xlat9 * vs_TEXCOORD4;
					    u_xlat1 = u_xlat0 + vec4(-0.5, -0.5, -0.5, -0.5);
					    SV_Target0 = u_xlat0.wwww * u_xlat1 + vec4(0.5, 0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[6];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					bool u_xlatb2;
					float u_xlat9;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2 = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat9 = u_xlat0.w;
					    u_xlat9 = clamp(u_xlat9, 0.0, 1.0);
					    u_xlat0.w = u_xlat9 * vs_TEXCOORD4;
					    u_xlat1 = u_xlat0 + vec4(-0.5, -0.5, -0.5, -0.5);
					    SV_Target0 = u_xlat0.wwww * u_xlat1 + vec4(0.5, 0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3.x;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3.x;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					bool u_xlatb2;
					float u_xlat9;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2 = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat9 = u_xlat0.w;
					    u_xlat9 = clamp(u_xlat9, 0.0, 1.0);
					    u_xlat0.w = u_xlat9 * vs_TEXCOORD4;
					    u_xlat1 = u_xlat0 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat0.xyz = u_xlat0.www * u_xlat1.xyz;
					    SV_Target0.w = u_xlat0.w * u_xlat1.w + 0.5;
					    u_xlat9 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat9 = (-u_xlat9) + 1.0;
					    u_xlat9 = u_xlat9 * _ProjectionParams.z;
					    u_xlat9 = max(u_xlat9, 0.0);
					    u_xlat9 = u_xlat9 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat9 = clamp(u_xlat9, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat9) * u_xlat0.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					bool u_xlatb2;
					float u_xlat9;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2 = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat9 = u_xlat0.w;
					    u_xlat9 = clamp(u_xlat9, 0.0, 1.0);
					    u_xlat0.w = u_xlat9 * vs_TEXCOORD4;
					    u_xlat1 = u_xlat0 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat0.xyz = u_xlat0.www * u_xlat1.xyz;
					    SV_Target0.w = u_xlat0.w * u_xlat1.w + 0.5;
					    u_xlat9 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat9 = (-u_xlat9) + 1.0;
					    u_xlat9 = u_xlat9 * _ProjectionParams.z;
					    u_xlat9 = max(u_xlat9, 0.0);
					    u_xlat9 = u_xlat9 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat9 = clamp(u_xlat9, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat9) * u_xlat0.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3.x;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3.x;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat3.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat1 = texture(_CameraDepthTexture, u_xlat3.xy);
					    u_xlat3.x = _ZBufferParams.z * u_xlat1.x + _ZBufferParams.w;
					    u_xlat3.x = float(1.0) / u_xlat3.x;
					    u_xlat3.x = u_xlat3.x + (-vs_TEXCOORD3.z);
					    u_xlat3.x = u_xlat3.x * _InvFade;
					    u_xlat3.x = clamp(u_xlat3.x, 0.0, 1.0);
					    u_xlat1.w = u_xlat3.x * vs_COLOR0.w;
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb3 = u_xlat2.w>=_Cutout;
					    u_xlat2 = u_xlat2 + u_xlat2;
					    u_xlat2 = u_xlat2 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat2.w = u_xlat2.w * u_xlat3.x;
					    u_xlat1.xyz = vs_COLOR0.xyz;
					    u_xlat1 = u_xlat1 * u_xlat2;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat3.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat1 = texture(_CameraDepthTexture, u_xlat3.xy);
					    u_xlat3.x = _ZBufferParams.z * u_xlat1.x + _ZBufferParams.w;
					    u_xlat3.x = float(1.0) / u_xlat3.x;
					    u_xlat3.x = u_xlat3.x + (-vs_TEXCOORD3.z);
					    u_xlat3.x = u_xlat3.x * _InvFade;
					    u_xlat3.x = clamp(u_xlat3.x, 0.0, 1.0);
					    u_xlat1.w = u_xlat3.x * vs_COLOR0.w;
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb3 = u_xlat2.w>=_Cutout;
					    u_xlat2 = u_xlat2 + u_xlat2;
					    u_xlat2 = u_xlat2 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat2.w = u_xlat2.w * u_xlat3.x;
					    u_xlat1.xyz = vs_COLOR0.xyz;
					    u_xlat1 = u_xlat1 * u_xlat2;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3.x;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3.x;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat3.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat1 = texture(_CameraDepthTexture, u_xlat3.xy);
					    u_xlat3.x = _ZBufferParams.z * u_xlat1.x + _ZBufferParams.w;
					    u_xlat3.x = float(1.0) / u_xlat3.x;
					    u_xlat3.x = u_xlat3.x + (-vs_TEXCOORD3.z);
					    u_xlat3.x = u_xlat3.x * _InvFade;
					    u_xlat3.x = clamp(u_xlat3.x, 0.0, 1.0);
					    u_xlat1.w = u_xlat3.x * vs_COLOR0.w;
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb3 = u_xlat2.w>=_Cutout;
					    u_xlat2 = u_xlat2 + u_xlat2;
					    u_xlat2 = u_xlat2 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat2.w = u_xlat2.w * u_xlat3.x;
					    u_xlat1.xyz = vs_COLOR0.xyz;
					    u_xlat1 = u_xlat1 * u_xlat2;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat3.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat1 = texture(_CameraDepthTexture, u_xlat3.xy);
					    u_xlat3.x = _ZBufferParams.z * u_xlat1.x + _ZBufferParams.w;
					    u_xlat3.x = float(1.0) / u_xlat3.x;
					    u_xlat3.x = u_xlat3.x + (-vs_TEXCOORD3.z);
					    u_xlat3.x = u_xlat3.x * _InvFade;
					    u_xlat3.x = clamp(u_xlat3.x, 0.0, 1.0);
					    u_xlat1.w = u_xlat3.x * vs_COLOR0.w;
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb3 = u_xlat2.w>=_Cutout;
					    u_xlat2 = u_xlat2 + u_xlat2;
					    u_xlat2 = u_xlat2 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat2.w = u_xlat2.w * u_xlat3.x;
					    u_xlat1.xyz = vs_COLOR0.xyz;
					    u_xlat1 = u_xlat1 * u_xlat2;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendMul2" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[7];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					bool u_xlatb2;
					float u_xlat9;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2 = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat9 = u_xlat0.w;
					    u_xlat9 = clamp(u_xlat9, 0.0, 1.0);
					    u_xlat0.w = u_xlat9 * vs_TEXCOORD4;
					    u_xlat1 = u_xlat0 + vec4(-0.5, -0.5, -0.5, -0.5);
					    SV_Target0 = u_xlat0.wwww * u_xlat1 + vec4(0.5, 0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[6];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					bool u_xlatb2;
					float u_xlat9;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2 = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat9 = u_xlat0.w;
					    u_xlat9 = clamp(u_xlat9, 0.0, 1.0);
					    u_xlat0.w = u_xlat9 * vs_TEXCOORD4;
					    u_xlat1 = u_xlat0 + vec4(-0.5, -0.5, -0.5, -0.5);
					    SV_Target0 = u_xlat0.wwww * u_xlat1 + vec4(0.5, 0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[7];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					bool u_xlatb2;
					float u_xlat9;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2 = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat9 = u_xlat0.w;
					    u_xlat9 = clamp(u_xlat9, 0.0, 1.0);
					    u_xlat0.w = u_xlat9 * vs_TEXCOORD4;
					    u_xlat1 = u_xlat0 + vec4(-0.5, -0.5, -0.5, -0.5);
					    SV_Target0 = u_xlat0.wwww * u_xlat1 + vec4(0.5, 0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[6];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					bool u_xlatb2;
					float u_xlat9;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2 = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat9 = u_xlat0.w;
					    u_xlat9 = clamp(u_xlat9, 0.0, 1.0);
					    u_xlat0.w = u_xlat9 * vs_TEXCOORD4;
					    u_xlat1 = u_xlat0 + vec4(-0.5, -0.5, -0.5, -0.5);
					    SV_Target0 = u_xlat0.wwww * u_xlat1 + vec4(0.5, 0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					bool u_xlatb2;
					float u_xlat9;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2 = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat9 = u_xlat0.w;
					    u_xlat9 = clamp(u_xlat9, 0.0, 1.0);
					    u_xlat0.w = u_xlat9 * vs_TEXCOORD4;
					    u_xlat1 = u_xlat0 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat0.xyz = u_xlat0.www * u_xlat1.xyz;
					    SV_Target0.w = u_xlat0.w * u_xlat1.w + 0.5;
					    u_xlat9 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat9 = (-u_xlat9) + 1.0;
					    u_xlat9 = u_xlat9 * _ProjectionParams.z;
					    u_xlat9 = max(u_xlat9, 0.0);
					    u_xlat9 = u_xlat9 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat9 = clamp(u_xlat9, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat9) * u_xlat0.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					bool u_xlatb2;
					float u_xlat9;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2 = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat9 = u_xlat0.w;
					    u_xlat9 = clamp(u_xlat9, 0.0, 1.0);
					    u_xlat0.w = u_xlat9 * vs_TEXCOORD4;
					    u_xlat1 = u_xlat0 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat0.xyz = u_xlat0.www * u_xlat1.xyz;
					    SV_Target0.w = u_xlat0.w * u_xlat1.w + 0.5;
					    u_xlat9 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat9 = (-u_xlat9) + 1.0;
					    u_xlat9 = u_xlat9 * _ProjectionParams.z;
					    u_xlat9 = max(u_xlat9, 0.0);
					    u_xlat9 = u_xlat9 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat9 = clamp(u_xlat9, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat9) * u_xlat0.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					bool u_xlatb2;
					float u_xlat9;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2 = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat9 = u_xlat0.w;
					    u_xlat9 = clamp(u_xlat9, 0.0, 1.0);
					    u_xlat0.w = u_xlat9 * vs_TEXCOORD4;
					    u_xlat1 = u_xlat0 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat0.xyz = u_xlat0.www * u_xlat1.xyz;
					    SV_Target0.w = u_xlat0.w * u_xlat1.w + 0.5;
					    u_xlat9 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat9 = (-u_xlat9) + 1.0;
					    u_xlat9 = u_xlat9 * _ProjectionParams.z;
					    u_xlat9 = max(u_xlat9, 0.0);
					    u_xlat9 = u_xlat9 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat9 = clamp(u_xlat9, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat9) * u_xlat0.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat2;
					bool u_xlatb2;
					float u_xlat9;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2 = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat9 = u_xlat0.w;
					    u_xlat9 = clamp(u_xlat9, 0.0, 1.0);
					    u_xlat0.w = u_xlat9 * vs_TEXCOORD4;
					    u_xlat1 = u_xlat0 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat0.xyz = u_xlat0.www * u_xlat1.xyz;
					    SV_Target0.w = u_xlat0.w * u_xlat1.w + 0.5;
					    u_xlat9 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat9 = (-u_xlat9) + 1.0;
					    u_xlat9 = u_xlat9 * _ProjectionParams.z;
					    u_xlat9 = max(u_xlat9, 0.0);
					    u_xlat9 = u_xlat9 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat9 = clamp(u_xlat9, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat9) * u_xlat0.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat3.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat1 = texture(_CameraDepthTexture, u_xlat3.xy);
					    u_xlat3.x = _ZBufferParams.z * u_xlat1.x + _ZBufferParams.w;
					    u_xlat3.x = float(1.0) / u_xlat3.x;
					    u_xlat3.x = u_xlat3.x + (-vs_TEXCOORD3.z);
					    u_xlat3.x = u_xlat3.x * _InvFade;
					    u_xlat3.x = clamp(u_xlat3.x, 0.0, 1.0);
					    u_xlat1.w = u_xlat3.x * vs_COLOR0.w;
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb3 = u_xlat2.w>=_Cutout;
					    u_xlat2 = u_xlat2 + u_xlat2;
					    u_xlat2 = u_xlat2 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat2.w = u_xlat2.w * u_xlat3.x;
					    u_xlat1.xyz = vs_COLOR0.xyz;
					    u_xlat1 = u_xlat1 * u_xlat2;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat3.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat1 = texture(_CameraDepthTexture, u_xlat3.xy);
					    u_xlat3.x = _ZBufferParams.z * u_xlat1.x + _ZBufferParams.w;
					    u_xlat3.x = float(1.0) / u_xlat3.x;
					    u_xlat3.x = u_xlat3.x + (-vs_TEXCOORD3.z);
					    u_xlat3.x = u_xlat3.x * _InvFade;
					    u_xlat3.x = clamp(u_xlat3.x, 0.0, 1.0);
					    u_xlat1.w = u_xlat3.x * vs_COLOR0.w;
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb3 = u_xlat2.w>=_Cutout;
					    u_xlat2 = u_xlat2 + u_xlat2;
					    u_xlat2 = u_xlat2 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat2.w = u_xlat2.w * u_xlat3.x;
					    u_xlat1.xyz = vs_COLOR0.xyz;
					    u_xlat1 = u_xlat1 * u_xlat2;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat3.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat1 = texture(_CameraDepthTexture, u_xlat3.xy);
					    u_xlat3.x = _ZBufferParams.z * u_xlat1.x + _ZBufferParams.w;
					    u_xlat3.x = float(1.0) / u_xlat3.x;
					    u_xlat3.x = u_xlat3.x + (-vs_TEXCOORD3.z);
					    u_xlat3.x = u_xlat3.x * _InvFade;
					    u_xlat3.x = clamp(u_xlat3.x, 0.0, 1.0);
					    u_xlat1.w = u_xlat3.x * vs_COLOR0.w;
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb3 = u_xlat2.w>=_Cutout;
					    u_xlat2 = u_xlat2 + u_xlat2;
					    u_xlat2 = u_xlat2 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat2.w = u_xlat2.w * u_xlat3.x;
					    u_xlat1.xyz = vs_COLOR0.xyz;
					    u_xlat1 = u_xlat1 * u_xlat2;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat3.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat1 = texture(_CameraDepthTexture, u_xlat3.xy);
					    u_xlat3.x = _ZBufferParams.z * u_xlat1.x + _ZBufferParams.w;
					    u_xlat3.x = float(1.0) / u_xlat3.x;
					    u_xlat3.x = u_xlat3.x + (-vs_TEXCOORD3.z);
					    u_xlat3.x = u_xlat3.x * _InvFade;
					    u_xlat3.x = clamp(u_xlat3.x, 0.0, 1.0);
					    u_xlat1.w = u_xlat3.x * vs_COLOR0.w;
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb3 = u_xlat2.w>=_Cutout;
					    u_xlat2 = u_xlat2 + u_xlat2;
					    u_xlat2 = u_xlat2 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat2.w = u_xlat2.w * u_xlat3.x;
					    u_xlat1.xyz = vs_COLOR0.xyz;
					    u_xlat1 = u_xlat1 * u_xlat2;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat3.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat1 = texture(_CameraDepthTexture, u_xlat3.xy);
					    u_xlat3.x = _ZBufferParams.z * u_xlat1.x + _ZBufferParams.w;
					    u_xlat3.x = float(1.0) / u_xlat3.x;
					    u_xlat3.x = u_xlat3.x + (-vs_TEXCOORD3.z);
					    u_xlat3.x = u_xlat3.x * _InvFade;
					    u_xlat3.x = clamp(u_xlat3.x, 0.0, 1.0);
					    u_xlat1.w = u_xlat3.x * vs_COLOR0.w;
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb3 = u_xlat2.w>=_Cutout;
					    u_xlat2 = u_xlat2 + u_xlat2;
					    u_xlat2 = u_xlat2 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat2.w = u_xlat2.w * u_xlat3.x;
					    u_xlat1.xyz = vs_COLOR0.xyz;
					    u_xlat1 = u_xlat1 * u_xlat2;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat3.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat1 = texture(_CameraDepthTexture, u_xlat3.xy);
					    u_xlat3.x = _ZBufferParams.z * u_xlat1.x + _ZBufferParams.w;
					    u_xlat3.x = float(1.0) / u_xlat3.x;
					    u_xlat3.x = u_xlat3.x + (-vs_TEXCOORD3.z);
					    u_xlat3.x = u_xlat3.x * _InvFade;
					    u_xlat3.x = clamp(u_xlat3.x, 0.0, 1.0);
					    u_xlat1.w = u_xlat3.x * vs_COLOR0.w;
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb3 = u_xlat2.w>=_Cutout;
					    u_xlat2 = u_xlat2 + u_xlat2;
					    u_xlat2 = u_xlat2 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat2.w = u_xlat2.w * u_xlat3.x;
					    u_xlat1.xyz = vs_COLOR0.xyz;
					    u_xlat1 = u_xlat1 * u_xlat2;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat3.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat1 = texture(_CameraDepthTexture, u_xlat3.xy);
					    u_xlat3.x = _ZBufferParams.z * u_xlat1.x + _ZBufferParams.w;
					    u_xlat3.x = float(1.0) / u_xlat3.x;
					    u_xlat3.x = u_xlat3.x + (-vs_TEXCOORD3.z);
					    u_xlat3.x = u_xlat3.x * _InvFade;
					    u_xlat3.x = clamp(u_xlat3.x, 0.0, 1.0);
					    u_xlat1.w = u_xlat3.x * vs_COLOR0.w;
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb3 = u_xlat2.w>=_Cutout;
					    u_xlat2 = u_xlat2 + u_xlat2;
					    u_xlat2 = u_xlat2 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat2.w = u_xlat2.w * u_xlat3.x;
					    u_xlat1.xyz = vs_COLOR0.xyz;
					    u_xlat1 = u_xlat1 * u_xlat2;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat3.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat1 = texture(_CameraDepthTexture, u_xlat3.xy);
					    u_xlat3.x = _ZBufferParams.z * u_xlat1.x + _ZBufferParams.w;
					    u_xlat3.x = float(1.0) / u_xlat3.x;
					    u_xlat3.x = u_xlat3.x + (-vs_TEXCOORD3.z);
					    u_xlat3.x = u_xlat3.x * _InvFade;
					    u_xlat3.x = clamp(u_xlat3.x, 0.0, 1.0);
					    u_xlat1.w = u_xlat3.x * vs_COLOR0.w;
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb3 = u_xlat2.w>=_Cutout;
					    u_xlat2 = u_xlat2 + u_xlat2;
					    u_xlat2 = u_xlat2 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat2.w = u_xlat2.w * u_xlat3.x;
					    u_xlat1.xyz = vs_COLOR0.xyz;
					    u_xlat1 = u_xlat1 * u_xlat2;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendMul2" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0.xyz = u_xlat0.xyz + u_xlat0.xyz;
					    u_xlat0.xyz = u_xlat0.xyz * _TintColor.xyz;
					    u_xlat1.xyz = u_xlat0.xyz * vs_COLOR0.xyz;
					    u_xlat0.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlatb0 = u_xlat0.w>=u_xlat0.x;
					    u_xlat1.w = u_xlatb0 ? 1.0 : float(0.0);
					    u_xlat0 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    SV_Target0 = u_xlat1.wwww * u_xlat0 + vec4(0.5, 0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0.xyz = u_xlat0.xyz + u_xlat0.xyz;
					    u_xlat0.xyz = u_xlat0.xyz * _TintColor.xyz;
					    u_xlat1.xyz = u_xlat0.xyz * vs_COLOR0.xyz;
					    u_xlat0.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlatb0 = u_xlat0.w>=u_xlat0.x;
					    u_xlat1.w = u_xlatb0 ? 1.0 : float(0.0);
					    u_xlat0 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    SV_Target0 = u_xlat1.wwww * u_xlat0 + vec4(0.5, 0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[7];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb0 = u_xlat1.w>=u_xlat0.x;
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    u_xlat1.xyz = u_xlat2.xyz * vs_COLOR0.xyz;
					    u_xlat1.w = u_xlatb0 ? 1.0 : float(0.0);
					    u_xlat0 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    SV_Target0 = u_xlat1.wwww * u_xlat0 + vec4(0.5, 0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[6];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb0 = u_xlat1.w>=u_xlat0.x;
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    u_xlat1.xyz = u_xlat2.xyz * vs_COLOR0.xyz;
					    u_xlat1.w = u_xlatb0 ? 1.0 : float(0.0);
					    u_xlat0 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    SV_Target0 = u_xlat1.wwww * u_xlat0 + vec4(0.5, 0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat2.w = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1 = u_xlat2 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat2.w = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1 = u_xlat2 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat3.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat1 = texture(_CameraDepthTexture, u_xlat3.xy);
					    u_xlat3.x = _ZBufferParams.z * u_xlat1.x + _ZBufferParams.w;
					    u_xlat3.x = float(1.0) / u_xlat3.x;
					    u_xlat3.x = u_xlat3.x + (-vs_TEXCOORD3.z);
					    u_xlat3.x = u_xlat3.x * _InvFade;
					    u_xlat3.x = clamp(u_xlat3.x, 0.0, 1.0);
					    u_xlat3.x = (-vs_COLOR0.w) * u_xlat3.x + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat1.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz * _TintColor.xyz;
					    u_xlat1.xyz = u_xlat1.xyz * vs_COLOR0.xyz;
					    u_xlat1.w = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat3.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat1 = texture(_CameraDepthTexture, u_xlat3.xy);
					    u_xlat3.x = _ZBufferParams.z * u_xlat1.x + _ZBufferParams.w;
					    u_xlat3.x = float(1.0) / u_xlat3.x;
					    u_xlat3.x = u_xlat3.x + (-vs_TEXCOORD3.z);
					    u_xlat3.x = u_xlat3.x * _InvFade;
					    u_xlat3.x = clamp(u_xlat3.x, 0.0, 1.0);
					    u_xlat3.x = (-vs_COLOR0.w) * u_xlat3.x + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat1.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz * _TintColor.xyz;
					    u_xlat1.xyz = u_xlat1.xyz * vs_COLOR0.xyz;
					    u_xlat1.w = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat2.w = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1 = u_xlat2 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat2.w = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1 = u_xlat2 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat3.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat1 = texture(_CameraDepthTexture, u_xlat3.xy);
					    u_xlat3.x = _ZBufferParams.z * u_xlat1.x + _ZBufferParams.w;
					    u_xlat3.x = float(1.0) / u_xlat3.x;
					    u_xlat3.x = u_xlat3.x + (-vs_TEXCOORD3.z);
					    u_xlat3.x = u_xlat3.x * _InvFade;
					    u_xlat3.x = clamp(u_xlat3.x, 0.0, 1.0);
					    u_xlat3.x = (-vs_COLOR0.w) * u_xlat3.x + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat1.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz * _TintColor.xyz;
					    u_xlat1.xyz = u_xlat1.xyz * vs_COLOR0.xyz;
					    u_xlat1.w = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat3.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat1 = texture(_CameraDepthTexture, u_xlat3.xy);
					    u_xlat3.x = _ZBufferParams.z * u_xlat1.x + _ZBufferParams.w;
					    u_xlat3.x = float(1.0) / u_xlat3.x;
					    u_xlat3.x = u_xlat3.x + (-vs_TEXCOORD3.z);
					    u_xlat3.x = u_xlat3.x * _InvFade;
					    u_xlat3.x = clamp(u_xlat3.x, 0.0, 1.0);
					    u_xlat3.x = (-vs_COLOR0.w) * u_xlat3.x + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat1.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz * _TintColor.xyz;
					    u_xlat1.xyz = u_xlat1.xyz * vs_COLOR0.xyz;
					    u_xlat1.w = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat2.w = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1 = u_xlat2 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat2.w = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1 = u_xlat2 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat3.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat1 = texture(_CameraDepthTexture, u_xlat3.xy);
					    u_xlat3.x = _ZBufferParams.z * u_xlat1.x + _ZBufferParams.w;
					    u_xlat3.x = float(1.0) / u_xlat3.x;
					    u_xlat3.x = u_xlat3.x + (-vs_TEXCOORD3.z);
					    u_xlat3.x = u_xlat3.x * _InvFade;
					    u_xlat3.x = clamp(u_xlat3.x, 0.0, 1.0);
					    u_xlat3.x = (-vs_COLOR0.w) * u_xlat3.x + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat1.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz * _TintColor.xyz;
					    u_xlat1.xyz = u_xlat1.xyz * vs_COLOR0.xyz;
					    u_xlat1.w = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat3.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat1 = texture(_CameraDepthTexture, u_xlat3.xy);
					    u_xlat3.x = _ZBufferParams.z * u_xlat1.x + _ZBufferParams.w;
					    u_xlat3.x = float(1.0) / u_xlat3.x;
					    u_xlat3.x = u_xlat3.x + (-vs_TEXCOORD3.z);
					    u_xlat3.x = u_xlat3.x * _InvFade;
					    u_xlat3.x = clamp(u_xlat3.x, 0.0, 1.0);
					    u_xlat3.x = (-vs_COLOR0.w) * u_xlat3.x + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat1.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz * _TintColor.xyz;
					    u_xlat1.xyz = u_xlat1.xyz * vs_COLOR0.xyz;
					    u_xlat1.w = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendMul2" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[7];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb0 = u_xlat1.w>=u_xlat0.x;
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    u_xlat1.xyz = u_xlat2.xyz * vs_COLOR0.xyz;
					    u_xlat1.w = u_xlatb0 ? 1.0 : float(0.0);
					    u_xlat0 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    SV_Target0 = u_xlat1.wwww * u_xlat0 + vec4(0.5, 0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[6];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb0 = u_xlat1.w>=u_xlat0.x;
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    u_xlat1.xyz = u_xlat2.xyz * vs_COLOR0.xyz;
					    u_xlat1.w = u_xlatb0 ? 1.0 : float(0.0);
					    u_xlat0 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    SV_Target0 = u_xlat1.wwww * u_xlat0 + vec4(0.5, 0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[7];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb0 = u_xlat1.w>=u_xlat0.x;
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    u_xlat1.xyz = u_xlat2.xyz * vs_COLOR0.xyz;
					    u_xlat1.w = u_xlatb0 ? 1.0 : float(0.0);
					    u_xlat0 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    SV_Target0 = u_xlat1.wwww * u_xlat0 + vec4(0.5, 0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[6];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb0 = u_xlat1.w>=u_xlat0.x;
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    u_xlat1.xyz = u_xlat2.xyz * vs_COLOR0.xyz;
					    u_xlat1.w = u_xlatb0 ? 1.0 : float(0.0);
					    u_xlat0 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    SV_Target0 = u_xlat1.wwww * u_xlat0 + vec4(0.5, 0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat3.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat1 = texture(_CameraDepthTexture, u_xlat3.xy);
					    u_xlat3.x = _ZBufferParams.z * u_xlat1.x + _ZBufferParams.w;
					    u_xlat3.x = float(1.0) / u_xlat3.x;
					    u_xlat3.x = u_xlat3.x + (-vs_TEXCOORD3.z);
					    u_xlat3.x = u_xlat3.x * _InvFade;
					    u_xlat3.x = clamp(u_xlat3.x, 0.0, 1.0);
					    u_xlat3.x = (-vs_COLOR0.w) * u_xlat3.x + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat1.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz * _TintColor.xyz;
					    u_xlat1.xyz = u_xlat1.xyz * vs_COLOR0.xyz;
					    u_xlat1.w = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat3.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat1 = texture(_CameraDepthTexture, u_xlat3.xy);
					    u_xlat3.x = _ZBufferParams.z * u_xlat1.x + _ZBufferParams.w;
					    u_xlat3.x = float(1.0) / u_xlat3.x;
					    u_xlat3.x = u_xlat3.x + (-vs_TEXCOORD3.z);
					    u_xlat3.x = u_xlat3.x * _InvFade;
					    u_xlat3.x = clamp(u_xlat3.x, 0.0, 1.0);
					    u_xlat3.x = (-vs_COLOR0.w) * u_xlat3.x + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat1.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz * _TintColor.xyz;
					    u_xlat1.xyz = u_xlat1.xyz * vs_COLOR0.xyz;
					    u_xlat1.w = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat3.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat1 = texture(_CameraDepthTexture, u_xlat3.xy);
					    u_xlat3.x = _ZBufferParams.z * u_xlat1.x + _ZBufferParams.w;
					    u_xlat3.x = float(1.0) / u_xlat3.x;
					    u_xlat3.x = u_xlat3.x + (-vs_TEXCOORD3.z);
					    u_xlat3.x = u_xlat3.x * _InvFade;
					    u_xlat3.x = clamp(u_xlat3.x, 0.0, 1.0);
					    u_xlat3.x = (-vs_COLOR0.w) * u_xlat3.x + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat1.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz * _TintColor.xyz;
					    u_xlat1.xyz = u_xlat1.xyz * vs_COLOR0.xyz;
					    u_xlat1.w = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat3.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat1 = texture(_CameraDepthTexture, u_xlat3.xy);
					    u_xlat3.x = _ZBufferParams.z * u_xlat1.x + _ZBufferParams.w;
					    u_xlat3.x = float(1.0) / u_xlat3.x;
					    u_xlat3.x = u_xlat3.x + (-vs_TEXCOORD3.z);
					    u_xlat3.x = u_xlat3.x * _InvFade;
					    u_xlat3.x = clamp(u_xlat3.x, 0.0, 1.0);
					    u_xlat3.x = (-vs_COLOR0.w) * u_xlat3.x + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat1.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz * _TintColor.xyz;
					    u_xlat1.xyz = u_xlat1.xyz * vs_COLOR0.xyz;
					    u_xlat1.w = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat3.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat1 = texture(_CameraDepthTexture, u_xlat3.xy);
					    u_xlat3.x = _ZBufferParams.z * u_xlat1.x + _ZBufferParams.w;
					    u_xlat3.x = float(1.0) / u_xlat3.x;
					    u_xlat3.x = u_xlat3.x + (-vs_TEXCOORD3.z);
					    u_xlat3.x = u_xlat3.x * _InvFade;
					    u_xlat3.x = clamp(u_xlat3.x, 0.0, 1.0);
					    u_xlat3.x = (-vs_COLOR0.w) * u_xlat3.x + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat1.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz * _TintColor.xyz;
					    u_xlat1.xyz = u_xlat1.xyz * vs_COLOR0.xyz;
					    u_xlat1.w = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat3.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat1 = texture(_CameraDepthTexture, u_xlat3.xy);
					    u_xlat3.x = _ZBufferParams.z * u_xlat1.x + _ZBufferParams.w;
					    u_xlat3.x = float(1.0) / u_xlat3.x;
					    u_xlat3.x = u_xlat3.x + (-vs_TEXCOORD3.z);
					    u_xlat3.x = u_xlat3.x * _InvFade;
					    u_xlat3.x = clamp(u_xlat3.x, 0.0, 1.0);
					    u_xlat3.x = (-vs_COLOR0.w) * u_xlat3.x + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat1.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz * _TintColor.xyz;
					    u_xlat1.xyz = u_xlat1.xyz * vs_COLOR0.xyz;
					    u_xlat1.w = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat3.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat1 = texture(_CameraDepthTexture, u_xlat3.xy);
					    u_xlat3.x = _ZBufferParams.z * u_xlat1.x + _ZBufferParams.w;
					    u_xlat3.x = float(1.0) / u_xlat3.x;
					    u_xlat3.x = u_xlat3.x + (-vs_TEXCOORD3.z);
					    u_xlat3.x = u_xlat3.x * _InvFade;
					    u_xlat3.x = clamp(u_xlat3.x, 0.0, 1.0);
					    u_xlat3.x = (-vs_COLOR0.w) * u_xlat3.x + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat1.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz * _TintColor.xyz;
					    u_xlat1.xyz = u_xlat1.xyz * vs_COLOR0.xyz;
					    u_xlat1.w = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat3.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat1 = texture(_CameraDepthTexture, u_xlat3.xy);
					    u_xlat3.x = _ZBufferParams.z * u_xlat1.x + _ZBufferParams.w;
					    u_xlat3.x = float(1.0) / u_xlat3.x;
					    u_xlat3.x = u_xlat3.x + (-vs_TEXCOORD3.z);
					    u_xlat3.x = u_xlat3.x * _InvFade;
					    u_xlat3.x = clamp(u_xlat3.x, 0.0, 1.0);
					    u_xlat3.x = (-vs_COLOR0.w) * u_xlat3.x + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat1.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz * _TintColor.xyz;
					    u_xlat1.xyz = u_xlat1.xyz * vs_COLOR0.xyz;
					    u_xlat1.w = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat3.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat1 = texture(_CameraDepthTexture, u_xlat3.xy);
					    u_xlat3.x = _ZBufferParams.z * u_xlat1.x + _ZBufferParams.w;
					    u_xlat3.x = float(1.0) / u_xlat3.x;
					    u_xlat3.x = u_xlat3.x + (-vs_TEXCOORD3.z);
					    u_xlat3.x = u_xlat3.x * _InvFade;
					    u_xlat3.x = clamp(u_xlat3.x, 0.0, 1.0);
					    u_xlat3.x = (-vs_COLOR0.w) * u_xlat3.x + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat1.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz * _TintColor.xyz;
					    u_xlat1.xyz = u_xlat1.xyz * vs_COLOR0.xyz;
					    u_xlat1.w = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat3.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat1 = texture(_CameraDepthTexture, u_xlat3.xy);
					    u_xlat3.x = _ZBufferParams.z * u_xlat1.x + _ZBufferParams.w;
					    u_xlat3.x = float(1.0) / u_xlat3.x;
					    u_xlat3.x = u_xlat3.x + (-vs_TEXCOORD3.z);
					    u_xlat3.x = u_xlat3.x * _InvFade;
					    u_xlat3.x = clamp(u_xlat3.x, 0.0, 1.0);
					    u_xlat3.x = (-vs_COLOR0.w) * u_xlat3.x + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat1.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz * _TintColor.xyz;
					    u_xlat1.xyz = u_xlat1.xyz * vs_COLOR0.xyz;
					    u_xlat1.w = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat3.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat1 = texture(_CameraDepthTexture, u_xlat3.xy);
					    u_xlat3.x = _ZBufferParams.z * u_xlat1.x + _ZBufferParams.w;
					    u_xlat3.x = float(1.0) / u_xlat3.x;
					    u_xlat3.x = u_xlat3.x + (-vs_TEXCOORD3.z);
					    u_xlat3.x = u_xlat3.x * _InvFade;
					    u_xlat3.x = clamp(u_xlat3.x, 0.0, 1.0);
					    u_xlat3.x = (-vs_COLOR0.w) * u_xlat3.x + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat1.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz * _TintColor.xyz;
					    u_xlat1.xyz = u_xlat1.xyz * vs_COLOR0.xyz;
					    u_xlat1.w = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat3.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat1 = texture(_CameraDepthTexture, u_xlat3.xy);
					    u_xlat3.x = _ZBufferParams.z * u_xlat1.x + _ZBufferParams.w;
					    u_xlat3.x = float(1.0) / u_xlat3.x;
					    u_xlat3.x = u_xlat3.x + (-vs_TEXCOORD3.z);
					    u_xlat3.x = u_xlat3.x * _InvFade;
					    u_xlat3.x = clamp(u_xlat3.x, 0.0, 1.0);
					    u_xlat3.x = (-vs_COLOR0.w) * u_xlat3.x + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat1.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz * _TintColor.xyz;
					    u_xlat1.xyz = u_xlat1.xyz * vs_COLOR0.xyz;
					    u_xlat1.w = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendMul2" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0.xyz = u_xlat0.xyz + u_xlat0.xyz;
					    u_xlat0.xyz = u_xlat0.xyz * _TintColor.xyz;
					    u_xlat1.xyz = u_xlat0.xyz * vs_COLOR0.xyz;
					    u_xlat0.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlatb0 = u_xlat0.w>=u_xlat0.x;
					    u_xlat0.x = u_xlatb0 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat0.x * vs_TEXCOORD4;
					    u_xlat0 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    SV_Target0 = u_xlat1.wwww * u_xlat0 + vec4(0.5, 0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0.xyz = u_xlat0.xyz + u_xlat0.xyz;
					    u_xlat0.xyz = u_xlat0.xyz * _TintColor.xyz;
					    u_xlat1.xyz = u_xlat0.xyz * vs_COLOR0.xyz;
					    u_xlat0.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlatb0 = u_xlat0.w>=u_xlat0.x;
					    u_xlat0.x = u_xlatb0 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat0.x * vs_TEXCOORD4;
					    u_xlat0 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    SV_Target0 = u_xlat1.wwww * u_xlat0 + vec4(0.5, 0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[7];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb0 = u_xlat1.w>=u_xlat0.x;
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    u_xlat1.xyz = u_xlat2.xyz * vs_COLOR0.xyz;
					    u_xlat0.x = u_xlatb0 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat0.x * vs_TEXCOORD4;
					    u_xlat0 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    SV_Target0 = u_xlat1.wwww * u_xlat0 + vec4(0.5, 0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[6];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb0 = u_xlat1.w>=u_xlat0.x;
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    u_xlat1.xyz = u_xlat2.xyz * vs_COLOR0.xyz;
					    u_xlat0.x = u_xlatb0 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat0.x * vs_TEXCOORD4;
					    u_xlat0 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    SV_Target0 = u_xlat1.wwww * u_xlat0 + vec4(0.5, 0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat2.w = u_xlat3.x * vs_TEXCOORD4;
					    u_xlat1 = u_xlat2 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat2.w = u_xlat3.x * vs_TEXCOORD4;
					    u_xlat1 = u_xlat2 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					float u_xlat6;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb0 = u_xlat1.w>=u_xlat0.x;
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    u_xlat1.xyz = u_xlat2.xyz * vs_COLOR0.xyz;
					    u_xlat0.x = u_xlatb0 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat0.x * vs_TEXCOORD4;
					    u_xlat0 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat0.xyz = u_xlat0.xyz * u_xlat1.www;
					    SV_Target0.w = u_xlat1.w * u_xlat0.w + 0.5;
					    u_xlat6 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat6 = (-u_xlat6) + 1.0;
					    u_xlat6 = u_xlat6 * _ProjectionParams.z;
					    u_xlat6 = max(u_xlat6, 0.0);
					    u_xlat6 = u_xlat6 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat6 = clamp(u_xlat6, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat6) * u_xlat0.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					float u_xlat6;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb0 = u_xlat1.w>=u_xlat0.x;
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    u_xlat1.xyz = u_xlat2.xyz * vs_COLOR0.xyz;
					    u_xlat0.x = u_xlatb0 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat0.x * vs_TEXCOORD4;
					    u_xlat0 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat0.xyz = u_xlat0.xyz * u_xlat1.www;
					    SV_Target0.w = u_xlat1.w * u_xlat0.w + 0.5;
					    u_xlat6 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat6 = (-u_xlat6) + 1.0;
					    u_xlat6 = u_xlat6 * _ProjectionParams.z;
					    u_xlat6 = max(u_xlat6, 0.0);
					    u_xlat6 = u_xlat6 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat6 = clamp(u_xlat6, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat6) * u_xlat0.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat2.w = u_xlat3.x * vs_TEXCOORD4;
					    u_xlat1 = u_xlat2 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat2.w = u_xlat3.x * vs_TEXCOORD4;
					    u_xlat1 = u_xlat2 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat3.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat1 = texture(_CameraDepthTexture, u_xlat3.xy);
					    u_xlat3.x = _ZBufferParams.z * u_xlat1.x + _ZBufferParams.w;
					    u_xlat3.x = float(1.0) / u_xlat3.x;
					    u_xlat3.x = u_xlat3.x + (-vs_TEXCOORD3.z);
					    u_xlat3.x = u_xlat3.x * _InvFade;
					    u_xlat3.x = clamp(u_xlat3.x, 0.0, 1.0);
					    u_xlat3.x = (-vs_COLOR0.w) * u_xlat3.x + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat1.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz * _TintColor.xyz;
					    u_xlat1.xyz = u_xlat1.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat3.x * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat3.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat1 = texture(_CameraDepthTexture, u_xlat3.xy);
					    u_xlat3.x = _ZBufferParams.z * u_xlat1.x + _ZBufferParams.w;
					    u_xlat3.x = float(1.0) / u_xlat3.x;
					    u_xlat3.x = u_xlat3.x + (-vs_TEXCOORD3.z);
					    u_xlat3.x = u_xlat3.x * _InvFade;
					    u_xlat3.x = clamp(u_xlat3.x, 0.0, 1.0);
					    u_xlat3.x = (-vs_COLOR0.w) * u_xlat3.x + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat1.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz * _TintColor.xyz;
					    u_xlat1.xyz = u_xlat1.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat3.x * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat2.w = u_xlat3.x * vs_TEXCOORD4;
					    u_xlat1 = u_xlat2 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat2.w = u_xlat3.x * vs_TEXCOORD4;
					    u_xlat1 = u_xlat2 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat3.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat1 = texture(_CameraDepthTexture, u_xlat3.xy);
					    u_xlat3.x = _ZBufferParams.z * u_xlat1.x + _ZBufferParams.w;
					    u_xlat3.x = float(1.0) / u_xlat3.x;
					    u_xlat3.x = u_xlat3.x + (-vs_TEXCOORD3.z);
					    u_xlat3.x = u_xlat3.x * _InvFade;
					    u_xlat3.x = clamp(u_xlat3.x, 0.0, 1.0);
					    u_xlat3.x = (-vs_COLOR0.w) * u_xlat3.x + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat1.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz * _TintColor.xyz;
					    u_xlat1.xyz = u_xlat1.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat3.x * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat3.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat1 = texture(_CameraDepthTexture, u_xlat3.xy);
					    u_xlat3.x = _ZBufferParams.z * u_xlat1.x + _ZBufferParams.w;
					    u_xlat3.x = float(1.0) / u_xlat3.x;
					    u_xlat3.x = u_xlat3.x + (-vs_TEXCOORD3.z);
					    u_xlat3.x = u_xlat3.x * _InvFade;
					    u_xlat3.x = clamp(u_xlat3.x, 0.0, 1.0);
					    u_xlat3.x = (-vs_COLOR0.w) * u_xlat3.x + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat1.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz * _TintColor.xyz;
					    u_xlat1.xyz = u_xlat1.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat3.x * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendMul2" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[7];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb0 = u_xlat1.w>=u_xlat0.x;
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    u_xlat1.xyz = u_xlat2.xyz * vs_COLOR0.xyz;
					    u_xlat0.x = u_xlatb0 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat0.x * vs_TEXCOORD4;
					    u_xlat0 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    SV_Target0 = u_xlat1.wwww * u_xlat0 + vec4(0.5, 0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[6];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb0 = u_xlat1.w>=u_xlat0.x;
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    u_xlat1.xyz = u_xlat2.xyz * vs_COLOR0.xyz;
					    u_xlat0.x = u_xlatb0 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat0.x * vs_TEXCOORD4;
					    u_xlat0 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    SV_Target0 = u_xlat1.wwww * u_xlat0 + vec4(0.5, 0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[7];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb0 = u_xlat1.w>=u_xlat0.x;
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    u_xlat1.xyz = u_xlat2.xyz * vs_COLOR0.xyz;
					    u_xlat0.x = u_xlatb0 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat0.x * vs_TEXCOORD4;
					    u_xlat0 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    SV_Target0 = u_xlat1.wwww * u_xlat0 + vec4(0.5, 0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[6];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb0 = u_xlat1.w>=u_xlat0.x;
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    u_xlat1.xyz = u_xlat2.xyz * vs_COLOR0.xyz;
					    u_xlat0.x = u_xlatb0 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat0.x * vs_TEXCOORD4;
					    u_xlat0 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    SV_Target0 = u_xlat1.wwww * u_xlat0 + vec4(0.5, 0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					float u_xlat6;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb0 = u_xlat1.w>=u_xlat0.x;
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    u_xlat1.xyz = u_xlat2.xyz * vs_COLOR0.xyz;
					    u_xlat0.x = u_xlatb0 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat0.x * vs_TEXCOORD4;
					    u_xlat0 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat0.xyz = u_xlat0.xyz * u_xlat1.www;
					    SV_Target0.w = u_xlat1.w * u_xlat0.w + 0.5;
					    u_xlat6 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat6 = (-u_xlat6) + 1.0;
					    u_xlat6 = u_xlat6 * _ProjectionParams.z;
					    u_xlat6 = max(u_xlat6, 0.0);
					    u_xlat6 = u_xlat6 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat6 = clamp(u_xlat6, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat6) * u_xlat0.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					float u_xlat6;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb0 = u_xlat1.w>=u_xlat0.x;
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    u_xlat1.xyz = u_xlat2.xyz * vs_COLOR0.xyz;
					    u_xlat0.x = u_xlatb0 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat0.x * vs_TEXCOORD4;
					    u_xlat0 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat0.xyz = u_xlat0.xyz * u_xlat1.www;
					    SV_Target0.w = u_xlat1.w * u_xlat0.w + 0.5;
					    u_xlat6 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat6 = (-u_xlat6) + 1.0;
					    u_xlat6 = u_xlat6 * _ProjectionParams.z;
					    u_xlat6 = max(u_xlat6, 0.0);
					    u_xlat6 = u_xlat6 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat6 = clamp(u_xlat6, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat6) * u_xlat0.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					float u_xlat6;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb0 = u_xlat1.w>=u_xlat0.x;
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    u_xlat1.xyz = u_xlat2.xyz * vs_COLOR0.xyz;
					    u_xlat0.x = u_xlatb0 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat0.x * vs_TEXCOORD4;
					    u_xlat0 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat0.xyz = u_xlat0.xyz * u_xlat1.www;
					    SV_Target0.w = u_xlat1.w * u_xlat0.w + 0.5;
					    u_xlat6 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat6 = (-u_xlat6) + 1.0;
					    u_xlat6 = u_xlat6 * _ProjectionParams.z;
					    u_xlat6 = max(u_xlat6, 0.0);
					    u_xlat6 = u_xlat6 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat6 = clamp(u_xlat6, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat6) * u_xlat0.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					float u_xlat6;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb0 = u_xlat1.w>=u_xlat0.x;
					    u_xlat2.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * _TintColor.xyz;
					    u_xlat1.xyz = u_xlat2.xyz * vs_COLOR0.xyz;
					    u_xlat0.x = u_xlatb0 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat0.x * vs_TEXCOORD4;
					    u_xlat0 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat0.xyz = u_xlat0.xyz * u_xlat1.www;
					    SV_Target0.w = u_xlat1.w * u_xlat0.w + 0.5;
					    u_xlat6 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat6 = (-u_xlat6) + 1.0;
					    u_xlat6 = u_xlat6 * _ProjectionParams.z;
					    u_xlat6 = max(u_xlat6, 0.0);
					    u_xlat6 = u_xlat6 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat6 = clamp(u_xlat6, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat6) * u_xlat0.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat3.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat1 = texture(_CameraDepthTexture, u_xlat3.xy);
					    u_xlat3.x = _ZBufferParams.z * u_xlat1.x + _ZBufferParams.w;
					    u_xlat3.x = float(1.0) / u_xlat3.x;
					    u_xlat3.x = u_xlat3.x + (-vs_TEXCOORD3.z);
					    u_xlat3.x = u_xlat3.x * _InvFade;
					    u_xlat3.x = clamp(u_xlat3.x, 0.0, 1.0);
					    u_xlat3.x = (-vs_COLOR0.w) * u_xlat3.x + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat1.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz * _TintColor.xyz;
					    u_xlat1.xyz = u_xlat1.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat3.x * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat3.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat1 = texture(_CameraDepthTexture, u_xlat3.xy);
					    u_xlat3.x = _ZBufferParams.z * u_xlat1.x + _ZBufferParams.w;
					    u_xlat3.x = float(1.0) / u_xlat3.x;
					    u_xlat3.x = u_xlat3.x + (-vs_TEXCOORD3.z);
					    u_xlat3.x = u_xlat3.x * _InvFade;
					    u_xlat3.x = clamp(u_xlat3.x, 0.0, 1.0);
					    u_xlat3.x = (-vs_COLOR0.w) * u_xlat3.x + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat1.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz * _TintColor.xyz;
					    u_xlat1.xyz = u_xlat1.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat3.x * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat3.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat1 = texture(_CameraDepthTexture, u_xlat3.xy);
					    u_xlat3.x = _ZBufferParams.z * u_xlat1.x + _ZBufferParams.w;
					    u_xlat3.x = float(1.0) / u_xlat3.x;
					    u_xlat3.x = u_xlat3.x + (-vs_TEXCOORD3.z);
					    u_xlat3.x = u_xlat3.x * _InvFade;
					    u_xlat3.x = clamp(u_xlat3.x, 0.0, 1.0);
					    u_xlat3.x = (-vs_COLOR0.w) * u_xlat3.x + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat1.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz * _TintColor.xyz;
					    u_xlat1.xyz = u_xlat1.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat3.x * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat3.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat1 = texture(_CameraDepthTexture, u_xlat3.xy);
					    u_xlat3.x = _ZBufferParams.z * u_xlat1.x + _ZBufferParams.w;
					    u_xlat3.x = float(1.0) / u_xlat3.x;
					    u_xlat3.x = u_xlat3.x + (-vs_TEXCOORD3.z);
					    u_xlat3.x = u_xlat3.x * _InvFade;
					    u_xlat3.x = clamp(u_xlat3.x, 0.0, 1.0);
					    u_xlat3.x = (-vs_COLOR0.w) * u_xlat3.x + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat1.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz * _TintColor.xyz;
					    u_xlat1.xyz = u_xlat1.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat3.x * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat3.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat1 = texture(_CameraDepthTexture, u_xlat3.xy);
					    u_xlat3.x = _ZBufferParams.z * u_xlat1.x + _ZBufferParams.w;
					    u_xlat3.x = float(1.0) / u_xlat3.x;
					    u_xlat3.x = u_xlat3.x + (-vs_TEXCOORD3.z);
					    u_xlat3.x = u_xlat3.x * _InvFade;
					    u_xlat3.x = clamp(u_xlat3.x, 0.0, 1.0);
					    u_xlat3.x = (-vs_COLOR0.w) * u_xlat3.x + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat1.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz * _TintColor.xyz;
					    u_xlat1.xyz = u_xlat1.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat3.x * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat3.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat1 = texture(_CameraDepthTexture, u_xlat3.xy);
					    u_xlat3.x = _ZBufferParams.z * u_xlat1.x + _ZBufferParams.w;
					    u_xlat3.x = float(1.0) / u_xlat3.x;
					    u_xlat3.x = u_xlat3.x + (-vs_TEXCOORD3.z);
					    u_xlat3.x = u_xlat3.x * _InvFade;
					    u_xlat3.x = clamp(u_xlat3.x, 0.0, 1.0);
					    u_xlat3.x = (-vs_COLOR0.w) * u_xlat3.x + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat1.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz * _TintColor.xyz;
					    u_xlat1.xyz = u_xlat1.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat3.x * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat3.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat1 = texture(_CameraDepthTexture, u_xlat3.xy);
					    u_xlat3.x = _ZBufferParams.z * u_xlat1.x + _ZBufferParams.w;
					    u_xlat3.x = float(1.0) / u_xlat3.x;
					    u_xlat3.x = u_xlat3.x + (-vs_TEXCOORD3.z);
					    u_xlat3.x = u_xlat3.x * _InvFade;
					    u_xlat3.x = clamp(u_xlat3.x, 0.0, 1.0);
					    u_xlat3.x = (-vs_COLOR0.w) * u_xlat3.x + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat1.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz * _TintColor.xyz;
					    u_xlat1.xyz = u_xlat1.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat3.x * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_OFF" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec2 vs_TEXCOORD0;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat3.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat1 = texture(_CameraDepthTexture, u_xlat3.xy);
					    u_xlat3.x = _ZBufferParams.z * u_xlat1.x + _ZBufferParams.w;
					    u_xlat3.x = float(1.0) / u_xlat3.x;
					    u_xlat3.x = u_xlat3.x + (-vs_TEXCOORD3.z);
					    u_xlat3.x = u_xlat3.x * _InvFade;
					    u_xlat3.x = clamp(u_xlat3.x, 0.0, 1.0);
					    u_xlat3.x = (-vs_COLOR0.w) * u_xlat3.x + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat1.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz * _TintColor.xyz;
					    u_xlat1.xyz = u_xlat1.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat3.x * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendMul2" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat0 = u_xlat0 * vs_COLOR0;
					    u_xlat0.w = u_xlat0.w;
					    u_xlat0.w = clamp(u_xlat0.w, 0.0, 1.0);
					    u_xlat1 = u_xlat0 + vec4(-0.5, -0.5, -0.5, -0.5);
					    SV_Target0 = u_xlat0.wwww * u_xlat1 + vec4(0.5, 0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat0 = u_xlat0 * vs_COLOR0;
					    u_xlat0.w = u_xlat0.w;
					    u_xlat0.w = clamp(u_xlat0.w, 0.0, 1.0);
					    u_xlat1 = u_xlat0 + vec4(-0.5, -0.5, -0.5, -0.5);
					    SV_Target0 = u_xlat0.wwww * u_xlat1 + vec4(0.5, 0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat0 = u_xlat0 * vs_COLOR0;
					    u_xlat0.w = u_xlat0.w;
					    u_xlat0.w = clamp(u_xlat0.w, 0.0, 1.0);
					    u_xlat1 = u_xlat0 + vec4(-0.5, -0.5, -0.5, -0.5);
					    SV_Target0 = u_xlat0.wwww * u_xlat1 + vec4(0.5, 0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat0 = u_xlat0 * vs_COLOR0;
					    u_xlat0.w = u_xlat0.w;
					    u_xlat0.w = clamp(u_xlat0.w, 0.0, 1.0);
					    u_xlat1 = u_xlat0 + vec4(-0.5, -0.5, -0.5, -0.5);
					    SV_Target0 = u_xlat0.wwww * u_xlat1 + vec4(0.5, 0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendMul2" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat0 = u_xlat0 * vs_COLOR0;
					    u_xlat0.w = u_xlat0.w;
					    u_xlat0.w = clamp(u_xlat0.w, 0.0, 1.0);
					    u_xlat1 = u_xlat0 + vec4(-0.5, -0.5, -0.5, -0.5);
					    SV_Target0 = u_xlat0.wwww * u_xlat1 + vec4(0.5, 0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat0 = u_xlat0 * vs_COLOR0;
					    u_xlat0.w = u_xlat0.w;
					    u_xlat0.w = clamp(u_xlat0.w, 0.0, 1.0);
					    u_xlat1 = u_xlat0 + vec4(-0.5, -0.5, -0.5, -0.5);
					    SV_Target0 = u_xlat0.wwww * u_xlat1 + vec4(0.5, 0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat0 = u_xlat0 * vs_COLOR0;
					    u_xlat0.w = u_xlat0.w;
					    u_xlat0.w = clamp(u_xlat0.w, 0.0, 1.0);
					    u_xlat1 = u_xlat0 + vec4(-0.5, -0.5, -0.5, -0.5);
					    SV_Target0 = u_xlat0.wwww * u_xlat1 + vec4(0.5, 0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat0 = u_xlat0 * vs_COLOR0;
					    u_xlat0.w = u_xlat0.w;
					    u_xlat0.w = clamp(u_xlat0.w, 0.0, 1.0);
					    u_xlat1 = u_xlat0 + vec4(-0.5, -0.5, -0.5, -0.5);
					    SV_Target0 = u_xlat0.wwww * u_xlat1 + vec4(0.5, 0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendMul2" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat6;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat0 = u_xlat0 * vs_COLOR0;
					    u_xlat6 = u_xlat0.w;
					    u_xlat6 = clamp(u_xlat6, 0.0, 1.0);
					    u_xlat0.w = u_xlat6 * vs_TEXCOORD4;
					    u_xlat1 = u_xlat0 + vec4(-0.5, -0.5, -0.5, -0.5);
					    SV_Target0 = u_xlat0.wwww * u_xlat1 + vec4(0.5, 0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat6;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat0 = u_xlat0 * vs_COLOR0;
					    u_xlat6 = u_xlat0.w;
					    u_xlat6 = clamp(u_xlat6, 0.0, 1.0);
					    u_xlat0.w = u_xlat6 * vs_TEXCOORD4;
					    u_xlat1 = u_xlat0 + vec4(-0.5, -0.5, -0.5, -0.5);
					    SV_Target0 = u_xlat0.wwww * u_xlat1 + vec4(0.5, 0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat6;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat0 = u_xlat0 * vs_COLOR0;
					    u_xlat6 = u_xlat0.w;
					    u_xlat6 = clamp(u_xlat6, 0.0, 1.0);
					    u_xlat0.w = u_xlat6 * vs_TEXCOORD4;
					    u_xlat1 = u_xlat0 + vec4(-0.5, -0.5, -0.5, -0.5);
					    SV_Target0 = u_xlat0.wwww * u_xlat1 + vec4(0.5, 0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat6;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat0 = u_xlat0 * vs_COLOR0;
					    u_xlat6 = u_xlat0.w;
					    u_xlat6 = clamp(u_xlat6, 0.0, 1.0);
					    u_xlat0.w = u_xlat6 * vs_TEXCOORD4;
					    u_xlat1 = u_xlat0 + vec4(-0.5, -0.5, -0.5, -0.5);
					    SV_Target0 = u_xlat0.wwww * u_xlat1 + vec4(0.5, 0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendMul2" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat6;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat0 = u_xlat0 * vs_COLOR0;
					    u_xlat6 = u_xlat0.w;
					    u_xlat6 = clamp(u_xlat6, 0.0, 1.0);
					    u_xlat0.w = u_xlat6 * vs_TEXCOORD4;
					    u_xlat1 = u_xlat0 + vec4(-0.5, -0.5, -0.5, -0.5);
					    SV_Target0 = u_xlat0.wwww * u_xlat1 + vec4(0.5, 0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat6;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat0 = u_xlat0 * vs_COLOR0;
					    u_xlat6 = u_xlat0.w;
					    u_xlat6 = clamp(u_xlat6, 0.0, 1.0);
					    u_xlat0.w = u_xlat6 * vs_TEXCOORD4;
					    u_xlat1 = u_xlat0 + vec4(-0.5, -0.5, -0.5, -0.5);
					    SV_Target0 = u_xlat0.wwww * u_xlat1 + vec4(0.5, 0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat6;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat0 = u_xlat0 * vs_COLOR0;
					    u_xlat6 = u_xlat0.w;
					    u_xlat6 = clamp(u_xlat6, 0.0, 1.0);
					    u_xlat0.w = u_xlat6 * vs_TEXCOORD4;
					    u_xlat1 = u_xlat0 + vec4(-0.5, -0.5, -0.5, -0.5);
					    SV_Target0 = u_xlat0.wwww * u_xlat1 + vec4(0.5, 0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat6;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat0 = u_xlat0 * vs_COLOR0;
					    u_xlat6 = u_xlat0.w;
					    u_xlat6 = clamp(u_xlat6, 0.0, 1.0);
					    u_xlat0.w = u_xlat6 * vs_TEXCOORD4;
					    u_xlat1 = u_xlat0 + vec4(-0.5, -0.5, -0.5, -0.5);
					    SV_Target0 = u_xlat0.wwww * u_xlat1 + vec4(0.5, 0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendMul2" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					bool u_xlatb1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1.x = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat0.w = u_xlat0.w * u_xlat1.x;
					    u_xlat0 = u_xlat0 * vs_COLOR0;
					    u_xlat0.w = u_xlat0.w;
					    u_xlat0.w = clamp(u_xlat0.w, 0.0, 1.0);
					    u_xlat1 = u_xlat0 + vec4(-0.5, -0.5, -0.5, -0.5);
					    SV_Target0 = u_xlat0.wwww * u_xlat1 + vec4(0.5, 0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					bool u_xlatb1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1.x = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat0.w = u_xlat0.w * u_xlat1.x;
					    u_xlat0 = u_xlat0 * vs_COLOR0;
					    u_xlat0.w = u_xlat0.w;
					    u_xlat0.w = clamp(u_xlat0.w, 0.0, 1.0);
					    u_xlat1 = u_xlat0 + vec4(-0.5, -0.5, -0.5, -0.5);
					    SV_Target0 = u_xlat0.wwww * u_xlat1 + vec4(0.5, 0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					bool u_xlatb1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1.x = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat0.w = u_xlat0.w * u_xlat1.x;
					    u_xlat0 = u_xlat0 * vs_COLOR0;
					    u_xlat0.w = u_xlat0.w;
					    u_xlat0.w = clamp(u_xlat0.w, 0.0, 1.0);
					    u_xlat1 = u_xlat0 + vec4(-0.5, -0.5, -0.5, -0.5);
					    SV_Target0 = u_xlat0.wwww * u_xlat1 + vec4(0.5, 0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					bool u_xlatb1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1.x = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat0.w = u_xlat0.w * u_xlat1.x;
					    u_xlat0 = u_xlat0 * vs_COLOR0;
					    u_xlat0.w = u_xlat0.w;
					    u_xlat0.w = clamp(u_xlat0.w, 0.0, 1.0);
					    u_xlat1 = u_xlat0 + vec4(-0.5, -0.5, -0.5, -0.5);
					    SV_Target0 = u_xlat0.wwww * u_xlat1 + vec4(0.5, 0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3.x;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3.x;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3.x;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3.x;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3.x;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3.x;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3.x;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3.x;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3.x;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3.x;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3.x;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3.x;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendMul2" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					bool u_xlatb1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1.x = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat0.w = u_xlat0.w * u_xlat1.x;
					    u_xlat0 = u_xlat0 * vs_COLOR0;
					    u_xlat0.w = u_xlat0.w;
					    u_xlat0.w = clamp(u_xlat0.w, 0.0, 1.0);
					    u_xlat1 = u_xlat0 + vec4(-0.5, -0.5, -0.5, -0.5);
					    SV_Target0 = u_xlat0.wwww * u_xlat1 + vec4(0.5, 0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					bool u_xlatb1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1.x = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat0.w = u_xlat0.w * u_xlat1.x;
					    u_xlat0 = u_xlat0 * vs_COLOR0;
					    u_xlat0.w = u_xlat0.w;
					    u_xlat0.w = clamp(u_xlat0.w, 0.0, 1.0);
					    u_xlat1 = u_xlat0 + vec4(-0.5, -0.5, -0.5, -0.5);
					    SV_Target0 = u_xlat0.wwww * u_xlat1 + vec4(0.5, 0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					bool u_xlatb1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1.x = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat0.w = u_xlat0.w * u_xlat1.x;
					    u_xlat0 = u_xlat0 * vs_COLOR0;
					    u_xlat0.w = u_xlat0.w;
					    u_xlat0.w = clamp(u_xlat0.w, 0.0, 1.0);
					    u_xlat1 = u_xlat0 + vec4(-0.5, -0.5, -0.5, -0.5);
					    SV_Target0 = u_xlat0.wwww * u_xlat1 + vec4(0.5, 0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					bool u_xlatb1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1.x = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat0.w = u_xlat0.w * u_xlat1.x;
					    u_xlat0 = u_xlat0 * vs_COLOR0;
					    u_xlat0.w = u_xlat0.w;
					    u_xlat0.w = clamp(u_xlat0.w, 0.0, 1.0);
					    u_xlat1 = u_xlat0 + vec4(-0.5, -0.5, -0.5, -0.5);
					    SV_Target0 = u_xlat0.wwww * u_xlat1 + vec4(0.5, 0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3.x;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3.x;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3.x;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3.x;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3.x;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3.x;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3.x;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3.x;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3.x;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3.x;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3.x;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3.x;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendMul2" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					bool u_xlatb1;
					float u_xlat6;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1.x = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat0.w = u_xlat0.w * u_xlat1.x;
					    u_xlat0 = u_xlat0 * vs_COLOR0;
					    u_xlat6 = u_xlat0.w;
					    u_xlat6 = clamp(u_xlat6, 0.0, 1.0);
					    u_xlat0.w = u_xlat6 * vs_TEXCOORD4;
					    u_xlat1 = u_xlat0 + vec4(-0.5, -0.5, -0.5, -0.5);
					    SV_Target0 = u_xlat0.wwww * u_xlat1 + vec4(0.5, 0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					bool u_xlatb1;
					float u_xlat6;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1.x = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat0.w = u_xlat0.w * u_xlat1.x;
					    u_xlat0 = u_xlat0 * vs_COLOR0;
					    u_xlat6 = u_xlat0.w;
					    u_xlat6 = clamp(u_xlat6, 0.0, 1.0);
					    u_xlat0.w = u_xlat6 * vs_TEXCOORD4;
					    u_xlat1 = u_xlat0 + vec4(-0.5, -0.5, -0.5, -0.5);
					    SV_Target0 = u_xlat0.wwww * u_xlat1 + vec4(0.5, 0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					bool u_xlatb1;
					float u_xlat6;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1.x = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat0.w = u_xlat0.w * u_xlat1.x;
					    u_xlat0 = u_xlat0 * vs_COLOR0;
					    u_xlat6 = u_xlat0.w;
					    u_xlat6 = clamp(u_xlat6, 0.0, 1.0);
					    u_xlat0.w = u_xlat6 * vs_TEXCOORD4;
					    u_xlat1 = u_xlat0 + vec4(-0.5, -0.5, -0.5, -0.5);
					    SV_Target0 = u_xlat0.wwww * u_xlat1 + vec4(0.5, 0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					bool u_xlatb1;
					float u_xlat6;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1.x = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat0.w = u_xlat0.w * u_xlat1.x;
					    u_xlat0 = u_xlat0 * vs_COLOR0;
					    u_xlat6 = u_xlat0.w;
					    u_xlat6 = clamp(u_xlat6, 0.0, 1.0);
					    u_xlat0.w = u_xlat6 * vs_TEXCOORD4;
					    u_xlat1 = u_xlat0 + vec4(-0.5, -0.5, -0.5, -0.5);
					    SV_Target0 = u_xlat0.wwww * u_xlat1 + vec4(0.5, 0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3.x;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3.x;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3.x;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3.x;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3.x;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3.x;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3.x;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3.x;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3.x;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3.x;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3.x;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3.x;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendMul2" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					bool u_xlatb1;
					float u_xlat6;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1.x = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat0.w = u_xlat0.w * u_xlat1.x;
					    u_xlat0 = u_xlat0 * vs_COLOR0;
					    u_xlat6 = u_xlat0.w;
					    u_xlat6 = clamp(u_xlat6, 0.0, 1.0);
					    u_xlat0.w = u_xlat6 * vs_TEXCOORD4;
					    u_xlat1 = u_xlat0 + vec4(-0.5, -0.5, -0.5, -0.5);
					    SV_Target0 = u_xlat0.wwww * u_xlat1 + vec4(0.5, 0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					bool u_xlatb1;
					float u_xlat6;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1.x = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat0.w = u_xlat0.w * u_xlat1.x;
					    u_xlat0 = u_xlat0 * vs_COLOR0;
					    u_xlat6 = u_xlat0.w;
					    u_xlat6 = clamp(u_xlat6, 0.0, 1.0);
					    u_xlat0.w = u_xlat6 * vs_TEXCOORD4;
					    u_xlat1 = u_xlat0 + vec4(-0.5, -0.5, -0.5, -0.5);
					    SV_Target0 = u_xlat0.wwww * u_xlat1 + vec4(0.5, 0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					bool u_xlatb1;
					float u_xlat6;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1.x = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat0.w = u_xlat0.w * u_xlat1.x;
					    u_xlat0 = u_xlat0 * vs_COLOR0;
					    u_xlat6 = u_xlat0.w;
					    u_xlat6 = clamp(u_xlat6, 0.0, 1.0);
					    u_xlat0.w = u_xlat6 * vs_TEXCOORD4;
					    u_xlat1 = u_xlat0 + vec4(-0.5, -0.5, -0.5, -0.5);
					    SV_Target0 = u_xlat0.wwww * u_xlat1 + vec4(0.5, 0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					bool u_xlatb1;
					float u_xlat6;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1.x = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat0.w = u_xlat0.w * u_xlat1.x;
					    u_xlat0 = u_xlat0 * vs_COLOR0;
					    u_xlat6 = u_xlat0.w;
					    u_xlat6 = clamp(u_xlat6, 0.0, 1.0);
					    u_xlat0.w = u_xlat6 * vs_TEXCOORD4;
					    u_xlat1 = u_xlat0 + vec4(-0.5, -0.5, -0.5, -0.5);
					    SV_Target0 = u_xlat0.wwww * u_xlat1 + vec4(0.5, 0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3.x;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3.x;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3.x;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3.x;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3.x;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3.x;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3.x;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3.x;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3.x;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3.x;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3.x;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3.x;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendMul2" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlat0.xyz = u_xlat0.xyz + u_xlat0.xyz;
					    u_xlat0.xyz = u_xlat0.xyz * _TintColor.xyz;
					    u_xlat1.xyz = u_xlat0.xyz * vs_COLOR0.xyz;
					    u_xlat0.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlatb0 = u_xlat0.w>=u_xlat0.x;
					    u_xlat1.w = u_xlatb0 ? 1.0 : float(0.0);
					    u_xlat0 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    SV_Target0 = u_xlat1.wwww * u_xlat0 + vec4(0.5, 0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlat0.xyz = u_xlat0.xyz + u_xlat0.xyz;
					    u_xlat0.xyz = u_xlat0.xyz * _TintColor.xyz;
					    u_xlat1.xyz = u_xlat0.xyz * vs_COLOR0.xyz;
					    u_xlat0.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlatb0 = u_xlat0.w>=u_xlat0.x;
					    u_xlat1.w = u_xlatb0 ? 1.0 : float(0.0);
					    u_xlat0 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    SV_Target0 = u_xlat1.wwww * u_xlat0 + vec4(0.5, 0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlat0.xyz = u_xlat0.xyz + u_xlat0.xyz;
					    u_xlat0.xyz = u_xlat0.xyz * _TintColor.xyz;
					    u_xlat1.xyz = u_xlat0.xyz * vs_COLOR0.xyz;
					    u_xlat0.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlatb0 = u_xlat0.w>=u_xlat0.x;
					    u_xlat1.w = u_xlatb0 ? 1.0 : float(0.0);
					    u_xlat0 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    SV_Target0 = u_xlat1.wwww * u_xlat0 + vec4(0.5, 0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlat0.xyz = u_xlat0.xyz + u_xlat0.xyz;
					    u_xlat0.xyz = u_xlat0.xyz * _TintColor.xyz;
					    u_xlat1.xyz = u_xlat0.xyz * vs_COLOR0.xyz;
					    u_xlat0.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlatb0 = u_xlat0.w>=u_xlat0.x;
					    u_xlat1.w = u_xlatb0 ? 1.0 : float(0.0);
					    u_xlat0 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    SV_Target0 = u_xlat1.wwww * u_xlat0 + vec4(0.5, 0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat2.w = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1 = u_xlat2 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat2.w = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1 = u_xlat2 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat2.w = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1 = u_xlat2 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat2.w = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1 = u_xlat2 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat2.w = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1 = u_xlat2 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat2.w = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1 = u_xlat2 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat2.w = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1 = u_xlat2 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat2.w = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1 = u_xlat2 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat2.w = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1 = u_xlat2 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat2.w = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1 = u_xlat2 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat2.w = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1 = u_xlat2 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat2.w = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1 = u_xlat2 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendMul2" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlat0.xyz = u_xlat0.xyz + u_xlat0.xyz;
					    u_xlat0.xyz = u_xlat0.xyz * _TintColor.xyz;
					    u_xlat1.xyz = u_xlat0.xyz * vs_COLOR0.xyz;
					    u_xlat0.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlatb0 = u_xlat0.w>=u_xlat0.x;
					    u_xlat1.w = u_xlatb0 ? 1.0 : float(0.0);
					    u_xlat0 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    SV_Target0 = u_xlat1.wwww * u_xlat0 + vec4(0.5, 0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlat0.xyz = u_xlat0.xyz + u_xlat0.xyz;
					    u_xlat0.xyz = u_xlat0.xyz * _TintColor.xyz;
					    u_xlat1.xyz = u_xlat0.xyz * vs_COLOR0.xyz;
					    u_xlat0.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlatb0 = u_xlat0.w>=u_xlat0.x;
					    u_xlat1.w = u_xlatb0 ? 1.0 : float(0.0);
					    u_xlat0 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    SV_Target0 = u_xlat1.wwww * u_xlat0 + vec4(0.5, 0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlat0.xyz = u_xlat0.xyz + u_xlat0.xyz;
					    u_xlat0.xyz = u_xlat0.xyz * _TintColor.xyz;
					    u_xlat1.xyz = u_xlat0.xyz * vs_COLOR0.xyz;
					    u_xlat0.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlatb0 = u_xlat0.w>=u_xlat0.x;
					    u_xlat1.w = u_xlatb0 ? 1.0 : float(0.0);
					    u_xlat0 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    SV_Target0 = u_xlat1.wwww * u_xlat0 + vec4(0.5, 0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlat0.xyz = u_xlat0.xyz + u_xlat0.xyz;
					    u_xlat0.xyz = u_xlat0.xyz * _TintColor.xyz;
					    u_xlat1.xyz = u_xlat0.xyz * vs_COLOR0.xyz;
					    u_xlat0.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlatb0 = u_xlat0.w>=u_xlat0.x;
					    u_xlat1.w = u_xlatb0 ? 1.0 : float(0.0);
					    u_xlat0 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    SV_Target0 = u_xlat1.wwww * u_xlat0 + vec4(0.5, 0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat2.w = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1 = u_xlat2 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat2.w = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1 = u_xlat2 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat2.w = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1 = u_xlat2 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat2.w = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1 = u_xlat2 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat2.w = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1 = u_xlat2 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat2.w = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1 = u_xlat2 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat2.w = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1 = u_xlat2 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat2.w = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1 = u_xlat2 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat2.w = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1 = u_xlat2 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat2.w = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1 = u_xlat2 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat2.w = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1 = u_xlat2 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat2.w = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1 = u_xlat2 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendMul2" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlat0.xyz = u_xlat0.xyz + u_xlat0.xyz;
					    u_xlat0.xyz = u_xlat0.xyz * _TintColor.xyz;
					    u_xlat1.xyz = u_xlat0.xyz * vs_COLOR0.xyz;
					    u_xlat0.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlatb0 = u_xlat0.w>=u_xlat0.x;
					    u_xlat0.x = u_xlatb0 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat0.x * vs_TEXCOORD4;
					    u_xlat0 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    SV_Target0 = u_xlat1.wwww * u_xlat0 + vec4(0.5, 0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlat0.xyz = u_xlat0.xyz + u_xlat0.xyz;
					    u_xlat0.xyz = u_xlat0.xyz * _TintColor.xyz;
					    u_xlat1.xyz = u_xlat0.xyz * vs_COLOR0.xyz;
					    u_xlat0.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlatb0 = u_xlat0.w>=u_xlat0.x;
					    u_xlat0.x = u_xlatb0 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat0.x * vs_TEXCOORD4;
					    u_xlat0 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    SV_Target0 = u_xlat1.wwww * u_xlat0 + vec4(0.5, 0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlat0.xyz = u_xlat0.xyz + u_xlat0.xyz;
					    u_xlat0.xyz = u_xlat0.xyz * _TintColor.xyz;
					    u_xlat1.xyz = u_xlat0.xyz * vs_COLOR0.xyz;
					    u_xlat0.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlatb0 = u_xlat0.w>=u_xlat0.x;
					    u_xlat0.x = u_xlatb0 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat0.x * vs_TEXCOORD4;
					    u_xlat0 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    SV_Target0 = u_xlat1.wwww * u_xlat0 + vec4(0.5, 0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlat0.xyz = u_xlat0.xyz + u_xlat0.xyz;
					    u_xlat0.xyz = u_xlat0.xyz * _TintColor.xyz;
					    u_xlat1.xyz = u_xlat0.xyz * vs_COLOR0.xyz;
					    u_xlat0.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlatb0 = u_xlat0.w>=u_xlat0.x;
					    u_xlat0.x = u_xlatb0 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat0.x * vs_TEXCOORD4;
					    u_xlat0 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    SV_Target0 = u_xlat1.wwww * u_xlat0 + vec4(0.5, 0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat2.w = u_xlat3.x * vs_TEXCOORD4;
					    u_xlat1 = u_xlat2 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat2.w = u_xlat3.x * vs_TEXCOORD4;
					    u_xlat1 = u_xlat2 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat2.w = u_xlat3.x * vs_TEXCOORD4;
					    u_xlat1 = u_xlat2 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat2.w = u_xlat3.x * vs_TEXCOORD4;
					    u_xlat1 = u_xlat2 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat2.w = u_xlat3.x * vs_TEXCOORD4;
					    u_xlat1 = u_xlat2 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat2.w = u_xlat3.x * vs_TEXCOORD4;
					    u_xlat1 = u_xlat2 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat2.w = u_xlat3.x * vs_TEXCOORD4;
					    u_xlat1 = u_xlat2 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat2.w = u_xlat3.x * vs_TEXCOORD4;
					    u_xlat1 = u_xlat2 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat2.w = u_xlat3.x * vs_TEXCOORD4;
					    u_xlat1 = u_xlat2 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat2.w = u_xlat3.x * vs_TEXCOORD4;
					    u_xlat1 = u_xlat2 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat2.w = u_xlat3.x * vs_TEXCOORD4;
					    u_xlat1 = u_xlat2 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat2.w = u_xlat3.x * vs_TEXCOORD4;
					    u_xlat1 = u_xlat2 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendMul2" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlat0.xyz = u_xlat0.xyz + u_xlat0.xyz;
					    u_xlat0.xyz = u_xlat0.xyz * _TintColor.xyz;
					    u_xlat1.xyz = u_xlat0.xyz * vs_COLOR0.xyz;
					    u_xlat0.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlatb0 = u_xlat0.w>=u_xlat0.x;
					    u_xlat0.x = u_xlatb0 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat0.x * vs_TEXCOORD4;
					    u_xlat0 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    SV_Target0 = u_xlat1.wwww * u_xlat0 + vec4(0.5, 0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlat0.xyz = u_xlat0.xyz + u_xlat0.xyz;
					    u_xlat0.xyz = u_xlat0.xyz * _TintColor.xyz;
					    u_xlat1.xyz = u_xlat0.xyz * vs_COLOR0.xyz;
					    u_xlat0.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlatb0 = u_xlat0.w>=u_xlat0.x;
					    u_xlat0.x = u_xlatb0 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat0.x * vs_TEXCOORD4;
					    u_xlat0 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    SV_Target0 = u_xlat1.wwww * u_xlat0 + vec4(0.5, 0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlat0.xyz = u_xlat0.xyz + u_xlat0.xyz;
					    u_xlat0.xyz = u_xlat0.xyz * _TintColor.xyz;
					    u_xlat1.xyz = u_xlat0.xyz * vs_COLOR0.xyz;
					    u_xlat0.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlatb0 = u_xlat0.w>=u_xlat0.x;
					    u_xlat0.x = u_xlatb0 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat0.x * vs_TEXCOORD4;
					    u_xlat0 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    SV_Target0 = u_xlat1.wwww * u_xlat0 + vec4(0.5, 0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlat0.xyz = u_xlat0.xyz + u_xlat0.xyz;
					    u_xlat0.xyz = u_xlat0.xyz * _TintColor.xyz;
					    u_xlat1.xyz = u_xlat0.xyz * vs_COLOR0.xyz;
					    u_xlat0.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlatb0 = u_xlat0.w>=u_xlat0.x;
					    u_xlat0.x = u_xlatb0 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat0.x * vs_TEXCOORD4;
					    u_xlat0 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    SV_Target0 = u_xlat1.wwww * u_xlat0 + vec4(0.5, 0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat2.w = u_xlat3.x * vs_TEXCOORD4;
					    u_xlat1 = u_xlat2 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat2.w = u_xlat3.x * vs_TEXCOORD4;
					    u_xlat1 = u_xlat2 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat2.w = u_xlat3.x * vs_TEXCOORD4;
					    u_xlat1 = u_xlat2 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat2.w = u_xlat3.x * vs_TEXCOORD4;
					    u_xlat1 = u_xlat2 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat2.w = u_xlat3.x * vs_TEXCOORD4;
					    u_xlat1 = u_xlat2 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat2.w = u_xlat3.x * vs_TEXCOORD4;
					    u_xlat1 = u_xlat2 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat2.w = u_xlat3.x * vs_TEXCOORD4;
					    u_xlat1 = u_xlat2 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat2.w = u_xlat3.x * vs_TEXCOORD4;
					    u_xlat1 = u_xlat2 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat2.w = u_xlat3.x * vs_TEXCOORD4;
					    u_xlat1 = u_xlat2 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat2.w = u_xlat3.x * vs_TEXCOORD4;
					    u_xlat1 = u_xlat2 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat2.w = u_xlat3.x * vs_TEXCOORD4;
					    u_xlat1 = u_xlat2 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_OFF" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat2.w = u_xlat3.x * vs_TEXCOORD4;
					    u_xlat1 = u_xlat2 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendMul2" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat0 = u_xlat0 * vs_COLOR0;
					    u_xlat0.w = u_xlat0.w;
					    u_xlat0.w = clamp(u_xlat0.w, 0.0, 1.0);
					    u_xlat1 = u_xlat0 + vec4(-0.5, -0.5, -0.5, -0.5);
					    SV_Target0 = u_xlat0.wwww * u_xlat1 + vec4(0.5, 0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat0 = u_xlat0 * vs_COLOR0;
					    u_xlat0.w = u_xlat0.w;
					    u_xlat0.w = clamp(u_xlat0.w, 0.0, 1.0);
					    u_xlat1 = u_xlat0 + vec4(-0.5, -0.5, -0.5, -0.5);
					    SV_Target0 = u_xlat0.wwww * u_xlat1 + vec4(0.5, 0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[7];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat0.w = u_xlat0.w;
					    u_xlat0.w = clamp(u_xlat0.w, 0.0, 1.0);
					    u_xlat1 = u_xlat0 + vec4(-0.5, -0.5, -0.5, -0.5);
					    SV_Target0 = u_xlat0.wwww * u_xlat1 + vec4(0.5, 0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[6];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat0.w = u_xlat0.w;
					    u_xlat0.w = clamp(u_xlat0.w, 0.0, 1.0);
					    u_xlat1 = u_xlat0 + vec4(-0.5, -0.5, -0.5, -0.5);
					    SV_Target0 = u_xlat0.wwww * u_xlat1 + vec4(0.5, 0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					float u_xlat9;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat0.w = u_xlat0.w;
					    u_xlat0.w = clamp(u_xlat0.w, 0.0, 1.0);
					    u_xlat1 = u_xlat0 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat0.xyz = u_xlat0.www * u_xlat1.xyz;
					    SV_Target0.w = u_xlat0.w * u_xlat1.w + 0.5;
					    u_xlat9 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat9 = (-u_xlat9) + 1.0;
					    u_xlat9 = u_xlat9 * _ProjectionParams.z;
					    u_xlat9 = max(u_xlat9, 0.0);
					    u_xlat9 = u_xlat9 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat9 = clamp(u_xlat9, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat9) * u_xlat0.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					float u_xlat9;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat0.w = u_xlat0.w;
					    u_xlat0.w = clamp(u_xlat0.w, 0.0, 1.0);
					    u_xlat1 = u_xlat0 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat0.xyz = u_xlat0.www * u_xlat1.xyz;
					    SV_Target0.w = u_xlat0.w * u_xlat1.w + 0.5;
					    u_xlat9 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat9 = (-u_xlat9) + 1.0;
					    u_xlat9 = u_xlat9 * _ProjectionParams.z;
					    u_xlat9 = max(u_xlat9, 0.0);
					    u_xlat9 = u_xlat9 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat9 = clamp(u_xlat9, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat9) * u_xlat0.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec3 u_xlat4;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat4.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat1 = texture(_CameraDepthTexture, u_xlat4.xy);
					    u_xlat4.x = _ZBufferParams.z * u_xlat1.x + _ZBufferParams.w;
					    u_xlat4.x = float(1.0) / u_xlat4.x;
					    u_xlat4.x = u_xlat4.x + (-vs_TEXCOORD3.z);
					    u_xlat4.x = u_xlat4.x * _InvFade;
					    u_xlat4.x = clamp(u_xlat4.x, 0.0, 1.0);
					    u_xlat1.w = u_xlat4.x * vs_COLOR0.w;
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat3 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2 = u_xlat2 + (-u_xlat3);
					    u_xlat2 = vec4(vs_TEXCOORD1) * u_xlat2 + u_xlat3;
					    u_xlat2 = u_xlat2 + u_xlat2;
					    u_xlat2 = u_xlat2 * _TintColor;
					    u_xlat1.xyz = vs_COLOR0.xyz;
					    u_xlat1 = u_xlat1 * u_xlat2;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat4.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat4.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec3 u_xlat4;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat4.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat1 = texture(_CameraDepthTexture, u_xlat4.xy);
					    u_xlat4.x = _ZBufferParams.z * u_xlat1.x + _ZBufferParams.w;
					    u_xlat4.x = float(1.0) / u_xlat4.x;
					    u_xlat4.x = u_xlat4.x + (-vs_TEXCOORD3.z);
					    u_xlat4.x = u_xlat4.x * _InvFade;
					    u_xlat4.x = clamp(u_xlat4.x, 0.0, 1.0);
					    u_xlat1.w = u_xlat4.x * vs_COLOR0.w;
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat3 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2 = u_xlat2 + (-u_xlat3);
					    u_xlat2 = vec4(vs_TEXCOORD1) * u_xlat2 + u_xlat3;
					    u_xlat2 = u_xlat2 + u_xlat2;
					    u_xlat2 = u_xlat2 * _TintColor;
					    u_xlat1.xyz = vs_COLOR0.xyz;
					    u_xlat1 = u_xlat1 * u_xlat2;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat4.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat4.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec3 u_xlat4;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat4.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat1 = texture(_CameraDepthTexture, u_xlat4.xy);
					    u_xlat4.x = _ZBufferParams.z * u_xlat1.x + _ZBufferParams.w;
					    u_xlat4.x = float(1.0) / u_xlat4.x;
					    u_xlat4.x = u_xlat4.x + (-vs_TEXCOORD3.z);
					    u_xlat4.x = u_xlat4.x * _InvFade;
					    u_xlat4.x = clamp(u_xlat4.x, 0.0, 1.0);
					    u_xlat1.w = u_xlat4.x * vs_COLOR0.w;
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat3 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2 = u_xlat2 + (-u_xlat3);
					    u_xlat2 = vec4(vs_TEXCOORD1) * u_xlat2 + u_xlat3;
					    u_xlat2 = u_xlat2 + u_xlat2;
					    u_xlat2 = u_xlat2 * _TintColor;
					    u_xlat1.xyz = vs_COLOR0.xyz;
					    u_xlat1 = u_xlat1 * u_xlat2;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat4.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat4.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec3 u_xlat4;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat4.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat1 = texture(_CameraDepthTexture, u_xlat4.xy);
					    u_xlat4.x = _ZBufferParams.z * u_xlat1.x + _ZBufferParams.w;
					    u_xlat4.x = float(1.0) / u_xlat4.x;
					    u_xlat4.x = u_xlat4.x + (-vs_TEXCOORD3.z);
					    u_xlat4.x = u_xlat4.x * _InvFade;
					    u_xlat4.x = clamp(u_xlat4.x, 0.0, 1.0);
					    u_xlat1.w = u_xlat4.x * vs_COLOR0.w;
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat3 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2 = u_xlat2 + (-u_xlat3);
					    u_xlat2 = vec4(vs_TEXCOORD1) * u_xlat2 + u_xlat3;
					    u_xlat2 = u_xlat2 + u_xlat2;
					    u_xlat2 = u_xlat2 * _TintColor;
					    u_xlat1.xyz = vs_COLOR0.xyz;
					    u_xlat1 = u_xlat1 * u_xlat2;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat4.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat4.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendMul2" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[7];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat0.w = u_xlat0.w;
					    u_xlat0.w = clamp(u_xlat0.w, 0.0, 1.0);
					    u_xlat1 = u_xlat0 + vec4(-0.5, -0.5, -0.5, -0.5);
					    SV_Target0 = u_xlat0.wwww * u_xlat1 + vec4(0.5, 0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[6];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat0.w = u_xlat0.w;
					    u_xlat0.w = clamp(u_xlat0.w, 0.0, 1.0);
					    u_xlat1 = u_xlat0 + vec4(-0.5, -0.5, -0.5, -0.5);
					    SV_Target0 = u_xlat0.wwww * u_xlat1 + vec4(0.5, 0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[7];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat0.w = u_xlat0.w;
					    u_xlat0.w = clamp(u_xlat0.w, 0.0, 1.0);
					    u_xlat1 = u_xlat0 + vec4(-0.5, -0.5, -0.5, -0.5);
					    SV_Target0 = u_xlat0.wwww * u_xlat1 + vec4(0.5, 0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[6];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat0.w = u_xlat0.w;
					    u_xlat0.w = clamp(u_xlat0.w, 0.0, 1.0);
					    u_xlat1 = u_xlat0 + vec4(-0.5, -0.5, -0.5, -0.5);
					    SV_Target0 = u_xlat0.wwww * u_xlat1 + vec4(0.5, 0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					float u_xlat9;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat0.w = u_xlat0.w;
					    u_xlat0.w = clamp(u_xlat0.w, 0.0, 1.0);
					    u_xlat1 = u_xlat0 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat0.xyz = u_xlat0.www * u_xlat1.xyz;
					    SV_Target0.w = u_xlat0.w * u_xlat1.w + 0.5;
					    u_xlat9 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat9 = (-u_xlat9) + 1.0;
					    u_xlat9 = u_xlat9 * _ProjectionParams.z;
					    u_xlat9 = max(u_xlat9, 0.0);
					    u_xlat9 = u_xlat9 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat9 = clamp(u_xlat9, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat9) * u_xlat0.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					float u_xlat9;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat0.w = u_xlat0.w;
					    u_xlat0.w = clamp(u_xlat0.w, 0.0, 1.0);
					    u_xlat1 = u_xlat0 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat0.xyz = u_xlat0.www * u_xlat1.xyz;
					    SV_Target0.w = u_xlat0.w * u_xlat1.w + 0.5;
					    u_xlat9 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat9 = (-u_xlat9) + 1.0;
					    u_xlat9 = u_xlat9 * _ProjectionParams.z;
					    u_xlat9 = max(u_xlat9, 0.0);
					    u_xlat9 = u_xlat9 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat9 = clamp(u_xlat9, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat9) * u_xlat0.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					float u_xlat9;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat0.w = u_xlat0.w;
					    u_xlat0.w = clamp(u_xlat0.w, 0.0, 1.0);
					    u_xlat1 = u_xlat0 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat0.xyz = u_xlat0.www * u_xlat1.xyz;
					    SV_Target0.w = u_xlat0.w * u_xlat1.w + 0.5;
					    u_xlat9 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat9 = (-u_xlat9) + 1.0;
					    u_xlat9 = u_xlat9 * _ProjectionParams.z;
					    u_xlat9 = max(u_xlat9, 0.0);
					    u_xlat9 = u_xlat9 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat9 = clamp(u_xlat9, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat9) * u_xlat0.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					float u_xlat9;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat0.w = u_xlat0.w;
					    u_xlat0.w = clamp(u_xlat0.w, 0.0, 1.0);
					    u_xlat1 = u_xlat0 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat0.xyz = u_xlat0.www * u_xlat1.xyz;
					    SV_Target0.w = u_xlat0.w * u_xlat1.w + 0.5;
					    u_xlat9 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat9 = (-u_xlat9) + 1.0;
					    u_xlat9 = u_xlat9 * _ProjectionParams.z;
					    u_xlat9 = max(u_xlat9, 0.0);
					    u_xlat9 = u_xlat9 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat9 = clamp(u_xlat9, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat9) * u_xlat0.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec3 u_xlat4;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat4.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat1 = texture(_CameraDepthTexture, u_xlat4.xy);
					    u_xlat4.x = _ZBufferParams.z * u_xlat1.x + _ZBufferParams.w;
					    u_xlat4.x = float(1.0) / u_xlat4.x;
					    u_xlat4.x = u_xlat4.x + (-vs_TEXCOORD3.z);
					    u_xlat4.x = u_xlat4.x * _InvFade;
					    u_xlat4.x = clamp(u_xlat4.x, 0.0, 1.0);
					    u_xlat1.w = u_xlat4.x * vs_COLOR0.w;
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat3 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2 = u_xlat2 + (-u_xlat3);
					    u_xlat2 = vec4(vs_TEXCOORD1) * u_xlat2 + u_xlat3;
					    u_xlat2 = u_xlat2 + u_xlat2;
					    u_xlat2 = u_xlat2 * _TintColor;
					    u_xlat1.xyz = vs_COLOR0.xyz;
					    u_xlat1 = u_xlat1 * u_xlat2;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat4.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat4.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec3 u_xlat4;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat4.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat1 = texture(_CameraDepthTexture, u_xlat4.xy);
					    u_xlat4.x = _ZBufferParams.z * u_xlat1.x + _ZBufferParams.w;
					    u_xlat4.x = float(1.0) / u_xlat4.x;
					    u_xlat4.x = u_xlat4.x + (-vs_TEXCOORD3.z);
					    u_xlat4.x = u_xlat4.x * _InvFade;
					    u_xlat4.x = clamp(u_xlat4.x, 0.0, 1.0);
					    u_xlat1.w = u_xlat4.x * vs_COLOR0.w;
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat3 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2 = u_xlat2 + (-u_xlat3);
					    u_xlat2 = vec4(vs_TEXCOORD1) * u_xlat2 + u_xlat3;
					    u_xlat2 = u_xlat2 + u_xlat2;
					    u_xlat2 = u_xlat2 * _TintColor;
					    u_xlat1.xyz = vs_COLOR0.xyz;
					    u_xlat1 = u_xlat1 * u_xlat2;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat4.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat4.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec3 u_xlat4;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat4.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat1 = texture(_CameraDepthTexture, u_xlat4.xy);
					    u_xlat4.x = _ZBufferParams.z * u_xlat1.x + _ZBufferParams.w;
					    u_xlat4.x = float(1.0) / u_xlat4.x;
					    u_xlat4.x = u_xlat4.x + (-vs_TEXCOORD3.z);
					    u_xlat4.x = u_xlat4.x * _InvFade;
					    u_xlat4.x = clamp(u_xlat4.x, 0.0, 1.0);
					    u_xlat1.w = u_xlat4.x * vs_COLOR0.w;
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat3 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2 = u_xlat2 + (-u_xlat3);
					    u_xlat2 = vec4(vs_TEXCOORD1) * u_xlat2 + u_xlat3;
					    u_xlat2 = u_xlat2 + u_xlat2;
					    u_xlat2 = u_xlat2 * _TintColor;
					    u_xlat1.xyz = vs_COLOR0.xyz;
					    u_xlat1 = u_xlat1 * u_xlat2;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat4.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat4.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec3 u_xlat4;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat4.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat1 = texture(_CameraDepthTexture, u_xlat4.xy);
					    u_xlat4.x = _ZBufferParams.z * u_xlat1.x + _ZBufferParams.w;
					    u_xlat4.x = float(1.0) / u_xlat4.x;
					    u_xlat4.x = u_xlat4.x + (-vs_TEXCOORD3.z);
					    u_xlat4.x = u_xlat4.x * _InvFade;
					    u_xlat4.x = clamp(u_xlat4.x, 0.0, 1.0);
					    u_xlat1.w = u_xlat4.x * vs_COLOR0.w;
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat3 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2 = u_xlat2 + (-u_xlat3);
					    u_xlat2 = vec4(vs_TEXCOORD1) * u_xlat2 + u_xlat3;
					    u_xlat2 = u_xlat2 + u_xlat2;
					    u_xlat2 = u_xlat2 * _TintColor;
					    u_xlat1.xyz = vs_COLOR0.xyz;
					    u_xlat1 = u_xlat1 * u_xlat2;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat4.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat4.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec3 u_xlat4;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat4.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat1 = texture(_CameraDepthTexture, u_xlat4.xy);
					    u_xlat4.x = _ZBufferParams.z * u_xlat1.x + _ZBufferParams.w;
					    u_xlat4.x = float(1.0) / u_xlat4.x;
					    u_xlat4.x = u_xlat4.x + (-vs_TEXCOORD3.z);
					    u_xlat4.x = u_xlat4.x * _InvFade;
					    u_xlat4.x = clamp(u_xlat4.x, 0.0, 1.0);
					    u_xlat1.w = u_xlat4.x * vs_COLOR0.w;
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat3 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2 = u_xlat2 + (-u_xlat3);
					    u_xlat2 = vec4(vs_TEXCOORD1) * u_xlat2 + u_xlat3;
					    u_xlat2 = u_xlat2 + u_xlat2;
					    u_xlat2 = u_xlat2 * _TintColor;
					    u_xlat1.xyz = vs_COLOR0.xyz;
					    u_xlat1 = u_xlat1 * u_xlat2;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat4.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat4.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec3 u_xlat4;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat4.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat1 = texture(_CameraDepthTexture, u_xlat4.xy);
					    u_xlat4.x = _ZBufferParams.z * u_xlat1.x + _ZBufferParams.w;
					    u_xlat4.x = float(1.0) / u_xlat4.x;
					    u_xlat4.x = u_xlat4.x + (-vs_TEXCOORD3.z);
					    u_xlat4.x = u_xlat4.x * _InvFade;
					    u_xlat4.x = clamp(u_xlat4.x, 0.0, 1.0);
					    u_xlat1.w = u_xlat4.x * vs_COLOR0.w;
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat3 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2 = u_xlat2 + (-u_xlat3);
					    u_xlat2 = vec4(vs_TEXCOORD1) * u_xlat2 + u_xlat3;
					    u_xlat2 = u_xlat2 + u_xlat2;
					    u_xlat2 = u_xlat2 * _TintColor;
					    u_xlat1.xyz = vs_COLOR0.xyz;
					    u_xlat1 = u_xlat1 * u_xlat2;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat4.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat4.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec3 u_xlat4;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat4.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat1 = texture(_CameraDepthTexture, u_xlat4.xy);
					    u_xlat4.x = _ZBufferParams.z * u_xlat1.x + _ZBufferParams.w;
					    u_xlat4.x = float(1.0) / u_xlat4.x;
					    u_xlat4.x = u_xlat4.x + (-vs_TEXCOORD3.z);
					    u_xlat4.x = u_xlat4.x * _InvFade;
					    u_xlat4.x = clamp(u_xlat4.x, 0.0, 1.0);
					    u_xlat1.w = u_xlat4.x * vs_COLOR0.w;
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat3 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2 = u_xlat2 + (-u_xlat3);
					    u_xlat2 = vec4(vs_TEXCOORD1) * u_xlat2 + u_xlat3;
					    u_xlat2 = u_xlat2 + u_xlat2;
					    u_xlat2 = u_xlat2 * _TintColor;
					    u_xlat1.xyz = vs_COLOR0.xyz;
					    u_xlat1 = u_xlat1 * u_xlat2;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat4.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat4.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec3 u_xlat4;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat4.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat1 = texture(_CameraDepthTexture, u_xlat4.xy);
					    u_xlat4.x = _ZBufferParams.z * u_xlat1.x + _ZBufferParams.w;
					    u_xlat4.x = float(1.0) / u_xlat4.x;
					    u_xlat4.x = u_xlat4.x + (-vs_TEXCOORD3.z);
					    u_xlat4.x = u_xlat4.x * _InvFade;
					    u_xlat4.x = clamp(u_xlat4.x, 0.0, 1.0);
					    u_xlat1.w = u_xlat4.x * vs_COLOR0.w;
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat3 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2 = u_xlat2 + (-u_xlat3);
					    u_xlat2 = vec4(vs_TEXCOORD1) * u_xlat2 + u_xlat3;
					    u_xlat2 = u_xlat2 + u_xlat2;
					    u_xlat2 = u_xlat2 * _TintColor;
					    u_xlat1.xyz = vs_COLOR0.xyz;
					    u_xlat1 = u_xlat1 * u_xlat2;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat4.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat4.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendMul2" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat6;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat0 = u_xlat0 * vs_COLOR0;
					    u_xlat6 = u_xlat0.w;
					    u_xlat6 = clamp(u_xlat6, 0.0, 1.0);
					    u_xlat0.w = u_xlat6 * vs_TEXCOORD4;
					    u_xlat1 = u_xlat0 + vec4(-0.5, -0.5, -0.5, -0.5);
					    SV_Target0 = u_xlat0.wwww * u_xlat1 + vec4(0.5, 0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat6;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat0 = u_xlat0 * vs_COLOR0;
					    u_xlat6 = u_xlat0.w;
					    u_xlat6 = clamp(u_xlat6, 0.0, 1.0);
					    u_xlat0.w = u_xlat6 * vs_TEXCOORD4;
					    u_xlat1 = u_xlat0 + vec4(-0.5, -0.5, -0.5, -0.5);
					    SV_Target0 = u_xlat0.wwww * u_xlat1 + vec4(0.5, 0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[7];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					float u_xlat9;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat9 = u_xlat0.w;
					    u_xlat9 = clamp(u_xlat9, 0.0, 1.0);
					    u_xlat0.w = u_xlat9 * vs_TEXCOORD4;
					    u_xlat1 = u_xlat0 + vec4(-0.5, -0.5, -0.5, -0.5);
					    SV_Target0 = u_xlat0.wwww * u_xlat1 + vec4(0.5, 0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[6];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					float u_xlat9;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat9 = u_xlat0.w;
					    u_xlat9 = clamp(u_xlat9, 0.0, 1.0);
					    u_xlat0.w = u_xlat9 * vs_TEXCOORD4;
					    u_xlat1 = u_xlat0 + vec4(-0.5, -0.5, -0.5, -0.5);
					    SV_Target0 = u_xlat0.wwww * u_xlat1 + vec4(0.5, 0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					float u_xlat9;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat9 = u_xlat0.w;
					    u_xlat9 = clamp(u_xlat9, 0.0, 1.0);
					    u_xlat0.w = u_xlat9 * vs_TEXCOORD4;
					    u_xlat1 = u_xlat0 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat0.xyz = u_xlat0.www * u_xlat1.xyz;
					    SV_Target0.w = u_xlat0.w * u_xlat1.w + 0.5;
					    u_xlat9 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat9 = (-u_xlat9) + 1.0;
					    u_xlat9 = u_xlat9 * _ProjectionParams.z;
					    u_xlat9 = max(u_xlat9, 0.0);
					    u_xlat9 = u_xlat9 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat9 = clamp(u_xlat9, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat9) * u_xlat0.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					float u_xlat9;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat9 = u_xlat0.w;
					    u_xlat9 = clamp(u_xlat9, 0.0, 1.0);
					    u_xlat0.w = u_xlat9 * vs_TEXCOORD4;
					    u_xlat1 = u_xlat0 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat0.xyz = u_xlat0.www * u_xlat1.xyz;
					    SV_Target0.w = u_xlat0.w * u_xlat1.w + 0.5;
					    u_xlat9 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat9 = (-u_xlat9) + 1.0;
					    u_xlat9 = u_xlat9 * _ProjectionParams.z;
					    u_xlat9 = max(u_xlat9, 0.0);
					    u_xlat9 = u_xlat9 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat9 = clamp(u_xlat9, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat9) * u_xlat0.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec3 u_xlat4;
					float u_xlat13;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat4.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat1 = texture(_CameraDepthTexture, u_xlat4.xy);
					    u_xlat4.x = _ZBufferParams.z * u_xlat1.x + _ZBufferParams.w;
					    u_xlat4.x = float(1.0) / u_xlat4.x;
					    u_xlat4.x = u_xlat4.x + (-vs_TEXCOORD3.z);
					    u_xlat4.x = u_xlat4.x * _InvFade;
					    u_xlat4.x = clamp(u_xlat4.x, 0.0, 1.0);
					    u_xlat1.w = u_xlat4.x * vs_COLOR0.w;
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat3 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2 = u_xlat2 + (-u_xlat3);
					    u_xlat2 = vec4(vs_TEXCOORD1) * u_xlat2 + u_xlat3;
					    u_xlat2 = u_xlat2 + u_xlat2;
					    u_xlat2 = u_xlat2 * _TintColor;
					    u_xlat1.xyz = vs_COLOR0.xyz;
					    u_xlat1 = u_xlat1 * u_xlat2;
					    u_xlat13 = u_xlat1.w;
					    u_xlat13 = clamp(u_xlat13, 0.0, 1.0);
					    u_xlat1.w = u_xlat13 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat4.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat4.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec3 u_xlat4;
					float u_xlat13;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat4.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat1 = texture(_CameraDepthTexture, u_xlat4.xy);
					    u_xlat4.x = _ZBufferParams.z * u_xlat1.x + _ZBufferParams.w;
					    u_xlat4.x = float(1.0) / u_xlat4.x;
					    u_xlat4.x = u_xlat4.x + (-vs_TEXCOORD3.z);
					    u_xlat4.x = u_xlat4.x * _InvFade;
					    u_xlat4.x = clamp(u_xlat4.x, 0.0, 1.0);
					    u_xlat1.w = u_xlat4.x * vs_COLOR0.w;
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat3 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2 = u_xlat2 + (-u_xlat3);
					    u_xlat2 = vec4(vs_TEXCOORD1) * u_xlat2 + u_xlat3;
					    u_xlat2 = u_xlat2 + u_xlat2;
					    u_xlat2 = u_xlat2 * _TintColor;
					    u_xlat1.xyz = vs_COLOR0.xyz;
					    u_xlat1 = u_xlat1 * u_xlat2;
					    u_xlat13 = u_xlat1.w;
					    u_xlat13 = clamp(u_xlat13, 0.0, 1.0);
					    u_xlat1.w = u_xlat13 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat4.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat4.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						vec4 unused_0_2;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec3 u_xlat4;
					float u_xlat13;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat4.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat1 = texture(_CameraDepthTexture, u_xlat4.xy);
					    u_xlat4.x = _ZBufferParams.z * u_xlat1.x + _ZBufferParams.w;
					    u_xlat4.x = float(1.0) / u_xlat4.x;
					    u_xlat4.x = u_xlat4.x + (-vs_TEXCOORD3.z);
					    u_xlat4.x = u_xlat4.x * _InvFade;
					    u_xlat4.x = clamp(u_xlat4.x, 0.0, 1.0);
					    u_xlat1.w = u_xlat4.x * vs_COLOR0.w;
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat3 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2 = u_xlat2 + (-u_xlat3);
					    u_xlat2 = vec4(vs_TEXCOORD1) * u_xlat2 + u_xlat3;
					    u_xlat2 = u_xlat2 + u_xlat2;
					    u_xlat2 = u_xlat2 * _TintColor;
					    u_xlat1.xyz = vs_COLOR0.xyz;
					    u_xlat1 = u_xlat1 * u_xlat2;
					    u_xlat13 = u_xlat1.w;
					    u_xlat13 = clamp(u_xlat13, 0.0, 1.0);
					    u_xlat1.w = u_xlat13 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat4.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat4.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec3 u_xlat4;
					float u_xlat13;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat4.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat1 = texture(_CameraDepthTexture, u_xlat4.xy);
					    u_xlat4.x = _ZBufferParams.z * u_xlat1.x + _ZBufferParams.w;
					    u_xlat4.x = float(1.0) / u_xlat4.x;
					    u_xlat4.x = u_xlat4.x + (-vs_TEXCOORD3.z);
					    u_xlat4.x = u_xlat4.x * _InvFade;
					    u_xlat4.x = clamp(u_xlat4.x, 0.0, 1.0);
					    u_xlat1.w = u_xlat4.x * vs_COLOR0.w;
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat3 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2 = u_xlat2 + (-u_xlat3);
					    u_xlat2 = vec4(vs_TEXCOORD1) * u_xlat2 + u_xlat3;
					    u_xlat2 = u_xlat2 + u_xlat2;
					    u_xlat2 = u_xlat2 * _TintColor;
					    u_xlat1.xyz = vs_COLOR0.xyz;
					    u_xlat1 = u_xlat1 * u_xlat2;
					    u_xlat13 = u_xlat1.w;
					    u_xlat13 = clamp(u_xlat13, 0.0, 1.0);
					    u_xlat1.w = u_xlat13 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat4.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat4.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendMul2" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[7];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					float u_xlat9;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat9 = u_xlat0.w;
					    u_xlat9 = clamp(u_xlat9, 0.0, 1.0);
					    u_xlat0.w = u_xlat9 * vs_TEXCOORD4;
					    u_xlat1 = u_xlat0 + vec4(-0.5, -0.5, -0.5, -0.5);
					    SV_Target0 = u_xlat0.wwww * u_xlat1 + vec4(0.5, 0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[6];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					float u_xlat9;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat9 = u_xlat0.w;
					    u_xlat9 = clamp(u_xlat9, 0.0, 1.0);
					    u_xlat0.w = u_xlat9 * vs_TEXCOORD4;
					    u_xlat1 = u_xlat0 + vec4(-0.5, -0.5, -0.5, -0.5);
					    SV_Target0 = u_xlat0.wwww * u_xlat1 + vec4(0.5, 0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[7];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					float u_xlat9;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat9 = u_xlat0.w;
					    u_xlat9 = clamp(u_xlat9, 0.0, 1.0);
					    u_xlat0.w = u_xlat9 * vs_TEXCOORD4;
					    u_xlat1 = u_xlat0 + vec4(-0.5, -0.5, -0.5, -0.5);
					    SV_Target0 = u_xlat0.wwww * u_xlat1 + vec4(0.5, 0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[6];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					float u_xlat9;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat9 = u_xlat0.w;
					    u_xlat9 = clamp(u_xlat9, 0.0, 1.0);
					    u_xlat0.w = u_xlat9 * vs_TEXCOORD4;
					    u_xlat1 = u_xlat0 + vec4(-0.5, -0.5, -0.5, -0.5);
					    SV_Target0 = u_xlat0.wwww * u_xlat1 + vec4(0.5, 0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					float u_xlat9;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat9 = u_xlat0.w;
					    u_xlat9 = clamp(u_xlat9, 0.0, 1.0);
					    u_xlat0.w = u_xlat9 * vs_TEXCOORD4;
					    u_xlat1 = u_xlat0 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat0.xyz = u_xlat0.www * u_xlat1.xyz;
					    SV_Target0.w = u_xlat0.w * u_xlat1.w + 0.5;
					    u_xlat9 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat9 = (-u_xlat9) + 1.0;
					    u_xlat9 = u_xlat9 * _ProjectionParams.z;
					    u_xlat9 = max(u_xlat9, 0.0);
					    u_xlat9 = u_xlat9 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat9 = clamp(u_xlat9, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat9) * u_xlat0.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					float u_xlat9;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat9 = u_xlat0.w;
					    u_xlat9 = clamp(u_xlat9, 0.0, 1.0);
					    u_xlat0.w = u_xlat9 * vs_TEXCOORD4;
					    u_xlat1 = u_xlat0 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat0.xyz = u_xlat0.www * u_xlat1.xyz;
					    SV_Target0.w = u_xlat0.w * u_xlat1.w + 0.5;
					    u_xlat9 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat9 = (-u_xlat9) + 1.0;
					    u_xlat9 = u_xlat9 * _ProjectionParams.z;
					    u_xlat9 = max(u_xlat9, 0.0);
					    u_xlat9 = u_xlat9 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat9 = clamp(u_xlat9, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat9) * u_xlat0.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					float u_xlat9;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat9 = u_xlat0.w;
					    u_xlat9 = clamp(u_xlat9, 0.0, 1.0);
					    u_xlat0.w = u_xlat9 * vs_TEXCOORD4;
					    u_xlat1 = u_xlat0 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat0.xyz = u_xlat0.www * u_xlat1.xyz;
					    SV_Target0.w = u_xlat0.w * u_xlat1.w + 0.5;
					    u_xlat9 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat9 = (-u_xlat9) + 1.0;
					    u_xlat9 = u_xlat9 * _ProjectionParams.z;
					    u_xlat9 = max(u_xlat9, 0.0);
					    u_xlat9 = u_xlat9 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat9 = clamp(u_xlat9, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat9) * u_xlat0.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					float u_xlat9;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat9 = u_xlat0.w;
					    u_xlat9 = clamp(u_xlat9, 0.0, 1.0);
					    u_xlat0.w = u_xlat9 * vs_TEXCOORD4;
					    u_xlat1 = u_xlat0 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat0.xyz = u_xlat0.www * u_xlat1.xyz;
					    SV_Target0.w = u_xlat0.w * u_xlat1.w + 0.5;
					    u_xlat9 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat9 = (-u_xlat9) + 1.0;
					    u_xlat9 = u_xlat9 * _ProjectionParams.z;
					    u_xlat9 = max(u_xlat9, 0.0);
					    u_xlat9 = u_xlat9 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat9 = clamp(u_xlat9, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat9) * u_xlat0.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec3 u_xlat4;
					float u_xlat13;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat4.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat1 = texture(_CameraDepthTexture, u_xlat4.xy);
					    u_xlat4.x = _ZBufferParams.z * u_xlat1.x + _ZBufferParams.w;
					    u_xlat4.x = float(1.0) / u_xlat4.x;
					    u_xlat4.x = u_xlat4.x + (-vs_TEXCOORD3.z);
					    u_xlat4.x = u_xlat4.x * _InvFade;
					    u_xlat4.x = clamp(u_xlat4.x, 0.0, 1.0);
					    u_xlat1.w = u_xlat4.x * vs_COLOR0.w;
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat3 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2 = u_xlat2 + (-u_xlat3);
					    u_xlat2 = vec4(vs_TEXCOORD1) * u_xlat2 + u_xlat3;
					    u_xlat2 = u_xlat2 + u_xlat2;
					    u_xlat2 = u_xlat2 * _TintColor;
					    u_xlat1.xyz = vs_COLOR0.xyz;
					    u_xlat1 = u_xlat1 * u_xlat2;
					    u_xlat13 = u_xlat1.w;
					    u_xlat13 = clamp(u_xlat13, 0.0, 1.0);
					    u_xlat1.w = u_xlat13 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat4.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat4.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec3 u_xlat4;
					float u_xlat13;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat4.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat1 = texture(_CameraDepthTexture, u_xlat4.xy);
					    u_xlat4.x = _ZBufferParams.z * u_xlat1.x + _ZBufferParams.w;
					    u_xlat4.x = float(1.0) / u_xlat4.x;
					    u_xlat4.x = u_xlat4.x + (-vs_TEXCOORD3.z);
					    u_xlat4.x = u_xlat4.x * _InvFade;
					    u_xlat4.x = clamp(u_xlat4.x, 0.0, 1.0);
					    u_xlat1.w = u_xlat4.x * vs_COLOR0.w;
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat3 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2 = u_xlat2 + (-u_xlat3);
					    u_xlat2 = vec4(vs_TEXCOORD1) * u_xlat2 + u_xlat3;
					    u_xlat2 = u_xlat2 + u_xlat2;
					    u_xlat2 = u_xlat2 * _TintColor;
					    u_xlat1.xyz = vs_COLOR0.xyz;
					    u_xlat1 = u_xlat1 * u_xlat2;
					    u_xlat13 = u_xlat1.w;
					    u_xlat13 = clamp(u_xlat13, 0.0, 1.0);
					    u_xlat1.w = u_xlat13 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat4.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat4.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec3 u_xlat4;
					float u_xlat13;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat4.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat1 = texture(_CameraDepthTexture, u_xlat4.xy);
					    u_xlat4.x = _ZBufferParams.z * u_xlat1.x + _ZBufferParams.w;
					    u_xlat4.x = float(1.0) / u_xlat4.x;
					    u_xlat4.x = u_xlat4.x + (-vs_TEXCOORD3.z);
					    u_xlat4.x = u_xlat4.x * _InvFade;
					    u_xlat4.x = clamp(u_xlat4.x, 0.0, 1.0);
					    u_xlat1.w = u_xlat4.x * vs_COLOR0.w;
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat3 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2 = u_xlat2 + (-u_xlat3);
					    u_xlat2 = vec4(vs_TEXCOORD1) * u_xlat2 + u_xlat3;
					    u_xlat2 = u_xlat2 + u_xlat2;
					    u_xlat2 = u_xlat2 * _TintColor;
					    u_xlat1.xyz = vs_COLOR0.xyz;
					    u_xlat1 = u_xlat1 * u_xlat2;
					    u_xlat13 = u_xlat1.w;
					    u_xlat13 = clamp(u_xlat13, 0.0, 1.0);
					    u_xlat1.w = u_xlat13 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat4.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat4.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec3 u_xlat4;
					float u_xlat13;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat4.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat1 = texture(_CameraDepthTexture, u_xlat4.xy);
					    u_xlat4.x = _ZBufferParams.z * u_xlat1.x + _ZBufferParams.w;
					    u_xlat4.x = float(1.0) / u_xlat4.x;
					    u_xlat4.x = u_xlat4.x + (-vs_TEXCOORD3.z);
					    u_xlat4.x = u_xlat4.x * _InvFade;
					    u_xlat4.x = clamp(u_xlat4.x, 0.0, 1.0);
					    u_xlat1.w = u_xlat4.x * vs_COLOR0.w;
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat3 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2 = u_xlat2 + (-u_xlat3);
					    u_xlat2 = vec4(vs_TEXCOORD1) * u_xlat2 + u_xlat3;
					    u_xlat2 = u_xlat2 + u_xlat2;
					    u_xlat2 = u_xlat2 * _TintColor;
					    u_xlat1.xyz = vs_COLOR0.xyz;
					    u_xlat1 = u_xlat1 * u_xlat2;
					    u_xlat13 = u_xlat1.w;
					    u_xlat13 = clamp(u_xlat13, 0.0, 1.0);
					    u_xlat1.w = u_xlat13 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat4.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat4.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec3 u_xlat4;
					float u_xlat13;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat4.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat1 = texture(_CameraDepthTexture, u_xlat4.xy);
					    u_xlat4.x = _ZBufferParams.z * u_xlat1.x + _ZBufferParams.w;
					    u_xlat4.x = float(1.0) / u_xlat4.x;
					    u_xlat4.x = u_xlat4.x + (-vs_TEXCOORD3.z);
					    u_xlat4.x = u_xlat4.x * _InvFade;
					    u_xlat4.x = clamp(u_xlat4.x, 0.0, 1.0);
					    u_xlat1.w = u_xlat4.x * vs_COLOR0.w;
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat3 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2 = u_xlat2 + (-u_xlat3);
					    u_xlat2 = vec4(vs_TEXCOORD1) * u_xlat2 + u_xlat3;
					    u_xlat2 = u_xlat2 + u_xlat2;
					    u_xlat2 = u_xlat2 * _TintColor;
					    u_xlat1.xyz = vs_COLOR0.xyz;
					    u_xlat1 = u_xlat1 * u_xlat2;
					    u_xlat13 = u_xlat1.w;
					    u_xlat13 = clamp(u_xlat13, 0.0, 1.0);
					    u_xlat1.w = u_xlat13 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat4.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat4.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec3 u_xlat4;
					float u_xlat13;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat4.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat1 = texture(_CameraDepthTexture, u_xlat4.xy);
					    u_xlat4.x = _ZBufferParams.z * u_xlat1.x + _ZBufferParams.w;
					    u_xlat4.x = float(1.0) / u_xlat4.x;
					    u_xlat4.x = u_xlat4.x + (-vs_TEXCOORD3.z);
					    u_xlat4.x = u_xlat4.x * _InvFade;
					    u_xlat4.x = clamp(u_xlat4.x, 0.0, 1.0);
					    u_xlat1.w = u_xlat4.x * vs_COLOR0.w;
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat3 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2 = u_xlat2 + (-u_xlat3);
					    u_xlat2 = vec4(vs_TEXCOORD1) * u_xlat2 + u_xlat3;
					    u_xlat2 = u_xlat2 + u_xlat2;
					    u_xlat2 = u_xlat2 * _TintColor;
					    u_xlat1.xyz = vs_COLOR0.xyz;
					    u_xlat1 = u_xlat1 * u_xlat2;
					    u_xlat13 = u_xlat1.w;
					    u_xlat13 = clamp(u_xlat13, 0.0, 1.0);
					    u_xlat1.w = u_xlat13 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat4.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat4.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec3 u_xlat4;
					float u_xlat13;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat4.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat1 = texture(_CameraDepthTexture, u_xlat4.xy);
					    u_xlat4.x = _ZBufferParams.z * u_xlat1.x + _ZBufferParams.w;
					    u_xlat4.x = float(1.0) / u_xlat4.x;
					    u_xlat4.x = u_xlat4.x + (-vs_TEXCOORD3.z);
					    u_xlat4.x = u_xlat4.x * _InvFade;
					    u_xlat4.x = clamp(u_xlat4.x, 0.0, 1.0);
					    u_xlat1.w = u_xlat4.x * vs_COLOR0.w;
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat3 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2 = u_xlat2 + (-u_xlat3);
					    u_xlat2 = vec4(vs_TEXCOORD1) * u_xlat2 + u_xlat3;
					    u_xlat2 = u_xlat2 + u_xlat2;
					    u_xlat2 = u_xlat2 * _TintColor;
					    u_xlat1.xyz = vs_COLOR0.xyz;
					    u_xlat1 = u_xlat1 * u_xlat2;
					    u_xlat13 = u_xlat1.w;
					    u_xlat13 = clamp(u_xlat13, 0.0, 1.0);
					    u_xlat1.w = u_xlat13 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat4.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat4.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_OFF" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec3 u_xlat4;
					float u_xlat13;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat4.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat1 = texture(_CameraDepthTexture, u_xlat4.xy);
					    u_xlat4.x = _ZBufferParams.z * u_xlat1.x + _ZBufferParams.w;
					    u_xlat4.x = float(1.0) / u_xlat4.x;
					    u_xlat4.x = u_xlat4.x + (-vs_TEXCOORD3.z);
					    u_xlat4.x = u_xlat4.x * _InvFade;
					    u_xlat4.x = clamp(u_xlat4.x, 0.0, 1.0);
					    u_xlat1.w = u_xlat4.x * vs_COLOR0.w;
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat3 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat2 = u_xlat2 + (-u_xlat3);
					    u_xlat2 = vec4(vs_TEXCOORD1) * u_xlat2 + u_xlat3;
					    u_xlat2 = u_xlat2 + u_xlat2;
					    u_xlat2 = u_xlat2 * _TintColor;
					    u_xlat1.xyz = vs_COLOR0.xyz;
					    u_xlat1 = u_xlat1 * u_xlat2;
					    u_xlat13 = u_xlat1.w;
					    u_xlat13 = clamp(u_xlat13, 0.0, 1.0);
					    u_xlat1.w = u_xlat13 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat4.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat4.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendMul2" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					bool u_xlatb1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1.x = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat0.w = u_xlat0.w * u_xlat1.x;
					    u_xlat0 = u_xlat0 * vs_COLOR0;
					    u_xlat0.w = u_xlat0.w;
					    u_xlat0.w = clamp(u_xlat0.w, 0.0, 1.0);
					    u_xlat1 = u_xlat0 + vec4(-0.5, -0.5, -0.5, -0.5);
					    SV_Target0 = u_xlat0.wwww * u_xlat1 + vec4(0.5, 0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					bool u_xlatb1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1.x = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat0.w = u_xlat0.w * u_xlat1.x;
					    u_xlat0 = u_xlat0 * vs_COLOR0;
					    u_xlat0.w = u_xlat0.w;
					    u_xlat0.w = clamp(u_xlat0.w, 0.0, 1.0);
					    u_xlat1 = u_xlat0 + vec4(-0.5, -0.5, -0.5, -0.5);
					    SV_Target0 = u_xlat0.wwww * u_xlat1 + vec4(0.5, 0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[7];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					bool u_xlatb2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2.x = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2.x;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat0.w = u_xlat0.w;
					    u_xlat0.w = clamp(u_xlat0.w, 0.0, 1.0);
					    u_xlat1 = u_xlat0 + vec4(-0.5, -0.5, -0.5, -0.5);
					    SV_Target0 = u_xlat0.wwww * u_xlat1 + vec4(0.5, 0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[6];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					bool u_xlatb2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2.x = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2.x;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat0.w = u_xlat0.w;
					    u_xlat0.w = clamp(u_xlat0.w, 0.0, 1.0);
					    u_xlat1 = u_xlat0 + vec4(-0.5, -0.5, -0.5, -0.5);
					    SV_Target0 = u_xlat0.wwww * u_xlat1 + vec4(0.5, 0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3.x;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3.x;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					bool u_xlatb2;
					float u_xlat9;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2.x = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2.x;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat0.w = u_xlat0.w;
					    u_xlat0.w = clamp(u_xlat0.w, 0.0, 1.0);
					    u_xlat1 = u_xlat0 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat0.xyz = u_xlat0.www * u_xlat1.xyz;
					    SV_Target0.w = u_xlat0.w * u_xlat1.w + 0.5;
					    u_xlat9 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat9 = (-u_xlat9) + 1.0;
					    u_xlat9 = u_xlat9 * _ProjectionParams.z;
					    u_xlat9 = max(u_xlat9, 0.0);
					    u_xlat9 = u_xlat9 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat9 = clamp(u_xlat9, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat9) * u_xlat0.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					bool u_xlatb2;
					float u_xlat9;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2.x = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2.x;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat0.w = u_xlat0.w;
					    u_xlat0.w = clamp(u_xlat0.w, 0.0, 1.0);
					    u_xlat1 = u_xlat0 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat0.xyz = u_xlat0.www * u_xlat1.xyz;
					    SV_Target0.w = u_xlat0.w * u_xlat1.w + 0.5;
					    u_xlat9 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat9 = (-u_xlat9) + 1.0;
					    u_xlat9 = u_xlat9 * _ProjectionParams.z;
					    u_xlat9 = max(u_xlat9, 0.0);
					    u_xlat9 = u_xlat9 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat9 = clamp(u_xlat9, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat9) * u_xlat0.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3.x;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3.x;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					bool u_xlatb2;
					float u_xlat9;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2.x = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2.x;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat0.w = u_xlat0.w;
					    u_xlat0.w = clamp(u_xlat0.w, 0.0, 1.0);
					    u_xlat1 = u_xlat0 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat0.xyz = u_xlat0.www * u_xlat1.xyz;
					    SV_Target0.w = u_xlat0.w * u_xlat1.w + 0.5;
					    u_xlat9 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat9 = (-u_xlat9) + 1.0;
					    u_xlat9 = u_xlat9 * _ProjectionParams.z;
					    u_xlat9 = max(u_xlat9, 0.0);
					    u_xlat9 = u_xlat9 * unity_FogParams.y;
					    u_xlat9 = exp2((-u_xlat9));
					    u_xlat9 = min(u_xlat9, 1.0);
					    SV_Target0.xyz = vec3(u_xlat9) * u_xlat0.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					bool u_xlatb2;
					float u_xlat9;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2.x = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2.x;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat0.w = u_xlat0.w;
					    u_xlat0.w = clamp(u_xlat0.w, 0.0, 1.0);
					    u_xlat1 = u_xlat0 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat0.xyz = u_xlat0.www * u_xlat1.xyz;
					    SV_Target0.w = u_xlat0.w * u_xlat1.w + 0.5;
					    u_xlat9 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat9 = (-u_xlat9) + 1.0;
					    u_xlat9 = u_xlat9 * _ProjectionParams.z;
					    u_xlat9 = max(u_xlat9, 0.0);
					    u_xlat9 = u_xlat9 * unity_FogParams.y;
					    u_xlat9 = exp2((-u_xlat9));
					    u_xlat9 = min(u_xlat9, 1.0);
					    SV_Target0.xyz = vec3(u_xlat9) * u_xlat0.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3.x;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3.x;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat1.w = u_xlat1.w;
					    u_xlat1.w = clamp(u_xlat1.w, 0.0, 1.0);
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					bool u_xlatb2;
					float u_xlat9;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2.x = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2.x;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat0.w = u_xlat0.w;
					    u_xlat0.w = clamp(u_xlat0.w, 0.0, 1.0);
					    u_xlat1 = u_xlat0 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat0.xyz = u_xlat0.www * u_xlat1.xyz;
					    SV_Target0.w = u_xlat0.w * u_xlat1.w + 0.5;
					    u_xlat9 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat9 = (-u_xlat9) + 1.0;
					    u_xlat9 = u_xlat9 * _ProjectionParams.z;
					    u_xlat9 = max(u_xlat9, 0.0);
					    u_xlat9 = u_xlat9 * unity_FogParams.x;
					    u_xlat9 = u_xlat9 * (-u_xlat9);
					    u_xlat9 = exp2(u_xlat9);
					    SV_Target0.xyz = vec3(u_xlat9) * u_xlat0.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					bool u_xlatb2;
					float u_xlat9;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2.x = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2.x;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat0.w = u_xlat0.w;
					    u_xlat0.w = clamp(u_xlat0.w, 0.0, 1.0);
					    u_xlat1 = u_xlat0 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat0.xyz = u_xlat0.www * u_xlat1.xyz;
					    SV_Target0.w = u_xlat0.w * u_xlat1.w + 0.5;
					    u_xlat9 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat9 = (-u_xlat9) + 1.0;
					    u_xlat9 = u_xlat9 * _ProjectionParams.z;
					    u_xlat9 = max(u_xlat9, 0.0);
					    u_xlat9 = u_xlat9 * unity_FogParams.x;
					    u_xlat9 = u_xlat9 * (-u_xlat9);
					    u_xlat9 = exp2(u_xlat9);
					    SV_Target0.xyz = vec3(u_xlat9) * u_xlat0.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendMul2" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[7];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					bool u_xlatb2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2.x = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2.x;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat0.w = u_xlat0.w;
					    u_xlat0.w = clamp(u_xlat0.w, 0.0, 1.0);
					    u_xlat1 = u_xlat0 + vec4(-0.5, -0.5, -0.5, -0.5);
					    SV_Target0 = u_xlat0.wwww * u_xlat1 + vec4(0.5, 0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[6];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					bool u_xlatb2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2.x = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2.x;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat0.w = u_xlat0.w;
					    u_xlat0.w = clamp(u_xlat0.w, 0.0, 1.0);
					    u_xlat1 = u_xlat0 + vec4(-0.5, -0.5, -0.5, -0.5);
					    SV_Target0 = u_xlat0.wwww * u_xlat1 + vec4(0.5, 0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[7];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					bool u_xlatb2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2.x = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2.x;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat0.w = u_xlat0.w;
					    u_xlat0.w = clamp(u_xlat0.w, 0.0, 1.0);
					    u_xlat1 = u_xlat0 + vec4(-0.5, -0.5, -0.5, -0.5);
					    SV_Target0 = u_xlat0.wwww * u_xlat1 + vec4(0.5, 0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[6];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					bool u_xlatb2;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2.x = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2.x;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat0.w = u_xlat0.w;
					    u_xlat0.w = clamp(u_xlat0.w, 0.0, 1.0);
					    u_xlat1 = u_xlat0 + vec4(-0.5, -0.5, -0.5, -0.5);
					    SV_Target0 = u_xlat0.wwww * u_xlat1 + vec4(0.5, 0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					bool u_xlatb2;
					float u_xlat9;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2.x = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2.x;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat0.w = u_xlat0.w;
					    u_xlat0.w = clamp(u_xlat0.w, 0.0, 1.0);
					    u_xlat1 = u_xlat0 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat0.xyz = u_xlat0.www * u_xlat1.xyz;
					    SV_Target0.w = u_xlat0.w * u_xlat1.w + 0.5;
					    u_xlat9 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat9 = (-u_xlat9) + 1.0;
					    u_xlat9 = u_xlat9 * _ProjectionParams.z;
					    u_xlat9 = max(u_xlat9, 0.0);
					    u_xlat9 = u_xlat9 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat9 = clamp(u_xlat9, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat9) * u_xlat0.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					bool u_xlatb2;
					float u_xlat9;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2.x = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2.x;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat0.w = u_xlat0.w;
					    u_xlat0.w = clamp(u_xlat0.w, 0.0, 1.0);
					    u_xlat1 = u_xlat0 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat0.xyz = u_xlat0.www * u_xlat1.xyz;
					    SV_Target0.w = u_xlat0.w * u_xlat1.w + 0.5;
					    u_xlat9 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat9 = (-u_xlat9) + 1.0;
					    u_xlat9 = u_xlat9 * _ProjectionParams.z;
					    u_xlat9 = max(u_xlat9, 0.0);
					    u_xlat9 = u_xlat9 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat9 = clamp(u_xlat9, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat9) * u_xlat0.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					bool u_xlatb2;
					float u_xlat9;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2.x = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2.x;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat0.w = u_xlat0.w;
					    u_xlat0.w = clamp(u_xlat0.w, 0.0, 1.0);
					    u_xlat1 = u_xlat0 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat0.xyz = u_xlat0.www * u_xlat1.xyz;
					    SV_Target0.w = u_xlat0.w * u_xlat1.w + 0.5;
					    u_xlat9 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat9 = (-u_xlat9) + 1.0;
					    u_xlat9 = u_xlat9 * _ProjectionParams.z;
					    u_xlat9 = max(u_xlat9, 0.0);
					    u_xlat9 = u_xlat9 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat9 = clamp(u_xlat9, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat9) * u_xlat0.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					bool u_xlatb2;
					float u_xlat9;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2.x = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2.x;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat0.w = u_xlat0.w;
					    u_xlat0.w = clamp(u_xlat0.w, 0.0, 1.0);
					    u_xlat1 = u_xlat0 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat0.xyz = u_xlat0.www * u_xlat1.xyz;
					    SV_Target0.w = u_xlat0.w * u_xlat1.w + 0.5;
					    u_xlat9 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat9 = (-u_xlat9) + 1.0;
					    u_xlat9 = u_xlat9 * _ProjectionParams.z;
					    u_xlat9 = max(u_xlat9, 0.0);
					    u_xlat9 = u_xlat9 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat9 = clamp(u_xlat9, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat9) * u_xlat0.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					bool u_xlatb2;
					float u_xlat9;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2.x = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2.x;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat0.w = u_xlat0.w;
					    u_xlat0.w = clamp(u_xlat0.w, 0.0, 1.0);
					    u_xlat1 = u_xlat0 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat0.xyz = u_xlat0.www * u_xlat1.xyz;
					    SV_Target0.w = u_xlat0.w * u_xlat1.w + 0.5;
					    u_xlat9 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat9 = (-u_xlat9) + 1.0;
					    u_xlat9 = u_xlat9 * _ProjectionParams.z;
					    u_xlat9 = max(u_xlat9, 0.0);
					    u_xlat9 = u_xlat9 * unity_FogParams.y;
					    u_xlat9 = exp2((-u_xlat9));
					    u_xlat9 = min(u_xlat9, 1.0);
					    SV_Target0.xyz = vec3(u_xlat9) * u_xlat0.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					bool u_xlatb2;
					float u_xlat9;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2.x = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2.x;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat0.w = u_xlat0.w;
					    u_xlat0.w = clamp(u_xlat0.w, 0.0, 1.0);
					    u_xlat1 = u_xlat0 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat0.xyz = u_xlat0.www * u_xlat1.xyz;
					    SV_Target0.w = u_xlat0.w * u_xlat1.w + 0.5;
					    u_xlat9 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat9 = (-u_xlat9) + 1.0;
					    u_xlat9 = u_xlat9 * _ProjectionParams.z;
					    u_xlat9 = max(u_xlat9, 0.0);
					    u_xlat9 = u_xlat9 * unity_FogParams.y;
					    u_xlat9 = exp2((-u_xlat9));
					    u_xlat9 = min(u_xlat9, 1.0);
					    SV_Target0.xyz = vec3(u_xlat9) * u_xlat0.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					bool u_xlatb2;
					float u_xlat9;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2.x = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2.x;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat0.w = u_xlat0.w;
					    u_xlat0.w = clamp(u_xlat0.w, 0.0, 1.0);
					    u_xlat1 = u_xlat0 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat0.xyz = u_xlat0.www * u_xlat1.xyz;
					    SV_Target0.w = u_xlat0.w * u_xlat1.w + 0.5;
					    u_xlat9 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat9 = (-u_xlat9) + 1.0;
					    u_xlat9 = u_xlat9 * _ProjectionParams.z;
					    u_xlat9 = max(u_xlat9, 0.0);
					    u_xlat9 = u_xlat9 * unity_FogParams.y;
					    u_xlat9 = exp2((-u_xlat9));
					    u_xlat9 = min(u_xlat9, 1.0);
					    SV_Target0.xyz = vec3(u_xlat9) * u_xlat0.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					bool u_xlatb2;
					float u_xlat9;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2.x = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2.x;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat0.w = u_xlat0.w;
					    u_xlat0.w = clamp(u_xlat0.w, 0.0, 1.0);
					    u_xlat1 = u_xlat0 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat0.xyz = u_xlat0.www * u_xlat1.xyz;
					    SV_Target0.w = u_xlat0.w * u_xlat1.w + 0.5;
					    u_xlat9 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat9 = (-u_xlat9) + 1.0;
					    u_xlat9 = u_xlat9 * _ProjectionParams.z;
					    u_xlat9 = max(u_xlat9, 0.0);
					    u_xlat9 = u_xlat9 * unity_FogParams.y;
					    u_xlat9 = exp2((-u_xlat9));
					    u_xlat9 = min(u_xlat9, 1.0);
					    SV_Target0.xyz = vec3(u_xlat9) * u_xlat0.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					bool u_xlatb2;
					float u_xlat9;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2.x = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2.x;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat0.w = u_xlat0.w;
					    u_xlat0.w = clamp(u_xlat0.w, 0.0, 1.0);
					    u_xlat1 = u_xlat0 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat0.xyz = u_xlat0.www * u_xlat1.xyz;
					    SV_Target0.w = u_xlat0.w * u_xlat1.w + 0.5;
					    u_xlat9 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat9 = (-u_xlat9) + 1.0;
					    u_xlat9 = u_xlat9 * _ProjectionParams.z;
					    u_xlat9 = max(u_xlat9, 0.0);
					    u_xlat9 = u_xlat9 * unity_FogParams.x;
					    u_xlat9 = u_xlat9 * (-u_xlat9);
					    u_xlat9 = exp2(u_xlat9);
					    SV_Target0.xyz = vec3(u_xlat9) * u_xlat0.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					bool u_xlatb2;
					float u_xlat9;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2.x = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2.x;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat0.w = u_xlat0.w;
					    u_xlat0.w = clamp(u_xlat0.w, 0.0, 1.0);
					    u_xlat1 = u_xlat0 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat0.xyz = u_xlat0.www * u_xlat1.xyz;
					    SV_Target0.w = u_xlat0.w * u_xlat1.w + 0.5;
					    u_xlat9 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat9 = (-u_xlat9) + 1.0;
					    u_xlat9 = u_xlat9 * _ProjectionParams.z;
					    u_xlat9 = max(u_xlat9, 0.0);
					    u_xlat9 = u_xlat9 * unity_FogParams.x;
					    u_xlat9 = u_xlat9 * (-u_xlat9);
					    u_xlat9 = exp2(u_xlat9);
					    SV_Target0.xyz = vec3(u_xlat9) * u_xlat0.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					bool u_xlatb2;
					float u_xlat9;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2.x = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2.x;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat0.w = u_xlat0.w;
					    u_xlat0.w = clamp(u_xlat0.w, 0.0, 1.0);
					    u_xlat1 = u_xlat0 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat0.xyz = u_xlat0.www * u_xlat1.xyz;
					    SV_Target0.w = u_xlat0.w * u_xlat1.w + 0.5;
					    u_xlat9 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat9 = (-u_xlat9) + 1.0;
					    u_xlat9 = u_xlat9 * _ProjectionParams.z;
					    u_xlat9 = max(u_xlat9, 0.0);
					    u_xlat9 = u_xlat9 * unity_FogParams.x;
					    u_xlat9 = u_xlat9 * (-u_xlat9);
					    u_xlat9 = exp2(u_xlat9);
					    SV_Target0.xyz = vec3(u_xlat9) * u_xlat0.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					bool u_xlatb2;
					float u_xlat9;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2.x = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2.x;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat0.w = u_xlat0.w;
					    u_xlat0.w = clamp(u_xlat0.w, 0.0, 1.0);
					    u_xlat1 = u_xlat0 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat0.xyz = u_xlat0.www * u_xlat1.xyz;
					    SV_Target0.w = u_xlat0.w * u_xlat1.w + 0.5;
					    u_xlat9 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat9 = (-u_xlat9) + 1.0;
					    u_xlat9 = u_xlat9 * _ProjectionParams.z;
					    u_xlat9 = max(u_xlat9, 0.0);
					    u_xlat9 = u_xlat9 * unity_FogParams.x;
					    u_xlat9 = u_xlat9 * (-u_xlat9);
					    u_xlat9 = exp2(u_xlat9);
					    SV_Target0.xyz = vec3(u_xlat9) * u_xlat0.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendMul2" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					bool u_xlatb1;
					float u_xlat6;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1.x = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat0.w = u_xlat0.w * u_xlat1.x;
					    u_xlat0 = u_xlat0 * vs_COLOR0;
					    u_xlat6 = u_xlat0.w;
					    u_xlat6 = clamp(u_xlat6, 0.0, 1.0);
					    u_xlat0.w = u_xlat6 * vs_TEXCOORD4;
					    u_xlat1 = u_xlat0 + vec4(-0.5, -0.5, -0.5, -0.5);
					    SV_Target0 = u_xlat0.wwww * u_xlat1 + vec4(0.5, 0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					bool u_xlatb1;
					float u_xlat6;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlatb1 = u_xlat0.w>=_Cutout;
					    u_xlat0 = u_xlat0 + u_xlat0;
					    u_xlat0 = u_xlat0 * _TintColor;
					    u_xlat1.x = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat0.w = u_xlat0.w * u_xlat1.x;
					    u_xlat0 = u_xlat0 * vs_COLOR0;
					    u_xlat6 = u_xlat0.w;
					    u_xlat6 = clamp(u_xlat6, 0.0, 1.0);
					    u_xlat0.w = u_xlat6 * vs_TEXCOORD4;
					    u_xlat1 = u_xlat0 + vec4(-0.5, -0.5, -0.5, -0.5);
					    SV_Target0 = u_xlat0.wwww * u_xlat1 + vec4(0.5, 0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[7];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					bool u_xlatb2;
					float u_xlat9;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2.x = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2.x;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat9 = u_xlat0.w;
					    u_xlat9 = clamp(u_xlat9, 0.0, 1.0);
					    u_xlat0.w = u_xlat9 * vs_TEXCOORD4;
					    u_xlat1 = u_xlat0 + vec4(-0.5, -0.5, -0.5, -0.5);
					    SV_Target0 = u_xlat0.wwww * u_xlat1 + vec4(0.5, 0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[6];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					bool u_xlatb2;
					float u_xlat9;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2.x = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2.x;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat9 = u_xlat0.w;
					    u_xlat9 = clamp(u_xlat9, 0.0, 1.0);
					    u_xlat0.w = u_xlat9 * vs_TEXCOORD4;
					    u_xlat1 = u_xlat0 + vec4(-0.5, -0.5, -0.5, -0.5);
					    SV_Target0 = u_xlat0.wwww * u_xlat1 + vec4(0.5, 0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3.x;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3.x;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					bool u_xlatb2;
					float u_xlat9;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2.x = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2.x;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat9 = u_xlat0.w;
					    u_xlat9 = clamp(u_xlat9, 0.0, 1.0);
					    u_xlat0.w = u_xlat9 * vs_TEXCOORD4;
					    u_xlat1 = u_xlat0 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat0.xyz = u_xlat0.www * u_xlat1.xyz;
					    SV_Target0.w = u_xlat0.w * u_xlat1.w + 0.5;
					    u_xlat9 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat9 = (-u_xlat9) + 1.0;
					    u_xlat9 = u_xlat9 * _ProjectionParams.z;
					    u_xlat9 = max(u_xlat9, 0.0);
					    u_xlat9 = u_xlat9 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat9 = clamp(u_xlat9, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat9) * u_xlat0.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					bool u_xlatb2;
					float u_xlat9;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2.x = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2.x;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat9 = u_xlat0.w;
					    u_xlat9 = clamp(u_xlat9, 0.0, 1.0);
					    u_xlat0.w = u_xlat9 * vs_TEXCOORD4;
					    u_xlat1 = u_xlat0 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat0.xyz = u_xlat0.www * u_xlat1.xyz;
					    SV_Target0.w = u_xlat0.w * u_xlat1.w + 0.5;
					    u_xlat9 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat9 = (-u_xlat9) + 1.0;
					    u_xlat9 = u_xlat9 * _ProjectionParams.z;
					    u_xlat9 = max(u_xlat9, 0.0);
					    u_xlat9 = u_xlat9 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat9 = clamp(u_xlat9, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat9) * u_xlat0.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3.x;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3.x;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					bool u_xlatb2;
					float u_xlat9;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2.x = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2.x;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat9 = u_xlat0.w;
					    u_xlat9 = clamp(u_xlat9, 0.0, 1.0);
					    u_xlat0.w = u_xlat9 * vs_TEXCOORD4;
					    u_xlat1 = u_xlat0 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat0.xyz = u_xlat0.www * u_xlat1.xyz;
					    SV_Target0.w = u_xlat0.w * u_xlat1.w + 0.5;
					    u_xlat9 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat9 = (-u_xlat9) + 1.0;
					    u_xlat9 = u_xlat9 * _ProjectionParams.z;
					    u_xlat9 = max(u_xlat9, 0.0);
					    u_xlat9 = u_xlat9 * unity_FogParams.y;
					    u_xlat9 = exp2((-u_xlat9));
					    u_xlat9 = min(u_xlat9, 1.0);
					    SV_Target0.xyz = vec3(u_xlat9) * u_xlat0.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					bool u_xlatb2;
					float u_xlat9;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2.x = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2.x;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat9 = u_xlat0.w;
					    u_xlat9 = clamp(u_xlat9, 0.0, 1.0);
					    u_xlat0.w = u_xlat9 * vs_TEXCOORD4;
					    u_xlat1 = u_xlat0 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat0.xyz = u_xlat0.www * u_xlat1.xyz;
					    SV_Target0.w = u_xlat0.w * u_xlat1.w + 0.5;
					    u_xlat9 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat9 = (-u_xlat9) + 1.0;
					    u_xlat9 = u_xlat9 * _ProjectionParams.z;
					    u_xlat9 = max(u_xlat9, 0.0);
					    u_xlat9 = u_xlat9 * unity_FogParams.y;
					    u_xlat9 = exp2((-u_xlat9));
					    u_xlat9 = min(u_xlat9, 1.0);
					    SV_Target0.xyz = vec3(u_xlat9) * u_xlat0.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3.x;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb3 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat3.x;
					    u_xlat1 = u_xlat1 * vs_COLOR0;
					    u_xlat10 = u_xlat1.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat1.w = u_xlat10 * vs_TEXCOORD4;
					    u_xlat2 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.www * u_xlat2.xyz;
					    SV_Target0.w = u_xlat1.w * u_xlat2.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					bool u_xlatb2;
					float u_xlat9;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2.x = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2.x;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat9 = u_xlat0.w;
					    u_xlat9 = clamp(u_xlat9, 0.0, 1.0);
					    u_xlat0.w = u_xlat9 * vs_TEXCOORD4;
					    u_xlat1 = u_xlat0 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat0.xyz = u_xlat0.www * u_xlat1.xyz;
					    SV_Target0.w = u_xlat0.w * u_xlat1.w + 0.5;
					    u_xlat9 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat9 = (-u_xlat9) + 1.0;
					    u_xlat9 = u_xlat9 * _ProjectionParams.z;
					    u_xlat9 = max(u_xlat9, 0.0);
					    u_xlat9 = u_xlat9 * unity_FogParams.x;
					    u_xlat9 = u_xlat9 * (-u_xlat9);
					    u_xlat9 = exp2(u_xlat9);
					    SV_Target0.xyz = vec3(u_xlat9) * u_xlat0.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					bool u_xlatb2;
					float u_xlat9;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2.x = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2.x;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat9 = u_xlat0.w;
					    u_xlat9 = clamp(u_xlat9, 0.0, 1.0);
					    u_xlat0.w = u_xlat9 * vs_TEXCOORD4;
					    u_xlat1 = u_xlat0 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat0.xyz = u_xlat0.www * u_xlat1.xyz;
					    SV_Target0.w = u_xlat0.w * u_xlat1.w + 0.5;
					    u_xlat9 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat9 = (-u_xlat9) + 1.0;
					    u_xlat9 = u_xlat9 * _ProjectionParams.z;
					    u_xlat9 = max(u_xlat9, 0.0);
					    u_xlat9 = u_xlat9 * unity_FogParams.x;
					    u_xlat9 = u_xlat9 * (-u_xlat9);
					    u_xlat9 = exp2(u_xlat9);
					    SV_Target0.xyz = vec3(u_xlat9) * u_xlat0.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendMul2" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[7];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					bool u_xlatb2;
					float u_xlat9;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2.x = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2.x;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat9 = u_xlat0.w;
					    u_xlat9 = clamp(u_xlat9, 0.0, 1.0);
					    u_xlat0.w = u_xlat9 * vs_TEXCOORD4;
					    u_xlat1 = u_xlat0 + vec4(-0.5, -0.5, -0.5, -0.5);
					    SV_Target0 = u_xlat0.wwww * u_xlat1 + vec4(0.5, 0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[6];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					bool u_xlatb2;
					float u_xlat9;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2.x = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2.x;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat9 = u_xlat0.w;
					    u_xlat9 = clamp(u_xlat9, 0.0, 1.0);
					    u_xlat0.w = u_xlat9 * vs_TEXCOORD4;
					    u_xlat1 = u_xlat0 + vec4(-0.5, -0.5, -0.5, -0.5);
					    SV_Target0 = u_xlat0.wwww * u_xlat1 + vec4(0.5, 0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[7];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					bool u_xlatb2;
					float u_xlat9;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2.x = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2.x;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat9 = u_xlat0.w;
					    u_xlat9 = clamp(u_xlat9, 0.0, 1.0);
					    u_xlat0.w = u_xlat9 * vs_TEXCOORD4;
					    u_xlat1 = u_xlat0 + vec4(-0.5, -0.5, -0.5, -0.5);
					    SV_Target0 = u_xlat0.wwww * u_xlat1 + vec4(0.5, 0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[6];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					bool u_xlatb2;
					float u_xlat9;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2.x = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2.x;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat9 = u_xlat0.w;
					    u_xlat9 = clamp(u_xlat9, 0.0, 1.0);
					    u_xlat0.w = u_xlat9 * vs_TEXCOORD4;
					    u_xlat1 = u_xlat0 + vec4(-0.5, -0.5, -0.5, -0.5);
					    SV_Target0 = u_xlat0.wwww * u_xlat1 + vec4(0.5, 0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					bool u_xlatb2;
					float u_xlat9;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2.x = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2.x;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat9 = u_xlat0.w;
					    u_xlat9 = clamp(u_xlat9, 0.0, 1.0);
					    u_xlat0.w = u_xlat9 * vs_TEXCOORD4;
					    u_xlat1 = u_xlat0 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat0.xyz = u_xlat0.www * u_xlat1.xyz;
					    SV_Target0.w = u_xlat0.w * u_xlat1.w + 0.5;
					    u_xlat9 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat9 = (-u_xlat9) + 1.0;
					    u_xlat9 = u_xlat9 * _ProjectionParams.z;
					    u_xlat9 = max(u_xlat9, 0.0);
					    u_xlat9 = u_xlat9 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat9 = clamp(u_xlat9, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat9) * u_xlat0.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					bool u_xlatb2;
					float u_xlat9;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2.x = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2.x;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat9 = u_xlat0.w;
					    u_xlat9 = clamp(u_xlat9, 0.0, 1.0);
					    u_xlat0.w = u_xlat9 * vs_TEXCOORD4;
					    u_xlat1 = u_xlat0 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat0.xyz = u_xlat0.www * u_xlat1.xyz;
					    SV_Target0.w = u_xlat0.w * u_xlat1.w + 0.5;
					    u_xlat9 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat9 = (-u_xlat9) + 1.0;
					    u_xlat9 = u_xlat9 * _ProjectionParams.z;
					    u_xlat9 = max(u_xlat9, 0.0);
					    u_xlat9 = u_xlat9 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat9 = clamp(u_xlat9, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat9) * u_xlat0.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					bool u_xlatb2;
					float u_xlat9;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2.x = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2.x;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat9 = u_xlat0.w;
					    u_xlat9 = clamp(u_xlat9, 0.0, 1.0);
					    u_xlat0.w = u_xlat9 * vs_TEXCOORD4;
					    u_xlat1 = u_xlat0 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat0.xyz = u_xlat0.www * u_xlat1.xyz;
					    SV_Target0.w = u_xlat0.w * u_xlat1.w + 0.5;
					    u_xlat9 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat9 = (-u_xlat9) + 1.0;
					    u_xlat9 = u_xlat9 * _ProjectionParams.z;
					    u_xlat9 = max(u_xlat9, 0.0);
					    u_xlat9 = u_xlat9 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat9 = clamp(u_xlat9, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat9) * u_xlat0.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					bool u_xlatb2;
					float u_xlat9;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2.x = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2.x;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat9 = u_xlat0.w;
					    u_xlat9 = clamp(u_xlat9, 0.0, 1.0);
					    u_xlat0.w = u_xlat9 * vs_TEXCOORD4;
					    u_xlat1 = u_xlat0 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat0.xyz = u_xlat0.www * u_xlat1.xyz;
					    SV_Target0.w = u_xlat0.w * u_xlat1.w + 0.5;
					    u_xlat9 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat9 = (-u_xlat9) + 1.0;
					    u_xlat9 = u_xlat9 * _ProjectionParams.z;
					    u_xlat9 = max(u_xlat9, 0.0);
					    u_xlat9 = u_xlat9 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat9 = clamp(u_xlat9, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat9) * u_xlat0.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					bool u_xlatb2;
					float u_xlat9;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2.x = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2.x;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat9 = u_xlat0.w;
					    u_xlat9 = clamp(u_xlat9, 0.0, 1.0);
					    u_xlat0.w = u_xlat9 * vs_TEXCOORD4;
					    u_xlat1 = u_xlat0 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat0.xyz = u_xlat0.www * u_xlat1.xyz;
					    SV_Target0.w = u_xlat0.w * u_xlat1.w + 0.5;
					    u_xlat9 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat9 = (-u_xlat9) + 1.0;
					    u_xlat9 = u_xlat9 * _ProjectionParams.z;
					    u_xlat9 = max(u_xlat9, 0.0);
					    u_xlat9 = u_xlat9 * unity_FogParams.y;
					    u_xlat9 = exp2((-u_xlat9));
					    u_xlat9 = min(u_xlat9, 1.0);
					    SV_Target0.xyz = vec3(u_xlat9) * u_xlat0.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					bool u_xlatb2;
					float u_xlat9;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2.x = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2.x;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat9 = u_xlat0.w;
					    u_xlat9 = clamp(u_xlat9, 0.0, 1.0);
					    u_xlat0.w = u_xlat9 * vs_TEXCOORD4;
					    u_xlat1 = u_xlat0 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat0.xyz = u_xlat0.www * u_xlat1.xyz;
					    SV_Target0.w = u_xlat0.w * u_xlat1.w + 0.5;
					    u_xlat9 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat9 = (-u_xlat9) + 1.0;
					    u_xlat9 = u_xlat9 * _ProjectionParams.z;
					    u_xlat9 = max(u_xlat9, 0.0);
					    u_xlat9 = u_xlat9 * unity_FogParams.y;
					    u_xlat9 = exp2((-u_xlat9));
					    u_xlat9 = min(u_xlat9, 1.0);
					    SV_Target0.xyz = vec3(u_xlat9) * u_xlat0.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					bool u_xlatb2;
					float u_xlat9;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2.x = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2.x;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat9 = u_xlat0.w;
					    u_xlat9 = clamp(u_xlat9, 0.0, 1.0);
					    u_xlat0.w = u_xlat9 * vs_TEXCOORD4;
					    u_xlat1 = u_xlat0 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat0.xyz = u_xlat0.www * u_xlat1.xyz;
					    SV_Target0.w = u_xlat0.w * u_xlat1.w + 0.5;
					    u_xlat9 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat9 = (-u_xlat9) + 1.0;
					    u_xlat9 = u_xlat9 * _ProjectionParams.z;
					    u_xlat9 = max(u_xlat9, 0.0);
					    u_xlat9 = u_xlat9 * unity_FogParams.y;
					    u_xlat9 = exp2((-u_xlat9));
					    u_xlat9 = min(u_xlat9, 1.0);
					    SV_Target0.xyz = vec3(u_xlat9) * u_xlat0.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					bool u_xlatb2;
					float u_xlat9;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2.x = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2.x;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat9 = u_xlat0.w;
					    u_xlat9 = clamp(u_xlat9, 0.0, 1.0);
					    u_xlat0.w = u_xlat9 * vs_TEXCOORD4;
					    u_xlat1 = u_xlat0 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat0.xyz = u_xlat0.www * u_xlat1.xyz;
					    SV_Target0.w = u_xlat0.w * u_xlat1.w + 0.5;
					    u_xlat9 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat9 = (-u_xlat9) + 1.0;
					    u_xlat9 = u_xlat9 * _ProjectionParams.z;
					    u_xlat9 = max(u_xlat9, 0.0);
					    u_xlat9 = u_xlat9 * unity_FogParams.y;
					    u_xlat9 = exp2((-u_xlat9));
					    u_xlat9 = min(u_xlat9, 1.0);
					    SV_Target0.xyz = vec3(u_xlat9) * u_xlat0.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					bool u_xlatb2;
					float u_xlat9;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2.x = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2.x;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat9 = u_xlat0.w;
					    u_xlat9 = clamp(u_xlat9, 0.0, 1.0);
					    u_xlat0.w = u_xlat9 * vs_TEXCOORD4;
					    u_xlat1 = u_xlat0 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat0.xyz = u_xlat0.www * u_xlat1.xyz;
					    SV_Target0.w = u_xlat0.w * u_xlat1.w + 0.5;
					    u_xlat9 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat9 = (-u_xlat9) + 1.0;
					    u_xlat9 = u_xlat9 * _ProjectionParams.z;
					    u_xlat9 = max(u_xlat9, 0.0);
					    u_xlat9 = u_xlat9 * unity_FogParams.x;
					    u_xlat9 = u_xlat9 * (-u_xlat9);
					    u_xlat9 = exp2(u_xlat9);
					    SV_Target0.xyz = vec3(u_xlat9) * u_xlat0.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					bool u_xlatb2;
					float u_xlat9;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2.x = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2.x;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat9 = u_xlat0.w;
					    u_xlat9 = clamp(u_xlat9, 0.0, 1.0);
					    u_xlat0.w = u_xlat9 * vs_TEXCOORD4;
					    u_xlat1 = u_xlat0 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat0.xyz = u_xlat0.www * u_xlat1.xyz;
					    SV_Target0.w = u_xlat0.w * u_xlat1.w + 0.5;
					    u_xlat9 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat9 = (-u_xlat9) + 1.0;
					    u_xlat9 = u_xlat9 * _ProjectionParams.z;
					    u_xlat9 = max(u_xlat9, 0.0);
					    u_xlat9 = u_xlat9 * unity_FogParams.x;
					    u_xlat9 = u_xlat9 * (-u_xlat9);
					    u_xlat9 = exp2(u_xlat9);
					    SV_Target0.xyz = vec3(u_xlat9) * u_xlat0.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					bool u_xlatb2;
					float u_xlat9;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2.x = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2.x;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat9 = u_xlat0.w;
					    u_xlat9 = clamp(u_xlat9, 0.0, 1.0);
					    u_xlat0.w = u_xlat9 * vs_TEXCOORD4;
					    u_xlat1 = u_xlat0 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat0.xyz = u_xlat0.www * u_xlat1.xyz;
					    SV_Target0.w = u_xlat0.w * u_xlat1.w + 0.5;
					    u_xlat9 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat9 = (-u_xlat9) + 1.0;
					    u_xlat9 = u_xlat9 * _ProjectionParams.z;
					    u_xlat9 = max(u_xlat9, 0.0);
					    u_xlat9 = u_xlat9 * unity_FogParams.x;
					    u_xlat9 = u_xlat9 * (-u_xlat9);
					    u_xlat9 = exp2(u_xlat9);
					    SV_Target0.xyz = vec3(u_xlat9) * u_xlat0.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					bool u_xlatb2;
					float u_xlat9;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.w = u_xlat0.x * vs_COLOR0.w;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb2 = u_xlat1.w>=_Cutout;
					    u_xlat1 = u_xlat1 + u_xlat1;
					    u_xlat1 = u_xlat1 * _TintColor;
					    u_xlat2.x = u_xlatb2 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat1.w * u_xlat2.x;
					    u_xlat0.xyz = vs_COLOR0.xyz;
					    u_xlat0 = u_xlat0 * u_xlat1;
					    u_xlat9 = u_xlat0.w;
					    u_xlat9 = clamp(u_xlat9, 0.0, 1.0);
					    u_xlat0.w = u_xlat9 * vs_TEXCOORD4;
					    u_xlat1 = u_xlat0 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat0.xyz = u_xlat0.www * u_xlat1.xyz;
					    SV_Target0.w = u_xlat0.w * u_xlat1.w + 0.5;
					    u_xlat9 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat9 = (-u_xlat9) + 1.0;
					    u_xlat9 = u_xlat9 * _ProjectionParams.z;
					    u_xlat9 = max(u_xlat9, 0.0);
					    u_xlat9 = u_xlat9 * unity_FogParams.x;
					    u_xlat9 = u_xlat9 * (-u_xlat9);
					    u_xlat9 = exp2(u_xlat9);
					    SV_Target0.xyz = vec3(u_xlat9) * u_xlat0.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendMul2" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlat0.xyz = u_xlat0.xyz + u_xlat0.xyz;
					    u_xlat0.xyz = u_xlat0.xyz * _TintColor.xyz;
					    u_xlat1.xyz = u_xlat0.xyz * vs_COLOR0.xyz;
					    u_xlat0.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlatb0 = u_xlat0.w>=u_xlat0.x;
					    u_xlat1.w = u_xlatb0 ? 1.0 : float(0.0);
					    u_xlat0 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    SV_Target0 = u_xlat1.wwww * u_xlat0 + vec4(0.5, 0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlat0.xyz = u_xlat0.xyz + u_xlat0.xyz;
					    u_xlat0.xyz = u_xlat0.xyz * _TintColor.xyz;
					    u_xlat1.xyz = u_xlat0.xyz * vs_COLOR0.xyz;
					    u_xlat0.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlatb0 = u_xlat0.w>=u_xlat0.x;
					    u_xlat1.w = u_xlatb0 ? 1.0 : float(0.0);
					    u_xlat0 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    SV_Target0 = u_xlat1.wwww * u_xlat0 + vec4(0.5, 0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[7];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb0 = u_xlat1.w>=u_xlat0.x;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat1.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat1.w = u_xlatb0 ? 1.0 : float(0.0);
					    u_xlat0 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    SV_Target0 = u_xlat1.wwww * u_xlat0 + vec4(0.5, 0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[6];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb0 = u_xlat1.w>=u_xlat0.x;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat1.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat1.w = u_xlatb0 ? 1.0 : float(0.0);
					    u_xlat0 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    SV_Target0 = u_xlat1.wwww * u_xlat0 + vec4(0.5, 0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat2.w = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1 = u_xlat2 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat2.w = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1 = u_xlat2 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					float u_xlat9;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlat0.xyz = u_xlat0.xyz + u_xlat0.xyz;
					    u_xlat0.xyz = u_xlat0.xyz * _TintColor.xyz;
					    u_xlat1.xyz = u_xlat0.xyz * vs_COLOR0.xyz;
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat2 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat2.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlatb0 = u_xlat0.w>=u_xlat0.x;
					    u_xlat1.w = u_xlatb0 ? 1.0 : float(0.0);
					    u_xlat0 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat0.xyz = u_xlat0.xyz * u_xlat1.www;
					    SV_Target0.w = u_xlat1.w * u_xlat0.w + 0.5;
					    u_xlat9 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat9 = (-u_xlat9) + 1.0;
					    u_xlat9 = u_xlat9 * _ProjectionParams.z;
					    u_xlat9 = max(u_xlat9, 0.0);
					    u_xlat9 = u_xlat9 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat9 = clamp(u_xlat9, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat9) * u_xlat0.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					float u_xlat9;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlat0.xyz = u_xlat0.xyz + u_xlat0.xyz;
					    u_xlat0.xyz = u_xlat0.xyz * _TintColor.xyz;
					    u_xlat1.xyz = u_xlat0.xyz * vs_COLOR0.xyz;
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat2 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat2.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlatb0 = u_xlat0.w>=u_xlat0.x;
					    u_xlat1.w = u_xlatb0 ? 1.0 : float(0.0);
					    u_xlat0 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat0.xyz = u_xlat0.xyz * u_xlat1.www;
					    SV_Target0.w = u_xlat1.w * u_xlat0.w + 0.5;
					    u_xlat9 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat9 = (-u_xlat9) + 1.0;
					    u_xlat9 = u_xlat9 * _ProjectionParams.z;
					    u_xlat9 = max(u_xlat9, 0.0);
					    u_xlat9 = u_xlat9 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat9 = clamp(u_xlat9, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat9) * u_xlat0.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat2.w = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1 = u_xlat2 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat2.w = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1 = u_xlat2 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec3 u_xlat4;
					bool u_xlatb4;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat4.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat4.xyz = u_xlat4.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat4.xyz * vs_COLOR0.xyz;
					    u_xlat4.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat3 = texture(_CameraDepthTexture, u_xlat4.xy);
					    u_xlat4.x = _ZBufferParams.z * u_xlat3.x + _ZBufferParams.w;
					    u_xlat4.x = float(1.0) / u_xlat4.x;
					    u_xlat4.x = u_xlat4.x + (-vs_TEXCOORD3.z);
					    u_xlat4.x = u_xlat4.x * _InvFade;
					    u_xlat4.x = clamp(u_xlat4.x, 0.0, 1.0);
					    u_xlat4.x = (-vs_COLOR0.w) * u_xlat4.x + 1.0;
					    u_xlat4.x = u_xlat4.x + _Cutout;
					    u_xlatb4 = u_xlat1.w>=u_xlat4.x;
					    u_xlat2.w = u_xlatb4 ? 1.0 : float(0.0);
					    u_xlat1 = u_xlat2 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat4.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat4.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec3 u_xlat4;
					bool u_xlatb4;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat4.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat4.xyz = u_xlat4.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat4.xyz * vs_COLOR0.xyz;
					    u_xlat4.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat3 = texture(_CameraDepthTexture, u_xlat4.xy);
					    u_xlat4.x = _ZBufferParams.z * u_xlat3.x + _ZBufferParams.w;
					    u_xlat4.x = float(1.0) / u_xlat4.x;
					    u_xlat4.x = u_xlat4.x + (-vs_TEXCOORD3.z);
					    u_xlat4.x = u_xlat4.x * _InvFade;
					    u_xlat4.x = clamp(u_xlat4.x, 0.0, 1.0);
					    u_xlat4.x = (-vs_COLOR0.w) * u_xlat4.x + 1.0;
					    u_xlat4.x = u_xlat4.x + _Cutout;
					    u_xlatb4 = u_xlat1.w>=u_xlat4.x;
					    u_xlat2.w = u_xlatb4 ? 1.0 : float(0.0);
					    u_xlat1 = u_xlat2 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat4.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat4.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat2.w = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1 = u_xlat2 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat2.w = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat1 = u_xlat2 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec3 u_xlat4;
					bool u_xlatb4;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat4.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat4.xyz = u_xlat4.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat4.xyz * vs_COLOR0.xyz;
					    u_xlat4.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat3 = texture(_CameraDepthTexture, u_xlat4.xy);
					    u_xlat4.x = _ZBufferParams.z * u_xlat3.x + _ZBufferParams.w;
					    u_xlat4.x = float(1.0) / u_xlat4.x;
					    u_xlat4.x = u_xlat4.x + (-vs_TEXCOORD3.z);
					    u_xlat4.x = u_xlat4.x * _InvFade;
					    u_xlat4.x = clamp(u_xlat4.x, 0.0, 1.0);
					    u_xlat4.x = (-vs_COLOR0.w) * u_xlat4.x + 1.0;
					    u_xlat4.x = u_xlat4.x + _Cutout;
					    u_xlatb4 = u_xlat1.w>=u_xlat4.x;
					    u_xlat2.w = u_xlatb4 ? 1.0 : float(0.0);
					    u_xlat1 = u_xlat2 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat4.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat4.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec3 u_xlat4;
					bool u_xlatb4;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat4.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat4.xyz = u_xlat4.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat4.xyz * vs_COLOR0.xyz;
					    u_xlat4.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat3 = texture(_CameraDepthTexture, u_xlat4.xy);
					    u_xlat4.x = _ZBufferParams.z * u_xlat3.x + _ZBufferParams.w;
					    u_xlat4.x = float(1.0) / u_xlat4.x;
					    u_xlat4.x = u_xlat4.x + (-vs_TEXCOORD3.z);
					    u_xlat4.x = u_xlat4.x * _InvFade;
					    u_xlat4.x = clamp(u_xlat4.x, 0.0, 1.0);
					    u_xlat4.x = (-vs_COLOR0.w) * u_xlat4.x + 1.0;
					    u_xlat4.x = u_xlat4.x + _Cutout;
					    u_xlatb4 = u_xlat1.w>=u_xlat4.x;
					    u_xlat2.w = u_xlatb4 ? 1.0 : float(0.0);
					    u_xlat1 = u_xlat2 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat4.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat4.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendMul2" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[7];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb0 = u_xlat1.w>=u_xlat0.x;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat1.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat1.w = u_xlatb0 ? 1.0 : float(0.0);
					    u_xlat0 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    SV_Target0 = u_xlat1.wwww * u_xlat0 + vec4(0.5, 0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[6];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb0 = u_xlat1.w>=u_xlat0.x;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat1.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat1.w = u_xlatb0 ? 1.0 : float(0.0);
					    u_xlat0 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    SV_Target0 = u_xlat1.wwww * u_xlat0 + vec4(0.5, 0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[7];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb0 = u_xlat1.w>=u_xlat0.x;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat1.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat1.w = u_xlatb0 ? 1.0 : float(0.0);
					    u_xlat0 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    SV_Target0 = u_xlat1.wwww * u_xlat0 + vec4(0.5, 0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[6];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb0 = u_xlat1.w>=u_xlat0.x;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat1.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat1.w = u_xlatb0 ? 1.0 : float(0.0);
					    u_xlat0 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    SV_Target0 = u_xlat1.wwww * u_xlat0 + vec4(0.5, 0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					float u_xlat9;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlat0.xyz = u_xlat0.xyz + u_xlat0.xyz;
					    u_xlat0.xyz = u_xlat0.xyz * _TintColor.xyz;
					    u_xlat1.xyz = u_xlat0.xyz * vs_COLOR0.xyz;
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat2 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat2.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlatb0 = u_xlat0.w>=u_xlat0.x;
					    u_xlat1.w = u_xlatb0 ? 1.0 : float(0.0);
					    u_xlat0 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat0.xyz = u_xlat0.xyz * u_xlat1.www;
					    SV_Target0.w = u_xlat1.w * u_xlat0.w + 0.5;
					    u_xlat9 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat9 = (-u_xlat9) + 1.0;
					    u_xlat9 = u_xlat9 * _ProjectionParams.z;
					    u_xlat9 = max(u_xlat9, 0.0);
					    u_xlat9 = u_xlat9 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat9 = clamp(u_xlat9, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat9) * u_xlat0.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					float u_xlat9;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlat0.xyz = u_xlat0.xyz + u_xlat0.xyz;
					    u_xlat0.xyz = u_xlat0.xyz * _TintColor.xyz;
					    u_xlat1.xyz = u_xlat0.xyz * vs_COLOR0.xyz;
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat2 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat2.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlatb0 = u_xlat0.w>=u_xlat0.x;
					    u_xlat1.w = u_xlatb0 ? 1.0 : float(0.0);
					    u_xlat0 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat0.xyz = u_xlat0.xyz * u_xlat1.www;
					    SV_Target0.w = u_xlat1.w * u_xlat0.w + 0.5;
					    u_xlat9 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat9 = (-u_xlat9) + 1.0;
					    u_xlat9 = u_xlat9 * _ProjectionParams.z;
					    u_xlat9 = max(u_xlat9, 0.0);
					    u_xlat9 = u_xlat9 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat9 = clamp(u_xlat9, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat9) * u_xlat0.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					float u_xlat9;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlat0.xyz = u_xlat0.xyz + u_xlat0.xyz;
					    u_xlat0.xyz = u_xlat0.xyz * _TintColor.xyz;
					    u_xlat1.xyz = u_xlat0.xyz * vs_COLOR0.xyz;
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat2 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat2.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlatb0 = u_xlat0.w>=u_xlat0.x;
					    u_xlat1.w = u_xlatb0 ? 1.0 : float(0.0);
					    u_xlat0 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat0.xyz = u_xlat0.xyz * u_xlat1.www;
					    SV_Target0.w = u_xlat1.w * u_xlat0.w + 0.5;
					    u_xlat9 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat9 = (-u_xlat9) + 1.0;
					    u_xlat9 = u_xlat9 * _ProjectionParams.z;
					    u_xlat9 = max(u_xlat9, 0.0);
					    u_xlat9 = u_xlat9 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat9 = clamp(u_xlat9, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat9) * u_xlat0.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					float u_xlat9;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlat0.xyz = u_xlat0.xyz + u_xlat0.xyz;
					    u_xlat0.xyz = u_xlat0.xyz * _TintColor.xyz;
					    u_xlat1.xyz = u_xlat0.xyz * vs_COLOR0.xyz;
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat2 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat2.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlatb0 = u_xlat0.w>=u_xlat0.x;
					    u_xlat1.w = u_xlatb0 ? 1.0 : float(0.0);
					    u_xlat0 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat0.xyz = u_xlat0.xyz * u_xlat1.www;
					    SV_Target0.w = u_xlat1.w * u_xlat0.w + 0.5;
					    u_xlat9 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat9 = (-u_xlat9) + 1.0;
					    u_xlat9 = u_xlat9 * _ProjectionParams.z;
					    u_xlat9 = max(u_xlat9, 0.0);
					    u_xlat9 = u_xlat9 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat9 = clamp(u_xlat9, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat9) * u_xlat0.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec3 u_xlat4;
					bool u_xlatb4;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat4.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat4.xyz = u_xlat4.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat4.xyz * vs_COLOR0.xyz;
					    u_xlat4.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat3 = texture(_CameraDepthTexture, u_xlat4.xy);
					    u_xlat4.x = _ZBufferParams.z * u_xlat3.x + _ZBufferParams.w;
					    u_xlat4.x = float(1.0) / u_xlat4.x;
					    u_xlat4.x = u_xlat4.x + (-vs_TEXCOORD3.z);
					    u_xlat4.x = u_xlat4.x * _InvFade;
					    u_xlat4.x = clamp(u_xlat4.x, 0.0, 1.0);
					    u_xlat4.x = (-vs_COLOR0.w) * u_xlat4.x + 1.0;
					    u_xlat4.x = u_xlat4.x + _Cutout;
					    u_xlatb4 = u_xlat1.w>=u_xlat4.x;
					    u_xlat2.w = u_xlatb4 ? 1.0 : float(0.0);
					    u_xlat1 = u_xlat2 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat4.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat4.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec3 u_xlat4;
					bool u_xlatb4;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat4.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat4.xyz = u_xlat4.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat4.xyz * vs_COLOR0.xyz;
					    u_xlat4.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat3 = texture(_CameraDepthTexture, u_xlat4.xy);
					    u_xlat4.x = _ZBufferParams.z * u_xlat3.x + _ZBufferParams.w;
					    u_xlat4.x = float(1.0) / u_xlat4.x;
					    u_xlat4.x = u_xlat4.x + (-vs_TEXCOORD3.z);
					    u_xlat4.x = u_xlat4.x * _InvFade;
					    u_xlat4.x = clamp(u_xlat4.x, 0.0, 1.0);
					    u_xlat4.x = (-vs_COLOR0.w) * u_xlat4.x + 1.0;
					    u_xlat4.x = u_xlat4.x + _Cutout;
					    u_xlatb4 = u_xlat1.w>=u_xlat4.x;
					    u_xlat2.w = u_xlatb4 ? 1.0 : float(0.0);
					    u_xlat1 = u_xlat2 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat4.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat4.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec3 u_xlat4;
					bool u_xlatb4;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat4.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat4.xyz = u_xlat4.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat4.xyz * vs_COLOR0.xyz;
					    u_xlat4.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat3 = texture(_CameraDepthTexture, u_xlat4.xy);
					    u_xlat4.x = _ZBufferParams.z * u_xlat3.x + _ZBufferParams.w;
					    u_xlat4.x = float(1.0) / u_xlat4.x;
					    u_xlat4.x = u_xlat4.x + (-vs_TEXCOORD3.z);
					    u_xlat4.x = u_xlat4.x * _InvFade;
					    u_xlat4.x = clamp(u_xlat4.x, 0.0, 1.0);
					    u_xlat4.x = (-vs_COLOR0.w) * u_xlat4.x + 1.0;
					    u_xlat4.x = u_xlat4.x + _Cutout;
					    u_xlatb4 = u_xlat1.w>=u_xlat4.x;
					    u_xlat2.w = u_xlatb4 ? 1.0 : float(0.0);
					    u_xlat1 = u_xlat2 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat4.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat4.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec3 u_xlat4;
					bool u_xlatb4;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat4.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat4.xyz = u_xlat4.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat4.xyz * vs_COLOR0.xyz;
					    u_xlat4.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat3 = texture(_CameraDepthTexture, u_xlat4.xy);
					    u_xlat4.x = _ZBufferParams.z * u_xlat3.x + _ZBufferParams.w;
					    u_xlat4.x = float(1.0) / u_xlat4.x;
					    u_xlat4.x = u_xlat4.x + (-vs_TEXCOORD3.z);
					    u_xlat4.x = u_xlat4.x * _InvFade;
					    u_xlat4.x = clamp(u_xlat4.x, 0.0, 1.0);
					    u_xlat4.x = (-vs_COLOR0.w) * u_xlat4.x + 1.0;
					    u_xlat4.x = u_xlat4.x + _Cutout;
					    u_xlatb4 = u_xlat1.w>=u_xlat4.x;
					    u_xlat2.w = u_xlatb4 ? 1.0 : float(0.0);
					    u_xlat1 = u_xlat2 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat4.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat4.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec3 u_xlat4;
					bool u_xlatb4;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat4.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat4.xyz = u_xlat4.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat4.xyz * vs_COLOR0.xyz;
					    u_xlat4.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat3 = texture(_CameraDepthTexture, u_xlat4.xy);
					    u_xlat4.x = _ZBufferParams.z * u_xlat3.x + _ZBufferParams.w;
					    u_xlat4.x = float(1.0) / u_xlat4.x;
					    u_xlat4.x = u_xlat4.x + (-vs_TEXCOORD3.z);
					    u_xlat4.x = u_xlat4.x * _InvFade;
					    u_xlat4.x = clamp(u_xlat4.x, 0.0, 1.0);
					    u_xlat4.x = (-vs_COLOR0.w) * u_xlat4.x + 1.0;
					    u_xlat4.x = u_xlat4.x + _Cutout;
					    u_xlatb4 = u_xlat1.w>=u_xlat4.x;
					    u_xlat2.w = u_xlatb4 ? 1.0 : float(0.0);
					    u_xlat1 = u_xlat2 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat4.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat4.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec3 u_xlat4;
					bool u_xlatb4;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat4.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat4.xyz = u_xlat4.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat4.xyz * vs_COLOR0.xyz;
					    u_xlat4.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat3 = texture(_CameraDepthTexture, u_xlat4.xy);
					    u_xlat4.x = _ZBufferParams.z * u_xlat3.x + _ZBufferParams.w;
					    u_xlat4.x = float(1.0) / u_xlat4.x;
					    u_xlat4.x = u_xlat4.x + (-vs_TEXCOORD3.z);
					    u_xlat4.x = u_xlat4.x * _InvFade;
					    u_xlat4.x = clamp(u_xlat4.x, 0.0, 1.0);
					    u_xlat4.x = (-vs_COLOR0.w) * u_xlat4.x + 1.0;
					    u_xlat4.x = u_xlat4.x + _Cutout;
					    u_xlatb4 = u_xlat1.w>=u_xlat4.x;
					    u_xlat2.w = u_xlatb4 ? 1.0 : float(0.0);
					    u_xlat1 = u_xlat2 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat4.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat4.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec3 u_xlat4;
					bool u_xlatb4;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat4.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat4.xyz = u_xlat4.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat4.xyz * vs_COLOR0.xyz;
					    u_xlat4.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat3 = texture(_CameraDepthTexture, u_xlat4.xy);
					    u_xlat4.x = _ZBufferParams.z * u_xlat3.x + _ZBufferParams.w;
					    u_xlat4.x = float(1.0) / u_xlat4.x;
					    u_xlat4.x = u_xlat4.x + (-vs_TEXCOORD3.z);
					    u_xlat4.x = u_xlat4.x * _InvFade;
					    u_xlat4.x = clamp(u_xlat4.x, 0.0, 1.0);
					    u_xlat4.x = (-vs_COLOR0.w) * u_xlat4.x + 1.0;
					    u_xlat4.x = u_xlat4.x + _Cutout;
					    u_xlatb4 = u_xlat1.w>=u_xlat4.x;
					    u_xlat2.w = u_xlatb4 ? 1.0 : float(0.0);
					    u_xlat1 = u_xlat2 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat4.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat4.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_OFF" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec3 u_xlat4;
					bool u_xlatb4;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat4.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat4.xyz = u_xlat4.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat4.xyz * vs_COLOR0.xyz;
					    u_xlat4.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat3 = texture(_CameraDepthTexture, u_xlat4.xy);
					    u_xlat4.x = _ZBufferParams.z * u_xlat3.x + _ZBufferParams.w;
					    u_xlat4.x = float(1.0) / u_xlat4.x;
					    u_xlat4.x = u_xlat4.x + (-vs_TEXCOORD3.z);
					    u_xlat4.x = u_xlat4.x * _InvFade;
					    u_xlat4.x = clamp(u_xlat4.x, 0.0, 1.0);
					    u_xlat4.x = (-vs_COLOR0.w) * u_xlat4.x + 1.0;
					    u_xlat4.x = u_xlat4.x + _Cutout;
					    u_xlatb4 = u_xlat1.w>=u_xlat4.x;
					    u_xlat2.w = u_xlatb4 ? 1.0 : float(0.0);
					    u_xlat1 = u_xlat2 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat4.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat4.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendMul2" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlat0.xyz = u_xlat0.xyz + u_xlat0.xyz;
					    u_xlat0.xyz = u_xlat0.xyz * _TintColor.xyz;
					    u_xlat1.xyz = u_xlat0.xyz * vs_COLOR0.xyz;
					    u_xlat0.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlatb0 = u_xlat0.w>=u_xlat0.x;
					    u_xlat0.x = u_xlatb0 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat0.x * vs_TEXCOORD4;
					    u_xlat0 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    SV_Target0 = u_xlat1.wwww * u_xlat0 + vec4(0.5, 0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlat0.xyz = u_xlat0.xyz + u_xlat0.xyz;
					    u_xlat0.xyz = u_xlat0.xyz * _TintColor.xyz;
					    u_xlat1.xyz = u_xlat0.xyz * vs_COLOR0.xyz;
					    u_xlat0.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlatb0 = u_xlat0.w>=u_xlat0.x;
					    u_xlat0.x = u_xlatb0 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat0.x * vs_TEXCOORD4;
					    u_xlat0 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    SV_Target0 = u_xlat1.wwww * u_xlat0 + vec4(0.5, 0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[7];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb0 = u_xlat1.w>=u_xlat0.x;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat1.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat0.x = u_xlatb0 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat0.x * vs_TEXCOORD4;
					    u_xlat0 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    SV_Target0 = u_xlat1.wwww * u_xlat0 + vec4(0.5, 0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[6];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb0 = u_xlat1.w>=u_xlat0.x;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat1.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat0.x = u_xlatb0 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat0.x * vs_TEXCOORD4;
					    u_xlat0 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    SV_Target0 = u_xlat1.wwww * u_xlat0 + vec4(0.5, 0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat2.w = u_xlat3.x * vs_TEXCOORD4;
					    u_xlat1 = u_xlat2 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat0 = clamp(u_xlat0, 0.0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat2.w = u_xlat3.x * vs_TEXCOORD4;
					    u_xlat1 = u_xlat2 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					float u_xlat9;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlat0.xyz = u_xlat0.xyz + u_xlat0.xyz;
					    u_xlat0.xyz = u_xlat0.xyz * _TintColor.xyz;
					    u_xlat1.xyz = u_xlat0.xyz * vs_COLOR0.xyz;
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat2 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat2.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlatb0 = u_xlat0.w>=u_xlat0.x;
					    u_xlat0.x = u_xlatb0 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat0.x * vs_TEXCOORD4;
					    u_xlat0 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat0.xyz = u_xlat0.xyz * u_xlat1.www;
					    SV_Target0.w = u_xlat1.w * u_xlat0.w + 0.5;
					    u_xlat9 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat9 = (-u_xlat9) + 1.0;
					    u_xlat9 = u_xlat9 * _ProjectionParams.z;
					    u_xlat9 = max(u_xlat9, 0.0);
					    u_xlat9 = u_xlat9 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat9 = clamp(u_xlat9, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat9) * u_xlat0.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					float u_xlat9;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlat0.xyz = u_xlat0.xyz + u_xlat0.xyz;
					    u_xlat0.xyz = u_xlat0.xyz * _TintColor.xyz;
					    u_xlat1.xyz = u_xlat0.xyz * vs_COLOR0.xyz;
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat2 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat2.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlatb0 = u_xlat0.w>=u_xlat0.x;
					    u_xlat0.x = u_xlatb0 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat0.x * vs_TEXCOORD4;
					    u_xlat0 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat0.xyz = u_xlat0.xyz * u_xlat1.www;
					    SV_Target0.w = u_xlat1.w * u_xlat0.w + 0.5;
					    u_xlat9 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat9 = (-u_xlat9) + 1.0;
					    u_xlat9 = u_xlat9 * _ProjectionParams.z;
					    u_xlat9 = max(u_xlat9, 0.0);
					    u_xlat9 = u_xlat9 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat9 = clamp(u_xlat9, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat9) * u_xlat0.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat2.w = u_xlat3.x * vs_TEXCOORD4;
					    u_xlat1 = u_xlat2 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat2.w = u_xlat3.x * vs_TEXCOORD4;
					    u_xlat1 = u_xlat2 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec3 u_xlat4;
					bool u_xlatb4;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat4.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat4.xyz = u_xlat4.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat4.xyz * vs_COLOR0.xyz;
					    u_xlat4.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat3 = texture(_CameraDepthTexture, u_xlat4.xy);
					    u_xlat4.x = _ZBufferParams.z * u_xlat3.x + _ZBufferParams.w;
					    u_xlat4.x = float(1.0) / u_xlat4.x;
					    u_xlat4.x = u_xlat4.x + (-vs_TEXCOORD3.z);
					    u_xlat4.x = u_xlat4.x * _InvFade;
					    u_xlat4.x = clamp(u_xlat4.x, 0.0, 1.0);
					    u_xlat4.x = (-vs_COLOR0.w) * u_xlat4.x + 1.0;
					    u_xlat4.x = u_xlat4.x + _Cutout;
					    u_xlatb4 = u_xlat1.w>=u_xlat4.x;
					    u_xlat4.x = u_xlatb4 ? 1.0 : float(0.0);
					    u_xlat2.w = u_xlat4.x * vs_TEXCOORD4;
					    u_xlat1 = u_xlat2 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat4.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat4.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec3 u_xlat4;
					bool u_xlatb4;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat4.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat4.xyz = u_xlat4.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat4.xyz * vs_COLOR0.xyz;
					    u_xlat4.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat3 = texture(_CameraDepthTexture, u_xlat4.xy);
					    u_xlat4.x = _ZBufferParams.z * u_xlat3.x + _ZBufferParams.w;
					    u_xlat4.x = float(1.0) / u_xlat4.x;
					    u_xlat4.x = u_xlat4.x + (-vs_TEXCOORD3.z);
					    u_xlat4.x = u_xlat4.x * _InvFade;
					    u_xlat4.x = clamp(u_xlat4.x, 0.0, 1.0);
					    u_xlat4.x = (-vs_COLOR0.w) * u_xlat4.x + 1.0;
					    u_xlat4.x = u_xlat4.x + _Cutout;
					    u_xlatb4 = u_xlat1.w>=u_xlat4.x;
					    u_xlat4.x = u_xlatb4 ? 1.0 : float(0.0);
					    u_xlat2.w = u_xlat4.x * vs_TEXCOORD4;
					    u_xlat1 = u_xlat2 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat4.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat4.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat2.w = u_xlat3.x * vs_TEXCOORD4;
					    u_xlat1 = u_xlat2 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					bool u_xlatb3;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat3.x = (-vs_COLOR0.w) + 1.0;
					    u_xlat3.x = u_xlat3.x + _Cutout;
					    u_xlatb3 = u_xlat1.w>=u_xlat3.x;
					    u_xlat3.x = u_xlatb3 ? 1.0 : float(0.0);
					    u_xlat2.w = u_xlat3.x * vs_TEXCOORD4;
					    u_xlat1 = u_xlat2 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat3.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat3.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec3 u_xlat4;
					bool u_xlatb4;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat4.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat4.xyz = u_xlat4.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat4.xyz * vs_COLOR0.xyz;
					    u_xlat4.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat3 = texture(_CameraDepthTexture, u_xlat4.xy);
					    u_xlat4.x = _ZBufferParams.z * u_xlat3.x + _ZBufferParams.w;
					    u_xlat4.x = float(1.0) / u_xlat4.x;
					    u_xlat4.x = u_xlat4.x + (-vs_TEXCOORD3.z);
					    u_xlat4.x = u_xlat4.x * _InvFade;
					    u_xlat4.x = clamp(u_xlat4.x, 0.0, 1.0);
					    u_xlat4.x = (-vs_COLOR0.w) * u_xlat4.x + 1.0;
					    u_xlat4.x = u_xlat4.x + _Cutout;
					    u_xlatb4 = u_xlat1.w>=u_xlat4.x;
					    u_xlat4.x = u_xlatb4 ? 1.0 : float(0.0);
					    u_xlat2.w = u_xlat4.x * vs_TEXCOORD4;
					    u_xlat1 = u_xlat2 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat4.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat4.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec3 u_xlat4;
					bool u_xlatb4;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat4.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat4.xyz = u_xlat4.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat4.xyz * vs_COLOR0.xyz;
					    u_xlat4.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat3 = texture(_CameraDepthTexture, u_xlat4.xy);
					    u_xlat4.x = _ZBufferParams.z * u_xlat3.x + _ZBufferParams.w;
					    u_xlat4.x = float(1.0) / u_xlat4.x;
					    u_xlat4.x = u_xlat4.x + (-vs_TEXCOORD3.z);
					    u_xlat4.x = u_xlat4.x * _InvFade;
					    u_xlat4.x = clamp(u_xlat4.x, 0.0, 1.0);
					    u_xlat4.x = (-vs_COLOR0.w) * u_xlat4.x + 1.0;
					    u_xlat4.x = u_xlat4.x + _Cutout;
					    u_xlatb4 = u_xlat1.w>=u_xlat4.x;
					    u_xlat4.x = u_xlatb4 ? 1.0 : float(0.0);
					    u_xlat2.w = u_xlat4.x * vs_TEXCOORD4;
					    u_xlat1 = u_xlat2 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat4.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat4.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "BlendMul2" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[7];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb0 = u_xlat1.w>=u_xlat0.x;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat1.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat0.x = u_xlatb0 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat0.x * vs_TEXCOORD4;
					    u_xlat0 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    SV_Target0 = u_xlat1.wwww * u_xlat0 + vec4(0.5, 0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[6];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb0 = u_xlat1.w>=u_xlat0.x;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat1.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat0.x = u_xlatb0 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat0.x * vs_TEXCOORD4;
					    u_xlat0 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    SV_Target0 = u_xlat1.wwww * u_xlat0 + vec4(0.5, 0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[7];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb0 = u_xlat1.w>=u_xlat0.x;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat1.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat0.x = u_xlatb0 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat0.x * vs_TEXCOORD4;
					    u_xlat0 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    SV_Target0 = u_xlat1.wwww * u_xlat0 + vec4(0.5, 0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[6];
						vec4 _ZBufferParams;
						vec4 unused_1_2;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat0 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat0.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlatb0 = u_xlat1.w>=u_xlat0.x;
					    u_xlat3.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat3.xyz = u_xlat3.xyz * _TintColor.xyz;
					    u_xlat1.xyz = u_xlat3.xyz * vs_COLOR0.xyz;
					    u_xlat0.x = u_xlatb0 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat0.x * vs_TEXCOORD4;
					    u_xlat0 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    SV_Target0 = u_xlat1.wwww * u_xlat0 + vec4(0.5, 0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					float u_xlat9;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlat0.xyz = u_xlat0.xyz + u_xlat0.xyz;
					    u_xlat0.xyz = u_xlat0.xyz * _TintColor.xyz;
					    u_xlat1.xyz = u_xlat0.xyz * vs_COLOR0.xyz;
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat2 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat2.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlatb0 = u_xlat0.w>=u_xlat0.x;
					    u_xlat0.x = u_xlatb0 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat0.x * vs_TEXCOORD4;
					    u_xlat0 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat0.xyz = u_xlat0.xyz * u_xlat1.www;
					    SV_Target0.w = u_xlat1.w * u_xlat0.w + 0.5;
					    u_xlat9 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat9 = (-u_xlat9) + 1.0;
					    u_xlat9 = u_xlat9 * _ProjectionParams.z;
					    u_xlat9 = max(u_xlat9, 0.0);
					    u_xlat9 = u_xlat9 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat9 = clamp(u_xlat9, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat9) * u_xlat0.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					float u_xlat9;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlat0.xyz = u_xlat0.xyz + u_xlat0.xyz;
					    u_xlat0.xyz = u_xlat0.xyz * _TintColor.xyz;
					    u_xlat1.xyz = u_xlat0.xyz * vs_COLOR0.xyz;
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat2 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat2.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlatb0 = u_xlat0.w>=u_xlat0.x;
					    u_xlat0.x = u_xlatb0 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat0.x * vs_TEXCOORD4;
					    u_xlat0 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat0.xyz = u_xlat0.xyz * u_xlat1.www;
					    SV_Target0.w = u_xlat1.w * u_xlat0.w + 0.5;
					    u_xlat9 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat9 = (-u_xlat9) + 1.0;
					    u_xlat9 = u_xlat9 * _ProjectionParams.z;
					    u_xlat9 = max(u_xlat9, 0.0);
					    u_xlat9 = u_xlat9 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat9 = clamp(u_xlat9, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat9) * u_xlat0.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					float u_xlat9;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlat0.xyz = u_xlat0.xyz + u_xlat0.xyz;
					    u_xlat0.xyz = u_xlat0.xyz * _TintColor.xyz;
					    u_xlat1.xyz = u_xlat0.xyz * vs_COLOR0.xyz;
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat2 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat2.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlatb0 = u_xlat0.w>=u_xlat0.x;
					    u_xlat0.x = u_xlatb0 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat0.x * vs_TEXCOORD4;
					    u_xlat0 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat0.xyz = u_xlat0.xyz * u_xlat1.www;
					    SV_Target0.w = u_xlat1.w * u_xlat0.w + 0.5;
					    u_xlat9 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat9 = (-u_xlat9) + 1.0;
					    u_xlat9 = u_xlat9 * _ProjectionParams.z;
					    u_xlat9 = max(u_xlat9, 0.0);
					    u_xlat9 = u_xlat9 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat9 = clamp(u_xlat9, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat9) * u_xlat0.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_LINEAR" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					bool u_xlatb0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					float u_xlat9;
					void main()
					{
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0 = u_xlat0 + (-u_xlat1);
					    u_xlat0 = vec4(vs_TEXCOORD1) * u_xlat0 + u_xlat1;
					    u_xlat0.xyz = u_xlat0.xyz + u_xlat0.xyz;
					    u_xlat0.xyz = u_xlat0.xyz * _TintColor.xyz;
					    u_xlat1.xyz = u_xlat0.xyz * vs_COLOR0.xyz;
					    u_xlat0.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat2 = texture(_CameraDepthTexture, u_xlat0.xy);
					    u_xlat0.x = _ZBufferParams.z * u_xlat2.x + _ZBufferParams.w;
					    u_xlat0.x = float(1.0) / u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + (-vs_TEXCOORD3.z);
					    u_xlat0.x = u_xlat0.x * _InvFade;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = (-vs_COLOR0.w) * u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x + _Cutout;
					    u_xlatb0 = u_xlat0.w>=u_xlat0.x;
					    u_xlat0.x = u_xlatb0 ? 1.0 : float(0.0);
					    u_xlat1.w = u_xlat0.x * vs_TEXCOORD4;
					    u_xlat0 = u_xlat1 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat0.xyz = u_xlat0.xyz * u_xlat1.www;
					    SV_Target0.w = u_xlat1.w * u_xlat0.w + 0.5;
					    u_xlat9 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat9 = (-u_xlat9) + 1.0;
					    u_xlat9 = u_xlat9 * _ProjectionParams.z;
					    u_xlat9 = max(u_xlat9, 0.0);
					    u_xlat9 = u_xlat9 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat9 = clamp(u_xlat9, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat9) * u_xlat0.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec3 u_xlat4;
					bool u_xlatb4;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat4.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat4.xyz = u_xlat4.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat4.xyz * vs_COLOR0.xyz;
					    u_xlat4.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat3 = texture(_CameraDepthTexture, u_xlat4.xy);
					    u_xlat4.x = _ZBufferParams.z * u_xlat3.x + _ZBufferParams.w;
					    u_xlat4.x = float(1.0) / u_xlat4.x;
					    u_xlat4.x = u_xlat4.x + (-vs_TEXCOORD3.z);
					    u_xlat4.x = u_xlat4.x * _InvFade;
					    u_xlat4.x = clamp(u_xlat4.x, 0.0, 1.0);
					    u_xlat4.x = (-vs_COLOR0.w) * u_xlat4.x + 1.0;
					    u_xlat4.x = u_xlat4.x + _Cutout;
					    u_xlatb4 = u_xlat1.w>=u_xlat4.x;
					    u_xlat4.x = u_xlatb4 ? 1.0 : float(0.0);
					    u_xlat2.w = u_xlat4.x * vs_TEXCOORD4;
					    u_xlat1 = u_xlat2 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat4.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat4.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec3 u_xlat4;
					bool u_xlatb4;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat4.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat4.xyz = u_xlat4.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat4.xyz * vs_COLOR0.xyz;
					    u_xlat4.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat3 = texture(_CameraDepthTexture, u_xlat4.xy);
					    u_xlat4.x = _ZBufferParams.z * u_xlat3.x + _ZBufferParams.w;
					    u_xlat4.x = float(1.0) / u_xlat4.x;
					    u_xlat4.x = u_xlat4.x + (-vs_TEXCOORD3.z);
					    u_xlat4.x = u_xlat4.x * _InvFade;
					    u_xlat4.x = clamp(u_xlat4.x, 0.0, 1.0);
					    u_xlat4.x = (-vs_COLOR0.w) * u_xlat4.x + 1.0;
					    u_xlat4.x = u_xlat4.x + _Cutout;
					    u_xlatb4 = u_xlat1.w>=u_xlat4.x;
					    u_xlat4.x = u_xlatb4 ? 1.0 : float(0.0);
					    u_xlat2.w = u_xlat4.x * vs_TEXCOORD4;
					    u_xlat1 = u_xlat2 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat4.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat4.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec3 u_xlat4;
					bool u_xlatb4;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat4.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat4.xyz = u_xlat4.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat4.xyz * vs_COLOR0.xyz;
					    u_xlat4.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat3 = texture(_CameraDepthTexture, u_xlat4.xy);
					    u_xlat4.x = _ZBufferParams.z * u_xlat3.x + _ZBufferParams.w;
					    u_xlat4.x = float(1.0) / u_xlat4.x;
					    u_xlat4.x = u_xlat4.x + (-vs_TEXCOORD3.z);
					    u_xlat4.x = u_xlat4.x * _InvFade;
					    u_xlat4.x = clamp(u_xlat4.x, 0.0, 1.0);
					    u_xlat4.x = (-vs_COLOR0.w) * u_xlat4.x + 1.0;
					    u_xlat4.x = u_xlat4.x + _Cutout;
					    u_xlatb4 = u_xlat1.w>=u_xlat4.x;
					    u_xlat4.x = u_xlatb4 ? 1.0 : float(0.0);
					    u_xlat2.w = u_xlat4.x * vs_TEXCOORD4;
					    u_xlat1 = u_xlat2 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat4.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat4.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec3 u_xlat4;
					bool u_xlatb4;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.y;
					    u_xlat0 = exp2((-u_xlat0));
					    u_xlat0 = min(u_xlat0, 1.0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat4.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat4.xyz = u_xlat4.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat4.xyz * vs_COLOR0.xyz;
					    u_xlat4.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat3 = texture(_CameraDepthTexture, u_xlat4.xy);
					    u_xlat4.x = _ZBufferParams.z * u_xlat3.x + _ZBufferParams.w;
					    u_xlat4.x = float(1.0) / u_xlat4.x;
					    u_xlat4.x = u_xlat4.x + (-vs_TEXCOORD3.z);
					    u_xlat4.x = u_xlat4.x * _InvFade;
					    u_xlat4.x = clamp(u_xlat4.x, 0.0, 1.0);
					    u_xlat4.x = (-vs_COLOR0.w) * u_xlat4.x + 1.0;
					    u_xlat4.x = u_xlat4.x + _Cutout;
					    u_xlatb4 = u_xlat1.w>=u_xlat4.x;
					    u_xlat4.x = u_xlatb4 ? 1.0 : float(0.0);
					    u_xlat2.w = u_xlat4.x * vs_TEXCOORD4;
					    u_xlat1 = u_xlat2 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat4.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat4.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec3 u_xlat4;
					bool u_xlatb4;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat4.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat4.xyz = u_xlat4.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat4.xyz * vs_COLOR0.xyz;
					    u_xlat4.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat3 = texture(_CameraDepthTexture, u_xlat4.xy);
					    u_xlat4.x = _ZBufferParams.z * u_xlat3.x + _ZBufferParams.w;
					    u_xlat4.x = float(1.0) / u_xlat4.x;
					    u_xlat4.x = u_xlat4.x + (-vs_TEXCOORD3.z);
					    u_xlat4.x = u_xlat4.x * _InvFade;
					    u_xlat4.x = clamp(u_xlat4.x, 0.0, 1.0);
					    u_xlat4.x = (-vs_COLOR0.w) * u_xlat4.x + 1.0;
					    u_xlat4.x = u_xlat4.x + _Cutout;
					    u_xlatb4 = u_xlat1.w>=u_xlat4.x;
					    u_xlat4.x = u_xlatb4 ? 1.0 : float(0.0);
					    u_xlat2.w = u_xlat4.x * vs_TEXCOORD4;
					    u_xlat1 = u_xlat2 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat4.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat4.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec3 u_xlat4;
					bool u_xlatb4;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat4.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat4.xyz = u_xlat4.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat4.xyz * vs_COLOR0.xyz;
					    u_xlat4.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat3 = texture(_CameraDepthTexture, u_xlat4.xy);
					    u_xlat4.x = _ZBufferParams.z * u_xlat3.x + _ZBufferParams.w;
					    u_xlat4.x = float(1.0) / u_xlat4.x;
					    u_xlat4.x = u_xlat4.x + (-vs_TEXCOORD3.z);
					    u_xlat4.x = u_xlat4.x * _InvFade;
					    u_xlat4.x = clamp(u_xlat4.x, 0.0, 1.0);
					    u_xlat4.x = (-vs_COLOR0.w) * u_xlat4.x + 1.0;
					    u_xlat4.x = u_xlat4.x + _Cutout;
					    u_xlatb4 = u_xlat1.w>=u_xlat4.x;
					    u_xlat4.x = u_xlatb4 ? 1.0 : float(0.0);
					    u_xlat2.w = u_xlat4.x * vs_TEXCOORD4;
					    u_xlat1 = u_xlat2 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat4.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat4.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec3 u_xlat4;
					bool u_xlatb4;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat4.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat4.xyz = u_xlat4.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat4.xyz * vs_COLOR0.xyz;
					    u_xlat4.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat3 = texture(_CameraDepthTexture, u_xlat4.xy);
					    u_xlat4.x = _ZBufferParams.z * u_xlat3.x + _ZBufferParams.w;
					    u_xlat4.x = float(1.0) / u_xlat4.x;
					    u_xlat4.x = u_xlat4.x + (-vs_TEXCOORD3.z);
					    u_xlat4.x = u_xlat4.x * _InvFade;
					    u_xlat4.x = clamp(u_xlat4.x, 0.0, 1.0);
					    u_xlat4.x = (-vs_COLOR0.w) * u_xlat4.x + 1.0;
					    u_xlat4.x = u_xlat4.x + _Cutout;
					    u_xlatb4 = u_xlat1.w>=u_xlat4.x;
					    u_xlat4.x = u_xlatb4 ? 1.0 : float(0.0);
					    u_xlat2.w = u_xlat4.x * vs_TEXCOORD4;
					    u_xlat1 = u_xlat2 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat4.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat4.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "FOG_EXP2" "SOFTPARTICLES_ON" "UNITY_SINGLE_PASS_STEREO" "BlendMul2" "VertLight4Normal_ON" "FrameBlend_ON" "SoftParticles_ON" "Clip_ON_Alpha" "FresnelFade_ON" "_MOBILEDEPTH_ON" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _TintColor;
						float _Cutout;
						float _InvFade;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2;
						vec4 _ZBufferParams;
						vec4 unused_1_4;
					};
					layout(std140) uniform UnityFog {
						vec4 unused_2_0;
						vec4 unity_FogParams;
					};
					uniform  sampler2D _CameraDepthTexture;
					uniform  sampler2D _MainTex;
					in  vec4 vs_COLOR0;
					in  vec4 vs_TEXCOORD0;
					in  float vs_TEXCOORD1;
					in  float vs_TEXCOORD2;
					in  float vs_TEXCOORD4;
					in  vec4 vs_TEXCOORD3;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec3 u_xlat4;
					bool u_xlatb4;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD2 / _ProjectionParams.y;
					    u_xlat0 = (-u_xlat0) + 1.0;
					    u_xlat0 = u_xlat0 * _ProjectionParams.z;
					    u_xlat0 = max(u_xlat0, 0.0);
					    u_xlat0 = u_xlat0 * unity_FogParams.x;
					    u_xlat0 = u_xlat0 * (-u_xlat0);
					    u_xlat0 = exp2(u_xlat0);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.zw);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat1 = u_xlat1 + (-u_xlat2);
					    u_xlat1 = vec4(vs_TEXCOORD1) * u_xlat1 + u_xlat2;
					    u_xlat4.xyz = u_xlat1.xyz + u_xlat1.xyz;
					    u_xlat4.xyz = u_xlat4.xyz * _TintColor.xyz;
					    u_xlat2.xyz = u_xlat4.xyz * vs_COLOR0.xyz;
					    u_xlat4.xy = vs_TEXCOORD3.xy / vs_TEXCOORD3.ww;
					    u_xlat3 = texture(_CameraDepthTexture, u_xlat4.xy);
					    u_xlat4.x = _ZBufferParams.z * u_xlat3.x + _ZBufferParams.w;
					    u_xlat4.x = float(1.0) / u_xlat4.x;
					    u_xlat4.x = u_xlat4.x + (-vs_TEXCOORD3.z);
					    u_xlat4.x = u_xlat4.x * _InvFade;
					    u_xlat4.x = clamp(u_xlat4.x, 0.0, 1.0);
					    u_xlat4.x = (-vs_COLOR0.w) * u_xlat4.x + 1.0;
					    u_xlat4.x = u_xlat4.x + _Cutout;
					    u_xlatb4 = u_xlat1.w>=u_xlat4.x;
					    u_xlat4.x = u_xlatb4 ? 1.0 : float(0.0);
					    u_xlat2.w = u_xlat4.x * vs_TEXCOORD4;
					    u_xlat1 = u_xlat2 + vec4(-0.5, -0.5, -0.5, -0.5);
					    u_xlat4.xyz = u_xlat1.xyz * u_xlat2.www;
					    SV_Target0.w = u_xlat2.w * u_xlat1.w + 0.5;
					    SV_Target0.xyz = vec3(u_xlat0) * u_xlat4.xyz + vec3(0.5, 0.5, 0.5);
					    return;
					}"
				}
			}
		}
	}
	CustomEditor "ME_CustomMaterialInspectorParticle"
}